Skip to main content
The offramp flow lets your users send crypto (USDT, USDC, BTC, ETH) and receive local currency (NGN, GHS, KES) in their bank account or mobile money wallet. Partna handles the crypto receipt, conversion, and local currency payout. If you want full control over the experience, use this API flow. If you would rather redirect users to a Partna payout flow, use the Offramp Widget instead.

How it works

1

Create a user account

Register your user with Partna using Create Account if they do not already have one.
2

Resolve the destination bank account

Verify the user’s bank account details using Resolve Bank. This confirms the account number and returns the account holder’s name.
Response:
3

Fetch a rate

Call Get Rate with fromCurrency=USDT and toCurrency=NGN. Save the rate key.
4

Initiate the offramp

Call Onramp and Offramp with type: "cryptoToFiat". Include the rate key, the user’s bank details, and the crypto amount.
The response includes a crypto wallet address where the user should send their USDT.
5

User sends crypto

The user sends the specified crypto amount to the wallet address returned in step 5.
6

Partna converts and pays out

Once Partna confirms the crypto deposit, the equivalent local currency is sent to the user’s bank account. A webhook event is dispatched to your endpoint.

Key parameters

Custom payout amounts

By default, Partna pays the full converted amount to the user’s bank account. If you want to pay a different amount (e.g., to build in a margin), you can adjust the payout using the Withdraw endpoint after the crypto deposit is confirmed. This requires sufficient funds in your payout balance.

Getting bank codes

Use Get Banks to fetch the list of supported banks and their codes for a given currency: