Skip to main content
By the end of this page you will have registered a real bank account and received the on-chain address that pays it.

Before you start

You need an API key for your business. Export it so the examples below can pick it up:

1. Check the rate

Start with the cheapest call, to confirm the key works:
Response
A 401 here means the key is wrong — see Authentication.

2. Find the bank code

Registration is keyed on a bank code, not a bank name. Bank codes are available from the public bank list:
The list is stable, so most integrations fetch it once and cache it rather than calling it per registration.

3. Register the bank account

Response
Two fields matter here:
  • accountName came from the bank, not from your request. Show it to the user so they can catch a mistyped account number before any money moves.
  • address is the on-chain address that pays this bank account. Store it against the user — it will not change.
This call is idempotent. Running it again with the same bank code and account number returns the same record and the same address, so you can safely call it on every sign-in instead of tracking whether you have registered before.

4. Pay the address

Send USDC to the address from any wallet or exchange. Paj observes the deposit, converts it at the prevailing offramp rate, and disburses naira to the bank account. Nothing further is required from your API integration — the deposit itself is the instruction.

Next steps

Bank account addresses

How the address is derived, and what happens after a deposit lands.

Rates

Quoting an amount, and how long a rate is good for.

Errors

What each status code means and which are worth retrying.

API reference

Full schemas for all three endpoints.