卡速售2.0API
首页
官网
社区
商户中心
平台简介
开发指南
签名规范
全局状态码
基础数据
用户余额查询
商品接口
商品分类列表
商品列表接口
商品详情接口
商品调价记录
商品变更通知
订单接口
提交订单接口
订单查询接口
订单异步回调
后台接口
获取订单接口
处理订单接口
用户加款接口
供货接口
商家订单列表
商家订单详情
商家订单处理
商家售后列表
商家售后详情
商家售后处理
签名规范
## 需要注意以下重要规则: <text style="color:red;"> **◆ 请求参数参数名ASCII码从小到大排序,签名内容需要UTF-8编码; ◆ 请求Body参数为空时传{},并且data使用{}参与签名; ◆ 请求参数和签名内容需要UTF-8编码; ◆ 回调地址请原样进行签名; ◆ 参数名区分大小写;** </text> <br> **签名计算方式:** sign生成规则: sha1(time+data+apikey) 为了防止请求被伪造、篡改,每一次接口请求都需传入根据本次请求的 13位时间戳(毫秒)+body参数(json格式)+apikey(密钥) 计算获得的sign(签名) **签名示例(php):** ```php public function sign($post = [], $key ='',$userid = '') { if ($post) { ksort($post); //排序post参数 $post = json_encode($post , JSON_UNESCAPED_SLASHES|JSON_UNESCAPED_UNICODE); } else { $post = "{}"; } $time = time() . rand(100, 999); $header[] = "Content-Type: application/json; charset=utf-8"; //用户密钥 $header[] = "Sign: " . sha1($time . $post . $key); $header[] = "Timestamp: " . $time; //用户ID $header[] = "UserId: " . $userid; return [$post, $header]; } ``` **接口约定(每次请求需传入以下Header参数:):** | Header 参数 | 类型 | 是否必填 | 描述 | 示例值 | | --- | --- | --- | --- | --- | | Sign | string | 是 |签名 | 20d6ed7224f6ecedda74548aff9cb1a54e5c0033 | | Timestamp | string | 是 | 13位时间戳(毫秒) | 1696645385740 | | UserId | string | 是 | 您的用户接口appid(后台接口为管理员登录账号) | 2uIkTrXNdAFc7OKhbRenzjDtgPoZ6s5C | **接口示例:** 以订单查询接口为例,开发者的UserId是2uIkTrXNdAFc7OKhbRenzjDtgPoZ6s5C,apikey是 H0YnuPpcVtx7rQdMTbjN6932s5oDOqFa,请求的参数如下: > Header参数 ```php Sign: 待下方计算 Timestamp: 1696645385740 UserId: 2uIkTrXNdAFc7OKhbRenzjDtgPoZ6s5C ``` > Body参数 ```php { "day": 10, "external_orderno": "", "ordersn": "D100759082558859640832" } ``` 第一步:将请求Body参数中多个键值对,参数按照参数名的字典升序排列(a-z)。 `{"day":10,"external_orderno":"","ordersn":"D100759082558859640832"}` 第二步:将 13位时间戳+第一步中排序后的字符串+apikey 拼接得到待签名字符串 `1696645385740{"day":10,"external_orderno":"","ordersn":"D100759082558859640832"}H0YnuPpcVtx7rQdMTbjN6932s5oDOqFa ` 第三步:使用sha1算法加密待加密字符串即为sign `15b8f541eb10e3fbb33efd92c8d52d50ddca0784` 第四步:将sign添加到Header参数中 ```php Sign: 15b8f541eb10e3fbb33efd92c8d52d50ddca0784 Timestamp: 1696645385740 UserId: 2uIkTrXNdAFc7OKhbRenzjDtgPoZ6s5C ``` </br></br></br></br>