- 集成指南
- 支持的功能(其他功能)
- 资金提供与费用信息
资金提供与费用信息
Mastercard Gateway 在支付服务提供商提供资金提供与费用信息时提供支持。 对此信息的更正属于支付服务提供商的责任。
资金提供与费用信息指的是支付服务提供商向您的银行账户执行的实际的资金移动。 资金提供可能是正值(Payment 或 Capture)或负值 (Refund)。 费用始终是负值。 即从您的银行账户中扣款。
先决条件
资金提供与费用信息仅为支付服务提供商已将其信息提供到 Mastercard Gateway 的订单和交易提供。
如何检索资金提供与费用信息
如果您的支付服务提供商提供了资金提供与费用信息,您可以通过以下方式从 Mastercard Gateway 检索此信息:
- API
RETRIEVE_ORDER或RETRIEVE_TRANSACTION请求 - 通过 Reporting API 的交易报告
- 从 Merchant Administration 导出订单或交易
您还可以注册“Webhook 通知”来查找任何一个更新。
交易资金提供
有关交易资金提供的信息针对交易记录,包括以下 API 字段中的资金提供金额和货币:
transaction.funding.amounttransaction.funding.currency
资金提供显示值:
- Payment 或 Capture 交易是向您的账户存入资金,因此资金提供金额是正值。
- Refund 是从您的账户中扣除资金,因此资金提供金额是负值。
交易资金提供状态
根据交易的资金提供信息,交易资金提供状态进行如下更新:
| API 字段 | 状态 | 描述 |
|---|---|---|
transaction.funding.status |
NOT_SUPPORTED |
交易结算到 Mastercard Gateway 未从其收到资金提供信息的机构。 |
NON_FUNDED |
交易无法引起向您的账户转入或转出资金。 这适用于 VERIFICATION 或 AUTHORIZATION 交易。 |
|
IN_PROGRESS |
交易可以引起向您的账户转入或转出资金,但还未执行。 这通常是一个暂时状态。 | |
FUNDING_ASSURED |
交易确定会发生结算,但还未执行。 | |
FUNDED |
交易当前已将资金结算到您的账户。 | |
FUNDING_ON_HOLD |
交易可以引起向您的账户转入/转出资金,但金融服务提供商无法完成资金转账。 这可能是一个暂时状态。 | |
FUNDING_FAILED |
交易可以引起向您的账户转入/转出资金,但服务提供商尚未收到来自付款人的资金。 如果发生退款,服务提供商无法将资金转账给付款人。 | |
FUNDING_ADJUSTED |
之前已提供资金的订单金额已经调整。 调整金额可能转入您的账户或从您的账户中扣除。 |
资金提供日期
Mastercard Gateway 将为资金发生或将要发生的时间至少提供以下日期中的一个:
| API 字段 | 描述 |
|---|---|
transaction.funding.date |
资金到达您的银行账户的日期。 仅在确定时填充。 |
transaction.funding.initiatedDate |
收单行向您的银行账户发起资金转账的日期。 仅当发起日期或实际资金提供日期均未提供时填充。 |
transaction.funding.estimatedDate |
收单行估计的资金将到达您的银行账户的日期。 仅当日期已经确定,但资金向您的账户结算的日期 (transaction.funding.date) 不确定时填充。 |
提供哪个日期取决于收单行提供的信息。 但是:
- 这些日期中至少有一个日期会提供
- 这些日期通常不会全部提供。
transaction.acquirer.timeZone)。交易的资金提供状态何时更新?
在从收单行处收到交易发生资金提供的信息时,Mastercard Gateway 将更新订单的资金提供状态。
何时是安全的发货时间?
FUNDING_ASSURED 或 FUNDED 的交易资金提供状态指示您可以安全地向付款人发货。
资金提供失败
如果 Payment 或 Capture 交易的资金提供失败,收单行可能会召回资金。 即从您的账户中扣除资金。 在这种情况下,交易类型为 FUNDING 的交易将在资金提供失败的交易的订单上创建。 此交易的交易金额将为零,货币将与您用来提供资金的货币(结算货币)相同。 资金提供金额将为负值。
如果 Refund 交易的资金提供失败,收单行可能会将资金退还给您。 例如,如果由于付款人的账户关闭,资金无法退还给付款人。 在这种情况下,交易类型为 FUNDING 的交易将在资金提供失败的交易的订单上创建。 此交易的交易金额将为零,货币将与您用来提供资金的货币(结算货币)相同。 资金提供金额将为正值。
订单资金提供状态
资金提供状态反映您对于此订单可以合理预期的资金的当前资金提供状态。 它同时反映进出您的银行账户的资金。 即销售和退款。
订单资金提供状态 (order.fundingStatus) 源自分配给订单的交易的交易资金提供状态 (transaction.funding.status)。
在考虑资金提供状态时,Mastercard Gateway 仅检查可以移动资金的交易。 例如,它会忽略授权和被拒的过账。 这是因为“订单资金提供状态”反映的是商业交易的资金移动,而不反应与交易关联的费用的资金移动。
| API 字段 | 状态 | 描述 |
|---|---|---|
order.fundingStatus |
NOT_SUPPORTED |
订单上的所有交易已结算到 Mastercard Gateway 未从其收到资金提供信息的支付服务提供商。 |
NON_FUNDED |
订单上没有可以引起向您的账户转入或转出资金的交易。 | |
IN_PROGRESS |
订单上存在可以引起向您的账户转入或转出资金的交易,但有些交易尚未进行转账。 这通常是一个暂时状态。 | |
FUNDING_ASSURED |
所有可以向您的账户转入或转出资金的交易确保可以结算,但尚未进行结算。 在此状态下,可能不知道要转移的资金的确切金额。 | |
FUNDED |
所有可以向您的账户转入或转出资金的交易正在进行清算并将进行结算。 | |
FUNDING_FAILED |
订单上存在可以引起向您的账户转入或转出资金的交易,但由于您的账户存在问题,服务提供商无法完成资金转账。 这可能是一个暂时状态。 | |
FUNDING_ON_HOLD |
订单上存在可以引起向您的账户转入或转出资金的交易,但服务提供商尚未收到来自付款人的资金。 如果存在需要退款的订单,服务提供商无法将资金退还给付款人。 您可能需要联系付款人来解除此状态。 |
订单资金提供金额
订单资金提供金额 (order.funding.amount) 反映为完成此订单向您的银行账户转入或转出的资金总额(由您的收单行报告给 Mastercard Gateway)。 这包括销售(账户扣款)和退款(存入款项)。
请参照订单资金提供状态 (order.funding.status) 确定此值的实际值。
订单资金提供货币
订单资金提供货币 (order.funding.currency) 设置为与订单首次完成资金提供的交易具有相同的交易资金提供货币 (transaction.funding.currency) 值。
资金提供信息未提供
对于通过未在 Mastercard Gateway 提供资金提供信息的收单行处理的交易,交易资金提供状态将设置为 NOT_SUPPORTED。
费用
收单行费用类型有三种:
- 交易费用。 例如,交换费用。
- 事件相关费用。 例如,欺诈调查费用和电汇费用。
- 商家费用。 例如,商家设置费、商家月费、商家最低月费。
交易费用
有关交易适用的费用的信息针对以下 API 字段中的交易提供:
transaction.funding.fee[n].feeTypetransaction.funding.fee[n].acquirerFeeNametransaction.funding.fee[n].amounttransaction.funding.fee[n].rate
费用金额由收单行从您的账户中扣除,但在 API 中是正金额。
商家和事件费用
有关商家或事件适用的费用的信息针对独立的资金提供订单提供。
独立的资金提供订单包含以下订单详细信息:
| 订单字段 | 描述 |
|---|---|
order.id |
Mastercard Gateway 发放的 ID。 |
order.amount |
0 |
order.currency |
设置为记录的商家或事件费用的结算货币。 |
order.status |
设置为 FUNDING_ONLY。 |
order.fundingStatus |
设置为 NON_FUNDED。 |
sourceOfFunds.type |
设置为 NONE。 |
order.description |
包含说明此订单仅包含费用信息的字符串。 |
独立的资金提供订单还包含以下交易详细信息:
| 交易字段 | 描述 |
|---|---|
transaction.id |
Mastercard Gateway 发放的 ID。 |
transaction.amount |
0 |
transaction.type |
设置为 FUNDING。 |
transaction.funding.fee[n] 参数组 |
费用信息。 |
如果收单行没有为具有在 Mastercard Gateway 中与多个商家关联的收单行 ID 的指定商家提供商家或事件费用,此信息将只记录一次(针对单个商家配置文件)。
transaction.acquirer.id) 中记录。交易费用金额
交易费用金额 (transaction.funding.feeAmount) 在结算货币 (transaction.funding.feeCurrency) 中提供,反映为完成此交易从您的银行账户扣除的费用总额(由您的收单行报告给 Mastercard Gateway)。
费用金额最多可以保留 4 个小数位(与货币指数无关)。 因此,交易的总费用金额可能由于舍入与所有费用金额的总和不一致。