Skip to content

支付参数 ​

扩展包

本页功能由商业扩展包提供(服务端 COMMERCE_PACK_ENABLED,管理端 VITE_COMMERCE_ENABLED)。关闭或删除该包后,本页菜单与接口一并消失。开关说明见 扩展包开关与裁剪。

用户端展示付款入口之后,能不能真正收款,取决于这里的渠道参数。微信、支付宝、易支付、PayPal 和 Stripe 的商户信息都在本页填写。

后台入口 ​

  • 菜单路径:支付财务 → 支付参数
  • 后台地址:/payment/channel

配置方式 ​

页面按渠道分为多个标签:微信官方支付、支付宝官方支付、易支付、PayPal 官方、Stripe 官方。

字段采用自动保存:输入框失焦或下拉选择变更后会保存。看到“保存成功”提示,表示该字段已写入系统配置。

自动生成的回调地址 ​

系统会根据 基础信息 中的网站地址自动生成支付通知、返回、成功、取消和 Webhook 地址。一般不需要在这里手动填写回调 URL。

配置支付前,请先确认:

  • 网站地址使用正式域名,例如 https://agent.example.com
  • 域名可以被公网访问
  • HTTPS 证书有效
  • 反向代理已正确转发 /api 请求

微信官方支付 ​

微信官方支付适合已经具备微信支付商户资质的运营场景。当前系统会根据访问环境选择支付方式:微信内打开时使用 JSAPI 支付,普通浏览器或 PC 场景使用 Native 扫码支付。

微信字段总览 ​

新版微信支付商户后台里,证书和公钥入口可能按“解密回调”“API 证书”“微信支付公钥”等分组展示。后台不需要你手动填写回调地址,但需要准确填写商户号、AppId、APIv3 密钥、商户 API 私钥,以及当前验签模式对应的平台证书或微信支付公钥。

后台配置项用途从哪里找填写说明
商户号标识收款商户,创建微信支付订单时使用微信支付商户平台 → 账户中心 → 商户信息填写商户号数字,不是登录账号、主体名称或服务商号
AppId标识公众号或小程序,微信内 JSAPI 支付需要用它获取用户身份公众号后台 → 设置与开发 → 基本配置 → 开发者 ID;小程序后台 → 开发管理 → 开发设置 → AppID必须和当前商户号完成绑定,否则下单会失败
APIv3 密钥解密微信支付回调报文和平台证书微信支付商户平台 → 账户中心 → API安全 → APIv3密钥;部分账号会显示为 账户中心 → 账户设置 → API安全 → APIv3密钥填写你设置的 32 位密钥。设置成功后通常不能查看,只能重新设置
回调验签模式决定系统用哪类微信支付公钥材料校验回调签名后台选择,不从微信后台复制新商户优先选择“微信支付公钥模式”;正在切换的商户可临时选择“切换期自动兼容”;存量已使用平台证书的商户可继续选择“平台证书模式”
平台证书/平台公钥平台证书模式或切换期自动兼容下校验微信支付回调签名平台证书:通过微信支付平台证书下载工具获取;平台公钥:微信支付商户平台 → 账户中心 → API安全 → 微信支付公钥在“平台证书模式”或“切换期自动兼容”下填写。完整复制 BEGIN CERTIFICATE 或 BEGIN PUBLIC KEY 到结尾
平台证书序列号平台证书模式或切换期自动兼容下匹配回调头里的 Wechatpay-Serial下载平台证书接口返回的 serial_no,或平台证书详情;填写平台公钥时看公钥对应的 ID/序列号填完整平台证书时可留空,系统会从证书内容解析;填平台公钥时必须填写
微信支付公钥 ID微信支付公钥模式或切换期自动兼容下匹配微信回调签名头微信支付商户平台 → 账户中心 → API安全 → 微信支付公钥,下载公钥后查看公钥 ID在“微信支付公钥模式”或“切换期自动兼容”下填写,通常形如公钥序列号
微信支付公钥微信支付公钥模式或切换期自动兼容下校验微信支付回调签名微信支付商户平台 → 账户中心 → API安全 → 微信支付公钥 → 下载公钥在“微信支付公钥模式”或“切换期自动兼容”下填写,完整复制 BEGIN PUBLIC KEY 到结尾
私钥证书商户调用微信支付 API 时生成请求签名微信支付商户平台 → 账户中心 → API安全 → 商户 API 证书 → 申请/管理证书;本地证书工具生成或保存的 apiclient_key.pem后台字段名为“私钥证书”,实际填写商户 API 私钥完整内容,包含 BEGIN PRIVATE KEY 和 END PRIVATE KEY

第一步:准备商户号和 AppId ​

  1. 登录 微信支付商户平台。
  2. 在“账户中心 → 商户信息”复制商户号。
  3. 准备公众号或小程序 AppId。
  4. 在商户平台进入“产品中心 → AppID 账号管理”或“产品中心 → APPID 授权管理”,把 AppId 关联到当前商户号。
  5. 关联申请发起后,到对应的微信公众平台或小程序后台确认授权。
  6. 如果需要微信内支付,确认 JSAPI 支付产品已开通;如果需要 PC 扫码,确认 Native 支付能力可用。

微信支付要求下单时传入的 AppId 和商户号存在绑定关系。没有绑定时,后台参数即使填写正确,也会在创建订单时失败。

第二步:配置 APIv3 密钥 ​

在商户平台进入“账户中心 → API安全 → APIv3密钥”,设置一串 32 位的数字和大小写字母组合。如果你的商户后台仍保留旧分组,路径可能显示为“账户中心 → 账户设置 → API安全 → APIv3密钥”。

注意:

  • 管理后台中的“APIv3 密钥”填写这里设置的密钥。
  • 这不是微信登录 AppSecret。公众号 AppSecret 和微信开放平台网站应用 AppSecret 都用于登录配置,微信支付回调解密使用 APIv3 密钥。
  • APIv3 密钥设置成功后通常不能再次查看,只能重新设置。
  • 修改 APIv3 密钥会影响线上支付回调,生产环境修改前要先安排维护窗口。

第三步:选择回调验签模式 ​

系统支持三种回调验签模式:

模式适合谁需要填写
微信支付公钥模式新申请商户号,或已经按微信支付指引切换到公钥模式的商户微信支付公钥 ID、微信支付公钥、商户 API 私钥
平台证书模式存量商户,已经下载并持续维护微信支付平台证书平台证书/平台公钥、平台证书序列号、商户 API 私钥
切换期自动兼容商户平台正在从平台证书切换到微信支付公钥,回调可能同时出现两种 Wechatpay-Serial 的商户平台证书/平台公钥、平台证书序列号、微信支付公钥 ID、微信支付公钥、商户 API 私钥

新商户建议优先使用微信支付公钥模式。微信支付官方文档也说明,平台证书有效期需要维护,公钥模式更适合作为新的验签方式。 切换期自动兼容只建议在迁移期间临时使用。迁移完成后,请切回“微信支付公钥模式”,减少长期配置项和排障复杂度。

第四步:准备证书、公钥和私钥 ​

无论选择哪种验签模式,都需要填写商户 API 私钥。这个私钥来自商户 API 证书申请过程中的 apiclient_key.pem,不是平台证书,也不是公众号 AppSecret。

选择微信支付公钥模式 ​

  1. 登录微信支付商户平台。
  2. 进入“账户中心 → API安全 → 微信支付公钥”。
  3. 按页面指引申请或下载微信支付公钥。
  4. 将公钥 ID 填入“微信支付公钥 ID”。
  5. 将公钥文件完整内容填入“微信支付公钥”。
  6. 将 apiclient_key.pem 完整内容填入“私钥证书”。

选择平台证书模式 ​

  1. 使用微信支付平台证书下载工具,或按商户平台指引获取平台证书。
  2. 将平台证书完整内容填入“平台证书/平台公钥”。
  3. 如果填写的是完整平台证书,可以不填“平台证书序列号”,系统会自动解析。
  4. 如果填写的是平台公钥内容,必须同步填写平台证书序列号或对应的 Wechatpay-Serial。
  5. 将 apiclient_key.pem 完整内容填入“私钥证书”。

选择切换期自动兼容 ​

  1. 先按“平台证书模式”填写平台证书/平台公钥信息。
  2. 再按“微信支付公钥模式”填写微信支付公钥 ID 和微信支付公钥。
  3. 系统收到回调后,会根据请求头 Wechatpay-Serial 自动选择匹配的平台证书或微信支付公钥验签。
  4. 如果 Wechatpay-Serial 无法匹配已配置的任意一套材料,系统会拒绝回调。
  5. 商户平台切换完成后,建议改回“微信支付公钥模式”。

不要只复制中间一段内容,也不要通过富文本编辑器中转。公钥、证书或私钥内容被自动换行、替换空格或丢失首尾标记,都会导致下单或回调验签失败。

第五步:确认回调地址 ​

系统会根据 基础信息 中的网站地址自动生成微信支付回调地址:

text
https://你的域名/api/pay/notify?provider=wechat

微信支付下单时会把这个地址作为 notify_url 传给微信。用户支付成功后,微信支付会通过 POST 请求通知这个地址。

配置前请确认:

  • 网站地址是正式域名,不是 localhost 或内网 IP。
  • HTTPS 证书有效。
  • 反向代理已把 /api/pay/notify 转发到后端服务。
  • 服务器防火墙没有拦截微信支付回调请求。
  • 所选验签模式对应的证书/公钥、公钥 ID 或序列号、APIv3 密钥配置正确,否则系统会拒绝回调并不会发放权益。

第六步:保存并测试 ​

  1. 在支付参数页填写商户号、AppId、APIv3 密钥、回调验签模式、对应的证书或公钥信息和私钥证书。
  2. 保存后确认微信官方支付标签显示“已配置”。
  3. 到 支付配置 开启微信支付,并选择微信官方渠道。
  4. 创建一个低价测试套餐。
  5. 使用“完整支付测试”发起真实订单。
  6. 支付完成后,到 订单管理 确认订单状态和到账权益。

微信常见问题 ​

APIv3 密钥和 AppSecret 是一回事吗? ​

不是。微信登录可能使用公众号 AppSecret 或微信开放平台网站应用 AppSecret;微信支付这里填写 APIv3 密钥,用于平台证书和回调报文解密。

应该选择平台证书模式还是微信支付公钥模式? ​

新商户优先选择微信支付公钥模式。已经在线上稳定使用平台证书的存量商户,可以继续使用平台证书模式;切换模式前要先准备好对应的公钥 ID、证书或序列号,并完成测试。

支付二维码生成失败? ​

检查商户号、AppId 是否绑定,商户号是否开通对应支付产品,商户 API 私钥是否完整,当前验签模式所需的公钥或证书是否已填写。

用户已付款但订单没有到账? ​

优先检查 /api/pay/notify?provider=wechat 是否能被公网 POST 访问,再检查 APIv3 密钥、回调验签模式、证书/公钥和序列号/公钥 ID 是否正确。

JSAPI 支付失败? ​

确认用户是在微信内打开站点,并且当前用户有公众号 OpenID。微信登录配置异常时,JSAPI 支付可能拿不到 OpenID。

微信官方指引 ​

支付宝官方支付 ​

支付宝官方支付适合已经在支付宝开放平台创建应用的场景。系统会根据访问环境使用电脑网站支付或手机网站支付,支付成功后的权益发放以支付宝异步通知为准。

后台配置项用途从哪里找填写说明
应用 AppId标识支付宝开放平台应用支付宝开放平台 → 控制台 → 应用 → 应用详情填写应用的 APPID,不是商户 PID
应用私钥系统请求支付宝接口时生成签名使用支付宝开放平台开发助手或你自己的密钥工具生成填写应用私钥完整内容。私钥只保存在你本地,不是从支付宝后台复制
支付宝公钥系统验证支付宝异步通知签名支付宝开放平台 → 控制台 → 应用 → 开发设置 → 接口加签方式 → 支付宝公钥填“支付宝公钥”,不要填“应用公钥”
启用后端轮询异步通知异常时主动查询订单状态后台选择通知不稳定、测试环境或代理环境建议启用;生产环境也可以保留启用作为兜底

支付宝配置步骤 ​

  1. 登录 支付宝开放平台。
  2. 在控制台创建或选择已上线的网页/移动应用。
  3. 在应用详情中复制应用 AppId。
  4. 在“开发设置 → 接口加签方式”配置 RSA2 公钥模式。
  5. 将本地生成的应用私钥填入 后台的“应用私钥”。
  6. 将支付宝开放平台生成的“支付宝公钥”填入 后台的“支付宝公钥”。
  7. 到 支付配置 开启支付宝,并选择支付宝官方渠道。

支付宝同步返回地址由系统自动生成到:

text
https://你的域名/api/pay/return?provider=alipay&status=success

支付宝异步通知地址由系统自动生成到:

text
https://你的域名/api/pay/notify?provider=alipay

同步返回地址只用于展示支付结果页;权益发放仍以支付宝异步通知或后端轮询确认结果为准。

官方入口:

易支付 ​

易支付是第三方聚合支付渠道,可同时承载微信、支付宝或部分 PayPal 场景。不同服务商后台名称不完全一致,以下字段需要从你实际使用的易支付服务商后台复制。

后台配置项用途从哪里找填写说明
支付接口地址创建支付订单易支付服务商后台 → 商户中心 → API 接口或开发配置填完整创建支付接口地址,例如 https://pay.example.com/api/pay,不要只填域名
查询接口地址主动查询订单状态易支付服务商后台 → 商户中心 → API 接口或开发配置填完整查询接口地址,例如 https://pay.example.com/api/query
商户 ID标识服务商分配给你的商户易支付服务商后台 → 商户资料或接口配置常见名称为商户 ID、PID、商户编号
API 版本决定签名方式后台选择,按服务商文档支持情况填写服务商支持 V2 时优先选 V2;只支持 MD5 时选 V1
商户密钥V1 MD5 签名使用易支付服务商后台 → API 密钥、通信密钥或商户密钥仅 V1 必填
商户私钥V2 RSA 签名使用易支付服务商后台或你本地生成的 RSA 私钥仅 V2 必填,完整复制私钥内容
平台公钥V2 回调验签使用易支付服务商后台 → 平台公钥、验签公钥或接口公钥仅 V2 必填,完整复制公钥内容
启用后端轮询异步通知异常时主动查询订单状态后台选择易支付服务商回调不稳定时建议启用

配置建议:

  • 服务商提供 V2 时优先使用 V2,签名方式更稳妥。
  • 支付接口地址和查询接口地址要复制完整,不要只填域名。
  • 切换 API 版本后,要检查对应密钥字段是否已经补齐。
  • 易支付没有统一官方后台,不同服务商字段名不同;如果找不到对应字段,请向服务商索要“创建支付接口、订单查询接口、商户 ID、签名密钥、公钥/私钥”的完整接入资料。

易支付同步返回地址由系统自动生成到 /api/pay/return?provider=epay&status=success,只用于展示支付结果页;权益发放仍以易支付异步通知或后端轮询确认结果为准。

PayPal 官方 ​

PayPal 官方适合海外用户支付。系统使用美元创建 PayPal 订单,启用 PayPal 前,建议在 套餐设置 中填写美元价格。

后台配置项用途从哪里找填写说明
Client ID标识 PayPal REST 应用PayPal Developer → Dashboard → Apps & Credentials → 选择应用沙盒和生产各有一套 Client ID,必须和环境模式匹配
Client Secret服务端换取 PayPal Access TokenPayPal Developer → Dashboard → Apps & Credentials → 选择应用 → Secret只填写当前环境对应的 Secret,不要公开到前端或文档截图
环境模式决定调用 PayPal 沙盒还是生产接口后台选择测试用 sandbox;正式收款用 live,同时换成 Live 应用凭据
Webhook ID验证 PayPal 异步通知签名PayPal Developer → Dashboard → Apps & Credentials → 选择应用 → Webhooks → 创建 Webhook 后复制 Webhook ID当前后台将它作为必填项。创建 Webhook 时填写 系统自动生成的通知地址

PayPal 后台 Webhook 建议填写:

text
https://你的域名/api/pay/notify?provider=paypal

建议订阅事件:

  • CHECKOUT.ORDER.APPROVED
  • PAYMENT.CAPTURE.COMPLETED
  • PAYMENT.CAPTURE.DENIED

用户支付后的成功和取消返回地址由系统自动生成到 /api/pay/return,一般不需要手动维护旧的 PayPal 专用返回地址。

官方入口:

Stripe 官方 ​

Stripe 官方适合信用卡、借记卡等国际支付方式。系统使用 Stripe Checkout 创建美元订单,正式收款前,请确保 Stripe 账号已完成业务资料和结算信息审核。

后台配置项用途从哪里找填写说明
Secret Key服务端创建 Checkout Session、查询支付状态和退款Stripe Dashboard → Developers → API keys测试环境通常以 sk_test_ 开头,生产环境通常以 sk_live_ 开头
Publishable Key标识前端可公开使用的 Stripe keyStripe Dashboard → Developers → API keys测试环境通常以 pk_test_ 开头,生产环境通常以 pk_live_ 开头
环境模式区分测试和生产配置后台选择test 搭配测试 key;live 搭配生产 key
Webhook Secret验证 Stripe Webhook 签名Stripe Dashboard → Developers → Webhooks → 选择 Endpoint → Signing secret当前后台将它作为必填项。它通常以 whsec_ 开头,不是 API Key

Stripe 后台 Webhook 建议填写:

text
https://你的域名/api/pay/notify?provider=stripe

建议订阅事件:

  • checkout.session.completed
  • payment_intent.succeeded
  • payment_intent.payment_failed

Stripe Checkout 的成功和取消返回地址由系统自动生成到 /api/pay/return,一般不需要手动维护旧的 Stripe 专用返回地址。

官方入口:

支付测试 ​

支付参数页面提供“支付测试”入口,用于超级管理员发起一笔真实套餐购买,并等待第三方回调和权益到账。

测试前请确认:

  • 套餐设置 中至少有一个已启用且价格大于 0 的套餐。
  • 支付配置 中已开启对应支付方式。
  • 当前渠道在下拉项或标签页中显示“已配置”。
  • 当前站点域名、HTTPS、反向代理和第三方平台回调地址均可用。

测试完成后,到 订单管理 查询订单状态,并到 账户明细 确认购买权益是否到账。