Selling into the EU from a Shopify store means your invoices stop being a courtesy and become tax documents. A wrong or missing invoice can cost your business customer their input VAT deduction, and can cost you penalties and painful audits.
The good news: the core rules come from a single source — the EU VAT Directive (2006/112/EC) — so once you understand the pattern, country differences are manageable. This guide covers the mandatory fields, when you must issue an invoice at all, what the One Stop Shop changes, and how to correct mistakes legally.
The mandatory fields (Article 226)
Article 226 of the VAT Directive lists what a full VAT invoice must contain. Member states implement it with minor variations, but the core set is:
- Date of issue
- A sequential number, based on one or more series, that uniquely identifies the invoice
- Your VAT identification number
- The customer's VAT number — when the customer is liable for the VAT (reverse charge) or for intra-EU supplies
- Full name and address of both you and your customer
- Quantity and nature of the goods or services supplied
- Date of supply or payment, if it differs from the invoice date
- Taxable amount per VAT rate or exemption, the unit price excluding VAT, and any discounts or rebates not included in the unit price
- The VAT rate(s) applied
- The VAT amount payable, in the currency of the country where the VAT is due
- Special mentions where applicable: "Reverse charge", a reference to the exemption for exempt supplies, "Margin scheme" references, "Self-billing", and similar
Two of these deserve extra attention from Shopify merchants.
Sequential numbering is not optional
The invoice number must come from an unbroken, controlled sequence. Shopify's order numbers do not qualify — they are assigned before payment and develop gaps from cancelled and test orders. Auditors across the EU read numbering gaps the same way: as possible unrecorded revenue. Use a dedicated invoice counter, assigned when the invoice is issued, with no gaps you cannot explain.
The VAT breakdown must be per rate
If one order contains a standard-rated product and a reduced-rated one (books, food, children's items — rates vary by country), the invoice must show the net amount, rate and VAT amount separately for each rate. A single blended total is not compliant.
When do you actually have to issue an invoice?
This is where merchants overcomplicate or underdeliver. The directive draws a clear line.
B2B: always
For supplies to another business, an invoice is mandatory everywhere in the EU (Article 220). No exceptions worth planning around. Deadlines vary — for intra-EU supplies, the invoice is due by the 15th of the month following the supply.
B2C: usually not required — but check the country
For sales to consumers, the directive itself does not require an invoice, but Article 221 lets each member state impose one. The practical picture for a cross-border Shopify seller:
- Germany: no general B2C invoice obligation for typical e-commerce goods (it applies mainly to supplies connected with real property). But German consumers expect a proper Rechnung, and if you issue one, it must be fully compliant.
- France: B2B invoices are strictly mandatory; typical B2C goods sales to consumers do not generally require a full facture, though customers can request one.
- Italy: domestic Italian sellers must clear invoices through the SDI platform (FatturaPA format); foreign distance sellers using OSS are outside that system for their B2C sales into Italy.
- Distance selling without OSS: if you are VAT-registered in the destination country instead of using OSS, that country's invoicing rules apply to you — including any B2C invoice obligations.
The pragmatic answer for a Shopify store: issue a compliant invoice for every order, B2B and B2C alike. It costs nothing when automated, satisfies every member state's rules at once, and your customers (and their accountants) will ask for invoices anyway.
OSS in three paragraphs
The One Stop Shop (Union OSS) lets you charge the destination country's VAT rate on intra-EU B2C distance sales and report everything in a single quarterly return in your home country, instead of registering for VAT in every country you ship to. Below a combined €10,000 per year of intra-EU B2C sales, micro-sellers may instead charge their home rate.
OSS has a pleasant side effect on invoicing: for supplies declared through OSS, the EU removed the obligation to issue an invoice for those distance sales, and where you do issue one, your home country's invoicing rules apply rather than the destination's. One rulebook instead of twenty-seven.
The trade-off is record-keeping: OSS records must be kept for 10 years and produced electronically on request. Your invoices — with correct per-country VAT rates — are the natural backbone of those records, which is another argument for invoicing every order even when not strictly obliged.
Refunds: credit notes, not edits
When you refund an order, the original invoice must stay exactly as issued. The legal instrument for the correction is a credit note (corrective invoice): a separate document, with its own sequential number, that references the original invoice number and shows the negative amounts and the VAT being reversed, per rate.
This matters for three reasons. First, immutability of issued invoices is a hard legal requirement in several member states (Germany's GoBD, Italy, Spain's incoming Verifactu regime). Second, your customer needs the credit note to correct their own VAT deduction. Third, your VAT return and OSS return must reconcile — a deleted or silently edited invoice makes that impossible.
Partial refunds work the same way: one credit note per refund event, covering exactly the refunded lines and their VAT.
Common Shopify-specific pitfalls
- Treating the order confirmation as the invoice. It lacks your VAT number, a per-rate breakdown and a legal invoice number.
- Invoices rendered from live product data. If your app rebuilds PDFs from the current catalog, a price change mutates historical documents. Invoices must snapshot the data at issue time.
- Missing customer VAT IDs. Shopify checkout doesn't natively capture VAT numbers (outside Plus), yet the buyer's VAT ID is mandatory on reverse-charge invoices. You need a capture-and-validate step.
- VAT amount in the wrong currency. If you sell in SEK but the VAT is due in EUR (or vice versa), the VAT amount must also be expressed in the currency of the country where the tax is due.
- No credit notes for refunds. Refunding in Shopify does not create a tax document by itself.
The takeaway
EU invoicing rewards systematic sellers. One compliant template, a real sequential number series, per-rate VAT breakdowns, OSS for B2C distance sales, and credit notes for every refund — set that up once and it works in every member state. Set it up by hand and it consumes hours; leave it broken and it surfaces at the worst possible moment, in an audit or in a B2B customer's rejected VAT deduction.
Facturely generates audit-proof invoices for Shopify stores automatically — gapless numbering, correct per-rate VAT breakdowns for every EU country, automatic credit notes on refunds, and OSS-friendly exports.
This article is general information, not tax advice. For your specific situation, consult a qualified tax advisor.