スマートフォンの普及により、モバイル決済は人々の生活に欠かせないツールになりました。その代表格の一つとして、WeChat Payは国内市場で大きなユーザーベースとシェアを誇っています。したがって、電子商取引やモバイル アプリケーションを開発したい一部の開発者にとって、WeChat 決済の開発はますます重要になっています。
この記事では主にPHPでWeChat決済を開発する方法を紹介します。
WeChat Payを利用する前に、WeChat Pay公式サイトにアカウントを登録し、開発者ID、加盟店番号、APIキーなどを取得する必要があります。情報。同時に、販売アカウントが WeChat 支払いサービスを正常に開始し、関連するレビュー資料を提出し、WeChat 支払い認証に合格したことを確認する必要があります。
WeChat Pay は、さまざまな言語での開発用の SDK を多数提供しており、公式 Web サイトから直接ダウンロードしてプロジェクトに統合できます。ここでは、PHP 言語を例として、WeChat Payment SDK を統合する方法を紹介します。
(1) WeChat Payment SDK のダウンロード
公式 Web サイトから PHP 版の SDK をダウンロードできます。ダウンロード後、解凍して「lib」ディレクトリを取得します。 「lib/WxPay.Api.php」ファイルはメインの SDK ファイルです。
(2) 支払いファイルの作成
SDK を使いやすくするために、WeChat 支払いに関連するロジックを処理するための新しい「pay.php」ファイルを自分で作成できます。このファイルでは、上記の SDK の関連設定を参照して初期化する必要がありますが、その前に次の点に注意する必要があります。 WeChat Pay の Web サイト;
——加盟店番号は WeChat Pay の公式 Web サイトから取得できます;—— API キーを設定します (WeChat Pay の公式 Web サイトから取得できます);
— — 注文トランザクション番号、注文トランザクション金額、およびその他の必要なパラメーターを設定します。
次に、次のコードを使用して SDK を初期化できます:
<?php include_once "WxPay.Api.php"; include_once "WxPay.Data.php"; // 初始化SDK信息 WxPayConfig::$APPID = '您的公众账号APPID'; WxPayConfig::$MCHID = '您的商户号'; WxPayConfig::$KEY = '您的API密钥'; // 设置订单交易号、订单交易金额等必要的参数 $out_trade_no = '您的订单交易号'; $total_fee = '您的订单交易金额'; // ... ?>
(3) 署名を生成します
WeChat 支払いトランザクションを実行する前に、署名を生成する必要があります。署名を生成するコードは次のとおりです。
<?php // 创建订单支付对象 $input = new WxPayUnifiedOrder(); $input->SetBody("test"); // 商品描述 $input->SetAttach("test"); // 附加数据 $input->SetOut_trade_no($out_trade_no); // 商户订单号 $input->SetTotal_fee($total_fee); // 标价金额 $input->SetTime_start(date("YmdHis")); // 交易起始时间 $input->SetTime_expire(date("YmdHis", time() + 60 * 5)); // 交易结束时间 $input->SetGoods_tag("test"); // 订单优惠标记 $input->SetNotify_url("http://localhost/pay/callback.php"); // 通知地址 $input->SetTrade_type("JSAPI"); // 交易类型 $input->SetOpenid("用户的openid"); // 用户标识 // 生成签名 $order = WxPayApi::unifiedOrder($input); $jsApiParameters = $tools->GetJsApiParameters($order); ?>
(4) JSAPI 支払い
最後に、JSAPI を通じて WeChat 支払いページを呼び出して、WeChat 支払いタスクを実装できます。コードは次のとおりです。
<input type="button" value="微信支付" onclick="callpay()" /> <script type="text/javascript"> // JSAPI调起微信支付 function callpay() { WeixinJSBridge.invoke( 'getBrandWCPayRequest', <?php echo $jsApiParameters; ?>, function(res){ WeixinJSBridge.log(res.err_msg); if(res.err_msg == "get_brand_wcpay_request:ok" ){ alert('支付成功'); }else{ alert('支付失败:' + res.err_msg); } } ); } </script>
以上がPHP で WeChat 決済を開発するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。