Hi.
This error — “ValueError: Unknown field state on model account.payment” — occurs when Odoo tries to access a field named state on the account.payment model, but that field no longer exists in your version of Odoo. It usually happens after an upgrade (for example, from Odoo 16 to 17 or 18) or when a custom or third-party module hasn’t been updated. In recent Odoo versions, the state field was replaced with fields like payment_state or handled through related models such as account.move or account.payment.batch. To fix it, activate developer mode, go to Settings → Technical → User Interface → Views, and search for any inherited views of account.payment that contain . Remove or replace that line with , then update the affected module. If the error appears only during batch reconciliation, check for outdated customizations or modules that reference state in account.payment.batch or reconciliation views. Always make sure that all modules are from the correct branch for your Odoo version (for example, use the 18.0 branch if your Odoo is version 18). After fixing and updating the modules, clear the cache and try reconciling again — the error should disappear.
Hope it helps.