Skip to content

Accounting Reports

Introduction

The accounting reports endpoints provide access to financial statements including balance sheets and income statements. These reports follow Swiss accounting standards (KMU-Kontenplan) and provide comprehensive financial analysis with period comparisons.

Both reports include comparison data from the previous year to enable trend analysis and financial performance evaluation.

Balance Sheet

Retrieve balance sheet

get
/accounting/balance-sheet

Generates a balance sheet showing the company's financial position at a specific point in time. The report includes current and fixed assets on the debit side, and current liabilities, fixed liabilities, and equity on the credit side.

AttributeTypeDescription
dateString?Balance sheet date in ISO format (YYYY-MM-DD). Defaults to current date if not provided

Example response

json
// HTTP 200 OK
{
    "debits": {
        "sections": {
            "currentAssets": {
                "name": "Current Assets",
                "groups": [
                    {
                        "name": "Cash and Cash Equivalents",
                        "accounts": [
                            // Account objects with current_balance and compare_balance fields
                        ],
                        "total": 45620.50,
                        "compare_total": 38250.00,
                        "diff_percent": 19.27
                    }
                ],
                "total": 125450.75,
                "compare_total": 98320.25,
                "diff_percent": 27.59
            },
            "fixedAssets": {
                "name": "Fixed Assets",
                "groups": [
                    {
                        "name": "Tangible Assets",
                        "accounts": [
                            // Account objects with current_balance and compare_balance fields
                        ],
                        "total": 85600.00,
                        "compare_total": 92400.00,
                        "diff_percent": -7.36
                    }
                ],
                "total": 185600.00,
                "compare_total": 192400.00,
                "diff_percent": -3.53
            }
        },
        "total": 311050.75,
        "compare_total": 290720.25,
        "diff_percent": 6.99
    },
    "credits": {
        "sections": {
            "currentLiabilities": {
                "name": "Current Liabilities",
                "groups": [
                    {
                        "name": "Accounts Payable",
                        "accounts": [
                            // Account objects with current_balance and compare_balance fields
                        ],
                        "total": 28450.25,
                        "compare_total": 32100.50,
                        "diff_percent": -11.37
                    }
                ],
                "total": 65890.25,
                "compare_total": 72340.50,
                "diff_percent": -8.92
            },
            "fixedLiabilities": {
                "name": "Fixed Liabilities",
                "groups": [
                    {
                        "name": "Long-term Debt",
                        "accounts": [
                            // Account objects with current_balance and compare_balance fields
                        ],
                        "total": 125000.00,
                        "compare_total": 150000.00,
                        "diff_percent": -16.67
                    }
                ],
                "total": 125000.00,
                "compare_total": 150000.00,
                "diff_percent": -16.67
            },
            "equity": {
                "name": "Equity",
                "groups": [
                    {
                        "name": "Share Capital",
                        "accounts": [
                            // Account objects with current_balance and compare_balance fields
                        ],
                        "total": 120160.50,
                        "compare_total": 68379.75,
                        "diff_percent": 75.73
                    }
                ],
                "total": 120160.50,
                "compare_total": 68379.75,
                "diff_percent": 75.73
            }
        },
        "total": 311050.75,
        "compare_total": 290720.25
    }
}

Generate balance sheet PDF

get
/accounting/balance-sheet/pdf

Returns a PDF version of the balance sheet report.

AttributeTypeDescription
dateString?Balance sheet date in ISO format (YYYY-MM-DD)
downloadBoolean?If present, forces download instead of inline display

PDF Response Headers

Content-Type: application/pdf
Content-Disposition: inline; filename="OrganizationName_Bilanz_2024-12-31.pdf"
// or for download:
Content-Disposition: attachment; filename="OrganizationName_Bilanz_2024-12-31.pdf"

Income Statement

Retrieve income statement

get
/accounting/income-statement

Generates a comprehensive income statement showing the company's financial performance over a specified period. The report includes operational earnings, various cost categories, and calculates key financial metrics like EBITDA, EBIT, and EBT.

AttributeTypeDescription
dateArray?Date range for the income statement as an array of date strings in ISO format (YYYY-MM-DD). If a single date is provided, the range will be from the start of the year to that date. Defaults to [<current-year-start>, <current-year-end>] if not provided

Date Range Handling

  • Single date: ["2024-06-30"] → Range becomes ["2024-01-01", "2024-06-30"]
  • Date range: ["2024-01-01", "2024-06-30"] → Uses the provided range
  • Default: Uses current year start to current year end

Example response

json
// HTTP 200 OK
{
    "dateRange": [
        "2024-01-01T00:00:00.000000Z",
        "2024-12-31T23:59:59.000000Z"
    ],
    "compareDateRange": [
        "2023-01-01T00:00:00.000000Z",
        "2023-12-31T23:59:59.000000Z"
    ],
    "data": [
        {
            "name": "operational-earnings",
            "groups": [
                {
                    "name": "operational-income",
                    "type": "revenue",
                    "accounts": [
                        // Account objects with current_balance and compare_balance fields
                    ],
                    "total": 485620.50,
                    "compare_total": 398450.75
                }
            ],
            "total": 485620.50,
            "compare_total": 398450.75
        },
        {
            "name": "gross-profit",
            "groups": [
                {
                    "name": "materials-goods-cost",
                    "type": "expense",
                    "accounts": [
                        // Account objects with current_balance and compare_balance fields
                    ],
                    "total": 125480.25,
                    "compare_total": 95320.50
                }
            ],
            "total": 360140.25,
            "compare_total": 303130.25
        },
        {
            "name": "gross-profit-after-staff-costs",
            "groups": [
                {
                    "name": "staff-costs",
                    "type": "expense",
                    "accounts": [
                        // Account objects with current_balance and compare_balance fields
                    ],
                    "total": 185600.00,
                    "compare_total": 165200.00
                }
            ],
            "total": 174540.25,
            "compare_total": 137930.25
        },
        {
            "name": "ebitda",
            "groups": [
                {
                    "name": "other-operational-costs",
                    "type": "expense",
                    "accounts": [
                        // Account objects with current_balance and compare_balance fields
                    ],
                    "total": 86420.75,
                    "compare_total": 78650.25
                }
            ],
            "total": 88119.50,
            "compare_total": 59280.00
        },
        {
            "name": "ebit",
            "groups": [
                {
                    "name": "depreciation",
                    "type": "expense",
                    "accounts": [
                        // Account objects with current_balance and compare_balance fields
                    ],
                    "total": 12500.00,
                    "compare_total": 11800.00
                }
            ],
            "total": 75619.50,
            "compare_total": 47480.00
        },
        {
            "name": "ebt",
            "groups": [
                {
                    "name": "financial-expenses",
                    "type": "expense",
                    "accounts": [
                        // Account objects with current_balance and compare_balance fields
                    ],
                    "total": 3250.00,
                    "compare_total": 4100.00
                },
                {
                    "name": "financial-income",
                    "type": "revenue",
                    "accounts": [
                        // Account objects with current_balance and compare_balance fields
                    ],
                    "total": 850.00,
                    "compare_total": 620.00
                }
            ],
            "total": 73219.50,
            "compare_total": 44000.00
        },
        {
            "name": "profit-loss-before-taxes",
            "groups": [
                {
                    "name": "secondary-operational-income",
                    "type": "revenue",
                    "accounts": [],
                    "total": 0.00,
                    "compare_total": 0.00
                },
                {
                    "name": "non-operational-expenses",
                    "type": "expense",
                    "accounts": [],
                    "total": 0.00,
                    "compare_total": 0.00
                },
                {
                    "name": "non-operational-income",
                    "type": "revenue",
                    "accounts": [],
                    "total": 0.00,
                    "compare_total": 0.00
                },
                {
                    "name": "extraordinary-expenses",
                    "type": "expense",
                    "accounts": [],
                    "total": 0.00,
                    "compare_total": 0.00
                },
                {
                    "name": "extraordinary-income",
                    "type": "revenue",
                    "accounts": [],
                    "total": 0.00,
                    "compare_total": 0.00
                }
            ],
            "total": 73219.50,
            "compare_total": 44000.00
        },
        {
            "name": "profit-loss",
            "groups": [
                {
                    "name": "taxes",
                    "type": "expense",
                    "accounts": [
                        // Account objects with current_balance and compare_balance fields
                    ],
                    "total": 8250.00,
                    "compare_total": 5280.00
                }
            ],
            "total": 64969.50,
            "compare_total": 38720.00
        }
    ]
}

Generate income statement PDF

get
/accounting/income-statement/pdf

Returns a PDF version of the income statement report.

AttributeTypeDescription
dateArray?Date range as an array of date strings
downloadBoolean?If present, forces download instead of inline display

PDF Response Headers

Content-Type: application/pdf
Content-Disposition: inline; filename="OrganizationName_Erfolgsrechnung_2024-01-01_2024-12-31.pdf"
// or for download:
Content-Disposition: attachment; filename="OrganizationName_Erfolgsrechnung_2024-01-01_2024-12-31.pdf"

Account Structure

Both reports use the standard Account resource structure with additional balance fields:

  • current_balance: Account balance for the reporting period
  • compare_balance: Account balance for the comparison period (previous year)
  • diff_percent: Percentage change between periods (calculated as: ((current - compare) / compare) * 100)

Authentication & Permissions

Required Permission

Both endpoints require the manage accounting permission. Users without this permission will receive a 403 Forbidden response.

Account Number Ranges

The income statement categorizes accounts based on Swiss KMU account numbering:

CategoryNumber RangeDescription
Operational Income3000-3999Net revenue from sales and services
Materials & Goods Cost4000-4999Cost of materials and goods sold
Staff Costs5000-5999Personnel expenses and benefits
Other Operational Costs6000-6799Rent, utilities, marketing, and other operating expenses
Depreciation6800-6899Depreciation and amortization
Secondary Operational Income7000-7999Secondary operational revenues
Financial Expenses6900-6949Interest and financial costs
Financial Income6950-6999Interest and financial income
Non-Operational Expenses8000-8099Non-operational costs
Non-Operational Income8100-8499Non-operational revenues
Extraordinary Expenses8500-8509One-time or extraordinary costs
Extraordinary Income8510-8899One-time or extraordinary revenues
Direct Taxes8900-8999Corporate and direct taxes