Spanish customer
Tu carrito te está esperando
Has dejado tus zapatillas en el carrito. Siguen reservadas, y el envío a España sigue siendo gratuito.
Chargement de la page...
MULTI COUNTRY STORES
A store selling in several countries often recovers in a single language, or in a translation done once and for all. Here is what that costs, and how to do it differently.
THE ANSWER, RIGHT AWAY
The customer's language is already in the store's data: the order's language, the market it came from. The message is then written in that language, for that cart, rather than translated from a single template. There is no flow to duplicate per market, and no translation to maintain.
THE TRANSLATED TEMPLATE
A translated template is still a template: it carries the choices of its source language, and those choices do not survive the trip.
THE PROCEDURE
1
The order carries its language and its market. Nothing to ask the customer, nothing to guess from their address.
2
Language does not change the decision to write or stay silent. A cart not worth a message is not worth one in any language.
3
The message is written for that cart and in that language, with the store's writing register and its brand rules, the same everywhere.
4
One sequence for every market, stopping as soon as the customer replies or buys. No duplication per country.
ONE CART, TWO CUSTOMERS
Same store, same product, two markets. The two messages are not translations of each other.
Spanish customer
Tu carrito te está esperando
Has dejado tus zapatillas en el carrito. Siguen reservadas, y el envío a España sigue siendo gratuito.
German customer
Ihr Warenkorb wartet noch
Ihre Sneaker liegen weiterhin im Warenkorb. Wir haben sie für Sie reserviert, der Versand nach Deutschland bleibt kostenfrei.
The first one uses the familiar form, the second the formal one, and neither mentions a country that is not its own. A translated template would have settled that once for both.
THE LANGUAGES
The list is served from the product configuration, not copied by hand. It is available on every plan.
WHERE THIS FAILS
WHAT TO REMEMBER
WHAT IT RESTS ON
Everything above rests on public references: language and market already exist in the order data, language tags have a standard, and local formats have a repository.
Shopify
The Order object in the Admin GraphQL API
An order carries `customerLocale`, the language the customer ordered in. That is the data the first step of the procedure rests on: read the language where it already is.
Shopify
Markets, selling in several countries
The reference for the market an order was placed on. Market and language are two different things, and confusing them means writing in English to a Belgian customer.
IETF
RFC 5646, tags for identifying languages
The standard separating a language from a regional variant. It explains why one template per language fails wherever the variant matters, from Portuguese in Portugal to Portuguese in Brazil.
Unicode
Unicode CLDR, the locale data repository
Date, number and currency formats and plural rules, per locale. This is what word-for-word translation leaves behind: the concrete markers stay those of the original market.
What is left is looking at your own carts, market by market.
Start the 14-day trial14-day free trial · No credit card required