The English contents for each message type are located in the <pf_install>/pingfederate/server/default/conf/language-packs directory.

Message type Default message file
On-screen messages
Email messages
Text messages (SMS)
  1. Create a copy of the associated default message file in the language-packs directory.
  2. Provide translated text in place of English and then append the standard language tag to the base file name, as indicated in browser settings.
    For example, to localize the user-facing screen messages in French, rename the translated copy of the localization file to

    If the system language of the PingFederate server is not English, copy the default (English) message file and append _en at the end of the file name for any English users (for example from to, translate the default message file for the local users, and provide additional translations as needed.

  3. If you want to include a region, append the capitalized abbreviation to the standard language tag with an underscore between them.
    For instance, to localize the text messages in Canadian French, renamed the translated copy to

    The capitalization and underscore usage may not correspond to the way regions are listed in browser settings. However, the usage is required by the Java-based localization implementation.

  4. If you have a clustered PingFederate environment, copy the localized message files to each node.

For on-screen and email messages, developers can also customize the look and feel of the templates by using localization variables in logic statements to control fonts, color, and other style elements. Refer to the template files for examples.


To maximize performance, PingFederate caches localized UI strings on start-up. For testing new localization implementations, an administrator can temporarily turn off caching by changing the value of the cache-language-pack-messages element to false in the locale-options.xml file, located in the <pf_install>/pingfederate/server/default/data/config-store directory.

Be sure to return the value to true when testing is complete. Note that restarting the server is required for changes to configuration files.