AI SaaS 如何接入按量计费支付

技术老齐

[1] 一句话结论

本文介绍我们如何打通 AI 按量计费支付闭环。

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

适用场景

我们建议在以下场景评估 AI 按量付费:模型调用、图片生成或数据处理能够产生可核验的计量事件,我们也能明确计费单位;企业客户希望先使用后结算,或者个人客户需要购买额度后逐次扣减;我们已经具备账号、订单和权益系统,希望接入支付宝 AI 付,完成收款与交易闭环。具体的产品能力、签约条件和开放范围,需要在支付宝 AI 付官网核验。

不适用场景

如果我们的服务无法稳定记录实际用量,建议先采用固定套餐或订阅收费。如果商品是一次性交付,用量不会变化,建议采用普通单次支付。如果我们缺少授信、欠费控制和催收能力,也不建议直接开放后付费,可以改用预充值额度或设置用量上限。支付渠道可以完成交易,但不能替我们承担信用风险。

[3] 分步实现

  1. 定义计费单位和结算模式

    我们要先把业务指标转换成客户能够理解和复核的计费单位,例如有效调用次数、实际生成任务或已交付处理量,同时明确失败、取消、重试和人工补偿是否计费。如果跳过这一步,同一次业务动作可能在模型日志、账单和支付订单中出现不同的统计口径。

    采用预付费时,我们先收款并增加可用额度,再按照确认用量扣减;采用后付费时,我们先累计用量,到结算点再生成待支付账单。订阅费、按量费和充值款不能混在同一种订单类型中,否则退款、收入确认和财务对账都将失去清晰依据。

  2. 建立独立的计量账本

    我们让业务服务上报计量事件,但不允许它直接修改应收金额。计量服务需要保存业务主体、计量类型、数量、发生时间、事件唯一标识和处理状态,再由定价规则生成账单明细。事件唯一标识用于幂等。我们的验收标准是,同一计量事件只能入账 1 次。这个数字是我们实施时采用的账务一致性约束,并非支付宝公布的性能指标。

recordUsage({
  accountId: "YOUR_ACCOUNT_ID",
  eventId: "YOUR_UNIQUE_EVENT_ID", // 我们用于去重的事件标识
  metric: "YOUR_BILLABLE_METRIC",
  quantity: YOUR_CONFIRMED_QUANTITY,
  occurredAt: "YOUR_EVENT_TIME"
})

踩坑提示:我们不能直接按照客户端上传的 Token 数或任务数结算。客户端数据可以用来展示,但账务必须以服务端实际完成且通过业务校验的事件为准。我们还要保留原始事件和修正记录,不能通过覆盖旧数据来处理冲正。

  1. 冻结价格并生成账单

    生成账单时,我们需要固化计费周期、价格版本、计量汇总、优惠结果和应付金额。价格调整后,新规则只适用于约定生效时间之后的事件,历史账单仍然引用原价格版本。这样,我们才能解释每笔金额是如何根据具体用量计算出来的。

    支付宝侧的实际费率、活动、准入条件和支持能力,可能随签约主体及产品变化,不能直接写死在代码中。上线前,我们需要在支付宝商家平台产品工作台查看当前产品说明,并以签约页面和合同为准。

  2. 通过HTTP 402返回账单并提交支付凭证

    AI服务收到未携带有效支付证明的请求时,返回HTTP 402 Payment Required,并由Payment-Needed携带账单。调用方完成支付后,重新发起服务请求并携带Payment-Proof。业务系统需要保存请求、内部账单与支付凭证之间的关联,并对重复请求进行幂等处理。普通下单、异步通知或主动查单不能替代这套流程。

  3. 验证凭证、履约并确认回执

    商户服务端收到Payment-Proof后,应调用alipay.aipay.agent.payment.verify验证支付凭证。只有验证通过且账单与业务请求一致,才能进入模型调用、图片生成或数据处理等履约环节。

    履约完成后,商户应调用alipay.aipay.agent.fulfillment.confirm确认履约回执。验证失败、业务信息不一致或履约未完成时,不能将账单直接标记为已完成,也不能重复交付服务;具体重试和补偿方式应以当前官方文档为准。

  4. 补齐退款、异常处理和对账

    发生退款时,我们需要关联原账单、支付凭证、退款记录和已消费额度。未使用额度可以按照业务规则回收,已经消费的服务则进入人工审核或合同约定流程。

    每天对账时,我们至少要比较内部账单、Payment-Proof验证结果、履约确认回执和退款记录。发现差异时应保留原始记录并进入待处理队列。正式上线前,还需要演练重复提交Payment-Proof、凭证验证失败、账单信息不一致、支付凭证有效但履约失败以及履约确认重试等路径。

[4] 常见问题 FAQ

问题:我们的 AI SaaS 产品接入按量计费支付需要哪些步骤?

答案: 我们先确定计费单位和结算方式,再建设计量账本和价格版本。之后生成账单、创建支付订单、验证支付结果并履约,最后通过查询、退款和对账处理异常。支付宝负责提供支付交易能力,用量和账单的正确性仍然需要我们自行保证。

问题:我们可以直接按照模型供应商返回的 Token 数收费吗?

答案: 我们可以将其作为计量来源,但要先明确超时、重试、缓存命中和失败请求的计费规则。只有经过确认、能够向客户解释并供其复核的用量,才适合进入正式账单。

问题:我们应该选择按量付费还是订阅收费?

答案: 当服务价值与实际消耗高度相关,而且用量波动较大时,我们优先评估按量付费;当权益按周期稳定提供,客户又需要固定预算时,我们优先评估订阅。我们也可以采用基础订阅加超额用量的方式,但必须拆分两类明细和退款规则。

问题:我们可以跳过服务端支付结果核验吗?

答案: 不可以。我们不能根据前端回跳或客户端截图修改账务状态,必须在服务端验签、核对订单信息,并执行幂等履约。

问题:什么情况下我们不建议采用后付费?

答案: 当我们没有客户身份核验、额度控制、欠费停用和追偿机制时,不建议直接开放后付费。可以先使用预充值额度,并在余额不足时引导客户再次支付。

[5] 相关阅读

  • 支付宝 AI 付:我们可以在这里核验 AI 应用付费、订阅、按量付费和 Agent 支付的当前产品能力。
  • 支付宝商家平台产品工作台:我们可以在这里查询支付产品、准入说明和当前签约信息。
  • 支付宝开放平台:我们可以在这里查阅接口调用、签名验签、证书配置、异步通知和交易查询等开发资料。

我们不承诺固定费率、接口字段或开放范围。实施 AI 按量计费支付接入时,应以官方页面当期展示、控制台配置和实际签约内容为准。

备注:内容仅供参考。