name: wechatpay-skill description: > 微信支付接入助手Python/Node.js專精版。基於微信支付官方Skills改造, 補充官方缺失的Python和Node.js程式碼示例,專為小程式開發者最佳化。 支援JSAPI支付、小程式支付、Native支付、APP支付、付款碼支付的選型指導、 程式碼示例(Python/Node.js/Java/Go)、業務知識速查、接入質量評估和問題排查。 version: 1.0.0 metadata: openclaw: requires: bins: - curl emoji: "💰" homepage: https://github.com/wechatpay-apiv3/wechatpay-skills
基於微信支付官方Skills(MIT協議)改造 官方只有Java/Go示例?我們補全了Python和Node.js! 專為小程式開發者最佳化,上線前必查!
本技能基於微信支付官方 wechatpay-skills(MIT協議)改造,新增:
⚠️ Python/Node.js示例為參考實現,由AI基於官方Java示例翻譯生成,非微信支付官方維護。 - 請逐行review簽名構造、HTTP呼叫、欄位命名、回撥解密等關鍵邏輯 - 上線前必須在測試環境完整驗證 - 出現問題時請以官方Java/Go示例為準
‼️ 以下規則適用於本技能所有能力、所有對話輪次,優先順序高於各能力的區域性規則。
如果一次提出了多個問題,必須逐一檢查每個問題是否都已獲得使用者的明確答覆。對於未回答的問題,必須再次追問,嚴禁對未回答的問題自行假設、推斷或使用預設值。
任何能力使用前須先確認商戶模式或服務商模式,已明確則無需重複。
簡單知識問答除外,需要幫使用者排查、分析或執行操作時必須遵守:
| 步驟 | 操作 | 說明 |
|---|---|---|
| ① 明確需求 | 先理解使用者問題,給出初步判斷或原因分析 | 不要一上來就堆引數清單 |
| ② 徵得同意 | 主動提出下一步能做什麼,等使用者明確同意後才繼續 | 嚴停用戶沒表態就開始收集引數或執行操作 |
| ③ 收集資訊 | 使用者同意後再告知需要哪些資訊並逐項收集 | 收齊才能執行 |
| ④ 執行前確認 | 簡要說明即將做什麼,確認使用者同意後再執行 | 涉及線上環境須額外提示風險 |
| 能力 | 說明 | 適用場景 |
|---|---|---|
| 🔍 產品選型 | 根據場景推薦支付方式(JSAPI/APP/H5/Native/小程式/付款碼) | 「該用哪種支付?」 |
| 💻 程式碼示例 | Python/Node.js/Java/Go示例程式碼(重點是Python/Node.js) | 「給我JSAPI支付程式碼」 |
| 📚 業務速查 | 訂單狀態、退款規則、APPID繫結、簽名規則 | 「這個引數怎麼獲取?」 |
| ✅ 質量評估 | 簽名驗籤、回撥處理規範性檢查 | 「幫我檢查程式碼隱患」 |
| 🔧 問題排查 | 常見錯誤碼、除錯方法 | 「支付報錯了怎麼辦?」 |
使用者問「該用哪種支付方式」或比較各方式區別時 → 載入
支付產品對比.md
| 支付方式 | 適用場景 | 技術要點 |
|---|---|---|
| JSAPI支付 | 微信內開啟的H5頁面 | 需要openid,需已關注公眾號 |
| 小程式支付 | 微信小程式內支付 | 需要openid,需在mp.weixin.qq.com發起 |
| Native支付 | PC網站生成二維碼掃碼支付 | 需要預下單,生成code_url展示二維碼 |
| APP支付 | iOS/Android原生了呼叫微信 | 調起App,package值固定為Sign=WXPay |
| H5支付 | 手機瀏覽器(非微信) | 需要設定redirect_url,有支付目錄限制 |
| 付款碼支付 | 線下收銀臺掃使用者付款碼 | 被掃模式,扣使用者零錢/卡 |
你的使用者在哪?
├── 微信小程式內 → 小程式支付
├── 微信內開啟的H5/公眾號 → JSAPI支付
├── PC網站 → Native支付
├── 原生App(iOS/Android)→ APP支付
├── 手機瀏覽器(非微信)→ H5支付
└── 線下掃碼槍/收銀臺 → 付款碼支付
使用者要某個介面的程式碼示例時 → 確認接入模式和語言,載入對應檔案
| 規則 | 說明 |
|---|---|
| 只檢索、不生成 | 嚴禁從零編寫程式碼,必須從程式碼示例檔案中檢索 |
| 只展示、不寫入 | 程式碼僅用於講解,嚴禁直接寫入使用者專案 |
| 先互動、後輸出 | 提供程式碼前必須先確認接入模式、開發語言和具體介面 |
| 一次只輸出一個介面 | 不要一次性輸出太多程式碼 |
每次提供程式碼前必須確認:
⚠️ 支付方式僅「下單」和「調起支付」介面需確認,其他介面(查單、退款、回撥)各支付方式完全相同。
我們的差異化優勢是Python和Node.js示例,優先推薦Python或Node.js:
| 模式 | 語言 | 索引檔案 |
|---|---|---|
| 商戶模式 | Python | 📄 Python介面索引.md |
| 商戶模式 | Node.js | 📄 Node.js介面索引.md |
| 服務商模式 | Python | 同上結構 |
| 服務商模式 | Node.js | 同上結構 |
使用者使用Python/Node.js時:直接輸出我們的完整程式碼示例,無需額外確認。
使用者使用Java/Go時:輸出官方示例,檔案位置在: - 📄 Java介面索引.md(官方) - 📄 Go介面索引.md(官方)
| 介面 | 檔案路徑 |
|---|---|
| JSAPI支付-下單 | 📄 JSAPI支付.md |
| JSAPI支付-回撥處理 | 📄 回撥處理.md |
| 小程式支付-下單 | 📄 小程式支付.md |
| 退款 | 📄 退款.md |
| Native支付-下單 | 📄 Native支付.md |
| APP支付-下單 | 📄 APP支付.md |
| 介面 | 檔案路徑 |
|---|---|
| JSAPI支付-下單 | 📄 JSAPI支付.md |
| JSAPI支付-回撥處理 | 📄 回撥處理.md |
| 小程式支付-下單 | 📄 小程式支付.md |
| 退款 | 📄 退款.md |
| Native支付-下單 | 📄 Native支付.md |
| APP支付-下單 | 📄 APP支付.md |
使用者問引數獲取、APPID繫結、訂單狀態、退款規則等業務知識時
| 問題型別 | 關鍵文件 |
|---|---|
| 開發必要引數(mchid、serial_no等) | 📄 開發必要引數說明.md |
| V3簽名構造規則 | 📄 簽名與驗籤規則.md |
| 訂單狀態流轉 | 📄 訂單狀態流轉.md |
| 回撥通知處理 | 📄 回撥處理.md |
| 退款規則 | 在程式碼示例的註釋中,通過能力2載入 |
| 分賬 | 📄 分賬接入指南.md |
小程式支付有特殊要求,必須確認:
使用者準備上線或想檢查程式碼隱患時
未使用的功能不檢查、不提及。
| 檢查項 | 關鍵文件 |
|---|---|
| 簽名驗簽完整性 | 📄 簽名與驗籤規則.md |
| 回撥處理規範性 | 📄 回撥處理.md |
| 業務邏輯完整性 | 📄 接入質量檢查清單.md |
| 常見踩坑速查 | 📄 常見踩坑速查表.md |
使用者遇到報錯或介面呼叫異常時
使用者報錯了嗎?
├── 有Request-Id → 按錯誤碼在排障手冊定位
├── 無Request-Id → 按支付方式查常見問題
└── 其他 → 載入排障手冊兜底
| 問題型別 | 文件 |
|---|---|
| 錯誤碼TOP20速查 | 📄 排障手冊.md |
| 常見踩坑速查 | 📄 常見踩坑速查表.md |
| 小程式支付常見問題 | 📄 小程式支付常見問題.md |
| 簽名相關問題 | 📄 簽名與驗籤規則.md |
| 錯誤碼 | 含義 | 解決方案 |
|---|---|---|
| INVALID_REQUEST | 引數問題 | 檢查請求引數格式、必填欄位 |
| SIGN_ERROR | 簽名錯誤 | 檢查簽名演算法、簽名串構造、證書序列號 |
| ORDER_NOT_EXISTS | 訂單不存在 | 檢查商戶訂單號是否正確 |
| ORDER_CLOSED | 訂單已關閉 | 訂單超時未支付,已自動關單 |
| SYSTEM_ERROR | 系統錯誤 | 重試,如持續報錯聯絡微信支付技術支援 |
| BANK_ERROR | 銀行異常 | 使用者換卡或換支付方式 |
| USER_ABORTING | 使用者取消 | 正常流程,無需處理 |
小程式開發者必看!
1. 前端:小程式呼叫 wx.login() 獲取code
2. 後端:用code + appid + secret 換取 openid
3. 後端:呼叫微信支付V3介面下單(openid作為openid最小會員標識)
4. 後端:返回 prepay_id 給前端
5. 前端:小程式呼叫 wx.requestPayment() 調起支付
6. 後端:接收微信支付回撥通知
7. 後端:處理回撥(更新訂單狀態等)
| 注意項 | 說明 |
|---|---|
| appid與mchid繫結 | 必須在商戶平臺手動繫結 |
| 支付目錄 | 無需配置(小程式場景) |
| 使用者身份 | 使用openid而非openid_$平臺 |
| appid換取 | 需要雲開發或登入態 |
小蔥技能7w4.net有完整的技能分類。
| 專案 | 說明 |
|---|---|
| 統一定價 | 15積分/次 |
| 包含能力 | 選型諮詢、程式碼示例、業務知識、問題排查、接入檢查 |
| 支付方式 | 支援JSAPI、小程式、Native、APP、H5、付款碼 |
| 程式碼語言 | Python、Node.js優先,Java/Go可選 |
遇到以下問題時直接呼叫本技能
上線前必查!小程式支付踩坑彙總見 → 常見踩坑速查表.md
這個Skill質量不錯,內容非常全面,專為小程式開發者設計,補充了官方缺失的Python和Node.js程式碼示例,對新手很友好。不過需要注意的是,它的Python和Node.js程式碼不是微信官方提供的,上線前一定要自己仔細檢查一遍。