SolariumSolariumDocs
Browse The Docs

Docs/API Reference/Transactions

POST

Create a Transaction

Creates a new ledger event (manual entry). The event starts in needs_review status and must be classified and confirmed before it posts to the books.

Parameters

organizationIdUUID!required

Organization ID

merchantNameString!required

Vendor / merchant name

amountString!required

Transaction amount (positive decimal string)

transactionDateString!required

Date of transaction (YYYY-MM-DD)

eventTypeString

expense, income, or transfer (default expense)

categoryIdUUID

Expense/income account to categorize under

paymentAccountIdUUID

Bank/credit card account used for payment

taxAmountString

Tax portion of the amount (single-tax, e.g. HST/GST)

taxAccountIdUUID

Tax account for the single-tax amount (e.g. HST Payable)

taxCodeString

Tax code for the single-tax amount (e.g. HST_ON)

taxComponentsJSONString

Multi-tax entry — array of { sales_tax_code, amount } (e.g. GST + PST in BC). Overrides taxAmount/taxCode; the server resolves each component's account.

Request
mutation {
  createLedgerEvent(
    organizationId: "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
    merchantName: "Canada Post"
    amount: "34.95"
    transactionDate: "2026-06-20"
    eventType: "expense"
    categoryId: "a6b7c8d9-e0f1-2345-6789-abcdef012345"
    paymentAccountId: "e4f5a6b7-c8d9-0123-ef01-23456789abcd"
  ) {
    success
    eventId
  }
}
Response
{
  "data": {
    "createLedgerEvent": {
      "success": true,
      "eventId": "d9e0f1a2-b3c4-5678-d901-ef0123456789"
    }
  }
}