ARTICLE · INTELLIGENCE

战地情报 · 详情页

来自尧图项目组的一线实战观察与深度解析

AI智能体支付来袭:支付发起权转移与系统改造指南

AI智能体支付来袭:支付发起权转移与系统改造指南

万事达卡近期放出来的AI支付演示,我在支付后端这个岗位上看了不少年方案,很少有一场演示让我觉得整个业务链条都要重画一遍。演示的内容本身不复杂:用户给智能体布置一个采购任务,比如“预算600元,买一台带烘干功能的电吹风,优先本地商户,明天送到”,智能体自己去各商户端跑一圈,比参数、谈价格、争取赠品,然后在预算内把候选订单整理好,向支付侧发起一笔金额和收款方都明确的支付意向,用户手机弹窗确认后交易完成。这个过程里用户不再盯着网页比价,也不需要再输卡号、输验证码,他的角色从“下命令的执行者”变成了“只拍板的审批人”。只要你接触过支付接口设计、电商平台架构或者AI应用开发,都能从这场演示里看到自己系统需要补的东西,所以这篇文章我不会去复述演示视频里的画面,而是把背后真正变化的支付逻辑和技术链路拆开讲一遍。

1. 这场演示真正展示了什么:支付发起权的一次转移

1.1 把演示还原成业务场景

很多人在讨论这个演示时,重点都放在“智能体好聪明,会讨价还价”上,但站在支付从业者的角度看,真正的新闻是另一句话:发起一笔支付的决策权,第一次完整地从自然人手里移交给了机器。

还原一下演示的完整链条。用户先给智能体下达任务,注意这个任务不是“帮我买某件商品”,而是一个带约束的目标,比如“多少钱以内、什么时候要、优先什么渠道”。智能体接着去多个商户端比价,这里有个细节,它调用的不是网页,而是商户对外开放的结构化报价接口,拿到的是可以解析的商品、价格、库存和配送时效,然后它还需要在一定条件下尝试议价,比如满减、赠品、组合折扣。选定之后,智能体向支付侧提交一个支付意向,里面携带的是最终协商出的金额、明确的收款商户、订单摘要和一条任务说明。这时候用户的手机会收到一条确认消息,消息里不只是“你有一笔待支付”,而是完整展示商品名称、实付金额、商户名称、配送信息,用户核对无误后点确认,钱才真正划走。

整个流程走完,用户全程没有打开任何一个购物页面,没有输入过银行卡号,甚至不清楚智能体中间跟哪几家店谈过。他做的全部事情,就是在一笔交易的最后一个环节行使了一次审批权。这个变化放在十年前是不可想象的,因为过去的支付产品设计默认“付钱的人一定是一个握着手机、睁着眼睛、能看懂验证码的自然人”。演示把这个默认假设直接拆掉了。

1.2 它和自动扣款、代扣协议根本不是一回事

我听不少人说“这不就是自动扣款嘛,签约一次后面直接扣”,说这种话的人大概率没有细看链路。现有支付体系里最接近“机器发起支付”的两种形态,和演示里的模式有本质区别。

订阅自动扣款是固定的收款方、固定的周期、相对固定的金额,用户在一次签约中把全部授权都给完了,后面发生的交易更像流水线作业,金额和商户都不会动态变。代扣协议稍微灵活一点,比如水电煤代扣,金额可以浮动,但收款方是预先登记好的公共服务机构,范围非常窄。传统卡组织里还有一种商户发起的交易形态,用户先在某商户留存支付凭据,后续由商户主动扣款,这种模式的风险完全压在“用户对这个商户的信任半径”上,一旦商户拿到凭据,它能扣多少钱、扣几次,很大程度上靠事后账单来约束。

而演示里的智能体支付,是三个维度同时放开:收款方不固定,这次可能是A店,下次可能是B店;金额完全动态,取决于智能体和商户谈出来的结果;发起方不是商户也不是用户本人,而是用户授权的第三方智能体。这意味着支付机构面对的是一个此前不存在的实体,用户必须对“智能体”本身进行授权,而不是对某个商户口子授权。这就是我把它叫“支付发起权转移”的原因,钱还是用户的钱,账户还是用户的账户,但触发支付的那一下,变成了一个机器逻辑在做判断。

2. 技术底座:智能体凭什么能替人花钱

2.1 支付凭据:从卡到“受约束的授权额度”

要做到智能体替人花钱,第一件事是解决凭据问题。传统支付链路上,用户授权商户扣款,靠的是卡号、token或者贷记协议,这些凭据都是围绕“自然人和固定商户”设计的。智能体场景下,我们需要一种新的凭据概念,我倾向于叫它“受约束的委托授权”。

打个比方,过去给家政人员留门的方式,是把家里钥匙直接给他,他进得了卧室也进得了书房;智能体支付需要的不是这把万能钥匙,而是一张只对特定房间有效的临时门卡。这张门卡绑定的是用户的真实支付账户,但它带着一堆可执行、可撤销的限制:预算上限、商品类别白名单、商户白名单、有效期。智能体每一次想花钱,都必须拿着这张门卡通过支付侧的校验,校验不通过,就算智能体的对话逻辑里觉得自己特别需要这个东西,也一分钱都划不走。

在实现上,这个“门卡”对应的是一个新的凭据类型,可以理解为一组带签名的授权令牌,令牌里包含:发起方ID(对应某个智能体实例)、被代理的账户ID、策略版本号、有效期。支付机构在收到支付请求时,不是查“这笔交易有没有对应的持卡人授权”,而是查“这个智能体令牌有没有权限在此时此地花这笔数额的钱”。令牌本身的失效、挂失、额度调整,都要和银行卡挂失一样及时生效,用户一旦在App里点“冻结该智能体”,后续任何支付请求都必须被秒拒。

2.2 信任模型:小额自动过,大额人确认

凭据解决的是“能不能花”的问题,但“花得对不对”需要另一套信任模型来兜底。演示里用户只确认了最后一笔大额交易,那是不是所有交易都应该让用户确认?如果每笔都要确认,智能体的效率优势就消失了,它和用户自己手动下单也没什么区别;如果全都不确认,用户又怎么可能放心把账户交给机器。所以这里的关键不是二选一,而是分级。

我建议把交易分成三层。第一层是低风险小额交易,金额在用户设定的阈值以内,商户在类别白名单里,频率没有异常,支付侧自动放行,同时给用户推一条事后通知。第二层是中风险交易,比如金额超过单笔阈值,或者涉及不常购的类别,支付侧返回“需要用户确认”,把完整的支付真相推送到用户的手机App,用户点确认才执行。第三层是高风险交易,比如金额突然达到设置的上限附近、收款商户在历史记录里没有接触过、或者智能体在短时间内密集改换目标商户,这时候不仅需要用户确认,还建议叠加生物识别或者短信验证,当作一次小的“重新认证”。

这套信任模型要落地的关键点在于,风控判断不能只看金额,还要结合智能体的历史行为特征。一个每天最多买两杯咖啡的智能体,突然发起一笔数千元电子产品的支付,哪怕金额没超过单笔限额,也应该触发用户确认。支付侧要学的不是去理解智能体的“意图”,而是去监控它的行为一致性。

2.3 对账与清算:机器的账本不能按老规矩来

演示画面里看不到的部分,是交易完成之后的对账清算怎么处理。传统对账逻辑默认一笔交易对应一个人、一个订单、一张凭证,但智能体商务里,同一个用户可能同时让智能体执行多个任务,一个任务又可能拆成好几笔订单,比如为了凑满减分成两单。这时候用户收到的账单如果还是“一长串零零散散的交易流水”,人是根本看不过来的。

设计上需要引入“任务级聚合”的概念。每一笔支付都挂一个任务ID,对账单按任务维度聚合成条目,用户看到的是“任务A:采购吹风机,共支付568元,含一笔商品费、一笔运费”,点进去看明细才是拆开的交易流水。另外,智能体在和商户议价时可能产生“折扣”“赠品”这类非标准金额结构,清算报文的信息位需要扩展,至少要能承载原始报价、最终成交价、优惠类型这几个字段,否则后续对账时一旦金额对不上,你根本搞不清是商户改价了,还是智能体被话术带偏了。

还有退款通道的设计。传统退款是原路退回,智能体场景里原路退回仍然成立,钱要回到用户账户,但退款的通知不能只发给用户,还必须回给智能体,让它的任务状态从“已完成”翻转为“退款处理中”,否则智能体会以为东西还在路上,继续执行下一个关联动作,很容易造成后续逻辑混乱。

3. 想在真实系统里复刻?这是一条可落地的集成路径

3.1 支付意图接口:智能体向支付侧发起请求

演示归演示,真正要在自己的系统里把智能体支付接进来,第一步是给支付网关增加一个真正面向智能体的接口,我建议直接把它抽象成“支付意图”接口。为什么不是复用商户代扣或者签约接口?因为那些接口都隐含了“收款方是既定商户”的假设,而智能体请求的收款方每次都不一样,必须设计一套全新的入口。

整个流程可以这样拆。智能体先从商户侧拿到结构化报价,然后向支付网关发请求,请求体里需要包含智能体凭据ID、幂等键、金额币种、商户信息、订单摘要、任务说明。支付网关收到后,先校验凭据和策略,再走风控判断,随后返回三个可能的结果:approved(直接通过)、action_required(需要用户确认)、declined(拒绝并给出原因)。

下面是一次支付意图请求的简化示例:

{ "agent_credential_id": "agc_test_8f2a31c0", "idempotency_key": "task-20250415-b2c4", "amount": 56800, "currency": "CNY", "merchant": { "id": "mch_2024001", "name": "某本地生活商户" }, "order": { "summary": "吹风机一台(带烘干功能)+ 运费", "offer_id": "off_7e31a9" }, "policy_version": "pol_user_003", "reason": "日用品采购-任务20250415" }

几个字段必须着重说明。幂等键这个字段,智能体每次发起任务时要生成唯一值,如果请求超时重试,必须用同一个键,否则可能出现重复扣款。offer_id是把智能体看到的报价和商户最终结算价绑定起来的锚点,后续用户确认页显示的商品信息,必须来自支付请求里带过来的这份订单摘要,不能等扣完款再去商户页面现抓,那等于把唯一可信源交给了智能体的记忆,风险太大。reason字段看着不起眼,但它要做的事在风控上有用:智能体如果能说清楚“我为什么花这笔钱”,审计和争议处理时才有一条可追溯的线索。

3.2 把关键参数做成可配置策略

接口只是骨架,真正决定这个系统能不能放心用的是策略参数。我在模拟项目里跑通demo后做的第一件事,就是把所有限制条件从代码里拆出来,改成可配置的策略表,因为智能体的行为边界必须由账户所有人按需调整。

参数项建议默认值设计说明
单笔支付限额500元超过该值强制要求用户确认
单日累计限额2000元防止多笔小额绕开单笔限制
商品类别白名单生活用品、办公用品名单之外直接拒绝,不进入风控
商户名单模式白名单优先未登记商户需要用户单独批准
频次阈值同一商户10分钟内不超2笔防刷单和瞬时密集试探
授权有效期24小时支付意向超时自动作废
大额变动冷却期上一笔大额后5分钟降低连续试探风险
在线退款时效交易后30天超期走人工争议通道

这些默认值只是参考,真实生产里要根据业务的客单价分布来做统计,不能拍脑袋。比如你做的是商旅报销场景,单笔500元的限额就会把绝大多数机票挡在自动审批之外,智能体反而成了摆设;做成“类型相关限额”更合理,餐饮单笔300元、商旅单笔3000元、其他单笔200元,这样既保证灵活性,又不会让一个类别放开后就全面放开。

3.3 幂等、超时、重试:工程质量的生死线

接口层接好了,策略表配好了,接下来这些工程细节才是真正决定上不上得了生产的东西。我在这块踩过的坑,几乎全集中在三个问题上:重复扣款、过期未确认、并发抢额度。

重复扣款源于重试机制设计不严谨。智能体调用支付接口时网络超时,它拿不到结果,自然要重试,如果重试时没有带上同一个幂等键,网关就会把它当成新交易再扣一次。解决方式是把幂等键校验放在网关最前面,收到同样键值的请求时,直接返回第一次处理的结果,而不是重新执行扣款。第二个问题是授权有效期。支付意向不是一直有效的,用户可能去忙别的事,弹窗放了一小时才点,这时候如果还按原价执行,万一智能体选的商品已经调价了,就会造成金额争议。我建议超过15分钟未确认的支付意向直接作废,智能体需要重新拉取报价再发起一次,价格以最新确认为准。第三个问题是并发。一个智能体可以同时跑三四个任务,这几个任务可能在同一秒内都想预占同一笔账户余额,没有额度预占机制的很容易把账户扣穿。实作上要先做一个“额度冻结”动作,交易最终成功后解冻并扣减,失败则直接释放,这一步可以用数据库行锁或者独立额度服务实现,绝对不能靠着“下单后立刻扣款”的朴素思路硬扛。

4. 演示之外的真实坑:这些问题不会出现在宣传片里

4.1 智能体被“诱导消费”怎么防

这是我在好几个讨论群里看到最多人问的问题。智能体的对话逻辑本质上是模型推理,它会被商户的话术影响,比如商户说“今天下单立减200,但需要凑满800元整单”,智能体可能为了那一句“立减”就把预算从600抬到800,甚至还会被“赠品限量”这种话术刺激。更极端的场景是恶意商户挂一个低价链接吸引智能体下单,实际结算时偷偷抬高价格。

对策的核心思路就一句话:预算写在支付侧的策略服务器里,而不是写在智能体的提示词里。无论智能体的对话逻辑被什么话术带偏,它想在支付网关发起支付时,策略引擎都要重新校验金额是否在预算内、商户是否在白名单里、这个报价ID是否真实存在。就算智能体在对话里答应了800元,支付侧看到的是请求里的56800分,超过了类别限额,直接拒绝并把原因回传给智能体。同时要做价格一致性校验,请求里的金额、offer_id对应的商户报价、用户确认页展示的金额,三方必须保持一致,任何一环不一致,用户都可以作为拒付证据。

4.2 退货、退款、争议处理找谁

智能体替用户买错了东西,这个责任归属问题,演示里不会告诉你答案,但真实系统里躲不开。退货环节相对简单,退款原路返回用户账户,但通知必须同时发给智能体,更新它的任务状态。真正头疼的是争议处理,用户收到账单后说“这不是我要买的”,可明明这笔交易的用户确认记录在那里,到底算谁的?这时候就要翻授权证据链。

我在设计里强制要求每一笔智能体支付都归档一张关联表,包含任务ID、完整支付意向请求、用户确认记录、商户订单回执、智能体当时的任务上下文摘要。一旦发生争议,先看用户确认记录是否存在,如果确认存在且展示的信息与实付一致,争议就落到“商品实际价值与描述不符”这一类,走商户责任通道;如果确认记录缺失,那问题就出在支付侧,该赔就得赔。现实中有个容易被忽略的坑:智能体的任务上下文是模型输出的文本,不能被当作唯一证据,金额和订单信息必须从结构化请求里摘取,文本只能起辅助说明作用。

4.3 老支付链路对“无浏览器发起方”很不友好

这一点做支付的人最有感触。现有支付链路上大量流程都默认发起方是浏览器或者手机App里的自然人,比如动态口令校验、3D安全验证、扫码支付,核心都是“让一个真人完成某种交互动作”。智能体发起支付时,它没有浏览器,也没有手机号能收短信,如果按老链路走,整个支付流程会在“需要持卡人验证”这一步卡死。

解决方案是把验证动作移位,不做智能体侧验证,而是把需要人类确认的环节定向推送到用户已经绑定的App设备上。用户在设置智能体的时候,就指定一个“确认通道”,可以是手机App推送、智能手表甚至语音助手,所有需要人来拍板的动作都走这个通道,智能体本身永远没有能力独立完成关键验证。另外要注意一个兼容性细节,很多商户的风控系统看到未知的User-Agent会直接拦截或者要求网页验证,需要推动商户识别“智能体流量”的标识头,在风控规则里给这类请求单独开一条白名单路径,不然就算支付侧放行了,商户侧照样把订单挡回去。

4.4 测试环境里最容易翻车的几个点

模拟环境中跑这个链路,有几个坑几乎是每次必现。第一,忘了配置策略表中的限额,开发联调时自动化测试脚本可以在几分钟内把一个测试账户的额度彻底跑光,等到真要做压力测试才发现没有预算了。第二,幂等键形同虚设,很多开发图省事用时间戳当键值,一旦同一毫秒内发起两个请求就撞车,正确做法是用任务ID加动作序号拼一个全局唯一值。第三,模拟用户确认通道没有做,测试环境收不到App推送,导致所有需要确认的交易都卡在“等待用户”状态,排查半天以为是接口问题。第四,并发场景完全没有覆盖,两个任务几乎同时发起预占请求时,没有锁保护的额度服务会把同一笔余额扣两次。这些坑之所以普遍,是因为大家默认支付系统“单笔交易独立”,但在智能体场景里,多任务并发才是常态,测试场景必须先从这个前提变化出发。

5. 影响范围与下一步:谁该开始做准备

5.1 商户侧:先把自己的接口改成机器能读懂的

智能体要逛店,前提是商户有能被机器解析的报价接口。当前大量电商系统只有面向浏览器的页面和移动端H5,商品、价格、库存全都渲染在HTML里,智能体要么靠爬虫解析(不稳定),要么一脸懵。未来一段时间,会有越来越多的商户被倒逼着提供结构化商品接口、报价ID和订单状态查询接口。这不是什么高深技术,但适配成本不可忽视,老商户的订单管理系统要改的是数据开放方式,不是页面样式。配送地址是个绝对不能放松的环节,智能体可以替人选商品,但收货地址必须由用户预先绑定,智能体只有读取权限,没有修改权限,否则一旦智能体被诱导把商品寄到别处,追回来会非常痛苦。

5.2 钱包与平台侧:引入“智能体账户”体系

对于钱包App、银行App这类掌握用户账户入口的平台,现在最该启动的事是把“智能体账户”做成一个一级概念。用户可以像管理一张附属卡一样,创建多个智能体,给每个智能体独立命名、独立配额度、独立设权限,随时一键冻结某某个智能体。同时账单体系要升级成“按任务聚合”,用户不想看几十条流水,想看的是“这个月我的智能体一共替我花了多少钱,花在哪些任务上”。这里的经验是,别把智能体账户做成原账户的一个字段,否则后面想给它加策略、加日志、加撤销能力都得推倒重来,从数据模型上独立建模会省很多事。

5.3 风控与合规侧:模型特征和审计记录都要动

风控团队现在就要开始积累智能体维度的数据,传统交易风险评估看的维度是用户、设备、商户、金额、频次,智能体场景要多一个“发起方类型”维度,区分自然人、智能体和半自动程序。光有维度不够,还得有行为画像,比如“这个智能体日常任务耗时中位数、经常接触的商户类别、单均金额”这些特征,一旦偏离基线就触发人工审核。合规方面,监管最关注的会是授权真实性,每一笔支付必须有清晰的授权链路和可审计记录,不能因为发起方是机器就让“用户愿意付钱”这个事实变得模糊。谁先把“任务ID-用户确认-交易快照”这条审计链做完整,谁在监管沟通时就更从容。

5.4 个人开发者与架构师现在能做什么

如果你不是支付机构的,这套逻辑离你是不是很远?其实不远。任何一个正在做AI应用、想给应用加“行动能力”的开发者,都能从这套约束体系里抄作业。我给的建议是从最小闭环开始:用一个开源支付网关的沙箱环境,写一个本地智能体,给它配上200元日限额、一个商户白名单、把幂等键做好,然后让它自己去完成一个采购任务。第一次跑通之后,你会明显感受到一个区别:之前做AI应用,操心的是“模型能不能把话说对”;做完这套之后,操心的是“系统能不能在模型说错话的时候拦住它”。这种心智模型的转变,比任何架构设计都重要。

最后分享一个我自己的体会。我第一次在一个模拟环境里把智能体支付链路完整跑通的时候,最大的收获不是那套自动付款流程,而是我被迫把预算、限额、授权范围这些平时靠人脑拍板的事情全部显式化、系统化。那个过程很别扭,但恰恰是这种别扭逼着我把每一笔钱的来龙去脉都想清楚了。智能体商务真正难的地方,从来不是让机器学会下单,而是让机器的每一个决策都能被记录、被复核、被撤回。顺着这条线往后做,无论是支付机构、电商平台还是做AI应用的团队,都还有大量的硬骨头要啃,但也正因为如此,先动手的人才会拿到真正的先发优势。

RELATED READING

延伸阅读

更多一线实战笔记与深度复盘,助您持续精进