feat: BankID authentication via TIC Identity API (#192)

* feat: add BankID authentication via TIC Identity API

Integrate BankID as a login/signup method using the TIC Identity API.
Users can authenticate with BankID QR codes (desktop) or deep links (mobile),
link BankID to existing accounts, and skip TOTP MFA when BankID is linked.
Removes Step 0 (role choice) from onboarding for all users. Adds enrichment
data support for pre-filling company details from Bolagsverket during signup.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* fix: address PR review — server-side rate limit, unlink clears MFA bypass

- Add per-IP rate limit (5s cooldown) on /bankid/start to prevent
  unbounded billable TIC sessions from unauthenticated callers
- Add /bankid/unlink endpoint that deletes bankid_identities AND clears
  app_metadata.bankid_linked so MFA enforcement resumes after unlink
- Update BankIdSettings to call server-side unlink instead of client-side delete

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

* fix: move rate limiter to module scope, add BankID logo and year-end skill

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Jakob Wennberg
2026-04-08 13:44:14 +02:00
committed by GitHub
co-authored by Claude Opus 4.6
parent 6486e0d9e2
commit 6d75b9a1bf
31 changed files with 3186 additions and 274 deletions
@@ -0,0 +1,42 @@
---
name: swedish-year-end-closing
description: >
Swedish year-end closing (bokslut) for AB and Enskild firma. Covers legal framework (BFL/ÅRL/K2/K3), step-by-step closing with BAS account numbers, all bokslutstransaktioner, tax calculations (bolagsskatt, egenavgifter, räntefördelning, expansionsfond, periodiseringsfond), reporting (årsredovisning/NE-bilaga), filing deadlines, SIE4 export, K2 vs K3 differences, and compliance pitfalls. Trigger on bokslut, årsbokslut, årsredovisning, closing entries, resultatdisposition, year-end accruals, tax provisions, överavskrivningar, accounts 2099/2091/8910/8811/2512/21xx/29xx in closing context, or any question about closing books for a Swedish company. Also trigger for "how do I book tax at year-end", "periodiseringsfond AB vs EF", "deadline årsredovisning", "what accounts for accruals".
---
# Swedish Year-End Closing (Bokslut)
This skill provides everything needed to perform or implement a complete Swedish year-end closing for **Aktiebolag (AB)** and **Enskild firma**.
## Quick decision tree
1. **AB** → always årsredovisning → K2 (if mindre and eligible) or K3
2. **Enskild firma, revenue ≤ 3 MSEK** → K1 förenklat årsbokslut
3. **Enskild firma, revenue > 3 MSEK** → full årsbokslut (BFNAR 2017:3)
## Reference files
This skill contains detailed reference material split by topic. Read the relevant file(s) based on the user's question:
- **`references/legal-framework.md`** — BFL, ÅRL, K1/K2/K3 framework rules, entity obligations, större/mindre företag thresholds, 2026 K2 changes
- **`references/closing-process.md`** — Complete 8-phase closing process with BAS account numbers: avstämningar, periodiseringar, avskrivningar, lagervärdering, obeskattade reserver, avsättningar/skatt, equity handling, result closing
- **`references/journal-entries.md`** — All specific bokslutstransaktioner with debit/credit pairs for software implementation
- **`references/tax-calculations.md`** — Bolagsskatt for AB, egenavgifter/räntefördelning/expansionsfond/periodiseringsfond for enskild firma, schablonintäkt, schablonavdrag
- **`references/reporting-and-filing.md`** — Årsredovisning structure, NE-bilaga, filing deadlines, penalties, Bolagsverket/Skatteverket requirements, SIE4 export, audit thresholds
- **`references/k2-vs-k3.md`** — Implementation differences: component depreciation, deferred tax, intangibles, leasing, format restrictions, account visibility
- **`references/pitfalls-and-rates.md`** — Common mistakes, compliance traps, kontrollbalansräkning, and reference rate table (2025/2026)
## How to use this skill
When a user asks a bokslut question:
1. Identify whether it's about AB or Enskild firma (or both)
2. Identify which phase/topic the question relates to
3. Read the relevant reference file(s)
4. Answer with specific BAS account numbers and journal entries where applicable
5. Flag K2 vs K3 differences when relevant
6. Include current rates/thresholds from the rates table
Always distinguish between items that are **booked** in the accounting vs items that exist **only in the tax declaration**:
- **Booked**: överavskrivningar, periodiseringsfond (AB only), skatt på årets resultat (AB only)
- **Declaration only**: periodiseringsfond (EF), expansionsfond, räntefördelning, schablonintäkt on periodiseringsfond, egenavgifter schablonavdrag
@@ -0,0 +1,156 @@
# Step-by-Step Closing Process with BAS Account Numbers
The closing process (bokslutsarbete) proceeds in eight phases, each depending on prior phases.
## Phase 1: Reconciliations (avstämningar)
Every balance sheet account must be reconciled against external documentation.
| What | Account(s) | Reconcile against |
|------|-----------|-------------------|
| Bank | **1920** Plusgiro, **1930** Företagskonto | Bank statements |
| Cash | **1910** Kassa | Physical count |
| Skattekonto | **1630** Avräkning för skatter och avgifter | Skatteverket kontoutdrag |
| Moms | **2610–2650** | Declared and transferred amounts to 1630 |
| Kundfordringar | **1510** | Kundreskontra (open invoices) |
| Leverantörsskulder | **2440** | Leverantörsreskontra |
| Doubtful receivables | **1519** Nedskrivning / **6352** Befarade förluster | Assessment of collectability |
## Phase 2: Accruals and deferrals (periodiseringar)
### Interimsfordringar (assets, 17xx)
| Account | Description |
|---------|-------------|
| **1710** | Förutbetalda hyreskostnader |
| **1720** | Förutbetalda leasingavgifter |
| **1730** | Förutbetalda försäkringspremier |
| **1740** | Förutbetalda räntekostnader |
| **1750** | Upplupna hyresintäkter |
| **1760** | Upplupna ränteintäkter |
| **1790** | Övriga förutbetalda kostnader och upplupna intäkter |
### Interimsskulder (liabilities, 29xx)
| Account | Description |
|---------|-------------|
| **2910** | Upplupna löner |
| **2920** | Upplupna semesterlöner |
| **2940** | Beräknade upplupna sociala avgifter |
| **2943** | Beräknad upplupen SLP |
| **2960** | Upplupna räntekostnader |
| **2970** | Förutbetalda intäkter |
| **2991** | Beräknat arvode för bokslut |
| **2992** | Beräknat arvode för revision |
| **2990** | Övriga upplupna kostnader |
### K2 simplification
Individual recurring costs below **5,000 SEK** that don't fluctuate >20% year-over-year need not be accrued. Personnel costs must ALWAYS be accrued regardless of amount. K3 has no such threshold.
## Phase 3: Depreciation (avskrivningar)
| Asset type | Cost account | Accumulated depreciation |
|------------|-------------|------------------------|
| Immateriella tillgångar | **7810–7819** | **1019, 1029** etc. |
| Byggnader | **7821** | **1119** |
| Markanläggningar | **7824** | **1129** |
| Maskiner | **7831** | **1219** |
| Inventarier | **7832** | **1229** |
| Bilar/transportmedel | **7834** | **1249** |
| Datorer | **7833** | **1259** |
### K2 vs K3 depreciation
- **K2**: Schablonmässiga nyttjandeperioder allowed (5 years for inventarier, tax rates for buildings). Component depreciation FORBIDDEN.
- **K3**: Individual assessment of useful life and residual value required. **Component depreciation mandatory** for assets with significant components having different consumption patterns.
## Phase 4: Inventory valuation (lagervärdering)
Physical inventory count at balance date required. Valuation: **lägsta värdets princip (LVP)** using FIFO.
Alternative: **97% schablon rule** (3% inkuransavdrag).
| Account | Description |
|---------|-------------|
| **1410** | Råvaror |
| **1440** | Produkter i arbete |
| **1450** | Färdiga varor |
| **1460** | Lager av handelsvaror |
| **4990** | Lagerförändring |
K1: inventory below half a prisbasbelopp (29,600 SEK for 2026) need not be valued.
K3: indirect manufacturing overhead must be included when material. K2: optional.
## Phase 5: Untaxed reserves (obeskattade reserver)
### Periodiseringsfonder (AB only — booked)
AB can defer up to **25%** of skattemässigt resultat for up to 6 years.
| Account | Description |
|---------|-------------|
| **2110–2129** | Periodiseringsfond per year (e.g. 2125 = tax year 2025) |
| **8811** | Avsättning till periodiseringsfond |
| **8819** | Återföring från periodiseringsfond |
Entry: Debit 8811 / Credit 21xx (avsättning). Debit 21xx / Credit 8819 (återföring).
**Enskild firma**: 30% periodiseringsfond, handled ONLY in NE-bilaga (R29/R30), NEVER booked.
### Överavskrivningar
Excess of tax-allowed depreciation over planned depreciation.
| Account | Description |
|---------|-------------|
| **8850** (or 8851–8853) | Förändring av överavskrivningar |
| **2150** (or 2151–2153) | Ackumulerade överavskrivningar |
Two methods: **30-rule** (declining balance on pool) and **20-rule** (straight-line per asset over 5 years). Use whichever produces lowest allowable residual value.
## Phase 6: Provisions and tax (avsättningar, skatt)
### Provisions
| Account | Description |
|---------|-------------|
| **2210** | Avsättningar för pensioner |
| **2220** | Avsättningar för garantier |
| **2230, 2250** | Other provisions |
| **7533** | Särskild löneskatt on pensions |
| **2514** | Beräknad SLP |
SLP rate: **24.26%** on pension costs. Entry: Debit 7533 / Credit 2514.
### Tax provision (AB only)
| Account | Description |
|---------|-------------|
| **8910** | Skatt på årets resultat |
| **2512** | Beräknad inkomstskatt |
| **2518** | Betald F-skatt (debit balance during year) |
Entry: Debit 8910 / Credit 2512. Net 2518 against 2510/2512 at year-end.
**Enskild firma does NOT book any tax** — owner taxed personally via NE-bilaga.
### Deferred tax (K3 only)
| Account | Description |
|---------|-------------|
| **8940** | Uppskjuten skatt |
| **2240** | Avsättningar för uppskjutna skatter |
| **1370** | Uppskjuten skattefordran |
All marked **[Ej K2]** in BAS kontoplan. K2 must NEVER recognize deferred tax.
## Phase 7–8: Equity handling and result closing
All P&L accounts (classes 3–8) net to **8999** (Årets resultat).
### AB equity flow
1. Year-end: Debit 8999 / Credit **2099** (Årets resultat) for profit
2. New year start: 2099 → **2098** (Vinst/förlust från föregående år)
3. After bolagsstämma: 2098 → **2091** (Balanserad vinst eller förlust)
4. Declared dividend: 2098 → **2898** (Outtagen vinstutdelning)
### Enskild firma equity flow
1. Year-end: Debit 8999 / Credit **2019** (Årets resultat, delägare 1)
2. New year start: Zero all sub-accounts (**2011** egna varuuttag, **2012** avräkning skatter, **2013** övriga egna uttag, **2017** årets kapitaltillskott, **2018** övriga egna insättningar, **2019** årets resultat) → net into **2010** (Eget kapital)
3. No bolagsstämma required
@@ -0,0 +1,133 @@
# Specific Closing Journal Entries (Bokslutstransaktioner)
All entries dated on balance sheet date (e.g., 2025-12-31). These are the core entries a software system must generate.
## Salary accruals
December salary earned but paid in January:
```
Debit 7010 Löner till kollektivanställda
Credit 2910 Upplupna löner
```
Alternatives: 7210 (tjänstemän), 7220 (företagsledare).
## Vacation pay accruals
Year-end adjustment of semesterlöneskuld:
```
Debit 7090 Förändring av semesterlöneskuld
Credit 2920 Upplupna semesterlöner
```
Book the difference between calculated vacation pay liability at year-end and opening balance of 2920.
## Social fees on accrued salary and vacation
```
Debit 7510 Lagstadgade sociala avgifter
Credit 2940 Beräknade upplupna sociala avgifter
```
Calculate as: (upplupen lön + upplupen semester) × **31.42%**
## Depreciation (example: machinery)
```
Debit 7831 Avskrivningar på maskiner
Credit 1219 Ack. avskrivningar maskiner
```
Repeat per asset category with appropriate account pairs.
## Överavskrivningar (excess tax depreciation)
```
Debit 8853 Förändring av överavskrivningar maskiner & inventarier
Credit 2153 Ack. överavskrivningar maskiner & inventarier
```
## Inventory increase
```
Debit 1460 Lager av handelsvaror
Credit 4990 Lagerförändring
```
For decrease: reverse the entry. Use separate accounts per inventory type for manufacturing.
## Prepaid expenses (e.g., insurance covering next year)
```
Debit 1730 Förutbetalda försäkringspremier
Credit 6310 Företagsförsäkringar
```
Reversal on January 1 mirrors the entry. Similar for 1710 (rent), 1790 (other).
## Accrued income (work performed, invoice pending)
```
Debit 1790 Övriga förutbetalda kostnader och upplupna intäkter
Credit 3010 Försäljning
```
Booked without moms; moms recognized when invoice is issued.
## Deferred revenue (advance payment for future service)
```
Debit 3010 Försäljning
Credit 2970 Förutbetalda intäkter
```
Recognized monthly: Debit 2970 / Credit 3010.
## Accrued audit/accounting fees
```
Debit 6420 Revision och bokslut
Credit 2992 Beräknat arvode för revision
```
## Periodiseringsfond avsättning (AB, 25% of 400,000 = 100,000)
```
Debit 8811 Avsättning till periodiseringsfond
Credit 2126 Periodiseringsfond tax year 2026
```
Återföring of oldest fund:
```
Debit 2120 Periodiseringsfond [oldest year]
Credit 8819 Återföring från periodiseringsfond
```
## Tax provision (AB, taxable profit 500,000 × 20.6% = 103,000)
```
Debit 8910 Skatt som belastar årets resultat
Credit 2512 Beräknad inkomstskatt
```
## Result closing (AB, profit 397,000 after tax)
```
Debit 8999 Årets resultat
Credit 2099 Årets resultat
```
## Result closing (Enskild firma, profit)
```
Debit 8999 Årets resultat
Credit 2019 Årets resultat, delägare 1
```
## New year opening: carry forward previous year result (AB)
```
Debit 2099 Årets resultat (previous year)
Credit 2098 Vinst/förlust från föregående år
```
After bolagsstämma:
```
Debit 2098 Vinst/förlust från föregående år
Credit 2091 Balanserad vinst eller förlust
```
## New year opening: consolidate equity (Enskild firma)
Zero all of 2011–2019 into 2010:
```
Debit 2010 Eget kapital (for net credits from sub-accounts)
Credit 2011 Egna varuuttag
Credit 2012 Avräkning skatter och avgifter
Credit 2013 Övriga egna uttag
Debit 2017 Årets kapitaltillskott (reverse into 2010)
Debit 2018 Övriga egna insättningar (reverse into 2010)
Debit 2019 Årets resultat (reverse into 2010)
```
(Direction depends on whether sub-accounts have debit or credit balances.)
## Särskild löneskatt on pension provisions
```
Debit 7533 Särskild löneskatt
Credit 2514 Beräknad särskild löneskatt
```
Rate: **24.26%** on pension costs.
@@ -0,0 +1,86 @@
# K2 vs K3: Implementation Differences for Year-End Closing
## Component depreciation
**K3**: Mandatory. Assets with significant components having materially different useful lives must be split and depreciated separately. Buildings decomposed into roof, HVAC, facade, frame, etc. Software must support multiple components per asset with independent useful lives, residual values, and schedules.
**K2**: Forbidden. Each asset treated as single unit.
## Deferred tax (uppskjuten skatt)
**K3**: Required using balance sheet approach on all temporary differences.
- **1370** Uppskjuten skattefordran
- **2240** Avsättningar för uppskjutna skatter
- **8940** Uppskjuten skatt
- All marked **[Ej K2]** in BAS kontoplan
- Obeskattade reserver analytically split: 79.4% equity / 20.6% latent skatteskuld
**K2**: Never recognized. These accounts must be hidden/disabled.
## Internally developed intangible assets
**K3**: May be capitalized using **1010–1019** (Utvecklingsutgifter), also [Ej K2].
**K2**: All development costs must be expensed immediately. Only acquired intangibles may be recognized.
## Fair value measurement
**K3**: Available for certain financial instruments and investment properties.
**K2**: Only historical cost (anskaffningsvärde). Försiktighetsprincip enforced strictly.
## Leasing classification
**K3**: Distinguishes financial and operational leases. Financial leases capitalized:
- **1260** Leasade tillgångar [Ej K2]
- **1269** Ack. avskrivningar [Ej K2]
**K2**: All leases treated as operational.
## Income statement format
**K2**: Kostnadsslagsindelad only.
**K3**: Both kostnadsslagsindelad and funktionsindelad allowed.
## Depreciation simplifications
**K2**: May always set inventarier useful life to 5 years. May use tax depreciation rates directly for buildings, potentially avoiding separate bokslutsdispositioner for överavskrivningar.
**K3**: Individually assessed useful lives and residual values required for every asset.
## Accrual threshold
**K2**: Individual recurring costs below 5,000 SEK (not fluctuating >20%) need not be accrued (except personnel costs).
**K3**: No blanket threshold. Individual materiality assessment.
## Notes requirements
**K2**: Simplified, template-based. Sufficient to state framework applied, depreciation periods, employees, pledges, contingencies.
**K3**: Extensive: deferred tax analysis, critical judgments, estimation uncertainty, component depreciation details, segment reporting (if applicable).
## Accounts to hide/disable in K2 mode
The following BAS accounts are marked [Ej K2] and should be hidden or disabled:
- **1010–1019** (Utvecklingsutgifter)
- **1081** (Pågående projekt, immateriella)
- **1260** (Leasade tillgångar)
- **1269** (Ack. avskrivningar leasade tillgångar)
- **1370** (Uppskjuten skattefordran)
- **2240** (Avsättningar för uppskjutna skatter)
- **8940** (Uppskjuten skatt)
## Summary table
| Feature | K2 | K3 |
|---------|-----|-----|
| Component depreciation | Forbidden | Mandatory |
| Deferred tax | Forbidden | Required |
| Capitalize dev costs | Forbidden | Allowed |
| Fair value | Forbidden | Allowed |
| Financial leases | Not recognized | Capitalized |
| RR format | Kostnadsslagsindelad only | Both |
| Depreciation | Schablonmässig OK | Individual assessment |
| Accrual threshold | 5,000 SEK | No threshold |
| Notes | Simplified | Extensive |
@@ -0,0 +1,59 @@
# Legal Framework for Swedish Year-End Closing
## Primary laws
- **Bokföringslagen (BFL, SFS 1999:1078)** — who must keep accounts and how they close
- **Årsredovisningslagen (ÅRL, SFS 1995:1554)** — content and format of årsredovisning
## Who does what (BFL Chapter 6)
### Must prepare årsredovisning (§1):
- All aktiebolag (regardless of size)
- All ekonomiska föreningar
- Handelsbolag with at least one juridisk person as partner
- Bookkeeping-obligated stiftelser
- Any enterprise meeting "större företag" criteria
### Prepare årsbokslut (§3):
- All other bookkeeping-obligated entities (including most enskilda firmor)
- Consists of: resultaträkning, balansräkning, noter (no förvaltningsberättelse)
### Förenklat årsbokslut (§6):
- Enterprises with nettoomsättning normally ≤ 3 MSEK
- Only resultaträkning and balansräkning, no notes
## K-framework mapping
| Framework | Full name | Applies to |
|-----------|-----------|------------|
| K1 (BFNAR 2006:1) | Enskilda näringsidkare, förenklat årsbokslut | Sole traders with revenue ≤ 3 MSEK |
| BFNAR 2017:3 | Årsbokslut | Entities preparing full årsbokslut (not årsredovisning) |
| K2 (BFNAR 2016:10) | Årsredovisning i mindre företag | Smaller AB/EK föreningar choosing simplified rules |
| K3 (BFNAR 2012:1) | Årsredovisning och koncernredovisning | Default/mandatory for all årsredovisning preparers; required for större företag |
## Större företag definition (ÅRL 1 kap 3§)
Exceeds more than one of three thresholds for each of the two most recent fiscal years:
- **>50 average employees**
- **>40 MSEK total assets**
- **>80 MSEK net revenue**
- Or any entity with listed securities
Större företag must use K3, prepare kassaflödesanalys, and meet additional disclosure requirements.
## Decision tree for developers
```
AB → always årsredovisning → K2 (if mindre and eligible) or K3
Enskild firma, revenue ≤ 3 MSEK → K1 förenklat årsbokslut
Enskild firma, revenue > 3 MSEK → full årsbokslut per BFNAR 2017:3
Enskild firma meeting större criteria (extremely rare) → årsredovisning under K3
```
## 2025/2026 K2 changes
From fiscal years starting after December 31, 2025, K2 can no longer be used by:
- Bostadsrättsföreningar
- Companies with foreign branches
- Companies holding crypto assets
- Those issuing share-based payments
@@ -0,0 +1,77 @@
# Common Mistakes, Compliance Pitfalls, and Reference Rates
## Common mistakes
### 1. Failure to reverse prior-year accruals
Interimsposter booked at year-end must be reversed on day 1 of new fiscal year. Without auto-reversal, costs/revenues are double-counted. Software should auto-generate reversal entries.
### 2. Incorrect periodiseringsfond calculations
- Wrong percentage: 25% for AB, 30% for EF
- Missing mandatory 6-year reversal
- Forgetting **gross-up rule** for funds created before 2019 (at old 22% rate, requiring 103–106% uppräkning on reversal)
### 3. Missing schablonintäkt on periodiseringsfonder
Affects AB companies. SLR × total funds at year-start. Is a skattemässig justering, NEVER booked. Many systems incorrectly try to record it as journal entry.
### 4. Confusing bokföringsmässigt and skattemässigt resultat
The reconciliation from book result to taxable result (INK2S logic) must be implemented as separate calculation layer.
### 5. Failing to close 2099 to 2091 correctly
- **2099** (Årets resultat) must move to **2098** at year-start
- Then to **2091** after bolagsstämma decides on disposition
- 2099 should ONLY ever contain current year's result
### 6. Kontrollbalansräkning requirement
Triggers when eget kapital falls below **50% of registrerat aktiekapital** (ABL 25 kap).
In kontrollbalansräkning:
- Obeskattade reserver split: 79.4% equity / 20.6% tax
- Assets may be revalued to net realizable value
If confirmed:
1. Board calls first kontrollstämma
2. Must restore full aktiekapital within 8 months
3. Board members face **personal liability** if not followed
Software should flag when equity approaches this threshold.
### 7. Forgetting SLP on pension provisions
Särskild löneskatt 24.26% on pension costs must be booked same period:
Debit 7533 / Credit 2514. Frequently missed.
### 8. Incorrect inventory valuation
- Forgetting 3% inkuransavdrag (97% schablon rule)
- Applying it to excluded types (real estate, securities)
- Affects both balance sheet and tax calculation
### 9. Not reconciling överavskrivningar
Mismatch between plan depreciation (78xx) and tax depreciation creates incorrect obeskattade reserver (2150 series), cascading into wrong tax and potential kontrollbalansräkning trigger.
### 10. Booking items that should only exist in declaration
For enskild firma: periodiseringsfond, expansionsfond, räntefördelning, egenavgifter schablonavdrag should NEVER appear as journal entries.
---
## Key reference rates and thresholds
| Parameter | 2025 | 2026 |
|-----------|------|------|
| Bolagsskatt | 20.6% | 20.6% |
| Statslåneränta (SLR, Nov 30 prior year) | 1.96% | 2.55% |
| Schablonintäkt periodiseringsfond (AB) | 1.96% (floor 0.5%) | 2.55% (floor 0.5%) |
| Positiv räntefördelning | 7.96% (SLR+6) | 8.55% (SLR+6) |
| Negativ räntefördelning | 2.96% (SLR+1) | 3.55% (SLR+1) |
| Egenavgifter (full, 7 karensdagar) | 28.97% | 28.97% |
| Schablonavdrag egenavgifter (active) | 25% | 25% |
| Särskild löneskatt (SLP) | 24.26% | 24.26% |
| Expansionsfondsskatt | 20.6% | 20.6% |
| Expansionsfond max | 125.94% of kapitalunderlag | 125.94% |
| Periodiseringsfond AB max | 25% of skattemässigt resultat | 25% |
| Periodiseringsfond EF max | 30% of result | 30% |
| Arbetsgivaravgifter (standard) | 31.42% | 31.42% |
| Prisbasbelopp | 58,800 SEK | 59,200 SEK |
| K2 accrual threshold | 5,000 SEK/item | 5,000 SEK/item |
| Inkuransavdrag (inventory) | 3% (97% rule) | 3% (97% rule) |
| Kontrollbalansräkning trigger | <50% of aktiekapital | <50% |
| Neg. räntefördelning threshold | -500,000 SEK | -500,000 SEK |
| Revisor opt-out thresholds | >3 emp, >1.5M BS, >3M rev (2/3) | Same |
@@ -0,0 +1,158 @@
# Reporting Obligations, Filing, and SIE4
## Årsredovisning for AB
Must contain, in order:
1. **Förvaltningsberättelse**
2. **Resultaträkning**
3. **Balansräkning**
4. **Noter (tilläggsupplysningar)**
5. **Kassaflödesanalys** (större företag only)
Every page: company name, organisationsnummer, registered office.
### Förvaltningsberättelse (K2 minimum)
- Description of business activities and säte
- Important events during the year
- Whether kontrollbalansräkning has been prepared
- **Flerårsöversikt**: nettoomsättning, resultat efter finansiella poster, soliditet for current year + 3 preceding years
- Specification of changes in eget kapital
- Board's proposed **resultatdisposition**
### Resultaträkning
- K2: **kostnadsslagsindelad** format ONLY
- K3: both kostnadsslagsindelad and funktionsindelad allowed
- Key lines: nettoomsättning, lagerförändring, övriga rörelseintäkter, personalkostnader, avskrivningar, finansiella poster, bokslutsdispositioner, skatt på årets resultat, årets resultat
### Balansräkning
- Tillgångar: anläggningstillgångar (immateriella/materiella/finansiella), omsättningstillgångar (varulager/fordringar/kassa)
- Eget kapital och skulder: bundet/fritt eget kapital, obeskattade reserver, avsättningar, långfristiga/kortfristiga skulder
- K2: rigid template, cannot add/merge line items beyond template
### Minimum notes (K2)
- Applied redovisningsprinciper ("upprättad i enlighet med ÅRL och BFNAR 2016:10")
- Avskrivningstider per asset category
- Medelantal anställda
- Ställda säkerheter
- Eventualförpliktelser
K3 requires significantly more: deferred tax analysis, critical judgments, estimation uncertainty.
### Signing
All board members + VD (if appointed) must sign. Revisionsberättelse appended if company has revisor.
---
## NE-bilaga for Enskild firma
Form: blankett 2161, filed as part of Inkomstdeklaration 1.
### Page 1: Räkenskapsschema
- R1–R4: Intäkter (momspliktiga, momsfria, egna uttag, övriga)
- R5–R13: Kostnader (varuinköp, externa kostnader, löner, arbetsgivaravgifter, avskrivningar)
- R14: Bokfört resultat
- B1–B22: Condensed balansräkning
### Page 2: Skattemässiga justeringar
- R15–R46: räntefördelning, periodiseringsfond, expansionsfond, egenavgifter schablonavdrag
- NE surplus/deficit flows into INK1 under "Inkomst av näringsverksamhet"
---
## Audit thresholds
Private AB may opt out of revisor if NOT exceeding 2 of 3 thresholds for 2 consecutive years:
- **>3 average employees**
- **>1.5 MSEK total assets**
- **>3 MSEK net revenue**
Exceeding → must have registered revisor, revisionsberättelse becomes part of årsredovisning.
---
## Filing deadlines
### AB with calendar year (Jan–Dec)
| Milestone | Deadline | Penalty |
|-----------|----------|---------|
| Årsredovisning prepared | June 30 (6 months) | Bokföringsbrott risk |
| Bolagsstämma (AGM) | June 30 (6 months) | Must adopt årsredovisning |
| Årsredovisning to Bolagsverket | July 31 (7 months) | Förseningsavgift 5,000 SEK |
| Inkomstdeklaration 2 to Skatteverket | August 1 | Förseningsavgift 6,250 SEK |
For brutet räkenskapsår: same intervals relative to fiscal year-end.
### Late filing penalties (Bolagsverket)
- After 7 months: **5,000 SEK**
- After 9 months: additional **5,000 SEK**
- After 11 months: additional **10,000 SEK**
- Total maximum: **20,000 SEK** (private AB)
- After 11 months: Bolagsverket initiates **tvångslikvidation**
- Penalties are NOT tax-deductible
### Filing formats
- Bolagsverket: **iXBRL** via API, or paper/PDF + fastställelseintyg (signed with BankID)
- Skatteverket INK2: main form (INK2), räkenskapsschema (INK2R), skattemässiga justeringar (INK2S). INK2R/INK2S uploadable as **SRU-filer** via filöverföring.
### Enskild firma
- **Inkomstdeklaration 1 + NE-bilaga** by **May 2** (or nearest weekday)
- 2026: May 4 for fiscal year 2025
- No filing with Bolagsverket
---
## SIE4 Export
SIE (Standard Import Export) is the Swedish open standard. SIE 4 provides full transaction-level data.
### File format
- Plain text, **CP437 encoding**
- Hash-prefixed tags
### Critical tags for year-end closing
| Tag | Description |
|-----|-------------|
| `#SIETYP` | Always "4" |
| `#FNAMN` | Company name |
| `#ORGNR` | Organisationsnummer |
| `#RAR` | Fiscal year definition (0 = current, -1 = previous) |
| `#KPTYP` | Chart of accounts (e.g. "BAS2025") |
| `#KONTO` | Account number and name |
| `#SRU` | Maps account to Skatteverket field codes |
| `#IB` / `#UB` | Opening/closing balances (balance sheet accounts) |
| `#VER` | Verification header (series, number, date, description) |
| `#TRANS` | Transaction lines within verification |
### Bokslutstransaktioner conventions
- Use dedicated **verifikationsserie** (e.g. "I" or "B")
- Dated on balance sheet date
- Many systems treat as **period 13** (boksluts period)
- `#SRU` tag enables automated INK2R/INK2S generation
### File extensions
- `.se` — complete export with balances
- `.si` — transaction-only import
### Example SIE4 snippet
```
#FLAGGA 0
#FORMAT PC8
#SIETYP 4
#PROGRAM "AccountingSoft" 2.0
#GEN 20260401
#FNAMN "Exempel AB"
#ORGNR 556123-4567
#RAR 0 20250101 20251231
#KPTYP BAS2025
#KONTO 8910 "Skatt på årets resultat"
#SRU 8910 7650
#IB 0 2091 -500000.00
#UB 0 2091 -897000.00
#VER "I" 1 20251231 "Bokslut - skatteberäkning"
{
#TRANS 8910 {} 103000.00
#TRANS 2512 {} -103000.00
}
```
@@ -0,0 +1,117 @@
# Tax Calculations: AB vs Enskild Firma
## Bolagsskatt for AB
Rate: **20.6%** (since January 1, 2021).
### Skattemässigt resultat calculation
Start from bokfört resultat, then adjust:
**Add back (ej avdragsgilla kostnader):**
- Representation (over deductible limits)
- Böter, skattetillägg
- Kostnadsränta on skattekonto
- Gåvor
- Bolagsbildningskostnader
**Subtract (ej skattepliktiga intäkter):**
- Utdelning from näringsbetingade andelar
- Intäktsränta on skattekonto
**Add:**
- Schablonintäkt on periodiseringsfonder
- Reversal of overused tax depreciation
**Subtract:**
- Prior-year losses (underskottsavdrag)
Round down to nearest 10 SEK before applying 20.6%.
### Schablonintäkt on periodiseringsfonder (AB)
Formula: total periodiseringsfonder at year-start × statslåneränta (SLR) from November 30 of preceding year (floor 0.5%).
- Beskattningsår ending 2025: **1.96%**
- Beskattningsår ending 2026: **2.55%**
This is a skattemässig justering ONLY. NEVER booked in accounting. Reported on INK2S field 4.6a.
### Transition rule for pre-2019 periodiseringsfonder
Funds created before 2019 (when rate was 22%) require **gross-up of 103–106%** on reversal to compensate for rate reduction. Handled only in tax calculation.
---
## Enskild firma: four unique tax mechanisms
An enskild firma is NOT a skattesubjekt. Owner pays tax personally via Inkomstdeklaration 1 + NE-bilaga.
### 1. Egenavgifter
Replace arbetsgivaravgifter for employees.
**Full rate (2025/2026):** 28.97% (born 1959 or later, active business, 7 karensdagar)
**NE-bilaga schablonavdrag logic:**
- R43: Schablonavdrag = **25%** of överskott before egenavgifter
- R40: Previous year's schablonavdrag added back
- R41: Actual egenavgifter charged previous year deducted
- Net effect: estimated deduction, reconciled following year
**Reduced rates:**
- Pensioners born 1938–1958: 10.21% rate, 10% schablonavdrag
- Passive businesses: SLP 24.26% instead, 20% schablonavdrag
**Additional nedsättning:** 7.5% (max 15,000 SEK/year) for active businesses with överskott > 40,000 SEK. Calculated automatically by Skatteverket.
### 2. Räntefördelning
Shifts calculated return on business capital from inkomstslaget näringsverksamhet (taxed at marginal rates up to ~55% including egenavgifter) to inkomstslaget kapital (flat 30%).
**Positive räntefördelning (voluntary):**
- Rate: SLR + 6 percentage points
- 2025: 7.96%, 2026: 8.55%
- Applied on positive kapitalunderlag
- From 2025: no minimum kapitalunderlag threshold (previously 50,000 SEK)
**Negative räntefördelning (mandatory):**
- Triggers when negative kapitalunderlag exceeds **500,000 SEK**
- Rate: SLR + 1 percentage point
- 2025: 2.96%, 2026: 3.55%
**Kapitalunderlag** = adjusted eget kapital in the business at previous year-end.
Handled in NE-bilaga only, NEVER booked.
### 3. Expansionsfond
Gives sole traders equivalent of AB's ability to retain earnings at corporate tax rate.
- Owner pays **20.6% expansionsfondsskatt** on avsättning
- Max avsättning: **125.94%** of kapitalunderlag at year-end
- **No mandatory 6-year reversal** (can be held indefinitely)
- On reversal: amount added back as NV income, previously paid 20.6% credited against that year's tax
Handled exclusively in NE-bilaga (R33/R34), NEVER booked.
### 4. Periodiseringsfond (Enskild firma)
- Max deferral: **30%** of result (vs 25% for AB)
- Same 6-year mandatory reversal
- **No schablonintäkt** for fysiska personer
- Handled only in NE-bilaga (R29/R30), NEVER booked
---
## Critical distinction: booked vs declaration-only
| Item | AB | Enskild firma |
|------|-----|---------------|
| Periodiseringsfond | **Booked** (8811/21xx) | Declaration only (NE R29/R30) |
| Överavskrivningar | **Booked** (8850/2150) | **Booked** (8850/2150) |
| Skatt på årets resultat | **Booked** (8910/2512) | NOT booked (personal tax) |
| Schablonintäkt periodiseringsfond | Declaration only (INK2S 4.6a) | N/A |
| Räntefördelning | N/A | Declaration only |
| Expansionsfond | N/A | Declaration only |
| Egenavgifter schablonavdrag | N/A | Declaration only |