customer.deposit.success
Sent to your webhook URL when a customer deposit is confirmed. The wallet has already been credited by the time this fires.
Always verify the
X-Tulu-Switch-Signature header (HMAC-SHA256 of the raw body, keyed with your webhook secret) before processing. Respond 200 within 10 seconds. Failed deliveries retry up to 3 times (1 s → 5 s → 30 s).Headers
X-Tulu-Switch-Signature
StringHMAC-SHA256 of the raw request body, signed with your webhook secret. Verify before processing.
X-Tulu-Switch-Event
Stringcustomer.deposit.success
X-Tulu-Switch-Timestamp
StringISO 8601 dispatch timestamp.
Payload
{
"event": "customer.deposit.success",
"data": {
"customerId": "cus_ada",
"reference": "cdep_1721375800000_abc123",
"amount": 5000,
"currency": "NGN",
"channel": "WALLET",
"provider": "Paystack",
"providerRef": "pstk_txn_yyyyyyy"
},
"timestamp": "2026-08-25T09:01:00.000Z"
}