1、該ID未完成微信認(rèn)證,請(qǐng)確認(rèn)后再試 完成appid的認(rèn)證,微信服務(wù)號(hào)為企業(yè)認(rèn)證,開放平臺(tái)為開發(fā)者認(rèn)證。2、你輸" />

国产成人精品无码青草_亚洲国产美女精品久久久久∴_欧美人与鲁交大毛片免费_国产果冻豆传媒麻婆精东

15158846557 在線咨詢 在線咨詢
15158846557 在線咨詢
所在位置: 首頁 > 營(yíng)銷資訊 > 網(wǎng)站運(yùn)營(yíng) > 微信PC網(wǎng)站支付采坑記-微信Native支付申請(qǐng)接入

微信PC網(wǎng)站支付采坑記-微信Native支付申請(qǐng)接入

時(shí)間:2023-05-22 01:24:02 | 來源:網(wǎng)站運(yùn)營(yíng)

時(shí)間:2023-05-22 01:24:02 來源:網(wǎng)站運(yùn)營(yíng)

微信PC網(wǎng)站支付采坑記-微信Native支付申請(qǐng)接入:

常見錯(cuò)誤 強(qiáng)烈建議閱讀完再搞避免踩坑多花冤枉錢



1、該ID未完成微信認(rèn)證,請(qǐng)確認(rèn)后再試 完成appid的認(rèn)證,微信服務(wù)號(hào)為企業(yè)認(rèn)證,開放平臺(tái)為開發(fā)者認(rèn)證。2、你輸入的APPID認(rèn)證主體名稱與實(shí)際認(rèn)證主體不一致,請(qǐng)檢查修改后重試
檢查開放平臺(tái)或者公眾平臺(tái)認(rèn)證主體和商戶號(hào)主體是否一致。3、不支持關(guān)聯(lián)該類型的appID 微信Native支付(PC網(wǎng)站)不能用開放平臺(tái)的appid. 微信Native支付的appid 必須為 微信服務(wù)號(hào) 即認(rèn)證主體為企業(yè)的公眾號(hào)。 微信Native支付的appid 必須為微信服務(wù)號(hào) 即認(rèn)證主體為企業(yè)的公眾號(hào)。 微信Native支付的appid 必須為微信服務(wù)號(hào)即認(rèn)證主體為企業(yè)的公眾號(hào)。4、修改支付時(shí)提示的收款方名稱 收款方名稱要修改商戶號(hào)里面的商戶簡(jiǎn)稱



微信Native支付申請(qǐng)流程



1、 申請(qǐng)微信商戶號(hào)2、 申請(qǐng)微信企業(yè)服務(wù)號(hào)并且認(rèn)證,拿到appid3、 將服務(wù)號(hào)的appid與商戶號(hào)綁定4、申請(qǐng)證書key之類的



微信Native支付接入



java開發(fā) 推薦使用IJPay
1、引入ijpay的庫



<dependency> <groupId>com.github.javen205</groupId> <artifactId>IJPay-WxPay</artifactId> <version>2.7.3</version></dependency>

2、創(chuàng)建請(qǐng)求需要的參數(shù)類。配置信息在application中



public class WxPayConfig { /** * 設(shè)置微信公眾號(hào)或者小程序等的appid. */ @Value("${wx.pay.appId}") private String appId; /** * 微信支付商戶號(hào). */ @Value("${wx.pay.mchId}") private String mchId; /** * 微信支付商戶密鑰. */ @Value("${wx.pay.mchKey}") private String mchKey; /** * 異步回調(diào)地址 */ @Value("${wx.pay.notifyUrl}") private String notifyUrl;}

3、配置信息application.properties



wxpay.appId=申請(qǐng)的服務(wù)號(hào)的appidwxpay.appSecret=申請(qǐng)的服務(wù)號(hào)的appSecretwxpay.mchId=申請(qǐng)的商戶號(hào)wxpay.partnerKey=商戶號(hào)的partnerKeywxpay.certPath=商戶號(hào)p12證書wxpay.domain=掃碼支付完成的異步校驗(yàn)通知url

4、統(tǒng)一下單



Map<String, String> params = UnifiedOrderModel .builder() .appid(wxPayConfig.appId) .mch_id(wxPayConfig.mchId) .nonce_str(WxPayKit.generateStr()) .body("趙湯圓支付") .attach("趙湯圓支付踩坑") .out_trade_no(createOrderRequestDto.getId()) .total_fee(total_fee) .spbill_create_ip(ip) .notify_url(wxPayConfig.domain) .trade_type(TradeType.NATIVE.getTradeType()) .build() .createSign(wxPayConfig.partnerKey, SignType.HMACSHA256); String xmlResult = WxPayApi.pushOrder(false, params); Map<String, String> result = WxPayKit.xmlToMap(xmlResult); String returnCode = result.get("return_code"); String returnMsg = result.get("return_msg"); System.out.println(returnMsg); if (!WxPayKit.codeIsOk(returnCode)) { // 異常狀態(tài)判斷 替換成你自己的 throw new ServiceException(ErrorTypeEnum.RECHARGE_ERROR); } String resultCode = result.get("result_code"); if (!WxPayKit.codeIsOk(resultCode)) { // 異常狀態(tài)判斷 替換成你自己的 throw new ServiceException(ErrorTypeEnum.RECHARGE_ERROR); } //生成預(yù)付訂單success String qrCodeUrl = result.get("code_url"); try { // 生成下單的二維碼,返回給客戶端顯示 ByteArrayOutputStream out = new ByteArrayOutputStream(); QrCodeKit.encodeOutPutSteam(out, qrCodeUrl, BarcodeFormat.QR_CODE, 3, ErrorCorrectionLevel.H, "png", 200, 200); BASE64Encoder encoder = new BASE64Encoder(); imgBase64Str = encoder.encode(out.toByteArray()); } catch (IOException e) { e.printStackTrace(); } return imgBase64Str; ``` 5、異步通知 ```java String xmlMsg = HttpKit.readData(request); logger.info("支付通知=" + xmlMsg); Map<String, String> params = WxPayKit.xmlToMap(xmlMsg); String returnCode = params.get("return_code"); // 注意重復(fù)通知的情況,同一訂單號(hào)可能收到多次通知,請(qǐng)注意一定先判斷訂單狀態(tài) // 注意此處簽名方式需與統(tǒng)一下單的簽名類型一致 if (WxPayKit.verifyNotify(params, wxPayConfig.partnerKey, SignType.HMACSHA256)) { if (WxPayKit.codeIsOk(returnCode)) { // 更新訂單信息 // 發(fā)送通知等 String out_trade_no = params.get("out_trade_no"); String total_fee = params.get("total_fee"); Map<String, String> xml = new HashMap<String, String>(2); xml.put("return_code", "SUCCESS"); xml.put("return_msg", "OK"); return WxPayKit.toXml(xml); } }

本文由博客群發(fā)一文多發(fā)等運(yùn)營(yíng)工具平臺(tái) OpenWrite 發(fā)布

關(guān)鍵詞:支付,申請(qǐng)

74
73
25
news

版權(quán)所有? 億企邦 1997-2025 保留一切法律許可權(quán)利。

為了最佳展示效果,本站不支持IE9及以下版本的瀏覽器,建議您使用谷歌Chrome瀏覽器。 點(diǎn)擊下載Chrome瀏覽器
關(guān)閉