接入说明(必看)
本页面详细介绍了平台接入公共参数,签名算法,多语言配置,通用错误码等说明,接入前请先详细阅读本页面。
商户须知
服务器时区:UTC时区,商户需注意数据统计的时区计算
提供的接口,带有isSuccess=true,表示成功,同时code=0,code会根据不同的接口返回不同的错误编码,message也会返回对应当地语言的错误信息
平台返回的token有效期为七天,超过七天需要重新获取
审核通过开户要求后,我方将提供商户后台账号,商户可通过后台查看tenant_id(商户号)和 serect(签名密钥)
文档中{API_URL_ROOT}需替换为在商户后台界面提供的测试/生产环境接口调用地址
公共参数
所有的接口调用,都必须带有下面这几个参数
注意区分大小写
| 参数名 | 所处位置 | 必填 | 类型 | 说明 |
|---|---|---|---|---|
| sign | header | 是 | string | 签名,使用签名算法计算得到 |
| timestamp | header | 是 | int | 时间戳,单位秒,从1970年1月1日到现在所经过的秒数,如:1741837297 |
| Accept-Language | header | 是 | string | 接收的语言编码,参考语言列表,如:zh,en,以便在报错的时候,提供响应的语言错误信息。 |
签名算法
sign=md5(签名密钥secret+body中的json字符串+签名密钥secret)
注意: 生成json的各个字段顺序和数据类型必须和文档一致,否则加密后的签名无法识别
示例
调用注册接口,生成签名
注册接口参数:
{
"tenantId": 1,
"userId": "t1_276682",
"nickName": "千叶",
"balance": 10304.00,
"currency": "BRL"
}
拼成签名字符串: 39a6581c31ef3203a22edb2daa2ab6d1{"tenantId":1,"userId":"t1_276682","nickName":"千叶","balance":10304.00,"currency":"BRL"}39a6581c31ef3203a22edb2daa2ab6d1
| 类型 | 说明 |
|---|---|
| 请求方式 | POST |
| Content-Type | "application/json; charset=utf-8" |
| 请求body中json数据 | {"tenantId":1,"userId":"t1_276682","nickName":"千叶","balance":10304.00,"currency":"BRL"} |
| 签名密钥secret | 39a6581c31ef3203a22edb2daa2ab6d1 |
| 需要md5加密的字符串 | 39a6581c31ef3203a22edb2daa2ab6d1{"tenantId":1,"userId":"t1_276682","nickName":"千叶","balance":10304.00,"currency":"BRL"}39a6581c31ef3203a22edb2daa2ab6d1 |
| 最终加密出来md5字符串 | fe87a3ef10c45f367d6994d0e71ea0f1 |
接口返回结构
所有接口返回的Content-Type为 "application/json; charset=utf-8"
| 参数名 | 类型 | 说明 |
|---|---|---|
| isSuccess | boolean | 表示是否成功 |
| code | int | 错误码,当isSuccess为false,此栏位值为正整数的数字,错误码 |
| message | string | 错误信息,接口会根据Accept-Language的值,把对应的错误信息一起返回 |
| data | object | 数据,不同的接口返回的内容不一样 |
示例
{
"isSuccess": true,
"code": 0,
"data": "67d2952e5011e3ca91c2b827"
}