Single Language Custom Fields
Multiple Language Capacity
NetSuite has built-in language translation capacities supporting over a dozen languages. It does this within two dimensions:
- Internal Backoffice: for employees managing the operations.
- External Web Site: for customers or other parties, typically for eCommerce web sites.
Custom Field Language Translation
The language capacities above are great and are one of the many ways that NetSuite illustrates it is a global platform. NetSuite supports custom labels on its custom fields to drive the internal backoffice application. NetSuite’s Custom List capacity also supports translations for the values you define. Custom lists are a great way to create “dictionaries” of common lookup reference information.
However, if you are going to create a custom field and you want to support language translations, you will need to do more planning.
For example, suppose that you want to create a new field called “Technical Specifications” to extend the item master with rich text. The new field provides for a single place for you to define your content without respect for your target language use. NetSuite will allow you to define multiple language labels for your custom field. This only helps though in the internal backoffice case. The challenge is that there is no built-in structural way which allows for multiple language content translations.
To solve for this challenge, you have options:
- Option1: Create additional custom fields for each targeted language.
- Option2: Create a custom table to handle multiple languages.
- Field Name
- Field Label
- Language
- Content
Field Name | Field Label | Language | Content |
_technical_specifications | Technical Specifications | EN | A350 Air Purifier Specifications |
_technical_specifications | Especificaciones técnicas | ES | A350 purificador de aire Especificaciones |
_technical_specifications | 技術規格 | ZH | A350空氣淨化器規格 |
Under this approach, we can define as many custom fields as we need and we can support all the language translations. In the example above, we use the same field name to get three table entries with content for each respective language. We can add more fields whenever we want a custom text field in our external web site.
Under this approach, the major consideration requires that the web store use special programming code to get the content to display. As of this time, the general <nltag> web store approach does not support a way to get to these customs structures easily (although the new SuiteScript Server Pages does). The workaround is to use a JavaScript client side call to dynamically gather the appropriate content and display it on the page. A weakness of the client-side approach is that it does not serve the search engine optimization demands well because the content will not be there when the search engine spider crawls your web site. But it will help keep ongoing content and web site maintenance lower.
How have you overcome NetSuite language translation challenges?
Thanks, Marty for this clear explanation with pros and cons of the different approaches.
Our multi-language sites are coming forwards so this background information will be very helpful to us.
thanks for the clear explanation on on Using Net Suite,this might be something that we can use in the future
Frankie
Hi Marty,
Is is possible to print invoices in the different languages that can be treated as official documents.
Cheers
Shrini
Hello Shrini,
It should be able to. NetSuite supports mutiple languages which sets the field label names. The data in you system can be in different langauges. So, it should work. There are some places that we found the multi-language does not work. For example, the line item language definitions don’t seem to come through right out of the box.
We have created some custom invoices for clients where we want to get control over the situation. We also were able to get to some language constructs through the web services tiers. In addition, NetSuite’s now promoted FreeMarker Template approach may open up new capacites that our team has yet tried for multiple langauge.
Marty
Hi Marty,
I have been working on website translation and have created custom fields which use custom lists to handle the translation as you have the option to add in the value translation I thought this approach would be good for being able to manage the translation and easy to update.
All seems to work fine but I have found an issue where if you change the language from default to french and then change it back again not all the translation fields will update so you have a miss match of english and french. on the same page.
I was wondering if you have encountered this or would know of an explanation as to why it won’t update the fields when returning to the default language.
Any help or insight would be extremely helpful.
Hi Ben,
No, I haven’t encountered this. Are you working with the API or does this happen inside the NetSuite UI?
Marty
Hi Marty,
With multi language we can switch the appearance of NS to spanish. We can view FS in spanish, however the individual lines (below the translated headings) still show in english Is it possible to list all of our g/l account names in spanish as well? Or does this require custom programming? We require a quick way to move between english and spanish
Thanks
Adam
Hi Adam,
I don’t believe your account names can be in in another language as this is effectively the “data”. I am not sure what you mean in the “translated headings”. Can you screen shot?
Marty
Can i use arabic in netsuite ui?
Arabic is not listed in Netsuite System Supported languages.
Hello Iman,
I don’t know of an easy way to overcome NetSuite’ built-in internal application language methods. You may want to pursue them directly to see if they are planning on offering support.
Marty
Hello Marty,
Since NetSuite offers translation to select languages only, what do you think is the best way to add languages? I was thinking of an integration as this will readily address the concern.
Cheers!
Hello Wilson,
These days, we are solving language translation challenges using our Content Renderer Engine:
https://blog.prolecto.com/2016/11/27/global-netsuite-locale-based-content-generation/
Hello Marty,
Thanks for the revert. We are more concerned on the UI translation. Though what you have advised was interesting. I also found a resource online suggesting integrations for the field value translations.
Cheers!