公共参数&签名

| 版本 | 日期 | 描述 | 作者 | | :- | :- | :- | :- | ## 协议规则 传输方式:采用HTTP/HTTPS传输\ 提交方式:采用GET/POST 方式提交\ 字符编码:UTF-8 ## 接口地址 | 系统 | 接口地址 | | :--- | :------------------------ | | 商户系统 | <https://mch.bozepay.com> | ## 公共参数 接口中的version默认1.0 | 参数名 | 说明 | | :---------- | :------------------------------------ | | appId | appId,请与对接人获取 | | deviceId | 设备编号,设备的IMEI等,请确保唯一性,调用接口前请将设备号告知对接人员 | | requestTime | 请求时间时间戳(单位:秒) | | sign | 验签的sign,详见下方签名方式 | | merchantId | 商户号,在 “设备初始化” 接口获取,设备初始化接口此值传空即可 | | productNum | 产品编号,默认值:123456 | | data | 详细参数序列化后赋值给此字段 | ## 返回参数 1. 服务端返回数据为json格式,参数说明: | 参数 | 类型 | 是否必填 | 描述 | 示例值 | | :------ | :----- | :--- | :-------------------- | :------ | | code | String | 是 | 接口返回码,00000表示业务处理成功 | 00000 | | message | String | 是 | 接口返回描述,业务处理失败时,返回错误信息 | success | | data | Json | 否 | 接口返回的数据 | {} | 返回数据参考: ```json { "code": "00000", "message": "SUCCESS", "deviceId": "xxxxx", "result": {} } ``` ## 安全规范 ### 1、签名方式 SecretKey:请与对接人员获取 按照SecretKey放在首位,然后把上面参数按照从低到高顺序排列,并转MD5后再转小写;拼接方式如:{SecretKey}{appId}{data}{deviceId}{merchantId}{productNum}{requestTime} 签名例子: ```json { "appId": "appid1007005", "data": "{\"deviceOrderNum\":\"20210506180217050000\"}", "deviceId": "1", "requestTime": "1620295342", "sign": "6a158f0055c62f80f7767569fce6880e", "merchantId": "7005", "productNum": "1007005" } MD5({SECRET_KEY}{appId}{data}{deviceId}{merchantId}{productNum}{requestTime}) = d2jHFhvryHJyAUKShEsPL53ZtLYvUX0Iappid1007005{"deviceOrderNum":"20210506180217050000"}1700510070051620295342 = 6a158f0055c62f80f7767569fce6880e ``` ### 2、涉及隐私相关的使用HTTPS