Exemplo n.º 1
0
<?php

/**
 * 被扫支付demo
 * ====================================================
 * 
*/
include_once "../WxPayMicropayHelper/WxPayMicropayHelper.php";
//自定义订单号,此处仅作举例
$timeStamp = time();
$out_trade_no = WxPayConf_micropay::APPID . "{$timeStamp}";
//获取用户一维码
if (isset($_POST["auth_code"])) {
    $auth_code = $_POST["auth_code"];
    //使用被扫支付接口
    $micropayCall = new MicropayCall();
    //设置被扫支付接口参数
    //设置必填参数
    //appid已填,商户无需重复填写
    //mch_id已填,商户无需重复填写
    //noncestr已填,商户无需重复填写
    //spbill_create_ip已填,商户无需重复填写
    //sign已填,商户无需重复填写
    $micropayCall->setParameter("body", "贡献一分钱");
    //商品描述
    $micropayCall->setParameter("out_trade_no", "{$out_trade_no}");
    //商户订单号
    $micropayCall->setParameter("total_fee", "1");
    //总金额
    $micropayCall->setParameter("auth_code", "{$auth_code}");
    //交易类型
Exemplo n.º 2
0
 public function micropay()
 {
     Vendor('Wxpay.WxPayMicropayHelper.WxPayMicropayHelper');
     //自定义订单号,此处仅作举例
     $timeStamp = time();
     $out_trade_no = \WxPayConf_micropay::APPID . $timeStamp;
     //获取用户一维码
     if (isset($_POST["auth_code"])) {
         $auth_code = $_POST["auth_code"];
         //使用被扫支付接口
         $micropayCall = new \MicropayCall();
         //设置被扫支付接口参数
         //设置必填参数
         //appid已填,商户无需重复填写
         //mch_id已填,商户无需重复填写
         //noncestr已填,商户无需重复填写
         //spbill_create_ip已填,商户无需重复填写
         //sign已填,商户无需重复填写
         $micropayCall->setParameter("body", "贡献一分钱");
         //商品描述
         $micropayCall->setParameter("out_trade_no", "{$out_trade_no}");
         //商户订单号
         $micropayCall->setParameter("total_fee", "1");
         //总金额
         $micropayCall->setParameter("auth_code", "{$auth_code}");
         //交易类型
         //非必填参数,商户可根据实际情况选填
         //$micropayCall->setParameter("sub_mch_id","XXXX");//子商户号
         //$micropayCall->setParameter("device_info","XXXX");//设备号
         //$micropayCall->setParameter("attach","XXXX");//附加数据
         //$micropayCall->setParameter("time_start","XXXX");//交易起始时间
         //$micropayCall->setParameter("time_expire","XXXX");//交易结束时间
         //$micropayCall->setParameter("goods_tag","XXXX");//商品标记
         //$micropayCall->setParameter("openid","XXXX");//用户标识
         //$micropayCall->setParameter("product_id","XXXX");//商品ID
         //提交订单
         $micropayCallResult = $micropayCall->getResult();
         //商户根据实际情况设置相应的处理流程,此处仅作举例
         if ($micropayCallResult["return_code"] == "FAIL") {
             echo "通信出错:" . $micropayCallResult['return_msg'] . "<br>";
         } elseif ($micropayCallResult["result_code"] == "FAIL") {
             echo "出错" . "<br>";
             echo "错误代码:" . $micropayCallResult['err_code'] . "<br>";
             echo "错误代码描述:" . $micropayCallResult['err_code_des'] . "<br>";
         } else {
             echo "用户标识:" . $micropayCallResult['openid'] . "<br>";
             echo "是否关注公众账号:" . $micropayCallResult['is_subscribe'] . "<br>";
             echo "交易类型:" . $micropayCallResult['trade_type'] . "<br>";
             echo "付款银行:" . $micropayCallResult['bank_type'] . "<br>";
             echo "总金额:" . $micropayCallResult['total_fee'] . "<br>";
             echo "现金券金额:" . $micropayCallResult['coupon_fee'] . "<br>";
             echo "货币种类:" . $micropayCallResult['fee_type'] . "<br>";
             echo "微信支付订单号:" . $micropayCallResult['transaction_id'] . "<br>";
             echo "商户订单号:" . $micropayCallResult['out_trade_no'] . "<br>";
             echo "商家数据包:" . $micropayCallResult['attach'] . "<br>";
             echo "支付完成时间:" . $micropayCallResult['time_end'] . "<br>";
         }
     } else {
         $this->assign('out_trade_no', $out_trade_no);
         $this->display();
     }
 }