# CBPay: Chinese API 参考

> CBPay developer documentation - fiat payouts and collections across Latin America, internal transfers, on-chain USDT and KYC.

## API 参考

### 合同

- [列出我的合同信封](https://docs.cbpayapp.com/api-reference/合同/列出我的合同信封.md): 返回当前认证账户成员所属的合同信封。
- [查询我的合同信封](https://docs.cbpayapp.com/api-reference/合同/查询我的合同信封.md)
- [签署我的合同信封](https://docs.cbpayapp.com/api-reference/合同/签署我的合同信封.md): 需要 owner/operator 人工会话、明确同意以及 `X-OTP-Token` 中的新 OTP。
- [下载我的合同 PDF](https://docs.cbpayapp.com/api-reference/合同/下载我的合同-pdf.md)
- [按公共验证码核验合同](https://docs.cbpayapp.com/api-reference/合同/按公共验证码核验合同.md): Grupo CB 框架合同真伪公开验证。无需凭证。验证码为字母 K 后接信封 ID 的 HMAC，印在最终 PDF 的验证区中，并以 verify_code 形式出现在信封 JSON 里。默认返回 JSON；当 Accept 头包含 text/html 时返回人工可读的 HTML 页面。无效验证码返回通用 404，不透露合同是否存在。按 IP 限流。

### 凭证

- [下载 payout 凭证(PDF)](https://docs.cbpayapp.com/api-reference/凭证/下载-payout-凭证pdf.md): payout 的品牌化 PDF 凭证,包含受益人数据、金额、状态徽章及签名验证 QR。非最终状态带对角水印。仅 payout 的所有者(或组织管理员)可下载。
- [下载 payin 凭证(PDF)](https://docs.cbpayapp.com/api-reference/凭证/下载-payin-凭证pdf.md): 收款的品牌化 PDF 凭证,包含参考号、金额、状态徽章及签名验证 QR。非最终状态带对角水印。
- [下载转账凭证(PDF)](https://docs.cbpayapp.com/api-reference/凭证/下载转账凭证pdf.md): 内部转账的品牌化 PDF 凭证(双方均可下载;对手方以显示名称展示)。
- [下载加密提现凭证(PDF)](https://docs.cbpayapp.com/api-reference/凭证/下载加密提现凭证pdf.md): 链上提现的品牌化 PDF 凭证,包含网络、目标地址、交易哈希及签名验证 QR。
- [下载加密充值凭证(PDF)](https://docs.cbpayapp.com/api-reference/凭证/下载加密充值凭证pdf.md): 已入账链上充值的品牌化 PDF 凭证。`depositID` 为 `GET /v1/crypto/transactions` 返回的 `deposit_id` 字段。
- [下载 swap 凭证(PDF)](https://docs.cbpayapp.com/api-reference/凭证/下载-swap-凭证pdf.md): 余额兑换的品牌化 PDF 凭证,包含兑换双边、适用汇率及签名验证 QR。
- [下载卡片消费凭证(PDF)](https://docs.cbpayapp.com/api-reference/凭证/下载卡片消费凭证pdf.md): 卡片交易的品牌化 PDF 凭证,包含商户、USD 金额、扣款余额及签名验证 QR。
- [下载银行操作凭证(PDF)](https://docs.cbpayapp.com/api-reference/凭证/下载银行操作凭证pdf.md): 银行操作的品牌化 PDF 凭证(金额、货币、交易对手、状态),附带签名验证 QR。适用于可追溯性镜像上线后创建的操作。
- [下载隔离钱包发送凭证(PDF)](https://docs.cbpayapp.com/api-reference/凭证/下载隔离钱包发送凭证pdf.md): 隔离钱包链上发送的品牌化 PDF 凭证,包含网络、目标地址、交易哈希及签名验证 QR。
- [下载隔离钱包充值凭证(PDF)](https://docs.cbpayapp.com/api-reference/凭证/下载隔离钱包充值凭证pdf.md): 隔离钱包收到链上充值的品牌化 PDF 凭证,包含网络、来源地址、交易哈希及签名验证 QR。
- [验证凭证真伪(公开)](https://docs.cbpayapp.com/api-reference/凭证/验证凭证真伪公开.md): 公开端点(无需凭证),对应每张凭证上打印的 QR。代码经加密签名:被篡改或伪造的代码返回 404 且 `valid: false`。响应展示操作的真实当前状态与金额——绝不展示受益人的个人数据。浏览器获得品牌化 HTML 页面;API 客户端获得 JSON。按 IP 限流。
- [获取交易的公开跟踪链接](https://docs.cbpayapp.com/api-reference/凭证/获取交易的公开跟踪链接.md): 返回你读取范围内任意交易的可分享公开跟踪链接,无需下载凭证 PDF —— 是 UI 中"分享链接"按钮的基础组件。`code` 与打印在每张凭证上的二维码使用同一个 HMAC 签名确定性代码,因此对同一交易重复调用始终返回相同链接;任何收到链接的人都可以在公开跟踪页面(`GET /v1/public/track/{code}`,Wise 风格:时间线、凭证 PDF 下载、三种语言)上跟进该笔交易。账户本身(API 密钥或成员会话)、组织管理员和平台管理员均可使用 —— 与凭证相同的读取范围。范围之外的交易(或未知的 `kind`)统一返回 404 而非 403:绝不泄露交易是否存在。
- [通过公开链接跟踪交易(公开)](https://docs.cbpayapp.com/api-reference/凭证/通过公开链接跟踪交易公开.md): 公开端点(无需凭证),对应每张凭证及凭证邮件上打印的可分享跟踪链接。代码经加密签名:被篡改或伪造的代码返回统一的 404。审核状态一律泛化为 `processing`(防提示)。`timeline` 按操作系列使用固定步骤序列,只携带真实时间戳(created/updated)——绝不伪造。`lang` 切换标签语言(托管页面默认 `en`,可选 `es`、`zh`)。所有响应携带 `X-Robots-Tag: noindex` 与 `Cache-Control: no-store`。与验证端点共享按 IP 限流。
- [从跟踪链接下载凭证 PDF(公开)](https://docs.cbpayapp.com/api-reference/凭证/从跟踪链接下载凭证-pdf公开.md): 公开端点(无需凭证),使用与认证端点相同的渲染器实时生成凭证 PDF,支持所请求的语言(`lang=es|en|zh`;中文以 Noto Sans SC 字体绘制)。与 JSON 跟踪器使用相同的签名代码。响应携带 `X-Robots-Tag: noindex` 与 `Cache-Control: no-store`。共享按 IP 限流。

### KYC / KYB

- [验证报告真伪（公开）](https://docs.cbpayapp.com/api-reference/kyc-kyb/验证报告真伪（公开）.md): 每份验证报告上印的二维码背后的公开端点（无需凭证）。验证码经加密签名 - 被篡改或伪造的验证码将返回 404 且 valid=false。响应仅暴露类型（KYC/KYB）、当前的决定状态及其日期 - 绝不暴露主体身份、文件或 AML 结果。浏览器收到品牌化 HTML 页面；API 客户端收到 JSON。按 IP 限流。
- [请求我的入驻验证链接](https://docs.cbpayapp.com/api-reference/kyc-kyb/请求我的入驻验证链接.md): 返回账户自己的身份验证链接(个人账户获得 KYC 链接,企业账户获得 KYB 链接——由账户类型决定)。托管向导涵盖完整流程:表单、文件上传与视频活体检测。免费。新的自助申请需要已确认的 TOTP 或已注册的通行密钥；开放链接会在此 gate 前重新返回，API key 自动化仍然豁免。若已存在开放链接则返回 200;已通过验证的账户返回 409 already_verified。在账户验证通过之前,所有资金流出操作返回 403 verification_required(充值与读取保持可用)。
- [下载我的验证报告（PDF/JSON）](https://docs.cbpayapp.com/api-reference/kyc-kyb/下载我的验证报告（pdfjson）.md): 由平台生成的您自身入驻验证的合规报告：已验证身份、生命周期、文件 + OCR、活体检测（每次会话一条记录 - 入驻门槛检查 加上后续任何证据补录，各自带有独立的 session_id 和 purpose），以及聚合的 AML 部分（制裁 / PEP / 负面媒体状态，绝不包含匹配明细）。使用 format=pdf（默认）或 format=json，以及 lang=en|es|zh。免费 - 验证本身在创建时已计费。PDF 上印有公开验证码 + 二维码，任何人都可在 /verify/reports/{code} 查验。
- [我的入驻验证状态](https://docs.cbpayapp.com/api-reference/kyc-kyb/我的入驻验证状态.md): 调用账户的有效验证状态。submission 会在核心服务有数据时返回面向账户且安全的可选详情： 待补文件、请求修改的评论、已收到的文件以及 documents_gate 汇总。如果核心服务只读刷新暂时不可用， 这些字段可能被省略；出于安全原因不会向申请人暴露拒绝原因。
- [列出 KYC 链接](https://docs.cbpayapp.com/api-reference/kyc-kyb/列出-kyc-链接.md)
- [为客户创建 KYC 链接](https://docs.cbpayapp.com/api-reference/kyc-kyb/为客户创建-kyc-链接.md): 仅限企业账户:为你的终端客户生成托管 KYC 链接。向导涵盖表单、文件与视频活体检测。若配置了固定 `kyc_verification` 费用则计费(创建失败退款);必须提供 `idempotency_key`——使用相同键重试会返回原始链接,绝不重复扣费。
- [获取 KYC 链接](https://docs.cbpayapp.com/api-reference/kyc-kyb/获取-kyc-链接.md)
- [列出 KYB 链接](https://docs.cbpayapp.com/api-reference/kyc-kyb/列出-kyb-链接.md)
- [为客户创建 KYB 链接](https://docs.cbpayapp.com/api-reference/kyc-kyb/为客户创建-kyb-链接.md): 仅限企业账户:为你的终端客户(企业)生成托管 KYB 链接。若配置了固定 `kyb_verification` 费用则计费(创建失败退款);必须提供 `idempotency_key`。`country` 决定向导通道:us、cl、ve、br、mx、co、pe、bo、py、ar 或 generic(需传 ISO alpha-2 的 `generic_country`,可选 `currency`)。
- [获取 KYB 链接](https://docs.cbpayapp.com/api-reference/kyc-kyb/获取-kyb-链接.md)
- [列出 KYC submissions](https://docs.cbpayapp.com/api-reference/kyc-kyb/列出-kyc-submissions.md)
- [通过 API 数据创建 KYC submission](https://docs.cbpayapp.com/api-reference/kyc-kyb/通过-api-数据创建-kyc-submission.md): 仅限企业账户:直接提交数据验证你的终端客户(无向导)。国家用 ISO alpha-3,日期用 YYYY-MM-DD,id_type 为 passport | id_card | drivers_license。创建时文件可选(通过 presign 流程上传);创建时无需活体检测——submission 会带 liveness_pending: true,用活体链接完成它。在 submission 开放期间用相同 external_customer_id 重新提交会更新它而不再次扣费。按固定 `kyc_verification` 费用计费;必须提供 `idempotency_key`。
- [获取 KYC submission](https://docs.cbpayapp.com/api-reference/kyc-kyb/获取-kyc-submission.md): 不含内部敏感数据的汇总状态:status、risk_band、pending_documents(合规要求补充的文件)、rejection_reason、changes_requested_comments、liveness_pending 和 documents_received。
- [列出 KYB submissions](https://docs.cbpayapp.com/api-reference/kyc-kyb/列出-kyb-submissions.md)
- [通过 API 数据创建 KYB submission](https://docs.cbpayapp.com/api-reference/kyc-kyb/通过-api-数据创建-kyb-submission.md): 仅限企业账户:直接提交数据以验证你的终端客户(企业)。请求体:external_customer_id、country?、business(公司字段)、ubos?、directors?、signers?、bank_info?、metadata?。按固定 `kyb_verification` 费用计费;必须提供 `idempotency_key`。在开放期间重新提交会更新同一份 submission 而不再次扣费。
- [获取 KYB submission](https://docs.cbpayapp.com/api-reference/kyc-kyb/获取-kyb-submission.md): 汇总状态:status、risk_band、pending_documents、rejection_reason、changes_requested_comments 和 aml_decision。
- [列出 KYC 文件 OCR 结果](https://docs.cbpayapp.com/api-reference/kyc-kyb/列出-kyc-文件-ocr-结果.md)
- [预签名 KYC 文件上传](https://docs.cbpayapp.com/api-reference/kyc-kyb/预签名-kyc-文件上传.md): 文件流程第 1 步:返回临时上传 URL。然后用相同 Content-Type 向 upload_url PUT 二进制内容(第 2 步)并确认(第 3 步)。类别:identity、proofOfResidence。类型:application/pdf、image/png、image/jpeg;最大 15 MB;URL 15 分钟后过期。
- [确认 KYC 文件上传](https://docs.cbpayapp.com/api-reference/kyc-kyb/确认-kyc-文件上传.md): 文件流程第 3 步。将已上传的文件附加到 submission 并将其 OCR 校验排队;结果通过 kyc_document_validated webhook 送达。
- [列出 KYB 文件 OCR 结果](https://docs.cbpayapp.com/api-reference/kyc-kyb/列出-kyb-文件-ocr-结果.md)
- [预签名 KYB 文件上传](https://docs.cbpayapp.com/api-reference/kyc-kyb/预签名-kyb-文件上传.md): 与 KYC 文件相同的 3 步流程。类别:legalPresence、ownershipStructure、controlStructure、companyDetails。
- [确认 KYB 文件上传](https://docs.cbpayapp.com/api-reference/kyc-kyb/确认-kyb-文件上传.md)
- [获取活体检测链接与检查状态](https://docs.cbpayapp.com/api-reference/kyc-kyb/获取活体检测链接与检查状态.md)
- [创建活体检测链接](https://docs.cbpayapp.com/api-reference/kyc-kyb/创建活体检测链接.md): 托管页面,你的客户在此仅完成视频活体检测(摄像头手势 + 服务端与已上传身份文件的人脸比对)。免费——服务已在创建 submission 时计费。若存在开放链接则返回同一个;若检测已通过,返回 400 liveness_already_completed。
- [您发起的 KYC 验证报告（PDF/JSON）](https://docs.cbpayapp.com/api-reference/kyc-kyb/您发起的-kyc-验证报告（pdfjson）.md): 您对客户发起的验证的完整合规报告（仅限企业账户）：已验证档案、生命周期、文件 + OCR、活体检测（每次会话一条记录 - 入驻门槛检查加上后续任何证据补录，各自带有独立的 session_id 和 purpose；在 KYB 中，每个关联方也可能有多次会话），以及包含匹配明细的完整 AML 筛查部分 - 您是您第三方数据的控制者。如果该 submission 是您自己的入驻验证，AML 部分将降级为聚合版本。使用 format=pdf（默认）或 format=json，以及 lang=en|es|zh。免费 - 读取已计费的验证。若该 submission 尚无关联的 AML 筛查，将按需幂等…
- [您发起的 KYB 验证报告（PDF/JSON）](https://docs.cbpayapp.com/api-reference/kyc-kyb/您发起的-kyb-验证报告（pdfjson）.md): 您对客户发起的验证的完整合规报告（仅限企业账户）：已验证档案、生命周期、文件 + OCR、活体检测（每次会话一条记录 - 入驻门槛检查加上后续任何证据补录，各自带有独立的 session_id 和 purpose；在 KYB 中，每个关联方也可能有多次会话），以及包含匹配明细的完整 AML 筛查部分 - 您是您第三方数据的控制者。如果该 submission 是您自己的入驻验证，AML 部分将降级为聚合版本。使用 format=pdf（默认）或 format=json，以及 lang=en|es|zh。免费 - 读取已计费的验证。若该 submission 尚无关联的 AML 筛查，将按需幂等…
- [下载已签名的合规报告(PDF)](https://docs.cbpayapp.com/api-reference/kyc-kyb/下载已签名的合规报告pdf.md): KYB 验证的已签名合规报告——供你自己的审计方使用的证据。免费(服务已在创建验证时计费)。

### Qscore

- [验证 Qscore 报告的真实性（公开）](https://docs.cbpayapp.com/api-reference/qscore/验证-qscore-报告的真实性（公开）.md): 公开端点（无需凭证），对应每份 Qscore 信用报告上打印的验证码。该代码经过加密签名： 被篡改或伪造的代码会返回 404 和 `valid: false`。响应仅显示非敏感事实：报告存在、 其评分等级（绝不返回数字分数）以及签发日期——绝不包含主体身份或信用详情。 浏览器获得品牌化 HTML 页面；API 客户端获得 JSON。按 IP 限流。
- [查询 Qscore 印章的当前有效性（公开）](https://docs.cbpayapp.com/api-reference/qscore/查询-qscore-印章的当前有效性（公开）.md): 公开端点（无需凭证），对应企业通过 `POST /v1/qscore/my-seal` 激活的 Qscore 印章。验证码经过加密签名：被篡改或伪造的代码返回 404 且 `valid: false`。每次调用都会实时 评估资格：仅当印章处于激活状态且主体仍符合条件（等级 A/B 且评估不超过 90 天）时才显示 等级（A 或 B）。不再符合条件的印章返回 `seal_status: not_current`——反预言机：绝不透露 降至的等级、数字分数或原因。数字分数绝不出现在任何公开界面上。浏览器获得品牌化 HTML 页面（`Accept: text/html`）；API 客户端获得 JSO…
- [可嵌入的 SVG 徽章，显示印章的实时状态（公开）](https://docs.cbpayapp.com/api-reference/qscore/可嵌入的-svg-徽章，显示印章的实时状态（公开）.md): 公开端点（无需凭证），将可嵌入的 Qscore 印章渲染为 SVG 图像（180x64， 深色背景）。当印章处于激活状态且主体仍符合条件时，徽章以绿色显示当前等级字母 （A 或 B）和 "VERIFICADO" 标签；否则，同一 URL 渲染灰色的 "NO VIGENTE" 徽章—— 绝不显示过期的等级，也绝不破坏宿主页面。`Cache-Control: public, max-age=300` （访问者可缓存图像最多 5 分钟）。仅对无效或被篡改的代码返回 404（空响应体）。
- [列出信用报告](https://docs.cbpayapp.com/api-reference/qscore/列出信用报告.md): 返回您账户的信用报告，按最新优先排序。`from` 和 `to` 日期过滤条件（组织时区， 两端均含）为必填。其他账户拥有的报告永不可见（所有权隔离：属于其他账户的报告 id 返回 `404 not_found`）。
- [创建信用报告](https://docs.cbpayapp.com/api-reference/qscore/创建信用报告.md): 为主体（个人或企业）签发一份新的信用报告，在签发时按独立费用 （`risk_report_person` / `risk_report_company`）计费。幂等性是强制的： 使用相同的 `idempotency_key` 重试会返回原始报告并带 `idempotency_hit: true`， 绝不重复收费。报告是同步计算的：响应通常是已完成的报告（status `ready`） 或失败的报告（status `failed`，带 `error_code`/`error_message`）。 `purpose` 字段为必填（数据保护法要求），`doc_id` 会按国家/地区验证并 规范化（例…
- [获取信用报告](https://docs.cbpayapp.com/api-reference/qscore/获取信用报告.md): 返回您账户拥有的信用报告的完整详情。当 `status` 为 `ready` 时嵌入完整的 规范化 `report` 对象；当为 `failed` 时，`error_code`/`error_message` 说明原因。 其他账户拥有的报告返回 `404 not_found`（所有权隔离）。
- [下载报告 PDF](https://docs.cbpayapp.com/api-reference/qscore/下载报告-pdf.md): 下载信用报告的品牌化 PDF，语言为签发时所用的语言（`lang`），并打印有 用于公开验证的 `verify_code`。仅在报告为 `ready` 时可用——否则返回 `404 pdf_not_ready`。PDF 按请求即时生成；如需不可变副本请自行保存。
- [获取您最新的自助信用报告](https://docs.cbpayapp.com/api-reference/qscore/获取您最新的自助信用报告.md): 返回已认证账户持有人最新的自助报告（任何状态），不生成新报告。 如果持有人从未生成过自助报告，则返回 `404 not_found`。当 `status` 为 `ready` 时，响应内嵌完整的规范化 `report` 对象；为 `failed` 时， `error_code`/`error_message` 说明原因。
- [生成您自己的信用报告（自助）](https://docs.cbpayapp.com/api-reference/qscore/生成您自己的信用报告（自助）.md): 生成（或复用）已认证账户持有人的 Qscore 信用报告——即 ARCO/数据保护法 规定的查阅本人信用信息的权利。与 `POST /v1/qscore/reports` 不同，此端点免费 （不收取任何费用），且主体身份来自已验证的账户：KYC/KYB 过程中验证过的 `tax_id`。请求不接受 `doc_id`——从设计上就无法通过此端点请求第三方的报告 （防预言机）。 频率限制：每 30 天生成一份新的自助报告。如果该时间窗口内已存在 `ready` 状态的自助报告，端点返回 `200` 及现有报告，并带 `idempotency_hit: true` （复用）；否则生成新报告并返回 `…
- [下载您自己的报告 PDF](https://docs.cbpayapp.com/api-reference/qscore/下载您自己的报告-pdf.md): 下载已认证账户持有人最新自助报告的品牌化 PDF，语言为签发时所用的 语言（`lang`），并打印有用于在 `GET /verify/qscore/{code}` 公开验证的 `verify_code`。仅在报告为 `ready` 时可用——否则返回 `404 pdf_not_ready`。 响应为二进制下载（`Content-Disposition: attachment; filename="qscore_self_<id>.pdf"`）。
- [查询我的 Qscore 印章状态](https://docs.cbpayapp.com/api-reference/qscore/查询我的-qscore-印章状态.md): 返回已认证账户的印章（没有则为 `null`）及其实时资格。激活的印章包含 `verify_code`、`verify_url` 和 `badge_url`；已撤销的印章仅保留 `revoked_at` （其 URL 永久失效）。个人账户始终收到 `seal: null` 和 `eligibility.reason: "companies_only"`。
- [激活我的可公开验证的 Qscore 印章](https://docs.cbpayapp.com/api-reference/qscore/激活我的可公开验证的-qscore-印章.md): 为经过身份验证的企业账户激活公开的 Qscore 印章。资格条件（实时评估）： 等级为 A 或 B，且评估时间不超过 90 天——否则返回 `seal_not_eligible`；本产品仅限企业 （个人账户返回 `seal_companies_only`）。无需请求体，设计上幂等：印章已激活时再次激活 返回 200 和当前印章及 `idempotency_hit: true`——绝不会创建重复印章。激活通知邮件将 发送给账户持有人（组织品牌）。
- [撤销我的 Qscore 印章](https://docs.cbpayapp.com/api-reference/qscore/撤销我的-qscore-印章.md): 撤销已认证账户的激活印章。立即生效且对该印章永久有效：其公开 URL 和 徽章切换为"无效"状态（URL 继续响应——绝不会破坏嵌入它的页面）。无法撤消， 但只要账户仍然符合条件，随时可以激活一个（不同代码的）新印章。撤销通知邮件 将发送给账户持有人（组织品牌）。
- [查询主体](https://docs.cbpayapp.com/api-reference/qscore/查询主体.md): 返回指定身份证件的主体记录（不会签发新报告，也不计费）。主体在首次为该证件 请求报告时自动创建。路径参数 `docId` 是签发的原始证件号（例如智利 RUT `12.345.678-5`）；它会按国家/地区验证并规范化。如果主体已有评分，最新的评分会汇总在 `last_score` / `last_band` / `last_score_at` 中（SC 等级时没有 `last_score`）。 主体不存在时返回 `404 not_found`。
- [主体的当前评分](https://docs.cbpayapp.com/api-reference/qscore/主体的当前评分.md): 仅返回主体的最新评分——用于经常性核查的轻量查询，无需签发（或付费） 新报告。如果尚未为该主体计算过任何报告，则返回 `404 no_score`。 对于 SC 等级（无数据），不返回 `score`。
- [列出主体的争议（ARCO）](https://docs.cbpayapp.com/api-reference/qscore/列出主体的争议（arco）.md): 列出为主体发起的 ARCO 争议（数据主体权利：信用数据的更正和删除）。 可按 `status` 过滤（`open`、`under_review`、`resolved_corrected`、 `resolved_rejected`）。争议生命周期由组织管理员面板操作，或由您的组织通过 `PATCH /v1/org/qscore/disputes/{id}` 管理；每次变更都会通过电子邮件通知请求人。 已解决的争议绝不会删除被争议的记录：更正是一条取代原记录的新记录。
- [发起争议（ARCO）](https://docs.cbpayapp.com/api-reference/qscore/发起争议（arco）.md): 针对主体的特定记录发起 ARCO 争议（例如不属于他们的债务或已偿还的债务）， 以符合数据主体的更正权。主体必须已存在（由首份报告创建）。`record_source` 标识被争议记录所属的数据源系列，`record_ref` 标识该来源内的记录 （两者在报告中显示为每个 tradeline 或不良事件的 `source` / `ref`）。 争议以 `open` 状态开始，其生命周期由您的组织管理。
- [获取争议](https://docs.cbpayapp.com/api-reference/qscore/获取争议.md): 返回您账户拥有的 ARCO 争议的详情和当前状态。其他账户拥有的争议返回 `404 not_found`（所有权隔离）。
- [获取某主体的监控订阅](https://docs.cbpayapp.com/api-reference/qscore/获取某主体的监控订阅.md): 返回你的账户对某主体的当前监控订阅，包含最近观察到的评分、记录数量以及上次检查 （`last_checked_at`）和上次告警（`last_event_at`）的时间戳。若无订阅则返回 `404 not_found`。
- [订阅某主体的监控](https://docs.cbpayapp.com/api-reference/qscore/订阅某主体的监控.md): 为你的账户创建或更新对某主体（个人或企业）的监控订阅。监控免费，但要求你的组织已购买该主体的 `ready` 报告——订阅的基线数据来自该已购报告。设计上（防预言机），不存在的主体与存在但未购报告的主体返回完全相同的 `403 report_required` 响应：本端点绝不会泄露某个证件号是否存在于信用局中。 订阅按（账户、主体）幂等：重复创建会返回已存在的订阅并保留其基线。`only_material`（默认 false）将 `new_records` 触发器限制为重大负面记录（未结催收、被拒付票据、破产、诉讼）。 `monitor_since_score`（1..999）配置 `sco…
- [取消订阅某主体](https://docs.cbpayapp.com/api-reference/qscore/取消订阅某主体.md): 停用你的账户对某主体的监控订阅（`active: false`）。不再发送 `risk_monitoring_alert` webhook；可通过 `PUT` 重新订阅。若无订阅则返回 `404 not_found`。
- [列出监控订阅](https://docs.cbpayapp.com/api-reference/qscore/列出监控订阅.md): 分页列出你账户的监控订阅（最新在前）。`page` 从 1 开始；`page_size` 默认 50（最大 200）。
- [列出批量评分任务](https://docs.cbpayapp.com/api-reference/qscore/列出批量评分任务.md): 列出您账户的批量评分任务（最新优先），分页返回。`page` 从 1 开始；`page_size` 默认为 50（最大 200）。`from` 和 `to` 日期筛选（组织时区， 均为包含）为必填。其他账户拥有的批次永不可见（按账户隔离：来自其他账户的 batch id 返回 404）。
- [创建批量评分任务](https://docs.cbpayapp.com/api-reference/qscore/创建批量评分任务.md): 创建异步批量评分任务（组合评分）：主体会预先校验，批次进入队列， 后台 worker 为每个有效条目生成一份完整的 Qscore 报告。发送 `subjects`（JSON 数组，1 至 5000 条）**或** `subjects_csv`（带有表头 `doc_id[,subject_type]` 的 CSV 字符串）——两者必须且只能提供其一。文档号无效（`invalid_doc_id`） 或批次内文档重复 （`duplicate_in_batch`，以其规范化形式报告）的行会在创建时被拒绝，并在 `rejected_items` 中报告； 批次只处理有效行。省略或未识别的 `subjec…
- [获取批量评分任务](https://docs.cbpayapp.com/api-reference/qscore/获取批量评分任务.md): 返回批次详情：实时计数器、`started_at` / `completed_at`，以及 批次本身失败时的 `error_code` / `error_message`。按账户隔离：来自其他账户的 batch id 返回 404。
- [列出批次条目](https://docs.cbpayapp.com/api-reference/qscore/列出批次条目.md): 返回批次的条目，分页返回。`status` 按条目状态筛选（`pending`、 `ready`、`failed`）。每个 `ready` 条目公开其 `report_id`、`score` 和 `band`； 每个 `failed` 条目公开 `error_code` / `error_message`。
- [将批次结果导出为 CSV](https://docs.cbpayapp.com/api-reference/qscore/将批次结果导出为-csv.md): 将批次结果下载为带有 UTF-8 BOM 的 CSV 文件（在 Excel 中正确 打开）。可见表头跟随账户 locale；单元格原始键为 `doc_id,subject_type,status,score,band,verify_code,report_id,error_code`。 `verify_code` 是报告的公开验证码（可在 `/verify/qscore/{code}` 使用）。失败的行带有其 `error_code`，没有分数。
- [列出授权同意链接](https://docs.cbpayapp.com/api-reference/qscore/列出授权同意链接.md): 分页列出您账户的授权同意链接（最新优先）。`from` 和 `to` 日期筛选（组织时区，首尾均含）为必填；`page` 从 1 开始；`page_size` 默认为 50（最大 200）。其他账户的授权记录永远不可见（账户隔离）。
- [创建授权同意链接](https://docs.cbpayapp.com/api-reference/qscore/创建授权同意链接.md): 为主体创建授权链接（Destacame 式授权同意流程）：您将获得可分享的 `consent_url`；若传入 `email`，平台会通过品牌化邮件将链接发送给持有人。持有人打开公开页面， 通过开放金融连接其银行并授权；已授予的授权会在其 Qscore 报告中解锁主体的正向银行数据。 `country` 和 `doc_id` 用于识别持有人（证件号会校验校验位）；省略 `subject_type` 时将从证件推断。依据数据保护法 `purpose` 为必填，此处不允许 `self_access`（持有人的 自助报告在 `POST /v1/qscore/my-report`）。`expires_…
- [获取授权同意链接](https://docs.cbpayapp.com/api-reference/qscore/获取授权同意链接.md): 返回授权详情。归属校验严格：属于其他账户的 id 返回 404。TTL 已过期的 `pending` 授权会在读取时惰性标记为 `expired`。
- [撤销授权同意链接](https://docs.cbpayapp.com/api-reference/qscore/撤销授权同意链接.md): 撤销授权（状态 `revoked`）并发出 `risk_consent_revoked` webhook。已被持有人决定的授权（`granted`，或已 `revoked`/`expired`）不能再次变更， 返回 `409 already_decided`。
- [列出调用者读取范围内的欺诈与身份报告。](https://docs.cbpayapp.com/api-reference/qscore/列出调用者读取范围内的欺诈与身份报告。.md)
- [创建并读取欺诈与身份报告。](https://docs.cbpayapp.com/api-reference/qscore/创建并读取欺诈与身份报告。.md)
- [读取一个欺诈与身份报告。](https://docs.cbpayapp.com/api-reference/qscore/读取一个欺诈与身份报告。.md)
- [下载私有欺诈与身份 PDF。](https://docs.cbpayapp.com/api-reference/qscore/下载私有欺诈与身份-pdf。.md)
- [读取公开的匿名季度 Qscore Index。](https://docs.cbpayapp.com/api-reference/qscore/读取公开的匿名季度-qscore-index。.md)
- [使用认证账户或读取范围读取 Qscore Index。](https://docs.cbpayapp.com/api-reference/qscore/使用认证账户或读取范围读取-qscore-index。.md)
- [无需认证验证欺诈报告代码。不返回 PII 或评分。](https://docs.cbpayapp.com/api-reference/qscore/无需认证验证欺诈报告代码。不返回-pii-或评分。.md)

### OTC Desk

- [OTC Desk 回调的 Telegram 机器人 webhook（由 Telegram 调用）](https://docs.cbpayapp.com/api-reference/otc-desk/otc-desk-回调的-telegram-机器人-webhook（由-telegram-调用）.md): 接收组织 OTC DESK 群的 Telegram Bot API 更新（BOB 库存报价的内联按钮 回调）。由 Telegram 调用，而非集成方：以 X-Telegram-Bot-Api-Secret-Token 请求头认证（fail-closed 403），按钮载荷带 HMAC 签名，重复投递按 callback id 收敛。业务结果恒返回 200（Telegram 不得重试）；503 表示 store 不可用，可安全重试。

### 签名证明

- [签名证明的公开验证(无需身份验证)](https://docs.cbpayapp.com/api-reference/签名证明/签名证明的公开验证无需身份验证.md): 通过其能力代码 `proof_code`(以 `G` 开头)公开验证钱包签名证明。  无需身份验证:持有链接的任何人都可以验证该证明。如果客户端请求 HTML  (`Accept: text/html`),则返回品牌化页面;否则返回 JSON。签名和消息哈希  会被公开,因为它们是公开证明的材料。
- [列出隔离钱包的签名证明](https://docs.cbpayapp.com/api-reference/签名证明/列出隔离钱包的签名证明.md): 分页列出账户某个隔离钱包所签发的签名证明。
- [使用隔离钱包签名消息](https://docs.cbpayapp.com/api-reference/签名证明/使用隔离钱包签名消息.md): 使用隔离钱包(`custody=cbpay`)按照链原生标准(ETH/EVM 为 EIP-191,  TRON 为 TIP-191)在防钓鱼 **CBPay Signature Proof** 封装内对消息进行签名。  证明将被持久化,并可在 `verify_url` 公开验证(无需身份验证)。
- [列出账户的签名证明](https://docs.cbpayapp.com/api-reference/签名证明/列出账户的签名证明.md): 分页列出账户的所有签名证明(隔离钱包和外部钱包链接),  支持日期过滤(`from`/`to`,`YYYY-MM-DD` UTC)和可选的 `purpose` 过滤。
- [签名证明详情](https://docs.cbpayapp.com/api-reference/签名证明/签名证明详情.md): 返回账户某个签名证明的完整详情,包括签名、消息哈希和公开验证链接。
- [吊销签名证明](https://docs.cbpayapp.com/api-reference/签名证明/吊销签名证明.md): 吊销签名证明:公开验证不再将其报告为有效。证明保留在历史记录中  (仅追加)。幂等:吊销已吊销的证明返回相同状态。

### 发卡方文档

- [下载发卡文档（内部）](https://docs.cbpayapp.com/api-reference/发卡方文档/下载发卡文档（内部）.md): 面向发卡方的内部 capability 端点，用于下载卡片申请审核附件。 HMAC 代码绑定到一个文件和一条 `card_application` 审核记录。无效或无关 的代码返回通用 404。本端点不供客户集成使用。

### 收银台(Checkout)

- [通用收款页面（公开）](https://docs.cbpayapp.com/api-reference/收银台checkout/通用收款页面（公开）.md): `POST /v1/payins` 使用 `method: "checkout"` 返回的 `checkout_url` 背后的公开品牌化 HTML 页面。付款人无需凭证即可打开，选择国家和法币方式、加密货币选项（专属充值地址 + 可扫描二维码）， 或通过商户的 CBPay 二维码/别名直接从 CBPay 应用付款；付款确认后页面自动更新。 令牌经加密派生；无效令牌返回 404。按 IP 限流。
- [通用收款状态（公开）](https://docs.cbpayapp.com/api-reference/收银台checkout/通用收款状态（公开）.md): 通用收款链接的 JSON 状态 — 供页面自身轮询，也供在同一链接上渲染自有支付前端的集成方使用。 显示状态、结算资产与金额、支付完成后的获胜方式、已冻结的法币报价（`fiat_methods`）、每个加密货币 充值地址的实时进度（应付金额与已收金额）以及自动兑换的 `conversion_status`。 无需凭证；按 IP 限流。
- [选择前报价收款链接（公开）](https://docs.cbpayapp.com/api-reference/收银台checkout/选择前报价收款链接（公开）.md): 在生成支付选项前获取通用收款链接的指示性报价 — 有可用法币方式的国家目录（不含银行卡， 见 `cards`）、在 `cards[]` 中按国家+币种单独列出的银行卡选项及其报价应付金额（同一通道可能接受 多种扣款币种，例如 BOB 和 USD）、每个加密货币选项的应付金额（付款资产与结算资产不同时已含兑换 成本），以及按已启用余额列出的 CBPay 直接付款金额。每个国家在 `options[]` 中列出其通道 — 每个方式+币种一行（同一国家可能以多种币种提供同一方式，例如 BOB 和 USD 的二维码），拉取式 方式带 `collect: true`（需要付款人在页面上填写数据，见 `P…
- [生成结账支付选项（公开）](https://docs.cbpayapp.com/api-reference/收银台checkout/生成结账支付选项（公开）.md): 延迟创建付款人在通用收款链接上选择的支付选项并返回其指引 — 银行卡/托管方式的支付 URL、二维码方式的二维码、银行转账的申报参考码，或带精确报价金额和可扫描二维码的专属加密货币 充值地址（`qr_payload` + `qr_png_base64` — 始终为 BTC/TRON/ETH 的裸地址， 钱包与交易所可直接读取；Binance 等会拒绝 BIP-21/EIP-681 URI）。法币方式必须传 `?country=XX`；本地金额在此刻报价并冻结。当国家以多种 币种提供同一方式时（见报价的 `options[]` — 例如 BOB 和 USD 的二维码，或银行卡通道）还须传 `&c…
- [请求拉取式收款的 OTP（公开）](https://docs.cbpayapp.com/api-reference/收银台checkout/请求拉取式收款的-otp（公开）.md): 用于通道按需向付款人发送一次性密码的拉取式方式（生成的支付选项中 `requires_otp_request: true`）。触发向付款人发送 OTP，并返回 必须随最终 `POST /pay/{token}/collect` 一起提交的 `otp_reference`。必须先生成该拉取式 支付选项；金额始终是那时冻结的金额。按 IP 严格限流（每次调用都是发给付款人的真实短信/推送）。 最终 collect 会在扣款前执行 screening；PEP/防火墙暂留返回 `202 in_review`，批准只释放审核而不会扣款。
- [用付款人数据执行拉取式收款（公开）](https://docs.cbpayapp.com/api-reference/收银台checkout/用付款人数据执行拉取式收款（公开）.md): 使用付款人在结账页面填写的数据执行已生成的拉取式选项的扣款 — 银行、证件号、电话或账户，以及 OTP（由付款人在其银行 App 中生成，或通过 `POST /pay/{token}/collect/otp` 请求并回传其 `otp_reference`）。 金额始终是生成支付选项时冻结的金额 — 付款人从不发送金额。若通道同步确认，链接在同一次调用 中完成结算（`paid: true`）；平台会在调用 core/通道前对付款人执行 screening。PEP 或防火墙暂留返回 `202 in_review` 且不会扣款；批准只释放 审核，客户端使用相同的幂等上下文重试。超时或 5xx 会让…

### 账户

- [获取平台品牌](https://docs.cbpayapp.com/api-reference/账户/获取平台品牌.md): 你所在平台的有效品牌(名称、颜色、base64 logo),让白标前端可从 API 自动取得主题而无需硬编码资源。`logo_url`/`symbol_url` 是同一批 logo 的公共 CDN URL——优先于 base64 载荷使用。只读,无 PII。 `timezone` 为组织的 IANA 时区（默认 `America/New_York`）：平台所有 `from`/`to` 日期过滤与每日分桶均按此时区解释。
- [获取我的账户](https://docs.cbpayapp.com/api-reference/账户/获取我的账户.md)
- [更新我的档案](https://docs.cbpayapp.com/api-reference/账户/更新我的档案.md): 身份验证获批后，`display_name`、`tax_id` 和 `country` 将由已验证的身份自动填充并锁定（`409 identity_locked`）；`phone` 仍可通过其专属验证流程修改。
- [列出成员](https://docs.cbpayapp.com/api-reference/账户/列出成员.md): 调用账户的登录成员(企业账户)。
- [添加成员](https://docs.cbpayapp.com/api-reference/账户/添加成员.md): 添加登录成员。仅企业账户可用。
- [创建 API key](https://docs.cbpayapp.com/api-reference/账户/创建-api-key.md): 签发绑定到调用账户的服务器间 API key。明文令牌(`pk_...`)只返回一次,之后无法再次获取。
- [已启用的服务](https://docs.cbpayapp.com/api-reference/账户/已启用的服务.md): 此账户当前可用产品的有效映射(payouts、payins、transfers、crypto、banking、kyc、cards)。服务停用时,其操作端点返回 403 service_disabled;读取及在途资金绝不受影响。可据此决定 UI 显示内容。
- [获取我的结算设置](https://docs.cbpayapp.com/api-reference/账户/获取我的结算设置.md): 返回你的操作(payouts 与服务费)默认从哪个虚拟余额扣款、payins 默认入账到哪个余额(`default_payin_asset`)、组织允许哪些资产,以及适用于波动性资产(BTC/GOLD/SILVER/PLATINUM)的单笔限额(USDT 等值)。
- [设置我的默认余额(payouts 与 payins)](https://docs.cbpayapp.com/api-reference/账户/设置我的默认余额payouts-与-payins.md): 更改你的默认余额。`default_settlement_asset` 是当请求未显式传 `settlement_asset` 时,payout 和服务费默认扣款的余额。`default_payin_asset` 是 payins 默认入账的余额——`USD`(主资产)直接以美分 USD 入账净额;其他目标则通过 swap 引擎按真实价格自动兑换净额,不收取额外 swap 价差(payin 已支付其手续费与汇率;checkout 与 POS 收款保留其链接资产)。可为 USD、USDT、USDC、BTC、GOLD、SILVER 或 PLATINUM(需组织启用)。可发送其中一个或两个字段。仅对…
- [更改我的密码](https://docs.cbpayapp.com/api-reference/账户/更改我的密码.md): 更改调用成员的密码。需要当前密码(通过社交登录创建且无密码的成员在此设置首个密码,`current_password` 留空);当 OTP 策略要求时,还需针对 `password_change` 操作的 `X-OTP-Token`。其他所有会话都会被吊销,并返回新的会话。
- [更改我的登录邮箱](https://docs.cbpayapp.com/api-reference/账户/更改我的登录邮箱.md): 发起登录邮箱变更。验证码会发送到新邮箱;用 `POST /v1/me/email/confirm` 确认。当 OTP 策略要求时,还需针对 `email_change` 操作的 `X-OTP-Token`。必须验证新邮箱——防止攻击者把登录指向其无法控制的邮箱。
- [验证我的当前邮箱](https://docs.cbpayapp.com/api-reference/账户/验证我的当前邮箱.md): 向成员当前邮箱发送验证码以标记其已验证(资金操作使用 email OTP 渠道的前提)。用 `POST /v1/me/email/confirm` 确认。
- [确认邮箱变更或验证](https://docs.cbpayapp.com/api-reference/账户/确认邮箱变更或验证.md): 使用收到的验证码确认待定的邮箱变更(或验证)。变更时会更新登录邮箱——所有者的账户联系邮箱也会更新——并通知旧邮箱。
- [我的个人资料 QR 码](https://docs.cbpayapp.com/api-reference/账户/我的个人资料-qr-码.md): 返回账户不可变的 QR 令牌、其载荷 URI(`cbpay:pay?to=<token>`)及可直接渲染的 PNG。QR 只允许他人向你付款;永不改变。
- [上传我的头像](https://docs.cbpayapp.com/api-reference/账户/上传我的头像.md): 上传(或替换)账户头像。请求体为原始图片字节(JPEG、PNG 或 WebP),最大 512 KB。内容类型从文件魔数检测,绝不依赖请求头。当图片发布到公共 CDN 时,`avatar_url` 为无需认证即可加载的绝对 URL;否则为需认证的 API 路径。
- [删除我的头像](https://docs.cbpayapp.com/api-reference/账户/删除我的头像.md)
- [获取账户头像](https://docs.cbpayapp.com/api-reference/账户/获取账户头像.md): 提供同组织内某账户的头像图片(用于转账和联系人中的收款人预览)。已发布到公共 CDN 的头像以 `302` 重定向到 CDN URL;旧头像直接提供。
- [按别名或 QR 解析收款人](https://docs.cbpayapp.com/api-reference/账户/按别名或-qr-解析收款人.md): 返回同组织内某账户的最简预览(别名、显示名称、类型、头像),用于发送前确认。提供 `alias` 或 `qr`(原始令牌或完整 `cbpay:pay?to=…` 载荷)。返回统一的 404 并限流以防枚举。
- [列出我的活跃会话](https://docs.cbpayapp.com/api-reference/账户/列出我的活跃会话.md): 列出成员的会话(设备),含 IP、user agent、登录方式,以及每个会话是否为当前会话。
- [吊销我的某个会话](https://docs.cbpayapp.com/api-reference/账户/吊销我的某个会话.md): 注销指定设备的会话。
- [吊销我的其他所有会话](https://docs.cbpayapp.com/api-reference/账户/吊销我的其他所有会话.md): 注销除当前会话之外的所有会话。
- [我的安全活动](https://docs.cbpayapp.com/api-reference/账户/我的安全活动.md): 账户安全事件的只增历史(登录、凭证变更、验证因素的添加/移除)。需要 `from`/`to` 日期过滤。

### 身份认证

- [注册账户](https://docs.cbpayapp.com/api-reference/身份认证/注册账户.md): 创建个人或企业账户及其所有者登录成员,并返回会话令牌。两种类型共用一个端点:`type` 只是数据。
- [获取测试模式 handoff 令牌](https://docs.cbpayapp.com/api-reference/身份认证/获取测试模式-handoff-令牌.md): 签发一个一次性令牌（有效期 60 秒），将当前 member 会话转移到测试 环境 —— 这就是控制台一键 test/live 切换的底层机制，无需再次登录， 也无需新的 OTP 验证。只有 live 环境签发 handoff，且只有 member 会话（JWT）可以请求：API 密钥永远不会跨环境（每个环境管理自己的 密钥）。
- [用 handoff 令牌兑换测试会话](https://docs.cbpayapp.com/api-reference/身份认证/用-handoff-令牌兑换测试会话.md): 仅限测试环境（live 始终返回 404）。将 live 环境通过 `POST /v1/auth/environment-handoff` 签发的一次性令牌兑换为测试 环境自己的会话。如果账户在测试环境尚不存在，会自动创建其镜像 —— 测试模式对每个用户始终存在。
- [登录](https://docs.cbpayapp.com/api-reference/身份认证/登录.md)
- [完成两步登录](https://docs.cbpayapp.com/api-reference/身份认证/完成两步登录.md): 用 `POST /v1/auth/login` 返回的 `pending_token` 加上通过 SMS/WhatsApp 收到的 OTP 验证码换取真正的会话令牌。pending token 10 分钟后过期,且自身永远无法调用 API。
- [续期会话](https://docs.cbpayapp.com/api-reference/身份认证/续期会话.md): 用一次性刷新令牌(`rt_…`,每次登录都会签发)换取一对新的 access token + refresh token,无需再次输入凭证。严格轮换:交换时会立即吊销该设备之前的 access token;若提交一个已被交换过的刷新令牌,会吊销该设备的整条令牌链 (防盗响应)并记录 `refresh_token_reuse` 安全事件。刷新令牌每次轮换有效 30 天,自最初登录起绝对上限 90 天;退出登录、吊销会话或修改密码也会使其失效。
- [请求密码重置验证码](https://docs.cbpayapp.com/api-reference/身份认证/请求密码重置验证码.md): 向成员邮箱(默认)或其已验证手机号(`channel:"sms"`)发送重置验证码。无论账户是否存在都返回 200 及相同响应体——防止账户枚举。用 `POST /v1/auth/password/reset` 完成重置。
- [用验证码重置密码](https://docs.cbpayapp.com/api-reference/身份认证/用验证码重置密码.md): 校验 `forgot` 发送的验证码并设置新密码。所有现有会话被吊销。单一通用错误(`invalid_code`)涵盖未知组织/成员/验证码,不泄露任何账户存在性信息。

### 社交登录

- [通过社交提供方登录或注册](https://docs.cbpayapp.com/api-reference/社交登录/通过社交提供方登录或注册.md): 令牌交换。前端获取提供方凭证(Google/Apple/Microsoft 的 `id_token`、Facebook 的 `access_token`)并提交到此处。API 向提供方验证后返回 CBPay 会话——首次使用时创建账户。遵守账户的登录 OTP 策略(可能返回 `otp_required`)。
- [列出已启用的社交提供方](https://docs.cbpayapp.com/api-reference/社交登录/列出已启用的社交提供方.md): 公开。返回该组织已启用的社交提供方及其 `client_id`,以便前端渲染正确的按钮。
- [列出我已绑定的提供方](https://docs.cbpayapp.com/api-reference/社交登录/列出我已绑定的提供方.md)
- [为我的账户绑定提供方](https://docs.cbpayapp.com/api-reference/社交登录/为我的账户绑定提供方.md)
- [解绑提供方](https://docs.cbpayapp.com/api-reference/社交登录/解绑提供方.md): 若这是唯一的登录方式(无密码且无其他已绑定提供方),将以 `409 last_login_method` 拒绝。

### 余额

- [获取余额](https://docs.cbpayapp.com/api-reference/余额/获取余额.md): 调用账户的十个独立虚拟余额(USD(主资产)、USDT、USDC、BTC、以纯金克数计的 GOLD、以纯银克数计的 SILVER、以纯铂金克数计的 PLATINUM,以及 2 位小数的法币余额 BOB、MXN、ARS)。每个受支持的资产始终存在,账户未使用过该货币时为零。若账户使用 Banking,其 BANK_USD/BANK_EUR 镜像余额也会列出,`custody` 标记为 `banking`(权威余额在银行;这些余额在平台内不可消费)。
- [获取余额历史](https://docs.cbpayapp.com/api-reference/余额/获取余额历史.md): 账户余额的每日演变,用于仪表盘图表:每个资产一条序列(每日收盘可用余额,无流水的日期沿用前值),外加一条按各日历史参考价对每个余额估值的 USD 汇总序列(USDT/USDC 按 1:1 平价;BTC/GOLD/SILVER/PLATINUM 与 USD/BOB/MXN/ARS 按当日价格)。包含期间总流入/流出及当前快照(可用 + 冻结),前端可据此渲染 Mercury 风格的余额卡片及其百分比变化。序列跟踪**可用**余额(冻结没有历史);`current` 携带今日各资产的 `held`。在历史价格存在之前用今日现价估值的日期会在 `spot_priced_dates` 中披露——绝不虚…
- [列出流水](https://docs.cbpayapp.com/api-reference/余额/列出流水.md): 调用账户不可变的账本历史。
- [获取我的外汇汇率与费用](https://docs.cbpayapp.com/api-reference/余额/获取我的外汇汇率与费用.md): 返回适用于调用账户的各国汇率——与操作执行时使用的相同(`local_amount / rate = USDT`)——以及账户的**有效**费用配置(组织默认值已与账户覆盖项解析合并),便于客户端在创建操作前计算确切成本。`rate` 为 payout(派发)侧,`payin_rate` 为 payin(充值)侧。当 `rate_source` 为 `lot` 时, payout 报价由该货币最早的开放 FIFO 批次支持；为 `spot` 时没有可用批次、使用 spot。 对于 USDT payin，启用的 payin FIFO 库存支持报价时 `payin_rate_source` 为 `…
- [获取外汇汇率历史](https://docs.cbpayapp.com/api-reference/余额/获取外汇汇率历史.md): 适用于调用账户的外汇汇率时间序列,用于汇率演变图表。每个点携带你在该时刻操作会得到的相同汇率——`rate`(payout 侧)和 `payin_rate`(充值侧)——且每个国家块包含 `first`、`last` 及二者之间带符号的 `change_pct`,可直接用于 "+3.4% / -3.0%" 徽章。`asset_prices` 携带 BTC 与 GOLD 的 USD 参考序列。无数据的桶沿用前值;历史开始之前的日期会被省略(绝不虚构)。
- [账户对账单(JSON、PDF 或 Excel)](https://docs.cbpayapp.com/api-reference/余额/账户对账单json、pdf-或-excel.md): 将期间内的全部流水——payouts、payins、加密充值与提现、内部转账及服务费——合并为一份可审计的对账单,并做精确对账:opening_balance + total_in − total_out = closing_balance,与账本核验(`balanced`)。摘要覆盖 USDT 余额；其他有活动的虚拟余额（USD、USDC、BTC、GOLD、SILVER、PLATINUM、BOB、MXN、ARS）在 `assets` 中独立核对。客户响应省略原始账本流水；请按产品分区对账，并使用 `GET /v1/movements` 进行深入审计。请求 `format=pdf` 或 `fo…

### 付款(Payouts)

- [列出 payouts](https://docs.cbpayapp.com/api-reference/付款payouts/列出-payouts.md): 返回调用账户的 payouts。
- [创建 payout](https://docs.cbpayapp.com/api-reference/付款payouts/创建-payout.md): 向本地银行账户派发法币。本地金额按**你账户的汇率**(与 `GET /v1/rates` 返回的相同)转换为 USDT;扣除 `usdt_amount` 加固定费用(如有配置)并冻结,直到派发完成。若失败,全额退款。
- [获取 payout](https://docs.cbpayapp.com/api-reference/付款payouts/获取-payout.md)
- [列出 payout 方式](https://docs.cbpayapp.com/api-reference/付款payouts/列出-payout-方式.md): CBPay 提供的可用 payout 通道(国家、货币、方式)。直接透传处理核心的目录。每一项都带 `availability`(`operational` | `degraded` | `down`)——通道的实时健康状态,便于你在渲染时 决定展示、提示或隐藏某个渠道(见服务状态指南)。没有事件记录的通道始终为 `operational`。 `sepa` 仅支持 EUR，并注册为一个 `EU` 路由走廊。受益人的实际国家以 IBAN 为准。GB 不在 SEPA Instant V1，GB IBAN 会在派发前以 HTTP 400 快速拒绝。
- [列出目标银行](https://docs.cbpayapp.com/api-reference/付款payouts/列出目标银行.md): 某国 payout 的银行目录。不带 `method` 时返回该国所有 payout 方式的银行并集(按代码去重);传入 `method` 可获取单一渠道的目录。部分方式没有银行目录(例如 QR),不贡献任何条目。
- [按 routing number 或 SWIFT/BIC 查询银行](https://docs.cbpayapp.com/api-reference/付款payouts/按-routing-number-或-swiftbic-查询银行.md): 从嵌入式公开银行目录自动补全收款银行——`routing_number`(9 位数字,仅限美国)与 `swift`(8 或 11 个字符;`XXX` 后缀会归一化为总行)二者必传其一。用于在付款人在 payout 或交易对手表单中输入 routing number 或 SWIFT/BIC 时自动识别银行:返回 404 表示"不在目录中", 表单保持手动填写即可。静态数据以 `Cache-Control: public, max-age=86400` 提供,可安全缓存一天。
- [扫描 payout QR(玻利维亚、巴西)](https://docs.cbpayapp.com/api-reference/付款payouts/扫描-payout-qr玻利维亚、巴西.md): QR payout 第 1 步——玻利维亚(本地互通 QR)与巴西(PIX QR,含 "copia e cola" 代码):读取收款 QR 并返回收款人数据及确认所需的 `provider_reference`。**免费**——确认步骤之前不会有任何扣款。默认玻利维亚;巴西请传 `country: "BR"` 和 `currency: "BRL"`。巴西支持**静态** PIX 二维码(内嵌收款密钥);动态二维码(载荷为 PSP URL)返回 `400`——请向收款人索取其 PIX 密钥并改用 `pix` 方式。扫码响应中 `amount` 为空表示该二维码为开放金额。
- [确认 QR payout(玻利维亚、巴西)](https://docs.cbpayapp.com/api-reference/付款payouts/确认-qr-payout玻利维亚、巴西.md): QR payout 第 2 步(玻利维亚与巴西/PIX),计费方式与常规 payout 完全相同:本地金额按**你账户的汇率**转换,扣除 `usdt_amount + 固定费用`。结果为**同步**——响应携带最终状态(`completed`,或 `failed` 并自动退款)。与所有资金操作一样需要幂等键。在玻利维亚,扫码引用为一次性(一个 QR = 一笔支付);在巴西,**静态 PIX 二维码天生可复用**——用不同的幂等键即可再次支付,失败的尝试绝不会作废该二维码。`amount` 始终必填;在巴西,若 PIX 二维码带固定金额,则必须与之完全一致——不一致时返回 `422`,出金处于…

### Payouts

- [上传付款支持文件](https://docs.cbpayapp.com/api-reference/payouts/上传付款支持文件.md): 上传 US/USD 通道对每笔出站转账（`ach`、`wire` 和 `swift`）都要求附带的支持文件（发票/收据）。以原始二进制正文发送，并携带其 `Content-Type`（PDF、PNG、JPEG、WEBP、TXT、CSV、DOC(X) 或 XLS(X)，最大 50 MB），文件名通过查询参数 `name` 传递。返回的 `document_key` 在创建付款（`POST /v1/payouts`）时作为 `options.supporting_document_key` 传递；可选的 `options.document_reference_number` 仅在 `ach`/`w…

### 收款(Payins)

- [列出 payins](https://docs.cbpayapp.com/api-reference/收款payins/列出-payins.md)
- [创建 payin(充值收款)](https://docs.cbpayapp.com/api-reference/收款payins/创建-payin充值收款.md): 需要已批准的账户身份；个人账户必须通过 KYC，企业账户必须通过 KYB，之后才能通过此认证操作创建或扣款 payin。 创建一笔法币充值。使用 `method: "qr"`(默认)会通过处理方生成主动 QR 收款——在玻利维亚为本地互通 QR,在巴西为动态 PIX QR,其 `charge` 携带 QR 图片和 "copia e cola" 载荷。使用 `method: "bank_transfer"` 会预告存款,响应携带付款人必须附上的参考号,以便到账转账被自动匹配入账——一个 12 位字母数字短码,适配任何银行附言字段(部分通道上限 20 个字符且不允许特殊字符)。使用 `method…
- [获取 payin](https://docs.cbpayapp.com/api-reference/收款payins/获取-payin.md)
- [列出 payin 方式](https://docs.cbpayapp.com/api-reference/收款payins/列出-payin-方式.md): 可用的 payin 通道。每一项都带 `availability`(`operational` | `degraded` | `down`) ——通道的实时健康状态(见服务状态指南)。
- [主动收款(pull)](https://docs.cbpayapp.com/api-reference/收款payins/主动收款pull.md): 需要已批准的账户身份；个人账户必须通过 KYC，企业账户必须通过 KYB，之后才能通过此认证操作创建或扣款 payin。 在支持 pull 收款的通道直接向付款人扣款。平台要求幂等键，并在调用 core/通道前对付款人执行 screening。对于 `VE/VES/c2p`，付款人生成的 `claveDinamica` 放在 `otp` 中；该方式不使用 `/v1/payins/collect/otp`。`debito_inmediato` 不是当前可用的通道。 PEP/防火墙暂留返回 `202 in_review` 且不会扣款；批准只释放审核，客户端使用相同的幂等 上下文重试。超时或 5xx…
- [请求收款 OTP](https://docs.cbpayapp.com/api-reference/收款payins/请求收款-otp.md): 需要已批准的账户身份；个人账户必须通过 KYC，企业账户必须通过 KYB，之后才能通过此认证操作创建或扣款 payin。仅为会在扣款前签发 OTP 的 pull 方式请求一次性密码。该步骤不属于 `VE/VES/c2p`，后者由付款人在 collect 请求的 `otp` 字段中提供 `claveDinamica`。
- [列出我的充值账户](https://docs.cbpayapp.com/api-reference/收款payins/列出我的充值账户.md): 列出绑定到调用账户的专属充值目的地。
- [创建专属充值账户](https://docs.cbpayapp.com/api-reference/收款payins/创建专属充值账户.md): 需要已批准的账户身份；个人账户必须通过 KYC，企业账户必须通过 KYB，之后才能通过此认证操作创建或扣款 payin。在支持的通道开通固定充值目的地。`purpose` 默认为 `fondeo`；`banking` 仅在 BO/BOB、MX/MXN 和 AR/ARS 的 `bank_transfer` 中保留本地法币。创建免费。
- [设置或重命名阿根廷银行别名](https://docs.cbpayapp.com/api-reference/收款payins/设置或重命名阿根廷银行别名.md): 为已有的 AR/ARS 银行转账充值账户设置调用方选择的可寻址银行别名。 平台会验证该工具属于已认证账户，并要求核心使用银行通道验证别名。 重复设置相同别名是幂等 no-op。此银行别名不同于 `PUT /v1/me/alias` 中根据已验证姓名派生的永久个人资料别名。
- [预览某通道的存款说明](https://docs.cbpayapp.com/api-reference/收款payins/预览某通道的存款说明.md): 返回你的组织为 `bank_transfer` 通道发布的银行账户文本 —— 与已宣告 payin 响应中自动嵌入的内容相同。可用于在付款人创建 payin 之前渲染 "钱应该汇到哪里"页面,或在静态页面上展示当前的存款说明。

### Payins

- [发起已公告银行存款的确认请求（maker）](https://docs.cbpayapp.com/api-reference/payins/发起已公告银行存款的确认请求（maker）.md): 两步确认的第一步：已公告的 EC/USD push bank_transfer 手动 payin。 It only accepts EC/USD/bank_transfer announced payins. 调用者是 maker：拥有 `ops:write` 的 org admin，且必须使用人工会话（API 密钥会被拒绝）。payin 保持 `pending`，不入账；由具名 god 通过兄弟接口批准或取消该请求。
- [批准确认请求并入账（checker）](https://docs.cbpayapp.com/api-reference/payins/批准确认请求并入账（checker）.md): 两步确认的第二步：与 maker 不同的具名 god 批准待处理请求并入账。无 body。若证据一致，重放已批准的确认会返回已入账的 payin 及 `idempotency_hit: true`。
- [取消待处理的确认请求（maker 或具名 god）](https://docs.cbpayapp.com/api-reference/payins/取消待处理的确认请求（maker-或具名-god）.md): 取消待处理的确认请求。maker 用自己的凭证取消；具名 platform god 可取消任何请求。无 body。不入账。请求不会过期——证据有误请显式取消。
- [列出某笔收款的退款](https://docs.cbpayapp.com/api-reference/payins/列出某笔收款的退款.md)
- [退款一笔卡片收款](https://docs.cbpayapp.com/api-reference/payins/退款一笔卡片收款.md): 将资金退还给持卡人，并冲销你余额中的入账。仅支持状态为 `credited` 的卡片收款 （其他通道返回 `refund_not_supported`）—— 且仅当其余额实际可用时：结算仍待处理的 已确认收款（`settlement_pending: true`，余额在 `settle_at` 到账）将以 `422 settlement_pending` 被拒。按毛额扣款：原收款的手续费与汇率点差 不可退还。`idempotency_key` 为必填；重放会返回同一笔退款并带 `idempotency_hit`， 绝不会向处理方发送第二次退款。调用方为会话时需要 OTP（API key 豁免）…
- [列出退款](https://docs.cbpayapp.com/api-reference/payins/列出退款.md): 账户的全部退款。可按 `payin_id`、`status`（`pending` | `completed` | `failed`）与 `kind`（`refund` | `void` | `chargeback`）筛选。
- [查询一笔退款](https://docs.cbpayapp.com/api-reference/payins/查询一笔退款.md)
- [退款凭证（PDF）](https://docs.cbpayapp.com/api-reference/payins/退款凭证（pdf）.md): 带公开验证码的品牌化 PDF 凭证。使用 `?lang=en|es|zh`（默认 `en`）。

### 转账

- [列出转账](https://docs.cbpayapp.com/api-reference/转账/列出转账.md): 列出账户的转账(已发送与已接收),最新在前。
- [创建内部转账](https://docs.cbpayapp.com/api-reference/转账/创建内部转账.md): 在两个 CBPay 账户之间划转余额,原子执行且始终免费——任意组合皆可:个人对个人、个人对企业、企业对个人或企业对企业。支持十个虚拟余额(USD、USDT、USDC、BTC、GOLD、SILVER、PLATINUM、BOB、MXN、ARS),且始终在**同一货币**的余额之间进行(不做兑换)。目标通过 `to_account_id`、`to_email`、`to_phone`(仅 OTP 已验证的手机号)或 `to_contact_id` 解析。每笔转账都会自动把收款人保存为联系人(用 `save_contact: false` 退出)。收款方的 webhook 订阅者会收到 `transf…
- [获取转账](https://docs.cbpayapp.com/api-reference/转账/获取转账.md): 返回单笔转账;仅其双方可见。

### 加密货币

- [创建链上提现](https://docs.cbpayapp.com/api-reference/加密货币/创建链上提现.md): 从其自身余额链上发送 USDT、USDC 或 BTC。支持的组合:`tron`/`USDT`、`eth`/`USDT`、`eth`/`USDC`、`btc`/`BTC`(GOLD 无链上通道)。`amount + 提现费` 原子扣除并冻结;最终状态通过 `crypto_withdrawal_status_changed` webhook 送达。`failed` 会全额退款。
- [获取提现](https://docs.cbpayapp.com/api-reference/加密货币/获取提现.md)
- [列出链上活动](https://docs.cbpayapp.com/api-reference/加密货币/列出链上活动.md): 调用账户的充值入账与提现。
- [列出我的钱包](https://docs.cbpayapp.com/api-reference/加密货币/列出我的钱包.md): 返回调用账户的所有钱包,最早在前。
- [补齐缺失的充值钱包](https://docs.cbpayapp.com/api-reference/加密货币/补齐缺失的充值钱包.md): 每个账户——个人和企业——每个受支持组合都恰好持有**一个充值钱包**(`tron`/`usdt`、`eth`/`usdt`、`eth`/`usdc`、`btc`/`btc`),注册时自动免费开通。充值钱包只用于**接收**加密货币并计入账户的虚拟余额:不能发送,也不能导出或导入(那是隔离钱包的功能)。本端点仅用于补齐缺失的组合(例外情况):组合已存在时对所有账户类型都返回 `422 wallet_limit_reached`。

### AML 筛查

- [列出 AML 筛查记录](https://docs.cbpayapp.com/api-reference/aml-筛查/列出-aml-筛查记录.md): 账户 AML 筛查历史（个人、企业及重新筛查），按时间倒序。需要 from/to 日期范围；支持分页与风险筛选。
- [提交 AML 筛查](https://docs.cbpayapp.com/api-reference/aml-筛查/提交-aml-筛查.md): 通过合规服务对个人或企业（由 payload 判定）进行制裁、PEP 与负面媒体名单筛查。仅名单筛查——带证件与活体核验的身份验证见 /v1/kyc 与 /v1/kyb。身份字段均为可选并完整转发；信息越完整结果越精确。若配置合规费用，调用前扣款，失败则退款。结果本地保存供审计（`GET /v1/aml/screenings`）。必须提供 `idempotency_key`——相同键重放返回原记录且 `idempotency_hit` true，不会重复扣费。
- [获取 AML 筛查详情](https://docs.cbpayapp.com/api-reference/aml-筛查/获取-aml-筛查详情.md): 筛查详情（含完整存储结果）。其他账户的 ID 返回 404。
- [下载 AML 筛查报告（PDF）](https://docs.cbpayapp.com/api-reference/aml-筛查/下载-aml-筛查报告（pdf）.md): 品牌化的筛查 PDF 报告 — 含决策封面、风险指标（制裁、观察名单、PEP、负面媒体等）、合并匹配、别名、术语表，以及列明所查国际数据源的最终背书章节。通过 `lang` 支持三语（默认英文）。纯读取 — 无费用、无幂等键。其他账户的 ID 返回 404。
- [重新运行 AML 筛查](https://docs.cbpayapp.com/api-reference/aml-筛查/重新运行-aml-筛查.md): 重新运行账户筛查，需先有筛查记录。若配置则收取 `compliance_rescreen` 费用，上游失败则退款。每次重新筛查写入历史（`GET /v1/aml/screenings`）。必须提供 `idempotency_key`——相同键重放返回原记录且不会重复扣费。
- [启用或停用 AML 监控](https://docs.cbpayapp.com/api-reference/aml-筛查/启用或停用-aml-监控.md): 切换账户已验证身份的持续合规监控。启用时若配置则收取 `compliance_monitoring` 费用；停用免费。需先有筛查记录。 每次状态变更写入审计历史（`GET /v1/aml/screenings`，筛选 kind monitoring）。状态实际变更时 必须提供 `idempotency_key`——相同键重放返回原事件且 `idempotency_hit` true。若已是目标状态则返回 unchanged true 且不扣费。
- [合规表单目录](https://docs.cbpayapp.com/api-reference/aml-筛查/合规表单目录.md): 返回前端构建一致的合规与验证表单所需的全部目录(value/label 对列表):性别、公司状态、地址类型、公司法律形式(全局列表加各国级联)、收入/财富来源、行业标准及其各国默认值,以及完整的 ISO-3166 国家和行政区划列表。静态数据——可安全缓存数小时。`value` 是发送给 API 的值;`label` 是展示用的文本。

### AML screening

- [按国家/地区获取城市目录](https://docs.cbpayapp.com/api-reference/aml-screening/按国家地区获取城市目录.md): 返回指定 ISO 3166-1 alpha-2 国家/地区的城市，按行政区划分组： `states` 的键与 `GET /v1/aml/catalogs` 中 `country_subdivisions` 的 ISO 3166-2 代码相同，`country_cities` 列出无法映射到行政区划的城市 （也应一并提供）。这两个字段永远不会是 `null`。没有覆盖的国家/地区返回 200 和空列表 —— 此时回退到自由文本的城市字段。静态数据，响应带 `Cache-Control: public, max-age=86400`，可以缓存一天。每个国家只需调用一次， 然后在客户端按州/省筛选。
- [按邮政编码查询城市和州/省](https://docs.cbpayapp.com/api-reference/aml-screening/按邮政编码查询城市和州省.md): 从嵌入式公开数据集将邮政编码解析为其城市和州/省——目前仅覆盖美国 ZIP 编码。用于在地址表单中用户输入 ZIP 时自动填充城市/州字段:返回 404 表示"未知 ZIP"(或该国没有数据集),地址字段保持手动填写即可。静态数据以 `Cache-Control: public, max-age=86400` 提供,可安全缓存一天。

### 钱包筛查

- [列出地址筛查](https://docs.cbpayapp.com/api-reference/钱包筛查/列出地址筛查.md): 账户的筛查历史,最新在前。需要 from/to 日期范围;支持分页与风险过滤。
- [筛查区块链地址](https://docs.cbpayapp.com/api-reference/钱包筛查/筛查区块链地址.md): 依托全球链上情报评估区块链地址的 AML 风险(受制裁实体、非法资金暴露),返回归一化的风险等级(Low/Medium/High/Severe)及完整证据。与网络无关:地址会一次性在所有受支持的链上评估;`chain` 仅用于标注你的记录。按固定 `address_screening` 费用计费(筛查失败自动退款),因此必须提供 `idempotency_key`——使用相同键重放会返回原始筛查并带 `idempotency_hit: true`,绝不重复扣费。需要启用 `screenings` 服务且账户验证已通过。
- [获取地址筛查](https://docs.cbpayapp.com/api-reference/钱包筛查/获取地址筛查.md): 某次筛查的详情,包含完整存储的评估。属于其他账户的 id 返回 404。

### 联系人

- [列出联系人](https://docs.cbpayapp.com/api-reference/联系人/列出联系人.md): 你账户的私人联系人簿,按收藏与最近使用排序。联系人由每次发送(转账、payout、加密提现)自动创建,也可手动增删改或导入手机通讯录。
- [创建联系人](https://docs.cbpayapp.com/api-reference/联系人/创建联系人.md): 手动添加联系人。电话号码会规范化为 E.164 格式(本地号码使用你账户的国家),并与你运营方的账户匹配以填充 `has_cbpay`。
- [导入手机通讯录](https://docs.cbpayapp.com/api-reference/联系人/导入手机通讯录.md): 每次请求最多上传 1,000 个联系人(超过请分页)。电话规范化为 E.164;已存在的联系人绝不重复;`has_cbpay` 告诉你哪些联系人已拥有你同一运营方的活跃账户(按电话匹配)。
- [获取联系人](https://docs.cbpayapp.com/api-reference/联系人/获取联系人.md): 联系人及其已保存的收款目的地(CBPay 账户、各通道的 payout 受益人、链上地址)。
- [删除联系人](https://docs.cbpayapp.com/api-reference/联系人/删除联系人.md): 删除联系人及其已保存的收款目的地。
- [更新联系人](https://docs.cbpayapp.com/api-reference/联系人/更新联系人.md): 部分更新(name、alias、phone、email、favorite)。更改电话会重新执行 CBPay 匹配。
- [为联系人添加收款目的地](https://docs.cbpayapp.com/api-reference/联系人/为联系人添加收款目的地.md): 手动保存可复用的收款目的地:`payout`(国家 + 方式 + 受益人)、`crypto`(链 + 地址)或 `cbpay`(要求联系人已关联)。目的地会去重:重复保存会刷新其最近使用时间。
- [删除已保存的收款目的地](https://docs.cbpayapp.com/api-reference/联系人/删除已保存的收款目的地.md)

### 兑换(Swaps)

- [swap 报价](https://docs.cbpayapp.com/api-reference/兑换swaps/swap-报价.md): 在你的 USDT、USDC、BTC、GOLD、SILVER 和 PLATINUM 余额之间兑换的免费指示性报价(任意交易对,源与目标不同)。你看到的汇率就是你账户的执行汇率——所见即所得,无额外费用。指示性:执行时使用 POST 当刻的价格(稳定币对保持稳定)。
- [列出 swaps](https://docs.cbpayapp.com/api-reference/兑换swaps/列出-swaps.md)
- [创建 swap](https://docs.cbpayapp.com/api-reference/兑换swaps/创建-swap.md): 在你的两种货币之间同步、原子地兑换余额——余额即时变动,资金从不离开你的账户(无需 OTP)。波动性交易对(BTC/GOLD/SILVER/PLATINUM)与 payouts 和卡片消费共享单笔及 24 小时交易量限额。必须提供幂等键:重放会返回原始 swap,绝不重复执行。
- [获取 swap](https://docs.cbpayapp.com/api-reference/兑换swaps/获取-swap.md)

### QR Crypto POS

- [列出 POS 商户](https://docs.cbpayapp.com/api-reference/qr-crypto-pos/列出-pos-商户.md): 账户（处理商）注册的商户分页列表。
- [注册 POS 商户](https://docs.cbpayapp.com/api-reference/qr-crypto-pos/注册-pos-商户.md): 注册一个商户（餐厅、酒店、门店），绑定一份已批准的第三方 KYC/KYB 验证 — 身份来自验证。fee_percent/fee_fixed 是处理商向商户收取的信息性佣金（按已支付收款和汇总计算；平台从不收取）。
- [获取 POS 商户](https://docs.cbpayapp.com/api-reference/qr-crypto-pos/获取-pos-商户.md): 商户详情。仅归属账户（或组织管理员）可读取。
- [更新 POS 商户](https://docs.cbpayapp.com/api-reference/qr-crypto-pos/更新-pos-商户.md): 更新 status（active/disabled — 停用的商户无法生成新收款）、信息性佣金与外部参考。身份不可编辑：以验证为准。
- [列出 POS 收款](https://docs.cbpayapp.com/api-reference/qr-crypto-pos/列出-pos-收款.md): 账户的收款，支持 merchant_id/status 筛选，日期范围必填 — 按客户对账的视图。
- [创建 POS 收款（带金额的加密货币二维码）](https://docs.cbpayapp.com/api-reference/qr-crypto-pos/创建-pos-收款（带金额的加密货币二维码）.md): 为商户创建带金额的加密货币二维码收款。契约与通用收款链接一致：amount + settlement_asset（缺省时用账户默认值）；顾客支付的应付额在创建时按二维码的加密货币报价（付款人承担兑换 — 你收到精确的目标金额）。响应携带专属充值地址、裸地址二维码（qr_payload + qr_png_base64）和冻结的应付额，POS 可直接使用。idempotency_key 必填：重试返回同一笔收款与同一地址。
- [获取 POS 收款（POS 轮询）](https://docs.cbpayapp.com/api-reference/qr-crypto-pos/获取-pos-收款（pos-轮询）.md): 供 POS 轮询的收款详情。pending 期间，若链上入账已检测到但尚未确认，响应附加 confirming:true + detected_amount（仅 UX 信号 — 入账在确认后发生）。部分支付累计在 received；过期收款收到的迟到支付同样入账并在此显示。
- [退款 POS 收款](https://docs.cbpayapp.com/api-reference/qr-crypto-pos/退款-pos-收款.md): 把（部分）已收资金退还给付款人，作为从账户余额发出的普通加密货币提现（持有、提现手续费与该通道全部合规控制）。to_address 必须显式提供 — 绝不自动退回入账来源。硬上限：退款总额绝不超过已收金额。idempotency_key 必填。
- [列出 POS 收款的退款](https://docs.cbpayapp.com/api-reference/qr-crypto-pos/列出-pos-收款的退款.md): 该收款的退款；每条状态跟随其提现生命周期（失败的提现退回扣款并释放上限）。
- [按商户的 POS 对账汇总](https://docs.cbpayapp.com/api-reference/qr-crypto-pos/按商户的-pos-对账汇总.md): 日期范围内按商户的汇总：收款计数、收款总额（已支付收款的目标金额）、处理商的信息性佣金、退款总额与应分配给每个商户的净额。

### Webhooks

- [列出 webhook 订阅](https://docs.cbpayapp.com/api-reference/webhooks/列出-webhook-订阅.md): 列出账户的 webhook 订阅(secret 永不返回)。
- [创建 webhook 订阅](https://docs.cbpayapp.com/api-reference/webhooks/创建-webhook-订阅.md): 订阅一个 HTTPS 回调以接收调用账户的事件。
- [停用或重新启用 webhook 订阅](https://docs.cbpayapp.com/api-reference/webhooks/停用或重新启用-webhook-订阅.md): 将账户的某个订阅在 `active` 和 `disabled` 之间切换。`disabled` 状态的订阅停止接收新事件；已排队的投递仍会发出。幂等：重复当前状态返回 `200` 且无变化。订阅永远不会被删除——停用即退订。强制执行归属权：其他账户的 订阅返回 `404`（与不存在的订阅无法区分）。

### 状态

- [服务健康状况](https://docs.cbpayapp.com/api-reference/状态/服务健康状况.md): API 及其数据库的公开健康检查。
- [公开状态页(HTML)](https://docs.cbpayapp.com/api-reference/状态/公开状态页html.md): 组织的托管品牌化状态页:每个支付通道的实时状态、90 天可用率与事件历史。公开访问(无需凭证), 可安全地分享给你自己的客户或嵌入你的产品。`orgToken` 是运营方分享的不透明令牌 (组织管理员在 `GET /v1/org/branding` 的 `status_page_url` 中读取完整 URL)。 令牌无效时返回 404。按 IP 限流。
- [公开状态数据(JSON)](https://docs.cbpayapp.com/api-reference/状态/公开状态数据json.md): 状态页背后的同一份数据,以 JSON 提供,供你自己的状态工具或监控使用:整体状态、 各通道状态及 90 天可用率,以及最近的事件历史(状态迁移)。公开访问,按 IP 限流。

### 隔离钱包

- [列出我的隔离钱包](https://docs.cbpayapp.com/api-reference/隔离钱包/列出我的隔离钱包.md): 列出调用账户的隔离钱包,最新在前。
- [创建隔离钱包](https://docs.cbpayapp.com/api-reference/隔离钱包/创建隔离钱包.md): 创建一个由调用方账户拥有的链上新钱包。其余额存在于链上(从不进入账本),并豁免于资金归集(treasury sweep)。支持的组合:`tron`/`usdt`、`eth`/`usdt`、`eth`/`usdc`、`btc`/`btc`。企业账户可创建不限数量的钱包;个人账户每个网络+资产组合限 **1 个**(创建第二个会返回 `422 wallet_limit_reached`)。可选的 `Idempotency-Key`(或请求体中的 `idempotency_key`)让重试安全:重复请求返回同一钱包,不会创建第二个。可能收取 `wallet_creation` 费用(创建失败退款)。
- [导入外部钱包](https://docs.cbpayapp.com/api-reference/隔离钱包/导入外部钱包.md): 通过提供 `private_key_hex` 导入你已控制的钱包。私钥只会传输至托管方,平台**绝不存储或记录**。需要带 2FA 的登录用户会话(API key 会以 `human_session_required` 被拒)、已验证账户和 OTP。收取 `wallet_import` 费用(若核心拒绝则退款)。
- [获取隔离钱包](https://docs.cbpayapp.com/api-reference/隔离钱包/获取隔离钱包.md)
- [获取实时链上余额](https://docs.cbpayapp.com/api-reference/隔离钱包/获取实时链上余额.md): 返回钱包的实时链上余额,包括原生 gas(TRX/ETH),以便判断能否支付网络费。
- [列出链上充值](https://docs.cbpayapp.com/api-reference/隔离钱包/列出链上充值.md)
- [列出链上活动](https://docs.cbpayapp.com/api-reference/隔离钱包/列出链上活动.md): 钱包的完整链上活动(充值与发送)。
- [列出钱包的发送记录](https://docs.cbpayapp.com/api-reference/隔离钱包/列出钱包的发送记录.md)
- [从钱包发送加密货币](https://docs.cbpayapp.com/api-reference/隔离钱包/从钱包发送加密货币.md): **从钱包本身**发送加密货币(真实源地址,由托管方签名)。必须提供 `idempotency_key`。gas 由客户承担:若钱包缺少原生 gas,发送会在任何扣费前以 `422 insufficient_gas` 被拒。可能收取 `wallet_send` 费用(从账户账本结算余额,绝不动用钱包链上资金;若核心拒绝则退款)。需要已验证账户和 OTP。发生歧义失败时发送保持 `pending`——用相同的键重试,绝不重复发送。
- [获取发送记录](https://docs.cbpayapp.com/api-reference/隔离钱包/获取发送记录.md)
- [导出私钥](https://docs.cbpayapp.com/api-reference/隔离钱包/导出私钥.md): 返回钱包的私钥(共享托管:导出后钱包在平台仍可操作)。这是本产品最敏感的操作:需要带 2FA 的登录用户会话(API key 被拒)、已验证账户,以及至少 20 个字符并保留在审计记录中的 `reason`。每次导出都会触发 `wallet_key_exported` webhook。收取 `wallet_export` 费用。
- [获取自动转发规则](https://docs.cbpayapp.com/api-reference/隔离钱包/获取自动转发规则.md)
- [配置自动转发](https://docs.cbpayapp.com/api-reference/隔离钱包/配置自动转发.md): 将到达钱包的一切转发到你的某个地址。因为会重定向未来资金,所以需要已验证账户和 OTP。

### 钱包链接

- [创建用于链接外部钱包的 nonce 挑战](https://docs.cbpayapp.com/api-reference/钱包链接/创建用于链接外部钱包的-nonce-挑战.md): 创建一个 nonce 挑战,用于将外部钱包(`custody=client`)链接到账户。  客户使用其钱包对 `envelope` 进行签名(ETH/EVM 为 EIP-191,TRON 为 TIP-191),  并将其发送到 `POST /v1/wallet-links/verify`。挑战在 10 分钟后过期,且只能使用一次。
- [验证挑战签名并链接钱包](https://docs.cbpayapp.com/api-reference/钱包链接/验证挑战签名并链接钱包.md): 验证 nonce 挑战的签名并将外部钱包链接到账户。钱包保持  `custody=client`:客户保留密钥,可在外部消费;链接仅证明地址的所有权。
- [列出已链接的钱包](https://docs.cbpayapp.com/api-reference/钱包链接/列出已链接的钱包.md): 分页列出链接到账户的外部钱包(`custody=client`)。
- [吊销钱包链接](https://docs.cbpayapp.com/api-reference/钱包链接/吊销钱包链接.md): 吊销外部钱包的链接。链接保留在历史记录中(仅追加),状态为  `revoked`。幂等:吊销已吊销的链接返回相同状态。

### 已保存卡片(Stored cards)

- [列出已保存的卡片](https://docs.cbpayapp.com/api-reference/已保存卡片stored-cards/列出已保存的卡片.md): 付款人在托管收银台保存的卡片（COF 规范）：仅展示数据（卡组织、末四位、有效期）— 卡号从不存在于本平台。按 `payer_reference` 过滤可向回头客展示其卡片。需要 `from`/`to`。
- [获取已保存的卡片](https://docs.cbpayapp.com/api-reference/已保存卡片stored-cards/获取已保存的卡片.md)
- [撤销已保存的卡片](https://docs.cbpayapp.com/api-reference/已保存卡片stored-cards/撤销已保存的卡片.md): 在上游撤销凭证并将镜像标记为 `revoked`（历史永不删除）。商户发起的扣款和已存卡支付立即失效。发出 `stored_card_revoked` webhook。
- [对已保存的卡片扣款（商户发起）](https://docs.cbpayapp.com/api-reference/已保存卡片stored-cards/对已保存的卡片扣款（商户发起）.md): 需要已批准的账户身份；个人账户必须通过 KYC，企业账户必须通过 KYB，之后才能通过此认证操作创建或扣款 payin。 在付款人不在场的情况下对已存卡扣款（卡组织 MIT 规范，引用原始经同意的 3-D Secure 种子交易）。`recurring: true` 用于固定周期的订阅扣款；false（默认）用于非定期扣款。需要 `idempotency_key` — 相同键的重试返回原 payin，绝不重复扣款。批准的扣款自动入账（`payin_credited` webhook）；被拒绝的扣款返回 422 且 payin 标记为 failed。

### 订阅(Subscriptions)

- [列出订阅](https://docs.cbpayapp.com/api-reference/订阅subscriptions/列出订阅.md): 你的订阅（org 管理员用 account_id 查看整个组织）。可按 status、stored_card_id 或 payer_reference 过滤。需要 from/to。
- [创建订阅](https://docs.cbpayapp.com/api-reference/订阅subscriptions/创建订阅.md): 需要已批准的账户身份；个人账户必须通过 KYC，企业账户必须通过 KYB，之后才能通过此认证操作创建或扣款 payin。 对已保存卡片的循环扣款（平台为你执行排期）。除非 start_at 为将来时间（试用），首个周期在创建时同步扣款。每笔扣款都是普通卡 payin（通过 payin_credited 入账）；被拒后每天重试最多 3 次，随后订阅变为 past_due。必须提供 idempotency_key（重试返回原订阅）。需要付款人的一张有效已存卡。
- [获取订阅](https://docs.cbpayapp.com/api-reference/订阅subscriptions/获取订阅.md)
- [暂停订阅](https://docs.cbpayapp.com/api-reference/订阅subscriptions/暂停订阅.md): 停止扣款（从 active）。恢复不会补扣错过的周期。
- [恢复订阅](https://docs.cbpayapp.com/api-reference/订阅subscriptions/恢复订阅.md): 从 paused 或 past_due 重新激活。从 past_due 会重试一次待处理周期（再次被拒则回到 past_due）。从 paused 且日期为将来则保留原排期（不提前扣款）。
- [取消订阅](https://docs.cbpayapp.com/api-reference/订阅subscriptions/取消订阅.md): 终态。撤销已存卡也会自动取消其订阅。

### 银行服务

- [获取我的银行档案](https://docs.cbpayapp.com/api-reference/银行服务/获取我的银行档案.md): 返回账户的银行档案及其实时验证状态。
- [创建我的银行档案](https://docs.cbpayapp.com/api-reference/银行服务/创建我的银行档案.md): 开通账户的银行档案(每个账户一次)。省略的 `type`/`name`/`email` 从 CBPay 账户自动填充。按固定 `banking_customer` 费用从 你的结算资产(USD 为主资产)计费;若通道拒绝则退款。 平台会为该账户/档案在核心生成确定性的幂等 claim。重复相同请求会返回原 customer，并带有 `idempotency_hit: true`，不会创建第二个档案或再次收取档案费用。相同账户修改 payload 会返回 `409 idempotency_conflict`。如果上游结果不明确，返回 `503 banking_recovery_pending`；…
- [上传验证文件](https://docs.cbpayapp.com/api-reference/银行服务/上传验证文件.md): 向银行档案上传一份 KYC 文件(base64)。免费。
- [提交我的档案送审](https://docs.cbpayapp.com/api-reference/银行服务/提交我的档案送审.md): 将银行档案送审。免费。通过 GET /v1/banking/customer 或 banking_customer_status_changed webhook 跟踪进度。
- [列出我的银行账户](https://docs.cbpayapp.com/api-reference/银行服务/列出我的银行账户.md)
- [开设银行账户](https://docs.cbpayapp.com/api-reference/银行服务/开设银行账户.md): 为已通过审核的档案开设银行账户(按启用情况每种货币一个)。按固定 `banking_account` 费用计费;若通道拒绝则退款。`data` 携带收款详情(账号/IBAN、routing、银行)。
- [获取银行账户详情](https://docs.cbpayapp.com/api-reference/银行服务/获取银行账户详情.md): 返回您某个银行账户的实时详情（名称、币种、状态以及接收资金所需的 要件 — 电汇与本地轨道 — 位于 `data` 字段下）。用于展示特定账户的 入金指引。 若银行无法实时返回该账户，接口将返回最近一次镜像快照，此时 `source` 为 `mirror`（正常情况为 `live`）。
- [获取银行账户余额](https://docs.cbpayapp.com/api-reference/银行服务/获取银行账户余额.md)
- [列出我的受益人](https://docs.cbpayapp.com/api-reference/银行服务/列出我的受益人.md)
- [登记受益人](https://docs.cbpayapp.com/api-reference/银行服务/登记受益人.md): 登记第三方受益人及其银行信息。免费;受益人账户需通过审核后才能接收 WITHDRAW 付款。
- [为受益人添加账户](https://docs.cbpayapp.com/api-reference/银行服务/为受益人添加账户.md)
- [银行付款报价](https://docs.cbpayapp.com/api-reference/银行服务/银行付款报价.md): 校验并报价一笔操作(费用、余额)而不划转资金。免费。
- [列出我的银行付款](https://docs.cbpayapp.com/api-reference/银行服务/列出我的银行付款.md): 您的银行操作历史，包括自动发现的入账存款和收费。列表项携带增强的中立视图：可选字段 direction、amount（净额十进制字符串——`in` 为入账金额，`out` 为净收费）、currency、counterparty 和 reference 仅在银行提供商报告时出现。
- [发送银行付款](https://docs.cbpayapp.com/api-reference/银行服务/发送银行付款.md): 执行 TRANSFER(你自己的银行账户之间)或 WITHDRAW(至已登记的受益人)。必须提供幂等键;使用相同键重试会返回原始操作而不重复扣费。按固定 `banking_operation` 费用计费;若通道拒绝则退款。最终状态通过 banking_operation_status_changed webhook 送达。 对于 EUR SEPA 提现，顶层 `beneficiary_*` 字段提供用于构建 provider payee 的结构化受益人身份。 这些字段对其他银行通道是可选的；如果 EU-SEPA 目的地没有可用的 payee 身份，API 返回 `400 invalid_pay…
- [获取银行付款](https://docs.cbpayapp.com/api-reference/银行服务/获取银行付款.md): 带实时状态的操作及增强的中立视图：可选字段 direction、amount（净额十进制字符串）、currency、counterparty 和 reference 仅在银行提供商报告时出现。
- [列出第三方 banking 用户](https://docs.cbpayapp.com/api-reference/银行服务/列出第三方-banking-用户.md)
- [注册第三方 banking 用户(仅企业)](https://docs.cbpayapp.com/api-reference/银行服务/注册第三方-banking-用户仅企业.md): 企业账户可将终端客户注册为独立的 banking 用户,并以其名义开设账户。需要第三方已通过(APPROVED)的 KYC/KYB 验证的 verification_id:类型由验证种类决定(KYC = INDIVIDUAL,KYB = COMPANY),身份数据从已验证的档案自动填充(显式字段优先),且已校验的文件会自动重新递交给 banking 提供方(documents_synced)。收取 banking 档案费用(若核心拒绝则退款)。个人账户返回 403 company_required。
- [获取第三方 banking 用户(实时 KYC 状态)](https://docs.cbpayapp.com/api-reference/银行服务/获取第三方-banking-用户实时-kyc-状态.md)
- [为第三方上传 KYC 文件(免费)](https://docs.cbpayapp.com/api-reference/银行服务/为第三方上传-kyc-文件免费.md)
- [将第三方送审(免费)](https://docs.cbpayapp.com/api-reference/银行服务/将第三方送审免费.md)
- [列出第三方的银行账户](https://docs.cbpayapp.com/api-reference/银行服务/列出第三方的银行账户.md)
- [为第三方开设银行账户](https://docs.cbpayapp.com/api-reference/银行服务/为第三方开设银行账户.md)
- [第三方的银行账户余额](https://docs.cbpayapp.com/api-reference/银行服务/第三方的银行账户余额.md)
- [列出账户的虚拟 IBAN 申请](https://docs.cbpayapp.com/api-reference/银行服务/列出账户的虚拟-iban-申请.md): Lists requests with pagination and the organization date window. `purpose` and `status` are optional filters.
- [申请 EUR 虚拟 IBAN](https://docs.cbpayapp.com/api-reference/银行服务/申请-eur-虚拟-iban.md): 为已认证账户申请一个持久化的虚拟 IBAN。`funding_usdt` 是默认用途； `banking_eur` 要求启用银行服务。平台从已批准的 KYC/KYB profile 自动 补全 registrant V3。下列证件和公司注册字段可选，并接受 snake_case 与 camelCase aliases。企业账户还接受 trading_website、business_activity、 is_micro_enterprise、expected_turnover 以及每位 UBO 的证件对 （ubo_{i}_document_issued_country、ubo_{i}_docu…
- [关闭一个已激活的虚拟 IBAN](https://docs.cbpayapp.com/api-reference/银行服务/关闭一个已激活的虚拟-iban.md): 在欧元通道关闭已认证账户的一个虚拟 IBAN。仅可关闭已分配地址的 active 行；调用幂等（已关闭的行返回 200 与当前状态），提供商 404 会收敛为本地 closed。关闭免费，且不退还分配费用。
- [列出当前账户的持久化企业钱包预留。](https://docs.cbpayapp.com/api-reference/银行服务/列出当前账户的持久化企业钱包预留。.md)
- [为已验证企业账户预留并读取专用 EUR 钱包。](https://docs.cbpayapp.com/api-reference/银行服务/为已验证企业账户预留并读取专用-eur-钱包。.md): Requires the Banking product, a verified company account and an idempotency key. Optional registrant overrides complete the approved KYB profile, including one document pair per UBO (ubo_{i}_document_issued_country, ubo_{i}_document_expiration_date, zero-based UBO index, camelCase aliases accepted):…
- [读取一个企业钱包；provider 暂时不可用时，处理中响应可能包含 sync_error。](https://docs.cbpayapp.com/api-reference/银行服务/读取一个企业钱包；provider-暂时不可用时，处理中响应可能包含-sync_error。.md)
- [读取激活企业钱包的实时 EUR 余额。](https://docs.cbpayapp.com/api-reference/银行服务/读取激活企业钱包的实时-eur-余额。.md)
- [按完整日期窗口列出钱包操作。](https://docs.cbpayapp.com/api-reference/银行服务/按完整日期窗口列出钱包操作。.md)
- [列出虚拟 IBAN 收到的操作](https://docs.cbpayapp.com/api-reference/银行服务/列出虚拟-iban-收到的操作.md): 只返回该虚拟 IBAN 的镜像操作，并要求完整日期窗口。

### 卡片

- [列出卡片](https://docs.cbpayapp.com/api-reference/卡片/列出卡片.md): 账户凭证列出该账户的卡片;组织管理员凭证列出组织内的全部卡片(可用 `account_id` 过滤)。
- [创建卡片](https://docs.cbpayapp.com/api-reference/卡片/创建卡片.md): 发行一张卡片(虚拟或实体),以 Just-In-Time 方式从账户中央余额按卡片的消费资产扣款(`spending_asset`:USDT/USDC 与 USD 1:1,或 BTC/GOLD/SILVER/PLATINUM 按每笔事件当时价格转换;默认 USD)——无需预充值:每笔消费都实时对照可用余额和卡片自身限额授权。个人账户最多持有 **1 张有效卡并有 1 条开放申请**；新实体卡发行暂时不可用；已经发行的实体卡继续正常使用;企业账户可创建**不限数量**的卡片,为企业本身或指定人员(例如员工,传入其身份文件)。若配置了 `card_creation_virtual` / `card…
- [获取卡片](https://docs.cbpayapp.com/api-reference/卡片/获取卡片.md)
- [更新限额、消费资产或冻结/解冻](https://docs.cbpayapp.com/api-reference/卡片/更新限额、消费资产或冻结解冻.md): 更新卡片的消费限额(传 "0" 移除限额)、更改其扣款余额(`spending_asset`,仅影响之后的消费)以及冻结或解冻。冻结的卡片会即时拒绝所有授权。
- [激活实体卡](https://docs.cbpayapp.com/api-reference/卡片/激活实体卡.md): 确认持卡人已收到实体卡。仅限 `pending_activation` 状态的卡片。
- [注销卡片](https://docs.cbpayapp.com/api-reference/卡片/注销卡片.md): 永久注销卡片(不可逆)。若配置了 `card_cancellation` 费用则计费(0 = 免费);若上游注销失败则退款。
- [显示 PAN 与 CVV](https://docs.cbpayapp.com/api-reference/卡片/显示-pan-与-cvv.md): 返回卡片的敏感数据(PAN、CVV、有效期),一次性透传以展示给持卡人。只有所属账户可调用(组织管理员不可)。**绝不存储或记录此响应**——平台同样不持久化(PCI)。
- [列出卡片交易](https://docs.cbpayapp.com/api-reference/卡片/列出卡片交易.md): 消费及其生命周期:`authorized`(实时冻结)、`settled`(清算确认)、`reversed`(已撤销,资金退回同一余额)和 `declined`(附原因:insufficient_funds、card_limit_exceeded、card_frozen……)。`spend_asset` / `spend_amount` 显示该消费扣了哪个余额及该资产的金额;`amount_usd` / `amount_usdt` 保持 USD 参考值。当运营商配置了按笔消费手续费(`card_purchase_virtual` / `card_purchase_physical`)时,`fe…
- [职业目录](https://docs.cbpayapp.com/api-reference/卡片/职业目录.md): 发卡方官方职业代码(指定个人持卡人时用于 `occupation` 字段)。用 `q` 搜索(匹配代码或标签)。使用 `code` 值;自由文本职业会以 400 invalid_occupation 被拒。
- [商业活动目录](https://docs.cbpayapp.com/api-reference/卡片/商业活动目录.md): 发卡方官方经济活动代码(创建企业持卡人时用于 `kind_of_business`)。用 `q` 搜索。使用 `code` 值;自由文本会以 400 invalid_kind_of_business 被拒。

### 安全(OTP)

- [我的 OTP 策略](https://docs.cbpayapp.com/api-reference/安全otp/我的-otp-策略.md): 调用账户的有效 OTP 策略——功能是否启用、哪些操作需要验证码及通过哪个渠道,外加(打码的)手机号及其验证状态。
- [列出我的 OTP 挑战](https://docs.cbpayapp.com/api-reference/安全otp/列出我的-otp-挑战.md)
- [请求 OTP 验证码](https://docs.cbpayapp.com/api-reference/安全otp/请求-otp-验证码.md): 通过为该操作配置的渠道向账户手机号发送一次性验证码。需要用户会话(JWT)——API key 会收到 `403 session_required`。适用每小时发送限制。
- [获取 OTP 挑战](https://docs.cbpayapp.com/api-reference/安全otp/获取-otp-挑战.md)
- [校验验证码](https://docs.cbpayapp.com/api-reference/安全otp/校验验证码.md): 校验通过 SMS/WhatsApp 收到的验证码,返回授权受保护操作的一次性 `otp_token`(放在 `X-OTP-Token` 请求头中发送)。每个挑战 5 次尝试。
- [我的 2FA 偏好设置](https://docs.cbpayapp.com/api-reference/安全otp/我的-2fa-偏好设置.md): 显示账户的有效 2FA 策略,并按操作标明是否被组织锁定(组织策略是账户不可低于的下限)。
- [更新我的 2FA 偏好设置](https://docs.cbpayapp.com/api-reference/安全otp/更新我的-2fa-偏好设置.md): 允许账户所有者配置自己的 2FA。你随时可以加固(启用操作、切换到更强渠道:totp > email > sms/whatsapp),但绝不能低于组织下限。弱化(停用已启用的操作或降低渠道)需要针对 `security_settings` 操作的 `X-OTP-Token`。选择 `channel:totp` 需要已注册验证器应用。通过电话渠道(`sms`/`whatsapp`)为 `login` 操作启用 2FA 时,账户电话号码必须已验证(完成任意 SMS/WhatsApp OTP 挑战);否则请求会被拒绝并返回 `409 phone_verification_required` — 防止…

### 分析

- [用于仪表盘的账户摘要](https://docs.cbpayapp.com/api-reference/分析/用于仪表盘的账户摘要.md): 一次调用即可获得账户全部流水的汇总视图:总流入/流出、交易笔数、新增 banking 用户、按服务划分的分区(payouts、payins、充值、提现、transfers、swaps、cards、banking、verifications、aml、contacts)及其维度(国家、货币、方式、状态、链、商户)、服务支出与估值后的余额。金额为 USD 十进制字符串;空桶以零填充。仅限账户凭证。

### 通行密钥

- [开始无密码通行密钥登录](https://docs.cbpayapp.com/api-reference/通行密钥/开始无密码通行密钥登录.md): 启动 WebAuthn 可发现凭证登录仪式。将返回的 `options.publicKey` 传给 `navigator.credentials.get()`,并把结果发送到 `finish`。挑战为一次性,2 分钟后过期。
- [完成无密码通行密钥登录](https://docs.cbpayapp.com/api-reference/通行密钥/完成无密码通行密钥登录.md): 校验验证器断言并签发会话。通行密钥本身已是双因素(设备 + 生物识别),因此此登录不经过登录 OTP。
- [我的身份验证器应用状态](https://docs.cbpayapp.com/api-reference/通行密钥/我的身份验证器应用状态.md): 身份验证器应用(TOTP)是否激活及剩余备份码数量。
- [移除我的身份验证器应用](https://docs.cbpayapp.com/api-reference/通行密钥/移除我的身份验证器应用.md): 停用 TOTP。需要有效的验证器(或备份)码,并遵守组织下限——若组织强制要求验证器应用,则无法移除。
- [开始注册身份验证器应用](https://docs.cbpayapp.com/api-reference/通行密钥/开始注册身份验证器应用.md): 生成 TOTP 密钥并返回 `otpauth://` URI 及可在 Google Authenticator / Authy 中扫描的 QR PNG。需要当前密码(若成员设有密码)。用 `POST /v1/me/totp/confirm` 确认。
- [确认并激活身份验证器应用](https://docs.cbpayapp.com/api-reference/通行密钥/确认并激活身份验证器应用.md): 使用第一个有效验证码激活 TOTP,并返回 10 个一次性备份码(仅显示一次)。
- [重新生成备份码](https://docs.cbpayapp.com/api-reference/通行密钥/重新生成备份码.md): 签发一组新的备份码并作废之前的。需要有效的验证器码或备份码。
- [列出我的通行密钥](https://docs.cbpayapp.com/api-reference/通行密钥/列出我的通行密钥.md)
- [开始注册通行密钥](https://docs.cbpayapp.com/api-reference/通行密钥/开始注册通行密钥.md): 启动 WebAuthn 注册仪式。需要当前密码(若成员设有密码)——绝不从被盗会话添加新的登录因素。将 `options.publicKey` 传给 `navigator.credentials.create()`。
- [完成通行密钥注册](https://docs.cbpayapp.com/api-reference/通行密钥/完成通行密钥注册.md): 校验 attestation 并以友好名称保存通行密钥。
- [移除通行密钥](https://docs.cbpayapp.com/api-reference/通行密钥/移除通行密钥.md): 移除通行密钥。需要当前密码(若成员设有密码);若它是仅剩的登录方式则被阻止。

### Account

- [设置由已验证姓名派生的个人资料别名](https://docs.cbpayapp.com/api-reference/account/设置由已验证姓名派生的个人资料别名.md): 一次性设置账户的永久公开别名。该别名由账户已通过 KYC/KYB 验证的姓名派生，不能自由选择。request body 可选；如果提供 `alias`，必须等于由该已验证姓名派生的候选值之一。设置后不可更改。
- [我的交易审核](https://docs.cbpayapp.com/api-reference/account/我的交易审核.md): 账户被交易防火墙挂起的资金操作（付款、加密货币提现、收款、银行转账）及其审核状态。可按 `status` 和日期范围（`from`/`to`，组织时区，均含边界）过滤。当审核进入 `info_requested` 时，请通过 `POST /v1/me/txn-reviews/{reviewID}/files` 上传所需文件——在合规团队作出决定前，该操作将保持挂起状态。
- [审核详情](https://docs.cbpayapp.com/api-reference/account/审核详情.md): 账户某条审核的详情，包括信息请求消息（`info_request`）和已上传的文件。内部挂起原因和合规备注绝不对外暴露（防止通风报信）。被拒绝的审核还会包含 `decision_note`（与拒绝邮件相同的文本）和 `decided_at`。
- [为信息请求上传文件](https://docs.cbpayapp.com/api-reference/account/为信息请求上传文件.md): 为处于 `info_requested` 状态的审核上传证明文件。以原始二进制形式发送请求体，携带对应的 `Content-Type`（PDF、PNG、JPEG、WEBP、TXT、CSV、DOC(X) 或 XLS(X)，最大 50 MB），并在 `name` 查询参数中提供文件名。上传文件后，审核将回到 `in_review` 状态，等待合规团队重新评估。 可选 query 参数 `category` 使用固定的 banking 文档词汇。省略时文件仍会显示在审核中，但不能同步到 banking provider。文件可在 `info_requested`，或此前 request-info 后…
- [下载您上传的文件](https://docs.cbpayapp.com/api-reference/account/下载您上传的文件.md): 下载账户此前为该审核上传的文件。以原始 `Content-Type` 返回原始二进制内容。属于其他账户或其他审核的文件将返回 `404 not_found`（绝不返回 `403`，以避免泄露存在性）。
- [查询账户集成资格](https://docs.cbpayapp.com/api-reference/account/查询账户集成资格.md): 返回账户级 API key 与 Webhook 的当前资格。企业账户需要 active 且 KYB 已批准； 个人账户需要 active、KYC 已批准以及有效的管理员授权。响应不会泄露管理员内部原因。

### 实时事件

- [实时事件流（SSE）](https://docs.cbpayapp.com/api-reference/实时事件/实时事件流（sse）.md): 打开 `text/event-stream` 连接，实时推送账户的全部事件——与 webhook 推送的是同一批事件，但你无需对外暴露任何公开端点。
- [事件历史](https://docs.cbpayapp.com/api-reference/实时事件/事件历史.md): 与事件流同源的日志，可按条件查询。必须提供 `from`/`to` 日期过滤。保留期为 90 天：该日志只是通知缓冲区，资金事实保存在各自不可变的资源中（流水、收款、付款）。
- [事件详情](https://docs.cbpayapp.com/api-reference/实时事件/事件详情.md): 按公开的 `event_id`（与 webhook 中的一致）查询单条事件。超出你可见范围的事件返回 `404`，绝不返回 `403`。

### 授权同意

- [读取授权请求（公开，持有人）](https://docs.cbpayapp.com/api-reference/授权同意/读取授权请求（公开，持有人）.md): `consent_url` 背后的授权请求公开视图。URL 中的令牌即是能力凭证（128 位随机数，每个授权唯一）：无需登录，未知令牌返回通用 404（防枚举）。响应刻意保持最小化：`doc_id` 仅显示最后 4 个字符，邮箱、持有人身份和内部 id 绝不暴露。按 IP 限流。
- [发起银行连接（公开，持有人）](https://docs.cbpayapp.com/api-reference/授权同意/发起银行连接（公开，持有人）.md): 为持有人开启银行连接会话：返回开放金融组件渲染机构选择器所需的 `widget_token` 和 `public_key`。仅 `pending` 状态的授权可以发起；其他状态返回 `409 already_decided`。按 IP 限流。
- [连接银行后授予授权（公开，持有人）](https://docs.cbpayapp.com/api-reference/授权同意/连接银行后授予授权（公开，持有人）.md): 持有人在组件中连接其银行后完成流程：平台交换 `exchange_token`，要求银行 连接处于 `active`（`409 link_inactive`），并要求银行核验的持有人证件与主体证件完全一致 （`409 holder_mismatch`——属于其他证件的账户绝不能授予授权）。成功后授权变为 `granted`，封存法律证据（IP 和 user agent），触发正向数据衍生，并发出 `risk_consent_granted` webhook。
- [拒绝授权请求（公开，持有人）](https://docs.cbpayapp.com/api-reference/授权同意/拒绝授权请求（公开，持有人）.md): 持有人拒绝请求：授权变为 `revoked`，封存法律证据并发出 `risk_consent_revoked` webhook。已被决定的授权返回 `409 already_decided`。

### Banking

- [Get one virtual IBAN request](https://docs.cbpayapp.com/api-reference/banking/get-one-virtual-iban-request.md)
- [List a third party's Banking EUR virtual IBANs](https://docs.cbpayapp.com/api-reference/banking/list-a-third-partys-banking-eur-virtual-ibans.md)
- [Request a Banking EUR virtual IBAN for a third party](https://docs.cbpayapp.com/api-reference/banking/request-a-banking-eur-virtual-iban-for-a-third-party.md): Company accounts can request a `banking_eur` virtual IBAN for an owned, verified third party. The third party owns the Banking EUR balance; the company is the manager of the relationship.
- [Get a Banking EUR virtual IBAN balance](https://docs.cbpayapp.com/api-reference/banking/get-a-banking-eur-virtual-iban-balance.md): Returns the reconciled platform ledger balance for a `banking_eur` virtual IBAN. A `funding_usdt` virtual IBAN does not hold BANK_EUR.

### Corridors

- [List organization rail variants](https://docs.cbpayapp.com/api-reference/corridors/list-organization-rail-variants.md): Returns the organization-scoped payout variant configuration. The selector supports BO/BOB bank_transfer with `legacy` or `v2`, and CL/CLP bank_transfer with direct or batched dispatch. Payin routing uses corridor controls.
- [Update an organization rail variant](https://docs.cbpayapp.com/api-reference/corridors/update-an-organization-rail-variant.md)

### 争议

- [列出账户争议案件](https://docs.cbpayapp.com/api-reference/争议/列出账户争议案件.md): 按账户隔离的中立争议数据。决定只能由组织管理员执行。
- [读取账户争议案件](https://docs.cbpayapp.com/api-reference/争议/读取账户争议案件.md)
- [列出案件证据](https://docs.cbpayapp.com/api-reference/争议/列出案件证据.md)
- [上传案件证据](https://docs.cbpayapp.com/api-reference/争议/上传案件证据.md): Multipart field `file`; accepted content types are PDF, PNG and JPG; maximum 10 MB.
- [下载案件证据](https://docs.cbpayapp.com/api-reference/争议/下载案件证据.md)

### API Reference

- [争议状态已变化](https://docs.cbpayapp.com/api-reference/争议状态已变化.md): 争议案件的账户/组织签名状态变化。
- [Payin 已入账](https://docs.cbpayapp.com/api-reference/payin-已入账.md): 已收到一笔法币收款并入账到账户。对于通用收款链接(`kind: checkout`),载荷还携带 `settled_via`(如 `qr`、`crypto:tron:usdt`、`cbpay`)、`settlement_asset` 与 `asset_amount`;加密货币支付附加 `crypto_amount`,CBPay 应用支付附加 `transfer_id`、`asset` 与 `amount`。当账户配置了不同于入账资产的 `default_payin_asset` 时,载荷还携带入账后自动兑换的 `settlement_asset` 与 `conversion_status`。
- [组织公告](https://docs.cbpayapp.com/api-reference/组织公告.md): 命名的组织管理员为该账户批准了本地化纯文本公告。事件仅属于该账户，绝不会广播给其他账户。
- [订阅状态发生变化（active、paused、经催收后 past due，或 canceled）。](https://docs.cbpayapp.com/api-reference/订阅状态发生变化（active、paused、经催收后-past_due，或-canceled）。.md)
- [付款人在托管收银台保存了卡片（在获批的 3 d secure 种子支付上明确同意）。](https://docs.cbpayapp.com/api-reference/付款人在托管收银台保存了卡片（在获批的-3-d-secure-种子支付上明确同意）。.md)
- [一张已保存的卡片被撤销（由你通过 delete v1stored cards 操作）。](https://docs.cbpayapp.com/api-reference/一张已保存的卡片被撤销（由你通过-delete-v1stored-cards-操作）。.md)
- [Payin 已过期](https://docs.cbpayapp.com/api-reference/payin-已过期.md): 一笔待支付的代收(二维码或托管 checkout)在未收到付款的情况下到达最终状态:payin 从 `pending` 变为 `expired`(或 `failed`)。不产生任何资金变动;如需重新收款请创建新的 payin。
- [收款已退款](https://docs.cbpayapp.com/api-reference/收款已退款.md): 一笔卡收款的退款已到达最终状态，或发卡机构发起了拒付。`status: completed` 表示资金已退回持卡人， 扣款已在你的余额上完成结算；`status: failed` 表示处理方拒绝了该退款，扣款已全额冲回。`kind: chargeback` 会自动记账，并可能使 `balance_after` 为负（与未来入账相抵的欠款）。
- [收款结算已计划](https://docs.cbpayapp.com/api-reference/收款结算已计划.md): 一笔以银行卡支付的收款——直接银行卡收款或以卡支付的收银台/POS 收款——已支付,且因贵组织在 `payin_card` 服务上配置了结算延迟 (`settlement_hours`),其余额被安排到未来的 `settle_at`。该事件在支付确认时恰好发出一次 (幂等——同一确认的重试不会重复发送)。`status` 从一开始就是 `credited`:收款已确认, `payin_credited` 会立即发出——等待到 `settle_at` 的只是余额。`usdt_net` 是到期将入账的金额(总额 − 手续费); 对于没有总额/手续费的历史记录,金额字段可能为空(`""`)。到达 `…
- [Payout 状态已变更](https://docs.cbpayapp.com/api-reference/payout-状态已变更.md): payout 进入新状态(processing、completed 或 failed)。
- [已收到转账](https://docs.cbpayapp.com/api-reference/已收到转账.md): 账户收到一笔内部转账。
- [交易审核状态变更](https://docs.cbpayapp.com/api-reference/交易审核状态变更.md): 账户的一笔操作更改了其审核状态(交易防火墙扣留时为 `in_review`,另有 `info_requested`、`released`、`rejected`)。 负载刻意保持中性:仅包含状态和操作摘要——绝不包含内部审核原因或合规备注。`rejected` 状态也可能来自组织的审核期限定时扫描(自动拒绝);邮件和审核详情携带标准的期限提示。 每次投递均包含 `X-Webhook-Event`、`X-Webhook-Event-ID`、`X-Webhook-Delivery-ID`、`X-Webhook-Timestamp` 和 `X-Webhook-Signature = hex(HMAC-…
- [加密充值已入账](https://docs.cbpayapp.com/api-reference/加密充值已入账.md): 一笔链上充值已确认并入账(扣除充值手续费后)到钱包资产(`USDT` 或 `USDC`)对应的余额。
- [加密充值因合规审核被冻结](https://docs.cbpayapp.com/api-reference/加密充值因合规审核被冻结.md): 一笔链上入账充值因发送方地址显示严重风险(制裁/直接非法资金)而未入账。运营方合规团队会审核该冻结并放行(入账)或拒绝。
- [加密充值已入账并带风险警示](https://docs.cbpayapp.com/api-reference/加密充值已入账并带风险警示.md): 一笔入账充值已正常入账,但发送方地址显示高风险。仅供参考——无需对资金采取任何操作。
- [加密提现状态已变更](https://docs.cbpayapp.com/api-reference/加密提现状态已变更.md): 一笔链上提现进入新状态。
- [银行档案验证状态已变更](https://docs.cbpayapp.com/api-reference/银行档案验证状态已变更.md): 当银行档案验证状态变更(submitted、under_review、approved、rejected)时触发 — 包括账户自己的银行档案（`customer_kind: self`）和你注册的第三方（`customer_kind: third_party`， 其 `third_party_id` 与 GET /v1/banking/third-parties/{id} 一致）。
- [银行付款状态已变更](https://docs.cbpayapp.com/api-reference/银行付款状态已变更.md): 当银行付款进入新状态(processing、completed、failed)时触发。
- [Eur virtual iban inbound](https://docs.cbpayapp.com/api-reference/eur-virtual-iban-inbound.md): Emitted when an inbound banking event addressed to a virtual IBAN is normalized for the owning account. The payload carries the IBAN, amount, currency, reference, payment rail and provider event identifier.
- [卡片交易](https://docs.cbpayapp.com/api-reference/卡片交易.md): 在每次卡片交易生命周期变更时触发:authorized(实时冻结)、reversed(资金退回)和 settled 调整。签名请求头与所有投递相同。
- [卡片状态已变更](https://docs.cbpayapp.com/api-reference/卡片状态已变更.md): 当卡片状态变更(active、frozen、cancelled)时触发,包括月费无法扣款时的自动冻结。
- [Kyc 验证状态已变更](https://docs.cbpayapp.com/api-reference/kyc-验证状态已变更.md): 在每次 KYC submission 生命周期变更时触发(submitted、in_review、changes_requested、more_info_required、escalated、approved、approved_partial、rejected)。你自己的入驻会带 self_onboarding: true。decision_source 表示该决定由自动引擎 (auto) 还是人工审核员 (admin) 作出;它出现在最终决定上。
- [Kyb 验证状态已变更](https://docs.cbpayapp.com/api-reference/kyb-验证状态已变更.md): 在每次 KYB submission 生命周期变更时触发,包括审核中的 AML/风险/报告信号。decision_source 表示该决定由自动引擎 (auto) 还是人工审核员 (admin) 作出;它出现在最终决定上。
- [Kyc 链接已完成](https://docs.cbpayapp.com/api-reference/kyc-链接已完成.md): 当你的客户完成托管 KYC 链接时触发;submission 已创建。
- [Kyb 链接已完成](https://docs.cbpayapp.com/api-reference/kyb-链接已完成.md): 当你的客户完成托管 KYB 链接时触发;submission 已创建。
- [Kyc 文件 ocr 已完成](https://docs.cbpayapp.com/api-reference/kyc-文件-ocr-已完成.md): 当通过 API 上传的文件的 OCR 校验完成时触发。
- [Kyb 文件 ocr 已完成](https://docs.cbpayapp.com/api-reference/kyb-文件-ocr-已完成.md): 当 KYB 文件的 OCR 校验完成时触发。
- [活体检测已完成](https://docs.cbpayapp.com/api-reference/活体检测已完成.md): 当通过活体链接完成视频活体检测时触发。
- [Aml 筛查已更新](https://docs.cbpayapp.com/api-reference/aml-筛查已更新.md): 当 AML 筛查完成、案件变化、风险变化或受监控交易被审核时触发。
- [隔离钱包收到充值](https://docs.cbpayapp.com/api-reference/隔离钱包收到充值.md): 一笔链上充值已在隔离钱包确认。它**不会**触及账本(余额存在于钱包链上)。
- [隔离钱包发送状态已变更](https://docs.cbpayapp.com/api-reference/隔离钱包发送状态已变更.md): 隔离钱包的一笔发送进入新状态(processing、completed 或 failed)。
- [隔离钱包私钥已导出](https://docs.cbpayapp.com/api-reference/隔离钱包私钥已导出.md): 安全警报:某隔离钱包的私钥已被导出(共享托管)。载荷绝不包含私钥。
- [隔离钱包上的外部转账](https://docs.cbpayapp.com/api-reference/隔离钱包上的外部转账.md): 活动同步检测到某隔离钱包的链上转账未经平台(在客户托管下属正常,例如导入或导出私钥之后)。无论如何,钱包的活动记录都保持完整。
- [疑似私钥泄露严重警报](https://docs.cbpayapp.com/api-reference/疑似私钥泄露严重警报.md): 严重:资金未经平台即离开了平台托管的隔离钱包。按设计这不可能发生,除非私钥泄露。请视私钥已泄露处理,将剩余资金转移到新钱包并立即联系支持团队。
- [通道可用性变更](https://docs.cbpayapp.com/api-reference/通道可用性变更.md): 某个支付通道的可用性发生了变化(`operational` / `degraded` / `down`)——在故障与恢复时 都会触发。广播事件:不与你的某笔操作绑定,因此不带 `account_id`。请以幂等方式消费 (按 delivery id 去重)。见服务状态指南。
- [余额调整已入账](https://docs.cbpayapp.com/api-reference/余额调整已入账.md): 管理员调整对余额进行了贷记或借记。仅在分录真正入账时推送：等待第二位审批人的调整，或使用已用过的幂等键重放，都不会推送。
- [账户状态变更](https://docs.cbpayapp.com/api-reference/账户状态变更.md): 账户的管理状态发生变化（`active`、`blocked`、`closed`）。重复提交同一状态不会推送。
- [账户安全事件](https://docs.cbpayapp.com/api-reference/账户安全事件.md): 账户的安全事实（登录、修改密码、新增或移除验证因素、会话被吊销）。账户范围的投递会隐藏 `ip` 和 `user_agent`；组织范围的管理员视图保留取证用的 `user_agent` 以及解析后的操作者 IP 字段（`actor_ip`、`actor_ip_source`），这些字段不属于公开 webhook 合约。
- [欺诈与身份报告已就绪](https://docs.cbpayapp.com/api-reference/欺诈与身份报告已就绪.md): 账户的 Qscore 欺诈与身份报告已完成。事件仅发送给该账户，和其他 webhook 一样签名，绝不包含 PDF 或详细欺诈信号。返回 2xx 确认接收。
- [Qscore 信用报告已就绪](https://docs.cbpayapp.com/api-reference/qscore-信用报告已就绪.md): 通过 `POST /v1/qscore/reports` 购买的 Qscore 信用报告已成功生成。payload 携带报告标识、生成的评分/等级以及公开的 `verify_code`（可与主体共享，作为在 `GET /verify/qscore/{code}` 处的真实性证明）。如果生成失败，报告状态为 `failed`，不会发出任何事件。当购买的报告对该主体已存在时也会发出此事件 （幂等重用）。 当账户持有人通过 `POST /v1/qscore/my-report` 生成自助报告时，也会触发同一事件； 此时 payload 会额外包含 `purpose: "self_access"`（购…
- [Qscore 评分已变更](https://docs.cbpayapp.com/api-reference/qscore-评分已变更.md): 新生成的 Qscore 报告产生了与主体之前已知评分不同的分数（例如在监控 重新拉取或新购买时）。仅在评分实际发生变化时发出；payload 携带新旧评分/等级对， 便于您决定是否采取行动。订阅此事件可以在不进行轮询的情况下持续监控主体。
- [Qscore 监控告警](https://docs.cbpayapp.com/api-reference/qscore-监控告警.md): 账户通过 `PUT /v1/qscore/subjects/{docID}/monitoring` 监控的主体自上次检查以来 发生了变化。`triggers` 列出触发本次告警的原因：`score_drop_below`（评分向下穿越订阅的 `monitor_since_score` 阈值：先前 >= 阈值，新值 < 阈值）、`new_records`（征信局登记了新事件； 当 `only_material: true` 时，仅重大负面事件——未结清的逾期、拒付、破产、诉讼——计入）或 `records_removed`（征信局当前显示的事件少于基线，即某条记录已结清或删除）。活跃订阅每 ~5…
- [Qscore 批量评分已完成](https://docs.cbpayapp.com/api-reference/qscore-批量评分已完成.md): 使用 `POST /v1/qscore/batches` 创建的批量评分任务已完成对其所有 条目的处理。这是批次的唯一完成信号：各个报告**不会**发出自己的 `risk_report_ready` webhook（也不会按条目发送电子邮件）。`status` 在所有条目 成功时为 `completed`，在至少一个条目最终失败（其费用已退款）时为 `completed_with_errors`，在批次本身无法处理时为 `failed`。计数器始终一致： `succeeded_items + failed_items = total_items`。使用 `GET /v1/qscore/batc…
- [持有人已授予 qscore 授权](https://docs.cbpayapp.com/api-reference/持有人已授予-qscore-授权.md): 通过 `POST /v1/qscore/consents` 创建的授权链接已被授予：持有人打开了公开页面， 通过开放金融连接其银行并授权了该请求（其核验证件与主体证件一致）。该授权现在会在新的 Qscore 报告中解锁主体的正向银行数据。`previous_status` 实际为 `pending`；携带它便于对账重放。
- [Qscore 授权已撤销](https://docs.cbpayapp.com/api-reference/qscore-授权已撤销.md): 授权链接已被撤销——可能是持有人在公开页面拒绝了请求，也可能是您的账户调用了 `POST /v1/qscore/consents/{id}/revoke`。已撤销的授权不再为新的 Qscore 报告提供正向银行数据。
- [钱包签名证明已创建](https://docs.cbpayapp.com/api-reference/钱包签名证明已创建.md): 已使用隔离钱包创建签名证明(`POST /v1/segregated-wallets/{walletID}/signatures`)。该钱包使用链原生标准(ETH/EVM 为 EIP-191,TRON 为 TIP-191) 在防钓鱼 CBPay Signature Proof 封装内对消息进行了签名。该证明可在 `verify_url` 公开验证(无需身份验证)。
- [外部钱包已链接](https://docs.cbpayapp.com/api-reference/外部钱包已链接.md): 通过解决 nonce 挑战(`POST /v1/wallet-links/challenges` + `POST /v1/wallet-links/verify`)将外部钱包(`custody=client`)链接到账户。钱包仍由客户保管; 链接仅证明地址的所有权。

## OpenAPI Specs

- [openapi.zh](/mcp-pack/openapi.zh.yaml)
- [openapi.zh](/openapi.zh.yaml)
