EU VAT copy per language is a knockout: empty fields remain a fallback, and Tax Exempt is not on the Free plan.
2026-11-11
Floris-jan de Vries

Which Shopify B2B app shows VAT copy in the EU market's language?

A French buyer lands on a Dutch wholesaler’s French URL. The theme says “numéro de TVA”. The app’s checkout line still says “VAT number”, or it looks translated because a grey placeholder was never saved. On 11 November 2026 I opened the live listing for OO ‑ B2B & Wholesale, the Translations article under EU Tax exemption, the older VAT Text Settings page, the module map, and Step 4 on Markets. The translations article and the module map both say 29 days ago. The VAT text page says 9 months ago.

Markets decides how the price shows tax. This app’s article decides whether its own VAT sentence is stored in French. Those are different doors. Re-open them if Tax Exempt moves onto Free, if an empty field starts counting as a saved value, or if a pricing card grows a language list. This morning’s cards had no such list.

The save is the knockout, not the theme

Shopify can translate a theme. It does not, on the pages I opened, fill this app’s VAT strings for you. The Tax Exempt article describes its own Translations screen.

Must-have

It fails when

VAT copy follows the buyer’s published language

French was enabled in Shopify and never saved in the app

An empty field means fallback, not a blank button

You edit the placeholder and walk away

The plan actually includes Tax Exempt

Free stops at one price list and one registration form

Market tax display matches the checkout path

The label is French and the price mode is still wrong

You do not stretch the article to the whole wholesale UI

Registration, volume tables, and bulk grids are not in this translation page

The listing’s Languages row says English. That is the App Store admin language. It is not the storefront. A review on 21 April 2026, Rohleder AT in Austria, mentions built-in translation. One card is not a spec. The spec is the article.

Empty on purpose

The Tax Exempt translations page, marked 29 days ago, uses a stack. A saved translation for the active language comes first. Text Settings come next. The default locale is last, and it shows up as the placeholder in the input. Fields start empty. Empty does not mean “no text”. It means “use the next layer”. Shopify does not store those fields until you save them. They can look fine, especially on a language you added this week, and still disappear because nothing was persisted.

*Apply all default translations for all languages* copies the defaults into every language and saves them. The article points at that button right after you publish a language in Shopify, and then at a manual pass when the legal word changes: TVA, USt-IdNr., BTW. The mistakes it names are concrete: expecting custom text from an empty field, editing the placeholder instead of a stored value, and forgetting Save after a new language.

The older VAT Text Settings page, nine months on its own label, is the same checkout surface in an earlier write-up. Customer-facing VAT messages, one tab per language, the examples being German, English, French, and Dutch, stored only after *Save translation*. An empty field is not an override. That page is checkout messaging. I did not read a registration-form article or a bulk-form article that said those screens translate the same way, so this note does not claim they do.

Translation tabs NL, DE, and FR with an unsaved placeholder and Save translation

The figure is a diagram of that fallback. The grey word in the field is a placeholder. The docs say it is not stored until you save.

Tax display is a Markets setting

Step 4, also 29 days ago on the page, says Tax Exempt does not calculate tax. It relies on Shopify’s registrations and on the market’s tax display. Draft-order logic wants *Show as included*. Standard checkout wants *Dynamic pricing*. A store that shows prices excluding VAT is told to leave draft-order logic off and set tax display to Dynamic. Translating the button does not flip that control. A wrong tax display is still a wrong price, in any language.

The module map, same 29-day line, puts Tax Exempt, tax display, volume pricing, and Login to see prices on Starter. Free is one active custom-pricing list and one active registration form. Growth is bulk forms, quotes, order limits, and the wholesale cart. Multilingual VAT copy is therefore not a Free feature. On this morning’s listing Starter is $22 a month or $220 a year, and Growth is $37 or $370, both with a 14-day trial.

What the listing actually printed

Live listing, 11 November 2026: Built for Shopify, 5.0 from 34 reviews (33 fives, 97 percent, and one four, 3 percent). The three cards on screen: 6 October Sensorkranenwinkel.nl, reverse-charged VAT and fast support; 11 June POPlab Sounds, a renamed note field that flows into bookkeeping; 21 April Rohleder AT, a FAQ, a chatbot, the price, and translation. The four-star text was not on those cards. Launched 9 February 2024. Works with Checkout, Flow, and Admin. Resources showed the privacy policy and, in this fetch, no App Documentation row. Data access includes locales, locations, and Shopify Markets, plus customers and companies. A scope is permission to read settings. It is not a stored French sentence.

Prices match 10 November: Free, Starter $22/$220, Growth $37/$370. Hero bullets: price lists and volume breaks per customer, tag, or company; registration forms; quotes with AI formulas, bulk forms, and repeat orders; EU tax exemption, prices incl. or excl. VAT, login to see prices; a wholesale cart with extra fields and limits. No bullet says multilingual. Citing the hero as proof of a translated bulk grid cites a page that does not say that.

When one language is the whole shop

Stay with the theme and with Markets when the shop has one language, tax display is already right, and nobody needs a foreign VAT word on the checkout line. The theme translation covers the theme. This app’s VAT strings live on their own screen, with their own save.

A second market that shares a language and needs a different legal word is where that screen starts, and where Starter starts, because that is the plan that includes Tax Exempt. Which VAT number actually removes the tax is the VIES checklist. This page is the language of the sentence.

Sources opened this morning

On this site

The VIES path is the checklist. Registration with approval is the 9 November checklist. Which plan carries the bill is the pricing-at-scale note. Companies versus this app: the 4 November piece. Which URL may carry a claim: the sources note. The app index is apps. Shopify apps as a service: apps and integrations.

What still holds on 11 November 2026

A French storefront URL does not prove the VAT sentence was saved in French. Tax Exempt’s docs require a save, and the module map puts that module on Starter, not on Free. The listing does not name translation in the hero. One review does. Install from this listing when that saved VAT copy is the knockout: OO ‑ B2B & Wholesale. Drop the conclusion if empty fields become persistent, or if Tax Exempt shows up on the Free card.

This blog is presented to you by

team member foto

Floris-jan de Vries

Co-owner / Back-end developer / Shopify Expert

As a full-stack developer, Floris-Jan ensures the technical logic behind the design. He also uses his extensive knowledge of Shopify every day to provide our clients with the best possible support.

social icon

You may also like:

A Shopify rate by postal code needs a condition and a carrier. Advanced is the gate. Grow yearly is not an automatic yes.

shopify

2026-11-11
Floris-jan de Vries

When is a postal code a must-have for a Shopify shipping rate?

Free Shopify size chart value: OO Free prints no publish cap, while Kiwi Free stops at 3 charts plus a watermark.

shopify

2026-11-11
Floris-jan de Vries

Which free Shopify size chart is worth it past three products?

online origins logo full

The Shopify Select partner for ambitious e-commerce businesses that want to grow!

linkedin online origins iconinstagram online origins icon

Reviews

5/5

Check on Google

Mail: info@onlineorigins.nl

Tel: 073 234 0612

KVK: 89825624

BTW: NL865123639B01

Bruistensingel 500,
5232 AH 's-Hertogenbosch
Cookies

© 2026 Online Origins