先分清三条“钱路”,别把它们混成一条
API 账单里出现的钱,至少有三类,处理方式完全不同:
| 类型 | 什么时候出现 | 会不会变成余额 | 怎么处理 |
|---|---|---|---|
| 手动购买 credit | 你点 Buy credits / Add to credit balance | 会,几分钟内到账 | 等几分钟,查负余额 |
| 自动充值(Auto-reload) | 余额低于阈值时自动触发 | 会,最低 5 美元一次 | 查阈值、卡、月度上限 |
| 5 美元临时授权 | 更新 API 支付方式时 | 不会,7 天内撤销 | 不要重复充值 |
很多人把第三类当成“充值失败又扣了一次钱”,于是再买一次,结果账单更乱。先把这三条分开,后面的排查才有意义。
充值流程里的五个数字
官方文档给的关键参数很固定:
- 最低购买 5 美元,默认金额 10 美元;
- Auto-reload 在开户时默认开启,可以在确认购买前关掉;
- 自动充值最低 5 美元,可设余额阈值、恢复到多少、以及每月充值上限;
- 购买的 credit 一年后过期,官方不能延长;
- trust tier 决定账户能持有的最大余额,也影响自动充值的单次上限。
流程本身不复杂:进对应组织的 API billing overview → Add payment details → 选首次购买金额 → 决定是否保留 Auto-reload → 设阈值/恢复金额/月度上限(可选)→ 确认购买。
两个容易忽略的点:
- 组织要对。 如果你有多个 organization,充到 A 组织的钱不会出现在 B 组织的余额里,请求也会继续报余额不足。
- 免费 credit 先用。 账户里如果有免费额度,会先消耗免费额度,再用你买的 credit。看到“余额没怎么动”不一定是没充进去。
到账延迟与负余额:最常见的“充值失败”
到账延迟:官方明确说,购买成功后余额更新可能需要几分钟。这个窗口里刷新页面、重复下单,是造成重复扣款的主要原因。
负余额:API 在余额耗尽后不会立刻停止,延迟期间处理掉的请求会形成负余额。下次充值会先抵扣这部分,于是出现“充了 10 美元,只增加 3 美元”。这不是手续费,是补之前的用量。
官方还有一句很重要的提醒:不要把预付费余额当成“瞬时消费开关”。余额见底和请求被拒之间有时间差,高并发场景下这个差会放大。
自动充值不触发:查四个地方
Auto-reload 的逻辑是“余额低于阈值 → 自动买一笔,恢复到设定金额”。它不工作时,按这个顺序查:
- 阈值设对了吗? 阈值高于当前余额才会触发;有人把阈值设成 5 美元,余额 6 美元,自然不动。
- 支付方式还有效吗? 卡过期、限额、银行拦截都会让自动充值失败,官方说失败会发邮件。
- 月度上限用完了吗? 如果设了每月充值上限,达到后本月不再自动充值,要等下个月。
- 金额达到最低 5 美元了吗? 自动充值最低 5 美元;如果剩余额度不足 5 美元,系统可能只加剩余额度,或干脆不加。
这里有个官方特别指出的坑:手动充值不计入月度上限。所以“我刚手动充成功”不能证明自动充值通道正常;如果你的月度上限已经用完,手动还能充,自动却不动,这是设计如此。
另外,如果自动充值会让总额超过剩余月度额度,系统可能只加“剩余额度”那部分(前提是达到最低购买要求)。看到金额不是整数,不要以为是算错。
支付真的失败时,会发生什么
分两种:
首次购买失败:你会看到错误,账户不会加任何 credit。这时问题在支付侧——卡类型、发卡地区、账单地址、3DS。排查顺序见 OpenAI API 绑卡失败。
自动充值失败:官方说会发邮件;预付费模式下,API 用量会在余额耗尽后停止(仍受前述处理延迟影响)。这时要同时检查支付方式和阈值,别只换卡不看设置。
还有一种情况:支付被争议或退款。官方说,一旦某笔付款被 dispute 或 refund,等额的 credit 会从账户里扣回。也就是说,退款不是“白拿余额”,争议期间账户可能直接变成负的。
余额为正却仍然失败:三套限制是分开的
这是最容易被误判的一类。官方明确说:正余额不代表请求低于所有限制。至少还有三层:
- 速率限制:RPM/TPM,超了返回 429;
- 组织月度使用上限:组织级的用量天花板;
- spend limit / 余额上限:由 trust tier 决定你能持有多少、能自动充多少。
所以错误码要先分清:
| 错误码/现象 | 含义 | 该做什么 |
|---|---|---|
credit_balance_exhausted | 预付费余额耗尽 | 充值;注意负余额会先抵扣 |
| 429 / rate limit | 速率限制 | 降并发、看 RPM/TPM,别充值 |
| 支付页报错 | 卡/地区/3DS 问题 | 按绑卡排查,不要重复下单 |
| 余额没变化 | 延迟、负余额、组织选错 | 等几分钟,查 billing overview |
| 自动充值没动 | 阈值/卡/月度上限 | 逐项核对设置 |
关于退款和过期,别抱错预期
- 过期:购买的 credit 一年后过期,官方不能延长。用量小的项目不要一次充太多。
- 退款:credits 通常不可退,例外是法律/合同要求,或核实后的账单错误、确认的未授权活动、确认的服务故障/错误账户限制;已使用的部分通常只在未授权使用或账单更正时才可能处理。
- 币种:API credits 只支持美元,不能像 ChatGPT 订阅那样选本地货币。
一张充值排查清单
- 确认充的是正确的 organization
- 充值后等几分钟再刷新
- 检查是否有历史负余额被抵扣
- 检查 Auto-reload 的阈值、恢复金额、月度上限
- 确认支付方式未过期、未被银行拦截
- 区分 5 美元临时授权与真实充值
- 分清
credit_balance_exhausted和 429 - 记录到期日,别让 credit 过期
API 充值的难点不在“付钱”,而在“钱进来之后账怎么算”。把手动购买、自动充值、临时授权三条线分开,再按“延迟 → 负余额 → 组织 → 限额”的顺序排查,绝大多数“充值失败”都能在不重复付款的前提下解决。