Checkout
Create a payment intent — Bankrail allocates a virtual account and returns a tracking ID and a hosted-checkout token.
Checkout is how you collect a one-off payment. You create a payment intent; Bankrail allocates a virtual account for it and returns a stable tracking ID plus a checkout token your customer's browser carries into the hosted checkout page.
Create a payment intent
curl -X POST https://api.posteering.com/api/v1/bankrail/payment/intent \
-H "Content-Type: application/json" \
# ... HMAC signing headers ...
-d '{
"reference": "your-order-ref",
"amountKobo": 1500000,
"currency": "NGN",
"callbackUrl": "https://your-service.example/webhooks/bankrail/credit"
}'The response carries a stable tracking ID and a checkout token. Hand the token to your
customer's browser to load the hosted checkout page; when the customer pays, the credit
fires a callback to your callbackUrl.
Intents vs virtual accounts
A payment intent is for a single expected payment with its own tracking ID. A virtual account is persistent and receives many credits over time. Choose by whether you're collecting once or continuously.
Reconciling
When the credit lands, the callback confirms it. For a BRR-bearing intent, the callback
body carries the brr you reconcile against — see BRR.
Next
- Callbacks — handling the credit notification.
- Outbound Transfers — moving funds out.
FBO Pool Accounts
Provision identity-blind virtual accounts beneath a pooled master. Bankrail never learns who a holder is; every credit carries your own opaque reference back to you.
Outbound Transfers
Move funds out to a destination account — asynchronous, with the terminal settlement state reported by callback.