Integration Guide (Must Read)
This page provides detailed information on platform integration public parameters, signature algorithms, multi-language configuration, common error codes, and other specifications. Please read this page carefully before integration.
Merchant Notice
Server timezone: UTC timezone, merchants need to pay attention to timezone calculations for data statistics
The provided interfaces include isSuccess=true to indicate success, along with code=0. The code will return different error codes for different interfaces, and message will return corresponding error information in the local language
The token returned by the platform is valid for seven days. After seven days, you need to obtain a new token
After approval of account opening requirements, we will provide merchant backend account. Merchants can view tenant_id (merchant ID) and secret (signature key) through the backend
{API_URL_ROOT} in the documentation needs to be replaced with the test/production environment interface call address provided in the merchant backend interface
Public Parameters
All interface calls must include the following parameters
Note: Case sensitive
| Parameter | Location | Required | Type | Description |
|---|---|---|---|---|
| sign | header | Yes | string | Signature, calculated using Signature Algorithm |
| timestamp | header | Yes | int | Timestamp in seconds, seconds elapsed from January 1, 1970 to now, e.g.: 1741837297 |
| Accept-Language | header | Yes | string | Accepted language code, refer to Language List, e.g.: zh,en, to provide corresponding language error information when errors occur |
Signature Algorithm
sign=md5(signature key secret + json string in body + signature key secret)
Note: The order of each field and data type when generating json must be consistent with the documentation, otherwise the encrypted signature cannot be recognized
Example
Call User Registration to generate signature
Registration interface parameters:
{
"tenantId": 1,
"userId": "t1_276682",
"nickName": "千叶",
"balance": 10304.00,
"currency": "BRL"
}
Compose signature string: 39a6581c31ef3203a22edb2daa2ab6d1{"tenantId":1,"userId":"t1_276682","nickName":"千叶","balance":10304.00,"currency":"BRL"}39a6581c31ef3203a22edb2daa2ab6d1
| Type | Description |
|---|---|
| Request method | POST |
| Content-Type | "application/json; charset=utf-8" |
| JSON data in request body | {"tenantId":1,"userId":"t1_276682","nickName":"千叶","balance":10304.00,"currency":"BRL"} |
| Signature key secret | 39a6581c31ef3203a22edb2daa2ab6d1 |
| String to be MD5 encrypted | 39a6581c31ef3203a22edb2daa2ab6d1{"tenantId":1,"userId":"t1_276682","nickName":"千叶","balance":10304.00,"currency":"BRL"}39a6581c31ef3203a22edb2daa2ab6d1 |
| Final encrypted MD5 string | fe87a3ef10c45f367d6994d0e71ea0f1 |
Interface Return Structure
All interfaces return Content-Type as "application/json; charset=utf-8"
| Parameter | Type | Description |
|---|---|---|
| isSuccess | boolean | Indicates whether successful |
| code | int | Error code, when isSuccess is false, this field value is a positive integer, Error Codes |
| message | string | Error message, the interface will return corresponding error information based on the Accept-Language value |
| data | object | Data, different interfaces return different content |
Example
{
"isSuccess": true,
"code": 0,
"data": "67d2952e5011e3ca91c2b827"
}