Add Norway (NO) tax regime#738
Closed
0xjgv wants to merge 6 commits intoinvopop:mainfrom
Closed
Conversation
Implements complete support for Norway's VAT tax regime with: - VAT categories and rates (standard 25%, reduced 15%, super-reduced 12%, special 11.11%) - Organisasjonsnummer (org.Identity type ON) with mod-11 validation - Tax identity normalization stripping NO prefix and MVA suffix - Support for reverse-charge and foretaksregisteret tagging with legal notes - Invoice validation requiring supplier name/address/tax ID and customer name - Credit note and debit note correction types with preceding doc reference - Norwegian (nb) translation support alongside English - Comprehensive tests with edge case coverage - Example fixtures: standard invoice, credit note, debit note, reverse-charge Sources: - Skatteetaten VAT rates: https://www.skatteetaten.no/en/rates/vat/ - Brønnøysundregistrene org.nr: https://www.brreg.no/en/about-us-2/our-registers/ - Merverdiavgiftsloven: https://lovdata.no/dokument/NL/lov/2009-06-19-58
Add bilingual descriptions to general rate and foretaksregisteret tag, historical super-reduced rate values (COVID reduction, 2012 increase), fix special rate Since date to 2009, and add standard and multi-rate example invoices.
Fix super-reduced rate history (wrong dates, missing intermediate rates) and add pre-2005 history for general and reduced rates based on Stortinget resolutions and NOU 2019:11. Add calculation verification tests for standard, tax-inclusive, and multi-rate invoices, plus reverse-charge exempt scenario test.
- Add simplified invoice support: TagSimplified check, customer Empty, relaxed supplier validation - Relax supplier TaxID requirement: optional for non-VAT-registered companies below NOK 50,000 turnover - Conditional supplier address: required for standard, optional for simplified invoices - Remove TestInvoiceCalculation and redundant calculation assertions - Add Description field to regime definition using here.Doc - Remove foretaksregisteret tag, constant, scenario, TagSet, and all related tests and examples - Add simplified invoice example and dedicated test cases - Update README.md and CHANGELOG.md to reflect changes - Change invoiceScenarios from func to var for FR/DE/IT consistency - Regenerate data/regimes/no.json
Contributor
Author
|
Superseded by #728 (reopened) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Adds Norway (
NO) as a first-class tax regime in GOBL:Outstanding review feedback from #728
Per @samlown's last review — the PR was nearly ready to merge with one remaining change:
Test plan