<?php // 微信开发配置 return array( //... /* -------- 微信支付 [ APP 支付 ] 需要的配置 -------- */ 'APP' => array( // 微信开放平台审核通过的应用 APPID 'appid' => '', // 微信支付商户ID 'mchid' => '1584666521', // 微信支付对应的KEY 'key' => 'mpxtarou6s8apolu8winx66nhy8m8918' ), //....
1 微信开发平台开发者认证 > 创建移动应用审核通过 > 设置应用签名及包名;
2 微信支付账户开通app支付产品 > 绑定商户到开放平台;
<?php class wxPayController extends grace{ public function index(){ /* * 微信支付后端示例代码 * 模拟一个1元的支付信息,真实环境可以利用订单数据来产生下面的order数据 */ //模拟一个简单的订单信息 $order = array( 'id' => mt_rand(111111111,999999999), // 订单号码 'price' => 2 // 订单价格 ); //使用统一下单接口返回微信支付前端必须的信息 $orderWxPay = array(); $orderWxPay['body'] = '支付描述'; //支付描述 //商户系统内部订单号,要求32个字符内 $orderWxPay['out_trade_no'] = 'APP-'.$order['id']; //总价,需要 * 100 $orderWxPay['total_fee'] = $order['price']; //异步接收微信支付结果通知的回调地址 $orderWxPay['notify_url'] = 'https://域名/wxPay/payback/'; //实例化微信支付对象 $graceWeChat = new \phpGrace\tools\graceWeChat(); $graceWeChatPay = new \phpGrace\tools\graceWeChat\pay($graceWeChat); //生成订单 $res = $graceWeChatPay->createOrder($orderWxPay, 'APP'); //p($res); // 请根据app端返回值要求整理 $res 数组 // 然后输出结果给app前端 exit(json_encode($res, JSON_UNESCAPED_UNICODE)); } // 支付成功后微信支付服务器异步通知接口 // 根据通知结果处理订单状态等后续工作 public function payback(){ $graceWeChat = new \phpGrace\tools\graceWeChat(); $graceWeChatPay = new \phpGrace\tools\graceWeChat\pay($graceWeChat); $res = $graceWeChatPay->payBack('APP'); // 将 res 数组与数据库内订单信息进行比对,比对后进行后续操作,如:更新订单、发送通知...... file_put_contents('pay.txt', json_encode($res, JSON_UNESCAPED_UNICODE)); echo '<xml> <return_code><![CDATA[SUCCESS]]></return_code> <return_msg><![CDATA[OK]]></return_msg> </xml>'; } }