en is not en-US. zh-CN is not zh-TW.
Prerequisites
Connect Figma
- Open workspace Integrations and find Figma.
- Enter a display name.
- Select the personal access token. The dropdown shows the token name.
- Save. You do not choose a project or locales on this form.
localhost, Integrations shows Copy token after save and Regenerate token on each connection. Production builds should use OAuth (X-Hyperlocalise-Access-Token) instead of a pasted token.
Connect Figma before you upload text. Changing the project in the plugin changes the next upload and apply.
Step 1: Match project locales
Create or choose the native project you will select in the Figma plugin.- Set the project source locale to the language of the copy on the pages you will upload.
- Add a project target locale for each language you will apply.
- Use exact BCP-47 tags. There is no language fallback across regions (
zh-CNdoes not apply aszh-TW).
Step 2: Connect from the plugin
- Open the Figma file in the editor and run the Hyperlocalise plugin.
- Connect with OAuth in production, or paste a connection token when developing against
localhost. - Select the native project. The plugin binds that project to the connection.
Step 3: Upload source text
Upload writes source JSON into the selected project. It does not start a translation job and does not show translation progress.- Select the pages to process.
- Confirm the canvas is on the project source locale. If a target language is already on the page, Apply the source locale first, then upload.
- Choose Upload and confirm. Each page is stored at
figma/files/<fileKey>/<page-title-slug>-<pageId>.json. Review those files like other JSON sources.
Step 4: Translate
Translate starts an agent job for the language selected under Translate to, waits for that job, then applies the result to the selected pages.- If the pages are not uploaded yet, Translate collects them first, but only while the design shows the project source locale.
- Translate does not upload again when the selected pages are already collected.
- Open the page files in the Content Editor if you need to review or wait for approval.
Step 5: Apply to the file
Apply writes Hyperlocalise strings for one chosen language onto the selected pages. It matches stampedfigma.k.* keys. It uses the stored source file as the source map, not whatever language is currently on the canvas.
- Under Translate to, pick the locale you want on the file (source or a target).
- Select every page that should receive that language.
- Choose Apply when that locale has pullable translations (job succeeded or waiting for review), or when you are applying the source locale from the last upload.
- If Hyperlocalise has a real translation for that key, Apply writes it.
- If the string is missing, or the job still has the multi-word English source, Apply resets the layer to stored source. It does not leave a previous target language on the node.
figma.segment.* shape, upload again so the plugin mints new stamped keys before you apply.
Segment keys
Each text node gets a stablefigma.k.<ulid> key stored in plugin data (hyperlocalise:segment:v1). Keys stay on the node across locale applies. Editing source copy in Figma after upload means that node needs a fresh upload before apply can match the new text.
If upload or apply does not run
- Confirm Figma is connected and a project is selected. That project needs a source locale and at least one target locale.
- Confirm the personal access token still has
files:read,files:write,jobs:read, andjobs:write, and that you can access the project. - Confirm you selected at least one page with editable text.
- Confirm the canvas is on the project source locale before Upload. Apply the source language first if a target is currently on the page.
- Confirm the language you apply is on the project.
enis noten-US. - Open the job in Hyperlocalise for a failed locale.

