[{"data":1,"prerenderedAt":672},["ShallowReactive",2],{"\u002Fblog\u002Fhow-to-handle-multiple-vat-rates-on-a-single-invoice":3},{"id":4,"title":5,"body":6,"description":664,"extension":665,"lastUpdatedAt":666,"meta":667,"navigation":155,"path":668,"publishedAt":666,"seo":669,"stem":670,"__hash__":671},"blog\u002Fblog\u002F0048.how-to-handle-multiple-vat-rates-on-a-single-invoice.md","How to handle multiple VAT rates on a single invoice",{"type":7,"value":8,"toc":654},"minimark",[9,13,16,21,24,36,40,43,243,262,266,272,380,390,401,405,408,411,441,447,451,468,523,532,551,555,558,564,581,589,624,650],[10,11,12],"p",{},"Switzerland has three VAT rates: 8.1% (standard), 2.6% (reduced, for food, books, medicines, and newspapers), and 3.8% (special rate for hotel and accommodation). Many businesses deal with more than one of these on a single invoice — a hotel billing room nights and breakfast separately, a retailer selling food and non-food items together, or a healthcare supplier mixing taxable and exempt services.",[10,14,15],{},"The EN 16931 standard — which underpins PEPPOL BIS Billing 3.0, ZUGFeRD, and Factur-X — handles this cleanly. But the implementation trips up a lot of developers because the tax model requires specific structures that differ from what most accounting software produces internally.",[17,18,20],"h2",{"id":19},"how-the-tax-model-works","How the tax model works",[10,22,23],{},"The core rule is this: each invoice line declares which VAT rate applies to that line. At the document level, all lines with the same rate are consolidated into a single tax subtotal. One subtotal per distinct rate — not one per line, not one per product category.",[10,25,26,27,31,32,35],{},"If an invoice has 10 lines at 8.1% and 5 lines at 2.6%, the document has two ",[28,29,30],"code",{},"TaxSubtotal"," blocks: one summing all the 8.1% lines, one summing all the 2.6% lines. The ",[28,33,34],{},"TaxTotal"," sums both subtotals into a single total VAT figure.",[17,37,39],{"id":38},"line-level-tax-declaration","Line-level tax declaration",[10,41,42],{},"Each invoice line carries its own tax category and rate:",[44,45,50],"pre",{"className":46,"code":47,"language":48,"meta":49,"style":49},"language-xml shiki shiki-themes github-light github-dark","\u003Ccac:InvoiceLine>\n  \u003Ccbc:ID>1\u003C\u002Fcbc:ID>\n  \u003Ccbc:InvoicedQuantity unitCode=\"C62\">2\u003C\u002Fcbc:InvoicedQuantity>\n  \u003Ccbc:LineExtensionAmount currencyID=\"CHF\">48.00\u003C\u002Fcbc:LineExtensionAmount>\n  \u003Ccac:Item>\n    \u003Ccbc:Name>Organic apple juice 1L\u003C\u002Fcbc:Name>\n    \u003Ccac:ClassifiedTaxCategory>\n      \u003Ccbc:ID>S\u003C\u002Fcbc:ID>\n      \u003Ccbc:Percent>2.6\u003C\u002Fcbc:Percent>\n      \u003Ccac:TaxScheme>\u003Ccbc:ID>VAT\u003C\u002Fcbc:ID>\u003C\u002Fcac:TaxScheme>\n    \u003C\u002Fcac:ClassifiedTaxCategory>\n  \u003C\u002Fcac:Item>\n  \u003Ccac:Price>\n    \u003Ccbc:PriceAmount currencyID=\"CHF\">24.00\u003C\u002Fcbc:PriceAmount>\n  \u003C\u002Fcac:Price>\n\u003C\u002Fcac:InvoiceLine>\n\n\u003Ccac:InvoiceLine>\n  \u003Ccbc:ID>2\u003C\u002Fcbc:ID>\n  \u003Ccbc:InvoicedQuantity unitCode=\"C62\">1\u003C\u002Fcbc:InvoicedQuantity>\n  \u003Ccbc:LineExtensionAmount currencyID=\"CHF\">35.00\u003C\u002Fcbc:LineExtensionAmount>\n  \u003Ccac:Item>\n    \u003Ccbc:Name>Kitchen utensil set\u003C\u002Fcbc:Name>\n    \u003Ccac:ClassifiedTaxCategory>\n      \u003Ccbc:ID>S\u003C\u002Fcbc:ID>\n      \u003Ccbc:Percent>8.1\u003C\u002Fcbc:Percent>\n      \u003Ccac:TaxScheme>\u003Ccbc:ID>VAT\u003C\u002Fcbc:ID>\u003C\u002Fcac:TaxScheme>\n    \u003C\u002Fcac:ClassifiedTaxCategory>\n  \u003C\u002Fcac:Item>\n  \u003Ccac:Price>\n    \u003Ccbc:PriceAmount currencyID=\"CHF\">35.00\u003C\u002Fcbc:PriceAmount>\n  \u003C\u002Fcac:Price>\n\u003C\u002Fcac:InvoiceLine>\n","xml","",[28,51,52,60,66,72,78,84,90,96,102,108,114,120,126,132,138,144,150,157,162,168,174,180,185,191,196,201,207,212,217,222,227,233,238],{"__ignoreMap":49},[53,54,57],"span",{"class":55,"line":56},"line",1,[53,58,59],{},"\u003Ccac:InvoiceLine>\n",[53,61,63],{"class":55,"line":62},2,[53,64,65],{},"  \u003Ccbc:ID>1\u003C\u002Fcbc:ID>\n",[53,67,69],{"class":55,"line":68},3,[53,70,71],{},"  \u003Ccbc:InvoicedQuantity unitCode=\"C62\">2\u003C\u002Fcbc:InvoicedQuantity>\n",[53,73,75],{"class":55,"line":74},4,[53,76,77],{},"  \u003Ccbc:LineExtensionAmount currencyID=\"CHF\">48.00\u003C\u002Fcbc:LineExtensionAmount>\n",[53,79,81],{"class":55,"line":80},5,[53,82,83],{},"  \u003Ccac:Item>\n",[53,85,87],{"class":55,"line":86},6,[53,88,89],{},"    \u003Ccbc:Name>Organic apple juice 1L\u003C\u002Fcbc:Name>\n",[53,91,93],{"class":55,"line":92},7,[53,94,95],{},"    \u003Ccac:ClassifiedTaxCategory>\n",[53,97,99],{"class":55,"line":98},8,[53,100,101],{},"      \u003Ccbc:ID>S\u003C\u002Fcbc:ID>\n",[53,103,105],{"class":55,"line":104},9,[53,106,107],{},"      \u003Ccbc:Percent>2.6\u003C\u002Fcbc:Percent>\n",[53,109,111],{"class":55,"line":110},10,[53,112,113],{},"      \u003Ccac:TaxScheme>\u003Ccbc:ID>VAT\u003C\u002Fcbc:ID>\u003C\u002Fcac:TaxScheme>\n",[53,115,117],{"class":55,"line":116},11,[53,118,119],{},"    \u003C\u002Fcac:ClassifiedTaxCategory>\n",[53,121,123],{"class":55,"line":122},12,[53,124,125],{},"  \u003C\u002Fcac:Item>\n",[53,127,129],{"class":55,"line":128},13,[53,130,131],{},"  \u003Ccac:Price>\n",[53,133,135],{"class":55,"line":134},14,[53,136,137],{},"    \u003Ccbc:PriceAmount currencyID=\"CHF\">24.00\u003C\u002Fcbc:PriceAmount>\n",[53,139,141],{"class":55,"line":140},15,[53,142,143],{},"  \u003C\u002Fcac:Price>\n",[53,145,147],{"class":55,"line":146},16,[53,148,149],{},"\u003C\u002Fcac:InvoiceLine>\n",[53,151,153],{"class":55,"line":152},17,[53,154,156],{"emptyLinePlaceholder":155},true,"\n",[53,158,160],{"class":55,"line":159},18,[53,161,59],{},[53,163,165],{"class":55,"line":164},19,[53,166,167],{},"  \u003Ccbc:ID>2\u003C\u002Fcbc:ID>\n",[53,169,171],{"class":55,"line":170},20,[53,172,173],{},"  \u003Ccbc:InvoicedQuantity unitCode=\"C62\">1\u003C\u002Fcbc:InvoicedQuantity>\n",[53,175,177],{"class":55,"line":176},21,[53,178,179],{},"  \u003Ccbc:LineExtensionAmount currencyID=\"CHF\">35.00\u003C\u002Fcbc:LineExtensionAmount>\n",[53,181,183],{"class":55,"line":182},22,[53,184,83],{},[53,186,188],{"class":55,"line":187},23,[53,189,190],{},"    \u003Ccbc:Name>Kitchen utensil set\u003C\u002Fcbc:Name>\n",[53,192,194],{"class":55,"line":193},24,[53,195,95],{},[53,197,199],{"class":55,"line":198},25,[53,200,101],{},[53,202,204],{"class":55,"line":203},26,[53,205,206],{},"      \u003Ccbc:Percent>8.1\u003C\u002Fcbc:Percent>\n",[53,208,210],{"class":55,"line":209},27,[53,211,113],{},[53,213,215],{"class":55,"line":214},28,[53,216,119],{},[53,218,220],{"class":55,"line":219},29,[53,221,125],{},[53,223,225],{"class":55,"line":224},30,[53,226,131],{},[53,228,230],{"class":55,"line":229},31,[53,231,232],{},"    \u003Ccbc:PriceAmount currencyID=\"CHF\">35.00\u003C\u002Fcbc:PriceAmount>\n",[53,234,236],{"class":55,"line":235},32,[53,237,143],{},[53,239,241],{"class":55,"line":240},33,[53,242,149],{},[10,244,245,246,249,250,253,254,257,258,261],{},"Both lines use category code ",[28,247,248],{},"S"," (standard-rated VAT). The rate value in ",[28,251,252],{},"Percent"," is what distinguishes them — ",[28,255,256],{},"2.6"," for the food item, ",[28,259,260],{},"8.1"," for the non-food item.",[17,263,265],{"id":264},"consolidating-into-tax-subtotals","Consolidating into tax subtotals",[10,267,268,269,271],{},"After all lines, the ",[28,270,34],{}," block consolidates by rate:",[44,273,275],{"className":46,"code":274,"language":48,"meta":49,"style":49},"\u003Ccac:TaxTotal>\n  \u003Ccbc:TaxAmount currencyID=\"CHF\">4.08\u003C\u002Fcbc:TaxAmount>\n\n  \u003Ccac:TaxSubtotal>\n    \u003Ccbc:TaxableAmount currencyID=\"CHF\">48.00\u003C\u002Fcbc:TaxableAmount>\n    \u003Ccbc:TaxAmount currencyID=\"CHF\">1.25\u003C\u002Fcbc:TaxAmount>\n    \u003Ccac:TaxCategory>\n      \u003Ccbc:ID>S\u003C\u002Fcbc:ID>\n      \u003Ccbc:Percent>2.6\u003C\u002Fcbc:Percent>\n      \u003Ccac:TaxScheme>\u003Ccbc:ID>VAT\u003C\u002Fcbc:ID>\u003C\u002Fcac:TaxScheme>\n    \u003C\u002Fcac:TaxCategory>\n  \u003C\u002Fcac:TaxSubtotal>\n\n  \u003Ccac:TaxSubtotal>\n    \u003Ccbc:TaxableAmount currencyID=\"CHF\">35.00\u003C\u002Fcbc:TaxableAmount>\n    \u003Ccbc:TaxAmount currencyID=\"CHF\">2.84\u003C\u002Fcbc:TaxAmount>\n    \u003Ccac:TaxCategory>\n      \u003Ccbc:ID>S\u003C\u002Fcbc:ID>\n      \u003Ccbc:Percent>8.1\u003C\u002Fcbc:Percent>\n      \u003Ccac:TaxScheme>\u003Ccbc:ID>VAT\u003C\u002Fcbc:ID>\u003C\u002Fcac:TaxScheme>\n    \u003C\u002Fcac:TaxCategory>\n  \u003C\u002Fcac:TaxSubtotal>\n\u003C\u002Fcac:TaxTotal>\n",[28,276,277,282,287,291,296,301,306,311,315,319,323,328,333,337,341,346,351,355,359,363,367,371,375],{"__ignoreMap":49},[53,278,279],{"class":55,"line":56},[53,280,281],{},"\u003Ccac:TaxTotal>\n",[53,283,284],{"class":55,"line":62},[53,285,286],{},"  \u003Ccbc:TaxAmount currencyID=\"CHF\">4.08\u003C\u002Fcbc:TaxAmount>\n",[53,288,289],{"class":55,"line":68},[53,290,156],{"emptyLinePlaceholder":155},[53,292,293],{"class":55,"line":74},[53,294,295],{},"  \u003Ccac:TaxSubtotal>\n",[53,297,298],{"class":55,"line":80},[53,299,300],{},"    \u003Ccbc:TaxableAmount currencyID=\"CHF\">48.00\u003C\u002Fcbc:TaxableAmount>\n",[53,302,303],{"class":55,"line":86},[53,304,305],{},"    \u003Ccbc:TaxAmount currencyID=\"CHF\">1.25\u003C\u002Fcbc:TaxAmount>\n",[53,307,308],{"class":55,"line":92},[53,309,310],{},"    \u003Ccac:TaxCategory>\n",[53,312,313],{"class":55,"line":98},[53,314,101],{},[53,316,317],{"class":55,"line":104},[53,318,107],{},[53,320,321],{"class":55,"line":110},[53,322,113],{},[53,324,325],{"class":55,"line":116},[53,326,327],{},"    \u003C\u002Fcac:TaxCategory>\n",[53,329,330],{"class":55,"line":122},[53,331,332],{},"  \u003C\u002Fcac:TaxSubtotal>\n",[53,334,335],{"class":55,"line":128},[53,336,156],{"emptyLinePlaceholder":155},[53,338,339],{"class":55,"line":134},[53,340,295],{},[53,342,343],{"class":55,"line":140},[53,344,345],{},"    \u003Ccbc:TaxableAmount currencyID=\"CHF\">35.00\u003C\u002Fcbc:TaxableAmount>\n",[53,347,348],{"class":55,"line":146},[53,349,350],{},"    \u003Ccbc:TaxAmount currencyID=\"CHF\">2.84\u003C\u002Fcbc:TaxAmount>\n",[53,352,353],{"class":55,"line":152},[53,354,310],{},[53,356,357],{"class":55,"line":159},[53,358,101],{},[53,360,361],{"class":55,"line":164},[53,362,206],{},[53,364,365],{"class":55,"line":170},[53,366,113],{},[53,368,369],{"class":55,"line":176},[53,370,327],{},[53,372,373],{"class":55,"line":182},[53,374,332],{},[53,376,377],{"class":55,"line":187},[53,378,379],{},"\u003C\u002Fcac:TaxTotal>\n",[10,381,382,383,386,387,389],{},"The ",[28,384,385],{},"TaxAmount"," in ",[28,388,34],{}," (4.08) must equal the sum of the two subtotal amounts (1.25 + 2.84 = 4.09 — note the one-cent rounding difference here, covered below).",[10,391,392,393,396,397,400],{},"Each ",[28,394,395],{},"TaxSubtotal\u002FTaxableAmount"," is the sum of all ",[28,398,399],{},"LineExtensionAmount"," values for lines at that rate.",[17,402,404],{"id":403},"rounding-and-the-one-cent-problem","Rounding and the one-cent problem",[10,406,407],{},"This is where multi-rate invoices get tricky. If you calculate tax for each subtotal independently and round to two decimal places, rounding errors accumulate. On a two-rate invoice the error is usually small, but on invoices with many lines and three rates it can add up to several cents, which causes the Schematron consistency check to fail.",[10,409,410],{},"The right approach:",[412,413,414,421,428,431],"ol",{},[415,416,417,418,420],"li",{},"Sum the ",[28,419,399],{}," values for each rate group without rounding — keep full precision internally.",[415,422,423,424,427],{},"Calculate tax for each group: ",[28,425,426],{},"taxableAmount × rate \u002F 100",", again without rounding.",[415,429,430],{},"Round only when writing the final values into the XML.",[415,432,433,434,436,437,440],{},"Sum the rounded subtotal ",[28,435,385],{}," values to get ",[28,438,439],{},"TaxTotal\u002FTaxAmount"," — do not recalculate from scratch.",[10,442,443,444,446],{},"If there is still a one-cent discrepancy between ",[28,445,439],{}," and the sum of the subtotals due to rounding, EN 16931 allows the total to be the sum of the rounded subtotals (not independently recalculated). Most Schematron validators apply a tolerance of ±0.02 CHF before failing the check.",[17,448,450],{"id":449},"mixing-taxed-and-exempt-lines","Mixing taxed and exempt lines",[10,452,453,454,457,458,460,461,463,464,467],{},"A hotel invoice might combine taxable room charges (3.8%) with exempt medical or educational services. Exempt lines use tax category ",[28,455,456],{},"E"," instead of ",[28,459,248],{},", with ",[28,462,252],{}," set to ",[28,465,466],{},"0"," and a mandatory exemption reason:",[44,469,471],{"className":46,"code":470,"language":48,"meta":49,"style":49},"\u003Ccac:TaxSubtotal>\n  \u003Ccbc:TaxableAmount currencyID=\"CHF\">200.00\u003C\u002Fcbc:TaxableAmount>\n  \u003Ccbc:TaxAmount currencyID=\"CHF\">0.00\u003C\u002Fcbc:TaxAmount>\n  \u003Ccac:TaxCategory>\n    \u003Ccbc:ID>E\u003C\u002Fcbc:ID>\n    \u003Ccbc:Percent>0\u003C\u002Fcbc:Percent>\n    \u003Ccbc:TaxExemptionReason>Exempt under Art. 21 MWSTG\u003C\u002Fcbc:TaxExemptionReason>\n    \u003Ccac:TaxScheme>\u003Ccbc:ID>VAT\u003C\u002Fcbc:ID>\u003C\u002Fcac:TaxScheme>\n  \u003C\u002Fcac:TaxCategory>\n\u003C\u002Fcac:TaxSubtotal>\n",[28,472,473,478,483,488,493,498,503,508,513,518],{"__ignoreMap":49},[53,474,475],{"class":55,"line":56},[53,476,477],{},"\u003Ccac:TaxSubtotal>\n",[53,479,480],{"class":55,"line":62},[53,481,482],{},"  \u003Ccbc:TaxableAmount currencyID=\"CHF\">200.00\u003C\u002Fcbc:TaxableAmount>\n",[53,484,485],{"class":55,"line":68},[53,486,487],{},"  \u003Ccbc:TaxAmount currencyID=\"CHF\">0.00\u003C\u002Fcbc:TaxAmount>\n",[53,489,490],{"class":55,"line":74},[53,491,492],{},"  \u003Ccac:TaxCategory>\n",[53,494,495],{"class":55,"line":80},[53,496,497],{},"    \u003Ccbc:ID>E\u003C\u002Fcbc:ID>\n",[53,499,500],{"class":55,"line":86},[53,501,502],{},"    \u003Ccbc:Percent>0\u003C\u002Fcbc:Percent>\n",[53,504,505],{"class":55,"line":92},[53,506,507],{},"    \u003Ccbc:TaxExemptionReason>Exempt under Art. 21 MWSTG\u003C\u002Fcbc:TaxExemptionReason>\n",[53,509,510],{"class":55,"line":98},[53,511,512],{},"    \u003Ccac:TaxScheme>\u003Ccbc:ID>VAT\u003C\u002Fcbc:ID>\u003C\u002Fcac:TaxScheme>\n",[53,514,515],{"class":55,"line":104},[53,516,517],{},"  \u003C\u002Fcac:TaxCategory>\n",[53,519,520],{"class":55,"line":110},[53,521,522],{},"\u003C\u002Fcac:TaxSubtotal>\n",[10,524,525,526,528,529,531],{},"The exempt subtotal still appears in ",[28,527,34],{}," — it contributes a taxable amount (for reporting) but zero tax. The ",[28,530,439],{}," is still only the sum of actually charged VAT.",[10,533,534,535,537,538,537,541,544,545,550],{},"For a full explanation of when to use ",[28,536,456],{},", ",[28,539,540],{},"Z",[28,542,543],{},"AE",", and the other category codes, the ",[546,547,549],"a",{"href":548},"\u002Fblog\u002Ftax-category-codes-in-en-16931-explained","tax category codes post"," covers each one.",[17,552,554],{"id":553},"the-38-hospitality-rate-in-practice","The 3.8% hospitality rate in practice",[10,556,557],{},"The 3.8% rate applies specifically to hotel and accommodation services — room charges, breakfast, and other overnight stay services. It does not apply to restaurant meals at a hotel (those are 8.1%), nor to conference facilities sold separately.",[10,559,560,561,563],{},"If you run a hotel and your invoicing system was not designed with Swiss VAT in mind, the 3.8% rate is often the one that gets missed. Many ERP templates only have slots for two rates. Check that your invoice generator produces a valid ",[28,562,30],{}," for 3.8% and does not accidentally roll it into the 8.1% bucket.",[10,565,566,567,386,570,572,573,575,576,580],{},"In the XML, the 3.8% rate is represented exactly as ",[28,568,569],{},"3.8",[28,571,252],{},". The category code is still ",[28,574,248],{},". The ",[546,577,579],{"href":578},"\u002Fblog\u002Fhospitality-and-accommodation-special-vat-rate-on-e-invoices","hospitality VAT post"," covers the Swiss rules on which services qualify for this rate.",[17,582,584,585,588],{"id":583},"what-the-legalmonetarytotal-looks-like-with-multiple-rates","What the ",[28,586,587],{},"LegalMonetaryTotal"," looks like with multiple rates",[44,590,592],{"className":46,"code":591,"language":48,"meta":49,"style":49},"\u003Ccac:LegalMonetaryTotal>\n  \u003Ccbc:LineExtensionAmount currencyID=\"CHF\">283.00\u003C\u002Fcbc:LineExtensionAmount>\n  \u003Ccbc:TaxExclusiveAmount currencyID=\"CHF\">283.00\u003C\u002Fcbc:TaxExclusiveAmount>\n  \u003Ccbc:TaxInclusiveAmount currencyID=\"CHF\">287.08\u003C\u002Fcbc:TaxInclusiveAmount>\n  \u003Ccbc:PayableAmount currencyID=\"CHF\">287.08\u003C\u002Fcbc:PayableAmount>\n\u003C\u002Fcac:LegalMonetaryTotal>\n",[28,593,594,599,604,609,614,619],{"__ignoreMap":49},[53,595,596],{"class":55,"line":56},[53,597,598],{},"\u003Ccac:LegalMonetaryTotal>\n",[53,600,601],{"class":55,"line":62},[53,602,603],{},"  \u003Ccbc:LineExtensionAmount currencyID=\"CHF\">283.00\u003C\u002Fcbc:LineExtensionAmount>\n",[53,605,606],{"class":55,"line":68},[53,607,608],{},"  \u003Ccbc:TaxExclusiveAmount currencyID=\"CHF\">283.00\u003C\u002Fcbc:TaxExclusiveAmount>\n",[53,610,611],{"class":55,"line":74},[53,612,613],{},"  \u003Ccbc:TaxInclusiveAmount currencyID=\"CHF\">287.08\u003C\u002Fcbc:TaxInclusiveAmount>\n",[53,615,616],{"class":55,"line":80},[53,617,618],{},"  \u003Ccbc:PayableAmount currencyID=\"CHF\">287.08\u003C\u002Fcbc:PayableAmount>\n",[53,620,621],{"class":55,"line":86},[53,622,623],{},"\u003C\u002Fcac:LegalMonetaryTotal>\n",[10,625,626,628,629,632,633,635,636,639,640,642,643,645,646,649],{},[28,627,399],{}," is the sum of all line amounts regardless of rate. ",[28,630,631],{},"TaxExclusiveAmount"," equals ",[28,634,399],{}," when there are no header-level charges or allowances. ",[28,637,638],{},"TaxInclusiveAmount"," = ",[28,641,631],{}," + ",[28,644,439],{},". The Schematron verifies this relationship, so any inconsistency here will produce a ",[28,647,648],{},"BR-CO-15"," error.",[651,652,653],"style",{},"html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"title":49,"searchDepth":62,"depth":62,"links":655},[656,657,658,659,660,661,662],{"id":19,"depth":62,"text":20},{"id":38,"depth":62,"text":39},{"id":264,"depth":62,"text":265},{"id":403,"depth":62,"text":404},{"id":449,"depth":62,"text":450},{"id":553,"depth":62,"text":554},{"id":583,"depth":62,"text":663},"What the LegalMonetaryTotal looks like with multiple rates","Guidance on declaring lines taxed at different rates — standard, reduced, and special — in a single e-invoice document.","md","2026-10-27",{},"\u002Fblog\u002Fhow-to-handle-multiple-vat-rates-on-a-single-invoice",{"title":5,"description":664},"blog\u002F0048.how-to-handle-multiple-vat-rates-on-a-single-invoice","Y2OUBDkCdWEZQH8cRS0bXgputUp54QlyLt7OPcpJOkc",1777105007986]