Skip to main content
In a nutshell
Your customer pays into a virtual account by bank transfer. Blockradar settles the payment as a stablecoin in your wallet and sends onramp.success. Your webhook handler then pays the amount out in local currency with Withdraw Fiat. Neither your customer nor the recipient ever has to see or hold the stablecoin.
This guide uses Naira (NGN) as the example: an NGN virtual account that settles in USDC on Base, and an NGN payout to a Nigerian bank account. The same flow works for any currency that supports both deposits and payouts.

Prerequisites

  • Compliance approval for the corridors you use, both the deposit side and the payout side. See the FAQ for what business verification involves.
  • Virtual accounts enabled for your account. See the Virtual Accounts prerequisites.
  • A webhook endpoint that verifies signatures. See Webhooks.

How it works

1

Create a virtual account

Create a virtual account on your wallet with NGN as the currency and USDC as the destination asset. Follow Steps 1 to 3 of Virtual Accounts.
2

Your customer pays by bank transfer

Share the account number with your customer. When their transfer arrives, Blockradar sends onramp.processing, then settles the USDC to your wallet and sends onramp.success.
3

Pay out on onramp.success

Your webhook handler finds the Withdraw Fiat asset for the settled stablecoin, then gets a rate, quotes and executes an NGN payout. Follow Steps 1 to 7 of Withdraw Fiat.
4

Confirm the payout

Withdraw Fiat sends its own webhooks as the payout progresses. See Withdraw Fiat webhooks.

The onramp.success webhook

The fields you need for the payout are toCurrency (the stablecoin that settled), toAmount (how much settled) and wallet.id (where it settled):
Use data.id to process each event once. The same event can be delivered more than once.

Start the payout from the webhook

If the virtual account settles in cNGN

A virtual account can settle in cNGN instead of USDC, if its discovery options offer it. cNGN pays out to NGN only. To pay cNGN out in another currency, swap it to USDC first. See Swap Before Paying Out.

See also