1. อินเตอร์เฟสการชำระเงิน JS API (GetBrandWCPayRequest)
WeChat JS API สามารถใช้งานได้ในเบราว์เซอร์ WeChat ในตัวเท่านั้นและการโทรเบราว์เซอร์อื่น ๆ นั้นไม่ถูกต้อง WeChat จัดเตรียมอินเทอร์เฟซ GetBrandWCPayRequest สำหรับการโทรหน้าเว็บของผู้ค้า Front-End ก่อนโทร WeChat จะตรวจสอบสิทธิ์การชำระเงินของผู้ค้า หากผู้ค้ามีสิทธิ์เริ่มต้นการชำระเงินกระบวนการชำระเงินจะเริ่มขึ้น ที่นี่เราแนะนำกฎการโทรอินเตอร์เฟสก่อนการชำระเงินเป็นหลัก โปรดมีส่วนร่วมในกลไกการแจ้งเตือนข้อความการชำระเงินด้านล่าง อินเทอร์เฟซต้องมีการบันทึก: พารามิเตอร์ที่เข้ามาทั้งหมดเป็นประเภทสตริง!
พารามิเตอร์ getBrandWCPayRequest แสดงในรูปด้านล่าง
| พารามิเตอร์ | ชื่อ | ที่จำเป็น | รูปแบบ | อธิบาย |
|---|---|---|---|---|
| ทำให้ดีขึ้น | รหัสบัญชีอย่างเป็นทางการ | ใช่ | ประเภทสตริง | ผู้ค้าสามารถรับได้หลังจากลงทะเบียนบัญชีสาธารณะได้สำเร็จโดยได้รับอนุญาตการชำระเงิน |
| การประทับเวลา | การประทับเวลา | ใช่ | ประเภทสตริงน้อยกว่า 32 ไบต์ | การสร้างพ่อค้าตั้งแต่ 00:00:00 ถึงนำเสนอในวันที่ 1 มกราคม 1970 นั่นคือเวลาปัจจุบันและในที่สุดจะต้องถูกแปลงเป็นรูปแบบสตริง |
| ผู้ที่ไม่ได้ทำลาย | สตริงสุ่ม | ใช่ | ประเภทสตริงน้อยกว่า 32 ไบต์ | สตริงแบบสุ่มที่สร้างโดยพ่อค้า; |
| บรรจุุภัณฑ์ | สตริงส่วนขยายรายละเอียดการสั่งซื้อ | ใช่ | ประเภทสตริงด้านล่าง 4096 ไบต์ | พ่อค้าจะสร้างข้อมูลการสั่งซื้อลงในสตริงนี้ สำหรับแผนองค์ประกอบเฉพาะโปรดดูที่แพ็คเกจแพ็คเกจแพ็คเกจในคำแนะนำอินเตอร์เฟส ผู้ค้าจะประกบกันตามข้อกำหนดแล้วส่งผ่านเข้าไป |
| สัญญาณ | วิธีลายเซ็น | ใช่ | ประเภทสตริงค่าพารามิเตอร์ "sha1" | กรอกข้อมูลดังที่แสดงในเอกสารปัจจุบันรองรับ SHA1 เท่านั้น |
| จ่ายเงิน | เข้าสู่ระบบ | ใช่ | ประเภทสตริง | พ่อค้าลงนามพารามิเตอร์ในรายการอินเตอร์เฟสตามวิธีที่ระบุและใช้วิธีการลายเซ็นที่ทำเครื่องหมายไว้ใน SignType สำหรับแผนลายเซ็นเฉพาะโปรดดูที่ความช่วยเหลือลายเซ็นในคำแนะนำการใช้งานส่วนต่อประสาน สัญญาณของผู้ค้าตามข้อกำหนดแล้วผ่านเข้ามา; |
GetBrandWCPAYREQUEST ค่าคืนจะแสดงในตารางต่อไปนี้
| ค่าส่งคืน | อธิบาย |
| err_msg | get_brand_wcpay_request: ตกลงการชำระเงินสำเร็จ get_brand_wcpay_request: ยกเลิกการยกเลิกผู้ใช้ระหว่างกระบวนการชำระเงิน get_brand_wcpay_request: การชำระเงินล้มเหลวล้มเหลว |
ผลการส่งคืนของ JS API GET_BRAND_WCPAY_REQUEST: OK จะถูกส่งคืนเฉพาะเมื่อผู้ใช้สำเร็จการชำระเงินสำเร็จ เนื่องจากการโต้ตอบส่วนหน้าซับซ้อน get_brand_wcpay_request: ยกเลิกหรือ get_brand_wcpay_request: ล้มเหลวสามารถจัดการได้อย่างสม่ำเสมอเมื่อผู้ใช้พบข้อผิดพลาดหรือยอมแพ้อย่างแข็งขันโดยไม่ต้องปรับแต่งความแตกต่าง
2. การดำเนินการชำระเงิน JS API
รหัสต่อไปนี้คือการสาธิตการชำระเงิน JS API ที่จัดทำโดย WeChat
<? phpinclude_once ("wxpayhelper.php"); $ Commonutil = new Commonutil (); $ wxpayhelper = ใหม่ wxpayhelper (); $ wxpayhelper-> setparameter ("bank_type" "ทดสอบ"); $ wxpayhelper-> setparameter ("พันธมิตร", "1900000109"); $ wxpayhelper-> setParameter ("out_trade_no", $ Commonutil-> create_noncestrEn); $ wxpayhelper-> setParameter "1"); $ wxpayhelper-> setparameter ("fee_type", "1"); $ wxpayhelper-> setparameter ("notify_url", "http://www.baidu.com"); $ wxpayhelper-> setparameter ( "127.0.0.1"); $ wxpayhelper-> setParameter ("input_charset", "gbk");?> <html> <script language = "javascript"> function callpay () {weixinjsbridge.invoke ('getBrandwcpayrequest', <? php echo $ wxpayhelper-> create_biz_package ();?>, function (res) การแจ้งเตือน (res.err_code+res.err_desc+res.err_msg);});} </script> <body> <button type = "ปุ่ม" onclick = "callpay ()"> wx pay test </button> </body> </html>แก้ไขพารามิเตอร์การชำระเงิน WECHAT เป็นสิ่งที่คุณสมัครจากนั้นอัปโหลดหน้าเว็บไปยังไดเรกทอรีการชำระเงิน WECHAT และตอบกลับบัญชีทดสอบไปยังที่อยู่เว็บเพจ ผู้ใช้สามารถใช้การชำระเงิน JS API
3. การสาธิตผล
ด้านล่างเป็นรูปภาพหน้าของการสาธิตอย่างเป็นทางการที่เริ่มต้นการชำระเงินหลังจากแก้ไขแล้ว
ยืนยันการทำธุรกรรม:
ป้อนรหัสผ่านการชำระเงิน:
การทำธุรกรรมประสบความสำเร็จ:
ข้างต้นเป็นการรวบรวมข้อมูล WeChat Pay JS API ฉันหวังว่ามันจะช่วยทุกคน ขอบคุณสำหรับการสนับสนุน!