Skip to main content

Unreleased

Breaking

  • Removed POST /api/v1/transactions/{id}/replay-callback. It conflated replaying an inbound provider callback with re-sending the outbound webhook. Replaced by POST /api/v1/transactions/{id}/replay-webhook, which re-sends the outbound payment.succeeded / payment.failed notification for a terminal transaction (does not change its state; 409 if non-terminal, 400 if no callback_url).

Added

  • Late deposit confirmation handling. A confirmation (operator SMS/USSD) arriving after a deposit expired or failed no longer auto-credits and is no longer silently dropped. The transaction moves to requires_manual_resolution and is held for a Winam operator to confirm or reject. No webhook is sent until it resolves to succeeded or failed. See State Machine.

Changed

  • All API response messages are now in English (were previously French).
  • Successful withdrawals settle to succeeded immediately on USSD success — provider_submitted is now a transient step, not a waiting state.
  • POST /deposits and POST /withdrawals now validate the coherence between the msisdn prefix and the operator field. A clear contradiction (e.g. a 655… Orange number with operator=mtn) is rejected with 422 before any USSD is sent. Cameroon prefixes — MTN: 67x, 68x, 650-654 · Orange: 69x, 655-659. Numbers with unknown prefixes are accepted as-is. Use POST /msisdn/detect to pre-fill the right operator.

v0.1.0 — Initial release

Released: June 2026 (Coupe du Monde launch)

Endpoints

  • POST /api/v1/deposits — Initiate Mobile Money deposits (MTN MoMo, Orange Money)
  • POST /api/v1/withdrawals — Initiate withdrawals with manual operator approval
  • GET /api/v1/transactions/{id} — Get transaction state
  • GET /api/v1/players/{player_id}/transactions — List player transactions
  • POST /api/v1/transactions/{id}/replay-webhook — Manual webhook re-delivery for recovery
  • GET /api/v1/{country}/providers — Provider catalogue with fees
  • GET /api/v1/{country}/providers/status — Real-time provider health
  • POST /api/v1/msisdn/detect — Operator detection from phone number
  • GET /api/v1/security/callback-public-key — Webhook signature public key

Providers

  • MTN MoMo — via SIM gateway (primary) + Campay (backup)
  • Orange Money — via SIM gateway (primary) + Campay (backup)

Countries

  • CM (Cameroon)

Future releases will be documented here. For breaking changes, existing integrators will be notified at least 30 days in advance.