SerhiiNadolskyi
Hire me

Woodworking-supplies shop · DE · 2024–2025

EU VAT rules, PDF invoices and free shipping for a WooCommerce shop

Business buyers from other EU countries now see the right tax note at checkout and on the invoice, and my custom work survives theme updates.

Checkout & invoice
1tax rule

The same rule drives the checkout notice and the PDF invoice, so both always agree.

Safe from updates
1child theme

I moved the custom code into a child theme tested against a clean parent, so updates don't wipe it.

A small German shop sells joinery supplies across the EU. Another developer at the agency built it, and the custom WooCommerce work came to me as a separate job.

Business buyers from other EU countries couldn’t enter a VAT number at checkout, so the shop couldn’t show a tax-free delivery the way German law requires. I found that the new block checkout ignored the field. Once the classic checkout was back, the field worked.

Then I reduced the tax rule to one condition: the buyer is outside Germany and gives a valid VAT number and a company name. The same rule drives the notice at checkout and the PDF invoice, so both always agree. The checkout notice needs PHP and JavaScript together, because the server can’t see fields that aren’t submitted yet.

I also made custom invoice and packing-slip templates. They show the tax note only when the rule holds, carry product images, and have a footer that splits any number of fields into equal columns the client can edit. Postcode and region labels now follow the selected country, through a maintained copy of WooCommerce’s address script that updates don’t overwrite. Inside Germany, free shipping above a set order value is selected in the cart by a script that recalculates the total.

When a theme update wiped the custom work

After one theme update the customisations were gone. Before fixing anything I gave the agency an inventory and a plan. Then I moved everything into a child theme and tested it against a clean parent theme. That test also showed an old invoice template the PDF plugin still read from the parent, and I removed it.

The live shop runs on an active child theme today.

Contact

Have something similar?

Use the form or message me on LinkedIn.

Already working with me on Upwork? Write there.