Banking statement
Returns the company’s banking statement with optional filters and cursor-based pagination.
Rules:
- If you pass
endDate, you must passstartDate, and vice versa. limitmust be between 1 and 50 per page (default: 20).- Use
nextPageStartKeyto paginate. - The amount filters (
amountEq,amountGt,amountLt) are mutually exclusive.
curl -X GET "https://api-sandbox.contasimples.com/statements/v1/banking?accountId=123&startDate=2025-01-01&endDate=2025-01-31&limit=42&nextPageStartKey=example_string&sorting=transactionDate:DESC&hasAttachments=true&wasConciled=true&categoryIds=["example_string"]&costCenterIds=["example_string"]&responsibleEmail=user@example.com&status=[42]&amountEq=3.14&amountGt=3.14&amountLt=3.14" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_TOKEN"
import requests
import json
url = "https://api-sandbox.contasimples.com/statements/v1/banking?accountId=123&startDate=2025-01-01&endDate=2025-01-31&limit=42&nextPageStartKey=example_string&sorting=transactionDate:DESC&hasAttachments=true&wasConciled=true&categoryIds=["example_string"]&costCenterIds=["example_string"]&responsibleEmail=user@example.com&status=[42]&amountEq=3.14&amountGt=3.14&amountLt=3.14"
headers = {
"Content-Type": "application/json",
"Authorization": "Bearer YOUR_API_TOKEN"
}
response = requests.get(url, headers=headers)
print(response.json())
const response = await fetch("https://api-sandbox.contasimples.com/statements/v1/banking?accountId=123&startDate=2025-01-01&endDate=2025-01-31&limit=42&nextPageStartKey=example_string&sorting=transactionDate:DESC&hasAttachments=true&wasConciled=true&categoryIds=["example_string"]&costCenterIds=["example_string"]&responsibleEmail=user@example.com&status=[42]&amountEq=3.14&amountGt=3.14&amountLt=3.14", {
method: "GET",
headers: {
"Content-Type": "application/json",
"Authorization": "Bearer YOUR_API_TOKEN"
}
});
const data = await response.json();
console.log(data);
package main
import (
"fmt"
"net/http"
)
func main() {
req, err := http.NewRequest("GET", "https://api-sandbox.contasimples.com/statements/v1/banking?accountId=123&startDate=2025-01-01&endDate=2025-01-31&limit=42&nextPageStartKey=example_string&sorting=transactionDate:DESC&hasAttachments=true&wasConciled=true&categoryIds=["example_string"]&costCenterIds=["example_string"]&responsibleEmail=user@example.com&status=[42]&amountEq=3.14&amountGt=3.14&amountLt=3.14", nil)
if err != nil {
panic(err)
}
req.Header.Set("Content-Type", "application/json")
req.Header.Set("Authorization", "Bearer YOUR_API_TOKEN")
client := &http.Client{}
resp, err := client.Do(req)
if err != nil {
panic(err)
}
defer resp.Body.Close()
fmt.Println("Response Status:", resp.Status)
}
require 'net/http'
require 'json'
uri = URI('https://api-sandbox.contasimples.com/statements/v1/banking?accountId=123&startDate=2025-01-01&endDate=2025-01-31&limit=42&nextPageStartKey=example_string&sorting=transactionDate:DESC&hasAttachments=true&wasConciled=true&categoryIds=["example_string"]&costCenterIds=["example_string"]&responsibleEmail=user@example.com&status=[42]&amountEq=3.14&amountGt=3.14&amountLt=3.14')
http = Net::HTTP.new(uri.host, uri.port)
http.use_ssl = true
request = Net::HTTP::Get.new(uri)
request['Content-Type'] = 'application/json'
request['Authorization'] = 'Bearer YOUR_API_TOKEN'
response = http.request(request)
puts response.body
{
"transactions": [
{
"id": 123,
"transactionType": {
"id": 123,
"description": "example_string",
"icon": "example_string",
"subType": "example_string"
},
"companyId": "example_string",
"status": 42,
"statusDescription": "example_string",
"accountId": 123,
"finalCardNumber": "example_string",
"bearerName": "John Doe",
"transactionDate": "2024-12-25T10:00:00Z",
"brlAmount": 3.14,
"usdAmount": 3.14,
"usdExchangeRate": 3.14,
"usdExchangeRateDate": "2024-12-25T10:00:00Z",
"totalTransactionAmount": 3.14,
"iofAmount": 3.14,
"feeServiceAmount": 3.14,
"mccCode": 42,
"mccGroup": 42,
"idPurchaseEvent": 123,
"mccDescription": "example_string",
"sourceDestinationName": "John Doe",
"placeEstablishment": "example_string",
"attachments": [
{
"id": "example_string",
"name": "receipt.pdf",
"type": "image/jpeg",
"_links": {
"content": {
"href": "/attachments/v1/content/{id}",
"rel": "GET"
}
}
}
],
"conciliation": {
"description": "example_string",
"conciled": true
},
"showReceipt": true,
"description": "example_string",
"notes": "example_string",
"category": {
"id": "example_string",
"description": "example_string"
},
"costCenter": {
"id": "example_string",
"description": "example_string"
},
"user": {
"id": "example_string",
"email": "user@example.com"
},
"requesterUser": {
"id": "example_string",
"email": "user@example.com"
},
"customCategory": {
"id": 123,
"name": "John Doe"
}
}
],
"nextPageStartKey": "example_string"
}
{
"error": "Bad Request",
"message": "The request contains invalid parameters or malformed data",
"code": 400,
"details": [
{
"field": "email",
"message": "Invalid email format"
}
]
}
{
"error": "Unauthorized",
"message": "Authentication required. Please provide a valid API token",
"code": 401
}
{
"error": "Not Found",
"message": "The requested resource was not found",
"code": 404
}
{
"error": "Internal Server Error",
"message": "An unexpected error occurred on the server",
"code": 500,
"requestId": "req_1234567890"
}
/statements/v1/banking
Bearer token from OAuth 2.0 client credentials. Format: Bearer {token}
Bearer {token}Bank account ID. If omitted, returns transactions from all accounts.
Period start (YYYY-MM-DD). Required when endDate is set.
Period end (YYYY-MM-DD). Required when startDate is set.
Max transactions per page. Min: 1, max: 50. Default: 20.
Opaque pagination token from the previous response. Pass it back unchanged to fetch the next page.
Sort field and order, e.g. transactionDate:DESC.
Filter for transactions with or without attachments.
Filter by reconciliation status.
Category ID list. Separate multiple values with a comma.
Cost center ID list. Separate multiple values with a comma.
Filter by responsible person’s email.
Filter by status: 1 (CANCELED), 2 (PROCESSED), 3 (PENDING). Comma-separate multiple values.
Exact amount match.
Amount greater than.
Amount less than.
Request Preview
Response
Response will appear here after sending the request
Authentication
Bearer token. Bearer token from OAuth 2.0 client credentials. Format: Bearer {token}
Query Parameters
Bank account ID. If omitted, returns transactions from all accounts.
Period start (YYYY-MM-DD). Required when endDate is set.
Period end (YYYY-MM-DD). Required when startDate is set.
Max transactions per page. Min: 1, max: 50. Default: 20.
Opaque pagination token from the previous response. Pass it back unchanged to fetch the next page.
Sort field and order, e.g. transactionDate:DESC.
Filter for transactions with or without attachments.
Filter by reconciliation status.
Category ID list. Separate multiple values with a comma.
Cost center ID list. Separate multiple values with a comma.
Filter by responsible person’s email.
Filter by status: 1 (CANCELED), 2 (PROCESSED), 3 (PENDING). Comma-separate multiple values.
Exact amount match.
Amount greater than.
Amount less than.
Responses
Bank transactions
Transaction ID
Transaction type ID
Transaction type description
Type icon
Transaction subtype
Company ID
Numeric status: 1 (canceled), 2 (processed), 3 (pending)
Status label
Bank account ID
Last card digits, if any
Cardholder name, if any
Transaction date/time
Amount in BRL
Amount in USD
USD/BRL rate used
When the rate was set
Total with fees
IOF amount
Service fee amount
MCC code
MCC group
Linked purchase event ID
MCC description
Source/destination name
Location
Transaction attachments
Attachment ID. Use it with GET /attachments/v1/content/{attachmentId} to download.
Attachment file name.
File MIME type inferred from the file extension (.jpg/.jpeg, .png, or .pdf). Omitted when unknown.
image/jpegimage/pngapplication/pdfLinks to download the attachment content.
HATEOAS link to a related resource.
Relative URL of the linked resource.
HTTP method to access the resource.
Reconciliation label
Whether reconciled
Whether a receipt is available
Description
Extra notes
Transaction category
Cost center
User responsible for the transaction
Requesting user
Custom category
Next page token. Omitted if there is no next page.
Invalid request. Check the parameters (dates, limit, format).
Unauthorized. Token missing, invalid, or expired.
Resource not found. Check IDs, paths, and permissions.
Internal server error. Retry with exponential backoff.
Last updated today
Built with Documentation.AI