CartSella is multilingual out of the box. It follows the languages you have already published on your Shopify store, translates most of the promotional copy you write, and ships its own widget labels in six languages. There is no language list to configure inside CartSella.

CartSella follows your store’s languages

CartSella reads the languages published on your Shopify store, under Settings → Languages in your Shopify admin. Whatever is published there is what CartSella serves.
  • Your primary language is the base. It gets the text exactly as you typed it, untouched.
  • Every other published language gets its own version of your offers.
  • Unpublished or draft languages are ignored.
Publish a new language in Shopify and CartSella picks it up on its own. There is no equivalent setting inside CartSella, and nothing to switch on.

What gets translated automatically

When you save an offer, CartSella machine translates the shopper-facing copy on that offer into Portuguese, Spanish, French, German and Italian. Translation runs on save, and only for text that actually changed. If you edit an offer without touching a piece of copy, that copy keeps the translations it already had. Change the wording and CartSella retranslates that field.
Your primary copy is never round-tripped. English text is kept exactly as you wrote it, and only the other five languages are generated.

What is not translated automatically

Be aware of these, because they are easy to assume:
  • Upsells. Upsell headlines, button labels and descriptions are used as typed.
  • Campaign links, countdown timers, promo blocks and seasonal campaigns. Any copy you write in these is used as typed.
  • Internal names and internal notes. These are never shown to shoppers, so they are never translated.
  • Product names and prices. These come from Shopify, and follow whatever translations and currency you have set up there.
For anything not covered by automatic translation, write copy that reads well across your markets, or run separate offers per market and use the Markets eligibility rule to target each one. See Advanced offer settings.

What shoppers see when a translation is missing

CartSella never shows an empty string. The fallback chain is:
1

Exact language match

A shopper browsing in French gets the French version.
2

Base language match

A regional variant falls back to the base language, so a shopper in pt-BR gets the Portuguese text if there is no Brazilian Portuguese version.
3

Your original text

If nothing matches, the shopper sees the text exactly as you typed it.
So a store published in Dutch will show your offers, in the words you wrote them, because Dutch is not one of the five languages CartSella generates. Nothing breaks and nothing goes blank, the copy simply is not localised.

Widget labels follow the storefront language

Separate from your own copy, CartSella’s blocks ship with their own built-in labels: the Add button, the See all link, the Buy and off wording in a discount table, quantity controls, timer units, dismiss buttons, and so on. These are fully translated into six languages: They follow the storefront language automatically. A shopper browsing your store in Spanish sees Spanish widget labels, with no setup on your side. If a shopper’s language is not on this list, the labels appear in English.
Several of these labels can also be overridden on the Customize page, for example the button text on an upsell. An override you write there replaces the built-in label in every language, so use it for wording you want consistent across markets, not for translating.

The CartSella admin

The CartSella admin interface itself is available in English, Portuguese, Spanish, French, German and Italian. It follows your Shopify staff account language, and falls back to your store’s primary language. This is separate from what your shoppers see, so changing it does not affect your storefront.

Editing a machine translation

CartSella does not offer per-language text fields. There is no screen where you type the French version of an offer message by hand. If a generated translation is not right, your options are:
1

Reword the original

Machine translation follows your source text closely. Simpler, shorter source copy usually translates better. Save the offer and the translation regenerates.
2

Split by market

Create one offer per language, write its copy in that language, and add the Markets or Customer location eligibility rule so each shopper only sees the right one. This gives you exact control over every word.
Duplicating an offer per market means each copy counts as a separate active item against your plan cap. Check Plans and billing before splitting a promotion across many languages.

Troubleshooting

Check when the offer was last saved. Translations are written on save, so an offer saved before you published that language, or before the copy changed, still carries the old text. Open it and save it again. Upsells, campaign links, timers and seasonal campaigns are used as typed and never machine translated, so check whether the copy lives there instead.
Translations are written when an offer is saved. Open the offer and save it again to publish it into the newly added language.
CartSella generates Portuguese, Spanish, French, German and Italian. Any other published language falls back to your original text. That is expected behaviour, not a fault.
Widget labels follow the storefront language, so this usually means the shopper’s session is not actually on the Portuguese storefront. Check that the language is published and that the language selector in your theme is switching correctly.
Still stuck? See Troubleshooting.