---
title: "Generate Report"
slug: "generate-report"
updated: 2025-11-26T06:31:12Z
published: 2025-11-26T06:31:12Z
canonical: "docs.xendit.co/generate-report"
---
> ## Documentation Index
> Fetch the complete documentation index at: https://docs.xendit.co/llms.txt
> Use this file to discover all available pages before exploring further.
# Generate Report
Post/reports
Request this endpoint to generate the report. You can specify the type and filter the content of the report. The flow of this endpoint is asynchronous. Xendit will send callbacks to you after the report is done.
**Currency parameter usage:**
- If `type` is `BALANCE_HISTORY`, the `currency` field in the request body must be one of: IDR, PHP, USD, VND, THB, MYR, SGD, EUR, GBP, HKD, AUD.
- For all other report types, the `currency` field in the request body may be any applicable ISO 4217 currency code (e.g., IDR, PHP, USD, EUR, etc.).
Once the report is generated, you can use the get report endpoint to download the report file.
SecurityHTTPType basic
API Key authentication using HTTPS Basic Auth. Use your API key as the username. The password field can be left empty. Note: In the API documentation "Try it" section, password is required, you may include any value.
Header parametersfor-user-idstring
The sub-account user-id that you want to make this transaction for.
This header is only used if you have access to xenPlatform. See xenPlatform for more information
Body parametersExpand Allobject typestring Required
The type of report that will be generated
Valid values[
"BALANCE_HISTORY",
"TRANSACTIONS",
"UPCOMING_TRANSACTIONS",
"DETAILED_TRANSACTIONS"
]
filterobject (ReportFilter) Required
Filtering that are applied to report
The combination of `from` and `to` must be less than 92 days.
fromstring (date-time) Required
The start time of the transaction to be filtered (ISO 8601)
Example2025-07-01T00:00:00Z
tostring (date-time) Required
The end time of the transaction to be filtered (ISO 8601)
Example2025-07-31T23:59:59Z
formatstring
The format of the report. Available format is `CSV`.
Valid values[
"CSV"
]Default"CSV"
currencystring
The currency to filter.
Valid values[
"IDR",
"PHP",
"USD",
"VND",
"THB",
"MYR",
"SGD",
"EUR",
"GBP",
"HKD",
"AUD"
]Default"IDR"
report_versionstring
Report version indicates which version of report you need. This parameter is only applicable to Transaction Report and is request-only (not returned in response).
Version value <> changelog: VERSION_0: Original version VERSION_1: Includes Settlement Status, Actual Settlement Time, and Estimated Settlement Time VERSION_2: Includes Early Settlement Fee Columns, swapped Payment ID with Product ID
Valid values[
"VERSION_0",
"VERSION_1",
"VERSION_2"
]Default"VERSION_0"
Responses200
Successful operation
Basic Transaction Report
```json
{
"type": "TRANSACTIONS",
"filter": {
"from": "2025-07-01",
"to": "2025-07-31T23:59:59Z"
}
}
```
Complete Request
```json
{
"type": "DETAILED_TRANSACTIONS",
"filter": {
"from": "2025-07-01",
"to": "2025-07-15T23:59:59Z"
},
"format": "CSV",
"currency": "USD",
"report_version": "VERSION_2"
}
```
Expand Allobject idstring
Report ID
typestring
The type of report that will be generated
Valid values[
"BALANCE_HISTORY",
"TRANSACTIONS",
"UPCOMING_TRANSACTIONS",
"DETAILED_TRANSACTIONS"
]
statusstring Valid values[
"PENDING",
"COMPLETED",
"FAILED"
]
filterobject (ReportFilter)
Filtering that are applied to report
The combination of `from` and `to` must be less than 92 days.
fromstring (date-time)
The start time of the transaction to be filtered (ISO 8601)
Example2025-07-01T00:00:00Z
tostring (date-time)
The end time of the transaction to be filtered (ISO 8601)
Example2025-07-31T23:59:59Z
formatstring
The format of the report. Available format is `CSV`.
Valid values[
"CSV"
]Default"CSV"
currencystring
The currency to filter.
Valid values[
"IDR",
"PHP",
"USD",
"VND",
"THB",
"MYR",
"SGD",
"EUR",
"GBP",
"HKD",
"AUD"
]Default"IDR"
business_idstring
Unique ID generated by Xendit for the particular file
createdstring
The time when the report request is created at UTC+0.
updatedstring
The time when the report is updated at UTC+0.
report_versionstring
Report version indicates which version of report you need. This parameter is only applicable to Transaction Report and is request-only (not returned in response).
Version value <> changelog: VERSION_0: Original version VERSION_1: Includes Settlement Status, Actual Settlement Time, and Estimated Settlement Time VERSION_2: Includes Early Settlement Fee Columns, swapped Payment ID with Product ID
Valid values[
"VERSION_0",
"VERSION_1",
"VERSION_2"
]Default"VERSION_0"
404
The provided `id` does not exist. Please review the `id` and try again
object error_codestring Valid values[
"RATE_LIMIT_EXCEEDED"
]
messagestring
errors Array OneOfstringstring
objectobject