---
title: "Download a report"
method: GET
path: "/v1/reports/download/{report-id}"
tags: ["Reports"]
---

# Download a report

`GET /v1/reports/download/{report-id}`

Download a transaction report. Download the report by applying the `report-id` from the [List reports](/products/payments-odl/api-docs/report_service/reference/openapi/reports/getreports) operation as a path parameter.

**Note**: Depending on the `reportId` you specified, the returned report is either a Payment operations report or a Reconciliation report.

## Path parameters

- `report-id` string, uuid, required

## Response `200`

Returns the JSON record of the report specified in the path parameter

- union — Report data fields vary depending on the selected report. | Report type | Data fields | | --- | --- | | `PAYMENT_OPS` | [Payment report data fields](/products/payments-odl/api-docs/report_service/reference/openapi/report-data-fields/paymentopsreporttransaction) | | `RECON` | [Reconciliation report data fields](/products/payments-odl/api-docs/report_service/reference/openapi/report-data-fields/reconciliationreporttransaction) | | `FAILURE_CONVERSION_SSA` | [Failure conversion & SSA report data fields](/products/payments-odl/api-docs/report_service/reference/openapi/report-data-fields/failureconversionssatransaction) |
  - PaymentOpsReportTransaction — These are the data fields for the `PAYMENT_OPS` report you download from the [Get a report](/products/payments-odl/api-docs/report_service/reference/openapi/reports/getreport) operation. Use this report for high-level payment investigation and reporting.
    - `end_to_end_id` string — The unique ID that the sender specifies. It persists on all RippleNet instances that participate in the payment.
    - `ripplenet_payment_id` string — The unique payment identifier.
    - `quote_ts` string, date-time — The [ISO-8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp of the quote.
    - `created_at` string, date-time — The [ISO-8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp when the transaction was created.
    - `executed_at` string, date-time — The [ISO-8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp when the payment was settled.
    - `sender_address` string — RippleNet account name and address of the sender, in the format `accountname@ripplenetaddress`.
    - `sender_customer` string — The name of the sending institution.
    - `sent_amount` number — The payment amount sent.
    - `sent_currency` string — The [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) currency code of the of `sent_amount`.
    - `withdrawal_result_amount` number — **[Sender only]** Final amount of XRP at `source_exchange` wallet to be withdrawn after `withdrawal_result_fee_amount` fees and `withdrawal_result_incentive_value` incentives have been applied. **Note**: This value can be higher or lower than `source_result_proceeds` depending on whether the incentives were positive or negative.
    - `receiver_address` string — RippleNet account name and address of the receiver, in the format `accountname@ripplenetaddress`.
    - `receiver_customer` string — Name of the receiving institution.
    - `received_amount` number — The payment amount received by the beneficiary.
    - `received_currency` string — The [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) currency code of the `received_amount`.
    - `fx_spot_rate` number — **[Sender only]** The foreign exchange spot rate sourced from Refinitiv, CurrencyLayer, or another third-party source.
    - `source_exchange` string — **[Sender only]** The source exchange where the sender originates the payment.
    - `destination_exchange` string — **[Receiver only]** The destination exchange for the payment.
    - `payment_method` string — **[Sender only]** Method for completing the payment. This is a freeform text field that accepts custom strings for payment methods, for example: - CSM_ID_IDR - MSISDN_ID_IDR - CASHPICKUP_ID_IDR - CARD_CN_CNY Or you can use RippleNet payment method values: - REAL_TIME_GROSS_SETTLEMENT_SYSTEM - REAL_TIME_NET_SETTLEMENT_SYSTEM - MASS_NET_PAYMENT_SYSTEM - BOOK_TRANSFER - CASH_PAYOUT - WALLET_PAYMENT - OTHER
    - `payment_state` string — The state of a payment at the moment it is queried.
    - `remitter_name` string — Complete name of the person originating the payment. **Note**: Values are only viewable by the customer requesting the report.
    - `remitter_account` string — Account number at the sending institution for the payment remitter. **Note**: Values are only viewable by the customer requesting the report.
    - `beneficiary_name` string — Complete name of the person receiving the payment. **Note**: Values are only viewable by the customer requesting the report.
    - `beneficiary_account` string — Account number at the receiving institution for the payment beneficiary. **Note**: Values are only viewable by the customer requesting the report.
    - `payment_batch_id` string — Unique identifier for a batch of payments. **Note**: This field is only populated for payments that are part of a batch.
  - ReconciliationReportTransaction — These are the data fields for the `RECON` report you download from the [Get a report](/products/payments-odl/api-docs/report_service/reference/openapi/reports/getreport) operation. Use this for reconciliation and detailed state-by-state investigation.
    - `end_to_end_id` string — The unique ID that the sender specifies. It persists on all RippleNet instances that participate in the payment.
    - `ripplenet_payment_id` string — The unique payment identifier.
    - `payment_state` string — The state of a payment at the moment it is queried.
    - `internal_payment_state` string — **[Ripple internal]** Ripple uses this information for troubleshooting purposes.
    - `quote_ts` string, date-time — The [ISO-8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp of the quote.
    - `executed_at` string, date-time — The [ISO-8601](https://www.iso.org/iso-8601-date-and-time-format.html) timestamp when the payment was settled.
    - `sender_address` string — RippleNet account name and address of the sender, in the format `accountname@ripplenetaddress`.
    - `sender_customer` string — The name of the sending institution.
    - `sent_amount` number — The payment amount sent.
    - `sent_currency` string — The [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) currency code of the of `sent_amount`.
    - `receiver_address` string — RippleNet account name and address of the receiver, in the format `accountname@ripplenetaddress`.
    - `receiver_customer` string — Name of the receiving institution.
    - `received_amount` number — The payment amount received by the beneficiary.
    - `received_currency` string — The [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) currency code of the `received_amount`.
    - `fx_spot_rate` number — **[Sender only]** The foreign exchange spot rate sourced from Refinitiv, CurrencyLayer, or another third-party source.
    - `source_exchange` string — **[Sender only]** The source exchange where the sender originates the payment.
    - `destination_exchange` string — **[Receiver only]** The destination exchange for the payment.
    - `payment_method` string — **[Sender only]** Method for completing the payment. This is a freeform text field that accepts custom strings for payment methods, for example: - CSM_ID_IDR - MSISDN_ID_IDR - CASHPICKUP_ID_IDR - CARD_CN_CNY Or you can use RippleNet payment method values: - REAL_TIME_GROSS_SETTLEMENT_SYSTEM - REAL_TIME_NET_SETTLEMENT_SYSTEM - MASS_NET_PAYMENT_SYSTEM - BOOK_TRANSFER - CASH_PAYOUT - WALLET_PAYMENT - OTHER
    - `transaction_id` string — Unique identifier of the balance change between two accounts.
    - `transaction_type` string — The type of transaction.
    - `transaction_state` string — The transaction state of the overall payment when it's queried.
    - `venue_id` string — The unique identifier associated with a transaction involving an exchange account. Sometimes it's called "exchange id" or "order id".
    - `source_result_amount` number — Fiat amount before deduction of source exchange fee.
    - `source_result_adjusted_amount` number — Fiat amount after deduction of source exchange fee.
    - `source_result_proceeds` number — XRP amount after exchange of the `source_result_adjusted_amount` at the `source_exchange`.
    - `source_result_adjusted_proceeds` number — XRP amount after deduction of the conversion fees from `source_result_proceeds`.
    - `withdrawal_result_id` string — **[Sender only]** Unique identifier for the withdrawal transaction at the `source_exchange`.
    - `withdrawal_result_details_transaction_id` string — XRP transaction hash if there is on-ledger movement.
    - `withdrawal_result_amount` number — **[Sender only]** Final amount of XRP at `source_exchange` wallet to be withdrawn after `withdrawal_result_fee_amount` fees and `withdrawal_result_incentive_value` incentives have been applied. **Note**: This value can be higher or lower than `source_result_proceeds` depending on whether the incentives were positive or negative.
    - `withdrawal_result_fee_amount` number — **[Sender only]** Withdrawal fee charged by the `source_exchange`. This is substracted from the total `withdrawal_result_amount`.
    - `withdrawal_result_incentive_value` number — **[Sender only]** The incentive value in XRP applied to `source_result_proceeds` to arrive at the `withdrawal_result_amount` value.
    - `deposit_result_id` string — **[Receiver only]** Unique identifier for the deposit at the `destination_exchange`.
    - `deposit_result_amount` number — **[Receiver only]** The total amount of XRP deposited into the destination wallet. Must equal `withdrawal_result_amount`, minus negligible ledger fees.
    - `deposit_result_fee_amount` number — **[Receiver only]** Deposit fee charged in XRP by the `destination_exchange`.
    - `balance_change_currency` string — The [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) currency code associated with the transaction account.
    - `balance_change` number — The change in account balance caused by the corresponding transaction.
    - `balance_result` number — Account balance after the transaction.
    - `destination_result_id` string — Unique identifier for the destination trade at the `destination_exchange`.
    - `destination_result_amount` number — **[Receiver only]** The final XRP amount at destination wallet to be liquidated into received fiat currency.
    - `destination_result_adjusted_amount` number — **[Receiver only]** The final XRP amount at destination wallet to be liquidated including fees.
    - `destination_result_incentive_value` number — The incentive value (XRP) to be added into the total `destination_result_amount`.
    - `destination_result_proceeds` number — **[Receiver only]** Amount of fiat currency received for payout without fee.
    - `destination_result_adjusted_proceeds` number — Amount of fiat currency received for payout including fees.
    - `liquidation_status` string — Reserved for future use.
    - `liquidation_trade_request_status` string — Reserved for future use.
    - `payment_batch_id` string — Unique identifier for a batch of payments. **Note**: This field is only populated for payments that are part of a batch.
  - FailureConversionSsaTransaction — These are the data fields for the `FAILURE_CONVERSION_SSA` report you download from the [Get a report](/products/payments-odl/api-docs/report_service/reference/openapi/reports/getreport) operation. Use this information to investigate failed payments.
    - `end_to_end_id` string — The unique ID that the sender specifies. It persists on all RippleNet instances that participate in the payment.
    - `ripplenet_payment_id` string — The unique payment identifier.
    - `execution_result_type` string — The type of failure conversion transaction.
    - `execution_timestamp` string, date-time — The timestamp for when the failure conversion transaction happened.
    - `fx_rate` number — The foreign exchange rate associated with the failure conversion transaction.
    - `intermediary_delta` number
    - `payment_state` string — The state of a payment at the moment it is queried.
    - `sent_amount` number — The payment amount sent.
    - `sent_currency` string — The [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) currency code of the of `sent_amount`.
    - `received_amount` number — The payment amount received by the beneficiary.
    - `received_currency` string — The [ISO 4217](https://www.iso.org/iso-4217-currency-codes.html) currency code of the `received_amount`.
    - `transfer_currency` string — The three-letter code of the currency associated with this transfer.
    - `venue_id` string — The unique identifier associated with a transaction involving an exchange account. Sometimes it's called "exchange id" or "order id".
    - `ssa_account` string — The SSA account name and address of the sender in `accountname@ripplenetaddress` format.
    - `sender_customer` string — The name of the sending institution.
    - `ssa_remote_transfer_id` string — The unique identifier of the SSA transfer from the SSA funding account to the SSA account.
    - `ssa_transfer_amount` number — The SSA transfer amount.
    - `ssa_balance_change` number — The change in SSA balance caused by the corresponding transaction.
    - `ssa_balance_result` number — The SSA account balance after the transaction is complete.
    - `ssa_transfer_currency` string — The three-letter code of the currency associated with this SSA transfer.
    - `ssa_transfer_state` string — The state of the SSA transfer.

## Other responses

- `204` — The contents of the report are empty
- `400` — Bad request
- `403` — Forbidden
- `404` — Not found

---

[API](https://skmtc.net/ripple/apis/report-service-api.md) · [All operations](https://skmtc.net/ripple/apis/report-service-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/ripple/report-service-api/revisions/54de4d3166be/schema)
