Easy Tickets & Events docs

Selling on your storefront

Customer languages: each shopper's own language

Send each shopper the ticket popup, emails, PDF tickets and ticket page in the language they shop in on your multilingual Shopify store, with translations you type yourself.

Updated September 24, 2026

Customer languages gives each shopper the storefront popup, ticket emails, PDF tickets and ticket page in the language they shop in. It is one switch for the whole shop, and you type the translations of your own texts yourself.

Switch it on

  1. Open Settings and go to the Customer languages section.
  2. Switch on Customer languages.
  3. Shopify asks for two optional permissions, to read and write translations, on one approval screen. Approve them so your event names also reach the Shopify product page.

Shops installed on or after September 14, 2026 start with the switch on. Older shops start with it off. The first-run setup wizard asks the same question on its last step, "Your customers".

Declining the permissions is allowed. The app's popup, blocks, emails and ticket pages still use your translations. Only the Shopify product page keeps Shopify's own text. The section then shows "Shopify needs your permission to show this on the product page." with a Try again button.

With the switch off, every shopper gets your default customer language, and nothing else in the app changes.

Your store's languages

With the switch on, the section lists Your store's languages. Each language published in Shopify gets a row with a flag, a status and its own switch. Manage languages in Shopify opens Shopify's language settings.

  • English, Spanish, French, German, Portuguese and Danish arrive switched on, marked "Built in". Regional versions count as the same language, so Austrian German is German.
  • Any other language arrives switched off, marked "Needs your phrases". It has no built-in wording, so write its phrases under Settings > Storefront text first. Anything left unwritten shows in English.
  • Your default language reads "Default - always on".

If you unpublish a language in Shopify, the app stops serving it. Your on or off answer comes back when you publish it again.

The default customer language is chosen under Settings > Storefront text > Default customer language. It must be one of the six built-in languages. It is the language you write your event texts in, and the fallback for every shopper.

How the shopper's language is chosen

On the storefront, Shopify tells the app which language the page is shown in, for example the German version of your store. The app looks for it among the languages switched on: the exact regional version first, then the plain language, then any other region of it. With no match, the shopper gets the default customer language.

The app never guesses from the browser language or the delivery country.

When the order arrives, the ticket keeps a language. It takes the language of the checkout, or else the language carried over from add to cart. At the Shopify POS till, it is the language staff choose for the customer. A free registration keeps the storefront's language.

Everything sent later reads the ticket's language and checks it against the languages switched on at that moment:

  • the confirmation email, and the reminder and follow-up at the moment they go out
  • the PDF ticket and the online ticket page
  • the calendar file from the ticket page
  • the claim and transfer pages
  • the tickets on the thank-you and order status pages
  • the printed sheet at the POS till

Waitlist emails use the language the person signed up in.

The language is stored even while the switch is off, so turning it on later serves earlier buyers in their language. Emails sent before a translation existed are not sent again.

What you can translate

The app's built-in wording (buttons, labels, email phrases) ships in six languages. Settings > Storefront text lets you reword any built-in phrase per language.

Your own texts you translate per event on the Languages tab. It groups them like this:

GroupTexts
Product page (Event details)Event name, Description, Venue name, Venue address
Product pageAdd to cart, Buy now and Waitlist buttons, Refund protection label, Ticket type name, Promo banner
PopupHeader and intro texts, buttons, the waitlist and thank-you texts, attendee section title, questions, answer choices, add-on groups and add-ons, your own code
Ticket email, Reminder, Follow-up, WaitlistHeader title, greeting, message, button and footer texts, your own code
PDF ticketNotes, Tagline, Bottom bar text, Stub label, Pass label
Ticket pageContact label, Notes, your own code
Events pageTag

Text blocks you added to a template can be translated in that template's group. Translated answer choices must keep the same number and order, and the answer is saved in your default language.

The two checkout limit messages are set per language in Settings > Customer languages, under Checkout limit messages.

When a text has built-in wording, an empty translation shows the built-in wording for that language, never your text in another language.

The Languages tab

The event's Languages tab exists while the switch is on. A number on the tab counts texts still to translate.

  1. Pick a language with the Language picker at the top right.
  2. Type your translations. Search texts and Show only what needs work help you find rows.
  3. Save with the save bar, which saves the whole tab.

Each row shows "Built-in text", "Your text", "Translated" or "Out of date". Translations on this tab apply to this event and to its dates if it repeats. They win over the shared wording in Settings > Storefront text, and duplicating the event copies them.

If you later change the default-language text, its translations are marked "Out of date". They are kept, so you can review them.

The Event details tab also has an Editing language picker on the Event name row. It lets you type the name and description per language there.

Translate on a Customize page

Every Customize page has a Translate button and a Preview language picker once Customer languages is on. Your shop also needs to sell in more than one language for both to show. That covers the four emails, the PDF ticket, the online ticket page and the popup.

  1. Click Translate.
  2. Pick a language. Your default-language text shows as a reference.
  3. Type your translations and click Save. The preview switches to that language.

A template field you edit applies to your default language. Other languages keep the built-in wording for that field until you translate it. A test email sent from the page goes out in the language picked there. The editor itself is covered in the drag-and-drop editor for emails, tickets and the popup.

Custom HTML from the code editor has one version per language. A language without its own version gets the default-language code, and the Languages tab warns you.

Reset to default on a Customize page resets that template in every language and removes its translations.

Translate & Adapt and the Shopify product page

The event name, description and ticket type names are also written into Shopify's own translations, the ones Translate & Adapt edits. The product page then shows them under your store's language switcher. Until a row reaches Shopify, the Languages tab marks it "Not on your product page yet".

Translations travel in both directions.

  • Opening the Event details or Languages tab reads Shopify's translations back. Refresh from Shopify on the Languages tab does it on demand.
  • A translation edited in Translate & Adapt after the app last wrote it wins and replaces the app's copy.
  • Clearing a translation in the app removes it from Shopify too.
  • An empty translation in Shopify is never copied into the app. If you delete one in Translate & Adapt, the app keeps its copy for its emails, PDF and ticket page. Clear it on the Languages tab as well.

Venue, questions, add-ons and template texts stay in the app only. They show on the app's popup, blocks, pages and emails.

See each ticket's language

On the event's Attendees tab, Choose columns offers a Language column with a flag and the language name. The attendee CSV gets a Language column whenever the switch is on. The Choose columns Language column shows only when the switch is on and your shop sells in more than one language.

What is not translated

  • The app's admin screens, the door check-in page and the POS staff screens.
  • Emails the app sends you. They use your App language.
  • The Zoom meeting title.
  • What goes to Klaviyo, Mailchimp and Flow. They get the event name in your default language, and Flow's Language field tells you the ticket's language.
  • Block labels in the theme editor, which are English only.
  • Transit start and destination fields.

There is no machine translation and no per-event switch. An event you never translate keeps working in the default language.

The admin language is separate

The language of the app's own screens is the App language under Settings > Language & region. It does not change what shoppers see. Settings explains it, together with Storefront text.

See also

Frequently asked questions

Does the app translate my texts automatically?

No. The app's own wording is built in for English, Spanish, French, German, Portuguese and Danish. You translate your own texts yourself, such as the event name or an edited email greeting. Use the event's Languages tab or the Translate button.

How does the app know which language a shopper uses?

Shopify tells the app which language your storefront is showing the shopper. The app never guesses from the browser language or the delivery country. If that language is not switched on in the app, the shopper gets your default customer language.

Which language do a ticket's emails use?

The language stored on the ticket, which is normally the language of the checkout. Reminders and follow-ups use it too, checked against your languages at the moment they are sent.

Do my Translate & Adapt translations reach the app?

Yes, for the event name, the description and the ticket type names. The app reads them back when you open the event's Event details or Languages tab. A translation edited in Translate & Adapt after the app last wrote it wins.