Integration Flow
Create a user and complete KYC
Create User, then KYC verification
Get an off-ramp quote (optional)
Create Quote to lock the exchange rate
Create off-ramp transaction
How to do an Off-Ramp Operation
To successfully execute an off-ramp operation, follow these steps:-
Select the Blockchain and Token:
- The following is a list of the Blockchains and Tokens
- The list of Blockchains - Tokens symbols supported in Capa are:
- POL - USDC, USDT, POL, MATIC
- BSC - BNB
- BASE - USDC, USDC.e, USDbC, ETH, MXNe, cbBTC, wUSDL
- OP - USDC, ETH
- ARB - USDC, ETH
- SOL - USDC, SOL, USDY, PYSUD
- WLD - WLD
- STK - USDC, STK
- ETH - USDC, ETH, wBTC
For faster completion time use USDC in Polygon POS
-
Select the Fiat Currency:
- Choose the supported fiat currency for the transaction. Capa currently supports the following fiat currencies:
- MXN (Mexican Peso)
- DOP (Dominican Peso)
- USD (US Dollar)
- EUR (Euro)
- Choose the supported fiat currency for the transaction. Capa currently supports the following fiat currencies:
-
Quoting:
- To show a real-time estimate of how much fiat the user will get with the selected Blockchain Token, Fiat Currency and Amount use the Get Quote Rate endpoint.
- To lock a guaranteed exchange rate, use the Create Quote endpoint. This returns a
quoteIdwith an expiration time (expiresAt). Pass thequoteIdwhen creating the transaction to use the locked rate. - You can specify either
fiatAmountorcryptoAmountin the quote request. - Forward Settlement (MXN OTC only): For MXN orders above 50,000 MXN (OTC), the locked quote supports a
forwardingDaysparameter (0-4) that lets you lock the rate now but settle the transaction T+N days later.
-
User Bank Information:
-
The user bank information can be provided in multiple ways:
- Inline bank details: Pass
userBankInformationdirectly in the off-ramp request body. - Saved bank account: Use a previously saved bank account ID.
- Receiver: Pass a
receiverIdfor third-party payouts (see Receivers Guide).
- Inline bank details: Pass
-
Bank account requirements vary by country:
Country Required Fields MX accountIdentifier(18-digit CLABE)DO accountIdentifier,bankName,accountType,documentIdentifier,documentType. List of Dominican Republic BanksUS accountIdentifier,bankName,routingNumber(9-digit ABA),accountHolder(type,firstName/lastNameorbusinessName),address(streetLine1,city,postalCode,country)SEPA iban,bic,bankName,accountHolder(type,firstName/lastNameorbusinessName) - For MX accounts, the bank information will go through a penny testing process to ensure that the KYCβd user is the actual owner. If the user is successfully verified the transaction will go through, otherwise it will be CANCELLED and the crypto will be reimbursed.
-
The user bank information can be provided in multiple ways:
-
Obtain User Wallet Address:
After a successful KYC users get their own Wallet Address which is used as an intermediary to identify the userβs off ramps on chain transaction. In order to show the user where the crypto must be sent to you must obtain the wallet by creating the Off Ramp transaction, the response would have the wallet address. -
Execute the Off-Ramp:
With all required information gathered, you can proceed to execute the off-ramp operation using the Capa API. See the documentation to execute the off ramp Create Off Ramp Key parameters:userId(required): The userβs Capa IDfiatCurrency,blockchainSymbol,tokenSymbol: The selected currency, blockchain, and token (required whenquoteIdis not provided)fiatAmountorcryptoAmount: The amount to convertuserBankInformation(optional): Inline bank account detailsreceiverId(optional): A previously created receiver for third-party payoutsquoteId(optional): A locked quote ID from the Create Quote endpointpremiumSpread(optional): A spread percentage to apply to the exchange rate
Transaction Status Progression
Regular Off-Ramp
OTC Off-Ramp (large amounts)
Settlement Times
Expected settlement times for MXN off-ramp fiat payouts:| Amount | Expected Time |
|---|---|
| Under 50,000 MXN | ~2β3 minutes |
| Over 50,000 MXN | 10β30 minutes |
The times above apply to same-day settlements. For forwarded OTC quotes that use the
forwardingDays parameter (1β4), the fiat payout is scheduled on settlement day T+N and the 10β30 minute window applies once that day arrives.Over-Funding
If a partner sends more crypto than the quoted amount, the excess remains in the userβs wallet and is not included in the off-ramp transaction.SPEI Payout Reference
Off-ramp fiat payouts via SPEI include the transaction ID in the concepto field, allowing partners to match payouts to specific off-ramp orders.Rounding
Fiat amounts are rounded to 2 decimal places. Crypto amounts are rounded to 6 decimal places. Any difference between the amount sent and the transaction amount stays in the userβs wallet.Execute Off-Ramp (Forwards-Enabled Partners)
This section only applies to partners enabled for forwards who hold crypto in their wallet. To enable this feature, contact the Capa development team.
transactionId.
This call triggers the CRYPTO_RECEIVED_OFF_RAMP webhook event and starts the fiat payout process.
"partner is not configured for manual off-ramp execution", this feature has not been enabled for your partner account. Contact the Capa team to request enablement.
Available Platforms
Capa.fi : Users can perform off-ramp operations directly on the Capa.fi website.Partner API: For partners, off-ramp operations can be performed via the API using the Partner API key. For instructions on generating and using the API key, refer to the π API Key Generation Guide.
Notifications
Capa sends notifications to keep you updated on transaction statuses:- Webhooks for Partners: Capa posts updates to the configured partner webhooks to notify of transaction status changes.
Email Notifications for Users (Optional): Users receive email notifications regarding their transaction status and other relevant updates. Webhooks - Ensure that your webhook settings are correctly configured to receive timely notifications and stay informed about the status of transactions. Webhook Settings
Dominican Republic Banks
JSON