USDC Settlement to 3rd Party - EVM
š Who should implement this?
- Merchants who have payers that have wallets
- Merchants who are settling USDC to a 3rd party wallet
- Payers making one time purchases
- ā ļø Examples are on EVM - Change according to the customer!
Setup
You MUST complete the account setup section before you start integrating!
Quick Links:
- Testing Card Numbers to use on Sandbox
- Listening to checkout webhooks
- Customize the UI to match your company branding guidelines
Authorization Headers:
Authorization- Your API Key from the merchant dashboardx-coinflow-auth-user-id- A unique customer ID you use within your systems to identify the user withdrawing fundsx-coinflow-auth-session-key- A JWT that authorizes the payer (valid for 24 hours, must be refreshed afterwards)
API Implementation
-
Share payer events with Coinflow Sharing major events that a payer makes throughout their lifecycle on your website prior to them making a purchase will allow us to collect more information about them and improve your approval rates.
SignUpEventSignInEventSignInFailureEventBuyerChallengeEvent -
Fetch a session key This creates a JWT token for the customer, and authorizes the user to call these endpoints. You will pass the returned session key as
x-coinflow-auth-session-keyheader.- Note:
x-coinflow-auth-user-idcan be thought of as a unique customer id that you use/define on your systems. - Note: Session keys are valid for 30 minutes and must be refreshed afterwards!
RequestResponse - Note:
-
Get the Totals for the checkout to show the customer a quote inclusive of all fees.
RequestResponse -
Tokenize the Credit Card Number. See tab:
Tokenize New Card -
Tokenize the wallet address which will be receiving the USDC for settlement.
RequestResponse -
Enable a New Card Checkout This endpoint will enable a new user who has never made a purchase to complete their purchase with a credit card. Below is an example of how youād call the card checkout endpoint:
-
RequestResponse
-
-
Re-tokenize a saved card number. See tab:
Refresh Token w/ CVV -
Enable a Saved Card Checkout This endpoint will enable a returning user to complete a purchase with a previously saved card. The returning user will need to enter their CVV before confirming the purchase. Once youāve retrieved the refreshed card token, pass it into the Saved Card Checkout endpoint. Below is an example request:
- Optional Implementation: Get payment by id This endpoint allows your to get details about the payment.
- At this point, youāve successfully made a purchase with a new card and with a saved card. Next, lets add 3DS for card purchases. Please reach out to the Coinflow team when youāve reached this step so we can configure 3DS on your account.
Adding 3DS to Card Checkout
Follow the below recipe to learn how to add 3DS to your new card and saved card requests.
Adding Chargeback Protection
- Add the chargeback protection script to every page of your app.
This script allows our provider to analyze user behavior and determine if the behavior could lead to fraud.
- On sandbox, partnerId =
COINFTEST
- On sandbox, partnerId =
- Pass the
chargebackProtectionDataobject to the new and saved card checkout as well as the below headers. See an example of what the request will look like when you pass chargeback protection data to the new card checkout endpoint.x-device-id- Get this after adding the script in step 1x-coinflow-client-ip- the payerās ip addressuser-agent- the payerās User Agent
Request - Complete the chargeback protection form so we can assign you a proper
chargebackProtectionData.productTypeandpartnerIdfor production.
Checkout Link Implementation
- Share payer events with Coinflow
Sharing major events that a payer makes throughout their lifecycle on your website prior to them making a purchase will allow us to collect more information about them and improve your approval rates.
SignUpEventSignInEventSignInFailureEventBuyerChallengeEvent
- Tokenize the wallet address which will be receiving the USDC for settlement.
RequestResponse
- Call the Get Checkout Link endpoint This endpoint creates a checkout link which you can redirect a user to or embed in an iframe within your application.
š Want to trigger your own on success events?
You can listen to success event messages and get the payment id or pass your own function!


