# 1. Fiat-to-cryptocurrency exchange

Request method

  • POST

URL

/api/v1/exchange/express/trade/buy

Content-Type

Content-Type: application/json; charset=utf-8

Request header parameters (Header)

Param Type Description Sample
access_key String Access key obtained from the merchant backend pFqV75X3
timestamp int64 Unix millisecond timestamp (13 digits) 1679724896223
nonce String UUID V4 random string 794c26b0-d33c-4394-b2bb-c485eca16d9e
sign String The signature calculated by the signature algorithm kAXyh+eerqrefyaF8dyFB0M4FVo=

All the above parameters are passed as HTTP Header

# INR

Request body data example:

{
    "externalOrderId": "20250513184347329830",
    "chainType": "BSC",
    "tokenType": "USDT",
    "addressTo": "0xa8666442fA7583F783a169CC9F3333333360295E8",
    "tokenAmount": "1",
    "currencyType": "INR",
    "payType": "BANK",
    "remark": "test",
    "notifyUrl" : ""
}

Parameter Description:

1. Skip First Screen Mode

Parameter name type Is this field required? describe
tokenAmount Decimal Yes Token Amount
externalOrderId String Yes Merchant order number
chainType String Yes Chain type BSC
tokenType String Yes Token Type USDT
addressTo String Yes address
currencyType String Yes Currency Type INR
payType string Yes Payment type: BANK
notifyUrl String No Callback address after payment is completed (server side)
remark String No Merchant customized remarks
reviewQuote String No Skip the quotation page: 1=Yes, 0=No (Default: 0)

2. Standard Quotation Mode

Parameter name type Is this field required? describe
tokenAmount String No Amount of tokens
externalOrderId String No Merchant order number
chainType String Yes Blockchain type (BSC)
tokenType String Yes Token type (USDT)
addressTo String No Address
currencyType String Yes Currency type (INR)
payType String Yes Payment type: BANK
notifyUrl String No Callback URL after payment is completed (server-side)
remark String No Merchant custom remark information
reviewQuote String No Whether to skip the quotation page: 1=Yes, 0=No (default: 0)

Response type:

Header: { 'Content-Type': 'application/json;charset=utf-8'}

Create a payment response description:

Normal response data example (HTTP 200)

{
    "code": "200",
    "success": true,
    "msg" : "Success" ,
    "msgEn": "SUCCESS",
    "data": {
        "chainType": "BSC",
        "currencyAmount": "83.2309",
        "tokenAmount": "1",
        "currencyType": "INR",
        "tokenType": "USDT",
        "externalOrderId": "20250513184347329830",
        "orderId": "OEXCHEXCH202505131043481747133028307HAMBIT-U0000000401298824",
        "tradeType": "BUY",
        "exchangePrice": "83.2309",
        "orderFee": "0.0118",
        "bankAccountNumber": null,
        "bankAccountType" : null ,
        "bankCode" : null ,
        "bankName" : null ,
        "cashierUrl": "http://fiat/OEXCHEXCH202505131043481747133028307-U0000000401298824"
    }
}

Response Parameter Description

Parameter name type describe
chainType String Main Chain
currencyAmount String Amount in Fiat Currency
tokenAmount String Token Amount
currencyType String Fiat currency type
tokenType String Token Type
externalOrderId String Merchant order number
orderId String Order Number
tradeType String Transaction Type
bankAccountNumber String Channel Bank Account Number(to be used according to actual situation)
exchangePrice String exchange rate
orderFee String Fees
bankAccountType String Channel bank account type (to be used according to actual situation)
bankCode String Channel bank code (use according to actual situation)
bankName String Channel bank name (use according to actual situation)
cashierUrl String Redeem cashier link

# BRL

Request body data example:

{
    "externalOrderId": "20250513192309317184",
    "chainType": "BSC",
    "tokenType": "USDT",
    "addressTo": "0xa8666442fA7583F783a169CC9F5449333333395E8",
    "tokenAmount": "10.214234221423422312",
    "currencyType": "BRL",
    "payType": "PIX",
    "remark": "test",
    "notifyUrl" : ""
}

Parameter Description:

1. Skip First Screen Mode

Parameter name type Is this field required? describe
tokenAmount Decimal Yes Token Amount
externalOrderId String Yes Merchant order number
chainType String Yes Chain type BSC
tokenType String Yes Token Type USDT
addressTo String Yes address
currencyType String Yes Currency Type BRL
payType string Yes Payment type: PIX
notifyUrl String No Callback address after payment is completed (server side)
remark String No Merchant customized remarks
reviewQuote String No Skip the quotation page: 1=Yes, 0=No (Default: 0)

2. Standard Quotation Mode

Parameter name type Is this field required? describe
tokenAmount String No Amount of tokens
externalOrderId String No Merchant order number
chainType String Yes Blockchain type (BSC)
tokenType String Yes Token type (USDT)
addressTo String No Address
currencyType String Yes Currency type (BRL)
payType String Yes Payment type: PIX
notifyUrl String No Callback URL after payment is completed (server-side)
remark String No Merchant custom remark information
reviewQuote String No Whether to skip the quotation page: 1=Yes, 0=No (default: 0)

Response type:

Header: { 'Content-Type': 'application/json;charset=utf-8'}

Create a payment response description:

Normal response data example (HTTP 200)

{
    "code": "200",
    "success": true,
    "msg" : "Success" ,
    "msgEn": "SUCCESS",
    "data": {
        "chainType": "BSC",
        "currencyAmount": "60.72",
        "tokenAmount": "10.214234221423422312",
        "currencyType": "BRL",
        "tokenType": "USDT",
        "externalOrderId": "20250513192309317184",
        "orderId": "OEXCHEXCH202505131123101747135390221HAMBIT-U0000000401298839",
        "tradeType": "BUY",
        "exchangePrice": "5.944444",
        "orderFee": "0.204284684428468447",
        "bankAccountNumber": null,
        "bankAccountType" : null ,
        "bankCode" : null ,
        "bankName" : null ,
        "cashierUrl": "http://fiat/OEXCHEXCH202505131123101747135390221-U0000000401298839"
    }
}

Response Parameter Description

Parameter name type describe
chainType String Main Chain
currencyAmount String Amount in Fiat Currency
tokenAmount String Token Amount
currencyType String Fiat currency type
tokenType String Token Type
externalOrderId String Merchant order number
orderId String Order Number
tradeType String Transaction Type
bankAccountNumber String Channel Bank Account Number(to be used according to actual situation)
exchangePrice String exchange rate
orderFee String Fees
bankAccountType String Channel bank account type (to be used according to actual situation)
bankCode String Channel bank code (use according to actual situation)
bankName String Channel bank name (use according to actual situation)
cashierUrl String Redeem cashier link

# MXN

Request Body Example:

{
	"externalOrderId": "20250513192309317184",
	"chainType": "BSC",
	"tokenType": "USDT",
	"addressTo": "0xa8666442fA7583F783a169CC9F5449333333395E8",
	"tokenAmount": "10.214234221423422312",
	"currencyType": "MXN",
	"payType": "BANK",
	"remark": "test",
	"notifyUrl": ""
}

Parameter Description:

1. Skip First Screen Mode

Parameter Name Type Required Description
tokenAmount Decimal Yes Token amount
externalOrderId String Yes Merchant order ID
chainType String Yes Chain type (e.g., BSC)
tokenType String Yes Token type (e.g., USDT)
addressTo String Yes Address
currencyType String Yes Currency type (e.g., MXN)
payType String Yes Payment type: CASH, PAYCASHRECURRENT, QRIS
notifyUrl String No Callback URL for payment completion (server-side)
remark String No Custom merchant remarks
reviewQuote String No Whether to skip the quote page: 1 = yes, 0 = no (default: 0)

2. Standard Quotation Mode

Parameter Name Type Required Description
tokenAmount String No Amount of tokens
externalOrderId String No Merchant order number
chainType String Yes Blockchain type (BSC)
tokenType String Yes Token type (USDT)
addressTo String No Address
currencyType String Yes Currency type (MXN)
payType String Yes Payment type: CASH, PAYCASHRECURRENT, QRIS
notifyUrl String No Callback URL after payment is completed (server-side)
remark String No Merchant custom remark information
reviewQuote String No Whether to skip the quotation page: 1=Yes, 0=No (default: 0)

Response Type:

Header: { 'Content-Type': 'application/json;charset=utf-8'}

Create Payment Response Explanation:

Normal response data example (HTTP 200)

{
	"code": "200",
	"success": true,
	"msg": "Success",
	"msgEn": "SUCCESS",
	"data": {
		"chainType": "BSC",
		"currencyAmount": "60.72",
		"tokenAmount": "10.214234221423422312",
		"currencyType": "MXN",
		"tokenType": "USDT",
		"externalOrderId": "20250513192309317184",
		"orderId": "OEXCHEXCH202505131123101747135390221-U0000000401298839",
		"tradeType": "BUY",
		"exchangePrice": "5.944444",
		"orderFee": "0.204284684428468447",
		"bankAccountNumber": null,
		"bankAccountType": null,
		"bankCode": null,
		"bankName": null,
		"cashierUrl": "http://fiat/OEXCHEXCH202505131123101747135390221-U0000000401298839"
	}
}

Response Parameter Description:

Parameter Name Type Description
chainType String Main chain
currencyAmount String Fiat amount
tokenAmount String Token amount
currencyType String Fiat currency type
tokenType String Token type
externalOrderId String Merchant order ID
orderId String Order ID
tradeType String Trade type
bankAccountNumber String Channel bank account number (use as applicable)
exchangePrice String Exchange rate
orderFee String Fee
bankAccountType String Channel bank account type (use as applicable)
bankCode String Channel bank code (use as applicable)
bankName String Channel bank name (use as applicable)
cashierUrl String Exchange cashier URL
payParam String Payment parameters

# VND

Request Body Example:

{
	"externalOrderId": "YURITEST20250610093847710921",
	"chainType": "BSC",
	"tokenType": "USDT",
	"addressTo": "0xa8666442fA7583F783a169CC9F5449ec660295E8",
	"tokenAmount": "1.1098",
	"currencyType": "VND",
	"payType": "ZALO_PAY",
	"reviewQuote": "",
	"remark": "test",
	"notifyUrl": ""
}

Parameter Description:

1. Skip First Screen Mode

Parameter Name Type Required Description
tokenAmount Decimal Yes Token amount
externalOrderId String Yes Merchant order ID
chainType String Yes Blockchain type (e.g. BSC)
tokenType String Yes Token type (e.g. USDT)
addressTo String Yes Recipient wallet address
currencyType String Yes Fiat currency type (e.g. VND)
payType String Yes Payment method: BANK, BANK_SCAN_CODE, CARD_TO_CARD, MOMO, ZALO_PAY, VIETTEL_MONEY
notifyUrl String No Callback URL for payment completion (server-side)
remark String No Merchant remarks
reviewQuote String No Skip quote page: 1=Yes, 0=No (Default: 0)

2. Standard Quotation Mode

Parameter Name Type Required Description
tokenAmount String No Amount of tokens
externalOrderId String No Merchant order number
chainType String Yes Blockchain type (BSC)
tokenType String Yes Token type (USDT)
addressTo String No Address
currencyType String Yes Currency type (VND)
payType String Yes Payment type: BANK, BANK_SCAN_CODE, CARD_TO_CARD, MOMO, ZALO_PAY, VIETTEL_MONEY
notifyUrl String No Callback URL after payment is completed (server-side)
remark String No Merchant custom remark information
reviewQuote String No Whether to skip the quotation page: 1=Yes, 0=No (default: 0)

Response Type:

Header: { 'Content-Type': 'application/json;charset=utf-8'}

Create Payment Response Explanation:

Normal response data example (HTTP 200)

{
	"code": "200",
	"success": true,
	"msg": "成功",
	"msgEn": "SUCCESS",
	"data": {
		"chainType": "BSC",
		"currencyAmount": "28854",
		"tokenAmount": "1.1098",
		"currencyType": "VND",
		"tokenType": "USDT",
		"externalOrderId": "YURITEST20250610093847710921",
		"orderId": "OEXCHEXCH202506100138491749519529967U0000000400000253",
		"tradeType": "BUY",
		"payParam": null,
		"exchangePrice": "25999",
		"orderFee": "0.022196",
		"bankAccountNumber": null,
		"bankAccountType": null,
		"bankCode": null,
		"bankName": null,
		"cashierUrl": "http://ramp-cashier.io/fiat/OEXCHEXCH202506100138491749519529967U0000000400000253"
	}
}

Response Parameter Description:

Parameter Name Type Description
chainType String Main chain
currencyAmount String Fiat amount
tokenAmount String Token amount
currencyType String Fiat currency type
tokenType String Token type
externalOrderId String Merchant order ID
orderId String Order ID
tradeType String Trade type
bankAccountNumber String Channel bank account number (use as applicable)
exchangePrice String Exchange rate
orderFee String Fee
bankAccountType String Channel bank account type (use as applicable)
bankCode String Channel bank code (use as applicable)
bankName String Channel bank name (use as applicable)
cashierUrl String Exchange cashier URL
payParam String Payment parameters