How payments work
Every Pesepay payment — regardless of method — follows the same shape:
- Your server → Pesepay Create the transaction encrypted payload
- Pesepay → Your server referenceNumber store it now
- Customer → Pesepay Customer pays hosted page, or your UI
- Pesepay → Payment provider Processes the payment
- Payment provider → Pesepay Outcome
- Pesepay → Your server Result callback
- Your server → Pesepay Confirm the status
- Pesepay Settles to your account
- Your server creates a transaction with an amount, currency, and reason for payment, encrypts it, and sends it to Pesepay.
- The customer pays through one of two flows: they’re redirected to a Pesepay-hosted page (redirect flow), or you collect their payment method details and submit them directly (seamless flow).
- Pesepay processes the payment with the relevant provider (EcoCash, a card network, a bank, etc).
- Your server finds out the result — either pushed to you via the
result callback, or pulled by
checking status with the
referenceNumber. - Funds settle to your payout account roughly T+2 days after the transaction completes.
Reference number: your source of truth
Section titled “Reference number: your source of truth”Every transaction gets a referenceNumber the moment it’s created. Store it
against your order/invoice immediately — it’s what ties together the
initiation request, the result callback, and any status checks you make
later. See the transaction result fields.
Picking a flow
Section titled “Picking a flow”| Redirect flow | Seamless flow | |
|---|---|---|
| Where the customer enters payment details | Pesepay’s hosted page | Your own UI |
| PCI/compliance surface on your servers | Minimal | Larger — you handle method-specific fields |
| Best for | Fastest to ship | Fully branded checkout |
Redirect flow → · Seamless flow →
Either flow can settle part of each payment to a second merchant automatically — see Split payments.