Prerequisites
Connect Loops
- Open workspace Integrations and find Loops.
- Paste the API key.
- Save. Hyperlocalise pings the Loops API to confirm the key is valid. A rejected key is not stored.
- Confirm the connection shows as connected.
Create the automation
- Open workspace Automations and select New Automation.
- Apply the Translate Loops Emails template, or add the Translate Loops Emails skill from Add Skill. Do not attach Braze or Customer.io tools to the same automation.
- Attach the native project.
- Choose a scheduled or manual trigger. A schedule imports changed emails. It does not push copies.
- Under Loops Transactional, Campaigns & Workflows, confirm the connection badge shows connected.
- Save the automation.
Import emails
Run now or wait for the schedule. Import writes one HTML source file per email:- Transactional emails at
loops/transactional/{slug}.html - Campaign emails at
loops/campaigns/{slug}.html - Workflow
SendEmailActionemails atloops/workflows/{workflow-slug}/{slug}.html
<Style> tag, falling back to the default theme), including headings, buttons, images, and expanded components.
Import skips emails stored in legacy MJML, drafts that cannot be read as LMX, and names that already look like locale copies (Welcome [fr]). {data.*}, {contact.*}, and {event.*} variables stay protected so translators do not break personalization.
When Create native TMS job is enabled, the run opens a job for mapped locales that still need translation. Import does not write anything to Loops.
Inspect Run History for imported, skipped, and failed items, plus jobs created.
Review and push locale copies
- Translate and approve the mapped locales you want to write back.
- In Loops (Settings → Sending), confirm LLM translation is enabled. The push dialog reminds you of this: copies pushed while it is off land without their language label and show EN in the language dropdown.
- Open a Loops file in the Content editor. The header shows Ingest and Push to Loops for that file. Choose Ingest to import the automation’s configured set, or Push to Loops when at least one mapped locale is approved and no push is already running. Hyperlocalise then opens the automation Run History tab so you can follow the run.
- Confirm Loops shows a new copy named
{source} [{locale}], for exampleWelcome [fr]. The source email is unchanged and the copy stays unpublished.
Change or remove access
Disconnect Loops from Integrations when this workspace should stop using that Loops account. Inspect automations that depend on the connection before you disconnect.If import or push does not run
- Confirm Loops is connected and the automation is Active.
- Confirm the project source locale matches the language of the default copy in Loops.
- Confirm LLM translation is enabled in Loops (Settings → Sending), or copies land without a language label. A push that lands without its label (for example a copy that still shows EN in its language dropdown) now reports a warning in Run History naming the copy and locale — enable it in Loops, then re-push.
- If Push to Loops or Ingest is missing, open a Loops file. Those actions stay hidden on other files. Approve at least one mapped locale, confirm you can manage automations, and wait until any in-progress push finishes.
- Open Run History for the failed email or locale.

