How To: Implement Merchant Payouts (From BYO Wallet)
Developers can use this documentation to implement merchant payouts (from your own crypto wallet) to an end-userβs bank account.
π¦ Merchant (BYO Wallet) Payout Guide
If youβre a merchant using your own crypto wallet as the source of funds for your payout, follow the steps below to send payouts (in fiat) to your usersβ bank accounts.
β οΈ This flow of funds is very similar to the Merchant (Coinflow Wallet) Payout flow with the exception of the endpoint you use to initiate the payout (Step 4). Pleaseensure the source of funds for your payout prior to implementing the below.
π Coinflow doesnβt provide a UI for Merchant Payouts. Please implement with our API.
Flow of Funds
Implementation
1. KYC / KYB for Withdrawers
To complete a payout/withdraw, every Withdrawer must complete verification before they can proceed with a payout through Coinflow. Withdrawers only need to KYC the first time they withdraw and do not need to KYC again for any subsequent withdrawals.
Before you start, determine how you will KYC your users:
π 1. I want to use Coinflow for KYC
Merchants who want to use Coinflow for KYC should call Register User.
πΊπΈ U.S. Withdrawers
π Non-U.S. Withdrawers
πΌ 2. I am using my own KYC provider and I want to pass KYC data to Coinflow
Merchants who want to pass KYC data from their existing KYC provider can call our Register User via Document endpoint.
πΌ 4. I have my own KYC provider and will complete KYC reliance process with Coinflow
Merchants must receive approval from the Coinflow Compliance team regarding approval of your kyc reliance program. Once youβve receive approval, follow these implementation steps.
2. Get Withdrawer Details
After calling Coinflowβs withdraw endpoints, you must call Get Withdrawer to get the latest verification status. This endpoint will tell you the userβs verification status. The get withdrawer endpoint can also be queried at any time to get more information about a withdrawer who has already completed KYC/KYB.
3. Add A Payout Destination
π Want to use Coinflowβs UI for KYC and Bank Authentication?
Merchants can choose to use Coinflowβs UI for KYC and bank authentication, saving time by avoiding the need to build these flows and add payout destinations. Youβll only need to create the UI for displaying quotes and initiating payouts.
If you choose to use our UI, you do not need to separately implement
Step 3: Add A Payout Destinationas the bank auth UI also handles linking payout destinations.
Withdrawers must link a payout destination so we know where to send the funds.
πΊπΈ 1. Withdrawers in the U.S.
πΊπΈ Withdrawers in the U.S.
If withdrawers are in the U.S. and want to receive USD, they can link their debit card or bank account.
Add a debit card as a payout destination:
πͺπΊπ¬π§ 2.Withdrawers in the EU/UK
If withdrawers reside in the EU or UK, they can link their IBAN to receive EUR or GBP.
π§π· 3. Withdrawers in Brazil
If withdrawers reside in Brazil, they can link their PIX account to receive BRL.
4. Get a Quote for the Withdraw
Merchants may show an estimated quote of how much the user will receive after fees. See list of USDC token addresses to pass as token by chain.
5. Initiate the Payout
This endpoint enables a user to submit a payout from your own wallet on the chain you specify. Upon sending the request, funds from your own merchant wallet balance will decrement, and the end-user will receive their funds in their selected payout destination.
- Note: To get the tokenized bank account / IBAN / PIX / debit card, call get withdrawer and reference the
tokenparam. For example, for bank account:bankAccounts[0]['token'] speed = cardfor instant debit card payouts
speed = asapfor instant, RTP payout
speed = same_dayfor same day ACH payout
speed = standardfor standard ACH payout
speed = ibanfor SEPA payout
speed = pixfor PIX payout\
RequestResponse

