open_move_widget
The open_move_widget turns the Journal Entry number in an items list into a link that jumps straight to the entry's best business view, an invoice, a payment or the raw journal entry.
August 25, 2026Updated August 25, 20265 min read
| Technical name | open_move_widget |
|---|---|
| Field types | char |
| Views | list |
| Module | account, installed with Invoicing or Accounting |
| Used in core | 2 occurrences in 1 module: the Journal Items and Payment Items lists on account.move.line |
| Versions | Odoo 20.0, Odoo 19.0, Odoo 18.0, Odoo 17.0, Odoo 16.0 |
| No-code setup | No. Applied in view XML only; Studio has no toggle for it |
| Alternatives | line_open_move_widget, many2one, x2many_buttons |
What the open move widget does
What this means for your team
Working examples
Why it works everywhere since 17, and did not in 16
Version compatibility
| Version | Status | Notes |
|---|---|---|
| Odoo 20.0 | In development | Not released. The development branch is byte-identical to 19 apart from cosmetic template rewrites. Re-verified after launch. |
| Odoo 19.0 | Verified | Verified against the shipped source; identical to 18. |
| Odoo 18.0 | Verified | Identical file apart from the removed odoo-module pragma. |
| Odoo 17.0 | Verified | First generic version: the target model became the view's own model instead of hardcoded account.move.line. |
| Odoo 16.0 | Partial / changed | Works on account.move.line only; the model is hardcoded and a parallel legacy-view implementation ships alongside. |
What is changing in Odoo 20
Common problems and fixes
| Symptom | Cause and fix |
|---|---|
| Clicking the number raises an RPC error on a custom model | Since 17 the widget calls action_open_business_doc on the view's model, and your model does not define it. Implement action_open_business_doc returning an action dict, or use a many2one widget instead. |
| The column cannot be edited even though the list is editable | The widget renders only an anchor; there is no input in any state. Expected. Edit the number on the journal entry form if you must. |
| The cell shows a slash instead of a number | The field is empty, typically a draft entry that has not been assigned a sequence number yet. Post the entry; the slash is the widget's designed empty-value display. |
| Clicking opens an invoice instead of the journal entry | action_open_business_doc resolves the most specific business document for the line. Expected. Open the entry from the invoice's Journal Entry smart link if you need the raw move. |
| Options passed in the view have no effect | The registration declares no options and no extractProps; everything is ignored. There is nothing to configure. Subclass the component for different behavior. |
Open move widget vs the alternatives
| Widget | Best for | Key difference |
|---|---|---|
open_move_widget | Entry-number columns in accounting item lists | Renders a char value as a link that opens the line's business document via action_open_business_doc |
| line_open_move_widget | many2one fields pointing at journal items, as on analytic lines | Full many2one editor whose internal-link arrow performs the same business-doc jump |
| many2one | Ordinary relations where the standard form link is fine | Editable relation field; opens the raw related form rather than a resolved business document |
| x2many_buttons | Jumping to a set of related records shown as buttons | Renders up to a few records as buttons and also routes through action_open_business_doc |
Frequently asked questions
What does open_move_widget actually do?+
Which views use open_move_widget in standard Odoo?+
Does open_move_widget have any options?+
Can I use open_move_widget outside accounting?+
Why does the column show / for some lines?+
Will open_move_widget change in Odoo 20?+
Custom accounting lists that drill down like core?
One-click navigation from operational lists to the documents behind them is the difference between a report people trust and a spreadsheet they export. We build custom Odoo list views, drill-downs and accounting screens on every version from 16 to 19.
Get your views built right