import type { IAccountData } from './skr.types.js'; /** * SKR04 - Financial Classification Principle (Abschlussgliederungsprinzip) * Organized by financial statement structure */ export const SKR04_ACCOUNTS: IAccountData[] = [ // Class 0: Capital Accounts (Anlagekonten) { accountNumber: '0001', accountName: 'Aufwendungen für Ingangsetzung', accountClass: 0, accountType: 'asset', skrType: 'SKR04', description: 'Start-up expenses', }, { accountNumber: '0010', accountName: 'Konzessionen', accountClass: 0, accountType: 'asset', skrType: 'SKR04', description: 'Concessions', }, { accountNumber: '0020', accountName: 'Patente', accountClass: 0, accountType: 'asset', skrType: 'SKR04', description: 'Patents', }, { accountNumber: '0030', accountName: 'Lizenzen', accountClass: 0, accountType: 'asset', skrType: 'SKR04', description: 'Licenses', }, { accountNumber: '0050', accountName: 'Firmenwert', accountClass: 0, accountType: 'asset', skrType: 'SKR04', description: 'Goodwill', }, { accountNumber: '0100', accountName: 'EDV-Software', accountClass: 0, accountType: 'asset', skrType: 'SKR04', description: 'IT Software', }, { accountNumber: '0200', accountName: 'Grundstücke', accountClass: 0, accountType: 'asset', skrType: 'SKR04', description: 'Land and property', }, { accountNumber: '0210', accountName: 'Gebäude', accountClass: 0, accountType: 'asset', skrType: 'SKR04', description: 'Buildings', }, { accountNumber: '0300', accountName: 'Maschinen', accountClass: 0, accountType: 'asset', skrType: 'SKR04', description: 'Machinery', }, { accountNumber: '0400', accountName: 'Fuhrpark', accountClass: 0, accountType: 'asset', skrType: 'SKR04', description: 'Vehicles', }, { accountNumber: '0500', accountName: 'Betriebs- und Geschäftsausstattung', accountClass: 0, accountType: 'asset', skrType: 'SKR04', description: 'Office equipment', }, { accountNumber: '0600', accountName: 'Geleistete Anzahlungen', accountClass: 0, accountType: 'asset', skrType: 'SKR04', description: 'Prepayments on fixed assets', }, { accountNumber: '0800', accountName: 'Finanzanlagen', accountClass: 0, accountType: 'asset', skrType: 'SKR04', description: 'Financial assets', }, // Class 1: Financial and Current Assets (Finanz- und Umlaufvermögen) { accountNumber: '1000', accountName: 'Kasse', accountClass: 1, accountType: 'asset', skrType: 'SKR04', description: 'Cash on hand', }, { accountNumber: '1100', accountName: 'Postbank', accountClass: 1, accountType: 'asset', skrType: 'SKR04', description: 'Postal bank account', }, { accountNumber: '1200', accountName: 'Bank', accountClass: 1, accountType: 'asset', skrType: 'SKR04', description: 'Bank account', }, { accountNumber: '1210', accountName: 'Sparkasse', accountClass: 1, accountType: 'asset', skrType: 'SKR04', description: 'Savings bank', }, { accountNumber: '1300', accountName: 'Wertpapiere', accountClass: 1, accountType: 'asset', skrType: 'SKR04', description: 'Securities', }, { accountNumber: '1400', accountName: 'Forderungen aus Lieferungen und Leistungen', accountClass: 1, accountType: 'asset', skrType: 'SKR04', description: 'Trade receivables', }, { accountNumber: '1500', accountName: 'Sonstige Vermögensgegenstände', accountClass: 1, accountType: 'asset', skrType: 'SKR04', description: 'Other assets', }, { accountNumber: '1520', accountName: 'Abziehbare Vorsteuer', accountClass: 1, accountType: 'asset', skrType: 'SKR04', description: 'Input VAT', }, { accountNumber: '1570', accountName: 'Vorsteuer 7%', accountClass: 1, accountType: 'asset', skrType: 'SKR04', description: 'Input VAT 7%', }, { accountNumber: '1571', accountName: 'Vorsteuer 19%', accountClass: 1, accountType: 'asset', skrType: 'SKR04', description: 'Input VAT 19%', }, { accountNumber: '1600', accountName: 'Verbindlichkeiten aus Lieferungen und Leistungen', accountClass: 1, accountType: 'liability', skrType: 'SKR04', description: 'Trade payables', }, { accountNumber: '1700', accountName: 'Sonstige Verbindlichkeiten', accountClass: 1, accountType: 'liability', skrType: 'SKR04', description: 'Other liabilities', }, { accountNumber: '1770', accountName: 'Umsatzsteuer 7%', accountClass: 1, accountType: 'liability', skrType: 'SKR04', description: 'VAT payable 7%', }, { accountNumber: '1771', accountName: 'Umsatzsteuer 19%', accountClass: 1, accountType: 'liability', skrType: 'SKR04', description: 'VAT payable 19%', }, { accountNumber: '1800', accountName: 'Privatentnahmen', accountClass: 1, accountType: 'equity', skrType: 'SKR04', description: 'Private withdrawals', }, { accountNumber: '1810', accountName: 'Privateinlagen', accountClass: 1, accountType: 'equity', skrType: 'SKR04', description: 'Private deposits', }, { accountNumber: '1900', accountName: 'Verrechnungskonto', accountClass: 1, accountType: 'asset', skrType: 'SKR04', description: 'Clearing account', }, // Class 2: Expenses (Aufwendungen) - Part 1 { accountNumber: '2000', accountName: 'Roh-, Hilfs- und Betriebsstoffe', accountClass: 2, accountType: 'expense', skrType: 'SKR04', description: 'Raw materials and supplies', }, { accountNumber: '2100', accountName: 'Bezogene Waren', accountClass: 2, accountType: 'expense', skrType: 'SKR04', description: 'Purchased goods', }, { accountNumber: '2200', accountName: 'Bezogene Leistungen', accountClass: 2, accountType: 'expense', skrType: 'SKR04', description: 'Purchased services', }, { accountNumber: '2300', accountName: 'Löhne', accountClass: 2, accountType: 'expense', skrType: 'SKR04', description: 'Wages', }, { accountNumber: '2400', accountName: 'Gehälter', accountClass: 2, accountType: 'expense', skrType: 'SKR04', description: 'Salaries', }, { accountNumber: '2500', accountName: 'Soziale Abgaben', accountClass: 2, accountType: 'expense', skrType: 'SKR04', description: 'Social security contributions', }, { accountNumber: '2600', accountName: 'Aufwendungen für Altersversorgung', accountClass: 2, accountType: 'expense', skrType: 'SKR04', description: 'Pension expenses', }, { accountNumber: '2700', accountName: 'Abschreibungen auf immaterielle Vermögensgegenstände', accountClass: 2, accountType: 'expense', skrType: 'SKR04', description: 'Depreciation on intangible assets', }, { accountNumber: '2800', accountName: 'Abschreibungen auf Sachanlagen', accountClass: 2, accountType: 'expense', skrType: 'SKR04', description: 'Depreciation on fixed assets', }, { accountNumber: '2900', accountName: 'Abschreibungen auf Finanzanlagen', accountClass: 2, accountType: 'expense', skrType: 'SKR04', description: 'Depreciation on financial assets', }, // Class 3: Expenses (Aufwendungen) - Part 2 { accountNumber: '3000', accountName: 'Raumkosten', accountClass: 3, accountType: 'expense', skrType: 'SKR04', description: 'Rent and lease', }, { accountNumber: '3100', accountName: 'Sonstige Raumkosten', accountClass: 3, accountType: 'expense', skrType: 'SKR04', description: 'Other occupancy costs', }, { accountNumber: '3200', accountName: 'Instandhaltung', accountClass: 3, accountType: 'expense', skrType: 'SKR04', description: 'Maintenance', }, { accountNumber: '3300', accountName: 'Fahrzeugkosten', accountClass: 3, accountType: 'expense', skrType: 'SKR04', description: 'Vehicle expenses', }, { accountNumber: '3400', accountName: 'Werbe- und Reisekosten', accountClass: 3, accountType: 'expense', skrType: 'SKR04', description: 'Marketing and travel', }, { accountNumber: '3500', accountName: 'Bewirtungskosten', accountClass: 3, accountType: 'expense', skrType: 'SKR04', description: 'Entertainment expenses', }, { accountNumber: '3600', accountName: 'Versicherungen', accountClass: 3, accountType: 'expense', skrType: 'SKR04', description: 'Insurance', }, { accountNumber: '3700', accountName: 'Beiträge und Gebühren', accountClass: 3, accountType: 'expense', skrType: 'SKR04', description: 'Fees and subscriptions', }, { accountNumber: '3800', accountName: 'Büromaterial', accountClass: 3, accountType: 'expense', skrType: 'SKR04', description: 'Office supplies', }, { accountNumber: '3900', accountName: 'Sonstige Aufwendungen', accountClass: 3, accountType: 'expense', skrType: 'SKR04', description: 'Other expenses', }, // Class 4: Revenues (Erträge) - Part 1 { accountNumber: '4000', accountName: 'Umsatzerlöse', accountClass: 4, accountType: 'revenue', skrType: 'SKR04', description: 'Sales revenue', vatRate: 19, }, { accountNumber: '4100', accountName: 'steuerfreie Umsätze', accountClass: 4, accountType: 'revenue', skrType: 'SKR04', description: 'Tax-free sales', }, { accountNumber: '4200', accountName: 'Erlöse 7% USt', accountClass: 4, accountType: 'revenue', skrType: 'SKR04', description: 'Revenue 7% VAT', vatRate: 7, }, { accountNumber: '4300', accountName: 'Erlöse 19% USt', accountClass: 4, accountType: 'revenue', skrType: 'SKR04', description: 'Revenue 19% VAT', vatRate: 19, }, { accountNumber: '4400', accountName: 'Erlöse innergemeinschaftliche Lieferungen', accountClass: 4, accountType: 'revenue', skrType: 'SKR04', description: 'EU sales', }, { accountNumber: '4500', accountName: 'Erlöse Export', accountClass: 4, accountType: 'revenue', skrType: 'SKR04', description: 'Export sales', }, { accountNumber: '4600', accountName: 'Bestandsveränderungen', accountClass: 4, accountType: 'revenue', skrType: 'SKR04', description: 'Inventory changes', }, { accountNumber: '4700', accountName: 'Aktivierte Eigenleistungen', accountClass: 4, accountType: 'revenue', skrType: 'SKR04', description: 'Capitalized own work', }, { accountNumber: '4800', accountName: 'Sonstige betriebliche Erträge', accountClass: 4, accountType: 'revenue', skrType: 'SKR04', description: 'Other operating income', }, { accountNumber: '4900', accountName: 'Erträge aus Beteiligungen', accountClass: 4, accountType: 'revenue', skrType: 'SKR04', description: 'Investment income', }, // Class 5: Revenues (Erträge) - Part 2 { accountNumber: '5000', accountName: 'Zinserträge', accountClass: 5, accountType: 'revenue', skrType: 'SKR04', description: 'Interest income', }, { accountNumber: '5100', accountName: 'Erträge aus Wertpapieren', accountClass: 5, accountType: 'revenue', skrType: 'SKR04', description: 'Securities income', }, { accountNumber: '5200', accountName: 'Erträge aus Anlagenabgängen', accountClass: 5, accountType: 'revenue', skrType: 'SKR04', description: 'Gains from asset disposals', }, { accountNumber: '5300', accountName: 'Währungsgewinne', accountClass: 5, accountType: 'revenue', skrType: 'SKR04', description: 'Currency gains', }, { accountNumber: '5400', accountName: 'Erträge aus der Auflösung von Rückstellungen', accountClass: 5, accountType: 'revenue', skrType: 'SKR04', description: 'Income from provision releases', }, { accountNumber: '5500', accountName: 'Periodenfremde Erträge', accountClass: 5, accountType: 'revenue', skrType: 'SKR04', description: 'Prior period income', }, { accountNumber: '5600', accountName: 'Außerordentliche Erträge', accountClass: 5, accountType: 'revenue', skrType: 'SKR04', description: 'Extraordinary income', }, { accountNumber: '5700', accountName: 'Verwendung von Rücklagen', accountClass: 5, accountType: 'revenue', skrType: 'SKR04', description: 'Use of reserves', }, { accountNumber: '5800', accountName: 'Gewinne aus Unternehmensverträgen', accountClass: 5, accountType: 'revenue', skrType: 'SKR04', description: 'Profits from company agreements', }, { accountNumber: '5900', accountName: 'Sonstige Erträge', accountClass: 5, accountType: 'revenue', skrType: 'SKR04', description: 'Other income', }, // Class 6: Special Accounts (Sonderkonten) { accountNumber: '6000', accountName: 'Betriebssteuern', accountClass: 6, accountType: 'expense', skrType: 'SKR04', description: 'Operating taxes', }, { accountNumber: '6100', accountName: 'Vermögensteuer', accountClass: 6, accountType: 'expense', skrType: 'SKR04', description: 'Wealth tax', }, { accountNumber: '6200', accountName: 'Körperschaftsteuer', accountClass: 6, accountType: 'expense', skrType: 'SKR04', description: 'Corporate tax', }, { accountNumber: '6300', accountName: 'Einkommensteuer', accountClass: 6, accountType: 'expense', skrType: 'SKR04', description: 'Income tax', }, { accountNumber: '6400', accountName: 'Gewerbesteuer', accountClass: 6, accountType: 'expense', skrType: 'SKR04', description: 'Trade tax', }, { accountNumber: '6500', accountName: 'Sonstige Steuern', accountClass: 6, accountType: 'expense', skrType: 'SKR04', description: 'Other taxes', }, { accountNumber: '6600', accountName: 'Zinsaufwendungen', accountClass: 6, accountType: 'expense', skrType: 'SKR04', description: 'Interest expense', }, { accountNumber: '6700', accountName: 'Währungsverluste', accountClass: 6, accountType: 'expense', skrType: 'SKR04', description: 'Currency losses', }, { accountNumber: '6800', accountName: 'Außerordentliche Aufwendungen', accountClass: 6, accountType: 'expense', skrType: 'SKR04', description: 'Extraordinary expenses', }, { accountNumber: '6900', accountName: 'Verluste aus Unternehmensverträgen', accountClass: 6, accountType: 'expense', skrType: 'SKR04', description: 'Losses from company agreements', }, // Class 7: Cost Accounting (Kosten- und Leistungsrechnung) { accountNumber: '7000', accountName: 'Kostenstellenrechnung', accountClass: 7, accountType: 'expense', skrType: 'SKR04', description: 'Cost center accounting', }, { accountNumber: '7100', accountName: 'Kostenträgerrechnung', accountClass: 7, accountType: 'expense', skrType: 'SKR04', description: 'Cost object accounting', }, { accountNumber: '7200', accountName: 'Kostenartenrechnung', accountClass: 7, accountType: 'expense', skrType: 'SKR04', description: 'Cost type accounting', }, { accountNumber: '7300', accountName: 'Kalkulatorische Kosten', accountClass: 7, accountType: 'expense', skrType: 'SKR04', description: 'Imputed costs', }, { accountNumber: '7400', accountName: 'Kalkulatorische Abschreibungen', accountClass: 7, accountType: 'expense', skrType: 'SKR04', description: 'Imputed depreciation', }, { accountNumber: '7500', accountName: 'Kalkulatorische Zinsen', accountClass: 7, accountType: 'expense', skrType: 'SKR04', description: 'Imputed interest', }, { accountNumber: '7600', accountName: 'Kalkulatorischer Unternehmerlohn', accountClass: 7, accountType: 'expense', skrType: 'SKR04', description: 'Imputed entrepreneur salary', }, { accountNumber: '7700', accountName: 'Kalkulatorische Miete', accountClass: 7, accountType: 'expense', skrType: 'SKR04', description: 'Imputed rent', }, { accountNumber: '7800', accountName: 'Verrechnete Kosten', accountClass: 7, accountType: 'expense', skrType: 'SKR04', description: 'Allocated costs', }, { accountNumber: '7900', accountName: 'Verrechnete Leistungen', accountClass: 7, accountType: 'revenue', skrType: 'SKR04', description: 'Allocated services', }, // Class 8: Free for Use (Zur freien Verfügung) { accountNumber: '8000', accountName: 'frei', accountClass: 8, accountType: 'equity', skrType: 'SKR04', description: 'Available for custom use', }, { accountNumber: '8100', accountName: 'frei', accountClass: 8, accountType: 'equity', skrType: 'SKR04', description: 'Available for custom use', }, { accountNumber: '8200', accountName: 'frei', accountClass: 8, accountType: 'equity', skrType: 'SKR04', description: 'Available for custom use', }, { accountNumber: '8300', accountName: 'frei', accountClass: 8, accountType: 'equity', skrType: 'SKR04', description: 'Available for custom use', }, { accountNumber: '8400', accountName: 'frei', accountClass: 8, accountType: 'equity', skrType: 'SKR04', description: 'Available for custom use', }, { accountNumber: '8500', accountName: 'frei', accountClass: 8, accountType: 'equity', skrType: 'SKR04', description: 'Available for custom use', }, { accountNumber: '8600', accountName: 'frei', accountClass: 8, accountType: 'equity', skrType: 'SKR04', description: 'Available for custom use', }, { accountNumber: '8700', accountName: 'frei', accountClass: 8, accountType: 'equity', skrType: 'SKR04', description: 'Available for custom use', }, { accountNumber: '8800', accountName: 'frei', accountClass: 8, accountType: 'equity', skrType: 'SKR04', description: 'Available for custom use', }, { accountNumber: '8900', accountName: 'frei', accountClass: 8, accountType: 'equity', skrType: 'SKR04', description: 'Available for custom use', }, // Class 9: Equity and Closing Accounts (Eigenkapital und Abschlusskonten) { accountNumber: '9000', accountName: 'Eigenkapital', accountClass: 9, accountType: 'equity', skrType: 'SKR04', description: 'Equity capital', }, { accountNumber: '9100', accountName: 'Gezeichnetes Kapital', accountClass: 9, accountType: 'equity', skrType: 'SKR04', description: 'Subscribed capital', }, { accountNumber: '9200', accountName: 'Kapitalrücklage', accountClass: 9, accountType: 'equity', skrType: 'SKR04', description: 'Capital reserves', }, { accountNumber: '9300', accountName: 'Gewinnrücklagen', accountClass: 9, accountType: 'equity', skrType: 'SKR04', description: 'Revenue reserves', }, { accountNumber: '9400', accountName: 'Gewinnvortrag/Verlustvortrag', accountClass: 9, accountType: 'equity', skrType: 'SKR04', description: 'Profit/loss carried forward', }, { accountNumber: '9500', accountName: 'Jahresüberschuss/Jahresfehlbetrag', accountClass: 9, accountType: 'equity', skrType: 'SKR04', description: 'Annual profit/loss', }, { accountNumber: '9600', accountName: 'Rückstellungen', accountClass: 9, accountType: 'liability', skrType: 'SKR04', description: 'Provisions', }, { accountNumber: '9700', accountName: 'Verbindlichkeiten', accountClass: 9, accountType: 'liability', skrType: 'SKR04', description: 'Liabilities', }, { accountNumber: '9800', accountName: 'Rechnungsabgrenzungsposten', accountClass: 9, accountType: 'liability', skrType: 'SKR04', description: 'Accruals and deferrals', }, { accountNumber: '9900', accountName: 'Statistische Konten', accountClass: 9, accountType: 'equity', skrType: 'SKR04', description: 'Statistical accounts', }, ]; export const SKR04_ACCOUNT_CLASSES = { 0: 'Anlagekonten (Fixed Assets)', 1: 'Finanz- und Umlaufvermögen (Financial and Current Assets)', 2: 'Aufwendungen Teil 1 (Expenses Part 1)', 3: 'Aufwendungen Teil 2 (Expenses Part 2)', 4: 'Erträge Teil 1 (Revenues Part 1)', 5: 'Erträge Teil 2 (Revenues Part 2)', 6: 'Sonderkonten (Special Accounts)', 7: 'Kosten- und Leistungsrechnung (Cost Accounting)', 8: 'Zur freien Verfügung (Free for Use)', 9: 'Eigenkapital und Abschlusskonten (Equity and Closing Accounts)', };