Skip to main content
出金(payout)会以当地货币向目的国的银行账户汇出资金。金额按您账户的 汇率(即 GET /v1/rates 返回的汇率)从当地货币折算为 USDT,并从您的 余额中扣除 usdt_amount + fee(如已配置固定费用)。 以下是完整的生命周期,包括每一步中您的余额发生的变化:

1. 查询可用通道

国家、货币和方式由 CBPay 定义。请始终查询目录:
可用的通道和方式: 可用性可能变化;目录(GET /v1/payouts/methods)始终是唯一可信来源。 如果某个国家只有一种方式,method 为可选。每种方式的计费方式相同: 您的汇率 + 固定费用。 对于银行转账,您还需要银行目录(收款人的 bank_code 即来自这里):

2. 创建出金

beneficiary 是一个键/值对象,其必填字段取决于具体通道(智利需要 RUT 和银行,墨西哥需要 CLABE,秘鲁需要 CCI,巴西需要 PIX 密钥等)。方式目录 对每个通道都有说明。
每笔出金都会自动将收款人保存为联系人 (发送 "save_contact": false 可跳过)。若要再次向其付款而无需重新输入 资料,请发送 "beneficiary_contact_id" 代替 beneficiary —— 系统将使用 其在该国家和方式下最近保存的收款人信息(若不存在则返回 422 no_saved_destination)。
响应 202 Accepted
此时您的余额已反映该笔扣款:total_debit 已从 available 转入 held(在 settlement_asset 对应的余额上)。
bank_reference —— 银行为该笔转账分配的交易编号。 US ACH/wire/SWIFT 在创建时立即返回 CBF(payout 保持 processing 直至银行确认);其他通道在完成前为空(""); 当出金状态变为 completed 时,它会带上目的地银行/通道分配的交易编号。收款人可使用该编号 与自己的银行核对付款。该字段同时出现在 payout_status_changed Webhook、PDF 回执、 出金 CSV 导出以及对账单中。

从其他余额支付(settlement_asset

默认情况下,扣款来自您的默认结算资产(除非您通过 PUT /v1/settlement 更改,否则为 USDT)。若要让单笔操作从其他余额支付,请在请求中加入 settlement_asset。示例:一笔 100,000 CLP 的出金从 BTC 余额支付,会经过 四次转换,全部记录在响应中:
  1. CLP → USDT,按您的汇率:100000 / 950.25 = 105.235465 USDT
  2. + 固定费用105.235465 + 0.30 = 105.535465 USDTtotal_debit)。
  3. USDT → BTC,按实际结算价格(settlement_rate 109029.34070000):105.535465 / 109029.3407 = 0.00096795 BTC (向上取整到聪)。
  4. 以 BTC 扣款并冻结settlement_amount 0.00096795 从您的 BTC 余额中扣除;收款人照常收到其 100,000 CLP,分毫不差。
如果出金失败,将向您的 BTC 余额退回精确的 settlement_amount —— 绝不重新报价。如果当时 BTC/GOLD 的执行价格不可用,您会收到 503 pricing_unavailable;波动性资产还有单笔操作限额 (422 settlement_limit_exceeded;可在 GET /v1/settlement 中查询)。

3. 接收最终状态

订阅 payout_status_changed 事件(webhooks):
  • completed:资金已到账;冻结金额被消耗。
  • failed:全部扣款自动退回(在您的账本中记为 payout_refund)。
您也可以随时查询:

出金状态

查询与历史记录

每笔出金都可以单独读取,列表接口支持筛选:
from/to 使用 YYYY-MM-DD(组织时区,两端均含);日期无效时返回 400 invalid_range

各国示例

每条通道均附有其精确的 beneficiary、完整的请求和真实的响应。汇率 (fx_rate)仅供参考 —— 实际始终采用 GET /v1/rates 返回的您账户的 汇率;扣款为 usdt_amount + fee(固定费用,如已配置;此处为 0.30)。

各通道的收款人字段

以 CLP 进行银行转账。需要 RUT、银行和账户:
银行目录(GET /v1/payouts/banks?country=CL)列出当前有效的 bank_code 值。

QR 出金

支付收款二维码(玻利维亚、巴西 PIX)现已拥有独立指南:

QR 出金

免费扫描二维码,向用户展示收款人信息,再通过第二次调用确认支付 — 按普通出金计费。

常见错误

立即拒绝与后续失败

如果处理方在创建时就拒绝了出金,您会收到 422,对象处于 status: failed,且退款已经完成。如果之后才失败(例如目标账户不存在), webhook 会以 status: failed 送达,自动退款也在那一刻发生。

解读失败出金的 status_code

无论哪种情况,退款均已完成 —— 可通过 账户流水中的 payout_refund 条目进行核实。
处于 processing 状态的出金无法通过 API 取消:通道已经在处理它。请通过 webhook 或 GET 等待最终状态 —— 它一定会到达,失败时会自动退款。

常见问题

创建时:payout 立即扣款并冻结资金。如果 payout 失败,精确的扣款金额 (含手续费)会自动退回。
不可以 —— 一旦派发到通道,它会自行解析为 completedfailed。订阅 payout_status_changed 获取最终状态。
创建时报价的汇率(以 fx_rate 返回),对该笔操作冻结。你约定的点差 已包含在汇率中。
可以 —— 设置账户级默认值(PUT /v1/settlement)或按笔用 settlement_asset 覆盖(USDC、BTC、GOLD)。退款返回精确的结算金额, 绝不重新报价。
受益人未通过合规筛查:payout 未被创建,你的 idempotency_key 也未 被消耗。请核对受益人信息或联系你的 CBPay 团队。
相同idempotency_key 重试:会返回原始 payout (idempotency_hit: true)—— 绝不会重复。新的 key 是一笔全新的独立 payout。
创建时就已经返回 bank_reference(CBF)。payout 保持 processing,直到银行确认人工付款。 监听 payout_status_changed 以获得 completedfailed(已退款)。该通道没有额外的收款人 AML hold。
最后修改于 2026年8月13日