Webhooks
Webhooks
Receive and verify RevKeen webhook events
Webhooks push event notifications to your application when something changes in RevKeen — a payment succeeded, an invoice was paid, a subscription renewed. They are the correct way to keep your system in sync without polling.
Test webhook delivery in Staging. The mock server does not emit events.
Operational model
- Create an endpoint in the dashboard or via the Webhook Endpoints API. Select the event types you care about.
- RevKeen signs and POSTs each event as it occurs.
- Your server verifies the signature, logs the event ID, and returns
2xxquickly. - Downstream work happens asynchronously after acknowledgement.
The event envelope
Every webhook delivery uses the same envelope:
{
"id": "evt_1a2b3c4d5e6f",
"type": "payment.succeeded",
"created": 1705689600,
"livemode": true,
"data": {
"object": {
/* the affected resource — a Payment, Invoice, Subscription, etc. */
},
"previous_attributes": {
/* for update events, the values that changed */
}
}
}| Field | Type | Description |
|---|---|---|
id | string | Unique event identifier. Use this for deduplication. |
type | string | Event type using dot notation (e.g., payment.succeeded). |
created | integer | Unix timestamp when the event was created. |
livemode | boolean | true for production, false for staging. |
data.object | object | The resource that triggered the event. |
data.previous_attributes | object | On *.updated events only — the changed fields. |