Security Warning: Blink sends webhooks for both Test (simulated) events and Live (real) events. To avoid giving away free products when a customer uses a test credit card, you must explicitly verify that the webhook mode is live (e.g.
is_test: false or mode: "live") before fulfilling the order.Event Payload Structure
All events share a standard wrapper structure. Thedata property contains the specific object related to the event.
{
"event": "order.paid",
"created_at": "2026-07-28T09:00:00.000Z",
"data": {
"id": "ord_12345",
"amount": 2000,
"status": "paid",
"is_test": false,
"customer": {
"id": "cus_xyz",
"name": "Jane Doe",
"email": "jane@example.com"
},
"product": {
"id": "prod_abc",
"name": "Premium Plan"
},
"entitlements": {
"pro_tier": "true"
}
}
}
Orders
| Event Name | Description |
|---|---|
order.created | Fired when a new order is placed. |
order.paid | Fired when payment is confirmed on an order. |
order.refunded | Fired when an order is refunded. |
Checkouts
| Event Name | Description |
|---|---|
checkout.created | Fired when a checkout session is created. |
checkout.completed | Fired when a checkout is completed. |
checkout.expired | Fired when a checkout session expires. |
Audience
| Event Name | Description |
|---|---|
audience.subscriber_added | Fired when a new subscriber joins the audience. |
Customers & Seats
| Event Name | Description |
|---|---|
customer.created | Fired when a new customer record is created. |
customer.updated | Fired when customer details are updated. |
customer.seat_added | Fired when a seat is assigned to a member. |
customer.seat_removed | Fired when a seat is removed from a member. |
customer.deleted | Fired when a customer is deleted or unsubscribed. |
Subscriptions
| Event Name | Description |
|---|---|
subscription.created | Fired when a subscription starts. |
subscription.active | Fired when a subscription becomes active. |
subscription.updated | Fired when a subscription is updated. |
subscription.canceled | Fired when a subscription is canceled. |
subscription.uncanceled | Fired when a cancellation is reversed. |
subscription.past_due | Fired when a payment fails, making the subscription past due. |
subscription.revoked | Fired when a subscription is forcefully ended. |
subscription.upgraded | Fired when a subscription is upgraded or downgraded. |
Products
| Event Name | Description |
|---|---|
product.created | Fired when a product is created. |
product.updated | Fired when a product is updated. |
product.archived | Fired when a product is archived. |
bundle.created | Fired when a bundle is created. |
bundle.updated | Fired when a bundle is updated. |
bundle.archived | Fired when a bundle is archived. |
Discounts
| Event Name | Description |
|---|---|
discount.created | Fired when a discount is created. |
discount.updated | Fired when a discount is updated. |
discount.deleted | Fired when a discount is deleted. |
License Keys
| Event Name | Description |
|---|---|
license_key.created | Fired when a license key is issued. |
license_key.revoked | Fired when a license key is revoked. |
Affiliates
| Event Name | Description |
|---|---|
affiliate.approved | Fired when an affiliate application is approved. |
affiliate.conversion | Fired when an affiliate records a conversion. |
affiliate.commission_earned | Fired when an affiliate earns commission on a successful payout. |
affiliate.payout.processed | Fired when an affiliate’s balance is transferred via Stripe. |
Abandoned Carts
| Event Name | Description |
|---|---|
abandoned_cart.created | Fired when a cart is abandoned. |
abandoned_cart.recovered | Fired when an abandoned cart is recovered. |
Organizations
| Event Name | Description |
|---|---|
organization.created | Fired when an organization is created. |
organization.updated | Fired when organization details are updated. |
organization.deleted | Fired when an organization is deleted. |
Disputes
| Event Name | Description |
|---|---|
dispute.created | Fired when a dispute is opened. |
dispute.won | Fired when a dispute is won. |
dispute.lost | Fired when a dispute is lost. |
Payouts
| Event Name | Description |
|---|---|
payout.created | Fired when a payout is created. |
payout.paid | Fired when a payout is successfully paid. |
payout.failed | Fired when a payout fails to process. |
Refunds
| Event Name | Description |
|---|---|
refund.created | Fired when a refund is initiated. |
refund.updated | Fired when a refund status is updated. |
Subscription Invoices
| Event Name | Description |
|---|---|
subscription_invoice.created | Fired when a new invoice is generated. |
subscription_invoice.paid | Fired when an invoice is paid. |
subscription_invoice.payment_failed | Fired when an invoice payment fails. |