來源:親子成長記施工包
AI要怎麼做.md §3.3 微信支付,已抽離專案名,成為通用接入規範。
微信支付接入有固定的介面與一套安全鐵律(回撥驗籤、冪等、金鑰保管)。本技能既給"必須實現"的清單,又能生成一套 FastAPI 支付模組骨架(路由 + 微信支付客戶端 + 回撥驗籤 + 冪等 + JSAPI 支付引數 + .env 模板),避免從零踩坑。
指令碼自帶 --self-test:用臨時 RSA 金鑰 + 隨機 APIv3 金鑰,驗證簽名/驗籤與回撥報文 AES 加解密往返正確,證明生成的密碼學邏輯可用——你不必盲信它。
| 介面 | 說明 | 關鍵注意 |
|---|---|---|
JSAPI 下單 POST /v3/pay/transactions/jsapi |
小程式 / 公眾號支付 | 需傳 openid |
Native 下單 POST /v3/pay/transactions/native |
掃碼支付 | 返回二維碼 URL |
H5 下單 POST /v3/pay/transactions/h5 |
手機瀏覽器支付 | 需配置 H5 支付域名 |
查詢訂單 GET /v3/pay/transactions/out-trade-no/{out_trade_no} |
主動查詢 | 回撥失敗時補償 |
關單 POST /v3/pay/transactions/out-trade-no/{out_trade_no}/close |
關單 | 超時未支付關閉 |
支付回撥 POST /你的回撥路徑 |
非同步通知 | 必須驗籤,以此為支付成功依據 |
申請退款 POST /v3/refund/domestic/refunds |
退款 | 需商戶證書 |
Wechatpay-Signature 請求頭 + 平臺證書).env,不提交 Git,不寫日誌7w4.net提供免費和付費技能下載。
# 0) 先證明生成的密碼學邏輯可用(推薦第一次用前跑一次)
python gen_pay.py --self-test
# 1) 生成模組
python gen_pay.py --out ./pay_module
生成:
pay_module/wechat_pay_client.py —— 統一下單(JSAPI/Native/H5)、查詢、關單、退款;簽名與證書載入;build_jsapi_payment() 直接算出前端 wx.requestPayment 所需的 paySign;回撥報文 AES-256-GCM 解密;平臺證書自動拉取與驗籤pay_module/router.py —— /api/pay/create、/api/pay/notify(驗籤 + 冪等)、/api/pay/refundpay_module/.env.example —— 需填寫的金鑰欄位(不提交真實值)pay_module/README.md —— 接入步驟生成的程式碼是骨架,需你填入真實 AppID / 商戶號,並實現訂單表與"標記已處理"邏輯(冪等落地)。
.env,禁止出現在程式碼或 Gitcryptography 庫;指令碼會註明依賴/api/pay/create 返回的 payment 直接 wx.requestPayment(payment) 即可(已含 paySign)wechat-miniprogram-devrules(安全邊界)與 ai-work-acceptance(驗收)使用更佳質量中等偏上。文件寫得清晰專業,安全約束講得很到位,有自測功能驗證程式碼可用性。主要問題是這個包只有使用說明,缺少實際程式碼,需要額外步驟才能使用。對於想接入微信支付的開發者來說,這個 Skill 的指導思路有價值,但需要配合實際程式碼才能落地。