# 计费

https://omnimodel.me/docs/billing?lang=zh

平台采用预付费：先充值，再按实际用量扣费。每个实例只用一种结算币种，价格、余额和账单都以这个币种显示。

## 余额从哪里来

- **充值**：在控制台「充值」页下单并通过在线支付完成，未支付的订单 30 分钟后自动关闭。
- **兑换码**：兑换后按兑换码类型计入充值余额或赠送额度。
- **赠送额度**：试用、活动发放的额度，带有效期，过期自动清零。

扣费时先用最快过期的赠送额度，再用充值余额。赠送额度只能用于目录里标注「可用赠送额度」的模型，也不能退款或开票。

## 怎么计价

价格按模型分别设置，并在[价格页](/pricing)和模型详情页公开：

| 模型类型 | 计价单位 |
| --- | --- |
| 文本、视觉、语音 | 输入、输出、缓存读取、缓存写入分别按每百万 tokens |
| 向量 | 每百万 tokens |
| 图片 | 每张 |
| 视频 | 每秒 |

- 每次调用在开始时锁定当时生效的价格版本，之后调价不影响这次调用的费用。新价格至少在设置 5 分钟后才生效，涨价时会发布公告。
- 价格没有单独设置缓存单价时，缓存 tokens 按输入单价计费；推理 tokens 已包含在输出 tokens 里，不重复收费。
- 每个计费项按「单价 × 用量」四舍六入五成双舍入到最小货币单位后相加。

## 什么情况不收费

- 调用失败或被取消不收费。
- 长时间没有收到结果回执、结果未知的调用不收费。
- 流式输出中途断开时，按已经产生的用量计费；拿不到准确用量时按估算计费，并在账单明细里标记「预估」。

## 余额不足与欠费

- 每次调用前，平台会按「输入估算 + 允许的最大输出」预估最高费用，可用余额覆盖不了时返回 `billing.insufficient_credit`（HTTP 402）。余额还剩一点时允许先放行一笔调用。
- 实际费用可能让充值余额变成负数，此时账户进入欠费状态，新的调用返回 `billing.in_arrears`（HTTP 403）。赠送额度不能抵扣欠费，充值补足到 0 以上即可恢复。
- 视频等媒体任务在创建时冻结预估费用，成功后按实际费用结算，失败或取消全额解冻。

## 退款与发票

- 只能退还订单中尚未消费的充值金额，申请时需要输入登录密码。
- 发票只针对已支付的充值订单开具；赠送额度不开票。

## 常见问题

### 调用失败会扣费吗？

不会。失败、取消以及结果未知的调用都不收费；流式输出中途断开时按已产生的用量计费。

### 调价会影响正在进行的调用吗？

不会。每次调用在开始时锁定当时生效的价格版本，按该版本结算。

### 赠送额度能用在所有模型上吗？

不能。只有目录里标注「可用赠送额度」的模型会使用赠送额度，其他模型直接扣充值余额。

### 余额变成负数了怎么办？

账户进入欠费状态，新的调用会被拒绝。充值让余额回到 0 以上即可恢复调用，赠送额度不能抵扣欠费。

