Skip to main content
Pay out to local bank accounts and mobile money wallets across supported African corridors. Funds debit your merchant USDC wallet at the locked FX rate. The flow is quote → confirm: you receive a signed quote token valid for 60 seconds, then submit the payout with a saved recipientId or an inline recipient.
The payout endpoints accept the same credentials as the rest of the API — pass your x-api-key header (or a JWT from token exchange) on every call. Payouts are fully server-to-server, at parity with the Collections API; no dashboard interaction is required.

Get a quote

Lock FX before confirming a payout.

Corridors & recipient shapes

Supported countries and required fields.

Flow overview

  1. (Optional) Create a recipientPOST /v1/business/payouts/recipients with bank or mobile-money details. Skip this step if you pass the recipient inline on confirm. Sanctions screening runs in both cases.
  2. Request a quotePOST /v1/business/payouts/quote with rail, corridor, and either srcAmount (USDC) or dstAmount (local currency).
  3. Confirm the payoutPOST /v1/business/payouts with quoteToken, either recipientId or an inline recipient, and idempotencyKey, within the 60-second window.
  4. Track status — poll GET /v1/business/payouts/{id} or subscribe to payout webhooks.

SDK quick start

npm install @useaxra/node@0.6.0
import { Axra } from '@useaxra/node';

const axra = new Axra(process.env.AXRA_SECRET_KEY!);

const quote = await axra.payouts.quote({
  rail: 'LOCAL_BANK',
  country: 'NG',
  currency: 'NGN',
  srcAmount: '100.00',
});
from axra import Axra

client = Axra(os.environ["AXRA_SECRET_KEY"])

quote = client.payouts.quote(
    rail="LOCAL_BANK",
    country="NG",
    currency="NGN",
    src_amount="100.00",
)
Collections (inbound local rails) are documented under Local rails — server-to-server. This section covers outbound payouts only.