Banking
Bank accounts, connections, statement imports, bank transactions, rules and reconciliation.
Paths are relative to https://evenbooks.org/api/v1. How keys, errors, paging and versions work is in the guide; the whole reference is also an OpenAPI 3.1 document.
Administrator key marks endpoints that need a key with the admin role, Write access those a read-only key can’t call, and Idempotent those that accept an idempotency key.
List bank accounts
/banking/accountsBank and credit card accounts by name, each with its ledger balance and number of unreviewed transactions. Archived ones are left out unless includeInactive=true.
Parameters
includeInactiveboolean · QueryBooleanquery
Response 200
array of BankAccountDto
Errors 400 · 401 · 403 · 404 · 409 · 429
Add a bank account
/banking/accountsAdministrators only. Links the bank or credit card to a ledger account: an existing one with role bank (or credit_card) in ledgerAccountId, or a new one created from newLedgerAccount. Transactions come from CSV imports, a bank connection, or by hand.
Request body
CreateBankAccountInput
namestringrequiredkindstringrequiredOne of:
bankcredit_cardledgerAccountIdstring · UuidnewLedgerAccountobjectShow 2 fields
codestringrequirednamestringrequired
Response 200
BankAccountDto (fields under Schemas)
Errors 400 · 401 · 403 · 404 · 409 · 429
Change a bank account
/banking/accounts/{id}Administrators only. Rename it, or set isActive: false to archive it: it is hidden from lists, stops syncing and takes no hand-entered transactions. Needs version from the last read (409 version_conflict otherwise). The response leaves out the ledger account code and name, ledger balance and unreviewed count.
Parameters
idstring (uuid)path · required
Request body
UpdateBankAccountInput
versionintegerrequirednamestringisActiveboolean
Response 200
BankAccountDto (fields under Schemas)
Errors 400 · 401 · 403 · 404 · 409 · 429
List bank connections
/banking/connectionsSimpleFIN connections by name, with their sync status and linked bank accounts.
Response 200
array of BankConnectionDto
Errors 400 · 401 · 403 · 404 · 409 · 429
Connect a bank through SimpleFIN
/banking/connectionsAdministrators only. Claims the one-time SimpleFIN setup token (an outbound call to SimpleFIN; 502 external_error when it is refused) and keeps the access it grants, encrypted; the token itself is not stored. Next: GET /banking/connections/{id}/discover, then POST /banking/connections/{id}/link.
Request body
ConnectSimpleFinInput
namestringrequiredsetupTokenstringrequiredsyncIntervalMinutesinteger
Response 200
BankConnectionDto (fields under Schemas)
Errors 400 · 401 · 403 · 404 · 409 · 429
Get a bank connection
/banking/connections/{id}With its sync status and linked bank accounts.
Parameters
idstring (uuid)path · required
Response 200
BankConnectionDto (fields under Schemas)
Errors 400 · 401 · 403 · 404 · 409 · 429
Change a bank connection
/banking/connections/{id}Administrators only. Rename it, change how often it syncs, or set status: disabled stops automatic syncs; active clears the failure count and syncs soon. A revoked connection can only be made active with POST /banking/connections/{id}/reconnect (409 invalid_state). Needs version from the last read (409 version_conflict otherwise).
Parameters
idstring (uuid)path · required
Request body
PatchBankingConnectionsIdBody
versionintegerrequirednamestringsyncIntervalMinutesintegerstatusstringOne of:
activedisabled
Response 200
BankConnectionDto (fields under Schemas)
Errors 400 · 401 · 403 · 404 · 409 · 429
Disconnect a bank connection
/banking/connections/{id}/disconnectAdministrators only. Destroys the stored SimpleFIN access and stops syncing (status: revoked); imported transactions, account links and history stay. Needs version from the last read (409 version_conflict otherwise). Connect again with POST /banking/connections/{id}/reconnect.
Parameters
idstring (uuid)path · required
Request body
PostBankingConnectionsIdDisconnectBody
versionintegerrequired
Response 200
BankConnectionDto (fields under Schemas)
Errors 400 · 401 · 403 · 404 · 409 · 429
List the accounts a bank connection can see
/banking/connections/{id}/discoverAdministrators only. Asks SimpleFIN (an outbound call; 502 external_error when it fails) for the accounts and balances behind the connection, each with the bank account it is linked to, if any. No transactions are fetched. Link them with POST /banking/connections/{id}/link.
Parameters
idstring (uuid)path · required
Response 200
array of DiscoveredAccountDto
Errors 400 · 401 · 403 · 404 · 409 · 429
Link bank accounts to a connection
/banking/connections/{id}/linkAdministrators only. Ties each account from GET /banking/connections/{id}/discover to an existing bank account (bankAccountId) or to a new one made from create. A bank account linked to another connection is refused (400 validation). The connection is then due to sync right away. Needs version from the last read (409 version_conflict otherwise).
Parameters
idstring (uuid)path · required
Request body
LinkProviderAccountsInput
versionintegerrequiredlinksarray of objectrequired
Response 200
BankConnectionDto (fields under Schemas)
Errors 400 · 401 · 403 · 404 · 409 · 429
Reconnect a bank connection
/banking/connections/{id}/reconnectAdministrators only. Claims a new SimpleFIN setup token (an outbound call; 502 external_error when it is refused) and makes the connection active again, keeping its account links and history. Needs version from the last read (409 version_conflict otherwise).
Parameters
idstring (uuid)path · required
Request body
PostBankingConnectionsIdReconnectBody
versionintegerrequiredsetupTokenstringrequired
Response 200
BankConnectionDto (fields under Schemas)
Errors 400 · 401 · 403 · 404 · 409 · 429
Sync a bank connection now
/banking/connections/{id}/syncFetches new transactions for the linked accounts from SimpleFIN (an outbound call) into the review inbox. At most once per 15 minutes per connection, unless a linked account has never synced: a throttled call imports nothing and returns ok: true with a warning. Provider failures return ok: false with error, not an HTTP error. Changes to lines already reviewed are counted in changed and flagged, never rewritten.
Parameters
idstring (uuid)path · required
Response 200
SyncResultDto
connectionIdstringokbooleaninsertedintegerupdatedintegerchangedintegerwindowStartstring · PlainDateString or nullwindowEndstring · PlainDateString or nullerrorstring or nullwarningsarray of string
Errors 400 · 401 · 403 · 404 · 409 · 429
List statement imports
/banking/importsThe 100 most recent CSV and SimpleFIN import batches, newest first, optionally for one bank account. Without rows: get one import for those.
Parameters
bankAccountIdstring (uuid)query
Response 200
array of ImportBatchDto
Errors 400 · 401 · 403 · 404 · 409 · 429
Preview a CSV bank statement
/banking/importsStep 1 of a CSV import. Reads the file with mapping, else the last mapping used for this bank account, else columns detected from the headers (mapping is null and there are no rows when none fit), and saves a previewed batch with each row marked ok, duplicate or error. Nothing is added to the account yet: fix the columns with POST /banking/imports/{id}/remap, then POST /banking/imports/{id}/commit. alreadyCommitted is true when this exact file was imported before.
Request body
PreviewCsvInput
bankAccountIdstring · UuidrequiredfileNamestringrequiredcontentstringrequiredmappingCsvMappingInputShow 6 fields
datestring · CsvColumnNamerequireddescriptionstring · CsvColumnNamerequiredmemostring · CsvColumnName or nullreferencestring · CsvColumnName or nullamountsobjectrequiredShow 4 fields
amountstring · CsvColumnName or nulldebitstring · CsvColumnName or nullcreditstring · CsvColumnName or nullinvertboolean
dateOrderstringOne of:
YMDMDYDMY
Response 200
ImportBatchDto (fields under Schemas)
Errors 400 · 401 · 403 · 404 · 409 · 429
Get a statement import
/banking/imports/{id}With the file’s column headers and every row.
Parameters
idstring (uuid)path · required
Response 200
ImportBatchDto (fields under Schemas)
Errors 400 · 401 · 403 · 404 · 409 · 429
Import a previewed CSV statement
/banking/imports/{id}/commitAdds one unreviewed bank transaction per ok row; rows already in the account (checked again now) are skipped and counted as duplicates. Posts nothing to the books. Refused when the exact same file was already imported into this account (409 duplicate). A batch already committed is returned unchanged. Idempotent with idempotencyKey.
Parameters
idstring (uuid)path · required
Request body
CommitBatchInput
idempotencyKeystring · IdempotencyKey
Response 200
ImportBatchDto (fields under Schemas)
Errors 400 · 401 · 403 · 404 · 409 · 429
Discard a CSV import
/banking/imports/{id}/discardOnly a previewed batch (409 invalid_state otherwise). Returns no content.
Parameters
idstring (uuid)path · required
Response 204
Done; no body
No body.
Errors 400 · 401 · 403 · 404 · 409 · 429
Change the columns of a CSV import
/banking/imports/{id}/remapReads the stored file again with this column mapping. Only a previewed batch (409 invalid_state otherwise). This batch is discarded and a new previewed batch, with a new id, is returned: commit that one.
Parameters
idstring (uuid)path · required
Request body
CsvMappingInput (fields under Schemas)
Response 200
ImportBatchDto (fields under Schemas)
Errors 400 · 401 · 403 · 404 · 409 · 429
List reconciliations
/banking/reconciliationsLatest statement end date first, optionally for one bank account. Without lines: get one reconciliation for those.
Parameters
bankAccountIdstring (uuid)query
Response 200
array of ReconciliationDto
Errors 400 · 401 · 403 · 404 · 409 · 429
Start a reconciliation
/banking/reconciliationsOpens an in_progress reconciliation of one statement for a bank account; only one can be in progress per account (409 invalid_state). The response lists the posted ledger lines on the account up to the statement end date that no other completed reconciliation has cleared. Next: POST /banking/reconciliations/{id}/items, then POST /banking/reconciliations/{id}/complete.
Request body
StartReconciliationInput
bankAccountIdstring · UuidrequiredstatementStartDatestring · PlainDateStringrequiredstatementEndDatestring · PlainDateStringrequiredstatementOpeningBalancestring · DecimalStringrequiredstatementClosingBalancestring · DecimalStringrequirednotesstring or null
Response 200
ReconciliationDetailDto (fields under Schemas)
Errors 400 · 401 · 403 · 404 · 409 · 429
Get a reconciliation
/banking/reconciliations/{id}With its candidate lines and which are cleared, the cleared balance (statement opening balance plus cleared lines) and the discrepancy still to explain (closing balance minus cleared balance).
Parameters
idstring (uuid)path · required
Response 200
ReconciliationDetailDto (fields under Schemas)
Errors 400 · 401 · 403 · 404 · 409 · 429
Delete a reconciliation
/banking/reconciliations/{id}Only one still in progress; a completed or flagged one must be reopened first (409 invalid_state). Returns no content.
Parameters
idstring (uuid)path · required
Response 204
Done; no body
No body.
Errors 400 · 401 · 403 · 404 · 409 · 429
Complete a reconciliation
/banking/reconciliations/{id}/completeOnly when the discrepancy is zero (400 validation otherwise). Its cleared lines can no longer be cleared by another reconciliation; if one of their entries is later reversed or its bank review undone, the reconciliation becomes flagged. A reconciliation already completed is returned unchanged. Needs version from the last read (409 version_conflict otherwise). Idempotent with idempotencyKey.
Parameters
idstring (uuid)path · required
Request body
CompleteReconciliationInput
versionintegerrequiredidempotencyKeystring · IdempotencyKey
Response 200
ReconciliationDetailDto (fields under Schemas)
Errors 400 · 401 · 403 · 404 · 409 · 429
Clear or unclear reconciliation lines
/banking/reconciliations/{id}/itemsTicks (clear) or unticks (unclear) lines by their journalLineId. Lines must be posted on this bank account and dated on or before the statement end (400 validation). Only while in_progress. Needs version from the last read (409 version_conflict otherwise); every call increments it.
Parameters
idstring (uuid)path · required
Request body
Response 200
ReconciliationDetailDto (fields under Schemas)
Errors 400 · 401 · 403 · 404 · 409 · 429
Reopen a reconciliation
/banking/reconciliations/{id}/reopenPuts a completed or flagged reconciliation back in progress, keeping its cleared lines. Refused while another reconciliation of the account is in progress (409 invalid_state). The reason is kept in History. Needs version from the last read (409 version_conflict otherwise).
Parameters
idstring (uuid)path · required
Request body
PostBankingReconciliationsIdReopenBody
versionintegerrequiredreasonstringrequired
Response 200
ReconciliationDetailDto (fields under Schemas)
Errors 400 · 401 · 403 · 404 · 409 · 429
List categorization rules
/banking/rulesBy priority (lowest number first), then name. For each unreviewed bank transaction, the first active rule that matches suggests an account; rules never post anything themselves.
Response 200
array of RuleDto
Errors 400 · 401 · 403 · 404 · 409 · 429
Create a categorization rule
/banking/rulesMatches the description, the payee or either, ignoring case (contains, starts_with or equals), optionally limited to one bank account, a direction (money in or out) and an amount range. Accept its suggestions with POST /banking/transactions/bulk (accept_suggestion).
Request body
CreateRuleInput
namestringrequiredpriorityintegerbankAccountIdstring · Uuid or nulldirectionstringOne of:
anyinoutmatchFieldstringOne of:
descriptionpayeeanymatchTypestringOne of:
containsstarts_withequalspatternstringrequiredamountMinstring · PositiveDecimalString or nullamountMaxstring · PositiveDecimalString or nullaccountIdstring · UuidrequiredcontactIdstring · Uuid or nullmemostring or null
Response 200
RuleDto (fields under Schemas)
Errors 400 · 401 · 403 · 404 · 409 · 429
Change a categorization rule
/banking/rules/{id}Omitted fields stay as they are; isActive: false turns the rule off. Needs version from the last read (409 version_conflict otherwise).
Parameters
idstring (uuid)path · required
Request body
UpdateRuleInput
namestringbankAccountIdstring · Uuid or nullpatternstringamountMinstring · PositiveDecimalString or nullamountMaxstring · PositiveDecimalString or nullaccountIdstring · UuidcontactIdstring · Uuid or nullmemostring or nullpriorityintegerdirectionstringOne of:
anyinoutmatchFieldstringOne of:
descriptionpayeeanymatchTypestringOne of:
containsstarts_withequalsversionintegerrequiredisActiveboolean
Response 200
RuleDto (fields under Schemas)
Errors 400 · 401 · 403 · 404 · 409 · 429
Delete a categorization rule
/banking/rules/{id}Transactions it already helped categorize are unchanged. Returns no content.
Parameters
idstring (uuid)path · required
Response 204
Done; no body
No body.
Errors 400 · 401 · 403 · 404 · 409 · 429
List bank transactions
/banking/transactionsThe review inbox, newest first, filtered by bank account, status, dates, text or amount. Unreviewed lines carry a rule suggestion and a matchHint when there is one. counts has the number of lines per status for the same filters (ignoring status and paging) and suggestedCount the unreviewed ones a rule has a suggestion for. Pass nextCursor as cursor for the next page.
Parameters
limitintegerquerycursorstring · PageCursorquerybankAccountIdstring · Uuidquerystatusstring · BankTxnStatusqueryOne of:
unreviewedcategorizedmatchedtransferexcludedfromstring · PlainDateStringquerytostring · PlainDateStringqueryqstringqueryamountMinstring · NonNegativeDecimalStringqueryamountMaxstring · NonNegativeDecimalStringquery
Response 200
A page of BankTransactionDto ({ items, nextCursor, total }, see paging).
Errors 400 · 401 · 403 · 404 · 409 · 429
Add a bank transaction by hand
/banking/transactionsFor a line missing from imports and syncs. A positive amount is money into the account, negative is money out; zero is refused, and so is an archived bank account. The line arrives unreviewed and posts nothing until it is reviewed.
Request body
CreateManualBankTransactionInput
bankAccountIdstring · Uuidrequireddatestring · PlainDateStringrequiredamountstring · DecimalStringrequireddescriptionstringrequiredmemostring or null
Response 200
BankTransactionDto (fields under Schemas)
Errors 400 · 401 · 403 · 404 · 409 · 429
Get a bank transaction
/banking/transactions/{id}Includes a rule suggestion and a matchHint when the line is unreviewed and has one.
Parameters
idstring (uuid)path · required
Response 200
BankTransactionDto (fields under Schemas)
Errors 400 · 401 · 403 · 404 · 409 · 429
List records a bank transaction could match
/banking/transactions/{id}/candidatesUnmatched payments, expenses, refunds, Stripe payouts and other posted entries on the same account for the same amount within 7 days; for a deposit, customer payments still in Undeposited Funds; and opposite lines in other bank accounts within 5 days (bank_transaction, a likely transfer). score is 100 for the same day, 5 less per day apart. Use them with POST /banking/transactions/{id}/match, or a bank_transaction with POST /banking/transactions/{id}/transfer.
Parameters
idstring (uuid)path · required
Response 200
array of MatchCandidateDto
Errors 400 · 401 · 403 · 404 · 409 · 429
Categorize a bank transaction
/banking/transactions/{id}/categorizeRecords an unreviewed line in the books. Money out becomes a paid expense (or, when every line is an equity account, an owner draw entry); money in posts to the given accounts. Several lines split it and must add up to the amount. A customer paying an invoice is refused here: use pay-invoice or match. createRule saves a rule from a one-line decision. Refused in a closed period (409 period_locked). Needs version from the last read (409 version_conflict otherwise). Idempotent with idempotencyKey.
Parameters
idstring (uuid)path · required
Request body
CategorizeInput
versionintegerrequiredcontactIdstring · Uuid or nullmemostring or nulllinesarray of objectrequiredShow 3 fields of each item
accountIdstring · Uuidrequiredamountstring · PositiveDecimalStringrequireddescriptionstring
createRuleobjectShow 3 fields
patternstringrequiredmatchTypestringOne of:
containsstarts_withequalsdirectionstringOne of:
anyinout
attachmentIdsarray of string · UuididempotencyKeystring · IdempotencyKey
Response 200
BankTransactionDto (fields under Schemas)
Errors 400 · 401 · 403 · 404 · 409 · 429
Exclude a bank transaction
/banking/transactions/{id}/excludeMarks an unreviewed line as not belonging in the books, with a reason; nothing is posted. Needs version from the last read (409 version_conflict otherwise). Put it back with POST /banking/transactions/{id}/undo.
Parameters
idstring (uuid)path · required
Request body
ExcludeInput
versionintegerrequiredreasonstringrequired
Response 200
BankTransactionDto (fields under Schemas)
Errors 400 · 401 · 403 · 404 · 409 · 429
List invoices a deposit could pay
/banking/transactions/{id}/invoicesFor money in only (an empty list otherwise): open invoices whose balance equals the amount, every open invoice of the customer in contactId or named in the description or payee, and balances within 10% of the amount. Best first, at most 25. Pay them with POST /banking/transactions/{id}/pay-invoice.
Parameters
idstring (uuid)path · requiredcontactIdstring · Uuidquery
Response 200
array of InvoiceCandidateDto
Errors 400 · 401 · 403 · 404 · 409 · 429
Match a bank transaction to recorded items
/banking/transactions/{id}/matchFor a line that is already in the books: links it to records from GET /banking/transactions/{id}/candidates, whose total minus an optional fee must equal the line (400 validation). Posts only the fee, or, for payments waiting in Undeposited Funds, a deposit entry moving them to the bank. A record already matched elsewhere is refused (409 duplicate). Needs version from the last read (409 version_conflict otherwise). Idempotent with idempotencyKey.
Parameters
idstring (uuid)path · required
Request body
MatchInput
versionintegerrequiredtargetsarray of objectrequiredShow 2 fields of each item
targetTypestringrequiredOne of:
paymentpurchaserefundjournal_entryprocessor_payouttargetIdstring · Uuidrequired
feeobjectShow 2 fields
amountstring · PositiveDecimalStringrequiredaccountIdstring · Uuidrequired
idempotencyKeystring · IdempotencyKey
Response 200
BankTransactionDto (fields under Schemas)
Errors 400 · 401 · 403 · 404 · 409 · 429
Record a deposit as an invoice payment
/banking/transactions/{id}/pay-invoiceRecords a customer payment for the whole deposit, applied to the chosen invoices in due date order (the last may be paid in part; anything left over stays as credit for the customer), and matches the line to it. Money in only, and all invoices from one customer. Needs version from the last read (409 version_conflict otherwise). Idempotent with idempotencyKey.
Parameters
idstring (uuid)path · required
Request body
RecordInvoicePaymentInput
versionintegerrequiredinvoiceIdsarray of string · UuidrequiredidempotencyKeystring · IdempotencyKey
Response 200
BankTransactionDto (fields under Schemas)
Errors 400 · 401 · 403 · 404 · 409 · 429
Record a bank transaction as a transfer
/banking/transactions/{id}/transferMoney moved between the company’s own accounts; it is neither income nor expense. Give either the other side’s line (counterpartTransactionId: unreviewed, in another bank account, same amount the other way), which is marked reviewed too, or another balance sheet account (otherLedgerAccountId: a bank, card, loan, clearing or owner account; receivables, customer deposits and sales tax are refused). Posts one entry. Needs version from the last read (409 version_conflict otherwise). Idempotent with idempotencyKey.
Parameters
idstring (uuid)path · required
Request body
TransferInput
versionintegerrequiredcounterpartTransactionIdstring · UuidotherLedgerAccountIdstring · Uuidmemostring or nullidempotencyKeystring · IdempotencyKey
Response 200
BankTransactionDto (fields under Schemas)
Errors 400 · 401 · 403 · 404 · 409 · 429
Undo the review of a bank transaction
/banking/transactions/{id}/undoPuts a reviewed line back in the inbox. An expense its categorization created is voided and an entry it posted is reversed (refused in a closed period); records it was matched to stay, and the other side of a transfer returns to the inbox too. Completed reconciliations that cleared a reversed entry become flagged. Needs version from the last read (409 version_conflict otherwise). Idempotent with idempotencyKey.
Parameters
idstring (uuid)path · required
Request body
UndoReviewInput
versionintegerrequiredreasonstringidempotencyKeystring · IdempotencyKey
Response 200
BankTransactionDto (fields under Schemas)
Errors 400 · 401 · 403 · 404 · 409 · 429
Review many bank transactions at once
/banking/transactions/bulkApplies one action to up to 100 lines, each with its version: accept_suggestion (the account its rule suggests; refused for a line that looks already recorded), categorize, transfer, exclude or undo. Each line succeeds or fails on its own (a stale version, a closed period); the response lists every line with the updated transaction or the error. One idempotencyKey covers the whole request.
Request body
BulkReviewInput
One of these shapes:
action: "accept_suggestion"
actionstringrequiredAlways
"accept_suggestion"itemsarray of objectrequiredShow 2 fields of each item
idstring · Uuidrequiredversionintegerrequired
idempotencyKeystring · IdempotencyKey
action: "categorize"
actionstringrequiredAlways
"categorize"itemsarray of objectrequiredShow 2 fields of each item
idstring · Uuidrequiredversionintegerrequired
accountIdstring · UuidrequiredcontactIdstring · Uuid or nullmemostring or nullidempotencyKeystring · IdempotencyKey
action: "transfer"
actionstringrequiredAlways
"transfer"itemsarray of objectrequiredShow 2 fields of each item
idstring · Uuidrequiredversionintegerrequired
otherLedgerAccountIdstring · UuidrequiredidempotencyKeystring · IdempotencyKey
action: "exclude"
actionstringrequiredAlways
"exclude"itemsarray of objectrequiredShow 2 fields of each item
idstring · Uuidrequiredversionintegerrequired
reasonstringrequiredidempotencyKeystring · IdempotencyKey
action: "undo"
actionstringrequiredAlways
"undo"itemsarray of objectrequiredShow 2 fields of each item
idstring · Uuidrequiredversionintegerrequired
reasonstringidempotencyKeystring · IdempotencyKey
Response 200
BulkReviewResultDto
resultsarray of BulkReviewItemResultsucceededintegerfailedinteger
Errors 400 · 401 · 403 · 404 · 409 · 429
Schemas
The types these endpoints take or return, by name. Type names above link here.
BankAccountDto
idstringnamestringkindstringOne of:
bankcredit_cardledgerAccountIdstringledgerAccountCodestringoptionalledgerAccountNamestringoptionalconnectionIdstring or nullproviderAccountIdstring or nullproviderOrgNamestring or nullcurrencystringlastBalancestring · DecimalString or nulllastBalanceAtstring or nulllastSyncedAtstring or nullledgerBalancestring · DecimalStringoptionalunreviewedCountintegeroptionalisActivebooleanversioninteger
BankConnectionDto
idstringproviderstringAlways
"simplefin"namestringstatusstring · ConnectionStatusOne of:
activeerrorrevokeddisabledsyncIntervalMinutesintegernextSyncAtstring or nulllastSyncStartedAtstring or nulllastSuccessAtstring or nulllastErrorstring or nulllastErrorAtstring or nullconsecutiveFailuresintegerisStalebooleanaccountsarray of objectoptionalShow 8 fields of each item
idstringnamestringkindstringOne of:
bankcredit_cardproviderAccountIdstring or nullproviderOrgNamestring or nulllastBalancestring · DecimalString or nulllastBalanceAtstring or nulllastSyncedAtstring or null
versionintegercreatedAtstring
BankTransactionDto
idstringbankAccountIdstringbankAccountNamestringoptionalsourcestringOne of:
csvsimplefinmanualdatestring · PlainDateStringamountstring · DecimalStringcurrencystringdescriptionstringpayeestring or nullmemostring or nullreferencestring or nullpendingbooleanstatusstring · BankTxnStatusOne of:
unreviewedcategorizedmatchedtransferexcludedexcludedReasonstring or nulljournalEntryIdstring or nullchangedAtstring or nullchangeNotestring or nullreviewedBystring or nullreviewedAtstring or nullversionintegersuggestionobject or nulloptionalShow 6 fields
ruleIdstringruleNamestringaccountIdstringaccountNamestringcontactIdstring or nullmemostring or null
matchHintobject or nulloptionalShow 4 fields
countintegertopScorenumbertransfersintegerinvoicesinteger
BankTxnStatus
string
One of: unreviewed categorized matched transfer excluded
BulkReviewItemResult
idstringokbooleantransactionBankTransactionDtooptionalerrorobjectoptionalShow 2 fields
codestringmessagestring
ConnectionStatus
string
One of: active error revoked disabled
CsvColumnName
string
CsvMapping
datestring · CsvColumnNamedescriptionstring · CsvColumnNamememostring · CsvColumnName or nulloptionalreferencestring · CsvColumnName or nulloptionalamountsobjectShow 4 fields
amountstring · CsvColumnName or nulloptionaldebitstring · CsvColumnName or nulloptionalcreditstring · CsvColumnName or nulloptionalinvertbooleanoptional
dateOrderstringOne of:
YMDMDYDMY
CsvMappingInput
datestring · CsvColumnNamerequireddescriptionstring · CsvColumnNamerequiredmemostring · CsvColumnName or nullreferencestring · CsvColumnName or nullamountsobjectrequiredShow 4 fields
amountstring · CsvColumnName or nulldebitstring · CsvColumnName or nullcreditstring · CsvColumnName or nullinvertboolean
dateOrderstringOne of:
YMDMDYDMY
DecimalString
decimal string
string
DiscoveredAccountDto
providerAccountIdstringnamestringorgNamestring or nullcurrencystringbalancestring · DecimalString or nullbalanceDatestring or nullbankAccountIdstring or null
IdempotencyKey
string
ImportBatchDto
idstringbankAccountIdstringsourcestringOne of:
csvsimplefinfileNamestring or nullstatusstringOne of:
previewedcommitteddiscardedfailedmappingCsvMapping or nullheadersarray of stringoptionalrowCountintegerimportedCountintegerduplicateCountintegererrorCountintegerwindowStartstring · PlainDateString or nullwindowEndstring · PlainDateString or nullalreadyCommittedbooleanoptionalcreatedAtstringcommittedAtstring or nullrowsarray of ImportRowDtooptional
ImportRowDto
rowNointegerstatusstringOne of:
okduplicateerrorerrorstring or nulldatestring · PlainDateString or nullamountstring · DecimalString or nulldescriptionstring or nullmemostring or nullreferencestring or nullduplicateOfstring or nullrawmap of string
InvoiceCandidateDto
invoiceIdstringnumberstringcontactIdstringcontactNamestringissueDatestring · PlainDateStringdueDatestring · PlainDateStringtotalstring · DecimalStringbalanceDuestring · DecimalStringisOverduebooleanreasonstringOne of:
exactcustomerclosescorenumber
MatchCandidateDto
targetTypestringOne of:
paymentpurchaserefundjournal_entrybank_transactionprocessor_payouttargetIdstringdatestring · PlainDateStringamountstring · DecimalStringdescriptionstringdetailstring or nullbankAccountNamestring or nulloptionalundepositedbooleanoptionalscorenumber
NonNegativeDecimalString
string
PageCursor
string
PlainDateString
string
PositiveDecimalString
string
QueryBoolean
boolean
ReconciliationDetailDto
idstringbankAccountIdstringbankAccountNamestringoptionalstatementStartDatestring · PlainDateStringstatementEndDatestring · PlainDateStringstatementOpeningBalancestring · DecimalStringstatementClosingBalancestring · DecimalStringstatusstringOne of:
in_progresscompletedflaggedclearedBalancestring · DecimalStringdiscrepancystring · DecimalStringcompletedAtstring or nullcompletedBystring or nullflaggedReasonstring or nullnotesstring or nullversionintegercreatedAtstringlinesarray of ReconciliationLineDtoledgerBalanceAtEndstring · DecimalString
ReconciliationDto
idstringbankAccountIdstringbankAccountNamestringoptionalstatementStartDatestring · PlainDateStringstatementEndDatestring · PlainDateStringstatementOpeningBalancestring · DecimalStringstatementClosingBalancestring · DecimalStringstatusstringOne of:
in_progresscompletedflaggedclearedBalancestring · DecimalString or nulldiscrepancystring · DecimalString or nullcompletedAtstring or nullcompletedBystring or nullflaggedReasonstring or nullnotesstring or nullversionintegercreatedAtstring
ReconciliationLineDto
journalLineIdstringentryIdstringentryNumberinteger or nulldatestring · PlainDateStringmemostringamountstring · DecimalStringclearedbooleansourceTypestring
RuleDto
idstringnamestringpriorityintegerbankAccountIdstring or nulldirectionstringOne of:
anyinoutmatchFieldstringOne of:
descriptionpayeeanymatchTypestringOne of:
containsstarts_withequalsregexpatternstringamountMinstring · DecimalString or nullamountMaxstring · DecimalString or nullaccountIdstringaccountNamestringoptionalcontactIdstring or nullmemostring or nullisActivebooleanhitCountintegerversioninteger
Uuid
string (uuid)