Swap currency symbol position

Hi,

I would change the € currency position to the right of the prices.

In the settings the options are to put the € symbol on the left, or to put the ISO code on the right

option 1 - Symbole: €1.000,00
option 2 - Code: 1.000,00 EUR

What I need is 1.000,00 €

Is there a way to achieve this ?
to swap the currency € symbol position

PS : wether the client’s country is set up or not, doesn’t affect the symbol position.

You could try changing the value for swap_currency_symbol on currencies and/or countries and then clearing the cache by adding ?clear_cache=true to the URL.

Sounds good.

Where could I change it ?

I’ve look in the settings/customize_design but I didn’t see anything relevant…

Are you self hosting, you’d need to access to the database to make the change.

I’m not self-hosting…

Sorry, it won’t be possible then

too bad …

how did we come to use the English-style currency position for Euro, a quasi-(non-)European country that doesn’t even use the Euro currency ? :smiley:

In practice, no European would place the € symbol before the amount. That makes absolutely no sense (one say “one hundred euros” and not “euros one hundred”, awkward negative amount…).
And no one wants to use the EUR iso code that takes too much place (eg in the invoices columns).

Any place where I can make a suggestion ?

Thanks

Feel free to create an issue on GitHub

https://github.com/invoiceninja/invoiceninja/issues

Hi,
I have the exact same issue.
I’m selfhosting invoiceninja on a Ubuntu Server 18.04.
As Hillel suggested I tried changing swap_currency_symbol on currencies (Euro) and countries (DE) but had no success after refresh with ?clear_cache=true . I tried multiple combinations of swap_currency_symbol=true/false in countries and currencies, but non of them seemed to have any effect.

Does anyone has a suggestion how to solve that differently. Or do I have to run a different refresh, not only for the cache (database related for example).

Thanks for any help in advance.

Would like to bring this back up. I am using Self-hosted version 5.5.103 and just added a new customer with US dollar billing. Created an invoice, and noticed that the currency symbol was being shown after the amounts (in the PDF), not before as is the case on every other invoice (checked creating new invoices for other customers). I changed the Database to make the symbol US$ (makes it clearer), this didnt affect the invoice being created (cleared the cache as per this thread) then also tried swapping the symbol, and this still didnt make any difference.

image
currency-b

A bit stumped.

Which country is selected for the client?

We cache all currencies, so after making a change like this you would need to refresh the cache by navigating to the URL

/update?secret=

The Customer is US$. I tried doing the “/update?secret=” and “?clear_cache=true”. Also cleared the webserver cache but no joy. all other currencies have no problem, and if I change the currency symbol on other currencies (clear the cache and secret) it reflects the changes.

There is no problem just having the $ symbol, but I was hoping to be able to get US$ instead. the only strange part is the the symbol is after the value unlike every other currency I use for billing.

Is the client’s country set to United States?

No, the client country is Japan, but why would this affect the invoice? The billing and invoices are all in USD

I have just changed the company country to the US and now the symbol is before the amount, but still not showing the US$ symbol, just the $. I think this is something that could be improved, maybe a switch that specifies the currency symbol position with example.

The currency formatting is determined by a combination of the client’s currency and country.

@david I think we should consider changing the logic to only consider the client’s country when the currency is Euro.

Is there any rational why Euro would be any different? would it not be better to have this as a setting for the customer so that it is more flexible? also, is the database not the source of the currency symbol? it seems to work for other currencies, but not the US$

Since the Euro is shared across many countries to determine the formatting you need to consider both the currency and country. Other currencies are single country, ie. USD => US.

This is what I mean, is it not more appropriate to allow for invoicing in the format of the company sending out the invoice. there are many companies (at least in asia) that bill customers in US$ in multiple countries. also occasion where the customer needs billing in US$. maybe there can be something that defaults to the symbol in front of the value, then an option to put the symbol after the value. Note - in Japan the currency symbol is usually before the value, so this doesnt explain why the $ symbol was placed after the value in my case.

IT also doesn’t explain the symbol not being changed from the database lists, or is this sort of hard coded somewhere (legacy code).