Skip to main content
结算文件规范是三份报表文件逐列的契约。结算报表与导出介绍如何按需拉取报表。本页回答在那两页之前一步的问题:对于某一项数据——卡组织参考号、你客户的国家、以你结算币种计的结算金额——它到底存不存在,如果存在,通过哪个渠道获得。 在请支持加列之前先读本页:几个最常被要求的字段不是”导出里没有”,而是在任何地方都不以商户可见的形式保存。

我获取结算数据的三种方式是什么?

**没有返回对账报表或结算批次的 API。**结算级数据以文件形式到达你(Portal 下载或 SFTP 投递),从不作为 API 响应。如果你的财务系统需要以编程方式获取结算数据,集成点是文件,不是接口。

有没有可以接收我资金流动记录的 API?

有,针对余额和账户流水——不是结算报表。存在五个商户接口: 请求和响应契约以及查询窗口限制见提现与余额 API。 所以实际的划分是:账户流水 → API;结算构成 → 文件。

我能在结算文件里拿到 RRN(Retrieval Reference Number,字段 37)吗?

不能。三份对账报表中都没有 RRN 列,Portal 交易导出中也没有。 对于卡交易,商户可见的参考号是: payMethodResponse 是订单查询响应上的一个 JSON 字符串,返回给你的对象携带固定的一组键——支付方式参考号、卡组织交易 id、token id、掩码卡数据、卡元数据、你的客户实际支付的金额和币种,以及支付方式使用的汇率。网络检索参考号不在其中,因此解析该字段也无法拿到。 如果你想与银行或发卡行追踪某笔具体交易,请带着 Order Id 和支付日期开支持工单;那是 Waffo 能端到端追踪的标识。

能给我的报表加一列吗——我自己的退款 id、我客户的国家、一个额外参考号?

导出的列集按报表类型固定。对每个商户都相同,不按账户扩展。你能控制的是: 见报表投递与邮件订阅。 你在找的某些字段可能已经以另一个名字存在——在提出任何要求之前先查结算文件规范:
  • 你在支付上的自有参考号是 Merchant Order Id,在退款上 Merchant Original Order Id 标识你退款的那笔支付
  • 退款或拒付所属的支付是 Original Order Id
  • 你自己的用户标识(如果你在创建订单时发送了)是 Merchant User Id

我如何按客户所在国家出报表?报表里只有币种。

没有消费者国家列。存在的国家维度是支付方式的国家,不是付款人的所在地: 两个值得明确说明的后果:
  • 按 Pay Method Country/Region 对交易导出分组,得到的是按支付方式市场的营收,这是最接近的可用代理,也是大多数商户最终使用的。它不等于你客户的居住地——客户可以在任何地方使用一个注册在某个市场的方式。
  • 特别对于卡交易量,订单查询上的 cardIssueCountryCode 是按交易的发卡行国家。它只能通过 API 获得,不作为报表列,所以构建发卡行国家拆分意味着在支付时丰富你自己的记录,而不是事后。
Portal 分析也在支付方式维度上按国家拆分交易量——见 Portal 分析——所以要快速得到答案,你可能根本不需要导出。

我的订单是非 USD 币种,结算币种金额在哪里?

不在交易导出里——该文件完全没有结算列,因为交易在发生次日导出,其结算可能尚不存在。 换算本身,包括适用哪个货币对和哪种舍入规则,见结算计算详解。

有没有 API 给我以结算币种计的结算金额?

没有。这是上一个问题最常被问到的变体,答案是文件:Settlement Details 中按 Order Id 键控的 Order Amount (Settlement Currency),就是你要与自己账本关联的那一行。 如果你需要它作为数据流而不是下载,请配置投递到你自己的 SFTP,让文件推送给你、由你的任务拾取——见报表投递与邮件订阅。

我能看到按渠道拆分的资金,而不是一个账户余额吗?

不能。你的资金以账户的形式呈现给你,不是渠道头寸: Merchant Portal 中没有按渠道的资金页面,余额 API 中也没有按渠道的拆分。如果你找不到,那不是权限问题——商户侧不存在这个维度。每种余额的含义见余额与账户历史,一个币种为什么会显示多个账户见结算账户结构。

同一个月的三份导出对不上,哪份是权威的?

它们对不上是因为回答的是三个不同的问题。没有一份是错的: 对于”我收到了多少钱”,结算报表是权威的——它与资金流动所依据的数据相同。对于”我卖了多少”,交易列表是权威的。 经典的不匹配只有一个原因:月末最后几天发生的交易在下个月结算,所以它在一个月的交易导出里,而在下个月的结算报表里。见我应该按支付日期还是按结算日期导出?和结算周期。

为什么上个月结算报表里的一笔订单在当月的交易列表里找不到?

因为你按当月的支付日期筛选了交易列表,而该订单的支付日期在上一个月。覆盖 11 月结算日期的结算报表经常包含 10 月支付的交易。 要找到它:在交易列表中按 Order Id 搜索且不加日期筛选,而不是按月缩小范围。

交易列表筛选”支付成功”就是我当月的营收吗?

不是,有三个原因,按踩坑频率排序:
  1. **它是毛额,不是净额。**手续费、税费和保证金冻结是在结算时应用的,不是在交易上。见结算计算详解。
  2. 退款和拒付是独立的行,有自己的日期。当月成功的支付和当月发生的退款各算一次。
  3. **成功不等于已结算。**其中一些交易尚未进入结算批次。
要得到营收数字,从结算报表开始。要得到计提数字,结算预估导出给你尚未结算的部分,Est 列标为估算。

Settlement Status 列是什么意思,UNSETTLED 的订单算当月营收吗?

结算报表导出上的 Settlement Status 告诉你该交易是否已进入结算批次: UNSETTLED 的交易是否属于当月营收是会计政策问题,不是 Waffo 的问题:收付实现制下不算,权责发生制下算,估算列就是你要据以计提的。那些行结算后 Waffo 不会重述当月——它们只是在之后的报表中显示为 SETTLED。 关于该列和导出筛选的更多内容见结算报表与导出。

Settlements → Transaction 和 Transactions 页面有什么区别?

它们看起来相似,回答的问题不同: 交易会立即出现在 Transactions 上,只有结算处理后才出现在 Settlements → Transaction 上。一笔被计费但没有订单金额的交易——失败但仍产生手续费的交易——出现在结算侧,在交易侧看起来奇怪;这种情况见失败交易计费。

我现在在哪里下载结算批次明细?

Portal → Settlements → Reports。批次级明细、Customized Export 和结算预估导出都是后台任务:你发起请求,它被构建,然后以可下载文件的形式出现在同一页面的导出历史中——不会直接流式传到你的浏览器。 如果你能生成的唯一导出类型很窄,那是因为可用的导出类型取决于你账户的报表配置。类型的完整列表及其日期跨度上限见结算报表与导出;任务状态和下载链接有效期见导出中心。

哪个标识把报表行与到达我银行的资金关联起来?

取决于你从哪一端开始: 一个结算日期可以产生多个批次——见结算批次与日历。

我能从 Portal 给我自己的客户开发票吗?

不能。Waffo 生成的两份文件方向是固定的: 所以你 Portal 里的 Invoice 是 Waffo 开给你的手续费发票。它不是你能转交给客户的文件,也没有向终端客户开具商户发票的功能。面向客户的文件是交易收据——内容、配置和投递见收据配置与下载和 Portal 收据。 Invoice 编号、为什么会同时收到多个附件,以及哪些内容不在 Invoice 中,见结算文件规范。

我能拿到已退款或尚未结算交易的发票吗?

Invoice 覆盖已结算交易的手续费,其日期由它所覆盖集合中最晚的实际结算日期推导。尚未结算的交易还没有向任何发票贡献手续费,因此不在任何一份上。它会出现在覆盖其结算落地所在周期的发票上。
仍然卡在某个具体字段上?请联系支持,附上报表文件名和你要找的列——说明文件名能让支持告诉你该字段是以另一个名字存在,还是根本不存在。