Price Control Field currency auto-translate to GBP in the form view.

BartFrelian1337
Tera Contributor

Hi Community,

 

It's the first time i am working more in depth with PRICE type fields and i cannot grasp something.

Long story short I have three fields that are running client script that takes Quantity (int); Total (price) and Price (price) that calculate each other. Its a simple math Quantity * Price = Total.

It appears to work good as by the screenshot below before saving:

 

BartFrelian1337_0-1757357081480.png

 

But after saving and coming back to the record i see the Total translated to GBP. Price/Unit remains USD and the only difference is the Total is read-only field by dictionary settings.

 

BartFrelian1337_2-1757357361183.png

 

I cannot find any settings per my profile that would dictate that my preferred currency is GBP so is it related to the Read-only? If it is configurable then where?

Additionally on the list i can see Toggle currencies option. Can this also be disabled?

 

BartFrelian1337_1-1757357262858.png

 

Thank you all for your help and time.

Bart.

 

2 REPLIES 2

M Iftikhar
Mega Sage

Hi @BartFrelian1337 , 

 

What you’re seeing is expected behavior when multiple currencies are enabled in your instance. By default, ServiceNow will convert price fields into the user’s session currency or the system default currency, which is why your Total appears in GBP while your Price/Unit is in USD. The fact that Total is read-only just means the user cannot override it, it doesn’t affect the conversion logic. 

If you’d like to disable multiple currencies and show only one currency for all Price type fields, you can configure it as follows: 

Steps: 

1. Navigate to System Properties > System Localization. 

MIftikhar_0-1757522655007.png

 

 2. Set the property: 

Use a single currency model. Display all currencies in the same currency code, regardless of a user's locale, country, or language code = true. 

MIftikhar_3-1757522775299.png

 

This will force all price fields to display in the same currency and effectively remove the multiple currency toggle. 

MIftikhar_2-1757522655009.png

 

 

Also, here’s a helpful article that goes into more detail on how price/currency fields behave: 

Mastering Currency Settings in ServiceNow: Enable, Disable, Update, Set Default Currency Types, etc. 

Thanks & Regards, 
Muhammad Iftikhar 
 
If my response helped, please mark it as the accepted solution so others can benefit as well. 

Thanks for the suggestion, i will read the article further to get familiar with price/currency fields behaviour but setting only one currency is not my goal. As i am building purchasing module it makes sense for users to provide their local currency in price/unit field. When only one default currency is selected that is not possible. Technically i think i can live with the toggle currency i am wondering more what was that GBP in my case when field set to read only. It wasn't the system property settings because in my case it was USD. Could this be locale of my browser that i am running service now on? If yes and it is expected behaviour i think it's very weird because lets say Accounting user is located in India but Purchasing request come form the US, it totally doesn't make sense to auto display all values in INR. No matter the locale of the user the record should display the initially selected currency and then have a toggle option to translate the value but not have it translated by default always when field is read only.