Skip to main content
This guide details the complete payment processing flow, from payment method selection to transaction completion.
The flow covers Payment Method Selection, Wallet Payments, Bank Transfers, and Card Payments.

Phase 1: Payment Initiation & Method Selection

1.1 Get Supported Payment Methods

Before processing any payment, retrieve available payment methods for the transaction.

Payment Method Selection Steps

1

Request Payment Methods

Customer provides transaction details (PCN, amount, currency, payable type).
2

Retrieve Available Methods

System returns available payment methods based on:
  • Country: Customer’s country and currency
  • Amount: Transaction amount and applicable limits
  • Gateway: Available payment gateway integrations
  • Payable Type: Type of transaction (TRANSACTION, WALLET, BILL, etc.)
3

Calculate Charges

System calculates for each method:
  • Principal Amount: Base transaction amount
  • Fee: Transaction fee
  • Tax: Applicable taxes
  • Exchange Rate: For currency conversions
  • Total Checkout Amount: Complete amount customer will pay
4

Display Options

Customer reviews payment options with transparent pricing and selects preferred method.

Phase 2: Wallet Payments

2.1 Pay from Wallet Account

Process payments directly from customer’s wallet balance.

Wallet Payment Steps

1

Initiate Wallet Payment

Customer provides:
  • Payable ID: Transaction identifier
  • Payable Type: Type of payment
  • Account Number: Wallet account (optional)
  • Password: Customer password
  • OTP/PIN: One-time password or PIN (if enabled)
2

Validate Payment

System validates:
  • Payable item exists and is pending
  • Customer authentication
  • Strong customer authentication (if enabled)
  • Transaction PIN (if required)
3

Check Balance

System verifies:
  • Sufficient wallet balance
  • Account is active
  • No holds or restrictions
4

Process Payment

System executes:
  • Debits wallet account
  • Updates payable status to PAID
  • Records transaction in ledger
  • Triggers payment completion workflow
5

Confirmation

Customer receives confirmation with updated wallet balance.

Phase 3: Bank Transfer Payments

3.1 Bank Transfer (“I Will Pay Later”)

Handle offline bank transfer payments with manual confirmation.

Bank Transfer Steps

1

Initiate Bank Transfer

Customer selects “I Will Pay Later” option, providing PCN and payable type.
2

Create Awaiting Payment

System creates awaiting payment record with:
  • Status: AWAITING_BANK_TRANSFER_PAYMENT
  • Payment Reference: Unique reference for bank transfer
  • Bank Details: Organization’s bank account details
  • Amount: Total amount to transfer
3

Customer Makes Transfer

Customer completes bank transfer offline using provided:
  • Bank account number
  • Payment reference
  • Exact amount
4

Notify Payment Completion

Customer notifies system via one of three options:
  • bank_paid_now: Payment already made
  • bank_pay_later: Will pay and notify later
  • mistake: Accidentally selected this method
5

Admin Verification

Admin reviews bank statement and verifies:
  • Payment received
  • Correct amount
  • Correct reference
  • Updates status to PAID
6

Complete Transaction

System completes the transaction and processes the payable item.

3.2 View Awaiting Payments

Admins can view and manage payments awaiting confirmation.

Phase 4: Card Payments

4.1 Process Card Payment

Process payments using credit or debit cards through payment gateways.

Card Payment Steps

1

Enter Card Details

Customer provides:
  • Card Number (PAN): Primary account number
  • Expiry Date: Card expiration (MM/yyyy)
  • Security Code: CVV/CVC
  • Amount: Payment amount
  • Currency: Transaction currency
2

Process Payment

System submits to payment gateway (e.g., SecureTrading):
  • Validates card details
  • Checks available balance
  • Performs fraud checks
  • Processes authorization
3

Gateway Response

Payment gateway returns:
  • Transaction Reference: Gateway transaction ID
  • Status: Success, failed, or requires 3DS
  • Auth Code: Authorization code
  • Error Details: If payment failed
4

Update Payment Status

System updates payable item status based on gateway response:
  • Success: Status → PAID
  • Failed: Status → FAILED
  • 3DS Required: Redirect for authentication
5

Confirmation

Customer receives payment confirmation or error details.

4.2 Process with Payment Token

For returning customers, process payments using saved payment tokens.

Token Payment

Process payment with saved token

Complete Payment Flow

Key Concepts

Payment Methods

The system supports multiple payment methods:
  • E_WALLET: Instant payment from wallet balance
  • BANK_TRANSFER: Offline bank transfer with confirmation
  • ONLINE_CARD_PAYMENT: Credit/debit card via gateway
  • ONLINE_BANK_TRANSFER: Direct online banking
  • MOBILE_MONEY: Mobile money payments
  • CRYPTO_CURRENCY: Cryptocurrency payments

Payable Types

Different transaction types that can be paid:
  • TRANSACTION: Money transfer/remittance
  • WALLET: Wallet funding
  • WALLET_CUSTOMER: Personal wallet payment
  • BILL: Bill payment
  • MERCHANT: Product purchase
  • VOUCHER: Voucher purchase

Payment Status Flow

PENDING_PAYMENT → CONFIRMED → PAID → PAID_OUT
For bank transfers:
PENDING_PAYMENT → AWAITING_APPROVAL → PAID → PAID_OUT

Charges & Fees

Every payment includes:
  • Principal Amount: Base transaction amount
  • Fee: Service/transaction fee
  • Tax: Applicable taxes (VAT, etc.)
  • Payment Method Fee: Gateway/method specific fee
  • Exchange Rate Fee: For currency conversions
  • Total Checkout Amount: Complete amount charged

Security Features

  • Strong Customer Authentication (SCA): OTP verification for sensitive transactions
  • Transaction PIN: Additional PIN verification
  • Payment Token: Secure tokenization for saved cards
  • 3D Secure: Card authentication for online payments
  • Idempotency: Prevent duplicate payment processing

Learn More

Explore all payment API endpoints and integration options.