Skip to main content

概述

GatePay 提供多种对账工具,用于保障账户准确性:
  • 余额查询:按币种返回实时可用余额
  • 订单手续费查询:按订单核验手续费和结算金额
  • 资金流水查询:按交易跟踪所有资金变动
有关请求头、签名规则和回调验签,请参见 认证与安全

余额查询

余额查询接口可按币种返回商户支付账户的可用余额。对于结算、出款和风控决策,应以实时查询结果为准。

常见使用场景

  • 结算前校验:发起结算前确认可用余额
  • 期末余额快照:在营业结束时记录余额,用于会计核对
  • 运营监控:实时余额告警与阈值监控
  • 多币种管理: 跟踪不同币种的余额

API 参考

接口: GET /v1/pay/balance/query 机构接口: POST /payment/open/institution/v1/balance

请求参数

如果未指定币种,API 会返回账户中所有币种的余额.

响应字段

请求示例

响应示例

接入步骤

  1. 使用以下接口调用余额查询 APIGET /v1/pay/balance/query 并传入需要查询的币种
  2. 按币种将余额存储到商户本地会计系统
  3. 与本地记录比对以识别差异
  4. 如果余额低于运营最低值,则触发阈值告警

订单手续费查询

订单手续费查询 API 可在单笔订单级别提供详细手续费明细和结算金额。可用于财务对账和异常排查。

常见使用场景

  • 财务对账: 验证手续费是否符合商户预期
  • 多笔或部分支付: 核对复杂订单场景
  • 异常排查: 识别手续费异常或差异
  • 结算确认: 发起出款前确认金额

API 参考

接口: GET /api/open/v1/pay/order/fee/query

请求参数

请传入 orderIdmerchant_order_no(至少传入一个)。

响应字段

请求示例

响应示例

接入步骤

  1. 使用以下接口调用订单手续费查询 APIGET /api/open/v1/pay/order/fee/query 并传入订单标识
  2. 查询结果与本地订单主数据一并存储
  3. 结算金额与预期值比对
  4. 如果手续费结构不同,则标记差异以便人工复核

资金流水查询

资金账本查询可提供商户账户所有资金流入和流出的完整交易历史,是审计追踪和全面对账的关键。

常见使用场景

  • 日终对账: 汇总当天所有资金变动
  • 审计追踪: 跟踪资金来源和去向以满足合规要求
  • 异常排查: 识别时间差问题或缺失交易
  • 财务报表: 按类型和币种生成详细流水报表

API 参考

接口: GET /v1/pay/bill/orderlist 机构接口: GET /payment/open/institution/v1/pay/bill/orderlist

请求参数

响应字段

交易类型枚举

请求示例

响应示例

接入步骤

  1. 使用以下接口按时间范围分页拉取资金账本记录GET /v1/pay/bill/orderlist
  2. 使用 ledger_id 作为主要去重键,将账本记录持久化到数据库
  3. 使用 business_id 和 元数据 将账本记录关联到业务订单
  4. 生成对账汇总 按以下维度汇总::
    • 币种
    • 交易类型
    • 日期或时间分桶
    • 关联业务实体(订单、退款、转账等)
  5. 与本地记录比对以识别差异
  6. 标记未匹配记录 以便排查

推荐日终对账流程

请按以下步骤执行完整的每日对账:

步骤 1: 获取账户余额快照

在营业日结束时存储各币种余额快照 (例如 UTC 23:59). 记录:
  • 可用余额
  • 冻结金额
  • 总余额
  • 快照时间戳

步骤 2: 拉取资金账本记录

分页获取对账周期内的所有交易,并以 ledger_id 为键存储到本地数据库。

步骤 3: 拉取订单手续费和结算金额

对于当天结算的每笔订单:
存储手续费明细和结算详情。

步骤 4: 匹配并核对记录

创建如下结构的对账表: 匹配逻辑:
  • 使用 business_id 将 PAYMENT 账本记录匹配到订单系统
  • 将 REFUND 记录匹配到退款系统
  • 将 TRANSFER_OUT/IN 记录匹配到转账记录
  • 将 PAYOUT 记录匹配到结算记录

步骤 5: 生成差异报告

识别未匹配记录:

步骤 6: 执行人工复核

对于每项差异:
  1. 复核账本记录 描述和元数据
  2. 与业务记录关联 (订单, 退款, 转账)
  3. 排查时间差 (当日结算与次日结算)
  4. 记录处理结果 (已匹配、已解释或已升级处理)

步骤 7: 输出对账结果

生成正式对账单:

错误处理与故障排查

常见问题

有关完整错误码,请参见 错误码与最佳实践

最佳实践

数据持久化

  • 主键: 对账本记录使用 ledger_id 以确保幂等性
  • 唯一约束: 对 ledger_id 建立唯一约束以防止重复
  • 索引: 按以下字段建立索引 (created_at, currency, type) 以加快对账查询

查询优化

  • 时间范围: 按 24 小时分段查询,以获得更快响应
  • 分页: 使用 limit=100 并逐页遍历,避免超时
  • 过滤条件: 使用 currencytype 过滤条件减少结果集

告警与监控

  • 阈值告警: 当可用余额低于运营最低值时告警
  • 差异告警: 当对账发现未匹配记录时立即告警
  • 时间差告警: 如果账本记录延迟超过 2 小时则告警
  • 回调失败告警: 如果未在 SLA 内收到预期回调则告警

文档与审计

  • 对账日志: 存储带时间戳和用户 ID 的对账结果
  • 差异跟踪: 维护已识别和已解决差异的审计轨迹
  • 费率卡: 记录手续费结构和所有促销调整
  • 结算条款: 记录资金何时以及如何结算到商户账户

相关文档