Add codification of tax rates (#4372)

* draft

* .

* Rebase migration

* Update src/pretix/base/models/tax.py

Co-authored-by: Mira <weller@rami.io>

* Test, isort, flake, migration rebase

* carry data & API

* Fix failing tests

* docs fixes

* Improve validation

* Tests

* More fixes

---------

Co-authored-by: Mira <weller@rami.io>
This commit is contained in:
Raphael Michel
2024-12-13 12:04:38 +01:00
committed by GitHub
parent a4385c8b6e
commit 53f129d5d3
36 changed files with 818 additions and 124 deletions

View File

@@ -765,8 +765,13 @@ fieldset.accordion-panel > legend {
margin: 0;
& > div {
padding-top: 5px;
padding-bottom: 5px;
}
& > div > div {
margin-bottom: 10px;
}
}
.tax-rule-lines .alert-danger {
margin: 10px 15px 5px;
}
.tax-rule-lines .tax-rule-line {
border-bottom: 1px solid $input-border;

View File

@@ -19,6 +19,75 @@
"description": "Action to take.",
"enum": ["vat", "reverse", "no", "block", "require_approval"]
},
"code": {
"description": "Tax code to use instead of original tax code.",
"enum": [
null,
"S/standard",
"S/reduced",
"S/averaged",
"AE",
"O",
"E",
"Z",
"G",
"K",
"L",
"M",
"B",
"E/VATEX-EU-79-C",
"E/VATEX-EU-132-1A",
"E/VATEX-EU-132-1B",
"E/VATEX-EU-132-1C",
"E/VATEX-EU-132-1D",
"E/VATEX-EU-132-1E",
"E/VATEX-EU-132-1F",
"E/VATEX-EU-132-1G",
"E/VATEX-EU-132-1H",
"E/VATEX-EU-132-1I",
"E/VATEX-EU-132-1J",
"E/VATEX-EU-132-1K",
"E/VATEX-EU-132-1L",
"E/VATEX-EU-132-1M",
"E/VATEX-EU-132-1N",
"E/VATEX-EU-132-1O",
"E/VATEX-EU-132-1P",
"E/VATEX-EU-132-1Q",
"E/VATEX-EU-143-1A",
"E/VATEX-EU-143-1B",
"E/VATEX-EU-143-1C",
"E/VATEX-EU-143-1D",
"E/VATEX-EU-143-1E",
"E/VATEX-EU-143-1F",
"E/VATEX-EU-143-1FA",
"E/VATEX-EU-143-1G",
"E/VATEX-EU-143-1H",
"E/VATEX-EU-143-1I",
"E/VATEX-EU-143-1J",
"E/VATEX-EU-143-1K",
"E/VATEX-EU-143-1L",
"E/VATEX-EU-148-A",
"E/VATEX-EU-148-B",
"E/VATEX-EU-148-C",
"E/VATEX-EU-148-D",
"E/VATEX-EU-148-E",
"E/VATEX-EU-148-F",
"E/VATEX-EU-148-G",
"E/VATEX-EU-151-1A",
"E/VATEX-EU-151-1AA",
"E/VATEX-EU-151-1B",
"E/VATEX-EU-151-1C",
"E/VATEX-EU-151-1D",
"E/VATEX-EU-151-1E",
"E/VATEX-EU-309",
"E/VATEX-EU-D",
"E/VATEX-EU-F",
"E/VATEX-EU-I",
"E/VATEX-EU-J",
"E/VATEX-FR-FRANCHISE",
"E/VATEX-FR-CNWVAT"
]
},
"rate": {
"description": "Tax rate in case of action=vat or action=require_approval (or null for default)",
"type": ["string", "null"],