Localize price in the service catalog

The ServiceNow service catalog fully supports localized currencies for item prices and options.

Note: The ServiceNow system has the concept of a system basis currency: the system default currency, based on the global locale property. All currency values are automatically converted to this basis currency before aggregation or conversion. Do not change the global locale setting after you have data in the system, as this can cause aggregations to calculate and display incorrectly under some circumstances.

The ServiceNow platform supports two similar but different money field types, both of which are used in the service catalog.

Price:

A price represents the cost of the catalog item. A computer might cost $1000, or the provisioning of an email account may require an $80 chargeback.

The ServiceNow system supports these pricing models:
  • Calculated: [Default] the price of an item is always quoted based on the user's locale. For example, a UK user sees the price of her computer in pounds, while a Japanese user sees his price in yen. The numeric value of the price is adjusted using the most current exchange rates on file.

    The locale is based on the Country code field [sys_users.country] on the user record. If this field is not set, the locale is taken by default from the instance locale, as defined by the locale code to use for localization [glide.system.locale] property.

  • Fixed: the price of an item is always quoted in a particular currency. An item priced at $1,000 is always priced at $1,000, even if viewed by a UK or Japanese user.
  • Multiple: a fixed price is specified for each currency. For example, you can specify that all US users pay USD 1000 for a computer, while the Japanese price is JPY 120,000, regardless of exchange rate.
    Note: If no fixed price is set, ServiceNow uses the calculated price (default).

Currency:

A currency field represents an actual spend, that is, a discrete quantity of money spent at a particular point in time. ServiceNow keeps track of the currency that was actually spent, and the time it was spent.

On a related list, a currency field uses one of these modes. Toggle between them by clicking the globe icon next to the currency field.
  • As spent: displays the amount in the currency that was spent. This may mean that some items in the list show yen, while others show pounds or dollars, for example, £100.00.
  • Calculated: displays all amounts in the session display currency, for example, $137.86.
  • Reference: displays all amounts in the currency entered and includes the system basis currency in square brackets, for example, £100.00 [$137.86].
On a form, a currency field always displays the amount in the currency entered.
Note: If you reference a currency field in script, its reported value is whatever the current user's session would show. There are also several utility functions you can call against a currency field to get data back in a variety of forms. For more information, see Scripting Currency and Price Fields.