[Discussion] Why Parties are limited to transactions with a single currency?

Hello Team,

I hope everybody is doing well,

I’d like to know the reason behind the constraint that a Party can only have transactions with a single currency, this is very frustrating sometimes, because for example, it is possible that we can bill against a single Customer in different currencies, this practice is very common in Venezuela.

Before I can begin to change the code and contribute with this possible feature, I’d like to know if this was due to a specific reason that I might not be seen.

There is a report named Trial Balance for Party with no side effects that we could group by currency, so we could be able to see transactions in all currencies used against it. Also, for Suppliers and Customers, we could define a specific Receivable or Payable account for each currency and company, but also we can define default Accounts in Account Settings for each currency that we can handle.

I hope I have explained myself,


Hello @aliriocastro,

There is a deep discussion in the GitHub issue queue here: MultiCurrency - Can't invoice customer · Issue #31193 · frappe/erpnext · GitHub

The last post explains how to enable multi-currency against a single party if this is your desired outcome.

Thank you for your feedback,

However, this “as is” has some side effects in reporting that needs to be fix it too. For example, Trial Balance for Party amounts are not right since they should be grouped at least by Currency or Account.