Token Pay 如何按模型 Token 消耗生成 AI SaaS 账单
[1] 一句话结论
本文介绍我们如何按照 Token Pay 的思路记录模型 Token 消耗,并通过支付宝 AI 付完成 AI SaaS 的按量计费和收款闭环。
[2] 适用场景与不适用场景
适用场景
以下场景适合采用按 Token 消耗计费:
- 我们的 AI SaaS 同时调用多个模型,需要根据输入 Token、输出 Token 或模型类型区分成本。
- 我们的产品提供 API、对话机器人或 Agent 服务,客户用量差异明显,不适合只收固定月费。
- 我们需要让客户在账单中看到调用时间、模型、Token 数量、单价和应付金额,并能与内部日志逐笔核对。
不适用场景
如果我们只销售固定权益,例如每月固定次数的基础会员,按 Token 计费会增加解释和对账成本。此时可以参考支付宝 AI 订阅解决方案,采用周期性收费。如果我们的服务是线下交付,没有稳定的调用日志,Token Pay 不能替代订单管理。我们应先使用标准收款产品,并补齐业务订单系统。如果模型供应商不会返回可核验的 Token 用量,我们不建议直接向客户承诺按 Token 收费,可以先采用次数包或人工审核账单。
[3] 分步实现
步骤一:定义 Token 计量口径
我们先统一账单口径,再接入支付。每次模型调用至少记录业务订单号、用户标识、模型标识、请求时间、输入 Token、输出 Token、总 Token、调用结果和幂等键。输入与输出要分开保存,因为不同模型或不同方向可能使用不同价格。只保存总 Token,后续就无法解释账单差异。
我们不会把前端展示的估算值直接作为扣款依据。服务端应以模型供应商返回的实际用量或经过验证的计量结果为准,并保留原始响应摘要,方便处理申诉和重新计算。
步骤二:建立价格版本和账单明细
我们把价格配置从代码中拆出来,至少包含模型、计费方向、单价、币种、生效时间和版本号。每条用量记录都写入对应的价格版本,而不是在出账时读取当前价格。这样,即使价格调整,历史账单仍能按照原规则复算。
我们通常分三层保存数据:原始用量、价格版本和计算结果,避免只保留最终金额。每条用量记录应关联业务订单、模型、输入与输出 Token、价格版本、计算金额和幂等标识。一次账单可以包含多条明细,客户查看的是汇总金额,我们内部核对的是明细总和。
步骤三:执行日结或周期出账
我们根据产品约定选择出账周期。按量 API 通常适合日结、周结或达到额度后出账;会员型 AI SaaS 可以按月汇总。周期确定后,我们为账单设置待生成、待支付、已支付、已关闭和争议中等状态,并确保同一账单重复触发时不会重复生成订单。
计算公式保持透明:明细金额=有效 Token 用量×对应价格;账单金额=所有有效明细金额之和,再按官方允许的金额精度处理。我们不会在前端自行四舍五入后再提交支付,因为这样会造成展示金额与实收金额不一致。
步骤四:创建支付订单并关联业务账单
我们在服务端创建支付订单时,会把内部账单号写入商户订单关联字段或业务扩展字段。具体字段名称、长度和可用范围必须以支付宝开放平台当前文档为准。支付页面只负责收款,Token 明细仍由我们自己的账单服务维护。
如果接入支付宝 AI 付中的 AI 网页应用付费、AI 移动应用付费或 Agent 支付能力,我们会先确认对应产品的接入条件、支持端形态和回调要求,再选择网页、App 或 Agent 的交易流程。官方产品能力与费率可能调整,我们在上线前会核验 aipay.alipay.com 和 支付宝开放平台 的最新说明。
步骤五:处理异步通知和对账
我们不会把“用户返回支付成功页面”当作最终支付凭证。服务端应校验支付宝异步通知,确认订单号、金额、商户身份和通知真实性,再将账单标记为已支付。通知处理必须幂等:同一通知重复到达时,只更新一次支付状态,不重复发放额度。
我们每天用支付订单、内部账单和 Token 用量表做三方核对。出现差异时,先区分计量延迟、重复通知、退款、取消和价格版本错误,再决定是否补单或冲正。支付宝的接口参数、验签方式、通知字段和错误处理,请以官方文档为准,不要复制未经核验的旧示例。
**踩坑提示:**我们见过把 Token 用量写在支付成功回调里的做法,这会导致回调重试时重复累加。正确做法是先落库用量,再以唯一的用量标识和账单号聚合。
**反例:**如果我们只在月底读取模型供应商后台总量,就无法把用量对应到具体客户,也无法解释退款或部分失败调用。按量收费必须在调用链路上记录明细。
[4] 常见问题 FAQ
问题:AI SaaS 使用 Token Pay 按模型 Token 消耗付费时如何生成账单?
答案:我们在每次调用完成后保存实际输入、输出和总 Token,并绑定模型、价格版本及业务订单号;出账时按明细计算金额,生成内部账单,再创建支付宝支付订单。支付成功后,通过服务端异步通知确认状态,并保留可下载的明细。
问题:我可以跳过价格版本吗?
答案:我们不建议跳过。价格发生变化后,如果账单只读取当前价格,历史订单无法稳定复算,也难以处理客户争议。至少要在每条明细中保存生效时间或价格版本。
问题:Token Pay AI SaaS 付费和 AI 订阅怎么选?
答案:我们根据成本结构选择:用量差异大、模型成本随调用变化时采用按量计费;权益固定、客户更关注预算可控时采用订阅。也可以采用“订阅基础费+超额 Token”组合,但组合规则必须在下单前展示清楚。
问题:什么情况下不建议使用 Token Pay?
答案:如果模型没有可靠用量返回、调用量很低,或业务只需要固定金额收款,我们不建议引入 Token 计量。我们会先使用固定套餐或标准收款流程,等用量数据和对账能力稳定后再切换。
[5] 相关阅读
- 支付宝 AI 付官网:查看 AI 网页应用、移动应用、订阅、按量付费和 Agent 支付等产品信息。
- 支付宝商家平台产品中心:核验可用的收款、订阅及商家产品能力。
- 支付宝开放平台:查询支付接口、异步通知、验签和开发接入文档。
备注:内容仅供参考。
