Webhook Events
Complete catalog of all webhook event types and their payloads
This page documents all webhook events available in RevKeen. Subscribe to specific events or use wildcards (*) to receive all events.
Event Naming Convention
Events follow the pattern: resource.action
customer.created— A customer was createdinvoice.paid— An invoice was paidsubscription.cancelled— A subscription was cancelled
Customer Events
customer.created
Triggered when a new customer is created.
{
"id": "evt_xxxxxxxx",
"type": "customer.created",
"created": "2025-01-15T10:30:00Z",
"data": {
"id": "cus_xxxxxxxx",
"email": "john@example.com",
"name": "John Doe",
"companyName": "Acme Inc",
"createdAt": "2025-01-15T10:30:00Z"
}
}customer.updated
Triggered when customer details are modified.
{
"id": "evt_xxxxxxxx",
"type": "customer.updated",
"created": "2025-01-15T10:30:00Z",
"data": {
"id": "cus_xxxxxxxx",
"email": "john@example.com",
"name": "John Smith",
"updatedAt": "2025-01-15T10:30:00Z"
}
}customer.deleted
Triggered when a customer is deleted.
{
"id": "evt_xxxxxxxx",
"type": "customer.deleted",
"created": "2025-01-15T10:30:00Z",
"data": {
"id": "cus_xxxxxxxx"
}
}Subscription Events
subscription.created
Triggered when a new subscription starts.
{
"id": "evt_xxxxxxxx",
"type": "subscription.created",
"created": "2025-01-15T10:30:00Z",
"data": {
"id": "sub_xxxxxxxx",
"customerId": "cus_xxxxxxxx",
"productId": "prod_xxxxxxxx",
"status": "active",
"currentPeriodStart": "2025-01-15T00:00:00Z",
"currentPeriodEnd": "2025-02-15T00:00:00Z",
"createdAt": "2025-01-15T10:30:00Z"
}
}subscription.updated
Triggered when subscription details change (plan change, proration, etc.).
{
"id": "evt_xxxxxxxx",
"type": "subscription.updated",
"created": "2025-01-15T10:30:00Z",
"data": {
"id": "sub_xxxxxxxx",
"customerId": "cus_xxxxxxxx",
"productId": "prod_yyyyyyyy",
"status": "active",
"previousProductId": "prod_xxxxxxxx",
"updatedAt": "2025-01-15T10:30:00Z"
}
}subscription.cancelled
Triggered when a subscription is cancelled.
{
"id": "evt_xxxxxxxx",
"type": "subscription.cancelled",
"created": "2025-01-15T10:30:00Z",
"data": {
"id": "sub_xxxxxxxx",
"customerId": "cus_xxxxxxxx",
"status": "cancelled",
"cancelAtPeriodEnd": true,
"cancelledAt": "2025-01-15T10:30:00Z"
}
}subscription.paused
Triggered when a subscription is paused.
{
"id": "evt_xxxxxxxx",
"type": "subscription.paused",
"created": "2025-01-15T10:30:00Z",
"data": {
"id": "sub_xxxxxxxx",
"customerId": "cus_xxxxxxxx",
"status": "paused",
"resumeAt": "2025-03-01T00:00:00Z"
}
}subscription.resumed
Triggered when a paused subscription resumes.
{
"id": "evt_xxxxxxxx",
"type": "subscription.resumed",
"created": "2025-01-15T10:30:00Z",
"data": {
"id": "sub_xxxxxxxx",
"customerId": "cus_xxxxxxxx",
"status": "active"
}
}subscription.trial_ending
Triggered 3 days before a trial ends.
{
"id": "evt_xxxxxxxx",
"type": "subscription.trial_ending",
"created": "2025-01-15T10:30:00Z",
"data": {
"id": "sub_xxxxxxxx",
"customerId": "cus_xxxxxxxx",
"status": "trialing",
"trialEnd": "2025-01-18T00:00:00Z"
}
}subscription.past_due
Triggered when a payment fails and subscription becomes past due.
{
"id": "evt_xxxxxxxx",
"type": "subscription.past_due",
"created": "2025-01-15T10:30:00Z",
"data": {
"id": "sub_xxxxxxxx",
"customerId": "cus_xxxxxxxx",
"status": "past_due",
"latestInvoiceId": "inv_xxxxxxxx"
}
}Invoice Events
invoice.created
Triggered when an invoice is created.
{
"id": "evt_xxxxxxxx",
"type": "invoice.created",
"created": "2025-01-15T10:30:00Z",
"data": {
"id": "inv_xxxxxxxx",
"invoiceNumber": "INV-2025-0001",
"customerId": "cus_xxxxxxxx",
"status": "draft",
"totalMinor": 9900,
"currency": "USD",
"createdAt": "2025-01-15T10:30:00Z"
}
}invoice.sent
Triggered when an invoice is emailed to the customer.
{
"id": "evt_xxxxxxxx",
"type": "invoice.sent",
"created": "2025-01-15T10:30:00Z",
"data": {
"id": "inv_xxxxxxxx",
"invoiceNumber": "INV-2025-0001",
"customerId": "cus_xxxxxxxx",
"status": "sent",
"sentAt": "2025-01-15T10:30:00Z",
"sentTo": "john@example.com"
}
}invoice.paid
Triggered when an invoice is fully paid.
{
"id": "evt_xxxxxxxx",
"type": "invoice.paid",
"created": "2025-01-15T10:30:00Z",
"data": {
"id": "inv_xxxxxxxx",
"invoiceNumber": "INV-2025-0001",
"customerId": "cus_xxxxxxxx",
"status": "paid",
"totalMinor": 9900,
"amountPaidMinor": 9900,
"currency": "USD",
"paidAt": "2025-01-15T10:30:00Z"
}
}invoice.payment_failed
Triggered when a payment attempt fails.
{
"id": "evt_xxxxxxxx",
"type": "invoice.payment_failed",
"created": "2025-01-15T10:30:00Z",
"data": {
"id": "inv_xxxxxxxx",
"invoiceNumber": "INV-2025-0001",
"customerId": "cus_xxxxxxxx",
"status": "open",
"attemptCount": 2,
"lastPaymentError": "card_declined"
}
}All Events Summary
| Event | Description |
|---|---|
customer.created | Customer was created |
customer.updated | Customer details changed |
customer.deleted | Customer was deleted |
subscription.created | Subscription started |
subscription.updated | Subscription changed |
subscription.cancelled | Subscription cancelled |
subscription.paused | Subscription paused |
subscription.resumed | Subscription resumed |
subscription.trial_ending | Trial ends in 3 days |
subscription.past_due | Payment failed |
subscription.expired | Subscription ended |
invoice.created | Invoice created |
invoice.sent | Invoice emailed |
invoice.paid | Invoice fully paid |
invoice.payment_failed | Payment attempt failed |
checkout.session.completed | Checkout completed |
checkout.session.expired | Checkout session expired |