Pool Deposit Events
Afriex delivers a webhook to your configured URL when a pool account deposit you submitted is rejected during review.
Submitting proof through POST /api/v1/transaction/pool-account creates a transaction in IN_REVIEW. An operator then confirms or rejects the inflow: approval surfaces as TRANSACTION.CREATED, rejection surfaces here. This event cannot be fired from POST /api/v1/webhooks/trigger.
Security: Every request includes an x-webhook-signature header and an x-afriex-business-id header carrying your business id. You must verify this signature using Afriex's public key before processing. The key is an elliptic-curve (secp384r1 / P-384) key, not RSA. The signature is ECDSA with SHA-256, DER-encoded and then base64-encoded, computed over the exact raw request body, so verify it before parsing or re-serialising the JSON. See the Webhooks Overview & Security section for verification instructions.
Payload
Example payload
{
"id": "8f14e45f-ceea-4e7a-9f1d-6b1c2a3d4e5f",
"event": "POOL_DEPOSIT_REQUEST.REJECTED",
"createdAt": "2026-04-24T09:13:33.883Z",
"data": {
"transactionId": "69528240ba52c13b669fb239",
"reference": "pool-account-reference",
"amount": 5000,
"currency": "NGN",
"rejectionReason": "Sender name does not match the submitted proof",
"resubmissionRequired": true
}
}Response
Acknowledge receipt. Return any 2xx status code quickly. Response body is ignored.
Changes
Webhooks have no change history: a webhook is keyed by its event name rather than a path and method, so no recorded change can name it.