wechatpay-skills

Introduction: 微信支付 Skills
More: Author   ReportBugs   
Tags:

v1.3(2026-10-13)

  • 新增「编码接入」能力:可直接在用户工程中落地微信支付接入代码。写代码前先确认产品、商户角色、API 版本与验签方式,编码以官方文档为准,完成前强制自检;APIv3 接入会通过 echo 接口实测签名验签与加解密
  • 接入质量评估升级:新增流程规则与测试用例核查;结论改为「通过 / 存在问题 / 未验证 / 不适用」四档,不再按 🔴🟡🟠 分级

微信支付 Skills

微信支付为 AI Agent 提供了专业的技能包(Skills),将产品的业务知识、代码示例和接入规范以 Agent 可理解的方式组织,使 Agent 能够准确地协助开发者完成微信支付的接入工作。

wechatpay-payment-integration 是微信支付接入的统一入口 Skill,适用于所有微信支付境内产品的接入场景,提供以下五大能力:

  • 产品选型 — 根据用户业务场景匹配并推荐合适的微信支付产品,并说明选型理由
  • 示例代码 — 根据用户索要的接口和开发语言,给出官方示例代码和接口文档 URL,复制即可运行
  • 编码接入 — 直接在用户工程中落地微信支付接入代码,从接入要素确认、方案设计到编码、完成前自检全流程遵循官方规范
  • 接入质量评估 — 以金融支付专家视角审查用户接入代码,结合通用检查清单、产品开发指引与流程规则测试用例逐项取证,输出「通过 / 存在问题 / 未验证 / 不适用」结论及修复方向
  • 答疑与排障 — 解答接入中遇到的各类问题,根据错误码或问题现象定位原因,必要时经用户同意实时查单验证

所有接口、字段、错误码与代码示例均来自官方文档知识库,回答附带可溯源的官方文档链接;知识库未覆盖的问题会如实告知,不凭记忆编造。

下面具体说明每块能力。

1. 产品选型

能解决什么问题:当开发者不确定该用哪种微信支付产品,或想了解各产品的区别和适用场景时,根据具体业务场景匹配推荐产品并给出选型理由;确认产品后,进一步说明该产品的介绍和开发接入准备事项。

举个例子:

  • "我做的是公众号点餐,应该用 JSAPI 还是 H5 支付?"
  • "我们是 PC 端网站收银,该选 Native 还是 H5?"
  • "线下门店扫码付款,用付款码支付还是 Native 支付?"

2. 示例代码

能解决什么问题:当开发者需要某个接口的示例代码或接口文档时,直接给出官方示例代码(curl / Java / Go)和接口文档 URL,签名生成、证书加载、回调验签、敏感字段加解密都包含在内,参数使用真实字段名,复制即可运行。同一接口存在多套文档时(如普通商户 / 服务商),会先确认角色再返回对应版本。

如需其他语言,经用户同意后以官方 Java 示例为基准翻译生成参考实现,并明确标注「非官方维护」。

举个例子:

  • "给我一份 JSAPI 下单 + 前端调起 + 回调验签的完整代码(Java / Go 都行)"
  • "商品券创建批次 → 发券 → 核销 → 退券,串起来给一份示例"
  • "退款回调里的 req_info 怎么解密,给段代码"

3. 编码接入

能解决什么问题:当开发者希望 Agent 直接在工程里完成微信支付接入时,按官方要求推进编码:

  • 写代码前确认接入要素:产品、商户角色、API 版本、验签方式及改动范围,经开发者确认后再编码
  • 编码以官方文档为准:依据产品开发指引、API 列表及官方示例实现,不凭记忆编写
  • 完成前强制自检:按接入质量评估标准逐项核对;APIv3 接入还会通过 echo 接口实测签名验签与加解密
  • 安全边界:调用真实接口前先征得同意,不擅改业务代码,不留存密钥凭据

举个例子:

  • "帮我在这个 Spring Boot 项目里接入 JSAPI 支付"
  • "按开发指引把退款和退款回调补上"
  • "我们是服务商模式,帮我给子商户接入 Native 支付"

4. 接入质量评估

能解决什么问题:当开发者准备上线,担心代码里有隐患时,以金融支付系统技术专家视角(高可用、资金安全、零信任三条铁律)审查项目里的支付相关代码,默认不修改业务代码。

核查依据:

  • 通用检查清单:签名验签、密钥安全、金额精度、幂等、超时重试、主动查单等通用要求
  • 单业务注意事项:从所接产品的《开发指引》中提炼
  • 流程规则与测试用例:对照正确流程审查代码,配有测试用例的实际运行验证

怎么查:以不带先验的视角重新取证,按开发指引完整追一遍业务链路,并沿失败、取消、超时、重试分支逐一推演并发、中途失败、顺序颠倒、重复到达、外部异常等场景,不只看单个接口。

输出什么:每一项都给出明确结论,不按严重程度取舍:

结论 含义
通过 有代码或运行证据表明做到了
存在问题 有证据表明没做到,或做法与正确流程相反
未验证 没取得证据,无法判定
不适用 要检查的情况在本项目不存在,并写明理由

"通过"必须有代码或测试证据,没发现问题不等于通过;存在问题和未验证项都会给出 文件:行号 与修复方向。核查完成后可按需输出书面报告到项目的 wxpay-docs/代码质量检测报告.md。

举个例子:

  • "上线前帮我扫一下整个支付模块,看有没有隐患"
  • "我这段回调处理代码有没有问题?"
  • "检查下我的签名生成代码是不是规范"
  • "我接的 JSAPI 支付有没有漏掉必接接口?"

5. 答疑与排障

能解决什么问题:解答开发者在接入过程中遇到的各类问题——知识查询、流程说明、接口规则咨询、字段含义、错误码释义等;当开发者调用接口报错或行为异常时,根据提供的错误码、错误信息、请求/响应报文定位原因并给出解决方案。

需要确认某笔交易的实时状态时,经开发者同意后,可通过 wechatpay-dev-cli 在本地完成签名并调用 APIv3 查单接口,签名私钥不离开本地。

举个例子:

  • "支付回调如果一直返回失败,微信会重试几次?间隔多久?"
  • "微信支付平台证书和 API 证书有什么区别?"
  • "下单报 SIGN_ERROR,帮我看看是哪里签错了"
  • "用户说付款了但我没收到回调,帮我查一下这笔订单的状态"

交流与反馈

欢迎填写问卷,帮助我们持续改进:🔗 问卷链接

在使用过程中遇到问题、有改进建议,或者想和其他开发者交流接入经验,欢迎扫码加入 微信支付 Skills 交流群,与官方团队和社区开发者一起讨论:

wecom-temp-163912-2c4af5449820ab21d77a688cae86249f
Apps
About Me
GitHub: Trinea
Facebook: Dev Tools
AI Daily Digest