Alipay+ DocsAlipay+ Docs

Transaction Detail Report

Overview

Transaction Detail Reports are provided by Alipay+ to the MPPs and include all the transaction details to be cleared in a clearing cycle.

Specifically:

  • Only transactions to be settled, including successful payments and refunds, are included in the Transaction Detail Report.
  • Only the transactions that are completed within the clearing cycle are included in the Transaction Detail Report. The transaction completion time is specified by the transactionTime parameter.

For every clearing cycle, a Transaction Detail Report is created with other reports in the same clearing cycle, such as the Transaction Summary Report and the Fee Report. The reports are uploaded to a specific directory on the SFTP server. The MPP can download and use them for reconciliation.

File location and naming convention

The Transaction Detail Report is a UTF-8 encoded text file.

In the production environment, the file is saved by default in the directory /v1/settlements/clearing/<participantId>/<date>. And in the sandbox environment, the file is saved in the directory /sandbox/settlements/clearing/<participantId>/<date>.

The default file name is transactionItems_<participantId>_<settlementCurrency>_<clearingBatchId>_<participantAgreementId>_<seq>.csv. For the detailed information of each field in the file name, refer to the following table:

Field Name

Details

participantId

The unique ID that Alipay+ assigns to the MPP. This field identifies the receiver of the file.

dateThe date when the report is generated, not the date of the transactions. For example, a report with a date of 20220319 is generated on 2022.03.19.

settlementCurrency

The currency that is used in the settlement, as agreed in the contract. This is the same currency as the one that is stated in the Settlement Report.

settlementBatchId

The settlement batch ID.

participantAgreementId

The unique ID that is assigned by Alipay+ to identify a settlement agreement between Alipay+ and the MPP. The value of the participantAgreementId parameter is determined by the value of the participantId parameter and the settlement currency used by the MPP. The ID represents the fund flow when MPP performs settlement to Alipay+.

seq

The sequence number used as a file index. The field is used when multiple files exist in the clearing cycle. The file index is ordered in the range of 000-999.

Report structure

The Transaction Detail Report consists of two parts:

  • Summary section, which displays the summary information about the transactions, for example, the total number of transactions and net total amount.
  • Detail section, which displays the transaction details, for example, transaction data details.

If no transaction exists in a clearing cycle, the Transaction Detail Report is still generated. The report summary section displays 0 total count and 0 total amount, and the report detail section displays no transaction details.

Structure

Summary section

No.

Parameter

Description

1

totalCount

Required String

The total number of items in the Transaction Detail Report file.

2

fundDirection

Required String

Fund direction. Valid values are:

  • CREDIT: specifies the fund direction that is from Alipay+ to the MPP.
  • DEBIT: specifies the fund direction that is from the MPP to Alipay+.

3

settlementCurrency

Required String (3)

The currency of the net settlement amount. The value is specified by using the 3-character ISO 4217 currency code.

4

netSettlementAmountValue

Required Integer

The gross settlement amount of all the transactions, excluding the fee settlement amount.

The value is provided in the smallest unit of the corresponding currency. For example, if the currency is USD and the amount is $1.00, the value of this parameter is 100; if the currency is JPY and the amount is ¥1, the value of this parameter is 1.

Value range: 0 - unlimited.

5

transactionCurrency

Optional String (3)

The currency of the net transaction amount. The currency here is the same as the currency of the transactions in the clearing cycle, which is the value of the paymentAmount.currency parameter in the pay API. The value is specified by using the 3-character ISO 4217 currency code.

Note: This parameter is empty when no transaction occurs in the clearing cycle or multiple transaction currencies are involved in the clearing cycle.

6

netTransactionAmountValue

Optional Integer

The gross transaction amount of all the transactions, excluding the fee amount.

The value is provided in the smallest unit of the corresponding currency. For example, if the currency is USD and the amount is $1.00, the value of this parameter is 100; if the currency is JPY and the amount is ¥1, the value of this parameter is 1.

Value range: 0 - unlimited.

Note: This parameter is empty when no transaction occurs in the clearing cycle or multiple transaction currencies are involved in the clearing cycle.

7

extendInfo

Optional String (2048)

The extended information.

Detail section

No.

Parameter

Description

1

clearingBatchId

Required String (32)

The unique ID that is assigned by Alipay+ to identify a clearing cycle. A clearing cycle is from 00:00 to 23:59:59, UTC+8.

2

participantId

Required String (64)

The unique ID that is assigned by Alipay+ to identify an MPP.

3

counterParticipantId

Required String (64)

The unique ID that is assigned by Alipay+ to identify an Acquiring Service Provider.

4

transactionRequestId

Required String (64)

The unique ID that is assigned by Alipay+ to identify a transaction.

  • For a payment, the value of this field is identical to that of paymentRequestId.
  • For a refund, the value of this field is identical to that of refundRequestId.

5

originalTransactionRequestId

Optional String (64)

An identifier for the original payment order of a refund.

  • If the value of the transactionType parameter is REFUND, the value of this parameter is identical to that of the paymentRequestId parameter.
  • If the value of the transactionType parameter is PAYMENT, the value of this parameter is empty.

6

transactionType

Required String

The transaction type. Valid values are:

  • PAYMENTPayment
  • REFUND: Refund

7

transactionTime

Required Datetime

The date and time when the transaction reaches a final state of success or failure. The transaction time can be obtained from the paymentTime parameter in the notifyPayment API or the inquiryPayment API, or the refundTime parameter in the refund API. The value follows the ISO 8601 standard.

8

fundDirection

Required String

The fund direction. Valid values are:

  • CREDIT: specifies the fund direction that is from Alipay+ to MPP.
  • DEBIT: specifies the fund direction that is from MPP to Alipay+.

9

settlementCurrency

Required String (3)

The currency of the settlement amount. The value is specified by using the three-character ISO 4217 currency code.

10

settlementAmountValue

Required Integer

The settlement amount of a transaction. The value of this parameter follows the rules below:

  • The value is calculated in the formula:

settlement amount = transaction amount * FX rate

, where:

    • The transaction amount is specified by the transactionAmountValue parameter in this report.
    • The FX rate is the foreign exchange rate between the settlement currency and the transaction currency. For the payment transaction, the FX rate is specified by the paymentQuote parameter specified in the pay/userInitiatedPay API; for the refund transaction, the FX rate is specified by the refundQuote parameter specified in the refund API request.
  • The value is provided in the smallest unit of the corresponding currency. For example, if the currency is USD and the amount is $1.00, the value of this parameter is 100; if the currency is JPY and the amount is ¥1, the value of this parameter is 1.

Value range: 0 - unlimited.

11

transactionCurrency

Required String (3)

The currency of the transaction amount. The value is specified by using the three-character ISO 4217 currency code. The currency here is the same as the currency of the transactions in the clearing cycle, which is the value of the paymentAmount.currency parameter in the pay API.

12

transactionAmountValue

Required Integer

The transaction amount.

The value is provided in the smallest unit of the corresponding currency. For example, if the currency is USD and the amount is $1.00, the value of this parameter is 100; if the currency is JPY and the amount is ¥1, the value of this parameter is 1.

Value range: 0 - unlimited.

13

feeDirection

Required String

The fee direction. Valid values are:

  • CREDIT: specifies the fee direction that is from Alipay+ to MPP.
  • DEBIT: specifies the fee direction that is from MPP to Alipay+.

14

feeCurrency

Optional String (3)

The currency of the net fee amount. The value is specified by using the 3-character ISO 4217 currency code, and the same as the value of transactionCurrency.

Note: This parameter is only passed if the fee is calculated in the transaction currency.

15

netFeeAmountValue

Optional Integer

The net fee amount of all the fees that are charged for the transaction.

The value is provided in the smallest unit of the corresponding currency and rounded with Banker's rounding. For example, if the currency is USD and the amount is $1.00, the value of this parameter is 100; if the currency is JPY and the amount is ¥1, the value of this parameter is 1.

If the fee settlement amount is less than the smallest unit of the fee settlement currency, the value of this parameter will be 0.

Value range: 0 - unlimited.

Note: This parameter is only passed if the fee is calculated in the transaction currency.

16

feeSettlementCurrency

Optional String (3)

The currency of the net fee settlement amount. The value is specified by using the 3-character ISO 4217 currency code.

Note: This parameter is only passed if the fee is calculated in the settlement currency.

17

netFeeSettlementAmountValue

Optional Integer

The net fee settlement amount of all the clearing fees that are charged for the transaction.

The value is provided in the smallest unit of the corresponding currency and rounded with Banker's rounding. For example, if the currency is USD and the amount is $1.00, the value of this parameter is 100; if the currency is JPY and the amount is ¥1, the value of this parameter is 1.

If the fee settlement amount is less than the smallest unit of the fee settlement currency, the value of this parameter will be 0.

Value range: 0 - unlimited.

Note: This parameter is only passed if the fee is calculated in the settlement currency.

18

extendInfo

Optional String (2048)

The extended information.

Samples

This section contains sample reports for different scenarios.

Payment only

The following sample assumes that the MPP with an ID of A1234567890 has two payments on 2022-04-19. The payments are made and settled in EUR.

You can view the sample in the following window or download the sample file: 

📎transactionItems_A1234567890_EUR_202204190000200000_20210001_000.csv

See the following section for details:

  • Summary section: the MPP is to be debited a settlement fund of 20 EUR in total, as a result of two payments that net 20 EUR in total.
  • Detail section:
    • A payment of 10 EUR is made, which leads to 10 EUR in the settlement amount, and 0.2 EUR in the fee settlement amount for the MPP.
    • Another payment of the same amount is made and leads to the same result in settlement and fees.

Payment & refund

The following sample assumes that the MPP with an ID of A1234567890 has 14 transactions on 2022-04-28. The transactions are made and settled in EUR.

You can view the sample in the following window or download the sample file: 

📎transactionItems_A1234567890_EUR_202204280000200000_20210000_000.csv

See the following section for details:

  • Summary section: the MPP is to be debited a settlement fund of 82 EUR in total, as a result of 14 transactions that net 82 EUR in total.
  • Detail section:
    • Seven payments are made, each of 23 EUR. Each payment leads to 0.23 EUR in the fee settlement amount for the MPP.
    • Seven refunds are made for 5 payments, in different amounts.

Payment & refund in multiple currencies

The following sample assumes that the MPP with an ID of A1234567890 has 11 transactions on 2022-01-10. All transactions are settled in EUR. On the ACQP side, the orders are placed in different currencies, but on the MPP side, only one transaction currency is used. Therefore, in the sample below, the currency of all transactions is the same (EUR in this case).

You can view the sample in the following window or download the sample file: 

📎transactionItems_A1234567890_EUR_202201101107957472_202109171107900901003800022697_000.csv

See the following section for details:

  • Summary section: the MPP gets a settlement fund of 0.5 EUR in total, as a result of 11 transactions.
  • Detail section:
    • 5 payments are made in different amounts in EUR.
    • 6 refunds are made for 4 payments. The refunds are also made in different amounts in EUR.
    • The fee amounts are too low to be settled in EUR. Therefore, all the fees are 0.