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=20&nextPageStartKey=example_string&sorting=transactionDate%3ADESC&hasAttachments=true&wasConciled=true&categoryIds=%5B%22example_string%22%5D&costCenterIds=%5B%22example_string%22%5D&responsibleEmail=user%40example.com&status=%5B42%5D&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=20&nextPageStartKey=example_string&sorting=transactionDate%3ADESC&hasAttachments=true&wasConciled=true&categoryIds=%5B%22example_string%22%5D&costCenterIds=%5B%22example_string%22%5D&responsibleEmail=user%40example.com&status=%5B42%5D&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=20&nextPageStartKey=example_string&sorting=transactionDate%3ADESC&hasAttachments=true&wasConciled=true&categoryIds=%5B%22example_string%22%5D&costCenterIds=%5B%22example_string%22%5D&responsibleEmail=user%40example.com&status=%5B42%5D&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=20&nextPageStartKey=example_string&sorting=transactionDate%3ADESC&hasAttachments=true&wasConciled=true&categoryIds=%5B%22example_string%22%5D&costCenterIds=%5B%22example_string%22%5D&responsibleEmail=user%40example.com&status=%5B42%5D&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=20&nextPageStartKey=example_string&sorting=transactionDate%3ADESC&hasAttachments=true&wasConciled=true&categoryIds=%5B%22example_string%22%5D&costCenterIds=%5B%22example_string%22%5D&responsibleEmail=user%40example.com&status=%5B42%5D&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
Target server for requests. Edit to use your own host.
Bearer token from OAuth 2.0 client credentials. Format: Bearer TOKEN
Bearer TOKENBank 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.
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.
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
Next page token. Omitted if there is no next page.