Payout methods
How a payout flows through PCX
All payout flows share the same initiation path. The key difference from a collection isdirection: "payout" (for single-currency) or including an org_rate_id for cross-border:
Cross-border payouts
For cross-border remittances — collecting in one currency and disbursing in another — PCX handles the FX conversion as part of the payment flow:- Fetch a locked exchange rate → receive
org_rate_id - Initiate a payin in the source currency with
org_rate_id - PCX converts at the locked rate and initiates the payout to the beneficiary in the destination currency automatically
direction on the API call is payin for cross-border flows — it refers to the collection leg. The outbound payout to the beneficiary is triggered internally once the payin confirms.
See Exchange Rates and Fees for rate management.
Prerequisites
Before disbursing funds:- Your organization must be KYB-verified — see Organizations
- You need a valid API key — see Authentication
- The recipient must be registered as a Beneficiary
- For NGN bank payouts, optionally validate the account — see Beneficiary Validation
- Register a webhook endpoint to receive
payment.completedandpayment.failed— see Webhooks
Idempotency
PCX does not implement server-side idempotency keys. Before initiating a payout, check whether a payment with the sameclient_reference already exists to avoid duplicate disbursements. Use a deterministic client_reference (e.g. PAYOUT-{order_id}) on every request so duplicate retries can be detected on your side.