Maison  >  Article  >  Applet WeChat  >  Le développement du paiement WeChat est diffusé sur l'ensemble du réseau

Le développement du paiement WeChat est diffusé sur l'ensemble du réseau

高洛峰
高洛峰original
2017-02-28 09:53:541453parcourir

Dans ce didacticiel de développement de la plateforme publique WeChat, nous présenterons comment développer et mettre en œuvre la fonction de publication à l'échelle du réseau du paiement WeChat.

La libération à l'échelle du réseau fait référence à la détection et à la libération de la fonction de protection des droits, de l'interface d'alarme et de l'interface de livraison dans la dernière étape du backend de paiement WeChat.

Le développement du paiement WeChat est diffusé sur lensemble du réseau

Cet article est divisé en trois parties suivantes :

Paramètre de l'annuaire de paiement WeChat

Ajustement de l'interface d'expédition

Ajustement de l'interface de protection des droits et de l'interface d'alarme


1. Paramètre du répertoire de paiement WeChat

Le paramètre de l'URL de paiement WeChat est étroitement lié à l'ajustement du paiement WeChat. Les différents paramètres d'URL que nous utilisons ici sont les suivants :
URL de test de paiement : http://www.fangbei.org/wxpay/jsapi/index.php
URL de notification de transaction : http://www.fangbei. org /wxpay/notify/index.php
URL de notification des droits : http://www.fangbei.org/wxpay/rights/index.php
URL de notification d'alarme : http://www.fangbei.org/ wxpay /alarm/index.php

2. Ajustement de l'interface d'expédition

Avant d'ajuster l'interface d'expédition, l'utilisateur doit avoir une transaction avant l'envoi, donc d'abord Effectuez un paiement jsapi, le code est le suivant,

<?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>

Lorsque la transaction ci-dessus est terminée, l'URL sera rappelée à l'interface de notification de transaction avec les paramètres, comme suit

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

En même temps, le POST est envoyé. Les données XML suivantes

<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>

retirent le

transaction_id=1219951701201408083366666764
out_trade_no=5DlIL2s5DGR8147c

dans l'url et le

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

dans le XML et remplit les 3 valeurs de paramètres ci-dessus dans l'interface d'expédition, le code peut faire référence à la notification d'expédition de WeChat Pay Development

Exécutez-le une fois et l'interface de notification d'expédition sera ajustée.

3. Réglage de l'interface de protection des droits et de l'interface d'alarme

Le réglage de l'interface de protection des droits et de l'interface d'alarme est très simple, car le fonctionnaire n'en a besoin que pour recevoir une réponse. Par conséquent, le succès est renvoyé directement dans l'index.php correspondant. Le code est le suivant :

<?php
echo "success";
?>

4. Rendu

Une fois les trois interfaces ci-dessus ajustées, il peut être publié sur l'ensemble du réseau. L'effet est le suivant

Le développement du paiement WeChat est diffusé sur lensemble du réseau

Pour plus d'articles liés au développement des paiements WeChat publiés sur l'ensemble du réseau, veuillez faire attention au site Web PHP chinois !

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn