Skip to main content
Iterable

Learn how to use Iterable with Lokalise.

Ilya Krukowski avatar
Written by Ilya Krukowski
Updated over 3 weeks ago

This app is available from the Pro plan and above.

Iterable is a cross-channel marketing platform designed to create, optimize, and measure customer interactions. With Lokalise, you can localize your Iterable content, ensuring that marketing campaigns reach global audiences effectively.

Supported content

Lokalise allows you to translate the following Iterable content:

  • Emails

  • Push notifications

  • SMS notifications

  • In-app notifications


Prerequisites

Adding locales on Iterable

Before using the Iterable app with Lokalise, you need to add the necessary locales in Iterable.

Open Iterable, click the cog icon in the top menu, and select Project settings.

In the Locales section, add your target languages.

Ensure these locales match the ISO codes used in your Lokalise project.

Generating an API key on Iterable

To install the app, generate an API key in Iterable.

Go to Integrations > API keys:

Click Create API key in the top-right corner.

Enter a name, and select Server-side type:

Click Create and copy your API key immediately, as it won’t be visible after closing the dialog.


Installation

If you haven’t already, create a Marketing and support project in Lokalise.

Enter a project name, select the base and target languages, and choose Iterable from the Content integration dropdown.

Once the project is created, go to the Content management tab. If not redirected automatically, open your project manually and proceed to this tab.

Enter your Iterable API key and click Authorize.


Importing items from Iterable to Lokalise

Once the app is installed, you’ll see a list of available templates from Iterable. Content synchronization should start automatically, but if needed, click Refresh.

Switch to the Available for import view, select the items you need, and click Import to Lokalise. In the import dialog, choose the languages to include.

If you want to update existing translation keys with recent changes from Iterable, tick Overwrite existing keys. This will return updated keys to Unverified status.

If you’re using Automations, import only the default language with Overwrite existing keys enabled. Alternatively, import all desired languages while keeping this option disabled.

The import runs in the background, and you’ll receive a notification when it's completed. After that, go to the Editor to start translating or assign tasks to translators.

Reimporting content to Lokalise

If content in Iterable is updated before translations are finished or after export, you can reimport it.

Click Refresh to check the last update date, select the items you want to reimport, and click Reimport to Lokalise.


Exporting items from Lokalise to Iterable

Once translations are reviewed, export them back to Iterable.

Open the Content management tab, switch to Translation in progress, select the Ready to export items, and click Export to Iterable.

In the export dialog, choose one or more languages and click OK.

The export runs in the background, and you’ll receive a notification once completed.

Once all translations are exported, they will appear in the Translation exported view.

Note on retaining translation statuses

If the app is reinstalled, previous translation statuses will be preserved. To reset statuses, delete the keys in the Editor.

Note on reviewed translations

As you mark translations as reviewed in Lokalise, the status updates in the Translation in progress view.

For example, if your project has three languages and only one is reviewed, you’ll see 1 of 3 languages translated.

The Ready for export status will apply once all languages are reviewed. However, you can export items even if they are not fully reviewed.


Known technical limitations

Drag-and-Drop editor

Templates created with the Drag-and-Drop editor cannot be localized because it causes a mismatch between the generated JSON content and the translated HTML content. To ensure proper localization, we recommend using the WYSIWYG or Side-by-Side editor to create templates.

Workarounds

If you need to localize a Drag-and-Drop template:

  • Export the HTML from your Drag-and-Drop template and upload it to a new template in Iterable using the WYSIWYG or Side-by-Side editor, then import this new template to Lokalise.

  • Configure Lokalise to create a new template instead of uploading translations to an existing Drag-and-Drop template. This will generate an HTML template using the WYSIWYG or Side-by-Side editor instead.

Template types

Only Base type templates are fetched from Iterable to Lokalise. Other template types, such as Triggered or Webhook, will not appear in the Available for import page.

Did this answer your question?