When creating a Payment Entry from a Purchase Invoice whose currency is EUR while the Company currency is KES, ERPNext creates a Payment Entry where the paid/received amount ends up in KES and the exchange/conversion rate (conversion_rate) is applied again — producing an incorrectly large / duplicated amount. This results in wrong Payment Entry amounts and incorrect GL postings for multi-currency invoices.
Hi @shiro_M
You need to check why the system is taking Paid Amount (EUR) 2,560,000
Do you have other outstanding invoices that it is trying to pay for?
Hope it helps
No, for this specific payment, there were no outstanding invoices at the time of posting
I find it an interesting coincidence that Euro 100 X 160 = KSH 16,000 X 160 = Euro 2,560,000
Maybe its a bug
Try reporting it on Issues · frappe/erpnext · GitHub
Okay. Let me raise it.
Hello.
I have a bigger issue:
- With the payment entry creating incorrect paid/received amounts, I manually changed the values on the payment value so that it correctly shows:
Payment Entry
paid_from_account_currency = EUR
paid_amount = 100 EUR
source_rate = 160
base_paid_amount = 16,000 KES
- But, on the next process of bank reconciliation:
Bank Reconciliation → Match Against Voucher uses the wrong currency/amount for a multi-currency Payment Entry.
Despite the Payment entry showing base_paid_amount = KES 16000, the bank reconciliation shows Remaining = EUR 16,000….See screenshot.
@asieftejani I raised the issue and a PR #58432 was done.
I backported that fix onto my v15.108.1 installation and verified that:
• The patched payment_entry.js is being loaded by Frappe.
• The new previous_account_currency / account_currency_changed logic is present in the live browser metadata.
• My initial issue is still reproducible after applying the PR.
So PR #58432 does not appear to resolve this particular multicurrency scenario.
In this scenario of where the changes are not bringing forth desired results, what more support is available?
Hi @shiro_M
It seems fix(accounts): correct payment currency conversion by Pandiyan5273 · Pull Request #58432 · frappe/erpnext · GitHub was closed without merging so I dont think any changes were made
It does not resolve the issue on v15.
Hi @shiro_M, is the failing Purchase Invoice in EUR or KES? The forum description says EUR, while the GitHub steps say KES.
I ran an isolated check of the unmodified v15.108.1 amount helper, with synthetic inputs and mocked exchange-rate/database calls. For an EUR 100 invoice, KES supplier accounting, outstanding amount 16,000 and conversion rate 160:
- With no bank selected, the helper returns provisional paid_amount = 2,560,000 and received_amount = 16,000.
- With the EUR bank supplied at creation, it returns paid_amount = 100 and received_amount = 16,000.
This reproduces the first number in an isolated helper, not the full browser sequence, ledger posting or bank reconciliation. AI tools assisted this check.
Could you confirm the invoice currency, supplier account currency, and the two amounts returned before choosing the EUR bank? Just those field values would help; no customer records are needed.

