Update initial balance
Set or correct the account's opening balance, creating the seed transaction if there is none. `value` is the balance on `date` in the account's default currency, not a delta. The date has to fall strictly before every other transaction on the account: otherwise you get 422 with `initial_balance_not_first` and the `earliestDate` to go before. Accounts managed by an integration that does not allow hand-set balances are refused with `integration_managed`.
Authentication
sf_… API key in the bearerAuth field below.A SaaSFlow API key (format sf_…) or an OAuth bearer token. Paste only the key — the proxy adds the Bearer prefix. Create an API key in Settings → Company settings → API keys — see API keys.
In: header
Path Parameters
1 <= length1 <= lengthRequest Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
curl -X PUT "https://example.com/companies/string/accounts/string/initial_balance" \ -H "Content-Type: application/json" \ -d '{ "value": "string", "date": "string" }'{ "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08", "companyId": "8bb73d03-06b4-47c7-80c7-59301f770eda", "accountId": "3d07c219-0a88-45be-9cfc-91e9d095a1e9", "date": "string", "fromTo": "string", "description": "string", "amountValue": "string", "amountCurrency": "EUR", "categorizationsAutoAssigned": true, "excludeFromAutoCategorization": true, "notes": "string", "source": "string", "assignedUserId": "string", "finApiTransactionId": "string", "plaidTransactionId": "string", "stripeBalanceTransactionId": "string", "stripeInvoiceId": "string", "stripeCreditNoteId": "string", "stripePaymentIntentId": "string", "stripeBillingEmail": "string", "hubspotPortalId": "string", "hubspotInvoiceId": "string", "hubspotCategorizationResolved": true, "finwayExpenseNumber": "string", "finwayInvoiceNumber": "string", "pleoExpenseId": "string", "createdVendorId": "91002d41-22cb-48a3-bc93-148a8439ef7f", "integrationId": "497a18ca-284e-40c0-985d-f72be35d468e", "pending": true, "createdTime": "2019-08-24T14:15:22Z", "createdUserId": "string", "lastUpdatedTime": "2019-08-24T14:15:22Z", "lastUpdatedUserId": "string", "categorizations": { "property1": { "counterparty": { "type": "customer", "id": "string" }, "categoryId": "string", "usingDateRule": { "type": "transactionDate" }, "computedStartDate": "2019-08-24", "computedEndDate": "2019-08-24", "plSplit": { "revenue": 0, "cogs": 0, "cac": 0, "pd": 0, "ga": 0, "no": 0, "neutral": 0 }, "passThroughTax": 0, "transferCounterPosition": { "transactionId": "string", "categorizationId": "string" }, "internalTransitLink": { "transactionId": "string", "categorizationId": "string" }, "sourceNote": "string", "externalInvoiceUrn": "string" }, "property2": { "counterparty": { "type": "customer", "id": "string" }, "categoryId": "string", "usingDateRule": { "type": "transactionDate" }, "computedStartDate": "2019-08-24", "computedEndDate": "2019-08-24", "plSplit": { "revenue": 0, "cogs": 0, "cac": 0, "pd": 0, "ga": 0, "no": 0, "neutral": 0 }, "passThroughTax": 0, "transferCounterPosition": { "transactionId": "string", "categorizationId": "string" }, "internalTransitLink": { "transactionId": "string", "categorizationId": "string" }, "sourceNote": "string", "externalInvoiceUrn": "string" } }}List initial balance
Get the account's initial-balance seed, the synthetic transaction that carries whatever the account held before its first imported transaction. Returns `{ transaction: null }` when no seed exists, which is the usual reason a running balance looks right in shape but wrong by a constant amount.
List categories
List a company's transaction categories. Each category declares the P&L lines it can post to through `plTypes` (revenue, cogs, cac, pd, ga, no, neutral), which is what lets one category split across the P&L. `used` counts everything currently assigned to the category, both transactions and planned transactions, so a zero there means the category can be deleted outright; `usedTransactions` and `usedPlannedTransactions` break that total down. Categories flagged `system` are created and maintained by SaaSFlow and cannot be deleted at all.