采购台账自动化(按量付费)
> 单次价格:¥1.00 | 计费单位:一次调用 | 货币:CNY
本 Skill 是一个 A402(HTTP 402 Payment Required)付费资源的买家侧接入包。
调用时若未付款,服务端返回 HTTP 402 与账单;付款后重试同一请求即取得结果。
一、这个 Skill 能做什么
发票/申请单/多家报价 → 结构化台账行 + 字段与推算口径。
| 模式 | 输入 | 输出 |
|---|---|---|
invoice |
发票或采购单据文本/字段 | 可直接粘贴进台账的结构化行 |
request |
采购申请单内容 | 申请条目行 + 归属分类 |
quote |
多家报价摘要 | 比价记录行 |
schema |
台账类型 | 字段定义与推算口径说明 |
核心特点:输出可直接粘贴进现有台账格式,字段顺序与列宽与你的台账模板一致,不是泛泛的"建议格式"。
前置:npm install -g @alipay/agent-payment,并确认 alipay-bot check-wallet 返回 status: bound。
(依赖安装与排错细节见 references/usage.md)
二、调用流程(三步)
第 1 步:probe —— 触发 402 账单
首次调用前生成配置(脚本自带模板,直接复制即可,不要去找别的路径):
cp scripts/config.example.json scripts/config.json
> config.json 需要按本次实际请求改写 body 字段;不存在时脚本会自动回退到
> config.example.json 或内置默认,不会因为配置文件缺失而报错。
node scripts/paid-runner.mjs probe \
--state-dir .state/my-session \
--session-id my-session
做什么:按配置里的 URL / 方法 / 头 / 请求体发起请求。
- 返回 200 → 已付款或免费,直接交付结果;
- 返回 402 → 提取 Payment-Needed 响应头,原样存为 .state/.../payment-needed.txt,
并输出账单摘要(商品名 / 收款方 / 金额 / 订单号 / 付款截止时间)。
输出示例:
{
"kind": "payment-required",
"summary": {
"goods": "采购台账自动化",
"seller": "(实际收款方以账单为准)",
"amount": "1.00",
"currency": "CNY",
"outTradeNo": "ORDER_...",
"payBefore": "2026-10-10T12:33:42+08:00"
}
}
👉 此时必须向用户展示商品名、收款方、金额、用途,并取得确认。
第 2 步:pay —— 用户扫码授权
node scripts/paid-runner.mjs pay \
--state-dir .state/my-session \
--intent-summary '原始请求:<用一句话说明这次要做什么>'
做什么:把账单文件与原始资源请求交给官方 CLI(alipay-bot 402-buyer-pay),
由 CLI 展示支付入口并等待用户扫码。
> ⚠️ 不得代扫、不得改写二维码/链接,必须原样交给用户。
> ⚠️ 支付后重试必须携带与 probe 完全一致的原始请求参数。
第 3 步:complete —— 查询并交付结果
node scripts/paid-runner.mjs complete \
--state-dir .state/my-session \
--out-shake-no 'ORDER_...'
做什么:用订单号查询原订单,继续原始资源请求。
服务端验证付款凭证后返回结果并完成商家履约确认。
成功路径不追加独立买家回执 —— 官方 CLI 取得非空资源后会自行按流程发送。
只有输出明确显示回执失败、且用户要求恢复时,才按官方文档处理;
绝不因回执失败要求用户重新付款。
三、结果展示
complete 返回的 JSON 应按业务语义格式化展示,保留原有的分节结构,
不要把所有内容压成一段话。
展示要求:
- 结论先行 —— 先给结论/推荐,再给明细;
- 每个数字可溯源 —— 保留原始返回字段,不要四舍五入后再展示;
- 风险单独列出 —— 不藏在表格里。
四、注意事项
- 价格以服务端账单为准。 本文档标注的 ¥1.00 是登记价;
实际金额以 402 响应里的amount字段为准,两者应保持一致。 - 不修改账单原文。
payment-needed.txt必须原样保存与传回,
解码仅供展示判断,不得改写后提交。 - 付款是高敏动作。 必须向用户清晰展示金额与用途并取得确认,
不得静默发起真实付款。 - 不实现自己的签名逻辑。 全部交给官方 CLI 与官方依赖。
- 直接运行脚本即可。 脚本会自行定位所在目录与配置,内置默认值;无需任何前置检查或环境准备。
- 询问用户意图时,选项不要超过 4 个。 部分宿主环境的选择工具会截断
超出的选项。本服务有 4 个模式,正好在上限内;若后续新增模式,请先分组再问。
更多资料
> 以下文件仅在需要深入排查时查阅,日常调用无需打开。
| 需要什么 | 看哪里 |
|---|---|
| 各模式的完整参数结构 | references/ledger-fields.md |
| 依赖安装、配置、环境变量、异常码 | references/usage.md |