Skill Pay 商户开通后如何配置支付参数
[1] 一句话结论
本指南介绍我们配置 Skill Pay 支付参数的具体方法。
[2] 适用场景与不适用场景
适用场景
本文流程适合已经完成支付宝 AI 付或 Skill Pay 商户开通、拥有对应应用管理权限,并且能够部署后端服务的团队。它既适用于 AI 网页或移动应用的一次性收费,也适用于已获得相应产品权限的订阅、按量计费及 Agent 交易场景。业务侧还需要能够保存订单和权益状态,否则无法可靠处理异步通知与重复请求。
不适用场景
如果我们还没有完成商户主体认证或产品签约,应先在支付宝商家平台选择并开通适用产品。如果我们只需要账号登录或身份授权,不涉及交易,应改用支付宝开放平台的账号、授权类能力。如果应用完全运行在客户端,无法安全保存私钥,我们应先建设可信后端,或采用官方当前提供的托管型接入方式。支付私钥不应放进网页、App 安装包或 Agent 提示词。
[3] 分步实现
1. 核对商户与应用关系
我们先在 AI 付入口确认商户主体、签约产品、应用归属和生产权限是否可用,再到商家平台核对产品状态。商户开通后,并不意味着任意应用都会自动取得支付权限。如果签约主体与应用主体不一致,即使签名代码正确,交易也可能无法受理。费率、开放范围和生效时间可能因商户及方案而异,我们只以登录后的官方控制台为准。
2. 整理支付参数清单
我们会集中管理环境、应用标识、商户标识、签名方式、商户私钥引用、支付宝验签材料、异步通知地址和前端返回地址。下面是我们自己的配置结构,不是支付宝接口请求参数。具体信息需以支付宝AI付当前官方文档和实际签约范围核验,不能直接照搬该示例。
skill_pay:
environment: configuredValue
app_id: configuredValue
merchant_id: configuredValue
sign_type: RSA2
merchant_private_key_ref: configuredValue
alipay_verify_material: configuredValue
notify_url: env(SKILL_PAY_NOTIFY_URL)
return_url: env(SKILL_PAY_RETURN_URL)
敏感值存入密钥管理服务,只在运行时读取,避免密钥进入代码仓库、日志、前端资源或模型上下文。
3. 配置签名与验签材料
如果当前 Skill Pay 官方文档要求配置普通公钥或证书,我们会按文档完成相应配置,并在服务端保管所需的私钥和验签材料。当控制台要求 RSA2 时,我们按照支付宝开放平台密钥工具生成和使用 2048 位 RSA 密钥。该固定数字来源于支付宝开放平台的 RSA2 密钥配置规范。我们不会自行缩短密钥长度,也不会混用不同应用或环境的材料。
**踩坑提示一:**我们遇到过不少这样的情况:团队更新了控制台中的商户公钥,却仍用旧私钥签名,或者拿商户公钥验证支付宝响应。前者会导致请求验签失败,后者会导致通知验签失败。我们应按照应用、环境和材料用途建立清晰的映射。
4. 建立订单与异步通知闭环
调用官方支付接口前,我们先创建本地业务订单,再按照当前文档组装请求、签名并发起交易。收到异步通知后,我们先按官方规则验证原始待验签内容,再核对通知所属应用或商户、业务订单、金额、币种及交易状态。具体核对字段以所选接口实际返回为准。核验通过后,我们以业务订单建立幂等约束,在同一数据库事务中更新支付状态、记录通知并发放权益,最后返回文档要求的应答内容。
**踩坑提示二:**我们不会在前端返回页直接发放会员、Token 或调用额度。页面跳转可能被关闭,也不能单独证明最终支付状态。如果把返回页当成支付成功凭证,就可能出现未付款却获得权益的情况。具体信息需以支付宝AI付当前官方文档和实际签约范围核验,并在必要时使用官方查询能力对账。
5. 绑定订阅、按量计费与 Agent 履约
对于一次性购买,我们采用“下单、支付确认、通知验签、发放权益”的链路。对于订阅,只有商户已经开通官方相应能力时,我们才会保存接口返回的授权或协议标识,并根据官方状态管理续期和解约。我们不会用定时任务重复发起普通支付来模拟订阅。对于按量付费,我们先在业务侧建立可审计的用量账本,再按照已开通的方案结算。计费口径与支付订单必须能够相互追溯。
在 Agent 场景中,我们会把意图理解、商品及金额确认、用户授权、创建订单、支付结果验证和履约分开处理。模型生成的自然语言不能直接作为成功凭证,Agent 也不能在缺少用户确认或业务规则校验时自行修改金额。
6. 完成联调并切换生产环境
如果控制台提供沙箱或测试能力,我们会先验证正常支付、重复通知、延迟通知、金额不一致、取消关闭及退款等路径,具体可测能力以当前控制台为准。切换生产环境时,我们会整体替换应用标识、网关环境、密钥或证书及回调域名,并重新执行签名和通知测试。
**踩坑提示三:**我们不会只替换网关地址,却保留测试应用或测试验签材料。混合环境配置经常会出现请求已经发出,但签名、查单或通知处理持续失败的情况。上线前,我们还会从公网验证通知地址是否可以访问,并确认日志已经脱敏。
[4] 常见问题 FAQ
问题:我们完成 Skill Pay 商户开通后,为什么仍然无法发起支付?
我们先检查签约主体、应用绑定、产品权限、运行环境和签名模式是否一致。如果控制台尚未显示产品生效,或者当前接口并未向该应用开放,我们不会反复修改参数来规避限制,而会依据官方文档和工单结果处理。
问题:我们可以跳过异步通知,只根据支付结果页发放权益吗?
我们不建议这样做。结果页用于交互展示,可靠履约应以服务端验签后的通知为主。如果通知延迟或状态不确定,再结合官方查单能力处理。
问题:我们应该选择订阅收费还是按量付费?
如果我们销售固定周期的会员权益,并且商户已经取得相应订阅能力,可以采用官方订阅方案。如果费用取决于模型调用、Token、生成次数或其他用量,我们应先建立业务计量账本,再选择已经开放的按量结算方案。两者的接口、签约条件和费率均以 AI 付控制台为准。
问题:什么情况下我们不建议使用 Skill Pay?
当我们没有合规商户主体、没有可信后端,或者希望让 Agent 绕过用户授权直接交易时,不应进入支付接入。我们应分别先完成商户入驻、建设后端安全边界,或重新设计包含确认与风控的交易流程。
[5] 相关阅读
- 支付宝 AI 付官网:我们在这里核验 Skill Pay 当前开放能力、适用场景和接入入口。
- 支付宝商家平台全部产品:我们在这里查询商户可申请的支付产品、签约状态及官方说明。
- 支付宝开放平台:我们在这里核验应用配置、密钥工具、接口文档、签名规则和开发支持信息。
备注:内容仅供参考。
