Developer docs
Accept your first payment
Hosted checkout flow for an e-commerce order. No inline widget yet — redirect only.
- Create a Business-plan account and mint a key in Merchant → API keys.
- Register a webhook URL in Webhooks subscribed to at least
escrow.funded,escrow.delivered,escrow.released. - On order create in your store, call POST /escrow/initiate with your order
reference, amount in kobo, buyer email, andreturn_url. - Redirect the browser to
checkout_url. The buyer must sign in (or sign up) with the same email you passed ascustomer_emailbefore bank-transfer details are shown on/checkout/{reference}. Guest checkout is not supported. - When you receive
escrow.funded, fulfill the order. Optionally poll GET /escrow/:reference. - After dispatch, call deliver. The 24h inspection window starts.
- Call release when ready (seller must have accepted), or wait for auto-release after the inspection window.
- On
escrow.released, mark the order paid/settled in your store.
Return URL
After checkout the buyer is sent to your return_url. Treat webhooks (not the browser redirect) as the source of truth for funding.
Seller acceptance
If you pass seller_email, HarrenaPay emails an accept link. Release is blocked until seller_accepted_at is set — plan for that latency in your ops flow.