Skip to content

ODL statements

The On-Demand Liquidity (ODL) Statement feature in the Ripple Payments UI provides pre-generated reports for RippleNet payments that utilize On-Demand Liquidity.

Note

ODL Statement reports do not include data on fiat payments.

To retrieve data on fiat payments, apply filters to the Payments list view and click the Download button Download Button.

Report types

The following ODL report types are available:

Payment operations report

The Payment operations report provides basic payment data, including but not limited to:

  • Payment ID
  • Amount
  • Currency
  • Account info
  • Payment state
  • Timestamp

The Payment operations report lists one payment per line, but it does not provide the transaction data within payments. To view the complete list of fields and field descriptions, see the Payment operations report data fields.

Failure conversion & SSA report

The Failure conversion & SSA report provides data for failed payments whose funds were transferred to the Sender Segregated Account (SSA). This type of report is only visible in case a failure conversion has happened.

To view the complete list of fields and field descriptions for the Failure conversion & SSA report, see the Failure conversion & SSA report data fields.

Reconciliation report

The Reconciliation report provides all basic payment data, as well as trade and liquidation data. The additional fields are useful for reconciling and thoroughly investigating payments. The Reconciliation report displays all transactions that may take place within a payment. A single payment with multiple transactions appears in multiple lines, one line per transaction. Each line includes data that has occurred during the transaction, and all subordinate transactions share the same Payment ID.

To view the complete list of fields and field descriptions for the Reconciliation report, see the Reconciliation report data fields.

ODL Statement form

To view the ODL Statement form, go to the Payments screen and click ODL Statement.

ODL Statement button

The ODL Statement form displays options for the available reports.

Report download

Date range (UTC)

In the Date Range (UTC) section of the ODL Statement dialog, you have three options for defining the scope of a report:

Date rangeDescriptionExample
Month before lastRetrieves all ODL payment data from the month preceding the last month.If the current month is October 2022, this retrieves payment data for August 2022.
Last monthRetrieves all ODL payment data from the month preceding the current month.If the current month is October 2022, this retrieves payment data for September 2022.
Current monthRetrieves ODL payment data from the first day of the current month up to 00:00 AM of the current day.If today's date is October 10, 2022, this retrieves ODL payment data from October 1, 2022 to 00:00 AM on October 10, 2022.

Format

There are two format options for ODL Statement reports:

  • CSV (Comma-Separated Values): A CSV file is a text file that uses a comma to delimit values. Each line of text corresponds to a unique record.
  • JSON (Javascript Object Notation): JSON is a file format that uses human-readable text to store and transmit data objects consisting of attribute-value pairs and arrays.

Report Type

View descriptions for the available Report types.

  • Payment operations report
  • Failure conversion & SSA report
  • Reconciliation report

Report data fields

These data fields describe the CSV and JSON content when downloaded from the ODL Statement form.

Payment operations report data fields

These are the data fields for the Payment operations report. Use this report for high-level payment investigation and reporting.

end_to_end_idstring(end_to_end_id)[ 1 .. 128 ] characters

The unique ID that the sender specifies. It persists on all RippleNet instances that participate in the payment.

ripplenet_payment_idstring(ripplenet_payment_id)[ 1 .. 128 ] characters

The unique payment identifier.

Example: "70eccd4f-abcd-1234-a655-3aeddff19e4a"
quote_tsstring(date-time)
created_atstring(date-time)

The ISO-8601 timestamp when the transaction was created.

Example: "2022-10-02T20:57:13.606Z"
executed_atstring(date-time)

The ISO-8601 timestamp when the payment was settled.

Example: "2022-10-02T20:57:20.62Z"
sender_addressstring(sender_address)[ 1 .. 128 ] characters

RippleNet account name and address of the sender, in the format accountname@ripplenetaddress.

Example: "new_york@rn.us.ny.new_york"
sender_customerstring(sender_customer)[ 1 .. 128 ] characters

The name of the sending institution.

Example: "examplecorp_sf"
sent_amountnumber(sent_amount)

The payment amount sent.

Example: 40
sent_currencystring(sent_currency)[ 1 .. 128 ] characters

The ISO 4217 currency code of the of sent_amount.

Example: "USD"
withdrawal_result_amountnumber(withdrawal_result_amount)

[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.

Example: 39.846668
receiver_addressstring(receiver_address)[ 1 .. 128 ] characters

RippleNet account name and address of the receiver, in the format accountname@ripplenetaddress.

Example: "new_york@rn.us.ny.new_york"
receiver_customerstring(receiver_customer)[ 1 .. 128 ] characters

Name of the receiving institution.

Example: "sf"
received_amountnumber(received_amount)

The payment amount received by the beneficiary.

Example: 39.45
received_currencystring(received_currency)[ 1 .. 128 ] characters

The ISO 4217 currency code of the received_amount.

Example: "PHP"
fx_spot_ratenumber(fx_spot_rate)

[Sender only]

The foreign exchange spot rate sourced from Refinitiv, CurrencyLayer, or another third-party source.

Example: 58.70956379
source_exchangestring(source_exchange)[ 1 .. 128 ] characters

[Sender only]

The source exchange where the sender originates the payment.

Example: "bitstamp"
destination_exchangestring(destination_exchange)[ 1 .. 128 ] characters

[Receiver only]

The destination exchange for the payment.

Example: "independentreserve"
payment_methodstring(payment_method)[ 1 .. 128 ] characters

[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
Example: "CSM_TH_THB"
payment_statestring(payment_state)[ 1 .. 128 ] characters

The state of a payment at the moment it is queried.

Example: "COMPLETED"
remitter_namestring(remitter_name)[ 1 .. 128 ] characters

Complete name of the person originating the payment.

Note: Values are only viewable by the customer requesting the report.

remitter_accountstring(remitter_account)[ 1 .. 128 ] characters

Account number at the sending institution for the payment remitter.

Note: Values are only viewable by the customer requesting the report.

beneficiary_namestring(beneficiary_name)[ 1 .. 128 ] characters

Complete name of the person receiving the payment.

Note: Values are only viewable by the customer requesting the report.

beneficiary_accountstring(beneficiary_account)[ 1 .. 128 ] characters

Account number at the receiving institution for the payment beneficiary.

Note: Values are only viewable by the customer requesting the report.

payment_batch_idstring(payment_batch_id)[ 1 .. 36 ] characters

Unique identifier for a batch of payments.

Note: This field is only populated for payments that are part of a batch.

Failure conversion & SSA report data fields

These are the data fields for the Failure conversion & SSA report. Use this for detailed state-by-state investigation.

end_to_end_idstring(end_to_end_id)[ 1 .. 128 ] characters

The unique ID that the sender specifies. It persists on all RippleNet instances that participate in the payment.

ripplenet_payment_idstring(ripplenet_payment_id)[ 1 .. 128 ] characters

The unique payment identifier.

Example: "70eccd4f-abcd-1234-a655-3aeddff19e4a"
execution_result_typestring(execution_result_type)[ 1 .. 128 ] characters

The type of failure conversion transaction.

execution_timestampstring(date-time)

The timestamp for when the failure conversion transaction happened.

fx_ratenumber(fx_rate)

The foreign exchange rate associated with the failure conversion transaction.

intermediary_deltanumber(intermediary_delta)
payment_statestring(payment_state)[ 1 .. 128 ] characters

The state of a payment at the moment it is queried.

Example: "COMPLETED"
sent_amountnumber(sent_amount)

The payment amount sent.

Example: 40
sent_currencystring(sent_currency)[ 1 .. 128 ] characters

The ISO 4217 currency code of the of sent_amount.

Example: "USD"
received_amountnumber(received_amount)

The payment amount received by the beneficiary.

Example: 39.45
received_currencystring(received_currency)[ 1 .. 128 ] characters

The ISO 4217 currency code of the received_amount.

Example: "PHP"
transfer_currencystring(transfer_currency)[ 1 .. 128 ] characters

The three-letter code of the currency associated with this transfer.

venue_idstring(venue_id)[ 1 .. 128 ] characters

The unique identifier associated with a transaction involving an exchange account. Sometimes it's called "exchange id" or "order id".

Example: "8eef087a-abcd-1234-922d-e802b1126ea0"
ssa_accountstring(ssa_account)[ 1 .. 128 ] characters

The SSA account name and address of the sender in accountname@ripplenetaddress format.

sender_customerstring(sender_customer)[ 1 .. 128 ] characters

The name of the sending institution.

Example: "examplecorp_sf"
ssa_remote_transfer_idstring(ssa_remote_transfer_id)[ 1 .. 128 ] characters

The unique identifier of the SSA transfer from the SSA funding account to the SSA account.

ssa_transfer_amountnumber(ssa_transfer_amount)

The SSA transfer amount.

ssa_balance_changenumber(ssa_balance_change)

The change in SSA balance caused by the corresponding transaction.

ssa_balance_resultnumber(ssa_balance_result)

The SSA account balance after the transaction is complete.

ssa_transfer_currencystring(ssa_transfer_currency)[ 1 .. 128 ] characters

The three-letter code of the currency associated with this SSA transfer.

ssa_transfer_statestring(ssa_transfer_state)[ 1 .. 128 ] characters

The state of the SSA transfer.

Reconciliation report data fields

These are the data fields for the Reconciliation report. Use this for reconciliation and detailed state-by-state investigation.

end_to_end_idstring(end_to_end_id)[ 1 .. 128 ] characters

The unique ID that the sender specifies. It persists on all RippleNet instances that participate in the payment.

ripplenet_payment_idstring(ripplenet_payment_id)[ 1 .. 128 ] characters

The unique payment identifier.

Example: "70eccd4f-abcd-1234-a655-3aeddff19e4a"
payment_statestring(payment_state)[ 1 .. 128 ] characters

The state of a payment at the moment it is queried.

Example: "COMPLETED"
internal_payment_statestring(internal_payment_state)[ 1 .. 128 ] characters

[Ripple internal]

Ripple uses this information for troubleshooting purposes.

Example: "DONE"
quote_tsstring(date-time)
Example: "2022-10-02T20:57:13.593Z"
executed_atstring(date-time)

The ISO-8601 timestamp when the payment was settled.

Example: "2022-10-02T20:57:20.62Z"
sender_addressstring(sender_address)[ 1 .. 128 ] characters

RippleNet account name and address of the sender, in the format accountname@ripplenetaddress.

Example: "new_york@rn.us.ny.new_york"
sender_customerstring(sender_customer)[ 1 .. 128 ] characters

The name of the sending institution.

Example: "examplecorp_sf"
sent_amountnumber(sent_amount)

The payment amount sent.

Example: 40
sent_currencystring(sent_currency)[ 1 .. 128 ] characters

The ISO 4217 currency code of the of sent_amount.

Example: "USD"
receiver_addressstring(receiver_address)[ 1 .. 128 ] characters

RippleNet account name and address of the receiver, in the format accountname@ripplenetaddress.

Example: "new_york@rn.us.ny.new_york"
receiver_customerstring(receiver_customer)[ 1 .. 128 ] characters

Name of the receiving institution.

Example: "sf"
received_amountnumber(received_amount)

The payment amount received by the beneficiary.

Example: 39.45
received_currencystring(received_currency)[ 1 .. 128 ] characters

The ISO 4217 currency code of the received_amount.

Example: "PHP"
fx_spot_ratenumber(fx_spot_rate)

[Sender only]

The foreign exchange spot rate sourced from Refinitiv, CurrencyLayer, or another third-party source.

Example: 58.70956379
source_exchangestring(source_exchange)[ 1 .. 128 ] characters

[Sender only]

The source exchange where the sender originates the payment.

Example: "bitstamp"
destination_exchangestring(destination_exchange)[ 1 .. 128 ] characters

[Receiver only]

The destination exchange for the payment.

Example: "independentreserve"
payment_methodstring(payment_method)[ 1 .. 128 ] characters

[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
Example: "CSM_TH_THB"
transaction_idstring(transaction_id)[ 1 .. 128 ] characters

Unique identifier of the balance change between two accounts.

Example: "a557eb2d-abcd-1234-a9a0-fdb5b52aaa02"
transaction_typestring(transaction_type)[ 1 .. 128 ] characters

The type of transaction.

Enum ValueDescription
CRYPTO_TRANSFER

Transfer of digital assets.

FIAT_TRANSFER

Transfers of fiat.

TRADE

Trade transfers.

Example: "TRADE"
transaction_statestring(transaction_state)[ 1 .. 128 ] characters

The transaction state of the overall payment when it's queried.

Enum ValueDescription
COMPLETED

Transaction is complete.

EXECUTED

Transaction has executed.

FAILED

Transaction has failed.

Example: "COMPLETE"
venue_idstring(venue_id)[ 1 .. 128 ] characters

The unique identifier associated with a transaction involving an exchange account. Sometimes it's called "exchange id" or "order id".

Example: "8eef087a-abcd-1234-922d-e802b1126ea0"
source_result_amountnumber(source_result_amount)

Fiat amount before deduction of source exchange fee.

source_result_adjusted_amountnumber(source_result_adjusted_amount)

Fiat amount after deduction of source exchange fee.

source_result_proceedsnumber(source_result_proceeds)

XRP amount after exchange of the source_result_adjusted_amount at the source_exchange.

source_result_adjusted_proceedsnumber(source_result_adjusted_proceeds)

XRP amount after deduction of the conversion fees from source_result_proceeds.

withdrawal_result_idstring(withdrawal_result_id)[ 1 .. 128 ] characters

[Sender only]

Unique identifier for the withdrawal transaction at the source_exchange.

Example: "2b325317-abcd-1234-9aa2-0d5eb2c3c0e1"
withdrawal_result_details_transaction_idstring(withdrawal_result_details_transaction_id)[ 1 .. 128 ] characters

XRP transaction hash if there is on-ledger movement.

Example: "5b0a25b79595123d80dd27c0808fb554"
withdrawal_result_amountnumber(withdrawal_result_amount)

[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.

Example: 39.846668
withdrawal_result_fee_amountnumber(withdrawal_result_fee_amount)

[Sender only]

Withdrawal fee charged by the source_exchange. This is substracted from the total withdrawal_result_amount.

withdrawal_result_incentive_valuenumber(withdrawal_result_incentive_value)

[Sender only]

The incentive value in XRP applied to source_result_proceeds to arrive at the withdrawal_result_amount value.

deposit_result_idstring(deposit_result_id)[ 1 .. 128 ] characters

[Receiver only]

Unique identifier for the deposit at the destination_exchange.

Example: "18700e69-1234-abcd-5678-cb17d5ccdbca"
deposit_result_amountnumber(deposit_result_amount)

[Receiver only]

The total amount of XRP deposited into the destination wallet. Must equal withdrawal_result_amount, minus negligible ledger fees.

deposit_result_fee_amountnumber(deposit_result_fee_amount)

[Receiver only]

Deposit fee charged in XRP by the destination_exchange.

balance_change_currencystring(balance_change_currency)[ 1 .. 128 ] characters

The ISO 4217 currency code associated with the transaction account.

Example: "usd"
balance_changenumber(balance_change)

The change in account balance caused by the corresponding transaction.

balance_resultnumber(balance_result)

Account balance after the transaction.

destination_result_idstring(destination_result_id)[ 1 .. 128 ] characters

Unique identifier for the destination trade at the destination_exchange.

Example: "2c3367d2-ab12-3456-78c9-d9edbf6bcbc5"
destination_result_amountnumber(destination_result_amount)

[Receiver only]

The final XRP amount at destination wallet to be liquidated into received fiat currency.

destination_result_adjusted_amountnumber(destination_result_adjusted_amount)

[Receiver only]

The final XRP amount at destination wallet to be liquidated including fees.

destination_result_incentive_valuenumber(destination_result_incentive_value)

The incentive value (XRP) to be added into the total destination_result_amount.

destination_result_proceedsnumber(destination_result_proceeds)

[Receiver only]

Amount of fiat currency received for payout without fee.

destination_result_adjusted_proceedsnumber(destination_result_adjusted_proceeds)

Amount of fiat currency received for payout including fees.

liquidation_statusstring(liquidation_status)[ 1 .. 128 ] characters

Reserved for future use.

liquidation_trade_request_statusstring(liquidation_trade_request_status)[ 1 .. 128 ] characters

Reserved for future use.

payment_batch_idstring(payment_batch_id)[ 1 .. 36 ] characters

Unique identifier for a batch of payments.

Note: This field is only populated for payments that are part of a batch.