π Headers
Header | Description |
---|---|
partner-api-key | API key associated with your partner account. Required. See API Key Generation Guide. |
This endpoint requires authentication using a valid
partner-api-key
.For Staging Transaction Testing please use Mock Testing Guide
π₯ Request Body
Parameter | Type | Required | Description |
---|---|---|---|
userId | string | β | ID of the user on whose behalf the transaction is created. The userβs identity must be verified first. |
fiatAmount | number | π | Amount of fiat to be converted. Required if cryptoAmount is not provided. |
cryptoAmount | number | π | Amount of crypto to be converted to fiat. Required if fiatAmount is not provided. |
fiatCurrency | string | β | Currency for the off-ramp transaction. The user must have an account in this currency. Accepted values follow the ISO 4217 format (e.g., MXN , DOP ). |
blockchainSymbol | string | β | Identifier of the blockchain used for the conversion. Refer to our supported blockchain list for availability. |
tokenSymbol | string | β | Identifier of the token used for the conversion. Refer to our supported token list for availability. |
premiumSpread | number | π | Additional percentage applied to the exchange rate. This amount is fully awarded to the partner. |
destinationWalletAddress | string | β | Wallet where the funds are gonna be awarded. |
π¨ Example Request
curl
π€ Response Body
Field | Type | Description |
---|---|---|
id | string | Unique ID of the created transaction. |
userId | string | User ID associated with the transaction. |
status | string | Current status of the transaction. Initially set to "PENDING" . |
cryptoAmount | number | Amount of cryptocurrency being converted. |
fiatAmount | number | Amount of fiat currency received after conversion. |
exchangeRate | number | Exchange rate used for the crypto-to-fiat conversion. |
tokenSymbol | string | Symbol of the cryptocurrency used. |
blockchainSymbol | string | Symbol of the blockchain the cryptocurrency belongs to. |
fiatCurrency | string | Currency code of the fiat currency received (e.g., "MXN" ). |
createdAt | string | ISO timestamp indicating when the transaction was created. |
completedAt | string | ISO timestamp indicating when the transaction was completed, or null if pending. |
destinationWalletAddress | string | Wallet where the user will receive the funds. |
bankAccount | object | Information about the userβs bank account. |
bankAccount .isVerified | boolean | Indicates whether the account has been verified and linked to the user. |
bankAccount .accountIdentifier | string | Unique identifier of the account (CLABE for Mexico, Account Number for DO). |
bankAccount .country | string | Country where the bank account is held. |
bankAccount .accountType | string | Type of bank account. Only required for the Dominican Republic. |
bankAccount .bankName | string | Name of the bank. Only required for the Dominican Republic. |
bankAccount .documentIdentifier | string | Unique identifier of the document linked to the account. |
premiumSpread | number | Additional percentage applied for premium services. |
π Example Response
β οΈ Important Notes & Requirements
- Partner API Key is mandatory: All requests must include a valid
PartnerApiKey
in the header. Get your API key. - User must be verified: The user (
userId
) must have completed KYC and have an will go through an account verification process. The verification is only made once. - Supported Countries: Only flows from
MX
(Mexico) andDO
(Dominican Republic) are currently supported. - Amount Limits: Crypto amounts must respect the minimum and maximum thresholds defined in the partner agreement.
- Valid Blockchain & Token name: Ensure
blockchainSymbol
andtokenSymbol
are retrieved from valid sources. Contact support for available options. - Wallets: Each wallet MUST be of the same type of the chain, you canβt use a EVM wallet in a SVM chain
β Use Cases
- User Payout: Initiate a crypto-to-fiat payout to a verified user.
- B2C Integration: Allow individual users to off-ramp from within your app or service.
- B2B or Corporate Flows: Automate withdrawals to company bank accounts after receiving crypto payments.
Headers
Api key for the affiliated partner that is performing the request
Body
application/json
Identifier for the user
Example:
"8374f327-38bd-4b0b-b8a7-2524599eb903"
Wallet address of the user making the transaction.
Example:
"0x4d2f3d8f83b6f2f8e0f3f4f3f3f3f3f3f3f3f3f3"
Identifier for the fiat currency which the user will rec.
Available options:
MXN
, DOP
, USD
, EUR
Example:
"MXN"
Identifier for the blockchain to token from which the conversion will be made.
Available options:
POL
, SOL
, BASE
, ARB
, BSC
, OP
, WLD
, STK
, ETH
, MTN
, CORE
Example:
"BASE"
Identifier for the token from which the conversion will be made.
Available options:
USDC
, USDT
, MXNe
, SOL
, ETH
, wBTC
, cbBTC
, PYSUD
, POL
, BNB
, WLD
, STK
, USDY
, CORE
, USDC.e
, wUSDL
, CoreBTC
, MATIC
, USDbC
Example:
"ETH"
Identifier for the quote to be used for the transaction.
Amount of fiat currency to be converted to crypto currency.
Example:
10200
Amount of cryptocurrency to be received in conversion.
Example:
10200
Spread percentage to be applied to the exchange rate
Example:
0.01