How can I change my PayPal address?

To do this go to Control Panel -> Deposits and payments, scroll down and make another test deposit with your new PayPal e-mail. Once the new account verified you can continue to use it.

Can I get invoices of my deposits?

You can see and get a PDF version of each invoice going to Control Panel -> Deposits and Payments -> All deposits. Please read this page for more information.

Affiliate program

You are welcome to invite others to use ICanLocalize and earn commissions for every job they order with us. Please consult the Affiliate tab on our website or the support team for more information.

General projects

Can I automatically invite the same translators from other projects?

Yes. Please consult this tutorial to learn how to invite automatically the translators you worked with in other projects.

Software projects

What are the accepted source file formats? What if my format is not on the list?

The supported formats are on the table below.

If you have another format, try to convert it to one of the supported formats or upload it as a general text file (bidding project) and explain to the translator what needs to be translated.

Type Example Encoding
.po files, normally edited with poedit.
Languages which allow creating po files for all strings: C, C++, ObjectiveC, Shell, Python, Lisp, EmacsLisp, librep, Scheme, Java, C#, awk, Tcl, Perl, PHP, GCC-source, Glade
#: some_label
msgid “Text for this label”
msgstr “Translation…”
UTF-8 Unicode
Android XML resource <string name=”KEY”>VALUE</string> UTF-8 Unicode
Apple iPhone Unicode UTF-16LE “some_label”=”Text for this label”; UTF-16LE Unicode (LLHH)
Apple iPhone Unicode UTF-8 “some_label”=”Text for this label”; UTF-8 Unicode
Delphi Unicode resource some_label=”Text for this label” UTF-16LE Unicode (LLHH)
IPP XML resource XML file with elements under ‘ippimage’
<textobject id=”KEY”>VALUE</textobject>
UTF-8 Unicode
Java Unicode resource some_label=Text for this label Java Unicode (\uNNNN)
JSON (.json)(AngularJS, ReactJS, JQuery.I18n)
  "title": "Title",
  "body": {
      "paragraph": "This is a paragraph."
UTF-8 Unicode
Label value pair with no quotes some_label=Text for this label UTF-8 Unicode
Label value pair with quotes around text some_label=”Text for this label” UTF-8 Unicode
List of PHP Define statements with double quotes some_label,”Text for this label”); UTF-8 Unicode
List of PHP Define statements with single quotes some_label,’Text for this label’); UTF-8 Unicode
PHP dictionary ‘some_label’=>’Text for this label’, UTF-8 Unicode
plist XML file with elements under ‘plist/dict’
Nested dictionaries not supported
UTF-8 Unicode
XLIFF <trans-unit id=”sample” xml:space=”preserve”>
<source>Sample Text</source>
<target>Sample Text Translation</target>
UTF-8 Unicode
XML with ITEM elements and text to translate on “KEY” attribute XML file with ‘//item’ elements and text to translate on ‘key’ attribute UTF-8 Unicode
YAML (.yml, .yaml)
        record_invalid: 'Validation failed: %{errors}'
UTF-8 Unicode


How do I reuse strings?

  • When the strings are in different projects

Click the button “Reuse translations” at the bottom of the software project page to search for strings in other projects and reuse all translations found.

  • When the strings are in the same project

If you upload the same string twice in the same project, there are two possibilities: the string is from the same file, or it is from another file. To decide if the string is from the same file, we look at the file name.

If the same string is uploaded with the same file name, the system marks it as “String exists” and this string is not added again.

If the string is uploaded with another file name, the string is marked as “duplicate”: a new string will be added but it won’t be translated. The translations for the first string uploaded with the same text will be used for the new duplicate string

  • When the strings were translated outside of the ICL system

In this case, the best way to import your strings is by using the “Upload existing translations” option at the bottom of the Software project page. You will need to upload a translated resource file, and select the language of the translation.

How to add new strings to an app?

You just need to go to your project page and upload the updated file under the same name. You’ll be asked to make the right deposit according to the number of updated words, before they are sent to the same translators.

Document translation projects

Create a document translation project, for review only

  1. Log into your ICanLocalize account
  2. Go to your projects page and create a New translation project (button at the top)
  3. Choose “Document translation / proof-reading”
  4. Set up a project: give it a title, upload the file, insert half of the actual number of words in the Job limits section. For example, if you have 400 words you need to enter 200 in order to pay only 0.045 USD per word (the review only price)
  5. Please make it clear in the project description that it’s a Review job, and enter the real number of words for translators there in the description

WPML projects

Please refer to the complete tutorial for the detailed steps and a video guide.

How to create a website project and start using ICanLocalize

  1. Go to the WPML -> Translation Management page and click the Translation services tab.
  2. Activate ICanLocalize from the list of services.
  3. Click on the Authenticate button and then on the ICanLocalize “Sign up” link.
  4. Fill in the form with the name and email address associated with your ICanLocalize account.
  5. The registration wizard will provide you with an API token. Copy the API token.
  6. Go back to the Translation services tab on the WPML -> Translation Management page and return to the ICanLocalize authentication wizard.
  7. Paste the API token and click Submit.

Note: The registration wizard and options depend on the WPML version installed. If you cannot follow the steps above, you can find your API token at this page after logging in to your ICanLocalize account.


I cannot see ICanLocalize translators in the WPML Translators tab or Translation Basket

In recent versions of WPML, translation services and translators were moved to a separate tab, the “Translation Services” one. You won’t find anymore your ICanLocalize assigned translators in the “Translators” tab.

In the “Translation basket”, you just need to select the option First available (ICanLocalize).

If you have translators already assigned, the job will be available for them automatically.

If you still haven’t assigned translators, you will be able to do so on ICanLocalize website.

How to send content to translation

In order to select the contents you want to translate, you can return to WPML -> Translation Management -> Translation Dashboard to select pages, posts or products.

WPML provides you a series of filters to help you search the desired contents. If you don’t find the desired content, please select a type in the filter (Pages or Posts, for example) to have WPML show more items.

  1. Select the checkboxes of the items you want to translate.
  2. Scroll down to the Translation options section, then choose the Translate option for the desired language.
  3. Click the Add selected content to Translation Basket button.

    Select and send the documents to the Translation Basket

  4. Now, click on the blinking Translation Basket tab.
  5. In the Translation Basket, you can review the items to send for translation and the languages. Optionally, you can also change the Batch name if you prefer to give it a more recognizable name.
  6. Make sure to select First available (ICanLocalize) in the Translate by drop-down menu.
  7. Click on the Send all items for translation button.

How to send strings to translation (theme, plugins and widgets elements)

You will need to install and activate the WPML String Translation module.

To send strings to translation, please follow these steps:

  1. Go to WPML -> String Translations.
  2. Find in the table the strings you wish to translate using the search filters.
  3. Tick the checkboxes to select the items you want to translate.
  4. Scroll down to the Translation options section, then choose the Translate option for the language in which there is an ICanLocalize translator assigned.
  5. Click the “Add to Translation Basket” button.
  6. Go to WPML -> Translation Management -> Translation Basket.
  7. In the Translation Basket, you can review the items to send to translation and the languages. You can also change the Batch name if you prefer to give it a more recognizable name, but it is optional.
  8. Make sure to select  “First available (ICanLocalize)” in the Translate by drop-down menu.
  9. Click the button “Send all items for translation“.

I cannot add some documents to the translation basket

Check if the translations are “In progress” status in WPML -> Translation Management -> Translation Jobs.

If the jobs are in progress and they were sent to a local translator, please see this guide to cancel the jobs.

If the jobs were sent to ICanLocalize and then canceled, please click the “Check status and get translations” in WPML -> Translation Management -> Translation Dashboard to synchronize the job status and cancel them on WPML also.

Once the translations are not in progress in WPML, you can add them again to the translation basket.

The translator says the job is completed but the translation doesn’t show on the website and it is in “In progress” status on WPML

Go to WPML -> Translation Management -> Translation Dashboard and click the “Check status and get translations” button to download the completed translations.

If manually fetching the translations doesn’t work, you can synchronize the translation status with this procedure:

  1. Go to WPML -> Translation Management -> Translation Jobs
  2. Click the “Synchronize status” button for the batches including the jobs you need to download and wait a few minutes
  3. In WPML -> Translation Management -> Translation Dashboard and click the “Check status and get translations button.

How to translate the content without publishing the translations

Solution 1: Receive the translations in Draft status (WPML -> Translation Management -> Multilingual Content Setup, section “Translated documents options”, select “Draft” for Document status).
Solution 2: Hide the language in WPML -> Language.  Remember to edit your WordPress user profile to show WPML hidden languages so you can still see the translated content while logged in.

A page was received with 0 words. How to resend it correctly?

Before resending it, since we received it with 0 words, we need to confirm that the page is correctly configured. For example, we need to check that, if the content is in custom fields, they are set to “Translate”.

Please see this guide about custom fields for more information.

If this doesn’t help, please open a support ticket.

How to translate the menu

After the elements linked in the menu are translated, you can go to WPML -> WP Menu Synch. You will see which elements are translated and ready to be added to the translated menu. Pressing the “Synch” button will start the procedure. Please check this WPML tutorial for more information.

How to translate a custom post type?

To translate a custom post type, go to WPML -> Translation management -> Multilingual Content Setup -> Custom Posts and select “Translate” for the custom post type you need to send to translation. If you did that and you still can’t send the content, please provide your WP admin credentials and we will check.

Instant Translations

Is there a maximum number of words per Instant translation project?

There is a limit of 500 words per Instant translation project.