Skip Navigation

Home » WPML Documentation » Integrating Your Translation Service with WPML » WPML’s Translation Hub – A Hassle Free Way for Translation Services to Translate WordPress Sites

WPML’s Translation Hub – A Hassle Free Way for Translation Services to Translate WordPress Sites

Translation Hub allows translation services to easily integrate with WPML. It offers simple integration without development work.

Clients can send jobs directly to you, without the need for back and forth emails.

You can receive the jobs, translate and return them, without needing access to the client’s site.

Translate jobs easily using a convenient online editor or use your own CAT tools.

Getting Started with Translation Hub

Before you can start sending and receiving translation jobs, you first need to provide some basic information about your translation service, languages, and clients.

  1. Create an account
  2. Choose your translation method
  3. Set up language pairs
  4. Add clients
  5. Configure client side

Create a Translation Hub Account

Start by creating an account in the Translation Hub. Fill out your information and information about your translation service.

Signing up for Translation Hub

Choose Your Translation Method

Translation Hub includes an online editor where you can add translations without leaving the Translation Hub. The online editor gives you access to powerful translation tools such as:

  • Automatic translation powered by DeepL – we provide 10,000 credits for free, and you can purchase more
  • Glossary
  • Spell check
  • HTML-free formatting
  • Translation memory

You can also choose to translate using XLIFF files. This allows you to download files, translate them using your own CAT tool, and upload the completed translations.

Translation method options

Add Language Pairs

WPML needs to know which languages you are able to translate to know which jobs it can send you. Clients will not be able to send jobs that require languages you have not set up in the Translation Hub.

You can add language pairs while going through the setup process, or add them later by going to LanguagesLanguage pairs. Then, click Edit language pairs.

How to add or edit language pairs

You can add multiple target languages for each source language, and you can add as many languages as you want.

Adding language pairs in Translation Hub

Custom Language Mapping

Custom language mapping makes it possible for XLIFF files submitted as one language code to be downloaded as another. This is useful if the translation software you use requires different language codes than what the client is using.

For example, some translation software options must have a specific language code variation such as en-us instead of simply en. If the client is using the language code en, this will be an issue every time you download a translation job.

Translation Hub can handle the changes seamlessly via custom language mapping. There is no need to ask your clients to change any language settings and no need to manually change the codes each time you download a file. 

To set up custom language mapping, go to Languages → ISO language mappings. Choose the language code your client uses from the list on the right, and add the variation you would like it mapped to. Then click Update mappings to apply the changes.

Adding language mappings

You can enter as many mappings as you would like.

Add Clients

Before a client can start sending jobs to you, you need to add them in the Translation Hub. This generates an API token that the client will enter in WPML to authorize your service.

To add a client, go to Clients, and click the Add New Client button.

Adding a new client

On the following screen, enter their information. The client’s API token will be enabled by default, but you can disable it if you don’t want them to be able to send you translation jobs right away.

Creating a new client record

Clients receive a welcome email with instructions on what to do with the API token.

An example of a client’s welcome email

If they didn’t receive the welcome email, you can also find their API token in their client profile.

 Accessing a client’s token

Clients enter this token when they authenticate your translation service on their site.

What a client sees when activating your service on their site

Please note that you cannot delete a client once created. Instead, you can edit their record and mark their API token status as Disabled.

Configure Client Side

Your client needs a WPML Multilingual CMS or Multilingual Agency account to connect with a translation service. If they haven’t purchased WPML yet, you can provide them with a purchase link. This link is available on your Translation Hub Dashboard.

Copying the purchase link to share with your client

Your client then needs to connect with your translation service from within WPML. How they do this depends on if your service is a Translation Partner or not.

If your client has trouble with this part of the setup, you can direct them to our documentation written specifically for WPML users with more step-by-step instructions.

Translation Partners

Translation Partners appear in the list of available translation services both in the WPML plugin and in WPML’s directory of translation services. Your clients simply need to search for your service and activate it using the API token, as described above.

WPML’s translation services directory in the WPML plugin

Not a Translation Partner yet? Read more about how to become one.


If you are not a partner, clients need to add a code snippet to their wp-config.php file in order to connect with your translation service. You can find the specific configuration snippet for your translation service on the Translation Hub dashboard or in the client profile.

Finding the config snippet to share with your client

Once they add it to their wp-config.php file, your service will be enabled in WPMLTranslation ManagementTranslators. They can activate your service and enter the API token to start sending translation jobs.

What your client sees after adding the snippet to their wp-config.php file
What your client sees after adding the snippet to their wp-config.php file

Managing Translations with Translation Hub

Translation Hub allows you to manage translations for a client’s WordPress site from start to finish.

Receiving Translation Jobs

When clients send pages or posts to be translated, you’ll be notified via email. Log in to your Translation Hub account and find the jobs on the homepage.

New job available for translation

Using the Online Editor

Click on a job to see the details, including when it was created and which language it’s for. To translate the job, click the Translate Online button. This opens the job in the online editor.

Viewing the job details

The online editor allows you to add translations without worrying about the layout or styling of their site. Simply add the translations for each segment, and click Complete.

Translating a job using the online editor

When you complete a translation job, Translation Hub automatically sends the translations back to your client and publishes them on their site.

The client sees a page is translated on their site

The online editor also includes some additional translation tools to make translating even easier.

Automatic Translation

Automatic translation helps speed up your translating by providing machine-generated translations powered by DeepL. Instead of translating everything from scratch, you only need to review the translations to make sure they sound natural and accurate.

The online editor offering to translate the job automatically

You can automatically translate individual segments or entire pages and posts with just one click.

The options to translate content automatically

We provide 10,000 credits for free. If you start to run out of credits, you can request more by going to Account Management and clicking the Request more credit button. A member of our team will be in touch with more information.

Requesting more automatic translation credits

Translation Memory

If your client uses a segment that was translated as part of a previous job, the online editor remembers and automatically applies the translations so you don’t have to translate them again.

Spell Check

Spell check helps you catch spelling mistakes and typos.

Using the spell check to catch errors


If your client has requests to use specific translations for certain keywords and phrases, you can add them to your glossary.

Adding a new glossary term

HTML-Free Formatting

If the content you’re translating uses HTML formatting, you can apply the styling to your translations without needing to learn how to code.

Simply highlight the text that needs to be formatted and click the corresponding styling tag.

Applying HTML formatting to a translation

Using XLIFF files

If you prefer to use your own CAT tools, you can download XLIFF files and upload the completed translations. To enable this option, go to Account Management and check the box to use XLIFF files. Then click Save changes.

Enabling XLIFF translation

When you go to a translation job, you can download the XLIFF files in any language. Then, once you finish your translations, you can upload a single XLIFF file or a ZIP file containing multiple XLIFFs.

Where to download/upload an XLIFF file

You can see the status of your uploads by going to Translation uploads.

Viewing your uploaded translations

Canceling a Translation Job

To cancel a translation job, go to the Jobs page and click Cancel.

Canceling a translation job

Be sure to let your client know when you cancel a translation job.

Handling Resubmitted Jobs

WPML displays a warning to clients if they edit an element of their website that is already being translated.

A warning to a client that a page they are trying to edit has been submitted for translation

If they continue and resubmit the updated translation job, it’s important for you to know which job you should be translating. WPML can only update translations for the most recent version.

Luckily, Translation Hub can save you the time and effort of translating the wrong files. It will recognize if many versions of the same job have been submitted and warn you if there is a newer version.

The notification that a newer version of the translation job is available

Troubleshooting Translation Hub

Error message: language pairs not supported

If a client is unable to send you projects for language pairs you support, it may be because of a missing language pair in your setup.

The warning a client sees if the language pairs their job requires have not been set up in Translation Hub

For instance, say you have language pairs set up for English and Spanish set as en to es in Translation Hub. If your client uses language codes with specific localizations such as American English (en-us) and Mexican Spanish (es-mx), they will not be able to send the translation.

To fix this, add the extra language pairs in Translation Hub and then instruct your client to refresh the language pairs in WPML. They can do this by going to Translation Management → Translation Services, and clicking Refresh language pairs.

Refreshing language pairs in WPML

Once language pairs have been updated and the client has refreshed the language pairs in WPML, they will be able to send the job for translation.

Client Isn’t Receiving Translations

Check Client Translation Pickup Mode

Clients have two options for receiving translations:

  • The default is for the client’s website to automatically update with new translations once they’re received.
  • Clients can also choose to check the status of the translations manually.

If they choose to check the status of translations manually, they may not immediately see that a translation job has been completed. In this case, they should go to WPML Translation Management and click the Check status and get translations button.

How a client can manually check the status of their translations in WPML

Clients can change how their site receives translations by visiting WPML → Settings and scrolling down to Translation pickup mode.

How a client can change their translation pickup settings

Resend Translation Job

If you completed a job and sent it back but your client’s site didn’t receive it, you can resend the translation job.

  1. Go to the translation job and scroll down to the Troubleshooting section.
  2. Click the Resend translation button.
Resending the translation
  1. Tell your client to go to WPMLTranslation Management and click the Check status and get translations button.
A client’s view of checking the status of their translations

If you still need assistance, please contact our support team.

API Tokens

API tokens are what makes a client able to connect with your service.

Disabling a token

It may become necessary at some point to freeze a client’s account (for instance, if a financial matter must be taken care of). To do this, you can disable a client’s API token. Go to Clients and edit the client’s record. Then, change the status to Disabled.

Editing a client’s token

This prevents the client from being able to create new translation projects until you enable it again.

September 20, 2023