iban
A char field that checks an IBAN against the server while the user types, debounced so it does not call on every keystroke. Odoo 20 removes both the widget and the server method behind it.
September 18, 2026Updated September 18, 20264 min read
| Technical name | iban |
|---|---|
| Field types | char |
| Views | form |
| Module | base_iban, installed with Accounting |
| Used in core | 0 explicit uses in Odoo 19 Community or Enterprise. Removed entirely in Odoo 20. |
| Versions | Odoo 19.0 |
| No-code setup | No. There is no Studio entry for this widget. |
| Alternatives | char, many2many_tags_banks |
What the iban widget does
What this means for your team
Working examples
Both halves of it are gone in Odoo 20
Version compatibility
| Version | Status | Notes |
|---|---|---|
| Odoo 19.0 | Verified | Verified against the shipped 19.0 source. |
| Odoo 20.0 | Not available | Widget and its check_iban server method both absent from the 20.0 source. |
Present in Odoo 19, fully removed in Odoo 20 including its server method.
What is changing in Odoo 20
Common problems and fixes
| Symptom | Cause and fix |
|---|---|
| The validity indicator disappeared after upgrading to Odoo 20 | The widget was removed and base_iban no longer ships any JavaScript. Validate server-side in a constraint, or build a custom widget with its own validation method. |
| A custom reimplementation calls check_iban and fails on Odoo 20 | That method is not in the Odoo 20 Python source either. Implement the checksum yourself or use a Python IBAN library. |
| A short entry is marked invalid immediately on Odoo 19 | The client-side pattern requires two letters followed by at least three more characters before any server call. Expected. The indicator settles once enough of the IBAN is typed. |
| An empty field is not marked invalid | Deliberate. An empty value sets the state to unknown rather than false. Use a required attribute if the field must be filled. |
Iban widget vs the alternatives
| Widget | Best for | Key difference |
|---|---|---|
iban | Catching a wrong bank account at entry, on Odoo 19 | Server-backed live validation, removed entirely in Odoo 20 |
| char | A plain account number field | No validation of any kind |
| many2many_tags_banks | Showing a partner's bank accounts as tags | Displays accounts rather than validating one |
Frequently asked questions
Does the Odoo iban widget still exist in Odoo 20?+
Can I reimplement Odoo's IBAN validation on Odoo 20?+
How often does the Odoo 19 iban widget call the server?+
Bank details that only fail at payment time?
Wrong account numbers surface at the worst possible moment. We put validation where it belongs, at entry and at import, so the error is caught by the person who can still fix it rather than by a returned payment.
Talk to an Odoo consultant