Webhooks
Overview
Clive sends outbound webhooks to your configured partner endpoint whenever a transaction status changes.
Partners can create multiple webhook endpoints and subscribe each one to different events.
Where to create and view webhook secrets
In the admin app:
- Go to Partners
- Select the partner
- Open the Webhooks section under the API key area
- Create a webhook with:
nameurlsecret- one or more tracked events
Clive stores webhook secrets encrypted at rest and shows the secret again immediately after creation so your team can copy it into your system.
Supported partner webhook events
transaction_succeededtransaction_failedtransaction_abandonedtransaction_refundedtransaction_chargeback
Each configured endpoint receives the same payload shape. Only the event and status values change.
Delivery channel
Clive -> Partner
Destination: your configured webhook endpoint URL.
Purpose:
- notify your system of transaction status updates
Partner webhook payload (from Clive)
{
"event": "transaction_succeeded",
"clive_tx_id": "CLVTX_1739378102312_420",
"partner_id": "ECHEZONA001",
"client_id": "AIRPEACE001",
"echezona_reference": "EZ12345",
"status": "succeeded",
"amount": 750,
"currency": "USD",
"meta": {
"order_id": "ORD-1001",
"customer_segment": "vip"
}
}
Passing meta during transaction creation
You can attach an optional meta object when calling either:
POST /api/v1/transactions/initializePOST /api/v1/transactions/checkout-intent
Example:
{
"partner_id": "ECHEZONA001",
"client_id": "AIRPEACE001",
"amount": 750,
"currency": "USD",
"echezona_reference": "EZ12345",
"meta": {
"order_id": "ORD-1001",
"cart_id": "CART-2002",
"customer_tier": "gold"
}
}
Clive stores this meta object with the transaction and includes it unchanged in outbound webhook deliveries later.
Partner webhook signature verification
Header:
X-Clive-Signature
Signature algorithm:
- SHA-256 HMAC over exact JSON payload body
- secret: the webhook
secretyou set when creating that specific endpoint
Delivery semantics
- Up to 3 delivery attempts
- Exponential backoff between retries
- success and failure outcomes are recorded in Clive audit events
- Clive only sends to endpoints subscribed to the matching event
Partner-side webhook best practices
- Return
200quickly after signature verification + enqueue processing. - Use idempotent processing keyed by
clive_tx_id. - Do not assume ordered delivery.
- Record full payload and signature for incident troubleshooting.