首頁  >  文章  >  微信小程式  >  微信支付開發全網發布

微信支付開發全網發布

高洛峰
高洛峰原創
2017-02-28 09:53:541396瀏覽

在這篇微信公眾平台開發教學中,我們將介紹如何開發實現微信支付的全網發布功能。

全網發布是指微信支付後台最後一步中的維權功能、警告介面、出貨介面的偵測發布。

微信支付開發全網發布

本文分為以下三個部分:

微信支付目錄設定

出貨介面的調通

#維權介面與警報介面的調通


一、微信支付目錄設定

微信支付URL的設定與調通微信支付休戚相關。這裡我們使用的幾個URL設定如下:
付款測試URL:http://www.fangbei.org/wxpay/jsapi/index.php
交易通知URL:http://www.fangbei.org /wxpay/notify/index.php
維權通知網址:http://www.fangbei.org/wxpay/rights/index.php
警告通知網址:http://www.fangbei.org/wxpay /alarm/index.php

 

二、出貨介面的調通

調通出貨介面之前,需要使用者已經有一次交易才能寄,所以先完成一次jsapi支付,其程式碼如下,

<?php
include_once("WxPayHelper.php");
$commonUtil = new CommonUtil();
$wxPayHelper = new WxPayHelper();
$wxPayHelper->setParameter("bank_type", "WX");
$wxPayHelper->setParameter("body", "方倍微信支付测试");
$wxPayHelper->setParameter("partner", PARTNERID);
$wxPayHelper->setParameter("out_trade_no", $commonUtil->create_noncestr());
$wxPayHelper->setParameter("total_fee", "1");
$wxPayHelper->setParameter("fee_type", "1");
$wxPayHelper->setParameter("notify_url", "http://www.fangbei.org/wxpay/notify/index.php");
$wxPayHelper->setParameter("spbill_create_ip", $_SERVER[&#39;REMOTE_ADDR&#39;]);
$wxPayHelper->setParameter("input_charset", "GBK");
$biz_package=$wxPayHelper->create_biz_package();
?>
<html>
<meta name="viewport" content="width=device-width,height=device-height,inital-scale=1.0,maximum-scale=1.0,user-scalable=no;">
<script language="javascript">
    function callpay()
    {
        WeixinJSBridge.invoke(&#39;getBrandWCPayRequest&#39;,<?php echo $biz_package;?>,function(res){
        WeixinJSBridge.log(res.err_msg);
        alert(res.err_code+res.err_desc+res.err_msg);
        });
    }
</script>
<body>
    <button type="button" onclick="callpay()">方倍微信支付测试</button>
</body>
</html>

當上述交易完成之後,會向交易通知介面回呼URL並帶上參數,如下

http://www.fangbei.org/wxpay/notify/index.php?discount=0&fee_type=1&input_charset=GBK&notify_id=aCi-cg4m1nr2bbg-De-MK6hQum8XVsw4mYfYnD5umAiEm_J6P_MalPvOisl2NJdurzTW-TJ9IPcnKmZm5TpKjrc8bXT6PEe0&out_trade_no=5DlIL2s5DGR8147c&partner=1219951701&product_fee=1&sign=A7AEF7AE3B70C54C3C0FF642DD2E2004&sign_type=MD5&time_end=20140808185647&total_fee=1&trade_mode=1&trade_state=0&transaction_id=1219951701201408083366666764&transport_fee=0

同時POST發送了以下XML資料

<xml>
<OpenId><![CDATA[ocIywt7h42MwHxXx23sJdBpBV7Q8]]></OpenId>
<AppId><![CDATA[wxa8826d0c0c0b6d6a]]></AppId>
<IsSubscribe>1</IsSubscribe>
<TimeStamp>1407495408</TimeStamp>
<NonceStr><![CDATA[D6iywdqlcdUj8nDQ]]></NonceStr>
<AppSignature><![CDATA[a99a3cb4f5377dc30cca3f7b362412d7e468e0f4]]></AppSignature>
<SignMethod><![CDATA[sha1]]></SignMethod>
</xml>

取出url中的

transaction_id=1219951701201408083366666764
out_trade_no=5DlIL2s5DGR8147c

及xml中的

<OpenId><![CDATA[ocIywt7h42MwHxXx23sJdBpBV7Q8]]></OpenId>

將上述3樣參數值填入出貨介面中,程式碼可參考 微信支付開發出貨通知

運行一次,就調通了出貨通知介面。

 

三、維權介面與警告介面的調通

維權介面與警告介面的調通非常簡單,因為官方只需要接收到有回應。所以都直接在對應的index.php中回傳success,程式碼如下:

<?php
echo "success";
?>

四、效果圖

上述3個介面調通以後,就可以全網發布了。效果如下

微信支付開發全網發布

更多微信支付開發全網發布相關文章請關注PHP中文網!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn