Translate checkout blocks
In short
Save the block, then pick a language tab above the block builder. Click Copy from Default to start from your default-language content, edit the text for that language and click Save Translation. Buyers checking out in that language see the translated block; others see the default.
✓ Applies to
- Advanced and Deluxe plans
- Stores with more than one published language
- Every block type in a saved block
✕ Doesn't apply to
- Shopify's own checkout text, such as field labels and buttons. Shopify translates those
- Checkout rule error messages
Before you start
- Publish the languages in Settings > Languages in your Shopify admin. Checkout Ninja only shows tabs for published languages.
- Save the block at least once. Until then, the builder shows “Save this block first to enable multi-language translations.”
- A plan that includes Multi-Language Translation. Without it, the tabs are replaced by a Multi-Language Translation card with an Upgrade to Unlock button.
Steps
- In Checkout Ninja, go to Blocks and open a saved block.
- Above the builder, click the tab for the language you want to translate. Your default language is labelled (Default).
- The builder switches to that language. Its heading reads “Managing blocks for” and the language code. A No translation badge shows if the language has nothing saved yet.
- Click Copy from Default (it shows your default language in brackets) to copy your default-language block types into this language. The button only appears while the language has no translation yet.
- Click each block type, edit its text for this language and click Done. The edit window shows a Translation Mode badge.
- Click Save Translation. The Unsaved badge disappears.
- Repeat for each language.
If you switch tabs with unsaved changes, the app asks you to Save and switch, Discard changes or Cancel.
Each language holds its own full copy of the block’s content. You can reorder, hide or remove block types for one language without changing the default. It also means later edits to the default language don’t carry over. Make the same edits in each language tab.
Per-field translations in upsell blocks
Some upsell blocks also have Manage translations next to individual text fields. Click it, add the languages under Add languages, and enter the text for each. When a buyer’s language has no text there, the field falls back to the base language (for example fr for fr-CA), then to English.
Verify it worked
- Open your checkout in the translated language, for example through the store’s language selector or that language’s domain.
- The block shows the translated content.
- Switch the checkout to a language you haven’t translated. The block shows your default-language content.
Limitations
- Visibility conditions, Status and the Block ID are shared by every language. To leave content out of one language, mark those block types Inactive in that language’s tab.
- Tabs only list languages that are published in your Shopify admin. To add one, go to Settings > Languages.
- Shopify translates its own checkout text. Checkout Ninja only translates the content of your blocks.
Troubleshooting
The language tabs don’t show. Your store has only one published language, or you haven’t saved the block yet. Publish a language in Settings > Languages, save the block and reload.
Checkout still shows the default language. Check that you clicked Save Translation, not only the page’s Save, and that the tab no longer shows No translation. Full checklist.
A new block type isn’t in the translation. You added it to the default language after translating. Open the language tab and add it there with Add block. Copy from Default is only offered while a language has no translation.
Frequently asked
Why don't I see language tabs? +
The tabs only appear when your store has more than one published language. Publish a language in Settings > Languages in your Shopify admin, then reload the block.
What do buyers see if a language has no translation? +
The block in your default language. A regional language such as fr-CA uses the fr translation when there's one.
If I change the default-language block later, does the translation update? +
No. Each language keeps its own saved copy of the block. After changing the default, open each language tab and make the same change there.
Can I translate the visibility conditions? +
No. Visibility conditions and Status are shared by all languages. Only the block content is translated.