Skip to content

GET /transactions/{ref}/timeline

GET /api/v1/remittance/transactions/{reference}/timeline

Full per-transaction event audit. Every step in the lifecycle is a row:

  • Inbound accepted
  • Compliance screening result (sender + receiver)
  • FX conversion (if applicable)
  • Wallet reservation
  • Switch dispatch to telco
  • Telco callback received
  • Settlement
  • Merchant callback dispatch + delivery attempts

Auth: Basic merchant_code:merchant_secret

Response (200 OK)

json
{
  "status": "success",
  "data": {
    "reference":      "TXN_001",
    "transaction_id": "IMT-IN-20260814-A1B2C3-D4E5",
    "events": [
      {
        "at":    "2026-08-14T14:00:00.100000",
        "kind":  "inbound.accepted",
        "detail": "Amount 10 USD to 243812345678 (mpesa)"
      },
      {
        "at":    "2026-08-14T14:00:00.200000",
        "kind":  "screening.ok",
        "detail": "Sender + receiver cleared ScreenShield"
      },
      {
        "at":    "2026-08-14T14:00:00.400000",
        "kind":  "wallet.reserved",
        "detail": "Reserved 10.00 USD from wallet wc_mpesa_usd_prod1"
      },
      {
        "at":    "2026-08-14T14:00:00.600000",
        "kind":  "switch.dispatched",
        "detail": "Sent to Vodacom M-Pesa"
      },
      {
        "at":    "2026-08-14T14:00:22.900000",
        "kind":  "telco.callback",
        "detail": "MPESA-XY7ZW · Successful"
      },
      {
        "at":    "2026-08-14T14:00:23.100000",
        "kind":  "wallet.confirmed",
        "detail": "Debited 10.00 USD from wallet wc_mpesa_usd_prod1"
      },
      {
        "at":    "2026-08-14T14:00:23.500000",
        "kind":  "merchant.callback.sent",
        "detail": "HTTP 200 from https://your.example.com/callbacks/moko"
      }
    ]
  }
}

When to use it

  • Debugging a failed transaction — see exactly where it stopped.
  • Compliance audit — the timeline is the audit trail. Save it or export it.
  • Merchant support UI — show the timeline to your ops team so they don't have to guess.

The merchant dashboard uses this endpoint on the transaction drawer.

Operated by SODOTECH SARL (RCCM CD/KNG/RCCM/24-B-00910). Documentation is versioned alongside the API. Confidential — for integration partners.