飞牛pay接口文档


API签名方式和接口规范

<h3>接口规范</h3> <ul> <li>所有请求均为POST请求。</li> <li>接口返回json格式数据。</li> <li>接口返回code,0-表示请求成功。1-表示错误。</li> <li>接口全部采用https协议</li> </ul> <h3>步骤说明</h3> <pre><code> 1. 将业务参数(除sign本身外)的名称按照ASCII码从小到大排序(字典序)后拼接成URL键值 即 key1=value1&key2=value2 字符串形式 (1)生成sign参数时,不要进行URL 编码转换,中文字符以utf-8编码格式进行处理**。 (2)所有参数,无论是否必填,字符类型的,只要值不为空,则参与签名;数值类型的的参数,值为0有意义,则也需要参与签名 2. 在上一步生成的字符串末尾追加: &key 3. 对上述结果字符串进行MD5做摘要,结果转大写后作为sign参数的值</code></pre> <h3>签名示范</h3> <ul> <li> <p>step 1 准备数据 mchid: 11111 ordersn:xxx key: afsd</p> </li> <li> <p>step 2 将参数排序并拼接</p> <p>mchid=11111&ordersn=xxx</p> </li> <li> <p>step 3 拼接key</p> <p>mchid=11111&ordersn=xxx&amp;key=秘钥</p> </li> <li> <p>step 4 计算MD5值并转为大写十六进制字符串</p> <p>A4C12A15E86D8FC38C490B4661914498</p> </li> </ul> <h4>php代码示例</h4> <pre><code>public function appendSign(array $params, $keys) { // 排序 ksort($params); $str = &amp;#039;&amp;#039;; foreach ($params as $key =&amp;gt; $value) { // 空不参与签名 if (!empty($value)) { if ($key != &amp;#039;key&amp;#039;) { $str .= &amp;quot;{$key}={$value}&amp;amp;&amp;quot;; } } } $appkey = &amp;#039;key=&amp;#039; . $keys; $signText = &amp;quot;{$str}{$appkey}&amp;quot;; return strtoupper(md5($signText)); }</code></pre> <p>调用方法</p> <pre><code>$r = $this-&amp;gt;appendSign([ &amp;#039;mchid&amp;#039; =&amp;gt; &amp;#039;xxx&amp;#039;, &amp;#039;ordersn&amp;#039; =&amp;gt; &amp;#039;aaaa&amp;#039; ], &amp;#039;你的秘钥&amp;#039;);</code></pre>

页面列表

ITEM_HTML