Commerce glossary

Translation and currency

The languages a store is shown in, the translated copy and URLs for each one, and the currency, prices and import charges a shopper abroad sees.

32 parts and 16 phrases. Apps in this area include Weglot, Langify, Transcy, Shopify Translate & Adapt, Shopify Markets.

Languagesi18n.languageShowWhich languages the store has, the translated copy for each, and how a shopper reaches the right one.
Store languagesi18n.language.setupShowThe default language and the other languages the storefront is published in.

How to extend

  • Core onlyThe language list is one core store setting that every translated page and URL reads.
PartLitestore todayHow to extend
Default languagei18n.language.setup.default_languageThe default language is the one the store's own copy is written in and the one shown when no other language is chosen.
Coremodules/markets/locale.ts
Core only
Enabled languagesi18n.language.setup.enabled_languagesThe enabled languages list holds every language the storefront is published in besides the default.
Coremodules/markets/channel-locales.ts
Core only
Fallback to defaulti18n.language.setup.fallbackA fallback shows the default-language text for any field that has no translation yet, so a page never shows an empty field.
Coremodules/markets/translations/content-translations.ts
Core only
More languagesi18n.language.setup.more_languagesA wider language list adds languages beyond the starter set, including ones written right to left.
Planned
Core only
Translated contenti18n.language.contentShowThe translated text stored for each product, category, collection and page, and how it is written.

How to extend

  • Assistant toolMany side by sidesaveTranslationTranslations are written through the assistant's saveTranslation tool, which a plugin or agent can call the same way.
  • ProviderOne per storetranslation providerA machine translation service such as DeepL or Google Translate plugs in as one provider that fills untranslated fields.
  • EventMany side by sideevent.product.updatedevent.product.createdA translation plugin listens for product changes to mark or refresh translations that are out of date.
PartLitestore todayHow to extend
Field translationi18n.language.content.field_translationA field translation stores one language's version of a field, such as a product name, description or long content.
Coremodules/markets/translations/records.ts
Assistant tool · manyProvider · oneEvent · many
Translated search texti18n.language.content.seo_translationA translated search text stores the meta title and meta description of a page in one language.
Coremodules/markets/translations/records.ts
Assistant tool · manyProvider · oneEvent · many
Translated URL slugi18n.language.content.translated_slugA translated slug stores the URL path of a product, category or collection in one language.
Coremodules/markets/translations/records.ts
Assistant tool · manyProvider · oneEvent · many
Assistant translationi18n.language.content.assistant_translationThe store assistant writes a translation in chat and saves the given fields for one language after the operator approves it.
Coremodules/assistant/agent-tools.ts
Assistant tool · manyProvider · oneEvent · many
Machine translationi18n.language.content.machine_translationA machine translation service translates every untranslated field of the store into a chosen language in one run.
Plugin
Assistant tool · manyProvider · oneEvent · many
Manual translation editi18n.language.content.manual_editA manual edit screen shows the source text next to its translation so a person corrects the translated text field by field.
Plugin
Assistant tool · manyProvider · oneEvent · many
Out-of-date flagi18n.language.content.out_of_syncAn out-of-date flag marks a translation whose source text changed after it was translated.
Plugin
Assistant tool · manyProvider · oneEvent · many
Fixed term listi18n.language.content.fixed_termsA fixed term list holds words that are never translated or always translated one way, such as brand names.
Plugin
Assistant tool · manyProvider · oneEvent · many
Interface text translationi18n.language.content.interface_textInterface text translation stores the storefront's fixed labels, such as buttons and checkout text, in each language.
Plugin
Assistant tool · manyProvider · oneEvent · many
Reaching a languagei18n.language.routingShowThe URL each language lives at and how a shopper is sent to, or picks, a language.

How to extend

  • SlotMany side by sidestorefront.slot.global.footerA custom language or country picker renders in a storefront slot next to or in place of the built-in selector.
PartLitestore todayHow to extend
Language path prefixi18n.language.routing.path_prefixA language path prefix puts each language under its own path prefix, such as /fr/ for French pages.
Coreproxy.ts
Slot · many
Language domaini18n.language.routing.domainA language domain serves one language on its own domain or subdomain, such as fr.example.com.
Plugin
Slot · many
Language switcheri18n.language.routing.switcherA language switcher is a storefront control that lists the enabled languages and moves the shopper to the same page in the chosen one.
Coremodules/storefront/shell/footer/locale-selector.tsx
Slot · many
Saved language choicei18n.language.routing.saved_choiceA saved choice stores the shopper's chosen language and country in a cookie and applies it on the next visit.
Coremodules/markets/locale.ts
Slot · many
Automatic redirecti18n.language.routing.auto_redirectAn automatic redirect reads the browser language and the visitor's country and sends a first-time visitor to the matching language path.
Coreproxy.ts
Slot · many
Language suggestion messagei18n.language.routing.suggestion_messageA suggestion message shows a visitor a message offering the store in their browser's language without moving them.
Plugin
Slot · many
Currencies and pricesi18n.currencyShowThe currency prices are shown and charged in, and prices set per country.
Display currencyi18n.currency.displayShowThe currency prices are shown in, how foreign amounts are converted and how converted prices are rounded.

How to extend

  • ProviderOne per storecurrency conversion providerLitestore is moving to one store currency, so showing or charging in other currencies is left to one plugin provider.
PartLitestore todayHow to extend
Store currencyi18n.currency.display.store_currencyThe store currency is the one currency every price, order, payout and ledger amount is recorded in.
Coremodules/markets/currency.ts
Provider · one
Converted display pricei18n.currency.display.converted_displayA converted display price shows a price in the shopper's currency while the order is still charged in the store currency.
Plugin
Provider · one
Checkout charge currencyi18n.currency.display.charge_currencyA checkout charge currency is a currency the shopper is charged in at checkout, different from the store currency.
Plugin
Provider · one
Exchange rate sourcei18n.currency.display.exchange_rateAn exchange rate source supplies the rate between two currencies, either fetched from a rates service on a schedule or entered by hand.
Plugin
Provider · one
Price rounding rulei18n.currency.display.roundingA rounding rule moves a converted price to a set ending, such as .99 or the next whole number.
Plugin
Provider · one
Currency switcheri18n.currency.display.currency_switcherA currency switcher is a storefront control that lists the offered currencies and reprices the page in the chosen one.
Plugin
Provider · one
Prices by countryi18n.currency.pricingShowPrices set by hand for a country or region instead of converted from the store price.

How to extend

  • ProviderOne per storeprice list providerCountry price lists replace the store price at read time, so one plugin owns them.
PartLitestore todayHow to extend
Country price listi18n.currency.pricing.country_price_listA country price list holds fixed prices for some or all products that apply to shoppers in one country or region.
Plugin
Provider · one
Country price adjustmenti18n.currency.pricing.percentage_adjustmentA country price adjustment raises or lowers every price for one country by a set percentage.
Plugin
Provider · one
Tax-inclusive display by countryi18n.currency.pricing.tax_inclusive_displayTax-inclusive display shows prices with the country's sales tax or VAT already added for shoppers in that country.
Plugin
Provider · one
Selling abroadi18n.cross_borderShowImport charges and per-country copy for shoppers in another country.

How to extend

  • ProviderOne per storeduties providerA duties service calculates import charges at checkout as one provider.
  • SlotMany side by sidecheckout.slot.summary.above_pay_buttonA duties line or message renders in a checkout slot under the totals.
PartLitestore todayHow to extend
Duties at checkouti18n.cross_border.duties_at_checkoutDuties at checkout calculates the import duty and import tax for the destination country and adds them to the order total before payment.
Plugin
Provider · oneSlot · many
Duties-on-delivery messagei18n.cross_border.duties_noticeA duties message tells the shopper that import charges are due on delivery and are not in the order total.
Plugin
Provider · oneSlot · many
Country-specific contenti18n.cross_border.country_contentCountry-specific content shows a different text, image or product list to shoppers in a chosen country.
Plugin
Provider · oneSlot · many
Country product restrictioni18n.cross_border.country_restrictionA country restriction hides chosen products from shoppers in a country where they may not be sold.
Plugin
Provider · oneSlot · many

What the phrases mean

The words apps use for a feature, and the plain parts the feature is made of, in the order they happen.

Phrases left out

These phrases mean different things at different apps, so the glossary doesn't map them.

  • marketsShopify uses it for a bundle of country, currency, language, domain and price settings, not one part.
  • localizationVendors use it for translation alone, for currency alone, or for both together.
  • hreflangIt is a search-engine tag and belongs to the SEO category.

Sources

The app documentation these parts were checked against.