The OneKhusa Collections API enables merchants to accept digital payments across web, mobile, and point-of-sale applications. Whether you are building a custom checkout, an automated subscription service, or an enterprise invoice portal, OneKhusa unifies multiple pay-in channels through a single RESTful integration.

Supported Payment Channels

OneKhusa classifies incoming payments across five primary collection pathways:
Payment PathwayCustomer ExperienceProcessing Mechanism
Card PaymentsCustomer inputs Visa, Mastercard, American Express, Discovery, or local card details using OneKhusa custom checkout UITokenized processing via acquiring bank payment supporting 3D Secure protected or non-3D cards
Push Payments (Mobile Money)Customer receives an STK push / USSD prompt on their mobile device to authorize payment with a PINReal-time push prompt via Mobile Network Operator (MNO)
Direct Bank TransferCustomer transfers funds directly from their online/mobile banking app to OneKhusa merchant accountDirect Debit or Real-Time Interbank funds transfer through NATSWITCH
Hosted Checkout ExperienceCustomer is redirected to a secure, PCI-compliant payment page hosted by OneKhusa supporting all pay-in optionsWeb redirect handling multi-channel gateway routing
Invoice-Based PaymentsSimilar to direct debit but the payment is originated from merchant system so that the customer pays using the generated invoice number via MNO wallet or bank account appFrom legacy system via interbank transfer or MoMo through NATSWITCH

Developer Best Practices

  • Idempotency Keys: Always supply a unique Idempotency-Key header with payment requests to protect against duplicate charges during network failures or user retries.
  • Webhook First Architecture: Mobile money prompts and bank transfers rely on asynchronous customer actions. Always rely on Webhooks rather than blocking synchronous requests to verify final transaction states (SUCCESS, FAILED, REVERSED).
  • Transaction Reconciliation: Map OneKhusa’s transactionReferenceNumber directly to your merchant system’s soureReferenceNumber in your local database for automated audit trailing.