Skip to main content

Get Deliver Logs

Nomba offers a smooth method for tracking down or debugging earlier webhooks that were sent to your system. The URL or event type of webhooks sent within a given timeframe can be obtained by querying the event log API if you wish to verify whether a webhook was actually sent to your system. When a problem occurs and you need to go back and confirm that you have received notifications of all payment events via webhooks, this can be helpful. To do this, send a POSTrequest to this“; this will return a detailed list of events that have been sent to your system. See a sample request and response data below:
curl --request POST \ 
--url https://api.nomba.com/v1/webhooks/event-logs \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'accountId: <accountid>' \
--data '{
        "coreUserId": "6703XXXd1-158a-42XX-8f0b-XXXXXXXXX",
        "limit": 1,
        "eventType": "payment_success",
        "startDateTime": "2025-03-03",
        "endDateTime": "2025-03-12"
   }'

Repush

After carefully reviewing the webhook via the event log API, you may want to do a single webhook repush or bulk repush; this will trigger a resend of the event back to your system. To do a repush, send a POST request to v1/webhooks/re-push, copy the hooksRequestId of the event to repush from the event log list, and pass it as the request payload. See a sample request and response data below:
curl --request POST \ 
--url https://api.nomba.com/v1/webhooks/re-push \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'accountId: <accountId>'\
--data '{
    "hooksRequestId": "6703XXXd1-158a-42XX-8f0b-XXXXXXXXX"
  }'

Bulk Repush

Trigger a bulk webhook repush by passing an array of hooksRequestIds selected from your delivery logs. See a sample request and response data below:
curl --request POST \ 
--url https://api.nomba.com/v1/webhooks/bulk-re-push \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'accountId: <accountId>' \
--data '{
    "hooksRequestIds": [
      "6703XXXd1-158a-42XX-8f0b-XXXXXXXXX",
      "703XXXd1-158a-42XX-8f0b-XXXXXXXXX",
      "8703XXXd1-158a-42XX-8f0b-XXXXXXXXX"
    ]
  }'

Webhook Events

You can also query all events that were sent to your system. See a sample request and response data below:
curl --request POST \ 
--url https://api.nomba.com/v1/webhooks/events \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'accountId: <accountId>'\
--data '{
    "coreUserId": "6703XXXd1-158a-42XX-8f0b-XXXXXXXXX",
    "limit": 20
  }'

Webhook Replay

Webhook replay allows you to re-trigger previous webhook events that were not successfully delivered or whose delivery outcome is uncertain within a timeframe. Replay Eligibility Only certain webhook log statuses are safe to replay.
StatusReplay AllowedMeaning
INITIATED✅ Yes (safe)Webhook was logged to be delivered but delivery never completed
FAILED✅ Yes (safe)Delivery attempt failed. We did not get a 2xx response status from your server, we got a 5xx or 4xx when we previously pushed the event
INCONCLUSIVE⚠️ Yes (with caution)Delivery outcome is unknown; we didn’t hear from your server when we previously pushed
PUSHED‼️ Yes (only when needed)Delivery outcome was successful. Only use when needed
You can choose from any of the event types below: PAYMENT_SUCCESS, PAYMENT_FAILED, PAYOUT_SUCCESS, PAYOUT_FAILED, ORDER_SUCCESS, PAYMENT_REVERSAL, and PAYOUT_REFUND.
We strongly recommend implementing idempotency handling on your webhook endpoint to prevent duplicate processing, especially when replaying INCONCLUSIVE and PUSHED events.
Sample request
curl --request POST \ 
--url https://api.nomba.com/v1/webhooks/replay \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--header 'accountId: <accountId>'\
--data '{
    "startDate": "2026-01-27T00:00:00Z",
    "endDate": "2026-01-28T23:59:59Z",
    "filter": {
        "statuses": ["INITIATED", "FAILED", "INCONCLUSIVE"],
        "eventTypes": ["PAYMENT_SUCCESS", "PAYMENT_FAILED", "PAYOUT_SUCCESS", "PAYOUT_FAILED", "ORDER_SUCCESS"]
    }
}'