This method returns a paginated list of all transfers for the specified filter.
Endpoint responsible for listing transfers made in the Asaas account, with support for filters by creation date, effective date, and transfer type.
This method returns a paginated list of transfers, allowing you to track the history of transfers made, consult scheduled transfers, and identify recurring transfers created previously.
When to use this endpoint
Use this endpoint when your integration needs to:
- consult the account's transfer history;
- monitor transfers made or scheduled;
- search transfers by creation period;
- search transfers by effective period;
- filter transfers by type;
- build reports, reconciliations, or financial dashboards;
- list recurring Pix created from the transfer route to another account or Pix key.
Main request parameters
You can combine the available filters to refine the transfer listing.
dateCreated[ge]: filters transfers created from the informed date.dateCreated[le]: filters transfers created up to the informed date.transferDate[ge]: filters transfers with an effective date from the informed date.transferDate[le]: filters transfers with an effective date up to the informed date.type: filters by transfer type.
Dates must be sent in the YYYY-MM-DD format.
Listing behavior
The response follows the Asaas API list standard, containing information such as object, hasMore, totalCount, limit, offset, and data.
The results are returned in paginated form. To go through all records, use the pagination fields returned in the response and advance the query while hasMore is true.
In integrations with a high volume of transfers, it is recommended to use period filters, such as dateCreated[ge], dateCreated[le], transferDate[ge], and transferDate[le], avoiding overly broad queries.
GET requests must be sent without a request body. If the body is sent filled in, the API may return a 403 error.
Filter examples
Filter by creation date
GET https://api-sandbox.asaas.com/v3/transfers?dateCreated[ge]=2019-05-01&dateCreated[le]=2019-05-31Filter by transfer effective date
GET https://api-sandbox.asaas.com/v3/transfers?transferDate[ge]=2019-05-01&transferDate[le]=2019-05-31Filter by transfer type
GET https://api-sandbox.asaas.com/v3/transfers?type=TEDExample with pagination
GET https://api-sandbox.asaas.com/v3/transfers?dateCreated[ge]=2019-05-01&dateCreated[le]=2019-05-31&limit=10&offset=0Request example
curl --request GET \
--url 'https://api-sandbox.asaas.com/v3/transfers?dateCreated%5Bge%5D=2019-05-01&dateCreated%5Ble%5D=2019-05-31' \
--header 'accept: application/json' \
--header 'access_token: $ASAAS_API_KEY'Response example
{
"object": "list",
"hasMore": false,
"totalCount": 2,
"limit": 10,
"offset": 0,
"data": [
{
"object": "transfer",
"id": "777eb7c8-b1a2-4356-8fd8-a1b0644b5282",
"type": "BANK_ACCOUNT",
"dateCreated": "2019-05-02",
"value": 1000,
"netValue": 0,
"status": "PENDING",
"transferFee": 0,
"effectiveDate": "2019-05-02",
"scheduleDate": "2019-05-02",
"endToEndIdentifier": null,
"authorized": true,
"failReason": null,
"externalReference": null,
"transactionReceiptUrl": null,
"operationType": "TED",
"description": null,
"recurring": null,
"bankAccount": {
"bank": {
"ispb": null,
"code": "001",
"name": "Banco do Brasil"
},
"accountName": "Conta Banco do Brasil",
"ownerName": "John Doe",
"cpfCnpj": "***.143.689-**",
"agency": "1263",
"agencyDigit": "3",
"account": "9999991",
"accountDigit": "1",
"pixAddressKey": null
}
}
]
}Error handling
If the API returns a 400 error, review the filters sent in the request, especially the date format and the parameters used.
If the API returns a 401 error, validate whether the API key was correctly informed in the access_token header.
If the API returns a 403 error, check whether the GET request was sent without a body. Listing calls must contain only headers and query params.
Integration best practices
Use date filters to reduce the volume of data returned and improve query performance.
When implementing pagination, query the next records while hasMore is true, adjusting the offset according to the number of records already returned.
Avoid running broad and repetitive queries unnecessarily. For reconciliation routines, prefer searching transfers by specific periods.
In case of timeout or network instability, before repeating the query, validate whether the previous request returned data or whether the failure occurred before the API processed it.
AttentionHere you can also list recurring Pix created from the transfer route to another account or Pix key.
Learn more about recurring Pix in the specific documentation for this resource.
403Forbidden. Occurs when the request body is filled, GET method calls must have an empty body.
