How it works
The CSV export lists every storefront text for the selected language, from the course player to the checkout thank-you page, order status page and My Courses, with its default wording and your current text. You fill in the your text column and import the file into the same language. Blank cells change nothing, and an import never deletes text.
The CSV columns
Every export has the same four columns, in this order:
| Column | What it holds | On import |
|---|---|---|
locale |
The language: all for All languages, or a code such as fr, de or pt-BR. Every row has the same value. |
Must match the language selected in the editor. |
key |
The text's ID, the same grey code shown under each field in the editor, such as homePage.title. |
Must be a text the editor lists. Don't change it. |
default text |
The built-in wording for that language, or English for All languages. | Ignored. It's there for reference. |
your text |
Your current wording, or blank if you haven't changed that text. | Blank keeps the current text. Anything else replaces it. |
How to translate storefront text with a CSV
1. Select the language
Open the storefront text editor and choose the language from the Language menu, for example French. The export and the import both use the language that is selected.
2. Export the CSV
Click Export → Export as CSV (spreadsheet). Alva Courses downloads a file named after the language code, such as storefront-text-fr.csv, or storefront-text-all.csv for All languages. The file holds your saved text only, not unsaved edits.
3. Fill in the your text column
Open the file in a spreadsheet app and type each new wording in the your text column. Keep the locale and key cells as they are, keep placeholders such as {{count}}, and leave a cell blank to keep the current text.
4. Save as CSV
Save the file as CSV with commas between columns. Choose CSV UTF-8 where your app offers it, so accented and non-Latin characters survive. Don't add columns, and don't remove or rename the locale, key or your text columns.
5. Import and check the preview
In the editor, with the same language selected, click Import, then Choose file. Alva Courses checks the file and shows the language it will import into, how many texts are changed and unchanged, and each change from the old wording to the new.
6. Confirm the import
Click the Import button that names the number of texts, such as Import 42 texts. The text is saved straight away, with no save bar step, and shows on the next storefront page load.
Import rules
- One language per file. If the file's language differs from the selected one, Alva Courses names both and imports nothing. Select the file's language and try again.
- All or nothing. If any row has a problem, nothing is imported, and each problem is listed with its row number. The header is row 1, matching your spreadsheet.
- The editor's text rules apply. Each text can be up to 500 characters, can't contain
<or>, and can only use the placeholders its default text uses. - Files up to 1 MB, in
.csvor.jsonformat. - Import never deletes. To remove text, use the reset buttons in the editor, then save.
On All languages, the preview lists separately any text you set under Customize Login that the file would change, because that text shows in every language.
Spreadsheet tips
Text that starts with =, +, - or @ is exported with an apostrophe in front, so spreadsheets don't read it as a formula. The import removes that apostrophe again. Rows with a blank your text cell are skipped, so you can translate a few texts at a time and import as often as you like.
Export as JSON for a backup
Export → Export as JSON downloads only the text you have customised for the selected language. It's a quick backup before a large reset, and Import accepts it the same way as a CSV.
Common questions
Can one file hold several languages?
No. Each file holds one language, and every row must carry the same locale. Export and import each language separately, selecting it in the Language menu first.
How do I remove text with an import?
You can't. A blank cell keeps the current text, and an import never deletes. To go back to the default, use Reset to default, Reset this group or the reset-all button in the editor, then save.
Why was nothing imported?
Imports are all or nothing. If any row has a problem, such as an unknown key, a different language, a text over 500 characters or a placeholder the text can't use, Alva Courses lists every problem with its row number and imports nothing. Fix the file and import it again.
Does the CSV include checkout and customer account text?
Yes. The export lists the checkout thank-you page, order status page and My Courses texts after the course player texts. Their keys start with ext., such as ext.membersArea.page_title for the My Courses page title.
See also
Was this helpful?
Last updated 2026-10-08