Hi,
This error occurs because the journal entry lines in Odoo don’t share the same currency. For a journal entry to be valid, all lines must either use the same foreign currency or fall back to the company’s base currency. If one line has a foreign currency set while another does not, Odoo prevents cancellation or reversal.
To resolve it, first review the journal entry lines and check the Currency field. If the entry isn’t posted, correct the mismatch by ensuring all lines align in currency. If the entry is posted, you’ll need to enable the Allow Cancelling Entries option in Accounting Settings, then cancel, fix the lines, and repost. If that’s not possible because of locks or a closed period, you can create a manual adjusting entry instead.
For prevention, make sure your journals (e.g., Cash or Bank) are configured with the correct default currency so mixed-currency items aren’t created. While customizations can bypass this restriction, it’s safer to enforce consistent currency use to maintain clean accounting records.
Hope it helps