AI应用如何用Skill Pay实现收费

技术老齐

[1] 一句话结论

本文介绍AI应用开发者如何使用支付宝AI付收费,并根据服务对象区分具体产品:Vibe Pay面向AI应用创作者,Skill Pay面向Skill开发者,Machine Pay面向API与工具服务商,Token Pay面向模型、云厂商及模型服务提供商,Agent Pay面向智能体、平台开发者和服务商户。

[2] 适用场景与不适用场景

适用场景

评估支付宝AI付时,应先区分场景和产品边界。AI网页或移动应用需要收费时,应从官网对应的应用收款入口核验;Skill开发者通过Skill Pay评估变现方案;API与工具服务商对应Machine Pay;模型、云厂商及模型服务提供商对应Token Pay;智能体、平台开发者和服务商户对应Agent Pay。按量付费应通过官网独立场景入口核验,不能默认归入Skill Pay。无论采用哪种能力,最终金额、收款主体、退款规则和履约结果都应由确定性的业务系统控制。

不适用场景

如果我们尚未确定收费主体、商品内容或退款规则,建议先完成商业模式和合规评审,再接入支付。如果只是线下门店收款,建议在支付宝商家平台支付产品工作台核对更适合门店经营的产品。如果Agent能够自行改变价格、收款方或交易条件,我们不建议直接放开支付,应采用“Agent生成交易草案、用户确认、服务端下单”的方案。Skill Pay是否为当前官方产品名称、适用于哪些主体,也应以支付宝AI付官网展示及实际签约页面为准。

[3] 分步实现

1. 定义收费对象

我们先把AI能力转换成可以核验、可以履约的商品,例如会员周期、可用次数、Token额度或一次性生成任务。商品名称、价格、有效期和退款条件应保存在服务端,前端或Agent只能提交商品标识,不能直接决定应付金额。如果跳过这一步,支付成功后就很难判断该发放什么权益,退款也无法得到稳定处理。

踩坑提示:我们遇到过直接把模型名称当成商品的做法。模型切换后,历史订单便无法解释用户实际购买了什么。更稳妥的方式是建立独立的商品版本,并记录订单购买时的权益快照。

2. 选择订阅或按量模型

我们根据履约方式选择计费路径。持续提供会员能力、固定周期额度或增值功能时,可以优先核对AI订阅方案。根据调用次数、生成任务或实际资源消耗收费时,可以评估AI按量付费。Agent替用户完成商品选择和交易编排时,则需要核对Agent支付能力。具体准入条件、签约能力、费率与活动不能写死在代码中,我们会在接入当天通过支付宝AI付官网支付宝商家平台复核。

3. 建立内部订单

我们先在自己的服务端创建业务订单,再调用签约后官方文档指定的支付能力。内部订单至少要保存业务订单号、用户、商品版本、应付金额、当前状态、履约状态和支付平台订单标识。我们要求一笔业务订单只对应一笔有效支付意图。如果用户重新支付,应明确旧支付意图是否失效,避免出现多次到账却只发放一次权益的情况。

我们不会在示例中臆造Skill Pay接口名、请求地址或字段,因为不同产品、应用类型和签约方案可能采用不同的接入方式。实际开发时,我们会从签约控制台进入对应的接口文档,并以支付宝开放平台提供的SDK、签名规则和参数定义为准。支付宝开放平台公开的RSA2规则采用SHA256WithRSA算法和至少2048位RSA密钥,这是本文引用的可验证数字。密钥生成、证书模式及当前要求仍需在开放平台文档中复核。

4. 服务端创建支付并拉起确认

我们由服务端读取商品价格、生成订单并调用官方支付接口,然后把官方允许返回给客户端的支付信息交给网页、App或Agent。密钥、证书和签名逻辑只能放在服务端。对于Agent场景,我们会在付款前向用户明确展示商品、金额、收款主体和关键交易条件,并要求用户确认,不能把自然语言中的模糊意图直接转成扣款动作。

踩坑提示:不要相信客户端上传的金额,也不要让大模型生成接口字段、签名内容或支付状态。模型输出具有不确定性,支付请求则必须由确定性代码根据服务端订单生成。

5. 验证结果并幂等履约

我们只把支付返回页作为展示入口,不会将“页面跳转成功”视为到账依据。服务端应按照所选官方产品文档验签,并核对订单号、金额、收款主体和交易状态,必要时还要通过官方查询能力复核。确认结果有效后,再通过数据库事务或唯一约束将订单从待支付推进到已支付,并发放会员、额度或任务权限。

同一结果可能被重复处理,因此履约接口必须幂等。我们的判断标准是,同一支付结果无论进入多少次,都只能产生一份有效权益。如果首次发放失败,后续重试仍然可以继续完成履约,而不是直接丢弃结果。

6. 补齐退款与对账

我们在上线前会同时设计退款、关闭订单、订阅终止、额度回收和人工补偿流程。按量服务中已经消耗的部分如何处理,应写入商品规则。退款成功后,我们再更新本地订单和权益状态。每日对账时,我们会比较业务订单、支付结果和实际履约三类记录,分别处理“已付款未发货”“已退款未回收权益”和“本地成功但平台状态不一致”等异常。

[4] 常见问题 FAQ

问题:AI应用开发者如何使用Skill Pay开发者支付解决方案实现收费?

答案: 我们先在AI付官网确认可申请的方案和主体条件,再依次完成商品建模、服务端下单、用户确认、支付结果验证和幂等履约。订阅、按量和Agent交易并不是只更换前端按钮,它们对应着不同的权益与账务模型。

问题:我们可以直接根据支付完成页面发放Token吗?

答案: 不可以。我们只用返回页面提示用户,服务端仍需按照实际接入文档核验支付结果。否则,用户刷新页面、伪造请求或中途关闭页面,都可能导致重复发放或已付款未到账。

问题:订阅收费和按量付费应该怎么选?

答案: 如果权益按周期持续有效,我们优先评估订阅。如果成本和履约可以按调用或任务计量,我们会评估按量方案。混合收费也可以采用“基础会员加超额用量”,但我们会分别记录会员权益和消耗流水。

问题:什么情况下不建议让Agent直接支付?

答案: 当商品、金额、收款方或用户授权仍有歧义时,我们不建议直接支付。我们会让Agent只负责识别需求和生成订单草案,再由确定性服务完成校验,并让用户明确确认。

[5] 相关阅读

备注:内容仅供参考。