[SOLVED] Currency conversion rate change in-between quotation received and payment made

Hi all,

In my company we have a fairly common use case when we receive quotations of imported goods on USD currency, which is not our base currency (that would be ARS). In spite of this, payments are only made in ARS (a legal constraint).

But in-between the time we receive a quotation (or even a bill) and until we actually make the corresponding payment, currency conversion rate (USD/ARS) will probably change.

When I submit a supplier quotation in USD ERPNext uses stored conversion rate to display a local currency cost as well. That’s nice, but if I change the currency rate (in ‘Accounts > Setup > Currency Exchange’) this local currency value is not updated. I can validate the quote, create an invoice, and even make a payment with the old currency rate. Supplier will probably be unhappy :wink:

I tried both editing existing currency exchange rate, as well as deleting it and creating a new one. Neither worked.

I’d expect ERPNext to only fix local currency (ARS) cost at the moment of actually making the payment. Till then, local currency cost should always be updated with current exchange rate.

Is there a way to accomplish this? How do you people handle this situation? Or am I trying to do it the odd/hard way? (in which case: what would be the expected/easy way? :wink: )


@abelinux I don’t think we have considered this use case.

Currency Exchange should be based on period. Do you want to create a GitHub Issue for this?

If you are a dev, we can help you how to fix this.

@rmehta thanks for your fast reply!

Currency Exchange should be based on period.

I’m not sure I understand what you mean… When you say period you mean an accounting period (something like fiscal year)? That would not be useful in my country… Or perhaps you meant different…

Do you want to create a GitHub Issue for this?

Sure! Only I haven’t done it before…
But, there’s a first time for everything, they say :smile:
Once I do it I’ll post it here so you people can review it and tell me whether/how it can be improved.

If you are a dev, we can help you how to fix this.

Unfortunately, I’m not :disappointed:
I do like to get my hands on stuff (like installing/configuring ERP software :wink: ), though, but I’m afraid I’d need too much guidance from you, and would make you lose too much time.
Unless you do have a lot of time to spend on tutoring me, which I don’t think you do :grin:

Here it is

@abelinux I think this feature is already built, might be released in a day or so :smile:

1 Like

Great! :tada: :confetti_ball:


@abelinux are you able to confirm this is working?

I am finding that currency conversion is set at the PO or PINV record and not at the payment entry. This means that you have an exchange rate when the PO is created and provides you a total per the rate, but if you later make a payment at a different exchange rate the rate cannot be changed unless you create the PINV. This is problematic if you make an initial deposit, as changing it at the PINV affects the total amount of the order and not just the outstanding amount. Perhaps I am missing something?

Feedback or present workings anyone?

1 Like