Transactions
Transaction management
List transactions
AuthorizationBearer <token>
Session JWT or OAuth2 access token
In: header
Query Parameters
cursor?string
Pagination cursor
limit?integer
Number of items per page (1-100)
Default
20Range
1 <= value <= 100start_date?string
Start date (YYYY-MM-DD)
end_date?string
End date (YYYY-MM-DD)
amount?string
amount[eq]?string
amount[neq]?string
amount[gt]?string
amount[gte]?string
amount[lt]?string
amount[lte]?string
amount[in]?string
amount[nin]?string
base_amount?string
base_amount[eq]?string
base_amount[neq]?string
base_amount[gt]?string
base_amount[gte]?string
base_amount[lt]?string
base_amount[lte]?string
base_amount[in]?string
base_amount[nin]?string
booking_date?string
booking_date[eq]?string
booking_date[neq]?string
booking_date[gt]?string
booking_date[gte]?string
booking_date[lt]?string
booking_date[lte]?string
booking_date[in]?string
booking_date[nin]?string
status?string
status[eq]?string
status[neq]?string
status[gt]?string
status[gte]?string
status[lt]?string
status[lte]?string
status[in]?string
status[nin]?string
category_id?string
category_id[eq]?string
category_id[neq]?string
category_id[gt]?string
category_id[gte]?string
category_id[lt]?string
category_id[lte]?string
category_id[in]?string
category_id[nin]?string
bank_account_id?string
bank_account_id[eq]?string
bank_account_id[neq]?string
bank_account_id[gt]?string
bank_account_id[gte]?string
bank_account_id[lt]?string
bank_account_id[lte]?string
bank_account_id[in]?string
bank_account_id[nin]?string
is_recurring?string
is_recurring[eq]?string
is_recurring[neq]?string
is_recurring[gt]?string
is_recurring[gte]?string
is_recurring[lt]?string
is_recurring[lte]?string
is_recurring[in]?string
is_recurring[nin]?string
currency?string
currency[eq]?string
currency[neq]?string
currency[gt]?string
currency[gte]?string
currency[lt]?string
currency[lte]?string
currency[in]?string
currency[nin]?string
q?string
Search query (FTS)
categories?string
Category IDs (comma-separated) - legacy, use category_id[in]
bank_accounts?string
Bank account IDs (comma-separated) - legacy, use bank_account_id[in]
statuses?string
Statuses (comma-separated) - legacy, use status[in]
types?string
Types: credit,debit,under-50,50-200,200-500,over-500
sort?string
Sort column
Default
"booking_date"Value in
"booking_date" | "amount" | "created_at"order?string
Sort order
Default
"desc"Value in
"asc" | "desc"Response Body
application/json
application/json
curl -X GET "https://api.expensicat.com/api/v1/transactions"{
"data": [
{
"id": "string",
"organization_id": "string",
"bank_account_id": "string",
"transaction_id": "string",
"booking_date": "string",
"amount": 0,
"currency": "string",
"description": "string",
"status": "string",
"raw_data": null,
"created_at": "string",
"updated_at": "string",
"name": "string",
"method": "string",
"category_id": "string",
"converted_amount": 0,
"base_amount": 0,
"base_currency": "string",
"exclude_from_analytics": true,
"notes": "string",
"is_recurring": true,
"recurrence_period": "string",
"recurring_last_detected_at": "string",
"recurring_series_id": "string",
"bank_account": {
"id": "string",
"name": "string"
},
"category": {
"id": "string",
"name": "string",
"slug": "string",
"color": "string"
},
"enrichment": {
"display_name": "string",
"category": {
"id": "string",
"name": "string",
"slug": "string",
"color": "string"
}
},
"entries": [
{
"id": "string",
"transaction_id": "string",
"display_name": "string",
"amount": 0,
"currency": "string",
"date": "string",
"status": "string"
}
]
}
],
"meta": {
"count": 0,
"next_cursor": "string"
}
}{
"error": {
"code": "string",
"message": "string",
"details": {
"property1": null,
"property2": null
}
}
}Get transaction
AuthorizationBearer <token>
Session JWT or OAuth2 access token
In: header
Path Parameters
id*string
Response Body
application/json
application/json
application/json
curl -X GET "https://api.expensicat.com/api/v1/transactions/string"{
"data": {
"id": "string",
"organization_id": "string",
"bank_account_id": "string",
"transaction_id": "string",
"booking_date": "string",
"amount": 0,
"currency": "string",
"description": "string",
"status": "string",
"raw_data": null,
"created_at": "string",
"updated_at": "string",
"name": "string",
"method": "string",
"category_id": "string",
"converted_amount": 0,
"base_amount": 0,
"base_currency": "string",
"exclude_from_analytics": true,
"notes": "string",
"is_recurring": true,
"recurrence_period": "string",
"recurring_last_detected_at": "string",
"recurring_series_id": "string",
"bank_account": {
"id": "string",
"name": "string"
},
"category": {
"id": "string",
"name": "string",
"slug": "string",
"color": "string"
},
"enrichment": {
"display_name": "string",
"category": {
"id": "string",
"name": "string",
"slug": "string",
"color": "string"
}
}
}
}{
"error": {
"code": "string",
"message": "string",
"details": {
"property1": null,
"property2": null
}
}
}{
"error": {
"code": "string",
"message": "string",
"details": {
"property1": null,
"property2": null
}
}
}Update transaction
AuthorizationBearer <token>
Session JWT or OAuth2 access token
In: header
Path Parameters
id*string
Request Body
application/json
category_id?|
notes?|
exclude_from_analytics?boolean
Response Body
application/json
application/json
application/json
curl -X PATCH "https://api.expensicat.com/api/v1/transactions/string" \ -H "Content-Type: application/json" \ -d '{}'{
"data": {
"id": "string",
"organization_id": "string",
"bank_account_id": "string",
"transaction_id": "string",
"booking_date": "string",
"amount": 0,
"currency": "string",
"description": "string",
"status": "string",
"raw_data": null,
"created_at": "string",
"updated_at": "string",
"name": "string",
"method": "string",
"category_id": "string",
"converted_amount": 0,
"base_amount": 0,
"base_currency": "string",
"exclude_from_analytics": true,
"notes": "string",
"is_recurring": true,
"recurrence_period": "string",
"recurring_last_detected_at": "string",
"recurring_series_id": "string",
"bank_account": {
"id": "string",
"name": "string"
},
"category": {
"id": "string",
"name": "string",
"slug": "string",
"color": "string"
},
"enrichment": {
"display_name": "string",
"category": {
"id": "string",
"name": "string",
"slug": "string",
"color": "string"
}
}
}
}{
"error": {
"code": "string",
"message": "string",
"details": {
"property1": null,
"property2": null
}
}
}{
"error": {
"code": "string",
"message": "string",
"details": {
"property1": null,
"property2": null
}
}
}Delete transaction
AuthorizationBearer <token>
Session JWT or OAuth2 access token
In: header
Path Parameters
id*string
Response Body
application/json
application/json
curl -X DELETE "https://api.expensicat.com/api/v1/transactions/string"Empty
{
"error": {
"code": "string",
"message": "string",
"details": {
"property1": null,
"property2": null
}
}
}{
"error": {
"code": "string",
"message": "string",
"details": {
"property1": null,
"property2": null
}
}
}