新闻详情

新闻详情

首页 / 资讯中心 / 详情

在 Medusa 中接入支付宝、微信:移动端支付从 0 到上线的完整路径

发布时间:2026/9/1 11:34:22来源:尧图网络
在 Medusa 中接入支付宝、微信:移动端支付从 0 到上线的完整路径
在 Medusa 中接入支付宝、微信移动端支付从 0 到上线的完整路径【免费下载链接】medusaThe worlds most flexible commerce platform for agents and developers项目地址: https://gitcode.com/GitHub_Trending/me/medusa想给 Medusa 开源电商接上支付宝、微信这类移动端支付这篇文章按一次真实集成的顺序讲Medusa 的支付模块怎么分层、照 Stripe 的现成骨架改出支付宝 Provider 只需两步、微信和支付宝在签名与回调上的实际差异、沙箱里如何跑通一笔订单最后是上线前该逐项打勾的清单。 支付模块分层payment 管账本providers 管渠道Medusa 把支付拆成两层理解这一点后面就顺了。一层是支付模块packages/modules/payment/它是账本负责支付会话一次向渠道发起的收款过程、支付记录、捕获和退款这些实体以及它们的数据库模型和服务逻辑。它不关心你收的是卡还是扫码只关心这笔钱的状态是什么。另一层是提供商目录packages/modules/providers/里面每个子包是一个具体渠道的实现比如 Stripe 参考实现在 packages/modules/providers/payment-stripe/。Provider 只负责跟渠道的 API 打交道创建收款单、验签回调、发起退款。两层之间靠注册机制接起来。payment 模块启动时有一个 Provider 加载器源码在 payment 模块的src/loaders/providers.ts它做两件事把你配置里的 Provider 类实例化后挂进依赖容器再把它写进数据库并标记为启用——所以新 Provider 一注册后台管理界面里就会自动出现不需要写任何管理端代码。 照着 Stripe 改出支付宝 Provider复用骨架 注册 2 步2.1 复用 Stripe 的骨架打开 Stripe 的实现你会发现结构很干净core/stripe-base.ts是一个抽象基类把initiatePayment、getPaymentStatus、refundPayment、validateWebhook这些接口方法都实现了具体 Provider 类比如services/stripe-provider.ts只有十几行主要是声明自己的标识符。做支付宝就照这个模式复制新建payment-alipay目录建一个alipay-base.ts基类继承框架的AbstractPaymentProvider把 Stripe 基类里的方法名一一对应替换initiatePayment里调支付宝的创建收款接口沙箱期可以先返回测试用的支付 URLvalidateWebhook里换成支付宝的 RSA 验签refundPayment里调退款接口金额注意按最小货币单位换算——支付宝接口用的是分的概念Stripe 基类里专门有个get-smallest-unit工具函数干这个事可以借鉴它的思路。2.2 注册 2 步配置文件 后台启用代码放好后接入只做两步。第一步在项目配置文件里声明 Provider// medusa-config.jspayment 模块配置节选 modules: [ { key: payment, resolve: medusajs/payment, options: { providers: [ { resolve: ./src/providers/payment-alipay, id: alipay }, ], }, }, ]第二步重启服务后到后台 Settings 里把 Alipay 这个 Provider 启用。加载器会自动完成数据库登记订单里就能选它了。注意一个细节id字段用来区分同一渠道的多个实例比如支付宝个人版和企业版可以注册成alipay和alipay_biz两个实例互不干扰。⚖️ 微信支付 vs 支付宝回调、签名、退款差在哪两个渠道接入骨架相同差别在四个地方对照着做即可维度支付宝微信支付签名体系RSA2 非对称配置 AppID 应用私钥 支付宝公钥APIv3 用平台证书 API 密钥证书需要定期轮换回调验签拿响应里的sign字段用支付宝公钥验要用Wechatpay-Signature等请求头现场计算验签且回调报文是 AES 加密的要先解密再读退款调退款接口按原交易号退支持部分退款退款走独立接口且异步提交后还要等微信的退款结果通知才算完成多端场景一套接口 场景参数区分App / H5 / 小程序JSAPI、小程序、App、H5 是四个独立接口openid这类前置参数各自不同其中微信回调先验签、再解密、后读内容这三步最容易踩坑Stripe 基类里validateWebhook是单个方法你可以把三步都放进去但要保证验签失败时直接丢弃、不返回成功否则会被恶意重放。 沙箱下单到对账把一笔支付真正跑通跑通的三个环节① 沙箱下单。支付宝和微信都提供沙箱支付宝给测试买家账号和测试 AppID微信给沙箱商户号。先在 Medusa 里下一单确认选中的支付方式是alipay下单接口能返回 Provider 给的支付数据一个跳转 URL 或拉起参数就算通了第一步。② 异步回调。用户在沙箱里付完渠道服务器会 POST 到你的 webhook 地址。建议本地先用 ngrok 之类的内网穿透把回调指到开发机验证三件事validateWebhook验签通过、支付会话状态从 pending 变成 succeeded、订单状态跟着变成 paid。回调查不到时优先看 Provider 日志里的验签结果而不是怀疑网络。③ 主动对账。回调可能迟到或丢失所以上线前要让定时查渠道侧交易状态这条兜底路径也工作——对应 Provider 的getPaymentStatus方法。跑一批沙箱订单故意漏掉其中一笔的回调确认主动查询能把状态补齐这笔支付才算真正跑通。✅ 上线前的安全与体验清单webhook 验签开启且失败时返回非 2xx杜绝伪造回调回调处理做幂等同一笔支付重复通知时直接返回成功不重复落状态私钥、APIv3 密钥只放环境变量或密钥管理不进代码仓库微信 API 平台证书轮换流程已演练建议每 30 天内检查到期时间主动查询兜底任务已部署覆盖回调丢失场景支付失败时前端有明确的错误提示文案而不是裸的报错码退款走原渠道原交易号退款结果同样依赖异步通知时已处理上线后首周盯住两件事支付成功率、回调到达延迟建议先在沙箱把上面的清单全部打勾再切一个低客单价的真实商品做一笔小金额生产验证最后全量放开。移动端支付的核心不在接上而在回调链路每一环都可验证——把这条链路在沙箱里跑透生产环境要担心的就只剩下渠道侧的稳定性了。【免费下载链接】medusaThe worlds most flexible commerce platform for agents and developers项目地址: https://gitcode.com/GitHub_Trending/me/medusa创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

Excel VBA正则表达式批量拆分地址到省市街道电话邮编 2026/9/1 19:07:27

Excel VBA正则表达式批量拆分地址到省市街道电话邮编

一张几千行的地址清单,从系统导出、手工录入、甚至从聊天记录里复制出来,格式大概是这样:“广东省深圳市南山区科技园路112号 电话13800138000 邮编518000”“张三 北京市海淀区中关村大街1号院 010-12345678”。现在要求把它们按省、市、区县…

阅读更多 →
实测7款平价智能配音,不到200块年卡就能搞定全创作场景需求 2026/9/1 19:07:27

实测7款平价智能配音,不到200块年卡就能搞定全创作场景需求

做视频这几年,配音这件事几乎成了每个创作者绕不开的坎。自己录吧,声音干巴巴没有感染力;花钱请人吧,一条几分钟的旁白动辄几百块;充个会员吧,发现好听的音色还要单独买,免费导出的音频每隔十秒…

阅读更多 →
电机控制秋招技能图谱:从STM32基础到FOC实战 2026/9/1 19:07:27

电机控制秋招技能图谱:从STM32基础到FOC实战

又到一年秋招季,后台收到不少准备投电机控制、嵌入式方向的同学留言,问得最多的一个问题就是:电机控制秋招到底哪些才是重点技能?网上资料很杂,今天学一点 STM32,明天看一点 Simulink,后天又去刷…

阅读更多 →
MMD模型导入Unity全流程:材质、动画、VR打包与性能优化实战 2026/9/1 19:07:27

MMD模型导入Unity全流程:材质、动画、VR打包与性能优化实战

很多做 MMD 的伙伴第一次把角色模型放进 Unity 时,都会遇到类似的困惑:照着教程一步步操作,模型却发红发紫,动画要么滑步要么穿模,表情怎么调都出不来。更别提后面打包 Android、接 Pico 4 这类 VR 设备时,…

阅读更多 →
上手 OpenClaw,Windows 与 macOS 双平台安装实操分享 2026/9/1 19:07:27

上手 OpenClaw,Windows 与 macOS 双平台安装实操分享

OpenClaw 一键安装包|快速搭建本地 AI 自动化工具📦 适配系统:Windows10/11 64 位、macOS 12 及以上 当前版本:Windows v3.1.0、macOS v2.7.9 安装包大小:约 45.8MB 下载地址 Windows3.1.0 版本:https:/…

阅读更多 →
MTK芯片手机维修实战:DT Pro Tool修复IMEI与解除账户锁全流程 2026/9/1 19:04:27

MTK芯片手机维修实战:DT Pro Tool修复IMEI与解除账户锁全流程

简介:本资源是专为手机维修工程师与MTK平台固件开发者设计的专业级工具包,聚焦IMEI修复与网络解锁两大核心场景,适用于因软件异常、刷机失误或硬件维修导致的IMEI丢失、串码错误及运营商锁机问题。压缩包共272个文件,含55个img&am…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞