---
title: "Retrieve a Transaction Report"
method: GET
path: "/reporting/transactions/"
tags: ["Reports"]
---

# Retrieve a Transaction Report

`GET /reporting/transactions/`

A `GET` request to `/reporting/transactions/` retrieves a [Transaction Log](https://docs.joinforage.app/reference/reports#transaction-reports).

On success, the API returns a list of transactions created between the provided `start_date` and `end_date`.

Forage defines a transaction as any financial operation that triggers a flow of funds, including both EBT purchases and EBT refunds. A Transaction Report is useful for reconciling your accounting books against the Forage ledger. The fee field can help finance teams reconcile the payouts received from Forage.

> ⚠️ Credit/Debit Settlement Handled By PSP
>
> Credit and debit card transactions are included in the report if the transaction occurred via a Fully Hosted integration, but Forage is never involved in the settlement flow for credit/debit. That falls to the [credit/debit PSP](https://docs.joinforage.app/docs/ebt-online-101#creditdebit-payment-service-provider-psp), so balance your credit/debit accounting against the PSP’s ledger.

## Response `200`

__OK__ - Success

- TransactionReportResponse
  - `next` string, nullable — A URL that you can send a `GET` to in order to retrieve the next set of results. Alternatively, you can retrieve the `cursor` value from the URL and pass it in the body of a new request. This value is `null` if there are no more results.
  - `previous` string, nullable — A URL that you can send a `GET` to in order to retrieve the previous set of results. Alternatively, you can retrieve the `cursor` value from the URL and pass it in the body of a new request. This value is `null` if the response includes the first set of results.
  - `results` object[]
    - `merchant_id` string — A 10-character unique hash identifying the merchant associated with this transaction. Blank if the settlement reflects a platform instead of a merchant payout.
    - `fns_id` string — The FNS number of the merchant that received the payout including this transaction. Blank if the settlement reflects a platform instead of a merchant payout.
    - `merchant_group_id` string, nullable — The unique identifier of the merchant group associated with this transaction, provided by Forage.
    - `corporation_id` string, nullable — The unique identifier of the corporation associated with this transaction, provided by Forage.
    - `recorded_date` string, date-time — The date and time of the transaction, formatted as an [ISO 8601](https://www.iso.org/iso-8601-date-and-time-format.html) string in the UTC timezone.
    - `payout_issued_date` string, date, nullable — The timestamp of when the payout was created. (Value only populated for Payout Transaction Reports)
    - `expected_deposit_date` string, date, nullable — The timestamp of when Forage expects the payout to be deposited. This is typically the payout_issued_date plus one business day, if the ACH method is next-day. (Value only populated for Payout Transaction Reports)
    - `transaction_type` string — The type of the transaction. Must be one of the following: - `Purchase` - `Purchase_With_Cash_Back` - `Refund` - `Withdrawal` - `Chargeback` - `Void_Purchase` - `Void_Refund` - `Negative_adjustment` - `Positive_adjustment` - `Balance_Inquiry_Fee` - `Refund_Processing_Fee` - `Canceled_Purchase` See our [Transaction types guide](https://docs.joinforage.app/docs/transaction-type-and-payment-method#transaction-types) for details on credit/debit flow.
    - `payment_method` string — The payment method used for the transaction. Must be one of the following: - `SNAP` - `EBT_Cash` - `Credit_Debit` - `Payfac_Credit_Debit` - `HSA` - `FSA` If the `transaction_type` is one of the following, `payment_method` will be `""`: - `Positive_adjustment` - `Negative_adjustment` - `Balance_Inquiry_Fee` - `Refund_Processing_Fee` _Note:_ `Credit_Debit` and `Payfac_Credit_Debit` are only applicable for transactions in Fully Hosted integrations.
    - `transaction_amount` string, decimal, nullable — The total amount in USD charged, voided, or refunded to the customer.
    - `forage_fee` string, decimal, nullable — The amount of Forage fees applied to the transaction.
    - `merchant_net_settlement` string, decimal, nullable — The net amount sent to the merchant, equal to the sum of purchases minus refunds, chargebacks, fees, and any other deductions. This value is `null` if the settlement reflects a platform instead of a merchant payout.
    - `platform_net_settlement` string, decimal, nullable — The net amount sent to the platform, if applicable, equal to the sum of purchases minus refunds, chargebacks, fees, and any other deductions. This value is `null` if the settlement reflects a merchant payout and no platform was involved.
    - `order_id` string — A 10-character unique hash identifying the order for Fully Hosted and Custom integrations. Blank for SDK integrations.
    - `external_order_id` string, nullable — The unique identifier of the order as created by the merchant or platform (not Forage). This typically corresponds to an identifier in the merchant or platform's database, so it can be used as a reference to look up the transaction.
    - `payment_id` string, nullable — A 10-character unique hash identifying the related `Payment` or `OrderPayment`.
    - `refund_id` string, nullable — A 10-character unique hash identifying the related `Refund` or `OrderRefund`.
    - `chargeback_id` string, nullable — A 10-character unique hash identifying the chargeback transaction. Present only when `transaction_type` is `Chargeback`.
    - `merchant_payout_id` string, nullable — A 10-character unique hash identifying the merchant payout. Present only in Payout Transaction Reports.
    - `platform_payout_id` string, nullable — A 10-character unique hash identifying the platform payout. Present only if the transaction is part of a platform payout, and only in Payout Transaction Reports.
    - `merchant_destination_account_ref` string, nullable — A 10-character unique hash for the merchant's destination bank account. `null` if settled to a platform account.
    - `external_location_id` string — A unique identifier, provided by the merchant or platform (not Forage), that indicates the physical fulfillment location for the order. For example, this field could specify which location of a grocery store chain fulfilled an order.
    - `description` string — A description of the transaction, as provided by the merchant or platform when the transaction was created.

## Other responses

- `400` — Bad Request
- `401` — __Unauthorized__
- `429` — __Too Many Requests__
- `500` — Internal Server Error

---

[API](https://skmtc.net/joinforage/apis/forage-payments-api.md) · [All operations](https://skmtc.net/joinforage/apis/forage-payments-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/joinforage/forage-payments-api/versions/4b7212706fae/schema)
