Crypto Payment API
About 1049 wordsAbout 4 min
Warning
Before reading this API documentation, please make sure to review the API Description Guide
Collection API
Collection Request
Brief Description:
- Create a collection order
Warning
This address is for one-time (temporary) transfers and is valid for after the address is generated.
1. Do not save the address for secondary transfers
2. Do not perform transfers after the expiration time
URL:
USDT: /usdt/collect/apply
Description: appId USDT, amount USDT, received settlement USDT
Parameters:
Parameter | Required | Type | Description |
---|---|---|---|
appId | Yes | Long | Business ID (to be obtained from the backend, corresponding to the business ID based on the URL) |
orderId | Yes | String | Merchant order number (must be unique, no longer than 48 characters) |
name | Yes | String | User's name, recommended to use real name, format: firstName and lastName separated by space, e.g., Donald John Trump |
phone | Yes | String | Real phone number (format reference: Phone Number Format) |
Yes | String | Real email address | |
amount | Yes | String | Transaction amount (do not add punctuation, e.g., “,”) Range: 0.01-5000000 |
payType | Yes | String | Fixed value: EWALLET |
inBankCode | Yes | String | Payment method |
callBackUrl | Yes | String | User's successful payment redirect URL |
callBackFailUrl | Yes | String | User's payment failure redirect URL |
subject | No | String | Payment note |
body | No | String | Detailed note |
clientType | Yes | String | APP, WEB, WAP, MINIAPP, OTHERS |
currency | Yes | String | Fiat currency, if no currency conversion is required, use USDT |
notifyUrl | No | String | Callback URL |
partnerUserId | Yes | String | User unique identifier, format: numeric |
sign | Yes | String | Signature |
Returned data parameters description:
Parameter | Type | Description |
---|---|---|
orderId | String | Merchant order number (must be unique) |
orderNo | String | Platform order number |
payUrl | String | Payment link |
exchangeRate | String | Exchange rate |
orderAmount | String | Converted cryptocurrency amount |
amount | String | Original currency amount |
bankNo | String | Chain address |
sign | String | Signature |
Collection Query
URL:
USDT: /usdt/collect/query
Parameters:
Parameter | Required | Type | Description |
---|---|---|---|
appId | Yes | Long | Business ID (to be obtained from the backend, corresponding to the business ID based on the URL) |
orderId | Yes | String | Merchant order number |
orderNo | No | String | Platform order number (responds faster) |
sign | Yes | String | Signature |
Returned data parameters description:
Parameter | Type | Description |
---|---|---|
orderId | String | Merchant order number (must be unique) |
orderNo | String | Platform order number |
amount | String | Transaction amount |
actualAmount | String | Amount received |
fee | String | Service fee |
status | Integer | Status (0: Not started, 1: In progress, 2: Success (final), 3: Failed (final), 4: Partial receipt (final), 5: Overpayment (final), -1: Abnormal, needs confirmation) |
payTime | String | Payment successful time (when status=2, available) (New York time), format: yyyy-MM-dd HH:mm:ss |
errorMsg | String | Payment failure reason (when status=3, available) |
sign | String | Signature |
Payment Methods
payType | inBankCode | Description | Limit |
---|---|---|---|
EWALLET | TRX | Tron/TRC20 | Amount >= 0.1 |
EWALLET | BSC | BNB Smart Chain/BEP20 | Amount >= 0.1 |
EWALLET | ETH | Ethereum/ERC20 | Amount >= 0.1 |
Payout API
Payout Request
Brief Description:
- Create a payout order
URL: /usdt/pay/apply
Parameters:
Parameter | Required | Type | Description |
---|---|---|---|
appId | Yes | Long | Business ID (to be obtained from the backend, corresponding to the business ID based on the URL) |
orderId | Yes | String | Merchant order number (must be unique, no longer than 48 characters) |
amount | Yes | String | Transaction amount (unit: USDT, accurate to two decimal places; do not add punctuation, e.g., “,”) Range: 0.0001-5000000 |
accountType | Yes | String | Account type: EWALLET |
bankCode | Yes | String | Supported chains |
accountNo | Yes | String | Address |
name | Yes | String | Payee's name (format: firstName middleName lastName, middleName is optional, special characters supported '.-') |
phone | Yes | String | Real phone number (format reference: Phone Number Format) |
Yes | String | Real email address | |
subject | No | String | Payment note |
body | No | String | Detailed note |
partnerUserId | Yes | String | User unique identifier (e.g., userID), used for risk control, must be valid. |
sign | Yes | String | Signature |
Returned data parameters description:
Parameter | Required | Type |
---|---|---|
orderId | String | Merchant order number (must be unique) |
orderNo | String | Platform order number |
sign | String | Signature |
Payout Query
Brief Description:
- Create a payout order query
URL: /usdt/pay/query
Parameters:
Parameter | Required | Type | Description |
---|---|---|---|
appId | Yes | Long | Business ID (to be obtained from the backend, corresponding to the business ID based on the URL) |
orderId | Yes | String | Merchant order number |
orderNo | No | String | Platform order number (responds faster) |
sign | Yes | String | Signature |
Returned data parameters description:
Parameter | Type | Description |
---|---|---|
orderId | String | Merchant order number (must be unique) |
orderNo | String | Platform order number |
amount | String | Transaction amount |
fee | String | Service fee |
status | Integer | Status (0: Not started, 1: In progress, 2: Success (final), 3: Failed (final), -1: Abnormal, needs confirmation) |
payTime | String | Payment successful time (when status=2, available) (New York time), format: yyyy-MM-dd HH:mm:ss |
errorMsg | String | Payment failure reason (when status=3, available) |
sign | String | Signature |
Supported Chains
accountType | Code (bankCode) | Description | Limit |
---|---|---|---|
EWALLET | ETH | ETH/ERC20 | Amount >= 10 |
EWALLET | TRX | Tron/TRC20 | Amount >= 10 |
EWALLET | BSC | BNB Smart Chain/B |
Notes
Warning
- Payment Timeliness: For on-chain transactions, the processing speed depends on each blockchain's processing time and congestion.
- If the payment is successfully completed within the validity period, callback information will be sent in real-time. There's no need to wait until the order expires. Even if multiple payments are made to reach the full amount, the callback will be sent to the merchant once the amount is fully paid.
- If multiple payments have not yet reached the full amount within the validity period, the callback will be sent after the validity period expires, with the callback amount being the actual paid amount, which may differ from the order amount.
- Payments made after the validity period require manual verification. If no payment is received, it may result in a loss of funds. If received, a supplementary order can be processed. To avoid loss of funds, please ensure payments are made within the validity period.
- On-chain payments may incur chain handling fees (GAS fees, which are unrelated to this platform) and may differ from the actual received amount. For more details, refer to third-party public websites: USDT Fees
- During payout operations, if the chain and address do not match, it may result in a loss of funds. Please ensure the information is correct.