List Transactions

GET /api/v1/transactions

Returns a paginated list of transactions.

Query Parameters

ParameterTypeDefaultDescription
pagenumber1Page number
limitnumber100Items per page (max 500)
fieldsstringallComma-separated field names
date_fromstring-Filter by date on or after (YYYY-MM-DD)
date_tostring-Filter by date on or before (YYYY-MM-DD)
accountsstring-Filter by account ID(s), comma-separated
currencystring-Filter by account currency code (e.g. USD). Resolves to the org's accounts of that currency; intersects with accounts when both are given.
statementstring-Filter by statement ID(s), comma-separated
categorystring-Filter by category (use "empty" for uncategorized)
entitystring-Filter by entity (use "empty" for no entity)
commentsstring-Filter by comments (use "empty" for blank)
particularsstring-Search in particulars (case-insensitive substring)
typestring-Filter by transaction type
amount_fromnumber-Minimum amount in currency units (multiplied by 1000 internally)
amount_tonumber-Maximum amount in currency units (multiplied by 1000 internally)
flow_typestringallRestrict amount filter to inflow, outflow, or all
sort_orderstringDESCSort order by date (ASC or DESC)

Example Request

curl -X GET "https://statements.finopsbricks.com/api/v1/transactions" \
  -H "api-key: fob_stm_xxxxxxxxxxxx" \
  -H "api-secret: xxxxxxxxxxxxxxxx"

Example: Filter by Date Range

curl -X GET "https://statements.finopsbricks.com/api/v1/transactions?date_from=2025-01-01&date_to=2025-01-31" \
  -H "api-key: fob_stm_xxxxxxxxxxxx" \
  -H "api-secret: xxxxxxxxxxxxxxxx"

Example: Filter by Account and Category

curl -X GET "https://statements.finopsbricks.com/api/v1/transactions?accounts=acc123&category=income" \
  -H "api-key: fob_stm_xxxxxxxxxxxx" \
  -H "api-secret: xxxxxxxxxxxxxxxx"

Example: Get Uncategorized Transactions

curl -X GET "https://statements.finopsbricks.com/api/v1/transactions?category=empty" \
  -H "api-key: fob_stm_xxxxxxxxxxxx" \
  -H "api-secret: xxxxxxxxxxxxxxxx"

Example: Filter by Amount Range (Outflow Only)

curl -X GET "https://statements.finopsbricks.com/api/v1/transactions?amount_from=1000&amount_to=5000&flow_type=outflow" \
  -H "api-key: fob_stm_xxxxxxxxxxxx" \
  -H "api-secret: xxxxxxxxxxxxxxxx"

amount_from and amount_to are in currency units (e.g. 1000 = ₹1,000); the server multiplies by 1000 internally to compare against stored milli-units.

Example: Filter by Currency

curl -X GET "https://statements.finopsbricks.com/api/v1/transactions?currency=USD" \
  -H "api-key: fob_stm_xxxxxxxxxxxx" \
  -H "api-secret: xxxxxxxxxxxxxxxx"

Currency lives on the account, so currency resolves to the org's accounts holding that currency and returns only their transactions. Useful for multi-currency orgs — never mix currencies when summing amounts client-side.

Response

{
  "data": [
    {
      "id": "abc123xyz789",
      "date": "2025-01-05",
      "particulars": "Payment received",
      "inflow": 1000500,
      "outflow": 0,
      "balance": 5000000,
      "entity": "Customer Inc",
      "category": "income",
      "type": "income",
      "po": null,
      "comments": null,
      "account_id": "acc123",
      "account_name": "Main Account",
      "account_currency": "INR",
      "statement": "stmt123"
    }
  ],
  "page_context": {
    "count": 1,
    "page": 1,
    "per_page": 100,
    "total": 150,
    "has_more": true
  }
}

Note: Monetary values (inflow, outflow, balance) are integers in milli-units. Divide by 1000 for display (e.g., 1000500 = 1000.50).

Response Fields

See Transaction Object for field descriptions.

Errors

CodeDescription
401Invalid or missing API credentials
403API key lacks transactions:read permission

See Also

For more advanced filtering, use the Search endpoint.