Download report file

Use this endpoint to download the generated report file.

A generated report file is available for 24 hours after report generation finishes. After that, the report run becomes expired and the file can no longer be downloaded.

The response is a raw text/csv file. The first row contains the column headers. The columns included depend on the report type used when creating the report run, and the options.columns list if specified.

IDs across report types

Revolut uses two separate ID systems across report types:

ID columnSystemReport types
payment_id, idAcquiring system - identifies a payment attemptpayments_report, icpp_fee_breakdown_report
transaction_idCore ledger - identifies the settlement entry created when a payment is capturedsettlement_report, payout_statement_report, custom_report
order_idBoth systems - bridges the acquiring and ledger perspectivessettlement_report, payments_report, payout_statement_report, custom_report
Tip

A payment and its resulting ledger transaction represent the same event but have different UUIDs. To reconcile payments_report data against settlement_report data, join on order_id.

Use the schema selector below to see the available columns for each report type.

Request

Path parameters
Path parameters

Unique ID of the report run.

Header parameters
Header parameters

Example: "Bearer sk_1234567890ABCdefGHIjklMNOpqrSTUvwxYZ_1234567890-Ab_cdeFGHijkLMNopq"

This parameter accepts the Merchant API Secret key to authorise requests coming from the merchant's backend.

It ensures that ensures that each request is authenticated and authorised by verifying the secret key. The secret key should be included in all request headers as a Bearer token.

Info

For more information, see: Authentication

Response

OK

Response body
Body any

CSV output for settlement_report. Contains settled transactions associated with a Merchant account.

The first row is a header row with column names. Subsequent rows contain transaction data, one row per transaction.

A partial-settlement is represented by separate SETTLEMENT and REFUND rows instead of a dedicated type.

Note

The actual response is a raw text/csv string. The object schema below is a documentation convention only: OpenAPI's schema language (JSON Schema) describes JSON data shapes and has no native construct for typed CSV columns, so each property here corresponds to a CSV column header rather than a JSON field.

Unique identifier of the ledger transaction in the core settlement system. Matches transaction_id in the payout statement report for the same event. Not the same as payment_id in the payments report — a payment and its resulting ledger transaction have different UUIDs. Use order_id to cross-reference with the payments report.

Unique identifier of the order. An order is the top-level entity that groups one or more payment attempts against it. order_id is consistent across all report types and can be used to cross-reference between the payments report and the settlement or payout reports.

For refunds and chargebacks, the order ID of the original payment that this transaction reverses. Refunds and chargebacks create their own order in the system, so order_id refers to the refund or chargeback order while original_order_id points back to the original payment's order. For settlement transactions, matches order_id.

Date and time the row's source record was started. For payment rows, this is the payment start timestamp. For non-payment rows such as refunds and chargebacks, this is the transaction start timestamp. This displayed value is separate from the report filter timeframe.

Date and time the row's source record was last updated. For payment rows, this is the payment update timestamp. For non-payment rows such as refunds and chargebacks, this is the transaction update timestamp. This displayed value is separate from the report filter timeframe.

Date and time the row's source record was completed. For payment rows, this is the payment completion timestamp. For non-payment rows such as refunds and chargebacks, this is the transaction completion timestamp. This displayed value is separate from the report filter timeframe.

Payment authorisation or creation timestamp for rows linked to a payment, in ISO 8601 UTC date-time format. Empty for refunds and non-payment-related rows where no payment timestamp applies. This displayed value is separate from the report filter timeframe.

Payment capture timestamp for rows linked to a captured payment, in ISO 8601 UTC date-time format. Empty for refunds, non-payment-related rows, or payments not captured. This displayed value is separate from the report filter timeframe.

Possible values: [SETTLEMENT, REFUND, CHARGEBACK, CHARGEBACK_REVERSAL]

Type of the settlement report row.

A partial-settlement is represented by separate SETTLEMENT and REFUND rows instead of a dedicated type.

ValueDescription
SETTLEMENTSettlement of a payment into the merchant balance.
REFUNDRefund entry reducing the merchant balance.
CHARGEBACKDispute withdrawal entry reducing the merchant balance.
CHARGEBACK_REVERSALReversal of a previous chargeback, restoring funds to the merchant balance.

State of the transaction.

Description of the order.

Merchant's order reference. The value of the merchant_order_data.reference field set when the order was created.

Unique identifier of the customer related to an order.

Total amount of the order.

Example: "GBP"

The ISO 4217 currency code that represents the currency of the order.

Total amount settled on the merchant's account.

Example: "GBP"

The ISO 4217 currency code that represents the currency of the settled amount.

Example: "CARD"

Type of the payment method the customer used to pay for the order.

Total fee amount applied to the order, aggregated across all fee components (acquiring markup + interchange + scheme fees).

Example: "GBP"

The ISO 4217 currency code that represents the currency of the total fee.

Acquiring markup fee only — a subset of fee_amount. Represents Revolut's service fee, excluding interchange and scheme fees.

Example: "GBP"

The ISO 4217 currency code that represents the currency of the acquiring markup fee.

The URL where the customer initiated the payment.

Unique identifier of the location related to the transaction.

Was this page helpful?