Exchange rates suddenly don't get updated

Some time back I posted something about a problem with the details page of forex gain/loss transations. This resulted in a bug on which @lubos is working.

Now I have another problem and I am not sure it is related to that bug.

In the past I used to set a few exchange rates but I have recently deleted almost all of them and let Manager calculate rates (and hence gains/losses) by itself every time I enter a inter-account transfer between accounts in different currencies. So apart very few occasions in which I had to set forex rates myself for various reasons, I now have only the initial “agreed” exchange rates from when we started (2015) and nothing more. However, now I see that a very recent payment from a client in USD received on a USD account (which is not our base currency) has been converted using the old initial exchange rate, which leads to the outstanding amount to be quite high.

Any idea on why this is happening?

What do you mean by outstanding amount?

If USD client pays into USD bank account, then it doesn’t matter what are your exchange rates. USD balances won’t be affected.

Exchange rates are used to translate foreign currency amounts into base currency when getting financial statements.

Customer statement, invoice balances etc. won’t be affected by exchange rates.

The invoice was in RWF but the payment was done in USD. Usually when this happens I get cash USD and I charge a bit more USD than it should be so that I can go to a forex bureau and exchange the USD in RWF. This way I pay the exact amount to the RWF cash account and keep the little change for myself. But this payment was done on the USD bank account so the same trick doesn’t work. Manager coverts the USD received based on the latest exchange rate USD/RWF and if the exchanged amount it not exactly the same (which is never) there is an overpayment or an unpaid amount.

However the issue here is the exchange rate used, i.e. the one from 2015 even if there have been several inter-account transfers between the USD and RWF accounts at rates that have change significantly over the years.

When invoice is in RWF and you are paid for it in USD, then Manager will ask you two amounts. USD amount actually deposited into bank account and RWF amount which is to offset the invoice. If you don’t enter RWF amount, then Manager will use exchange rate to automatically calculate one.

Manager won’t use exchange rates implied by inter-account transfers. The reason is that any foreign currency transaction could imply exchange rates (not just inter-account transfers) and if you have more than 1 foreign currency transaction in a day, it would be a bit difficult to let Manager pick one exchange rate out of all those implied ones. Therefore the only authoritative place for Manager to look for exchange rates is Exchange Rates section under Settings.

However, as I said, even if you don’t enter recent exchange rates, you can simply provide both amounts (USD & RWF equivalent) directly on transaction screen.

Ok this is clear. Thanks. The issue though is that this payment, if I use the total RWF amount, which is a small amount and is one of its kind, will influence the RWF/USD exchange rate at that time and therefore the forex gains/losses of future USD/RWF transactions. On the other hand maybe I can trace the latest USD/RWF transaction (an inter-account transfer) and create a new exchange rate on the date of the payment using the same exchange rate of that latest inter account transfer. Or even better calculate with that exchange rate how many RWF the payment received in USD corresponds to and use that amount in RWF in the payment so that there will be some money overpaid or underpaid, and I will deal with it for example as bad debts

That’s how it should be.

The difference between the RWF amount you need it to be and what it should be as per your entered exchange rates will be posted to Currency gains / losses.

I’m not sure why you consider currency gains / losses to be a bad thing to happen and why you are trying to avoid them.

I am not trying to avoid them but there are two issues. First, there is a difference between exchanging some money officially i.e. buying $2.000 for RWF 1.8 m at 900 in a forex bureau that gives you a receipt for it (something we need to have) and telling a client to send you a rounded $1.000 to pay a bill for their invoice of RWF 914.540 where in reality the rate is not accurate. The law here does not even allow us to receive payments in forex and we need to convert USD into RWF somehow. Secondly, there is an ongoing debate about whether we should use the official central bank rates or the actual rates at which we pay forex. The point is that this small transaction could influence a lot forex gains/losses and we need to careful as authorities do not really want to take them in consideration, especially when they are losses as they lower the taxes we have to pay. For this reason I prefer to apply the same official rate from the last official purchase of forex and avoid possible issues with authorities.