格式详解

  1. 请求参数一共有八个,但是加密参数只有四个,而且不是易支付{key}={value}排序后加密,而是所有加密参数按顺序首尾相接拼接成一个字符串后再进行加密。

function sign($data_arr) {
        return md5(join('',$data_arr));
    };
//签名函数

$sign = sign(array($merchantNum, $orderNo, $amount, $notifyUrl, $key));
//构造签名
2. 传递参数时开发文档给的是用form提交,而且返回的是json格式信息,非常不方便。那可以用ajax提交吗?经测试不行,有防跨域,只能服务器端用curl提交参数,并解析payurl。

<!--自动提交表单-->
<script>document.getElementById("post_data").submit();</script>

3.异步通知 加密方式与传递时加密方式相同,如果验证成功要返回success

4.接口转换 已发出具体程序,你也可以参照Zfaka-smpay对接程序里的notifyUrl.php和submit.php,这是smpay接口转换为易支付接口格式。一般情况下可以省略服务器异步通知发送的部分参数,如真实付款金额 付款时间。

5.同步通知返回的地址默认是不带参数的,这就有点奇怪,于是怎么加上参数呢?我们可以在请求的时候自己带上参数,但是经测试只能带一个参数,多余的会被吞掉,所以我就搞出了这样的形式?cs=订单号/金额/签名值。。。


$cs = $_GET['cs'];
  if ($cs != ""){
  $arr1 = explode("/", $cs);
   function resignt($data_arr) {
  return md5(join('',$data_arr));
     };
$resign = resignt(array("10001", $arr1[0], $arr1[1], $notifyUrl, $key));