Recently, while working on a Power Automate Flow to Generate a PDF from SharePoint List Items, I encountered a challenge formatting number as currency. The default number formatting didn’t quite meet the requirements, so I researched and found a few practical ways to achieve this.
In this tutorial, I will tell you how to format a number as currency in Power Automate. I will also show you how to convert a string into a proper currency format.
Format Number as Currency in Power Automate
Imagine you have a SharePoint list called Expense Claims, where employees submit expense requests. The list includes a “Total Amount” column (Number type) representing the expense amount.

When an expense is added to the list, you want to email the employee with the formatted currency value in the email body.
For example, if the Total Amount is stored as 1500, you want the email to display it as $1,500.00 instead of just 1500.
We can achieve this in Power Automate in two ways: the ‘Format Number‘ action and the FormatNumber function. Let’s go through them one by one.
Format Number as Currency Using Format Number Action in Power Automate
Now follow the below steps:
1. Create an Automated Cloud Flow using the SharePoint connector’s ‘When an item is created‘ trigger. Select the SharePoint site where your ‘Expense Claims‘ list is present, and choose the ‘Expense Claims‘ list.

2. Add the Format Number action from the Number Functions Connector and Pass the required parameters:
- Number – Provide the Total Amount from dynamic content when an item is created action.
- Format – Choose the currency format value from the drop-down:
$1,234.00- Locale – Select the locale used to format the number (optional field).

Note:
Choosing $1,234.00 from the Format dropdown doesn’t always mean you’ll see a dollar sign ($), commas (,), and a decimal point (.). The actual symbols depend on the Locale setting.
3. Then add a Send an email (V2) action and provide the below parameters:
- To: Enter the Employee Email.
- Subject: New Expense Claim Submitted – @{triggerBody()?[‘ClaimID’]}
- Body: Use dynamic content to insert values from the list:
Dear @{triggerBody()?['EmployeeName/DisplayName']},
Your expense claim has been successfully submitted. Here are the details:
Claim ID: @{triggerBody()?['ClaimID']}
Total Amount: @{body('Format_number')}
Our finance team will review your claim and process it accordingly. If any further details are required, they will reach out to you.
Best regards,
TSINFO TECHNOLOGIES PVT LTD
Save the flow, go to the SharePoint list Expense Claims, and add an item.

After the flow runs successfully, the employee receives an email like the screenshot below.

Suppose you configure the Format number action with the Odia (India) (or-IN) locale.

When I retriggered the same flow, I received the email shown below.

Format Number as Currency Using FormatNumber Function in Power Automate
In the Power Automate formatNumber() function is used to format a number into a specific style, like decimal, percentage, or currency.
Syntax:
formatNumber(<number>, '<format>', '<locale>')- <number> = The number you want to format.
- <format> = The format you want (C for currency, N for number, etc.).
- <locale> = The language/region for formatting (e.g., en-US, fr-FR).
Now, I will show you how to convert it. I will use the same example. So, let’s create an Automated Cloud Flow using the SharePoint connector’s ‘When an item is created’ trigger. Select the SharePoint site where your ‘Expense Claims’ list is located and choose the ‘Expense Claims’ list.
Then, add a Compose action and provide the following expression inside the action:
formatNumber(triggerBody()?['TotalAmount'],'C', 'en-US')- ‘C’ → Formats it as currency.
- ‘en-US’ → Uses US dollars ($).

Then, add a Send an email action and provide the required parameters:

Save the flow, go to the SharePoint list Expense Claims, and add an item.

After the flow runs successfully, the employee receives an email like the screenshot below.

Convert String to Currency format in Power Automate
Here, I will show you how to convert a string to a currency format in Power Automate. In this case, the string is not just any text but a number stored as a string. Let’s see how we can convert it.
Now follow the below steps:
1. In Power Automate, select Instant Cloud flow -> Click on +Add an input to insert one text field to take the values manually.

2. Then add a compose action and the below expression to convert the string to an integer:
int(triggerBody()?['text'])
3. Then add another compose action and provide the expression below to convert the integer number to currency.
formatNumber(outputs('Compose'),'C', 'en-US')
Now save the flow and run it manually. Enter the number input and choose the Run Flow option.

After the successful flow run, you can see the output in the compose action.

This way, you can convert string to currency in Power Automate.
Conclusion
In this tutorial, I covered different ways to format numbers as currency in Power Automate. First, I explained how to format a number column from a SharePoint list using the Format Number action. Then, I showed how to achieve the same using the formatNumber() function with the ‘C’ format specifier and a specified locale. Finally, I explained how to convert a number stored as a string into a proper currency format using Power Automate.
You may like the following tutorials:
- Convert String to Float in Power Automate
- Convert a String to a Decimal Number in Power Automate
- Convert a String to an Integer in Power Automate
- Replace Commas with New Lines in Power Automate

After working for more than 18 years in Microsoft technologies like SharePoint, Microsoft 365, and Power Platform (Power Apps, Power Automate, and Power BI), I thought will share my SharePoint expertise knowledge with the world. Our audiences are from the United States, Canada, the United Kingdom, Australia, New Zealand, etc. For my expertise knowledge and SharePoint tutorials, Microsoft has been awarded a Microsoft SharePoint MVP (12 times). I have also worked in companies like HP, TCS, KPIT, etc.