Exchange Rate Endpoints
Exchange rate endpoints provide real-time pricing, conversion quotes, and fee breakdowns for all supported currency pairs. Some endpoints return a quoteId that can be passed during order creation to lock the quoted rate.
Quote Validity
Endpoints that return a quoteId have a 1-minute validity window. After expiry, the quote is no longer valid and a new one must be fetched. Pass the quoteId when creating an order to lock the quoted rate.
Live Rates
Fetches real-time deposit and withdrawal rates for a single fiat currency. Useful for displaying indicative rates before the user selects a specific flow.
GET
/v2/exchange-rates/live-rates
Live deposit/withdraw rates
Query Parameters
| Parameter |
Type |
Required |
Description |
| currency |
string |
Required |
Fiat currency symbol (e.g., "PHP") |
Response
{
"depositRate": 28.54,
"withdrawRate": 26.17
}
Response Fields
| Field |
Type |
Description |
| depositRate |
number |
Current deposit exchange rate for the currency |
| withdrawRate |
number |
Current withdrawal exchange rate for the currency |
Fiat to Crypto (Onramp) Rates
Returns a conversion quote for buying cryptocurrency with fiat currency. Includes a full fee breakdown and the amount the user will receive.
GET
/v2/exchange-rates/fiat-to-crypto
Onramp conversion quote
Query Parameters
| Parameter |
Type |
Required |
Description |
| fiatTicker |
string |
Required |
Fiat currency (e.g., "EUR") |
| amount |
string |
Required |
Fiat amount to convert |
| cryptoTicker |
string |
Required |
Crypto symbol (e.g., "USDC") |
| paymentCode |
string |
Required |
Payment method code (from payment methods endpoint) |
Response
{
"message": {
"data": {
"cryptoPrice": 35.49,
"maxLimit": 150000,
"minLimit": 177.45,
"networkFee": 6.2,
"processingFee": 35,
"receiveAmount": 27.016282,
"receiveFiatAmount": 0,
"sentAmount": 1000,
"totalFee": 41.2
},
"success": true
}
}
Response Fields
| Field |
Type |
Description |
| cryptoPrice |
number |
Current crypto exchange rate |
| networkFee |
number |
Blockchain transaction fee |
| processingFee |
number |
Platform processing fee |
| receiveAmount |
number |
Crypto amount the user will receive |
| sentAmount |
number |
Fiat amount the user sends |
| totalFee |
number |
Sum of all fees (network + processing) |
| minLimit |
number |
Minimum transaction amount |
| maxLimit |
number |
Maximum transaction amount |
Crypto to Fiat (Offramp) Rates
Returns a conversion quote for selling cryptocurrency for fiat currency. Supports both forward (crypto amount in) and reverse (fiat amount in) calculations.
GET
/v2/exchange-rates/crypto-to-fiat
Offramp conversion quote
Query Parameters
| Parameter |
Type |
Required |
Description |
| cryptoTicker |
string |
Required |
Crypto symbol (e.g., "USDC") |
| amount |
string |
Required |
Amount (crypto for forward, fiat for reverse) |
| fiatTicker |
string |
Required |
Fiat currency (e.g., "EUR") |
| direction |
string |
Optional |
"forward" (default) or "reverse" |
| paymentCode |
string |
Optional |
Payment method identifier |
Response
{
"message": {
"data": {
"cryptoPrice": 34.76,
"networkFee": 0,
"processingFee": 15,
"processingFeeDetails": {
"customerFee": 0,
"mode": "percentage",
"payitfastFee": 0.015
},
"receiveAmount": 1000,
"receiveFiatAmount": 1015,
"sentAmount": 29.20,
"totalFee": 15
},
"success": true
}
}
Response Fields
| Field |
Type |
Description |
| cryptoPrice |
number |
Current crypto exchange rate |
| networkFee |
number |
Blockchain transaction fee |
| processingFee |
number |
Platform processing fee |
| processingFeeDetails |
object |
Fee breakdown with customer fee, mode, and platform fee |
| receiveAmount |
number |
Fiat amount the user will receive |
| receiveFiatAmount |
number |
Total fiat amount including fees |
| sentAmount |
number |
Crypto amount the user sends |
| totalFee |
number |
Sum of all fees |
Gaming Rates
Returns a conversion quote for the Fiat Payin with Wallet flow, designed for iGaming platforms. Fiat deposits are converted and settled to a crypto wallet for balance top-up.
GET
/v2/exchange-rates/gaming
Gaming conversion quote
Query Parameters
| Parameter |
Type |
Required |
Description |
| depositCurrency |
string |
Required |
Fiat currency (e.g., "EUR") |
| amount |
string |
Required |
Fiat amount to deposit |
| paymentCode |
string |
Required |
Payment method code |
Response
{
"message": {
"data": {
"withdrawAmount": 11.144317,
"exchangeRate": 0.879372,
"processingFee": 0.2,
"depositAmount": 10,
"totalFee": 0.2,
"fiatNetAmount": 9.8,
"minLimit": 2,
"maxLimit": 87937.15
},
"success": true
}
}
Response Fields
| Field |
Type |
Description |
| withdrawAmount |
number |
Stablecoin amount after conversion |
| exchangeRate |
number |
Applied exchange rate |
| processingFee |
number |
Platform processing fee |
| depositAmount |
number |
Fiat amount deposited |
| totalFee |
number |
Total fees deducted |
| fiatNetAmount |
number |
Net fiat amount after fees |
| minLimit |
number |
Minimum deposit amount |
| maxLimit |
number |
Maximum deposit amount |
Payin Rates (Deposit)
Returns a conversion quote for depositing fiat and converting to stablecoin, used in collection flows. This endpoint returns a quoteId that can be passed to order creation to lock the rate.
GET
/v2/exchange-rates/deposit
Payin rates (fiat to stablecoin)
Query Parameters
| Parameter |
Type |
Required |
Description |
| amount |
integer |
Required |
Deposit amount |
| currency |
string |
Required |
Fiat currency code (e.g., "PHP") |
| paymentCode |
string |
Optional |
Payment method for fee calculation |
| direction |
string |
Optional |
"forward" or "reverse" (default: "forward") |
| balanceCurrency |
string |
Optional |
Settlement currency; defaults to configured currency |
Response
{
"data": {
"exchangeRate": 0.0178,
"fees": {
"partnerFee": 50,
"processingFee": 100,
"totalFee": 150
},
"fiatAmount": 5000,
"fiatTicker": "PHP",
"quoteId": "d89f063f-d69c-4792-8c90-40d3598cdafa",
"withdrawAmount": 86.521
},
"status": "success"
}
Response Fields
| Field |
Type |
Description |
| quoteId |
string |
Valid for 1 minute. Pass to order creation to lock the rate. |
| exchangeRate |
number |
Applied exchange rate |
| fees.partnerFee |
number |
Commission to the reseller/partner |
| fees.processingFee |
number |
Platform processing commission |
| fees.totalFee |
number |
Sum of partner + processing fees |
| fiatAmount |
number |
Fiat deposit amount |
| fiatTicker |
string |
Fiat currency code |
| withdrawAmount |
number |
Resulting stablecoin amount after conversion |
Important: 1-Minute Quote Validity
The quoteId returned by this endpoint expires after 1 minute. You must create the order within this window to use the quoted rate. If the quote expires, fetch a new one before proceeding.
Payout Rates (Withdraw)
Returns a conversion quote for paying out from stablecoin to fiat. Like the deposit endpoint, this returns a quoteId for rate locking.
GET
/v2/exchange-rates/withdraw
Payout rates (stablecoin to fiat)
Query Parameters
| Parameter |
Type |
Required |
Description |
| amount |
integer |
Required |
Withdrawal amount |
| currency |
string |
Required |
Fiat currency code (e.g., "PHP") |
| paymentCode |
string |
Optional |
Payment method for fee calculation |
| direction |
string |
Optional |
"forward" or "reverse" (default: "forward") |
| balanceCurrency |
string |
Optional |
Settlement currency |
Response
{
"data": {
"depositAmount": 86.521,
"exchangeRate": 0.017,
"fees": {
"partnerFee": 50,
"processingFee": 100,
"totalFee": 150
},
"fiatAmount": 5000,
"fiatTicker": "PHP",
"quoteId": "d89f063f-d69c-4792-8c90-40d3598cdafa"
},
"status": "success"
}
Response Fields
| Field |
Type |
Description |
| quoteId |
string |
Valid for 1 minute. Pass to order creation to lock the rate. |
| depositAmount |
number |
Stablecoin amount to be deducted from balance |
| exchangeRate |
number |
Applied exchange rate |
| fees.partnerFee |
number |
Commission to the reseller/partner |
| fees.processingFee |
number |
Platform processing commission |
| fees.totalFee |
number |
Sum of partner + processing fees |
| fiatAmount |
number |
Fiat payout amount |
| fiatTicker |
string |
Fiat currency code |
Important: 1-Minute Quote Validity
The quoteId returned by this endpoint expires after 1 minute. You must create the payout order within this window to use the quoted rate. If the quote expires, fetch a new one before proceeding.