OpenAPI JSON
Method

MCP — connect AI assistants

The whole Finmap public API is also available as an MCP server (Model Context Protocol), so AI assistants like Claude, ChatGPT, Gemini, Mistral Le Chat or Perplexity can read and manage your Finmap data on your behalf: accounts, operations, invoices, counterparties, categories, projects and more.

https://api.finmap.online/mcp

Connect your AI assistant

  1. Open your assistant's Connectors settings and choose Add custom connector (in Claude: Settings → Connectors → Add custom connector).
  2. Paste the URL above and press Connect (leave the advanced fields empty).
  3. When the Finmap page opens, enter your API key — the same key you use for this API (Finmap → Settings → API keys).

The connector works with any MCP client that supports Streamable HTTP with OAuth. All permissions, plan limits and rate limits of your API key apply to MCP calls exactly as they do to this API.

Rate limits

Every endpoint is rate-limited per company (shared across all of that company's API keys). Limits are checked before the request is processed. Current limits:

  • 10 requests per 5 seconds
  • 120 requests per minute
  • per-day limit — unlimited for now

Every response carries the current window state as headers, reporting all windows at once as window=value pairs:

  • Max-Req-Count — e.g. 5s=10, 1m=120
  • Used-Req-Count — requests used in each window
  • Remaining-Req-Count — requests left in each window
  • Next-Possibility-At — ISO reset time of each window

When a limit is exceeded the API responds with HTTP 429 Too Many Requests and a Retry-After header (seconds to wait). Rejected (429) requests do not count against your quota. The same limits apply to MCP (AI-assistant) calls, since they use your API key. Only the /health endpoint and internal auto-rules traffic are exempt.

webhooks

Response
200 All available webhooks.
get /v2.2/webhooks
Response (200)
[
  {
    "id": "string",
    "name": "string",
    "url": "string"
  }
]
200 Success
[
  {
    "id": "string",
    "name": "string",
    "url": "string"
  }
]
401 Error
(no example)
Success (200) schema
(array)
Error (401) schema
—
Request
Body
NameTypeDescription
name * string —
url * string —
Response
201 Created.
NameTypeDescription
id * string —
name * string —
url * string —
post /v2.2/webhooks
Request body
{
  "name": "string",
  "url": "string"
}
Response (201)
{
  "id": "string",
  "name": "string",
  "url": "string"
}
201 Success
{
  "id": "string",
  "name": "string",
  "url": "string"
}
401 Error
(no example)
Success (201) schema
id string
name string
url string
Error (401) schema
—
Request
Path
NameTypeDescription
id * string —
Body
NameTypeDescription
name * string —
url * string —
Response
200 Updated.
NameTypeDescription
id * string —
name * string —
url * string —
patch /v2.2/webhooks/{id}
Request body
{
  "name": "string",
  "url": "string"
}
Response (200)
{
  "id": "string",
  "name": "string",
  "url": "string"
}
200 Success
{
  "id": "string",
  "name": "string",
  "url": "string"
}
401 Error
(no example)
Success (200) schema
id string
name string
url string
Error (401) schema
—
Request
Path
NameTypeDescription
id * string —
Response
200 Deleted.
delete /v2.2/webhooks/{id}
No example available
200 Success
(no example)
401 Error
(no example)
Success (200) schema
—
Error (401) schema
—

default

Response
200 The Health Check is successful
NameTypeDescription
status string —
info object —
error object —
details object —
get /v2.2/health
Response (200)
{
  "status": "ok",
  "info": {
    "database": {
      "status": "up"
    }
  },
  "error": {},
  "details": {
    "database": {
      "status": "up"
    }
  }
}
200 Success
{
  "status": "ok",
  "info": {
    "database": {
      "status": "up"
    }
  },
  "error": {},
  "details": {
    "database": {
      "status": "up"
    }
  }
}
503 Error
{
  "status": "error",
  "info": {
    "database": {
      "status": "up"
    }
  },
  "error": {
    "redis": {
      "status": "down",
      "message": "Could not connect"
    }
  },
  "details": {
    "database": {
      "status": "up"
    },
    "redis": {
      "status": "down",
      "message": "Could not connect"
    }
  }
}
Success (200) schema
status string
info object
(object)
error object
(object)
details object
(object)
Error (503) schema
status string
info object
(object)
error object
(object)
details object
(object)

currencies

Response
200 All supported currencies.
get /v2.2/currencies
Response (200)
[
  {
    "symbol": "string",
    "id": "string"
  }
]
200 Success
[
  {
    "symbol": "string",
    "id": "string"
  }
]
401 Error
(no example)
Success (200) schema
(array)
Error (401) schema
—

currencyExchangeRates

Get custom currency exchange rate
Response
200 All custom currency exchange rates
get /v2.2/currencyExchangeRates/custom/all
Response (200)
[
  {
    "from": "USD",
    "to": "EUR",
    "rate": 1.2
  }
]
200 Success
[
  {
    "from": "USD",
    "to": "EUR",
    "rate": 1.2
  }
]
401 Error
(no example)
Success (200) schema
(array)
Error (401) schema
—
Create or update custom currency exchange rate
Request
Body
NameTypeDescription
from * string from currency
to * string to currency
rate * number currency exchange rate
Response
201 Created or updated custom currency exchange rate
NameTypeDescription
from * string from currency
to * string to currency
rate * number currency exchange rate
post /v2.2/currencyExchangeRates/custom
Request body
{
  "from": "USD",
  "to": "EUR",
  "rate": 1.2
}
Response (201)
{
  "from": "USD",
  "to": "EUR",
  "rate": 1.2
}
201 Success
{
  "from": "USD",
  "to": "EUR",
  "rate": 1.2
}
401 Error
(no example)
Success (201) schema
from string from currency
to string to currency
rate number currency exchange rate
Error (401) schema
—
Delete custom currency exchange rate
Request
Path
NameTypeDescription
from * string from currency
to * string to currency
Response
200
NameTypeDescription
deleted * boolean deleted status
delete /v2.2/currencyExchangeRates/custom/{from}/{to}
URL
/v2.2/currencyExchangeRates/custom/USD/EUR
Response (200)
{
  "deleted": true
}
200 Success
{
  "deleted": true
}
401 Error
(no example)
Success (200) schema
deleted boolean deleted status
Error (401) schema
—

accounts

Request
Query
NameTypeDescription
withBalances string —
Response
200 All availables to write accounts.
get /v2.2/accounts
URL
/v2.2/accounts?withBalances=true
Response (200)
[
  {
    "id": "string",
    "label": "string",
    "parentId": "string",
    "currencyId": "string",
    "balance": 0,
    "companyCurrencyBalance": 0,
    "description": "string",
    "lock": true
  }
]
200 Success
[
  {
    "id": "string",
    "label": "string",
    "parentId": "string",
    "currencyId": "string",
    "balance": 0,
    "companyCurrencyBalance": 0,
    "description": "string",
    "lock": true
  }
]
401 Error
(no example)
Success (200) schema
(array)
Error (401) schema
—
Request
Path
NameTypeDescription
id string —
Body
NameTypeDescription
description string Free-form account description. Not rendered in the UI; stored for future use.
lock boolean Locks the account. Editable only by the company owner or a full-access user. While a lock is set, only the description may be edited.
Response
200 Edits only the account description and lock flag. Other fields cannot be changed.
NameTypeDescription
id * string —
label * string —
parentId * string —
currencyId * string —
balance number —
companyCurrencyBalance number —
description string —
lock boolean —
patch /v2.2/accounts/{id}
Request body
{
  "description": "string",
  "lock": true
}
Response (200)
{
  "id": "string",
  "label": "string",
  "parentId": "string",
  "currencyId": "string",
  "balance": 0,
  "companyCurrencyBalance": 0,
  "description": "string",
  "lock": true
}
200 Success
{
  "id": "string",
  "label": "string",
  "parentId": "string",
  "currencyId": "string",
  "balance": 0,
  "companyCurrencyBalance": 0,
  "description": "string",
  "lock": true
}
400 Error
(no example)
Success (200) schema
id string
label string
parentId string
currencyId string
balance number
companyCurrencyBalance number
description string
lock boolean
Error (400) schema
—

tags

Response
200 All availables tags.
get /v2.2/tags
Response (200)
[
  {
    "id": "string",
    "label": "string",
    "parentId": "string"
  }
]
200 Success
[
  {
    "id": "string",
    "label": "string",
    "parentId": "string"
  }
]
401 Error
(no example)
Success (200) schema
(array)
Error (401) schema
—
Request
Body
NameTypeDescription
label * string —
Response
201 Created.
NameTypeDescription
id * string —
label * string —
parentId * string —
post /v2.2/tags
Request body
{
  "label": "string"
}
Response (201)
{
  "id": "string",
  "label": "string",
  "parentId": "string"
}
201 Success
{
  "id": "string",
  "label": "string",
  "parentId": "string"
}
401 Error
(no example)
Success (201) schema
id string
label string
parentId string
Error (401) schema
—
Request
Path
NameTypeDescription
id * string —
Body
NameTypeDescription
label * string —
Response
200 Updated.
NameTypeDescription
id * string —
label * string —
parentId * string —
patch /v2.2/tags/{id}
Request body
{
  "label": "string"
}
Response (200)
{
  "id": "string",
  "label": "string",
  "parentId": "string"
}
200 Success
{
  "id": "string",
  "label": "string",
  "parentId": "string"
}
401 Error
(no example)
Success (200) schema
id string
label string
parentId string
Error (401) schema
—
Request
Path
NameTypeDescription
id * string —
Response
200 Deleted.
delete /v2.2/tags/{id}
No example available
200 Success
(no example)
401 Error
(no example)
Success (200) schema
—
Error (401) schema
—

projects

Response
200 All availables projects.
get /v2.2/projects
Response (200)
[
  {
    "id": "string",
    "label": "string",
    "parentId": "string"
  }
]
200 Success
[
  {
    "id": "string",
    "label": "string",
    "parentId": "string"
  }
]
401 Error
(no example)
Success (200) schema
(array)
Error (401) schema
—
Request
Body
NameTypeDescription
label * string —
Response
201 Created.
NameTypeDescription
id * string —
label * string —
parentId * string —
post /v2.2/projects
Request body
{
  "label": "string"
}
Response (201)
{
  "id": "string",
  "label": "string",
  "parentId": "string"
}
201 Success
{
  "id": "string",
  "label": "string",
  "parentId": "string"
}
401 Error
(no example)
Success (201) schema
id string
label string
parentId string
Error (401) schema
—
Request
Path
NameTypeDescription
id * string —
Body
NameTypeDescription
label * string —
Response
200 Updated.
NameTypeDescription
id * string —
label * string —
parentId * string —
patch /v2.2/projects/{id}
Request body
{
  "label": "string"
}
Response (200)
{
  "id": "string",
  "label": "string",
  "parentId": "string"
}
200 Success
{
  "id": "string",
  "label": "string",
  "parentId": "string"
}
401 Error
(no example)
Success (200) schema
id string
label string
parentId string
Error (401) schema
—
Request
Path
NameTypeDescription
id * string —
Response
200 Deleted.
delete /v2.2/projects/{id}
No example available
200 Success
(no example)
401 Error
(no example)
Success (200) schema
—
Error (401) schema
—

categories/income

Response
200 All availables category.
get /v2.2/categories/income
Response (200)
[
  {
    "id": "string",
    "label": "string",
    "parentId": "string",
    "isSystem": true,
    "vendorEditLockUrl": "string"
  }
]
200 Success
[
  {
    "id": "string",
    "label": "string",
    "parentId": "string",
    "isSystem": true,
    "vendorEditLockUrl": "string"
  }
]
401 Error
(no example)
Success (200) schema
(array)
Error (401) schema
—
Request
Body
NameTypeDescription
label * string —
vendorEditLockUrl * string —
parentId * string —
Response
201 Created.
NameTypeDescription
id * string —
label * string —
parentId * string —
isSystem * boolean —
vendorEditLockUrl * string —
post /v2.2/categories/income
Request body
{
  "label": "string",
  "vendorEditLockUrl": "string",
  "parentId": "string"
}
Response (201)
{
  "id": "string",
  "label": "string",
  "parentId": "string",
  "isSystem": true,
  "vendorEditLockUrl": "string"
}
201 Success
{
  "id": "string",
  "label": "string",
  "parentId": "string",
  "isSystem": true,
  "vendorEditLockUrl": "string"
}
401 Error
(no example)
Success (201) schema
id string
label string
parentId string
isSystem boolean
vendorEditLockUrl string
Error (401) schema
—
Request
Path
NameTypeDescription
id * string —
dashboardId * string —
Response
200 One filter item.
NameTypeDescription
id * string —
itemId * string —
type * string —
get /v2.2/categories/income/{id}/excludeFilterByDashboard/{dashboardId}
Response (200)
{
  "id": "string",
  "itemId": "string",
  "type": "string"
}
200 Success
{
  "id": "string",
  "itemId": "string",
  "type": "string"
}
401 Error
(no example)
Success (200) schema
id string
itemId string
type string
Error (401) schema
—
Request
Path
NameTypeDescription
id * string —
dashboardId * string —
Response
201 Created.
NameTypeDescription
id * string —
itemId * string —
type * string —
post /v2.2/categories/income/{id}/excludeFilterByDashboard/{dashboardId}
Response (201)
{
  "id": "string",
  "itemId": "string",
  "type": "string"
}
201 Success
{
  "id": "string",
  "itemId": "string",
  "type": "string"
}
401 Error
(no example)
Success (201) schema
id string
itemId string
type string
Error (401) schema
—
Request
Path
NameTypeDescription
id * string —
dashboardId * string —
Response
200 Deleted.
NameTypeDescription
id * string —
itemId * string —
type * string —
delete /v2.2/categories/income/{id}/excludeFilterByDashboard/{dashboardId}
Response (200)
{
  "id": "string",
  "itemId": "string",
  "type": "string"
}
200 Success
{
  "id": "string",
  "itemId": "string",
  "type": "string"
}
401 Error
(no example)
Success (200) schema
id string
itemId string
type string
Error (401) schema
—
Request
Path
NameTypeDescription
id * string —
Body
NameTypeDescription
label * string —
vendorEditLockUrl * string —
parentId * string —
Response
200 Updated.
NameTypeDescription
id * string —
label * string —
parentId * string —
isSystem * boolean —
vendorEditLockUrl * string —
patch /v2.2/categories/income/{id}
Request body
{
  "label": "string",
  "vendorEditLockUrl": "string",
  "parentId": "string"
}
Response (200)
{
  "id": "string",
  "label": "string",
  "parentId": "string",
  "isSystem": true,
  "vendorEditLockUrl": "string"
}
200 Success
{
  "id": "string",
  "label": "string",
  "parentId": "string",
  "isSystem": true,
  "vendorEditLockUrl": "string"
}
401 Error
(no example)
Success (200) schema
id string
label string
parentId string
isSystem boolean
vendorEditLockUrl string
Error (401) schema
—
Request
Path
NameTypeDescription
id * string —
Response
200 Deleted.
delete /v2.2/categories/income/{id}
No example available
200 Success
(no example)
401 Error
(no example)
Success (200) schema
—
Error (401) schema
—

categories/expense

Response
200 All availables category.
get /v2.2/categories/expense
Response (200)
[
  {
    "id": "string",
    "label": "string",
    "parentId": "string",
    "isSystem": true,
    "vendorEditLockUrl": "string"
  }
]
200 Success
[
  {
    "id": "string",
    "label": "string",
    "parentId": "string",
    "isSystem": true,
    "vendorEditLockUrl": "string"
  }
]
401 Error
(no example)
Success (200) schema
(array)
Error (401) schema
—
Request
Body
NameTypeDescription
label * string —
vendorEditLockUrl * string —
parentId * string —
Response
201 Created.
NameTypeDescription
id * string —
label * string —
parentId * string —
isSystem * boolean —
vendorEditLockUrl * string —
post /v2.2/categories/expense
Request body
{
  "label": "string",
  "vendorEditLockUrl": "string",
  "parentId": "string"
}
Response (201)
{
  "id": "string",
  "label": "string",
  "parentId": "string",
  "isSystem": true,
  "vendorEditLockUrl": "string"
}
201 Success
{
  "id": "string",
  "label": "string",
  "parentId": "string",
  "isSystem": true,
  "vendorEditLockUrl": "string"
}
401 Error
(no example)
Success (201) schema
id string
label string
parentId string
isSystem boolean
vendorEditLockUrl string
Error (401) schema
—
Request
Path
NameTypeDescription
id * string —
dashboardId * string —
Response
200 One filter item.
NameTypeDescription
id * string —
itemId * string —
type * string —
get /v2.2/categories/expense/{id}/excludeFilterByDashboard/{dashboardId}
Response (200)
{
  "id": "string",
  "itemId": "string",
  "type": "string"
}
200 Success
{
  "id": "string",
  "itemId": "string",
  "type": "string"
}
401 Error
(no example)
Success (200) schema
id string
itemId string
type string
Error (401) schema
—
Request
Path
NameTypeDescription
id * string —
dashboardId * string —
Response
201 Created.
NameTypeDescription
id * string —
itemId * string —
type * string —
post /v2.2/categories/expense/{id}/excludeFilterByDashboard/{dashboardId}
Response (201)
{
  "id": "string",
  "itemId": "string",
  "type": "string"
}
201 Success
{
  "id": "string",
  "itemId": "string",
  "type": "string"
}
401 Error
(no example)
Success (201) schema
id string
itemId string
type string
Error (401) schema
—
Request
Path
NameTypeDescription
id * string —
dashboardId * string —
Response
200 Deleted.
NameTypeDescription
id * string —
itemId * string —
type * string —
delete /v2.2/categories/expense/{id}/excludeFilterByDashboard/{dashboardId}
Response (200)
{
  "id": "string",
  "itemId": "string",
  "type": "string"
}
200 Success
{
  "id": "string",
  "itemId": "string",
  "type": "string"
}
401 Error
(no example)
Success (200) schema
id string
itemId string
type string
Error (401) schema
—
Request
Path
NameTypeDescription
id * string —
Body
NameTypeDescription
label * string —
vendorEditLockUrl * string —
parentId * string —
Response
200 Updated.
NameTypeDescription
id * string —
label * string —
parentId * string —
isSystem * boolean —
vendorEditLockUrl * string —
patch /v2.2/categories/expense/{id}
Request body
{
  "label": "string",
  "vendorEditLockUrl": "string",
  "parentId": "string"
}
Response (200)
{
  "id": "string",
  "label": "string",
  "parentId": "string",
  "isSystem": true,
  "vendorEditLockUrl": "string"
}
200 Success
{
  "id": "string",
  "label": "string",
  "parentId": "string",
  "isSystem": true,
  "vendorEditLockUrl": "string"
}
401 Error
(no example)
Success (200) schema
id string
label string
parentId string
isSystem boolean
vendorEditLockUrl string
Error (401) schema
—
Request
Path
NameTypeDescription
id * string —
Response
200 Deleted.
delete /v2.2/categories/expense/{id}
No example available
200 Success
(no example)
401 Error
(no example)
Success (200) schema
—
Error (401) schema
—

investors

Response
200 All availables investors.
get /v2.2/investors
Response (200)
[
  {
    "id": "string",
    "label": "string",
    "parentId": "string"
  }
]
200 Success
[
  {
    "id": "string",
    "label": "string",
    "parentId": "string"
  }
]
400 Error
(no example)
Success (200) schema
(array)
Error (400) schema
—
Request
Body
NameTypeDescription
label * string —
Response
201 Created.
NameTypeDescription
id * string —
label * string —
parentId * string —
post /v2.2/investors
Request body
{
  "label": "string"
}
Response (201)
{
  "id": "string",
  "label": "string",
  "parentId": "string"
}
201 Success
{
  "id": "string",
  "label": "string",
  "parentId": "string"
}
400 Error
(no example)
Success (201) schema
id string
label string
parentId string
Error (400) schema
—
Request
Path
NameTypeDescription
id * string —
Body
NameTypeDescription
label * string —
Response
200 Updated.
NameTypeDescription
id * string —
label * string —
parentId * string —
patch /v2.2/investors/{id}
Request body
{
  "label": "string"
}
Response (200)
{
  "id": "string",
  "label": "string",
  "parentId": "string"
}
200 Success
{
  "id": "string",
  "label": "string",
  "parentId": "string"
}
400 Error
(no example)
Success (200) schema
id string
label string
parentId string
Error (400) schema
—
Request
Path
NameTypeDescription
id * string —
Response
200 Deleted.
delete /v2.2/investors/{id}
No example available
200 Success
(no example)
400 Error
(no example)
Success (200) schema
—
Error (400) schema
—

creditors

Response
200 All availables creditors.
get /v2.2/creditors
Response (200)
[
  {
    "id": "string",
    "label": "string",
    "parentId": "string"
  }
]
200 Success
[
  {
    "id": "string",
    "label": "string",
    "parentId": "string"
  }
]
401 Error
(no example)
Success (200) schema
(array)
Error (401) schema
—
Request
Body
NameTypeDescription
label * string —
Response
201 Created.
NameTypeDescription
id * string —
label * string —
parentId * string —
post /v2.2/creditors
Request body
{
  "label": "string"
}
Response (201)
{
  "id": "string",
  "label": "string",
  "parentId": "string"
}
201 Success
{
  "id": "string",
  "label": "string",
  "parentId": "string"
}
401 Error
(no example)
Success (201) schema
id string
label string
parentId string
Error (401) schema
—
Request
Path
NameTypeDescription
id * string —
Body
NameTypeDescription
label * string —
Response
200 Updated.
NameTypeDescription
id * string —
label * string —
parentId * string —
patch /v2.2/creditors/{id}
Request body
{
  "label": "string"
}
Response (200)
{
  "id": "string",
  "label": "string",
  "parentId": "string"
}
200 Success
{
  "id": "string",
  "label": "string",
  "parentId": "string"
}
401 Error
(no example)
Success (200) schema
id string
label string
parentId string
Error (401) schema
—
Request
Path
NameTypeDescription
id * string —
Response
200 Deleted.
delete /v2.2/creditors/{id}
No example available
200 Success
(no example)
401 Error
(no example)
Success (200) schema
—
Error (401) schema
—

debitors

Response
200 All availables customers.
get /v2.2/debitors
Response (200)
[
  {
    "id": "string",
    "label": "string",
    "parentId": "string"
  }
]
200 Success
[
  {
    "id": "string",
    "label": "string",
    "parentId": "string"
  }
]
401 Error
(no example)
Success (200) schema
(array)
Error (401) schema
—
Request
Body
NameTypeDescription
label * string —
Response
201 Created.
NameTypeDescription
id * string —
label * string —
parentId * string —
post /v2.2/debitors
Request body
{
  "label": "string"
}
Response (201)
{
  "id": "string",
  "label": "string",
  "parentId": "string"
}
201 Success
{
  "id": "string",
  "label": "string",
  "parentId": "string"
}
401 Error
(no example)
Success (201) schema
id string
label string
parentId string
Error (401) schema
—
Request
Path
NameTypeDescription
id * string —
Body
NameTypeDescription
label * string —
Response
200 Updated.
NameTypeDescription
id * string —
label * string —
parentId * string —
patch /v2.2/debitors/{id}
Request body
{
  "label": "string"
}
Response (200)
{
  "id": "string",
  "label": "string",
  "parentId": "string"
}
200 Success
{
  "id": "string",
  "label": "string",
  "parentId": "string"
}
401 Error
(no example)
Success (200) schema
id string
label string
parentId string
Error (401) schema
—
Request
Path
NameTypeDescription
id * string —
Response
200 Deleted.
delete /v2.2/debitors/{id}
No example available
200 Success
(no example)
401 Error
(no example)
Success (200) schema
—
Error (401) schema
—

suppliers

Response
200 All availables suppliers.
get /v2.2/suppliers
Response (200)
[
  {
    "id": "string",
    "label": "string",
    "parentId": "string"
  }
]
200 Success
[
  {
    "id": "string",
    "label": "string",
    "parentId": "string"
  }
]
401 Error
(no example)
Success (200) schema
(array)
Error (401) schema
—
Request
Body
NameTypeDescription
label * string —
Response
201 Created.
NameTypeDescription
id * string —
label * string —
parentId * string —
post /v2.2/suppliers
Request body
{
  "label": "string"
}
Response (201)
{
  "id": "string",
  "label": "string",
  "parentId": "string"
}
201 Success
{
  "id": "string",
  "label": "string",
  "parentId": "string"
}
401 Error
(no example)
Success (201) schema
id string
label string
parentId string
Error (401) schema
—
Request
Path
NameTypeDescription
id * string —
Body
NameTypeDescription
label * string —
Response
200 Updated.
NameTypeDescription
id * string —
label * string —
parentId * string —
patch /v2.2/suppliers/{id}
Request body
{
  "label": "string"
}
Response (200)
{
  "id": "string",
  "label": "string",
  "parentId": "string"
}
200 Success
{
  "id": "string",
  "label": "string",
  "parentId": "string"
}
401 Error
(no example)
Success (200) schema
id string
label string
parentId string
Error (401) schema
—
Request
Path
NameTypeDescription
id * string —
Response
200 Deleted.
delete /v2.2/suppliers/{id}
No example available
200 Success
(no example)
401 Error
(no example)
Success (200) schema
—
Error (401) schema
—

employees

Response
200 All availables employees.
get /v2.2/employees
Response (200)
[
  {
    "id": "string",
    "label": "string",
    "parentId": "string"
  }
]
200 Success
[
  {
    "id": "string",
    "label": "string",
    "parentId": "string"
  }
]
400 Error
(no example)
Success (200) schema
(array)
Error (400) schema
—
Request
Body
NameTypeDescription
label * string —
Response
201 Created.
NameTypeDescription
id * string —
label * string —
parentId * string —
post /v2.2/employees
Request body
{
  "label": "string"
}
Response (201)
{
  "id": "string",
  "label": "string",
  "parentId": "string"
}
201 Success
{
  "id": "string",
  "label": "string",
  "parentId": "string"
}
400 Error
(no example)
Success (201) schema
id string
label string
parentId string
Error (400) schema
—
Request
Path
NameTypeDescription
id * string —
Body
NameTypeDescription
label * string —
Response
200 Updated.
NameTypeDescription
id * string —
label * string —
parentId * string —
patch /v2.2/employees/{id}
Request body
{
  "label": "string"
}
Response (200)
{
  "id": "string",
  "label": "string",
  "parentId": "string"
}
200 Success
{
  "id": "string",
  "label": "string",
  "parentId": "string"
}
400 Error
(no example)
Success (200) schema
id string
label string
parentId string
Error (400) schema
—
Request
Path
NameTypeDescription
id * string —
Response
200 Deleted.
delete /v2.2/employees/{id}
No example available
200 Success
(no example)
400 Error
(no example)
Success (200) schema
—
Error (400) schema
—

owners

Response
200 All availables employees.
get /v2.2/owners
Response (200)
[
  {
    "id": "string",
    "label": "string",
    "parentId": "string"
  }
]
200 Success
[
  {
    "id": "string",
    "label": "string",
    "parentId": "string"
  }
]
400 Error
(no example)
Success (200) schema
(array)
Error (400) schema
—
Request
Body
NameTypeDescription
label * string —
Response
201 Created.
NameTypeDescription
id * string —
label * string —
parentId * string —
post /v2.2/owners
Request body
{
  "label": "string"
}
Response (201)
{
  "id": "string",
  "label": "string",
  "parentId": "string"
}
201 Success
{
  "id": "string",
  "label": "string",
  "parentId": "string"
}
400 Error
(no example)
Success (201) schema
id string
label string
parentId string
Error (400) schema
—
Request
Path
NameTypeDescription
id * string —
Body
NameTypeDescription
label * string —
Response
200 Updated.
NameTypeDescription
id * string —
label * string —
parentId * string —
patch /v2.2/owners/{id}
Request body
{
  "label": "string"
}
Response (200)
{
  "id": "string",
  "label": "string",
  "parentId": "string"
}
200 Success
{
  "id": "string",
  "label": "string",
  "parentId": "string"
}
400 Error
(no example)
Success (200) schema
id string
label string
parentId string
Error (400) schema
—
Request
Path
NameTypeDescription
id * string —
Response
200 Deleted.
delete /v2.2/owners/{id}
No example available
200 Success
(no example)
400 Error
(no example)
Success (200) schema
—
Error (400) schema
—

tax-organisations

Response
200 All availables employees.
get /v2.2/tax-organisations
Response (200)
[
  {
    "id": "string",
    "label": "string",
    "parentId": "string"
  }
]
200 Success
[
  {
    "id": "string",
    "label": "string",
    "parentId": "string"
  }
]
400 Error
(no example)
Success (200) schema
(array)
Error (400) schema
—
Request
Body
NameTypeDescription
label * string —
Response
201 Created.
NameTypeDescription
id * string —
label * string —
parentId * string —
post /v2.2/tax-organisations
Request body
{
  "label": "string"
}
Response (201)
{
  "id": "string",
  "label": "string",
  "parentId": "string"
}
201 Success
{
  "id": "string",
  "label": "string",
  "parentId": "string"
}
400 Error
(no example)
Success (201) schema
id string
label string
parentId string
Error (400) schema
—
Request
Path
NameTypeDescription
id * string —
Body
NameTypeDescription
label * string —
Response
201 Updated.
NameTypeDescription
id * string —
label * string —
parentId * string —
patch /v2.2/tax-organisations/{id}
Request body
{
  "label": "string"
}
Response (201)
{
  "id": "string",
  "label": "string",
  "parentId": "string"
}
201 Success
{
  "id": "string",
  "label": "string",
  "parentId": "string"
}
400 Error
(no example)
Success (201) schema
id string
label string
parentId string
Error (400) schema
—
Request
Path
NameTypeDescription
id * string —
Response
200 Deleted.
delete /v2.2/tax-organisations/{id}
No example available
200 Success
(no example)
400 Error
(no example)
Success (200) schema
—
Error (400) schema
—

operations/income

Create income operation
Request
Query
NameTypeDescription
offset number User timezone offset (in milliseconds), influence only "approved" field (defines whether operation is future).
Body
NameTypeDescription
date number Date of operation
Default: current date in utc
amount number Sum of operation
Default: 0
comment string —
amountInCompanyCurrency number —
exchangeRate number —
transactionSum number —
transactionCurrency number —
transactionCurrencyRate number —
dateOfPayment number —
startDate number —
endDate number —
accountToId string —
categoryId string —
counterpartyId string One field for all counterparty types. You can pass here borrowerId, creditorId, customerId, investorId
borrowerId string —
creditorId string —
customerId string —
investorId string —
projectId string Id of project
projects array —
categories array —
tagIds array Ids of tags
externalId string unique operation identifier
Default: new uuid v4
Response
201 Created.
NameTypeDescription
status * string —
statusCode * string —
post /v2.2/operations/income
URL
/v2.2/operations/income?offset=7200000
Request body
{
  "date": 1792740939727,
  "amount": 100,
  "comment": "Test API",
  "amountInCompanyCurrency": 100,
  "exchangeRate": 0.3,
  "transactionSum": 100,
  "transactionCurrency": "USD",
  "transactionCurrencyRate": 0.3,
  "dateOfPayment": 1792913739728,
  "startDate": 1790812800000,
  "endDate": 1793491199999,
  "accountToId": "6adb0e4b61e2fd8b3f6b6bb9",
  "categoryId": "6adb0e4b61e2fd8b3f6b6bba",
  "counterpartyId": "6adb0e4b61e2fd8b3f6b6bbb",
  "borrowerId": "6adb0e4b61e2fd8b3f6b6bbc",
  "creditorId": "6adb0e4b61e2fd8b3f6b6bbd",
  "customerId": "6adb0e4b61e2fd8b3f6b6bbe",
  "investorId": "6adb0e4b61e2fd8b3f6b6bbf",
  "projectId": "6adb0e4b61e2fd8b3f6b6bc2",
  "projects": [
    {
      "id": "69009f27afd43b202cd54aa0",
      "stake": 100,
      "companyCurrencySum": 100,
      "sum": 100,
      "transactionSum": 100
    }
  ],
  "categories": [
    {
      "id": "69009f27afd43b202cd54aa0",
      "stake": 100,
      "companyCurrencySum": 100,
      "sum": 100,
      "transactionSum": 100
    }
  ],
  "tagIds": [
    "6adb0e4b61e2fd8b3f6b6bc3"
  ],
  "externalId": "8ac4fd7a-ac9a-47b1-adcf-d86bd4c8beb3"
}
Response (201)
{
  "status": "Processed now",
  "statusCode": "1"
}
201 Success
{
  "status": "Processed now",
  "statusCode": "1"
}
400 Error
(no example)
Success (201) schema
status string
Processed nowStoredErrorIn the queue for processing
statusCode string
1230
Error (400) schema
—
Update operation by id
Request
Path
NameTypeDescription
id * string —
Query
NameTypeDescription
offset number User timezone offset (in milliseconds), influence only "approved" field (defines whether operation is future).
Body
NameTypeDescription
comment string —
amountInCompanyCurrency number —
exchangeRate number —
transactionSum number —
transactionCurrency number —
transactionCurrencyRate number —
dateOfPayment number —
startDate number —
endDate number —
accountToId string —
categoryId string —
counterpartyId string One field for all counterparty types. You can pass here borrowerId, creditorId, customerId, investorId
borrowerId string —
creditorId string —
customerId string —
investorId string —
projectId string Id of project
projects array —
categories array —
tagIds array Ids of tags
date number Date of operation
Default: current date in utc
amount number Sum of operation
externalDevComment string Field to be filled by integration developers (not visible to users)
Response
200 Updated.
NameTypeDescription
status * string —
statusCode * string —
patch /v2.2/operations/income/{id}
URL
/v2.2/operations/income/6adb0e4b61e2fd8b3f6b6bc4?offset=7200000
Request body
{
  "comment": "Test API",
  "amountInCompanyCurrency": 100,
  "exchangeRate": 0.3,
  "transactionSum": 100,
  "transactionCurrency": "USD",
  "transactionCurrencyRate": 0.3,
  "dateOfPayment": 1792913739728,
  "startDate": 1790812800000,
  "endDate": 1793491199999,
  "accountToId": "6adb0e4b61e2fd8b3f6b6bb9",
  "categoryId": "6adb0e4b61e2fd8b3f6b6bba",
  "counterpartyId": "6adb0e4b61e2fd8b3f6b6bbb",
  "borrowerId": "6adb0e4b61e2fd8b3f6b6bbc",
  "creditorId": "6adb0e4b61e2fd8b3f6b6bbd",
  "customerId": "6adb0e4b61e2fd8b3f6b6bbe",
  "investorId": "6adb0e4b61e2fd8b3f6b6bbf",
  "projectId": "6adb0e4b61e2fd8b3f6b6bc2",
  "projects": [
    {
      "id": "69009f27afd43b202cd54aa0",
      "stake": 100,
      "companyCurrencySum": 100,
      "sum": 100,
      "transactionSum": 100
    }
  ],
  "categories": [
    {
      "id": "69009f27afd43b202cd54aa0",
      "stake": 100,
      "companyCurrencySum": 100,
      "sum": 100,
      "transactionSum": 100
    }
  ],
  "tagIds": [
    "6adb0e4b61e2fd8b3f6b6bc3"
  ],
  "date": 1792740939732,
  "amount": 100,
  "externalDevComment": "string"
}
Response (200)
{
  "status": "Processed now",
  "statusCode": "1"
}
200 Success
{
  "status": "Processed now",
  "statusCode": "1"
}
400 Error
(no example)
Success (200) schema
status string
Processed nowStoredErrorIn the queue for processing
statusCode string
1230
Error (400) schema
—
Delete operation by id
Request
Path
NameTypeDescription
id * string —
Response
200 Deleted.
NameTypeDescription
status * string —
statusCode * string —
delete /v2.2/operations/income/{id}
URL
/v2.2/operations/income/6adb0e4b61e2fd8b3f6b6bc4
Response (200)
{
  "status": "Processed now",
  "statusCode": "1"
}
200 Success
{
  "status": "Processed now",
  "statusCode": "1"
}
400 Error
(no example)
Success (200) schema
status string
Processed nowStoredErrorIn the queue for processing
statusCode string
1230
Error (400) schema
—
Update operation by externalId
Request
Path
NameTypeDescription
id * string —
Query
NameTypeDescription
offset number User timezone offset (in milliseconds), influence only "approved" field (defines whether operation is future).
Body
NameTypeDescription
comment string —
amountInCompanyCurrency number —
exchangeRate number —
transactionSum number —
transactionCurrency number —
transactionCurrencyRate number —
dateOfPayment number —
startDate number —
endDate number —
accountToId string —
categoryId string —
counterpartyId string One field for all counterparty types. You can pass here borrowerId, creditorId, customerId, investorId
borrowerId string —
creditorId string —
customerId string —
investorId string —
projectId string Id of project
projects array —
categories array —
tagIds array Ids of tags
date number Date of operation
Default: current date in utc
amount number Sum of operation
externalDevComment string Field to be filled by integration developers (not visible to users)
Response
200 Updated.
NameTypeDescription
status * string —
statusCode * string —
patch /v2.2/operations/income/byExternalId/{id}
URL
/v2.2/operations/income/byExternalId/dffdb7ff-b1da-437a-b19b-3aed4cf7b2ff?offset=7200000
Request body
{
  "comment": "Test API",
  "amountInCompanyCurrency": 100,
  "exchangeRate": 0.3,
  "transactionSum": 100,
  "transactionCurrency": "USD",
  "transactionCurrencyRate": 0.3,
  "dateOfPayment": 1792913739728,
  "startDate": 1790812800000,
  "endDate": 1793491199999,
  "accountToId": "6adb0e4b61e2fd8b3f6b6bb9",
  "categoryId": "6adb0e4b61e2fd8b3f6b6bba",
  "counterpartyId": "6adb0e4b61e2fd8b3f6b6bbb",
  "borrowerId": "6adb0e4b61e2fd8b3f6b6bbc",
  "creditorId": "6adb0e4b61e2fd8b3f6b6bbd",
  "customerId": "6adb0e4b61e2fd8b3f6b6bbe",
  "investorId": "6adb0e4b61e2fd8b3f6b6bbf",
  "projectId": "6adb0e4b61e2fd8b3f6b6bc2",
  "projects": [
    {
      "id": "69009f27afd43b202cd54aa0",
      "stake": 100,
      "companyCurrencySum": 100,
      "sum": 100,
      "transactionSum": 100
    }
  ],
  "categories": [
    {
      "id": "69009f27afd43b202cd54aa0",
      "stake": 100,
      "companyCurrencySum": 100,
      "sum": 100,
      "transactionSum": 100
    }
  ],
  "tagIds": [
    "6adb0e4b61e2fd8b3f6b6bc3"
  ],
  "date": 1792740939732,
  "amount": 100,
  "externalDevComment": "string"
}
Response (200)
{
  "status": "Processed now",
  "statusCode": "1"
}
200 Success
{
  "status": "Processed now",
  "statusCode": "1"
}
400 Error
(no example)
Success (200) schema
status string
Processed nowStoredErrorIn the queue for processing
statusCode string
1230
Error (400) schema
—
Delete operation by externalId
Request
Path
NameTypeDescription
id * string —
Response
200 Deleted.
NameTypeDescription
status * string —
statusCode * string —
delete /v2.2/operations/income/byExternalId/{id}
URL
/v2.2/operations/income/byExternalId/dffdb7ff-b1da-437a-b19b-3aed4cf7b2ff
Response (200)
{
  "status": "Processed now",
  "statusCode": "1"
}
200 Success
{
  "status": "Processed now",
  "statusCode": "1"
}
400 Error
(no example)
Success (200) schema
status string
Processed nowStoredErrorIn the queue for processing
statusCode string
1230
Error (400) schema
—

operations/expense

Create expense operation
Request
Query
NameTypeDescription
offset number User timezone offset (in milliseconds), influence only "approved" field (defines whether operation is future).
Body
NameTypeDescription
date number Date of operation
Default: current date in utc
amount number Sum of operation
Default: 0
comment string —
amountInCompanyCurrency number —
exchangeRate number —
transactionSum number —
transactionCurrency number —
transactionCurrencyRate number —
dateOfPayment number —
startDate number —
endDate number —
accountFromId string —
categoryId string —
counterpartyId string One field for all counterparty types. You can pass here borrowerId, creditorId, employeeId, supplierId, ownerId, taxOrganisationId
borrowerId string —
creditorId string —
employeeId string —
supplierId string —
ownerId string —
taxOrganisationId string —
projectId string Id of project
projects array —
categories array —
tagIds array Ids of tags
externalId string unique operation identifier
Default: new uuid v4
Response
201 Created.
NameTypeDescription
status * string —
statusCode * string —
post /v2.2/operations/expense
URL
/v2.2/operations/expense?offset=7200000
Request body
{
  "date": 1792740939727,
  "amount": 100,
  "comment": "Test API",
  "amountInCompanyCurrency": 100,
  "exchangeRate": 0.3,
  "transactionSum": 100,
  "transactionCurrency": "USD",
  "transactionCurrencyRate": 0.3,
  "dateOfPayment": 1792913739728,
  "startDate": 1790812800000,
  "endDate": 1793491199999,
  "accountFromId": "6adb0e4b61e2fd8b3f6b6bb0",
  "categoryId": "6adb0e4b61e2fd8b3f6b6bb1",
  "counterpartyId": "6adb0e4b61e2fd8b3f6b6bb2",
  "borrowerId": "6adb0e4b61e2fd8b3f6b6bb3",
  "creditorId": "6adb0e4b61e2fd8b3f6b6bb4",
  "employeeId": "6adb0e4b61e2fd8b3f6b6bb5",
  "supplierId": "6adb0e4b61e2fd8b3f6b6bb6",
  "ownerId": "6adb0e4b61e2fd8b3f6b6bb7",
  "taxOrganisationId": "6adb0e4b61e2fd8b3f6b6bb8",
  "projectId": "6adb0e4b61e2fd8b3f6b6bc2",
  "projects": [
    {
      "id": "69009f27afd43b202cd54aa0",
      "stake": 100,
      "companyCurrencySum": 100,
      "sum": 100,
      "transactionSum": 100
    }
  ],
  "categories": [
    {
      "id": "69009f27afd43b202cd54aa0",
      "stake": 100,
      "companyCurrencySum": 100,
      "sum": 100,
      "transactionSum": 100
    }
  ],
  "tagIds": [
    "6adb0e4b61e2fd8b3f6b6bc3"
  ],
  "externalId": "8ac4fd7a-ac9a-47b1-adcf-d86bd4c8beb3"
}
Response (201)
{
  "status": "Processed now",
  "statusCode": "1"
}
201 Success
{
  "status": "Processed now",
  "statusCode": "1"
}
400 Error
(no example)
Success (201) schema
status string
Processed nowStoredErrorIn the queue for processing
statusCode string
1230
Error (400) schema
—
Update operation by id
Request
Path
NameTypeDescription
id * string —
Query
NameTypeDescription
offset number User timezone offset (in milliseconds), influence only "approved" field (defines whether operation is future).
Body
NameTypeDescription
comment string —
amountInCompanyCurrency number —
exchangeRate number —
transactionSum number —
transactionCurrency number —
transactionCurrencyRate number —
dateOfPayment number —
startDate number —
endDate number —
accountFromId string —
categoryId string —
counterpartyId string One field for all counterparty types. You can pass here borrowerId, creditorId, employeeId, supplierId, ownerId, taxOrganisationId
borrowerId string —
creditorId string —
employeeId string —
supplierId string —
ownerId string —
taxOrganisationId string —
projectId string Id of project
projects array —
categories array —
tagIds array Ids of tags
date number Date of operation
Default: current date in utc
amount number Sum of operation
externalDevComment string Field to be filled by integration developers (not visible to users)
Response
200 Updated.
NameTypeDescription
status * string —
statusCode * string —
patch /v2.2/operations/expense/{id}
URL
/v2.2/operations/expense/6adb0e4b61e2fd8b3f6b6bc4?offset=7200000
Request body
{
  "comment": "Test API",
  "amountInCompanyCurrency": 100,
  "exchangeRate": 0.3,
  "transactionSum": 100,
  "transactionCurrency": "USD",
  "transactionCurrencyRate": 0.3,
  "dateOfPayment": 1792913739728,
  "startDate": 1790812800000,
  "endDate": 1793491199999,
  "accountFromId": "6adb0e4b61e2fd8b3f6b6bb0",
  "categoryId": "6adb0e4b61e2fd8b3f6b6bb1",
  "counterpartyId": "6adb0e4b61e2fd8b3f6b6bb2",
  "borrowerId": "6adb0e4b61e2fd8b3f6b6bb3",
  "creditorId": "6adb0e4b61e2fd8b3f6b6bb4",
  "employeeId": "6adb0e4b61e2fd8b3f6b6bb5",
  "supplierId": "6adb0e4b61e2fd8b3f6b6bb6",
  "ownerId": "6adb0e4b61e2fd8b3f6b6bb7",
  "taxOrganisationId": "6adb0e4b61e2fd8b3f6b6bb8",
  "projectId": "6adb0e4b61e2fd8b3f6b6bc2",
  "projects": [
    {
      "id": "69009f27afd43b202cd54aa0",
      "stake": 100,
      "companyCurrencySum": 100,
      "sum": 100,
      "transactionSum": 100
    }
  ],
  "categories": [
    {
      "id": "69009f27afd43b202cd54aa0",
      "stake": 100,
      "companyCurrencySum": 100,
      "sum": 100,
      "transactionSum": 100
    }
  ],
  "tagIds": [
    "6adb0e4b61e2fd8b3f6b6bc3"
  ],
  "date": 1792740939732,
  "amount": 100,
  "externalDevComment": "string"
}
Response (200)
{
  "status": "Processed now",
  "statusCode": "1"
}
200 Success
{
  "status": "Processed now",
  "statusCode": "1"
}
400 Error
(no example)
Success (200) schema
status string
Processed nowStoredErrorIn the queue for processing
statusCode string
1230
Error (400) schema
—
Delete operation by id
Request
Path
NameTypeDescription
id * string —
Response
200 Deleted.
NameTypeDescription
status * string —
statusCode * string —
delete /v2.2/operations/expense/{id}
URL
/v2.2/operations/expense/6adb0e4b61e2fd8b3f6b6bc4
Response (200)
{
  "status": "Processed now",
  "statusCode": "1"
}
200 Success
{
  "status": "Processed now",
  "statusCode": "1"
}
400 Error
(no example)
Success (200) schema
status string
Processed nowStoredErrorIn the queue for processing
statusCode string
1230
Error (400) schema
—
Update operation by externalId
Request
Path
NameTypeDescription
id * string —
Query
NameTypeDescription
offset number User timezone offset (in milliseconds), influence only "approved" field (defines whether operation is future).
Body
NameTypeDescription
comment string —
amountInCompanyCurrency number —
exchangeRate number —
transactionSum number —
transactionCurrency number —
transactionCurrencyRate number —
dateOfPayment number —
startDate number —
endDate number —
accountFromId string —
categoryId string —
counterpartyId string One field for all counterparty types. You can pass here borrowerId, creditorId, employeeId, supplierId, ownerId, taxOrganisationId
borrowerId string —
creditorId string —
employeeId string —
supplierId string —
ownerId string —
taxOrganisationId string —
projectId string Id of project
projects array —
categories array —
tagIds array Ids of tags
date number Date of operation
Default: current date in utc
amount number Sum of operation
externalDevComment string Field to be filled by integration developers (not visible to users)
Response
200 Updated.
NameTypeDescription
status * string —
statusCode * string —
patch /v2.2/operations/expense/byExternalId/{id}
URL
/v2.2/operations/expense/byExternalId/dffdb7ff-b1da-437a-b19b-3aed4cf7b2ff?offset=7200000
Request body
{
  "comment": "Test API",
  "amountInCompanyCurrency": 100,
  "exchangeRate": 0.3,
  "transactionSum": 100,
  "transactionCurrency": "USD",
  "transactionCurrencyRate": 0.3,
  "dateOfPayment": 1792913739728,
  "startDate": 1790812800000,
  "endDate": 1793491199999,
  "accountFromId": "6adb0e4b61e2fd8b3f6b6bb0",
  "categoryId": "6adb0e4b61e2fd8b3f6b6bb1",
  "counterpartyId": "6adb0e4b61e2fd8b3f6b6bb2",
  "borrowerId": "6adb0e4b61e2fd8b3f6b6bb3",
  "creditorId": "6adb0e4b61e2fd8b3f6b6bb4",
  "employeeId": "6adb0e4b61e2fd8b3f6b6bb5",
  "supplierId": "6adb0e4b61e2fd8b3f6b6bb6",
  "ownerId": "6adb0e4b61e2fd8b3f6b6bb7",
  "taxOrganisationId": "6adb0e4b61e2fd8b3f6b6bb8",
  "projectId": "6adb0e4b61e2fd8b3f6b6bc2",
  "projects": [
    {
      "id": "69009f27afd43b202cd54aa0",
      "stake": 100,
      "companyCurrencySum": 100,
      "sum": 100,
      "transactionSum": 100
    }
  ],
  "categories": [
    {
      "id": "69009f27afd43b202cd54aa0",
      "stake": 100,
      "companyCurrencySum": 100,
      "sum": 100,
      "transactionSum": 100
    }
  ],
  "tagIds": [
    "6adb0e4b61e2fd8b3f6b6bc3"
  ],
  "date": 1792740939732,
  "amount": 100,
  "externalDevComment": "string"
}
Response (200)
{
  "status": "Processed now",
  "statusCode": "1"
}
200 Success
{
  "status": "Processed now",
  "statusCode": "1"
}
400 Error
(no example)
Success (200) schema
status string
Processed nowStoredErrorIn the queue for processing
statusCode string
1230
Error (400) schema
—
Delete operation by externalId
Request
Path
NameTypeDescription
id * string —
Response
200 Deleted.
NameTypeDescription
status * string —
statusCode * string —
delete /v2.2/operations/expense/byExternalId/{id}
URL
/v2.2/operations/expense/byExternalId/dffdb7ff-b1da-437a-b19b-3aed4cf7b2ff
Response (200)
{
  "status": "Processed now",
  "statusCode": "1"
}
200 Success
{
  "status": "Processed now",
  "statusCode": "1"
}
400 Error
(no example)
Success (200) schema
status string
Processed nowStoredErrorIn the queue for processing
statusCode string
1230
Error (400) schema
—

operations/transfer

Create transfer operation
Request
Query
NameTypeDescription
offset number User timezone offset (in milliseconds), influence only "approved" field (defines whether operation is future).
Body
NameTypeDescription
date number Date of operation
Default: current date in utc
amount number Sum of operation
Default: 0
comment string —
accountToId * string —
accountFromId * string —
amountTo number If accountTo and accountFrom has different currencies
projectId string Id of project
projects array —
categories array —
tagIds array Ids of tags
externalId string unique operation identifier
Default: new uuid v4
Response
201 Created.
NameTypeDescription
status * string —
statusCode * string —
post /v2.2/operations/transfer
URL
/v2.2/operations/transfer?offset=7200000
Request body
{
  "date": 1792740939727,
  "amount": 100,
  "comment": "Test API",
  "accountToId": "6adb0e4b61e2fd8b3f6b6bc0",
  "accountFromId": "6adb0e4b61e2fd8b3f6b6bc1",
  "amountTo": 100,
  "projectId": "6adb0e4b61e2fd8b3f6b6bc2",
  "projects": [
    {
      "id": "69009f27afd43b202cd54aa0",
      "stake": 100,
      "companyCurrencySum": 100,
      "sum": 100,
      "transactionSum": 100
    }
  ],
  "categories": [
    {
      "id": "69009f27afd43b202cd54aa0",
      "stake": 100,
      "companyCurrencySum": 100,
      "sum": 100,
      "transactionSum": 100
    }
  ],
  "tagIds": [
    "6adb0e4b61e2fd8b3f6b6bc3"
  ],
  "externalId": "8ac4fd7a-ac9a-47b1-adcf-d86bd4c8beb3"
}
Response (201)
{
  "status": "Processed now",
  "statusCode": "1"
}
201 Success
{
  "status": "Processed now",
  "statusCode": "1"
}
400 Error
(no example)
Success (201) schema
status string
Processed nowStoredErrorIn the queue for processing
statusCode string
1230
Error (400) schema
—
Update operation by id
Request
Path
NameTypeDescription
id * string —
Query
NameTypeDescription
offset number User timezone offset (in milliseconds), influence only "approved" field (defines whether operation is future).
Body
NameTypeDescription
comment string —
amountTo number If accountTo and accountFrom has different currencies
projectId string Id of project
projects array —
categories array —
tagIds array Ids of tags
date number Date of operation
amount number Sum of operation
accountToId * string —
accountFromId * string —
externalDevComment string Field to be filled by integration developers (not visible to users)
Response
200 Updated.
NameTypeDescription
status * string —
statusCode * string —
patch /v2.2/operations/transfer/{id}
URL
/v2.2/operations/transfer/6adb0e4b61e2fd8b3f6b6bc4?offset=7200000
Request body
{
  "comment": "Test API",
  "amountTo": 100,
  "projectId": "6adb0e4b61e2fd8b3f6b6bc2",
  "projects": [
    {
      "id": "69009f27afd43b202cd54aa0",
      "stake": 100,
      "companyCurrencySum": 100,
      "sum": 100,
      "transactionSum": 100
    }
  ],
  "categories": [
    {
      "id": "69009f27afd43b202cd54aa0",
      "stake": 100,
      "companyCurrencySum": 100,
      "sum": 100,
      "transactionSum": 100
    }
  ],
  "tagIds": [
    "6adb0e4b61e2fd8b3f6b6bc3"
  ],
  "date": 1792740939733,
  "amount": 100,
  "accountToId": "6adb0e4b61e2fd8b3f6b6bcd",
  "accountFromId": "6adb0e4b61e2fd8b3f6b6bce",
  "externalDevComment": "string"
}
Response (200)
{
  "status": "Processed now",
  "statusCode": "1"
}
200 Success
{
  "status": "Processed now",
  "statusCode": "1"
}
400 Error
(no example)
Success (200) schema
status string
Processed nowStoredErrorIn the queue for processing
statusCode string
1230
Error (400) schema
—
Delete operation by id
Request
Path
NameTypeDescription
id * string —
Response
200 Deleted.
NameTypeDescription
status * string —
statusCode * string —
delete /v2.2/operations/transfer/{id}
URL
/v2.2/operations/transfer/6adb0e4b61e2fd8b3f6b6bc4
Response (200)
{
  "status": "Processed now",
  "statusCode": "1"
}
200 Success
{
  "status": "Processed now",
  "statusCode": "1"
}
400 Error
(no example)
Success (200) schema
status string
Processed nowStoredErrorIn the queue for processing
statusCode string
1230
Error (400) schema
—
Update operation by externalId
Request
Path
NameTypeDescription
id * string —
Query
NameTypeDescription
offset number User timezone offset (in milliseconds), influence only "approved" field (defines whether operation is future).
Body
NameTypeDescription
comment string —
amountTo number If accountTo and accountFrom has different currencies
projectId string Id of project
projects array —
categories array —
tagIds array Ids of tags
date number Date of operation
amount number Sum of operation
accountToId * string —
accountFromId * string —
externalDevComment string Field to be filled by integration developers (not visible to users)
Response
200 Updated.
NameTypeDescription
status * string —
statusCode * string —
patch /v2.2/operations/transfer/byExternalId/{id}
URL
/v2.2/operations/transfer/byExternalId/dffdb7ff-b1da-437a-b19b-3aed4cf7b2ff?offset=7200000
Request body
{
  "comment": "Test API",
  "amountTo": 100,
  "projectId": "6adb0e4b61e2fd8b3f6b6bc2",
  "projects": [
    {
      "id": "69009f27afd43b202cd54aa0",
      "stake": 100,
      "companyCurrencySum": 100,
      "sum": 100,
      "transactionSum": 100
    }
  ],
  "categories": [
    {
      "id": "69009f27afd43b202cd54aa0",
      "stake": 100,
      "companyCurrencySum": 100,
      "sum": 100,
      "transactionSum": 100
    }
  ],
  "tagIds": [
    "6adb0e4b61e2fd8b3f6b6bc3"
  ],
  "date": 1792740939733,
  "amount": 100,
  "accountToId": "6adb0e4b61e2fd8b3f6b6bcd",
  "accountFromId": "6adb0e4b61e2fd8b3f6b6bce",
  "externalDevComment": "string"
}
Response (200)
{
  "status": "Processed now",
  "statusCode": "1"
}
200 Success
{
  "status": "Processed now",
  "statusCode": "1"
}
400 Error
(no example)
Success (200) schema
status string
Processed nowStoredErrorIn the queue for processing
statusCode string
1230
Error (400) schema
—
Delete operation by externalId
Request
Path
NameTypeDescription
id * string —
Response
200 Deleted.
NameTypeDescription
status * string —
statusCode * string —
delete /v2.2/operations/transfer/byExternalId/{id}
URL
/v2.2/operations/transfer/byExternalId/dffdb7ff-b1da-437a-b19b-3aed4cf7b2ff
Response (200)
{
  "status": "Processed now",
  "statusCode": "1"
}
200 Success
{
  "status": "Processed now",
  "statusCode": "1"
}
400 Error
(no example)
Success (200) schema
status string
Processed nowStoredErrorIn the queue for processing
statusCode string
1230
Error (400) schema
—

invoices

Request
Path
NameTypeDescription
id * string —
Query
NameTypeDescription
language string Invoice language (one of "ru" ,"en" ,"uk" ,"pl" ,"es" ,"cz" ,"tr" ,"uz" ,"pt-BR")
Response
200 PDF file successfully generated.
get /v2.2/invoices/pdf/{id}
URL
/v2.2/invoices/pdf/6adb0e4b61e2fd8b3f6b6bcf?language=uk
200 Success
(no example)
401 Error
(no example)
Success (200) schema
—
Error (401) schema
—
Create invoice
Request
Query
NameTypeDescription
offset number User timezone offset (in milliseconds), influence only "approved" field (defines whether operation is future).
Body
NameTypeDescription
externalId string unique operation identifier
Default: new uuid v4
dateOfPayment number —
date number Date of operation
Default: current date in utc
comment string —
invoiceNumber * string invoice number
invoiceCompanyId * string id of invoice company
supplierId * string id of supplier (or client)
invoiceCompanyDetails * string information about my props
supplierDetails * string information about counterparty
goods * array Array of goods. Each item must contain either `id` (existing good) or `label` (find-or-create by normalized label).
invoiceCurrency * string Currency
confirmedInvoice boolean confirmed invoice status
shipping number —
shippingVat number VAT rate applied to the shipping line, in percent
discountPercentage number Discount percentage (can used only discountPercentage or discountAmount)
discountAmount number Discount amount (can used only discountPercentage or discountAmount)
attachmentId string Attachment id of null
Response
201 Created.
NameTypeDescription
status * string —
statusCode * string —
post /v2.2/invoices
URL
/v2.2/invoices?offset=7200000
Request body
{
  "externalId": "8ac4fd7a-ac9a-47b1-adcf-d86bd4c8beb3",
  "dateOfPayment": 1792913739737,
  "date": 1792740939737,
  "comment": "Test API",
  "invoiceNumber": "ExampleInvoice123456",
  "invoiceCompanyId": "63a0acd05fd26f3fa73fef4f",
  "supplierId": "63a0acd05fd26f7d203fef3f",
  "invoiceCompanyDetails": "company details (IBAN)",
  "supplierDetails": "counterparty details (IBAN)",
  "goods": [
    {
      "id": "63a01aa80e714d7a683b3ea4",
      "count": 10,
      "price": 10.1,
      "vat": 3
    },
    {
      "label": "Web Development",
      "count": 1,
      "price": 999,
      "vat": 0
    }
  ],
  "invoiceCurrency": "UAH",
  "confirmedInvoice": false,
  "shipping": 100,
  "shippingVat": 20,
  "discountPercentage": 25,
  "discountAmount": 100,
  "attachmentId": null
}
Response (201)
{
  "status": "Processed now",
  "statusCode": "1"
}
201 Success
{
  "status": "Processed now",
  "statusCode": "1"
}
400 Error
(no example)
Success (201) schema
status string
Processed nowStoredErrorIn the queue for processing
statusCode string
1230
Error (400) schema
—
Update operation by id
Request
Path
NameTypeDescription
id * string —
Query
NameTypeDescription
offset number User timezone offset (in milliseconds), influence only "approved" field (defines whether operation is future).
Body
NameTypeDescription
externalId string unique operation identifier
Default: new uuid v4
dateOfPayment number —
date number Date of operation
Default: current date in utc
comment string —
invoiceNumber * string invoice number
invoiceCompanyId * string id of invoice company
supplierId * string id of supplier (or client)
invoiceCompanyDetails * string information about my props
supplierDetails * string information about counterparty
goods * array Array of goods. Each item must contain either `id` (existing good) or `label` (find-or-create by normalized label).
invoiceCurrency * string Currency
confirmedInvoice boolean confirmed invoice status
shipping number —
shippingVat number VAT rate applied to the shipping line, in percent
discountPercentage number Discount percentage (can used only discountPercentage or discountAmount)
discountAmount number Discount amount (can used only discountPercentage or discountAmount)
attachmentId string Attachment id of null
Response
200 Updated.
NameTypeDescription
status * string —
statusCode * string —
patch /v2.2/invoices/{id}
URL
/v2.2/invoices/6adb0e4b61e2fd8b3f6b6bcf?offset=7200000
Request body
{
  "externalId": "8ac4fd7a-ac9a-47b1-adcf-d86bd4c8beb3",
  "dateOfPayment": 1792913739737,
  "date": 1792740939737,
  "comment": "Test API",
  "invoiceNumber": "ExampleInvoice123456",
  "invoiceCompanyId": "63a0acd05fd26f3fa73fef4f",
  "supplierId": "63a0acd05fd26f7d203fef3f",
  "invoiceCompanyDetails": "company details (IBAN)",
  "supplierDetails": "counterparty details (IBAN)",
  "goods": [
    {
      "id": "63a01aa80e714d7a683b3ea4",
      "count": 10,
      "price": 10.1,
      "vat": 3
    },
    {
      "label": "Web Development",
      "count": 1,
      "price": 999,
      "vat": 0
    }
  ],
  "invoiceCurrency": "UAH",
  "confirmedInvoice": false,
  "shipping": 100,
  "shippingVat": 20,
  "discountPercentage": 25,
  "discountAmount": 100,
  "attachmentId": null
}
Response (200)
{
  "status": "Processed now",
  "statusCode": "1"
}
200 Success
{
  "status": "Processed now",
  "statusCode": "1"
}
400 Error
(no example)
Success (200) schema
status string
Processed nowStoredErrorIn the queue for processing
statusCode string
1230
Error (400) schema
—
Delete operation by id
Request
Path
NameTypeDescription
id * string —
Response
200 Deleted.
NameTypeDescription
status * string —
statusCode * string —
delete /v2.2/invoices/{id}
URL
/v2.2/invoices/6adb0e4b61e2fd8b3f6b6bcf
Response (200)
{
  "status": "Processed now",
  "statusCode": "1"
}
200 Success
{
  "status": "Processed now",
  "statusCode": "1"
}
400 Error
(no example)
Success (200) schema
status string
Processed nowStoredErrorIn the queue for processing
statusCode string
1230
Error (400) schema
—
Update operation by externalId
Request
Path
NameTypeDescription
id * string —
Query
NameTypeDescription
offset number User timezone offset (in milliseconds), influence only "approved" field (defines whether operation is future).
Body
NameTypeDescription
externalId string unique operation identifier
Default: new uuid v4
dateOfPayment number —
date number Date of operation
Default: current date in utc
comment string —
invoiceNumber * string invoice number
invoiceCompanyId * string id of invoice company
supplierId * string id of supplier (or client)
invoiceCompanyDetails * string information about my props
supplierDetails * string information about counterparty
goods * array Array of goods. Each item must contain either `id` (existing good) or `label` (find-or-create by normalized label).
invoiceCurrency * string Currency
confirmedInvoice boolean confirmed invoice status
shipping number —
shippingVat number VAT rate applied to the shipping line, in percent
discountPercentage number Discount percentage (can used only discountPercentage or discountAmount)
discountAmount number Discount amount (can used only discountPercentage or discountAmount)
attachmentId string Attachment id of null
Response
200 Updated.
NameTypeDescription
status * string —
statusCode * string —
patch /v2.2/invoices/byExternalId/{id}
URL
/v2.2/invoices/byExternalId/9083e396-eac3-4ba5-bb4f-bfe2403ba0c2?offset=7200000
Request body
{
  "externalId": "8ac4fd7a-ac9a-47b1-adcf-d86bd4c8beb3",
  "dateOfPayment": 1792913739737,
  "date": 1792740939737,
  "comment": "Test API",
  "invoiceNumber": "ExampleInvoice123456",
  "invoiceCompanyId": "63a0acd05fd26f3fa73fef4f",
  "supplierId": "63a0acd05fd26f7d203fef3f",
  "invoiceCompanyDetails": "company details (IBAN)",
  "supplierDetails": "counterparty details (IBAN)",
  "goods": [
    {
      "id": "63a01aa80e714d7a683b3ea4",
      "count": 10,
      "price": 10.1,
      "vat": 3
    },
    {
      "label": "Web Development",
      "count": 1,
      "price": 999,
      "vat": 0
    }
  ],
  "invoiceCurrency": "UAH",
  "confirmedInvoice": false,
  "shipping": 100,
  "shippingVat": 20,
  "discountPercentage": 25,
  "discountAmount": 100,
  "attachmentId": null
}
Response (200)
{
  "status": "Processed now",
  "statusCode": "1"
}
200 Success
{
  "status": "Processed now",
  "statusCode": "1"
}
400 Error
(no example)
Success (200) schema
status string
Processed nowStoredErrorIn the queue for processing
statusCode string
1230
Error (400) schema
—
Delete operation by externalId
Request
Path
NameTypeDescription
id * string —
Response
200 Deleted.
NameTypeDescription
status * string —
statusCode * string —
delete /v2.2/invoices/byExternalId/{id}
URL
/v2.2/invoices/byExternalId/9083e396-eac3-4ba5-bb4f-bfe2403ba0c2
Response (200)
{
  "status": "Processed now",
  "statusCode": "1"
}
200 Success
{
  "status": "Processed now",
  "statusCode": "1"
}
400 Error
(no example)
Success (200) schema
status string
Processed nowStoredErrorIn the queue for processing
statusCode string
1230
Error (400) schema
—

invoices/goods

Get all invoice goods
Response
200 List of invoice goods
get /v2.2/invoices/goods
Response (200)
[
  {
    "id": "string",
    "label": "string"
  }
]
200 Success
[
  {
    "id": "string",
    "label": "string"
  }
]
401 Error
(no example)
Success (200) schema
(array)
Error (401) schema
—
Create new invoice good
Request
Body
NameTypeDescription
label * string name of good
Response
201 Created invoice good
NameTypeDescription
id * string —
label * string —
post /v2.2/invoices/goods
Request body
{
  "label": "good1"
}
Response (201)
{
  "id": "string",
  "label": "string"
}
201 Success
{
  "id": "string",
  "label": "string"
}
401 Error
(no example)
Success (201) schema
id string
label string
Error (401) schema
—
Patch one invoice good
Request
Path
NameTypeDescription
id * string Invoice good id
Body
NameTypeDescription
label * string name of good
Response
200 Updated invoice good
NameTypeDescription
id * string —
label * string —
patch /v2.2/invoices/goods/{id}
URL
/v2.2/invoices/goods/6adb0e4b61e2fd8b3f6b6bd9
Request body
{
  "label": "good1"
}
Response (200)
{
  "id": "string",
  "label": "string"
}
200 Success
{
  "id": "string",
  "label": "string"
}
401 Error
(no example)
Success (200) schema
id string
label string
Error (401) schema
—
Delete one invoice good
Request
Path
NameTypeDescription
id * string Invoice good id
Response
200 Deleted invoice good
NameTypeDescription
id * string —
label * string —
delete /v2.2/invoices/goods/{id}
URL
/v2.2/invoices/goods/6adb0e4b61e2fd8b3f6b6bd9
Response (200)
{
  "id": "string",
  "label": "string"
}
200 Success
{
  "id": "string",
  "label": "string"
}
401 Error
(no example)
Success (200) schema
id string
label string
Error (401) schema
—

invoices/companies

Get all invoice companies
Response
200 List of invoice company
get /v2.2/invoices/companies
Response (200)
[
  {
    "id": "string",
    "label": "string"
  }
]
200 Success
[
  {
    "id": "string",
    "label": "string"
  }
]
401 Error
(no example)
Success (200) schema
(array)
Error (401) schema
—
Create new invoice companies
Request
Body
NameTypeDescription
label * string name of invoice company
Response
201 Created invoice company
NameTypeDescription
id * string —
label * string —
post /v2.2/invoices/companies
Request body
{
  "label": "myCompany"
}
Response (201)
{
  "id": "string",
  "label": "string"
}
201 Success
{
  "id": "string",
  "label": "string"
}
401 Error
(no example)
Success (201) schema
id string
label string
Error (401) schema
—
Patch one invoice company
Request
Path
NameTypeDescription
id * string Invoice company id
Body
NameTypeDescription
label * string name of invoice company
Response
200 Updated invoice company
NameTypeDescription
id * string —
label * string —
patch /v2.2/invoices/companies/{id}
URL
/v2.2/invoices/companies/6adb0e4b61e2fd8b3f6b6bda
Request body
{
  "label": "myCompany"
}
Response (200)
{
  "id": "string",
  "label": "string"
}
200 Success
{
  "id": "string",
  "label": "string"
}
401 Error
(no example)
Success (200) schema
id string
label string
Error (401) schema
—
Delete one invoice company
Request
Path
NameTypeDescription
id * string Invoice company id
Response
200 Deleted invoice company
NameTypeDescription
id * string —
label * string —
delete /v2.2/invoices/companies/{id}
URL
/v2.2/invoices/companies/6adb0e4b61e2fd8b3f6b6bda
Response (200)
{
  "id": "string",
  "label": "string"
}
200 Success
{
  "id": "string",
  "label": "string"
}
401 Error
(no example)
Success (200) schema
id string
label string
Error (401) schema
—

attachment

Get all attachments
Response
200 List of attachments
get /v2.2/attachment
Response (200)
[
  {
    "id": "string",
    "label": "string"
  }
]
200 Success
[
  {
    "id": "string",
    "label": "string"
  }
]
401 Error
(no example)
Success (200) schema
(array)
Error (401) schema
—
Create new attachment
Response
201 Created attachment
NameTypeDescription
id * string —
label * string —
post /v2.2/attachment
Response (201)
{
  "id": "string",
  "label": "string"
}
201 Success
{
  "id": "string",
  "label": "string"
}
401 Error
(no example)
Success (201) schema
id string
label string
Error (401) schema
—
Patch one attachment
Request
Path
NameTypeDescription
id * string Attachment id
Body
NameTypeDescription
label * string name of file
Response
200 Updated attachment
NameTypeDescription
id * string —
label * string —
patch /v2.2/attachment/{id}
URL
/v2.2/attachment/6adb0e4b61e2fd8b3f6b6bdb
Request body
{
  "label": "myLogo1.png"
}
Response (200)
{
  "id": "string",
  "label": "string"
}
200 Success
{
  "id": "string",
  "label": "string"
}
401 Error
(no example)
Success (200) schema
id string
label string
Error (401) schema
—
Delete one attachment
Request
Path
NameTypeDescription
id * string Attachment id
Response
200 Deleted attachment
NameTypeDescription
id * string —
label * string —
delete /v2.2/attachment/{id}
URL
/v2.2/attachment/6adb0e4b61e2fd8b3f6b6bdb
Response (200)
{
  "id": "string",
  "label": "string"
}
200 Success
{
  "id": "string",
  "label": "string"
}
401 Error
(no example)
Success (200) schema
id string
label string
Error (401) schema
—

operations

Request
Query
NameTypeDescription
externalId string Id of operation
id string Id of operation
Response
200 Finded operation by id or externalId
NameTypeDescription
list * array List of operations
total * number The number of operations in the company
get /v2.2/operations/details
URL
/v2.2/operations/details?externalId=0fd24c72-bcda-45ff-9842-49b1ce93ee35&id=6adb0e4b61e2fd8b3f6b6bd0
Response (200)
{
  "list": [
    {
      "id": "66f3e9f007ca6836d3afbd1e",
      "operationId": "66f3e9f007ca6836d3afbd1e",
      "hasPartial": true,
      "hasCategoryPartial": true,
      "isPartial": false,
      "isCategoryPartial": false,
      "date": 1727271757115,
      "sum": 200,
      "type": "expense",
      "subType": "dividend",
      "exchangeRate": 1,
      "accountToName": "",
      "categoryId": "66f305dc845d643553572739",
      "accountFromName": "Bank account",
      "accountFromId": "66f305dc845d643553572735",
      "accountToId": "66f305dc845d643553572721",
      "approved": true,
      "comment": "some comment",
      "counterpartyId": "66f3e9b114953ceae2e5f6bf",
      "counterpartyName": "Owner 1",
      "currencyId": "UAH",
      "currencySymbol": "₴",
      "dateOfPayment": 1727271757722,
      "companyCurrencySum": 200,
      "tagIds": [
        "66f3e9c8845d643553572885",
        "66f3e9c8845d643553572886"
      ],
      "tags": "tag1,tag2",
      "projects": "project 1,project 2",
      "projectIds": [
        "66f3e9eb4d98c781f16a4fe9",
        "66f3e9eb4d98c781f16a4fe8"
      ],
      "accountName": "Bank account",
      "updatedAt": "2024-09-25T10:46:08.730Z",
      "transactionSum": 200,
      "transactionCurrency": "UAH",
      "transactionCurrencyRate": 1,
      "projectObjects": [
        {
          "stake": 51,
          "sum": 102,
          "transactionSum": 102,
          "companyCurrencySum": 102,
          "id": "66f3e9eb4d98c781f16a4fe8",
          "label": "project 1"
        },
        {
          "stake": 49,
          "sum": 98,
          "transactionSum": 98,
          "companyCurrencySum": 98,
          "id": "66f3e9eb4d98c781f16a4fe9",
          "label": "project 2"
        }
      ],
      "categoryObjects": [
        {
          "stake": 51,
          "sum": 102,
          "transactionSum": 102,
          "companyCurrencySum": 102,
          "id": "66f305dc845d643553572739",
          "label": "category 1"
        },
        {
          "stake": 49,
          "sum": 98,
          "transactionSum": 98,
          "companyCurrencySum": 98,
          "id": "66f305dc845d643553572740",
          "label": "category 2"
        }
      ],
      "hasProjectSumError": false,
      "hasDeletedProject": false,
      "accountBalanceAfterOperation": -1245.56,
      "categoryName": "Dividends",
      "periodStartTimestamp": 1722470400000,
      "periodEndTimestamp": 1725148799999,
      "externalId": "5083b99b-d1f3-4793-b6e2-20168121c3c3"
    }
  ],
  "total": 3845
}
200 Success
{
  "list": [
    {
      "id": "66f3e9f007ca6836d3afbd1e",
      "operationId": "66f3e9f007ca6836d3afbd1e",
      "hasPartial": true,
      "hasCategoryPartial": true,
      "isPartial": false,
      "isCategoryPartial": false,
      "date": 1727271757115,
      "sum": 200,
      "type": "expense",
      "subType": "dividend",
      "exchangeRate": 1,
      "accountToName": "",
      "categoryId": "66f305dc845d643553572739",
      "accountFromName": "Bank account",
      "accountFromId": "66f305dc845d643553572735",
      "accountToId": "66f305dc845d643553572721",
      "approved": true,
      "comment": "some comment",
      "counterpartyId": "66f3e9b114953ceae2e5f6bf",
      "counterpartyName": "Owner 1",
      "currencyId": "UAH",
      "currencySymbol": "₴",
      "dateOfPayment": 1727271757722,
      "companyCurrencySum": 200,
      "tagIds": [
        "66f3e9c8845d643553572885",
        "66f3e9c8845d643553572886"
      ],
      "tags": "tag1,tag2",
      "projects": "project 1,project 2",
      "projectIds": [
        "66f3e9eb4d98c781f16a4fe9",
        "66f3e9eb4d98c781f16a4fe8"
      ],
      "accountName": "Bank account",
      "updatedAt": "2024-09-25T10:46:08.730Z",
      "transactionSum": 200,
      "transactionCurrency": "UAH",
      "transactionCurrencyRate": 1,
      "projectObjects": [
        {
          "stake": 51,
          "sum": 102,
          "transactionSum": 102,
          "companyCurrencySum": 102,
          "id": "66f3e9eb4d98c781f16a4fe8",
          "label": "project 1"
        },
        {
          "stake": 49,
          "sum": 98,
          "transactionSum": 98,
          "companyCurrencySum": 98,
          "id": "66f3e9eb4d98c781f16a4fe9",
          "label": "project 2"
        }
      ],
      "categoryObjects": [
        {
          "stake": 51,
          "sum": 102,
          "transactionSum": 102,
          "companyCurrencySum": 102,
          "id": "66f305dc845d643553572739",
          "label": "category 1"
        },
        {
          "stake": 49,
          "sum": 98,
          "transactionSum": 98,
          "companyCurrencySum": 98,
          "id": "66f305dc845d643553572740",
          "label": "category 2"
        }
      ],
      "hasProjectSumError": false,
      "hasDeletedProject": false,
      "accountBalanceAfterOperation": -1245.56,
      "categoryName": "Dividends",
      "periodStartTimestamp": 1722470400000,
      "periodEndTimestamp": 1725148799999,
      "externalId": "5083b99b-d1f3-4793-b6e2-20168121c3c3"
    }
  ],
  "total": 3845
}
400 Error
(no example)
Success (200) schema
list string[] List of operations
total number The number of operations in the company
Error (400) schema
—
Request
Body
NameTypeDescription
operationIds array —
projectIds array —
search string —
tagIds array —
counterpartyIds array —
accountIds array —
limit number Number of operations in list
Default: 100
offset number —
approved boolean —
startDate number —
endDate number —
sumFrom number —
sumTo number —
desc boolean —
field string —
desc1 boolean —
field1 string —
desc2 boolean —
field2 string —
desc3 boolean —
useDateOfPayment boolean —
field3 string —
calculateAccountState boolean —
ids array —
select array Field names to return, e.g. ["date","sum","type","categoryName"]
page string —
types array —
categoryIds array —
Response
200 A list of operations has been created.
NameTypeDescription
list * array List of operations
total * number The number of operations in the company
post /v2.2/operations/list
Request body
{
  "operationIds": [
    "6adb0e4b61e2fd8b3f6b6bc6"
  ],
  "projectIds": [
    "6adb0e4b61e2fd8b3f6b6bd4"
  ],
  "search": "string",
  "tagIds": [
    "6adb0e4b61e2fd8b3f6b6bd5"
  ],
  "counterpartyIds": [
    "6adb0e4b61e2fd8b3f6b6bd6"
  ],
  "accountIds": [
    "6adb0e4b61e2fd8b3f6b6bd2"
  ],
  "limit": 25,
  "offset": 0,
  "approved": true,
  "startDate": 1792740939732,
  "endDate": 1792740939732,
  "sumFrom": 121,
  "sumTo": 312,
  "desc": true,
  "field": "date",
  "desc1": true,
  "field1": "date",
  "desc2": true,
  "field2": "date",
  "desc3": true,
  "useDateOfPayment": true,
  "field3": "date",
  "calculateAccountState": true,
  "ids": [
    "6adb0e4b61e2fd8b3f6b6bd1"
  ],
  "select": [
    "operationId"
  ],
  "page": "vat",
  "types": [
    "income"
  ],
  "categoryIds": [
    "6adb0e4b61e2fd8b3f6b6bd3"
  ]
}
Response (200)
{
  "list": [
    {
      "id": "66f3e9f007ca6836d3afbd1e",
      "operationId": "66f3e9f007ca6836d3afbd1e",
      "hasPartial": true,
      "hasCategoryPartial": true,
      "isPartial": false,
      "isCategoryPartial": false,
      "date": 1727271757115,
      "sum": 200,
      "type": "expense",
      "subType": "dividend",
      "exchangeRate": 1,
      "accountToName": "",
      "categoryId": "66f305dc845d643553572739",
      "accountFromName": "Bank account",
      "accountFromId": "66f305dc845d643553572735",
      "accountToId": "66f305dc845d643553572721",
      "approved": true,
      "comment": "some comment",
      "counterpartyId": "66f3e9b114953ceae2e5f6bf",
      "counterpartyName": "Owner 1",
      "currencyId": "UAH",
      "currencySymbol": "₴",
      "dateOfPayment": 1727271757722,
      "companyCurrencySum": 200,
      "tagIds": [
        "66f3e9c8845d643553572885",
        "66f3e9c8845d643553572886"
      ],
      "tags": "tag1,tag2",
      "projects": "project 1,project 2",
      "projectIds": [
        "66f3e9eb4d98c781f16a4fe9",
        "66f3e9eb4d98c781f16a4fe8"
      ],
      "accountName": "Bank account",
      "updatedAt": "2024-09-25T10:46:08.730Z",
      "transactionSum": 200,
      "transactionCurrency": "UAH",
      "transactionCurrencyRate": 1,
      "projectObjects": [
        {
          "stake": 51,
          "sum": 102,
          "transactionSum": 102,
          "companyCurrencySum": 102,
          "id": "66f3e9eb4d98c781f16a4fe8",
          "label": "project 1"
        },
        {
          "stake": 49,
          "sum": 98,
          "transactionSum": 98,
          "companyCurrencySum": 98,
          "id": "66f3e9eb4d98c781f16a4fe9",
          "label": "project 2"
        }
      ],
      "categoryObjects": [
        {
          "stake": 51,
          "sum": 102,
          "transactionSum": 102,
          "companyCurrencySum": 102,
          "id": "66f305dc845d643553572739",
          "label": "category 1"
        },
        {
          "stake": 49,
          "sum": 98,
          "transactionSum": 98,
          "companyCurrencySum": 98,
          "id": "66f305dc845d643553572740",
          "label": "category 2"
        }
      ],
      "hasProjectSumError": false,
      "hasDeletedProject": false,
      "accountBalanceAfterOperation": -1245.56,
      "categoryName": "Dividends",
      "periodStartTimestamp": 1722470400000,
      "periodEndTimestamp": 1725148799999,
      "externalId": "5083b99b-d1f3-4793-b6e2-20168121c3c3"
    }
  ],
  "total": 3845
}
200 Success
{
  "list": [
    {
      "id": "66f3e9f007ca6836d3afbd1e",
      "operationId": "66f3e9f007ca6836d3afbd1e",
      "hasPartial": true,
      "hasCategoryPartial": true,
      "isPartial": false,
      "isCategoryPartial": false,
      "date": 1727271757115,
      "sum": 200,
      "type": "expense",
      "subType": "dividend",
      "exchangeRate": 1,
      "accountToName": "",
      "categoryId": "66f305dc845d643553572739",
      "accountFromName": "Bank account",
      "accountFromId": "66f305dc845d643553572735",
      "accountToId": "66f305dc845d643553572721",
      "approved": true,
      "comment": "some comment",
      "counterpartyId": "66f3e9b114953ceae2e5f6bf",
      "counterpartyName": "Owner 1",
      "currencyId": "UAH",
      "currencySymbol": "₴",
      "dateOfPayment": 1727271757722,
      "companyCurrencySum": 200,
      "tagIds": [
        "66f3e9c8845d643553572885",
        "66f3e9c8845d643553572886"
      ],
      "tags": "tag1,tag2",
      "projects": "project 1,project 2",
      "projectIds": [
        "66f3e9eb4d98c781f16a4fe9",
        "66f3e9eb4d98c781f16a4fe8"
      ],
      "accountName": "Bank account",
      "updatedAt": "2024-09-25T10:46:08.730Z",
      "transactionSum": 200,
      "transactionCurrency": "UAH",
      "transactionCurrencyRate": 1,
      "projectObjects": [
        {
          "stake": 51,
          "sum": 102,
          "transactionSum": 102,
          "companyCurrencySum": 102,
          "id": "66f3e9eb4d98c781f16a4fe8",
          "label": "project 1"
        },
        {
          "stake": 49,
          "sum": 98,
          "transactionSum": 98,
          "companyCurrencySum": 98,
          "id": "66f3e9eb4d98c781f16a4fe9",
          "label": "project 2"
        }
      ],
      "categoryObjects": [
        {
          "stake": 51,
          "sum": 102,
          "transactionSum": 102,
          "companyCurrencySum": 102,
          "id": "66f305dc845d643553572739",
          "label": "category 1"
        },
        {
          "stake": 49,
          "sum": 98,
          "transactionSum": 98,
          "companyCurrencySum": 98,
          "id": "66f305dc845d643553572740",
          "label": "category 2"
        }
      ],
      "hasProjectSumError": false,
      "hasDeletedProject": false,
      "accountBalanceAfterOperation": -1245.56,
      "categoryName": "Dividends",
      "periodStartTimestamp": 1722470400000,
      "periodEndTimestamp": 1725148799999,
      "externalId": "5083b99b-d1f3-4793-b6e2-20168121c3c3"
    }
  ],
  "total": 3845
}
401 Error
(no example)
Success (200) schema
list string[] List of operations
total number The number of operations in the company
Error (401) schema
—
Request
Query
NameTypeDescription
externalId string Id of operation
id string Id of operation
Response
200 Finded invoice by id or externalId
NameTypeDescription
list * array List of operations
total * number The number of invoices in the company
get /v2.2/operations/invoices/details
URL
/v2.2/operations/invoices/details?externalId=0fd24c72-bcda-45ff-9842-49b1ce93ee35&id=6adb0e4b61e2fd8b3f6b6bd0
Response (200)
{
  "list": [
    {
      "id": "66f3e9f007ca6836d3afbd1e",
      "date": 1727271757115,
      "sum": 200,
      "exchangeRate": 1,
      "approved": true,
      "comment": "some comment",
      "counterpartyId": "66f3e9b114953ceae2e5f6bf",
      "counterpartyName": "Owner 1",
      "currencyId": "UAH",
      "currencySymbol": "₴",
      "dateOfPayment": 1727271757722,
      "companyCurrencySum": 200,
      "updatedAt": "2024-09-25T10:46:08.730Z",
      "transactionSum": 200,
      "transactionCurrency": "UAH",
      "transactionCurrencyRate": 1,
      "externalId": "5083b99b-d1f3-4793-b6e2-20168121c3c3",
      "invoiceCompanyId": "669df83d8ab365560ad987bd",
      "invoiceNumber": "ExampleInvoice123456 2",
      "invoiceCompanyDetails": "company details (IBAN)",
      "counterpartyDetails": "counterparty details (IBAN)",
      "withVAT": true,
      "invoiceCurrency": "USD",
      "shipping": 12,
      "attachment": {
        "label": "MTB.png",
        "id": "66fff333888b8956a4ba1cbd"
      },
      "discountPercentage": 30,
      "discountAmount": null,
      "invoiceGoods": [
        {
          "price": 10.1,
          "count": 15,
          "sum": 115.5,
          "vat": 3,
          "id": "66f645aa0adf1c67df90def2",
          "label": "good2"
        },
        {
          "price": 12,
          "count": 12,
          "sum": 144,
          "vat": 3,
          "id": "669df8513299631e02d82476",
          "label": "послуга 1"
        }
      ],
      "confirmedInvoice": false
    }
  ],
  "total": 3845
}
200 Success
{
  "list": [
    {
      "id": "66f3e9f007ca6836d3afbd1e",
      "date": 1727271757115,
      "sum": 200,
      "exchangeRate": 1,
      "approved": true,
      "comment": "some comment",
      "counterpartyId": "66f3e9b114953ceae2e5f6bf",
      "counterpartyName": "Owner 1",
      "currencyId": "UAH",
      "currencySymbol": "₴",
      "dateOfPayment": 1727271757722,
      "companyCurrencySum": 200,
      "updatedAt": "2024-09-25T10:46:08.730Z",
      "transactionSum": 200,
      "transactionCurrency": "UAH",
      "transactionCurrencyRate": 1,
      "externalId": "5083b99b-d1f3-4793-b6e2-20168121c3c3",
      "invoiceCompanyId": "669df83d8ab365560ad987bd",
      "invoiceNumber": "ExampleInvoice123456 2",
      "invoiceCompanyDetails": "company details (IBAN)",
      "counterpartyDetails": "counterparty details (IBAN)",
      "withVAT": true,
      "invoiceCurrency": "USD",
      "shipping": 12,
      "attachment": {
        "label": "MTB.png",
        "id": "66fff333888b8956a4ba1cbd"
      },
      "discountPercentage": 30,
      "discountAmount": null,
      "invoiceGoods": [
        {
          "price": 10.1,
          "count": 15,
          "sum": 115.5,
          "vat": 3,
          "id": "66f645aa0adf1c67df90def2",
          "label": "good2"
        },
        {
          "price": 12,
          "count": 12,
          "sum": 144,
          "vat": 3,
          "id": "669df8513299631e02d82476",
          "label": "послуга 1"
        }
      ],
      "confirmedInvoice": false
    }
  ],
  "total": 3845
}
400 Error
(no example)
Success (200) schema
list string[] List of operations
total number The number of invoices in the company
Error (400) schema
—
Request
Body
NameTypeDescription
ids array —
limit number Number of operations in list
Default: 100
counterpartyIds array —
offset number —
approved boolean —
startDate number —
endDate number —
desc boolean —
field string —
desc1 boolean —
field1 string —
desc2 boolean —
field2 string —
desc3 boolean —
field3 string —
confirmedInvoice boolean —
invoiceStatus string —
Response
200 A list of invoices has been created.
NameTypeDescription
list * array List of operations
total * number The number of invoices in the company
post /v2.2/operations/invoices/list
Request body
{
  "ids": [
    "6adb0e4b61e2fd8b3f6b6bd7"
  ],
  "limit": 25,
  "counterpartyIds": [
    "6adb0e4b61e2fd8b3f6b6bd8"
  ],
  "offset": 0,
  "approved": true,
  "startDate": 1792740939742,
  "endDate": 1792740939742,
  "desc": true,
  "field": "date",
  "desc1": true,
  "field1": "date",
  "desc2": true,
  "field2": "date",
  "desc3": true,
  "field3": "date",
  "confirmedInvoice": true,
  "invoiceStatus": "overdue"
}
Response (200)
{
  "list": [
    {
      "id": "66f3e9f007ca6836d3afbd1e",
      "date": 1727271757115,
      "sum": 200,
      "exchangeRate": 1,
      "approved": true,
      "comment": "some comment",
      "counterpartyId": "66f3e9b114953ceae2e5f6bf",
      "counterpartyName": "Owner 1",
      "currencyId": "UAH",
      "currencySymbol": "₴",
      "dateOfPayment": 1727271757722,
      "companyCurrencySum": 200,
      "updatedAt": "2024-09-25T10:46:08.730Z",
      "transactionSum": 200,
      "transactionCurrency": "UAH",
      "transactionCurrencyRate": 1,
      "externalId": "5083b99b-d1f3-4793-b6e2-20168121c3c3",
      "invoiceCompanyId": "669df83d8ab365560ad987bd",
      "invoiceNumber": "ExampleInvoice123456 2",
      "invoiceCompanyDetails": "company details (IBAN)",
      "counterpartyDetails": "counterparty details (IBAN)",
      "withVAT": true,
      "invoiceCurrency": "USD",
      "shipping": 12,
      "attachment": {
        "label": "MTB.png",
        "id": "66fff333888b8956a4ba1cbd"
      },
      "discountPercentage": 30,
      "discountAmount": null,
      "invoiceGoods": [
        {
          "price": 10.1,
          "count": 15,
          "sum": 115.5,
          "vat": 3,
          "id": "66f645aa0adf1c67df90def2",
          "label": "good2"
        },
        {
          "price": 12,
          "count": 12,
          "sum": 144,
          "vat": 3,
          "id": "669df8513299631e02d82476",
          "label": "послуга 1"
        }
      ],
      "confirmedInvoice": false
    }
  ],
  "total": 3845
}
200 Success
{
  "list": [
    {
      "id": "66f3e9f007ca6836d3afbd1e",
      "date": 1727271757115,
      "sum": 200,
      "exchangeRate": 1,
      "approved": true,
      "comment": "some comment",
      "counterpartyId": "66f3e9b114953ceae2e5f6bf",
      "counterpartyName": "Owner 1",
      "currencyId": "UAH",
      "currencySymbol": "₴",
      "dateOfPayment": 1727271757722,
      "companyCurrencySum": 200,
      "updatedAt": "2024-09-25T10:46:08.730Z",
      "transactionSum": 200,
      "transactionCurrency": "UAH",
      "transactionCurrencyRate": 1,
      "externalId": "5083b99b-d1f3-4793-b6e2-20168121c3c3",
      "invoiceCompanyId": "669df83d8ab365560ad987bd",
      "invoiceNumber": "ExampleInvoice123456 2",
      "invoiceCompanyDetails": "company details (IBAN)",
      "counterpartyDetails": "counterparty details (IBAN)",
      "withVAT": true,
      "invoiceCurrency": "USD",
      "shipping": 12,
      "attachment": {
        "label": "MTB.png",
        "id": "66fff333888b8956a4ba1cbd"
      },
      "discountPercentage": 30,
      "discountAmount": null,
      "invoiceGoods": [
        {
          "price": 10.1,
          "count": 15,
          "sum": 115.5,
          "vat": 3,
          "id": "66f645aa0adf1c67df90def2",
          "label": "good2"
        },
        {
          "price": 12,
          "count": 12,
          "sum": 144,
          "vat": 3,
          "id": "669df8513299631e02d82476",
          "label": "послуга 1"
        }
      ],
      "confirmedInvoice": false
    }
  ],
  "total": 3845
}
401 Error
(no example)
Success (200) schema
list string[] List of operations
total number The number of invoices in the company
Error (401) schema
—