πŸ‡©πŸ‡ͺ Germany cuts VAT from 19% to 16%

Due to the COVID-19 crisis, Germany announced that VAT will be cut from 19 to 16 percent from July 1 to December 31 this year. Learn how Octobat is handling this update.

On June 4th, Germany has announced a €130 billion COVID-19 package including a cut in the standard VAT rate from 19% to 16%, starting from 1 July and ending on 31 December 2020. The reduced VAT rate of 7% will also be cut to 5%.

Octobat customers selling from and to Germany are impacted by this change as the tax rate cut must be reflected in their transactions. Here is our plan to help you to automate this migration depending on your case.

Octobat's automation solutions

If you are using the "specific tax rate" feature in Octobat, please refer to the next paragraph​

One-off charges and new subscriptions

Octobat has already implemented both standard (16%) and reduced (5%) new VAT rates so that calculations performed from July 1st will be automatically bound to the new percentages.

That means that every time our algorithm detects that German VAT should be applied for a given transaction or sub-item, the new percentages will be applied, no matter if the resulting billing scheme is tax-inclusive or tax-exclusive.

These updates will ensure an automated, hassle-free, and perfectly compliant solution for businesses using:

  • Beanie

  • Direct integrations

  • The Tax Calculation APIs (Tax Evidences)

  • The Octobat Dashboard

Existing subscriptions, renewals and trial-endings

If you have existing subscriptions on Stripe, depending on how they are set up, Octobat may update them on your behalf in order to make sure that new tax rates are applied. Below are the different cases you may encounter, and why you have basically nothing to do on your own. We're here to help:

Tax-inclusive automatic subscriptions

If you never used the Stripe TaxRate APIs, you probably rely on Octobat to calculate tax accordingly every time a transaction occurs. The Stripe Plan's price is always the final price paid by the customer, as it's per definition, tax-inclusive. Octobat does not have to perform any update in that case, as tax is calculated on a post-payment basis.

Before July 1st, here is what happens, for a €100 recurring plan:

Plan Amount

Charged Amount

Calculated VAT rate

Revenue

VAT

€ 100

€100

πŸ‡©πŸ‡ͺ19%

€84,03

€15,97

And starting on July 1st, here is what will happen, for the same €100 recurring plan:

Plan Amount

Charged Amount

CaclulatedVAT rate

Revenue

VAT

€ 100

€100

πŸ‡©πŸ‡ͺ16%

€86,21

€13,79

Octobat will never update your plans nor tweak your subscriptions. If you want to decrease your prices due to the VAT cuts, you need to create new plans and subscribe to your customers on your own.

Tax-inclusive subscriptions with the Tax Rates API:

In that case, you are probably calculating taxes before the subscription is set up, and are using the Stripe Tax Rates APIs to reflect these calculations. Octobat will listen for renewals, and updates the subscription accordingly, using a 16% tax rate. The final price paid by the customer won't change, but this ensures that the invoices we generate are reflecting the tax rate cuts.

The change will be performed only on renewal. We are listening to the Stripe invoice.created event webhooks, so the VAT rate cut is reflected one hour before the payment actually occurs.

Before July 1st, here is what happens, for a €100 recurring plan:

Plan Amount

VAT rate

Charged Amount

Revenue

VAT

€ 100

19% (inclusive)

€ 100

€84,03

€15,97

And starting on July 1st, here is what will happen, for the same €100 recurring plan, after the subscription is updated:

Plan Amount

VAT rate

Charged Amount

Revenue

VAT

€ 100

16% (inclusive)

€ 100

€86,21

€13,79

Tax-exclusive subscriptions with the Tax Rates API:

In that case, you are probably calculating taxes before the subscription is set up, and are using the Stripe Tax Rates APIs to reflect these calculations, so the customer is paying the right plan amount + VAT on a recurring basis. Octobat will listen for renewals, and updates the subscription accordingly, using a 16% tax rate. In that case, the final price paid by the customer will change.

The change will be performed only on renewal. We are listening to the Stripe invoice.created event webhooks, so the VAT rate cut is reflected one hour before the payment actually occurs.

Customers using Beanie in tax-exclusive mode are also concerned by this change.

Before July 1st, here is what happens, for a €100 recurring plan:

Plan Amount

VAT rate

Charged Amount

Revenue

VAT

€ 100

19% (exclusive)

€119

€100

€19

And starting on July 1st, here is what will happen, for the same €100 recurring plan, after the subscription is updated:

Plan Amount

VAT rate

Charged Amount

Revenue

VAT

€ 100

16% (exclusive)

€116

€100

€16

Reduced-rate updates

Octobat will apply the same rules for the German reduced VAT rate cut from 7% to 5% as well.

Particular cases: Specific tax rate and hard-coded API rates

Businesses using the specific tax rate setting in Octobat in order to reflect the German 19% VAT rate for every transaction must update this setting in the Configuration > Taxes > Tax Settings as follows:

API users that do not use the Tax Evidence API endpoint, but rather hardcode the tax percentage (applied_rate parameter) when creating items must also update their code accordingly.

December 31 planned reversal

The boost measure is scheduled to end on Dec. 31st, 2020, resulting in VAT rates getting back to their pre-July 1st percentages. Octobat has already implemented the scheduled updates and will monitor closely the situation if any update or delay should occur.