Maison  >  Article  >  Java  >  Paiement par applet WeChat Java

Paiement par applet WeChat Java

PHPz
PHPzavant
2024-03-19 15:28:201209parcourir

Paiement par applet WeChat Java

Éditeur php Banana vous présente le tutoriel de développement Java du mini programme de paiement WeChat. WeChat Mini Program Payment est un sous-service de WeChat Pay, qui peut implémenter des fonctions de paiement dans les mini-programmes et offrir aux utilisateurs une expérience d'achat pratique. Ce didacticiel vous apprendra comment utiliser le langage Java pour développer le mini-programme de paiement WeChat, y compris des étapes telles que l'accès à l'interface de paiement WeChat, la génération d'ordres de paiement anticipé et le traitement des résultats de paiement. En étudiant ce didacticiel, vous pourrez facilement implémenter la fonction de paiement du mini-programme WeChat, ajoutant ainsi plus de praticité et de commodité à votre mini-programme.

Implémentation Java de paiement du programme WeChat Mini

Le

WeChatmini programmepayment fournit un mécanisme de paiement pratique, permettant aux développeursd'intégrer facilement des fonctions de paiement dans leurs miniprogrammes. Voici les étapes pour mettre en œuvre le paiement du mini-programme WeChat en utilisant le langage Java :

1. Préparation de l'environnement

  • Enregistrez l'applet WeChat et obtenez AppID et AppSecret
  • Présentation du SDK de paiement du programme WeChat Mini
  • Configurer les informations du commerçant de paiement WeChat

2. Génération de commandes

La génération de commandes est la première étape du processus de paiement du mini programme WeChat. Vous devez lancer une demande de commande unifiée auprès de WeChat Pay pour générer une commande de prépaiement. Le code Java est le suivant :

// 统一下单
UnifiedOrder unifiedOrder = new UnifiedOrder();
unifiedOrder.setAppId(appId);
unifiedOrder.setMchId(mchId);
unifiedOrder.setNonceStr(nonceStr);
unifiedOrder.setBody(body);
unifiedOrder.setOutTradeNo(outTradeNo);
unifiedOrder.setTotalFee(totalFee);
unifiedOrder.setSpbillCreateIp(spbillCreateIp);
unifiedOrder.setNotifyUrl(notifyUrl);
unifiedOrder.setTradeType(tradeType);

String response = UnifiedOrder.requestUnifiedorder(unifiedOrder);

Dans le code ci-dessus, la signification de chaque paramètre est la suivante :

  • appId : Mini-programme AppID
  • mchId : numéro de commerçant
  • nonceStr : Chaîne aléatoire
  • corps : description du produit
  • outTradeNo : numéro de commande du commerçant
  • totalFee : montant de la commande, l'unité est en centimes
  • spbillCreateIp : L'adresse IP qui a initié la demande de paiement
  • notifyUrl : URL de rappel du résultat du paiement
  • tradeType : type de paiement, tel que jsapi

3. Signature WeChat

Après avoir généré une commande avec prépaiement, les données de la commande doivent être signées pour garantir la sécurité des données. Le code Java est le suivant :

// 微信签名
SortedMap<String, String> signMap = new TreeMap<>();
signMap.put("appId", appId);
signMap.put("nonceStr", nonceStr);
signMap.put("package", "prepay_id=" + prepayId);
signMap.put("signType", signType);
signMap.put("timeStamp", timeStamp);

String sign = Sign.createSign(signMap, partnerKey);

Dans le code ci-dessus, la signification de chaque paramètre est la suivante :

  • prepayId : ID de commande de prépaiement
  • partnerKey : clé du commerçant

4. Paiement

Envoyez les données signées au mini programme front-end, et le front-end finalise le paiement en appelant l'interface de paiement WeChat. Le code Java est le suivant :

// 返回支付信息给小程序
Map<String, Object> info = new HashMap<>();
info.put("appId", appId);
info.put("nonceStr", nonceStr);
info.put("package", "prepay_id=" + prepayId);
info.put("signType", signType);
info.put("timeStamp", timeStamp);
info.put("paySign", sign);

return info;

5. Rappel de paiement

Une fois le paiement effectué par l'utilisateur, WeChat Pay lancera une requête POST vers l'URL de rappel. Les développeurs doivent vérifier la légitimité de la demande et mettre à jour le statut de la commande.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer