ParsePesa
Universal Callback Gateway

Unified Provider Gateway

ParsePesa V3 serves as a secure, unified webhook and callback ingestion layer for African payment providers. By routing transaction responses from multiple systems through ParsePesa, you eliminate the need to write separate signature checkers, error normalizers, and idempotency handlers for each payment processor.

How it Works

  1. Configure: Connect your payment provider accounts in the dashboard under the Providers Page.
  2. Route Callbacks: Copy your unique Callback URL and paste it into the developer portal of your payment processor (e.g. Pesapal IPN setup, Safaricom Daraja callback URLs, Flutterwave webhook endpoints).
  3. Verify: ParsePesa intercepts calls, validates cryptographic signatures or IP allowlists, normalizes the event payload to a flat standard structure, filters duplicate events, and delivers a clean signed notification to your app.

Raw Event Lifecycle States

Each callback received by ParsePesa is logged inside the Inbound Events Console and transitions through the following states:

StatusMeaning
receivedThe webhook request was received by the endpoint but has not passed signature verification yet.
emittedSignature verified, duplicate filter checks passed, payload normalized, and the webhook has been queued for delivery to your system.
ignored_duplicateDetected as a duplicate of a transaction already processed. Ignored to prevent double-billing and duplicate webhooks. Return HTTP 200 to the provider.
ignored_staleAn out-of-order event arrived (e.g. pending callback arriving after succeeded callback). Logged and ignored.
reconciledMerged with a matching transaction already received from an alternate channel (e.g. parsed SMS payload).
failedSignature check failed, schema was invalid, or enrichment lookup query timed out.
Safaricom M-Pesa (Daraja) Integration →