| 1 | --- |
| 2 | name: denmark-vat-return |
| 3 | description: Use this skill whenever asked to prepare, review, or classify transactions for a Danish VAT return (Momsangivelse) for a self-employed individual or small business in Denmark. Trigger on phrases like "prepare VAT return", "do the VAT", "Danish VAT", "moms", "momsangivelse", or any request involving Denmark VAT filing. Also trigger when classifying transactions for VAT purposes from bank statements, invoices, or other source data. This skill covers Denmark only and only standard-registered businesses. Loensumsafgift-only entities, VAT groups, and fiscal representatives are in the refusal catalogue. MUST be loaded alongside BOTH vat-workflow-base v0.1 or later (for workflow architecture) AND eu-vat-directive v0.1 or later (for EU directive content). ALWAYS read this skill before touching any Danish VAT work. |
| 4 | version: 2.0 |
| 5 | --- |
| 6 | |
| 7 | # Denmark VAT Return Skill (Momsangivelse) v2.0 |
| 8 | |
| 9 | ## Section 1 — Quick reference |
| 10 | |
| 11 | **Read this whole section before classifying anything. The workflow runbook is in `vat-workflow-base` Section 1 — follow that runbook with this skill providing the country-specific content and `eu-vat-directive` providing the EU directive content.** |
| 12 | |
| 13 | | Field | Value | |
| 14 | |---|---| |
| 15 | | Country | Denmark (Kongeriget Danmark) | |
| 16 | | Standard rate | 25% | |
| 17 | | Reduced rates | **None — Denmark is unique in the EU: no reduced rates** | |
| 18 | | Zero rate | 0% (exports, intra-EU B2B supplies of goods, newspapers/periodicals from 2024, international transport) | |
| 19 | | Return form | Momsangivelse (rubrik 1–9) | |
| 20 | | Filing portal | https://skat.dk (TastSelv Erhverv) | |
| 21 | | Authority | Skattestyrelsen (Danish Tax Agency) | |
| 22 | | Currency | DKK only | |
| 23 | | Filing frequencies | Quarterly (turnover DKK 1–5M); Half-yearly (turnover < DKK 1M); Monthly (turnover > DKK 5M) | |
| 24 | | Deadline | Monthly/quarterly: 25th of month following period end; Half-yearly: 1 March / 1 September | |
| 25 | | Companion skill (Tier 1, workflow) | **vat-workflow-base v0.1 or later — MUST be loaded** | |
| 26 | | Companion skill (Tier 2, EU directive) | **eu-vat-directive v0.1 or later — MUST be loaded** | |
| 27 | | Contributor | Open Accountants | |
| 28 | | Validated by | Pending — requires statsautoriseret revisor validation | |
| 29 | | Validation date | Pending | |
| 30 | |
| 31 | **CRITICAL: Denmark has NO reduced VAT rates.** Every taxable supply is at 25%. There is no 5%, 7%, 12%, or 13% rate. Any suggestion of a reduced rate is wrong. |
| 32 | |
| 33 | **Key Momsangivelse rubrik (boxes):** |
| 34 | |
| 35 | | Rubrik | Meaning | |
| 36 | |---|---| |
| 37 | | 1 | Output VAT (udgående moms) — total VAT charged on sales | |
| 38 | | 2 | VAT on EU acquisitions of goods (EU-varekøb) | |
| 39 | | 3 | VAT on services purchased abroad with reverse charge (ydelser købt i udlandet med omvendt betalingspligt) | |
| 40 | | 4 | Input VAT (indgående moms) — total deductible VAT on purchases | |
| 41 | | 5 | Derived: VAT payable / refundable (rubrik 1 + 2 + 3 − 4) | |
| 42 | | 6 | Sales excl. VAT (momspligtig omsætning) — value of taxable supplies | |
| 43 | | 7 | EU supplies of goods and services excl. VAT (EU-varesalg og ydelser) | |
| 44 | | 8 | Exports excl. VAT (eksport) | |
| 45 | | 9 | EU acquisitions of goods excl. VAT (EU-varekøb uden moms) | |
| 46 | |
| 47 | **Conservative defaults — Denmark-specific values for the universal categories in `vat-workflow-base` Section 2:** |
| 48 | |
| 49 | | Ambiguity | Default | |
| 50 | |---|---| |
| 51 | | Unknown rate on a sale | 25% (only rate available) | |
| 52 | | Unknown VAT status of a purchase | Not deductible | |
| 53 | | Unknown counterparty country | Domestic Denmark | |
| 54 | | Unknown B2B vs B2C status for EU customer | B2C, charge 25% | |
| 55 | | Unknown business-use proportion (vehicle, phone, home office) | 0% recovery | |
| 56 | | Unknown SaaS billing entity | Reverse charge from non-EU (rubrik 3/4) | |
| 57 | | Unknown blocked-input status (entertainment, personal use) | Blocked | |
| 58 | | Unknown whether transaction is in scope | In scope | |
| 59 | |
| 60 | **Red flag thresholds — country slot values for the reviewer brief in `vat-workflow-base` Section 3:** |
| 61 | |
| 62 | | Threshold | Value | |
| 63 | |---|---| |
| 64 | | HIGH single-transaction size | DKK 25,000 | |
| 65 | | HIGH tax-delta on a single conservative default | DKK 1,500 | |
| 66 | | MEDIUM counterparty concentration | >40% of output OR input | |
| 67 | | MEDIUM conservative-default count | >4 across the return | |
| 68 | | LOW absolute net VAT position | DKK 40,000 | |
| 69 | |
| 70 | --- |
| 71 | |
| 72 | ## Section 2 — Required inputs and refusal catalogue |
| 73 | |
| 74 | ### Required inputs |
| 75 | |
| 76 | **Minimum viable** — bank statement for the period in CSV, PDF, or pasted text. Must cover the full period. Acceptable from any Danish or international business bank: Danske Bank, Nordea DK, Jyske Bank, Sydbank, Spar Nord, Arbejdernes Landsbank, Nykredit, Revolut Business, Wise Business, or any other. |
| 77 | |
| 78 | **Recommended** — sales invoices for the period (especially for intra-EU B2B supplies and exports), purchase invoices for any input VAT claim above DKK 1,500, the client's CVR/SE number and momsregistreringsnummer. |
| 79 | |
| 80 | **Ideal** — complete invoice register, prior period momsangivelse, reconciliation of any carry-forward credit. |
| 81 | |
| 82 | **Refusal policy if minimum is missing — SOFT WARN.** If no bank statement is available at all → hard stop. If bank statement only without invoices → proceed but record in the reviewer brief: "This momsangivelse was produced from bank statement alone. The reviewer must verify, before approval, that input VAT claims above DKK 1,500 are supported by compliant tax invoices and that all reverse-charge classifications match the supplier's invoice." |
| 83 | |
| 84 | ### Denmark-specific refusal catalogue |
| 85 | |
| 86 | These refusals apply on top of the EU-wide refusals in `eu-vat-directive` Section 13 (R-EU-1 through R-EU-12). If any trigger fires, stop, output the refusal message verbatim, end the conversation. |
| 87 | |
| 88 | **R-DK-1 — Lønsumsafgift-only entity.** *Trigger:* client is not VAT-registered but subject to payroll tax on exempt activities. *Message:* "Lønsumsafgift (payroll tax on exempt activities) is a separate tax from moms. This skill covers momsangivelse only. Please consult a statsautoriseret revisor for lønsumsafgift obligations." |
| 89 | |
| 90 | **R-DK-2 — VAT group (fællesregistrering).** *Trigger:* client is part of a VAT group under momsloven §47(4). *Message:* "VAT groups under fællesregistrering require consolidation across all group members. Out of scope for this skill." |
| 91 | |
| 92 | **R-DK-3 — Fiscal representative.** *Trigger:* non-resident supplier with a fiscal representative in Denmark. *Message:* "Non-resident registrations with fiscal representatives have specific obligations beyond this skill. Please use a statsautoriseret revisor." |
| 93 | |
| 94 | **R-DK-4 — Construction reverse charge (§46(1) nr. 3).** *Trigger:* client is a construction subcontractor where the reverse charge under §46(1) nr. 3 applies. *Message:* "Construction reverse charge under momsloven §46(1) nr. 3 requires transaction-level analysis of whether the customer is a registered builder. This is Tier 2 — flag for reviewer with specific construction details." |
| 95 | |
| 96 | **R-DK-5 — Partial exemption (pro-rata).** *Trigger:* client makes both taxable and exempt-without-credit supplies and the exempt proportion is non-de-minimis. *Message:* "You make both taxable and exempt supplies. Input VAT must be apportioned under momsloven §38. Please use a statsautoriseret revisor to determine and confirm the pro-rata rate." |
| 97 | |
| 98 | **R-DK-6 — Income tax return instead of moms.** *Trigger:* user asks about annual income tax return, not the momsangivelse. *Message:* "This skill only handles the momsangivelse. For Danish income tax, use the appropriate income tax skill." |
| 99 | |
| 100 | **R-DK-7 — Used goods margin scheme (brugtmoms).** *Trigger:* client deals in second-hand goods under the brugtmoms scheme. *Message:* "Margin scheme (brugtmoms) transactions require transaction-level margin computation. Out of scope." |
| 101 | |
| 102 | --- |
| 103 | |
| 104 | ## Section 3 — Supplier pattern library (the lookup table) |
| 105 | |
| 106 | This is the deterministic pre-classifier. When a transaction's counterparty matches a pattern in this table, apply the treatment from the table directly. Do not second-guess. Do not consult Tier 1 rules — the table is authoritative for patterns it covers. |
| 107 | |
| 108 | **How to read this table.** Match by case-insensitive substring on the counterparty name as it appears in the bank statement. If multiple patterns match, use the most specific. If none match, fall through to Tier 1 rules in Section 5. |
| 109 | |
| 110 | ### 3.1 Danish banks (fees exempt — exclude) |
| 111 | |
| 112 | | Pattern | Treatment | Notes | |
| 113 | |---|---|---| |
| 114 | | DANSKE BANK | EXCLUDE for bank charges/fees | Financial service, exempt under momsloven §13(1) nr. 11 | |
| 115 | | NORDEA, NORDEA DK | EXCLUDE for bank charges/fees | Same | |
| 116 | | JYSKE BANK | EXCLUDE for bank charges/fees | Same | |
| 117 | | SYDBANK | EXCLUDE for bank charges/fees | Same | |
| 118 | | SPAR NORD, ARBEJDERNES LANDSBANK | EXCLUDE for bank charges/fees | Same | |
| 119 | | NYKREDIT | EXCLUDE for bank charges/fees | Same | |
| 120 | | REVOLUT, WISE, N26 (fee lines) | EXCLUDE for transaction/maintenance fees | Check for separate taxable subscription invoices | |
| 121 | | RENTE, INTEREST | EXCLUDE | Interest income/expense, out of scope | |
| 122 | | LÅN, LOAN | EXCLUDE | Loan principal movement, out of scope | |
| 123 | |
| 124 | ### 3.2 Danish government, regulators, and statutory bodies (exclude entirely) |
| 125 | |
| 126 | | Pattern | Treatment | Notes | |
| 127 | |---|---|---| |
| 128 | | SKAT, SKATTESTYRELSEN | EXCLUDE | Tax payment, not a supply | |
| 129 | | MOMS (as payment to Skat) | EXCLUDE | VAT payment to authority | |
| 130 | | TOLD, TOLDSTYRELSEN | EXCLUDE | Customs duty (but see import VAT on customs declaration) | |
| 131 | | ERHVERVSSTYRELSEN | EXCLUDE | Business registry fees, sovereign acts | |
| 132 | | KOMMUNESKAT, KOMMUNE | EXCLUDE | Municipal tax, not a supply | |
| 133 | | ARBEJDSMARKEDETS TILLÆGSPENSION, ATP | EXCLUDE | Statutory pension contribution | |
| 134 | |
| 135 | ### 3.3 Danish utilities |
| 136 | |
| 137 | | Pattern | Treatment | Rubrik | Notes | |
| 138 | |---|---|---|---| |
| 139 | | ØRSTED, DONG ENERGY | Domestic 25% | 4 (input) | Electricity/gas — overhead | |
| 140 | | NORLYS, ANDEL ENERGI, EWII | Domestic 25% | 4 (input) | Regional energy suppliers | |
| 141 | | TDC, NUUDAY, YOUSEE | Domestic 25% | 4 (input) | Telecoms/broadband — overhead | |
| 142 | | TELIA DK, TELENOR DK, 3 (HI3G) | Domestic 25% | 4 (input) | Mobile telecoms | |
| 143 | |
| 144 | ### 3.4 Insurance (exempt — exclude) |
| 145 | |
| 146 | | Pattern | Treatment | Notes | |
| 147 | |---|---|---| |
| 148 | | TRYG, TOPDANMARK, CODAN | EXCLUDE | Insurance, exempt under §13(1) nr. 10 | |
| 149 | | ALKA, GF FORSIKRING, GJENSIDIGE | EXCLUDE | Same | |
| 150 | | FORSIKRING, INSURANCE | EXCLUDE | All exempt | |
| 151 | |
| 152 | ### 3.5 Post and logistics |
| 153 | |
| 154 | | Pattern | Treatment | Rubrik | Notes | |
| 155 | |---|---|---|---| |
| 156 | | POSTNORD, POST DANMARK | EXCLUDE for standard postage | Universal postal service, exempt | |
| 157 | | POSTNORD | Domestic 25% for parcel/courier services | 4 (input) | Non-universal services are taxable | |
| 158 | | GLS, DAO, BRING | Domestic 25% | 4 (input) | Courier, taxable | |
| 159 | | DHL EXPRESS, TNT, FEDEX | Domestic 25% or EU reverse charge | 4 or 3/4 | Check invoice — billing entity | |
| 160 | |
| 161 | ### 3.6 Transport (Denmark domestic) |
| 162 | |
| 163 | | Pattern | Treatment | Rubrik | Notes | |
| 164 | |---|---|---|---| |
| 165 | | DSB | Domestic 25% | 4 (input) | Domestic rail, taxable (no reduced rate in DK) | |
| 166 | | REJSEKORT | Domestic 25% | 4 (input) | Public transport card top-up | |
| 167 | | MOVIA, MIDTTRAFIK, NORDJYLLANDS TRAFIKSELSKAB | Domestic 25% | 4 (input) | Regional transport | |
| 168 | | SAS, NORWEGIAN, RYANAIR (international) | EXCLUDE / 0% | | International flights zero rated | |
| 169 | | TAXI, TAXA, DANTAXI, 4X35 | Domestic 25% | 4 (input) | Local taxi | |
| 170 | |
| 171 | ### 3.7 Food retail and entertainment (blocked unless hospitality business) |
| 172 | |
| 173 | | Pattern | Treatment | Notes | |
| 174 | |---|---|---| |
| 175 | | NETTO, FØTEX, BILKA, FAKTA | Default BLOCK input VAT | Supermarket — personal provisioning. Only deductible if resale. | |
| 176 | | REMA 1000, ALDI DK, LIDL DK | Default BLOCK input VAT | Same | |
| 177 | | IRMA, MENY, SALLING | Default BLOCK input VAT | Same | |
| 178 | | RESTAURANTS, CAFES, BARS | Default BLOCK | Entertainment/representation — limited deductibility (25% of VAT on business entertainment per momsloven §42(2)) | |
| 179 | |
| 180 | **Note on Danish representation (repræsentation):** Unlike Malta's hard block, Denmark allows 25% recovery of VAT on business entertainment (restauration) under momsloven §42(2). However, this requires proper documentation (business purpose, attendees). Default: block fully. [T2] flag if client claims business entertainment — reviewer must verify documentation meets §42(2). |
| 181 | |
| 182 | ### 3.8 SaaS — EU suppliers (reverse charge, rubrik 3/4) |
| 183 | |
| 184 | These are billed from EU entities (typically Ireland or Luxembourg) and trigger reverse charge under momsloven §46(1) nr. 1. |
| 185 | |
| 186 | | Pattern | Billing entity | Rubrik | Notes | |
| 187 | |---|---|---|---| |
| 188 | | GOOGLE (Ads, Workspace, Cloud) | Google Ireland Ltd (IE) | 3/4 | Reverse charge services | |
| 189 | | MICROSOFT (365, Azure) | Microsoft Ireland Operations Ltd (IE) | 3/4 | Reverse charge | |
| 190 | | ADOBE | Adobe Systems Software Ireland Ltd (IE) | 3/4 | Reverse charge | |
| 191 | | META, FACEBOOK ADS | Meta Platforms Ireland Ltd (IE) | 3/4 | Reverse charge | |
| 192 | | LINKEDIN (paid) | LinkedIn Ireland Unlimited (IE) | 3/4 | Reverse charge | |
| 193 | | SPOTIFY TECHNOLOGY | Spotify AB (SE) | 3/4 | EU, reverse charge | |
| 194 | | DROPBOX | Dropbox International Unlimited (IE) | 3/4 | Reverse charge | |
| 195 | | SLACK | Slack Technologies Ireland Ltd (IE) | 3/4 | Reverse charge | |
| 196 | | ATLASSIAN (Jira, Confluence) | Atlassian Network Services BV (NL) | 3/4 | EU, reverse charge | |
| 197 | | ZOOM | Zoom Video Communications Ireland Ltd (IE) | 3/4 | Reverse charge | |
| 198 | | STRIPE (subscription fees) | Stripe Technology Europe Ltd (IE) | 3/4 | Transaction fees may be exempt — see 3.11 | |
| 199 | |
| 200 | ### 3.9 SaaS — non-EU suppliers (reverse charge, rubrik 3/4) |
| 201 | |
| 202 | | Pattern | Billing entity | Rubrik | Notes | |
| 203 | |---|---|---|---| |
| 204 | | AWS (standard) | AWS EMEA SARL (LU) — check | 3/4 | LU entity → EU reverse charge | |
| 205 | | NOTION | Notion Labs Inc (US) | 3/4 | Non-EU reverse charge | |
| 206 | | ANTHROPIC, CLAUDE | Anthropic PBC (US) | 3/4 | Non-EU reverse charge | |
| 207 | | OPENAI, CHATGPT | OpenAI Inc (US) | 3/4 | Non-EU reverse charge | |
| 208 | | GITHUB (standard plans) | GitHub Inc (US) | 3/4 | Check if billed by IE entity | |
| 209 | | FIGMA | Figma Inc (US) | 3/4 | Non-EU reverse charge | |
| 210 | | CANVA | Canva Pty Ltd (AU) | 3/4 | Non-EU reverse charge | |
| 211 | | HUBSPOT | HubSpot Inc (US) or HubSpot Ireland Ltd (IE) — check | 3/4 | Depends on billing entity | |
| 212 | | TWILIO | Twilio Inc (US) | 3/4 | Non-EU reverse charge | |
| 213 | |
| 214 | **Note:** Denmark's momsangivelse does not separate EU vs non-EU reverse charge on services into different boxes — both go through rubrik 3 (output) and rubrik 4 (input). The distinction matters for EU sales list (listesystem) reporting only. |
| 215 | |
| 216 | ### 3.10 Payment processors |
| 217 | |
| 218 | | Pattern | Treatment | Notes | |
| 219 | |---|---|---| |
| 220 | | STRIPE (transaction fees) | EXCLUDE (exempt) | Payment processing fees are exempt financial services | |
| 221 | | PAYPAL (transaction fees) | EXCLUDE (exempt) | Same | |
| 222 | | STRIPE (monthly subscription) | EU reverse charge rubrik 3/4 | Stripe IE entity | |
| 223 | | MOBILEPAY, NETS, CLEARHAUS | Check invoice | If Danish entity: domestic 25%; acquirer fees may be exempt | |
| 224 | |
| 225 | ### 3.11 Professional services (Denmark) |
| 226 | |
| 227 | | Pattern | Treatment | Rubrik | Notes | |
| 228 | |---|---|---|---| |
| 229 | | ADVOKAT, ADVOKATFIRMA | Domestic 25% | 4 (input) | Legal services, deductible if business purpose | |
| 230 | | REVISOR, REVISIONSSELSKAB, STATSAUTORISERET | Domestic 25% | 4 (input) | Accountant/auditor — always deductible | |
| 231 | | NOTAR | Domestic 25% | 4 (input) | Notary services | |
| 232 | | VIRK.DK, CVR | EXCLUDE | Government fee, not a supply | |
| 233 | |
| 234 | ### 3.12 Payroll and social security (exclude entirely) |
| 235 | |
| 236 | | Pattern | Treatment | Notes | |
| 237 | |---|---|---| |
| 238 | | ATP, AM-BIDRAG, A-SKAT | EXCLUDE | Statutory payroll taxes/contributions | |
| 239 | | LØN, SALARY, WAGES (outgoing) | EXCLUDE | Wages — outside VAT scope | |
| 240 | | FERIEKONTO | EXCLUDE | Holiday fund, statutory | |
| 241 | | DA-BARSEL | EXCLUDE | Parental leave fund | |
| 242 | |
| 243 | ### 3.13 Property and rent |
| 244 | |
| 245 | | Pattern | Treatment | Notes | |
| 246 | |---|---|---| |
| 247 | | HUSLEJE, LEJE (commercial, invoiced with VAT) | Domestic 25% | Commercial lease where landlord opted to charge VAT (frivillig registrering) | |
| 248 | | HUSLEJE, LEJE (residential, no VAT) | EXCLUDE | Residential lease, exempt §13(1) nr. 8 | |
| 249 | |
| 250 | ### 3.14 Internal transfers and exclusions |
| 251 | |
| 252 | | Pattern | Treatment | Notes | |
| 253 | |---|---|---| |
| 254 | | OVERFØRSEL, INTERN, EGNE KONTI | EXCLUDE | Internal movement | |
| 255 | | UDBYTTE, DIVIDEND | EXCLUDE | Dividend payment, out of scope | |
| 256 | | LÅN, AFDRAG | EXCLUDE | Loan repayment, out of scope | |
| 257 | | HÆVNING, KONTANTHÆVNING, ATM | TIER 2 — ask | Default exclude; ask what cash was spent on | |
| 258 | |
| 259 | --- |
| 260 | |
| 261 | ## Section 4 — Worked examples |
| 262 | |
| 263 | These are six fully worked classifications drawn from a hypothetical bank statement of a Denmark-based self-employed IT consultant. They illustrate the trickiest cases. |
| 264 | |
| 265 | ### Example 1 — Non-EU SaaS reverse charge (Notion) |
| 266 | |
| 267 | **Input line:** |
| 268 | `03.04.2026 ; NOTION LABS INC ; DEBIT ; Monthly subscription ; USD 16.00 ; DKK 109.52` |
| 269 | |
| 270 | **Reasoning:** |
| 271 | Notion Labs Inc is a US entity (Section 3.9). No VAT on the invoice. Services received from abroad — reverse charge under momsloven §46(1) nr. 1. Both output VAT (rubrik 3) and input VAT (rubrik 4) must be reported. Net effect zero for a fully taxable business. The 25% VAT on DKK 109.52 = DKK 27.38. |
| 272 | |
| 273 | **Output:** |
| 274 | |
| 275 | | Date | Counterparty | Gross | Net | VAT | Rate | Rubrik (output) | Rubrik (input) | Default? | Question? | Excluded? | |
| 276 | |---|---|---|---|---|---|---|---|---|---|---| |
| 277 | | 03.04.2026 | NOTION LABS INC | -109.52 | -109.52 | 27.38 | 25% | 3 | 4 | N | — | — | |
| 278 | |
| 279 | ### Example 2 — EU service, reverse charge (Google Ads) |
| 280 | |
| 281 | **Input line:** |
| 282 | `10.04.2026 ; GOOGLE IRELAND LIMITED ; DEBIT ; Google Ads April 2026 ; -6,350.00 ; DKK` |
| 283 | |
| 284 | **Reasoning:** |
| 285 | Google Ireland Limited is an IE entity — EU reverse charge. Services purchased abroad, rubrik 3 for the output VAT amount (DKK 1,587.50) and rubrik 4 for the input VAT. Also report the net in rubrik 7 for EU sales list purposes if this is the reporting entity (but for the momsangivelse, rubrik 3/4 is sufficient). Net cash effect zero for a fully taxable business. |
| 286 | |
| 287 | **Output:** |
| 288 | |
| 289 | | Date | Counterparty | Gross | Net | VAT | Rate | Rubrik (output) | Rubrik (input) | Default? | Question? | Excluded? | |
| 290 | |---|---|---|---|---|---|---|---|---|---|---| |
| 291 | | 10.04.2026 | GOOGLE IRELAND LIMITED | -6,350.00 | -6,350.00 | 1,587.50 | 25% | 3 | 4 | N | — | — | |
| 292 | |
| 293 | ### Example 3 — Entertainment, limited deduction |
| 294 | |
| 295 | **Input line:** |
| 296 | `15.04.2026 ; RESTAURANT MARCHAL ; DEBIT ; Client dinner ; -1,800.00 ; DKK` |
| 297 | |
| 298 | **Reasoning:** |
| 299 | Restaurant transaction. Business entertainment (repræsentation) under momsloven §42(2) allows recovery of 25% of the VAT amount. The full invoice is DKK 1,800 incl. 25% VAT. Net = DKK 1,440. VAT = DKK 360. Recoverable = 25% of DKK 360 = DKK 90. However, this requires documented business purpose and attendee list. Default: block fully. [T2] flag — reviewer must verify documentation. |
| 300 | |
| 301 | **Output:** |
| 302 | |
| 303 | | Date | Counterparty | Gross | Net | VAT | Rate | Rubrik | Default? | Question? | Excluded? | |
| 304 | |---|---|---|---|---|---|---|---|---|---| |
| 305 | | 15.04.2026 | RESTAURANT MARCHAL | -1,800.00 | -1,800.00 | 0 | — | — | Y | Q1 | "Entertainment: blocked — 25% partial recovery possible under §42(2) if documented" | |
| 306 | |
| 307 | ### Example 4 — Capital goods (high-value purchase) |
| 308 | |
| 309 | **Input line:** |
| 310 | `18.04.2026 ; DUSTIN A/S ; DEBIT ; Invoice DK2026-441 Dell XPS 15 ; -12,495.00 ; DKK` |
| 311 | |
| 312 | **Reasoning:** |
| 313 | Domestic purchase from a Danish vendor. DKK 12,495 incl. 25% VAT. Net = DKK 9,996. VAT = DKK 2,499. This exceeds the capital goods threshold and will be subject to the 5-year adjustment period (investeringsgoder) under momsloven §43-44 if it qualifies as a capital good (purchase price excl. VAT > DKK 100,000 for goods). At DKK 9,996 net, this is below the DKK 100,000 capital goods scheme threshold — treat as normal overhead input VAT in rubrik 4. |
| 314 | |
| 315 | **Output:** |
| 316 | |
| 317 | | Date | Counterparty | Gross | Net | VAT | Rate | Rubrik | Default? | Question? | Excluded? | |
| 318 | |---|---|---|---|---|---|---|---|---|---| |
| 319 | | 18.04.2026 | DUSTIN A/S | -12,495.00 | -9,996.00 | -2,499.00 | 25% | 4 | N | — | — | |
| 320 | |
| 321 | ### Example 5 — EU B2B service sale (inbound receipt) |
| 322 | |
| 323 | **Input line:** |
| 324 | `22.04.2026 ; STUDIO KREBS GMBH ; CREDIT ; Invoice DK-2026-018 IT consultancy March ; +26,250.00 ; DKK` |
| 325 | |
| 326 | **Reasoning:** |
| 327 | Incoming DKK 26,250 from a German company. The client provides IT consulting services to a German B2B customer. Place of supply for services is Germany (customer's country) under the general rule. The client invoices at 0%, the German customer accounts for reverse charge. Report net in rubrik 7 (EU supplies). No output VAT in rubrik 1. Confirm: (a) customer is VAT-registered — verify German USt-IdNr on VIES; (b) the invoice shows no Danish moms. |
| 328 | |
| 329 | **Output:** |
| 330 | |
| 331 | | Date | Counterparty | Gross | Net | VAT | Rate | Rubrik | Default? | Question? | Excluded? | |
| 332 | |---|---|---|---|---|---|---|---|---|---| |
| 333 | | 22.04.2026 | STUDIO KREBS GMBH | +26,250.00 | +26,250.00 | 0 | 0% | 7 | Y | Q2 (HIGH) | "Verify German USt-IdNr on VIES" | |
| 334 | |
| 335 | ### Example 6 — Motor vehicle, partial deduction |
| 336 | |
| 337 | **Input line:** |
| 338 | `28.04.2026 ; JYSK BILCENTER ; DEBIT ; Car lease payment April ; -4,500.00 ; DKK` |
| 339 | |
| 340 | **Reasoning:** |
| 341 | Car lease payment. Denmark allows partial VAT recovery on vehicles used for business — but only for commercial vehicles (varebiler/lastbiler). For passenger cars used for mixed business/private purposes, VAT deduction is generally not available unless the car is leased and used for business, in which case partial deduction may apply under momsloven §41(1) for leased passenger cars (1/3 of lease VAT deductible if car cost > DKK 160,000). Default: block fully. [T2] flag — reviewer must determine vehicle type and applicable deduction rule. |
| 342 | |
| 343 | **Output:** |
| 344 | |
| 345 | | Date | Counterparty | Gross | Net | VAT | Rate | Rubrik | Default? | Question? | Excluded? | |
| 346 | |---|---|---|---|---|---|---|---|---|---| |
| 347 | | 28.04.2026 | JYSK BILCENTER | -4,500.00 | -4,500.00 | 0 | — | — | Y | Q3 | "Vehicle: blocked — partial recovery may apply under §41 for leased passenger cars" | |
| 348 | |
| 349 | --- |
| 350 | |
| 351 | ## Section 5 — Tier 1 classification rules (compressed) |
| 352 | |
| 353 | Each rule states the legal source and the rubrik mapping. Apply silently if the data is unambiguous. |
| 354 | |
| 355 | ### 5.1 Standard rate 25% (momsloven §33) |
| 356 | |
| 357 | The ONLY rate for all taxable supplies in Denmark. There are no reduced rates. Sales → rubrik 1 (VAT), rubrik 6 (net). Purchases → rubrik 4 (input VAT). |
| 358 | |
| 359 | ### 5.2 Zero rate (momsloven §34) |
| 360 | |
| 361 | Exports outside EU → rubrik 8 (net, requires export evidence). Intra-EU B2B supplies of goods → rubrik 7 (net, requires customer VAT number verified on VIES, transport proof). Intra-EU B2B services → rubrik 7 (place of supply is customer's country, no Danish VAT). Newspapers and periodicals → 0% from 2024. |
| 362 | |
| 363 | ### 5.3 Exempt without credit (momsloven §13) |
| 364 | |
| 365 | Medical services, dental care, social services, education, financial services, insurance, postal universal service, certain cultural/sporting events, residential rent, passenger transport. These supplies are excluded from the momsangivelse — no output VAT, no input VAT deduction on related costs. If exempt supplies are significant → **R-DK-5 refuses**. |
| 366 | |
| 367 | ### 5.4 Local standard purchases |
| 368 | |
| 369 | Input VAT on a compliant tax invoice (faktura) from a Danish supplier is deductible at 25%. Rubrik 4 (input VAT). Subject to blocked-input rules (5.8). |
| 370 | |
| 371 | ### 5.5 Reverse charge — services received from abroad (momsloven §46(1) nr. 1) |
| 372 | |
| 373 | When the client receives a service from an EU or non-EU supplier: compute 25% VAT on the net amount. Report output VAT in rubrik 3. Report same amount as input VAT in rubrik 4. Net cash effect zero for a fully taxable business. If the foreign supplier incorrectly charged their local VAT, that foreign VAT is NOT recoverable through the Danish return — must be reclaimed via EU refund procedure. |
| 374 | |
| 375 | ### 5.6 Reverse charge — EU goods acquisitions (momsloven §46(1) nr. 4) |
| 376 | |
| 377 | Physical goods from an EU supplier: compute 25% VAT. Report output VAT in rubrik 2. Report input VAT in rubrik 4. Net value in rubrik 9. |
| 378 | |
| 379 | ### 5.7 Import VAT — goods from outside EU |
| 380 | |
| 381 | Goods imported from non-EU countries: import VAT is settled on the momsangivelse (importmomsordningen — Denmark shifted import VAT reporting to the VAT return from 2015). Report in rubrik 4 as input VAT when the import VAT has been charged. The customs declaration (enhedsdokument) is the supporting document. |
| 382 | |
| 383 | ### 5.8 Blocked input VAT (momsloven §42) |
| 384 | |
| 385 | The following categories have restricted or zero VAT recovery: |
| 386 | - Entertainment/representation: 25% of VAT recoverable under §42(2), requires documentation of business purpose and attendees |
| 387 | - Hotel accommodation for business: 100% deductible (changed from 75% — now fully deductible) |
| 388 | - Motor vehicles: passenger cars generally blocked; vans/trucks used for business fully deductible; leased passenger cars partial deduction under §41 |
| 389 | - Tobacco and spirits: blocked §42(1) nr. 5-6 |
| 390 | - Private use: fully blocked §42(1) nr. 1 |
| 391 | - Natural gas, electricity for non-business purposes: blocked |
| 392 | |
| 393 | ### 5.9 Capital goods scheme (momsloven §43-44) |
| 394 | |
| 395 | Capital goods with acquisition cost excl. VAT ≥ DKK 100,000 are subject to the capital goods adjustment scheme. Adjustment period: 5 years for movable goods, 10 years for immovable property (real estate). Below DKK 100,000: treat as normal overhead in rubrik 4. |
| 396 | |
| 397 | ### 5.10 Sales — local domestic |
| 398 | |
| 399 | Charge 25%. Report VAT in rubrik 1, net in rubrik 6. No B2B/B2C distinction for domestic supplies. |
| 400 | |
| 401 | ### 5.11 Sales — cross-border B2C |
| 402 | |
| 403 | Goods to EU consumers above €10,000 EU-wide threshold → **R-EU-5 (OSS refusal) from eu-vat-directive fires**. Digital services to EU consumers above €10,000 → same. Below threshold → Danish VAT at 25%, rubrik 1/6. |
| 404 | |
| 405 | ### 5.12 Lønsumsafgift interaction |
| 406 | |
| 407 | Businesses making exempt supplies under §13 may be subject to lønsumsafgift (payroll tax on exempt activities). This is a separate return filed separately. If the client makes only taxable supplies, lønsumsafgift does not apply. If the client makes exempt supplies, **R-DK-1** or **R-DK-5** may fire. |
| 408 | |
| 409 | --- |
| 410 | |
| 411 | ## Section 6 — Tier 2 catalogue (compressed) |
| 412 | |
| 413 | For each ambiguity type: pattern, why the bank statement is insufficient, conservative default, question for the structured form. |
| 414 | |
| 415 | ### 6.1 Fuel and vehicle costs |
| 416 | |
| 417 | *Pattern:* Q8, Circle K, Shell DK, OK Benzin, fuel receipts. *Why insufficient:* vehicle type and use unknown. Passenger car → generally blocked; van/truck → deductible. *Default:* 0% recovery. *Question:* "Is this a commercial vehicle (varebil/lastbil) used exclusively for business, or a passenger car (personbil)?" |
| 418 | |
| 419 | ### 6.2 Restaurants and entertainment (repræsentation) |
| 420 | |
| 421 | *Pattern:* any restaurant, café, bar, catering. *Why insufficient:* 25% partial recovery available but requires documentation. *Default:* block. *Question:* "Was this business entertainment with documented purpose and attendees? (If yes, 25% of VAT may be recoverable under §42(2).)" |
| 422 | |
| 423 | ### 6.3 Ambiguous SaaS billing entities |
| 424 | |
| 425 | *Pattern:* Google, Microsoft, Adobe, Meta, Slack, Zoom, etc. where the legal entity is not visible. *Why insufficient:* same brand can bill from IE (EU), US (non-EU), or DK (domestic). *Default:* reverse charge rubrik 3/4 (non-EU). *Question:* "Could you check the invoice for the legal entity name and country?" |
| 426 | |
| 427 | ### 6.4 Round-number incoming transfers from owner-named counterparties |
| 428 | |
| 429 | *Pattern:* large round credit from a name matching the client's name. *Default:* exclude as owner injection. *Question:* "Is this a customer payment, your own capital injection, or a loan?" |
| 430 | |
| 431 | ### 6.5 Incoming transfers from individual names |
| 432 | |
| 433 | *Pattern:* incoming from private-looking counterparties. *Default:* domestic B2C sale at 25%, rubrik 1/6. *Question:* "Was this a sale? Business or consumer? Country?" |
| 434 | |
| 435 | ### 6.6 Incoming transfers from foreign counterparties |
| 436 | |
| 437 | *Pattern:* foreign IBAN or foreign currency. *Default:* domestic 25%. *Question:* "What was this — B2B with a VAT number, B2C, goods or services, and which country?" |
| 438 | |
| 439 | ### 6.7 Large one-off purchases |
| 440 | |
| 441 | *Pattern:* single invoice near or above DKK 100,000 net. *Why insufficient:* capital goods threshold test applies. *Default:* if net ≥ DKK 100,000 → capital goods scheme; if net < DKK 100,000 → normal overhead in rubrik 4. *Question:* "Could you confirm the total invoice amount excluding VAT?" |
| 442 | |
| 443 | ### 6.8 Mixed-use phone, internet, home office |
| 444 | |
| 445 | *Pattern:* TDC, Nuuday, YouSee personal lines; home electricity. *Default:* 0% if mixed without declared %, 100% if confirmed pure business. *Question:* "Is this a dedicated business line or mixed-use? What business percentage would you estimate?" |
| 446 | |
| 447 | ### 6.9 Outgoing transfers to individuals |
| 448 | |
| 449 | *Pattern:* outgoing to private-looking names. *Default:* exclude as drawings. *Question:* "Was this a contractor with an invoice, wages, a refund, or a personal transfer?" |
| 450 | |
| 451 | ### 6.10 Cash withdrawals |
| 452 | |
| 453 | *Pattern:* HÆVNING, ATM, KONTANT. *Default:* exclude as owner drawing. *Question:* "What was the cash used for?" |
| 454 | |
| 455 | ### 6.11 Rent payments |
| 456 | |
| 457 | *Pattern:* monthly HUSLEJE, LEJE to a landlord name. *Default:* no VAT (residential default). *Question:* "Is this a commercial property? Does the landlord charge moms on the rent (frivillig registrering)?" |
| 458 | |
| 459 | ### 6.12 Foreign hotel and accommodation |
| 460 | |
| 461 | *Pattern:* hotel charged abroad. *Default:* exclude from input VAT (foreign VAT not recoverable through momsangivelse). *Question:* "Was this a business trip?" (For income tax records.) |
| 462 | |
| 463 | ### 6.13 Construction services received |
| 464 | |
| 465 | *Pattern:* builder, contractor, craftsman (håndværker, murer, tømrer). *Why insufficient:* construction reverse charge may apply under §46(1) nr. 3 if the supplier is a subcontractor and the client is also in construction. *Default:* domestic 25% in rubrik 4 (normal purchase). *Question:* "Are you in the construction sector? Is this supplier a subcontractor to you?" |
| 466 | |
| 467 | ### 6.14 Platform sales (Amazon, eBay, Etsy) |
| 468 | |
| 469 | *Pattern:* incoming from Amazon Payments EU, Etsy, PayPal, Stripe. *Default:* if client sells to EU consumers across countries above €10,000, R-EU-5 OSS refusal fires. For Denmark-only or below threshold: rubrik 1/6 at 25%; platform fees as separate reverse charge rubrik 3/4. *Question:* "Do you sell to buyers outside Denmark? Total EU cross-border sales for the year?" |
| 470 | |
| 471 | --- |
| 472 | |
| 473 | ## Section 7 — Excel working paper template (Denmark-specific) |
| 474 | |
| 475 | The base specification is in `vat-workflow-base` Section 3. This section provides the Denmark-specific overlay. |
| 476 | |
| 477 | ### Sheet "Transactions" |
| 478 | |
| 479 | Columns A–L per the base. Column H ("Rubrik code") accepts only valid momsangivelse rubrik codes from Section 1 of this skill (1–9). Use blank for excluded transactions. For reverse-charge transactions, enter both the output rubrik (e.g. 3) and input rubrik (e.g. 4) separated by a slash in column H. |
| 480 | |
| 481 | ### Sheet "Box Summary" |
| 482 | |
| 483 | One row per rubrik. Denmark's form is simpler than most EU countries — only 9 boxes. |
| 484 | |
| 485 | ``` |
| 486 | | 1 | Output VAT (udgående moms) | =SUMIFS(Transactions!F:F, Transactions!H:H, "1") | |
| 487 | | 2 | VAT on EU goods acquisitions | =SUMIFS(Transactions!F:F, Transactions!H:H, "2") | |
| 488 | | 3 | VAT on services from abroad (reverse charge) | =SUMIFS(Transactions!F:F, Transactions!H:H, "3") | |
| 489 | | 4 | Input VAT (indgående moms) | =SUMIFS(Transactions!F:F, Transactions!H:H, "4") | |
| 490 | | 5 | VAT payable/refundable | =C[1]+C[2]+C[3]-C[4] | |
| 491 | | 6 | Taxable sales excl. VAT | =SUMIFS(Transactions!E:E, Transactions!H:H, "6") | |
| 492 | | 7 | EU supplies excl. VAT | =SUMIFS(Transactions!E:E, Transactions!H:H, "7") | |
| 493 | | 8 | Exports excl. VAT | =SUMIFS(Transactions!E:E, Transactions!H:H, "8") | |
| 494 | | 9 | EU goods acquisitions excl. VAT | =SUMIFS(Transactions!E:E, Transactions!H:H, "9") | |
| 495 | ``` |
| 496 | |
| 497 | ### Sheet "Return Form" |
| 498 | |
| 499 | Final momsangivelse-ready figures. The bottom-line cell is rubrik 5: |
| 500 | |
| 501 | ``` |
| 502 | Rubrik 5 = Rubrik 1 + Rubrik 2 + Rubrik 3 − Rubrik 4 |
| 503 | |
| 504 | Positive rubrik 5 → payable to Skattestyrelsen. |
| 505 | Negative rubrik 5 → refund to the business. |
| 506 | ``` |
| 507 | |
| 508 | ### Color and formatting conventions |
| 509 | |
| 510 | Per the xlsx skill: blue for hardcoded values from the bank statement, black for formulas, green for cross-sheet references, yellow background for any row where Default? = "Y". |
| 511 | |
| 512 | ### Mandatory recalc step |
| 513 | |
| 514 | After building the workbook, run: |
| 515 | |
| 516 | ```bash |
| 517 | python /mnt/skills/public/xlsx/scripts/recalc.py /mnt/user-data/outputs/denmark-vat-<period>-working-paper.xlsx |
| 518 | ``` |
| 519 | |
| 520 | --- |
| 521 | |
| 522 | ## Section 8 — Denmark bank statement reading guide |
| 523 | |
| 524 | Follow the universal exclusion rules in `vat-workflow-base` Step 6, plus these Denmark-specific patterns. |
| 525 | |
| 526 | **CSV format conventions.** Danske Bank exports use semicolon delimiters with DD.MM.YYYY dates. Nordea DK exports use comma delimiters. Common columns: Dato, Tekst, Beløb, Saldo. Jyske Bank includes a Posteringstype column. Always confirm date format and delimiter before parsing. |
| 527 | |
| 528 | **Danish language variants.** Some descriptions appear in Danish: husleje (rent), løn/gage (salary), rente (interest), overførsel (transfer), hævning (withdrawal), indbetaling (deposit). Treat as English equivalents. |
| 529 | |
| 530 | **Internal transfers and exclusions.** Own-account transfers between the client's Danske Bank, Nordea, Revolut accounts. Labelled "overførsel", "intern overførsel", "egne konti". Always exclude. |
| 531 | |
| 532 | **Owner draws.** A self-employed sole trader (enkeltmandsvirksomhed) cannot pay themselves a salary — any transfer to their personal account is a drawing. Exclude. |
| 533 | |
| 534 | **Refunds and reversals.** Identify by "refundering", "tilbageførsel", "kreditnota". Book as negative in the same rubrik as the original transaction. |
| 535 | |
| 536 | **Foreign currency transactions.** Convert to DKK at the transaction date rate. Use the Danmarks Nationalbank rate or the rate shown on the bank statement. |
| 537 | |
| 538 | **IBAN country prefix.** DK = Denmark. IE, LU, NL, FR, DE = EU. US, GB, AU, CH = non-EU. |
| 539 | |
| 540 | --- |
| 541 | |
| 542 | ## Section 9 — Onboarding fallback (only when inference fails) |
| 543 | |
| 544 | The workflow in `vat-workflow-base` Section 1 mandates inferring the client profile from the data first (Step 3) and only confirming with the client in Step 4. The questionnaire below is a fallback. |
| 545 | |
| 546 | ### 9.1 Entity type and trading name |
| 547 | *Inference rule:* sole traders (enkeltmandsvirksomhed) often match account holder name; company names end in "ApS", "A/S", "I/S", "K/S". *Fallback:* "Are you a sole trader (enkeltmandsvirksomhed), ApS, A/S, or partnership?" |
| 548 | |
| 549 | ### 9.2 VAT registration status |
| 550 | *Inference rule:* if asking for a momsangivelse, they are VAT-registered. *Fallback:* "Are you momsregistreret (VAT-registered)?" |
| 551 | |
| 552 | ### 9.3 CVR/SE number and VAT number |
| 553 | *Inference rule:* CVR numbers sometimes appear in payment descriptions. *Fallback:* "What is your CVR/SE number and momsregistreringsnummer? (DK + 8 digits)" |
| 554 | |
| 555 | ### 9.4 Filing period and frequency |
| 556 | *Inference rule:* first and last transaction dates. *Fallback:* "Which period does this cover? Monthly, quarterly, or half-yearly?" |
| 557 | |
| 558 | ### 9.5 Industry and sector |
| 559 | *Inference rule:* counterparty mix, sales descriptions. *Fallback:* "In one sentence, what does the business do?" |
| 560 | |
| 561 | ### 9.6 Employees |
| 562 | *Inference rule:* ATP, A-skat, løn outgoing transfers. *Fallback:* "Do you have employees?" |
| 563 | |
| 564 | ### 9.7 Exempt supplies |
| 565 | *Inference rule:* medical/financial/educational income patterns. *Fallback:* "Do you make any VAT-exempt sales?" *If yes and non-de-minimis → R-DK-5 refuses.* |
| 566 | |
| 567 | ### 9.8 Credit brought forward |
| 568 | *Inference rule:* not inferable from single period. Always ask. *Question:* "Do you have any excess credit (tilgodehavende) from the previous period?" |
| 569 | |
| 570 | ### 9.9 Cross-border customers |
| 571 | *Inference rule:* foreign IBANs on incoming. *Fallback:* "Do you have customers outside Denmark? EU or non-EU? B2B or B2C?" |
| 572 | |
| 573 | ### 9.10 Vehicle type |
| 574 | *Inference rule:* not inferable from bank data. *Fallback:* "Do you use a vehicle for business? Is it a passenger car (personbil) or commercial vehicle (varebil/lastbil)?" |
| 575 | |
| 576 | --- |
| 577 | |
| 578 | ## Section 10 — Reference material |
| 579 | |
| 580 | ### Validation status |
| 581 | |
| 582 | This skill is v2.0, rewritten in April 2026 to align with the three-tier Accora architecture (vat-workflow-base + eu-vat-directive + country skill). Awaiting validation by a statsautoriseret revisor or registreret revisor in Denmark. |
| 583 | |
| 584 | ### Sources |
| 585 | |
| 586 | **Primary legislation:** |
| 587 | 1. Momsloven (Consolidated VAT Act) — https://www.retsinformation.dk |
| 588 | 2. Momsbekendtgørelsen (VAT Executive Order) |
| 589 | 3. Opkrævningsloven (Collection Act) |
| 590 | |
| 591 | **Skattestyrelsen guidance:** |
| 592 | 4. TastSelv Erhverv momsangivelse form — https://skat.dk |
| 593 | 5. Skattestyrelsen guidance on reverse charge (omvendt betalingspligt) |
| 594 | 6. Skattestyrelsen VAT registration thresholds |
| 595 | |
| 596 | **EU directive (loaded via companion skill):** |
| 597 | 7. Council Directive 2006/112/EC — implemented via eu-vat-directive companion skill |
| 598 | 8. Council Implementing Regulation 282/2011 |
| 599 | |
| 600 | **Other:** |
| 601 | 9. VIES validation — https://ec.europa.eu/taxation_customs/vies/ |
| 602 | 10. Danmarks Nationalbank exchange rates |
| 603 | |
| 604 | ### Known gaps |
| 605 | |
| 606 | 1. The supplier pattern library covers the most common Danish and international counterparties but not every local business. |
| 607 | 2. Construction reverse charge (§46(1) nr. 3) is flagged as Tier 2 — a future version should add detailed construction classification rules. |
| 608 | 3. Lønsumsafgift interaction is mentioned but not fully specified — out of scope for this VAT-only skill. |
| 609 | 4. The capital goods threshold (DKK 100,000 excl. VAT) is the statutory amount as of April 2026. Verify annually. |
| 610 | 5. Hotel accommodation VAT recovery (100% deductible) should be verified against current legislation. |
| 611 | 6. The 25% entertainment recovery rule under §42(2) requires careful documentation — the skill defaults to block. |
| 612 | |
| 613 | ### Change log |
| 614 | |
| 615 | - **v2.0 (April 2026):** Full rewrite to align with three-tier Accora architecture. Quick reference moved to top (Section 1). Supplier pattern library restructured as literal lookup tables (Section 3). Six worked examples added (Section 4). Tier 1 rules compressed (Section 5). Tier 2 catalogue restructured (Section 6). Excel working paper specification added (Section 7). Bank statement reading guide added (Section 8). Onboarding moved to fallback role (Section 9). Reference material moved to bottom (Section 10). |
| 616 | - **v1.0 (April 2026):** Initial skill. Standalone monolithic document. Awaiting validation. |
| 617 | |
| 618 | ### Self-check (v2.0) |
| 619 | |
| 620 | 1. Quick reference at top with rubrik table and conservative defaults: yes (Section 1). |
| 621 | 2. Supplier library as literal lookup tables: yes (Section 3, 14 sub-tables). |
| 622 | 3. Worked examples: yes (Section 4, 6 examples). |
| 623 | 4. Tier 1 rules compressed: yes (Section 5, 12 rules). |
| 624 | 5. Tier 2 catalogue compressed with inference rules: yes (Section 6, 14 items). |
| 625 | 6. Excel template specification with mandatory recalc: yes (Section 7). |
| 626 | 7. Onboarding as fallback only: yes (Section 9, 10 items). |
| 627 | 8. All 7 Denmark-specific refusals present: yes (Section 2, R-DK-1 through R-DK-7). |
| 628 | 9. Reference material at bottom: yes (Section 10). |
| 629 | 10. No reduced rates — 25% only: explicitly stated in Section 1 and Section 5.1. |
| 630 | 11. Entertainment partial recovery (25% under §42(2)) documented: yes (Section 3.7, Example 3, Section 5.8). |
| 631 | 12. Vehicle rules documented: yes (Section 5.8, Example 6). |
| 632 |
Run this skill, then get an accountant to check it
After running the full skill pack in Claude, sign up and upload your worksheet. We'll connect you with a trusted accountant in our network who can review your numbers before you file.
Depends on
Quality
Q2: Research-verified
Deep research against tax authority sources. Not yet tested on real data.
Needs real client data + practitioner sign-off to reach Q1.
Accountant Review
About
Use this skill whenever asked to prepare, review, or classify transactions for a Danish VAT return (Momsangivelse) for a self-employed individual or small business in Denmark. Trigger on phrases like "prepare VAT return", "do the VAT", "Danish VAT", "moms", "momsangivelse", or any request involving Denmark VAT filing. Also trigger when classifying transactions for VAT purposes from bank statements, invoices, or other source data. This skill covers Denmark only and only standard-registered businesses. Loensumsafgift-only entities, VAT groups, and fiscal representatives are in the refusal catalogue. MUST be loaded alongside BOTH vat-workflow-base v0.1 or later (for workflow architecture) AND eu-vat-directive v0.1 or later (for EU directive content). ALWAYS read this skill before touching any Danish VAT work.