v 11.0 v 12.0 Third Party 2289
Download for v 11.0 Deploy on Odoo.sh
Lines of code 3677
Technical Name formio
Also available in version v 12.0 v 14.0 v 13.0
You bought this module and need support? Click here!
Lines of code 3677
Technical Name formio
Also available in version v 12.0 v 14.0 v 13.0

Form Builder & Forms integration

Build easy-to-use, professional and versatile Forms to integrate and collect any information you need for your business.

  • A powerful "Drag and drop" Form Builder in Odoo.
  • Start Building Forms in Odoo.
  • Configure and manage Form Builders in Odoo.
  • Show and open Form Submissions in Odoo.
  • On-premise hosting and storage of data (form builders/designs, submissions). So you're under control!
  • After installation of this module you can start right away with building and publishing forms.
  • No extra installation and setup requirements are needed.
  • Translations: Easy management of translations for "Form.io" its translatable terms.
  • Provide Form-fields with data from Odoo. For example: a selection/dropdown field where choices are Odoo Products, filtered by some product-category.
  • Open source, so contributions are welcome.

Visit the online Demo (Odoo Community v13)


Users (Email / Password)

  • demo / demo
  • portal / portal

Check out the links below, for more info about the Form.io Platform

Form.io Form.io Introduction Form Builder demo

Form Builders

Manage, configure and store in Odoo

List Form Builders

Edit Form Builder (Odoo record)

"Form.io" Form Builder

Forms & Submissions

Start with Form (from Odoo or by hyperlink)

"Form.io" Form (to fill in)

List Form Submissions (Odoo kanban/list of records)

A Form Submission (Odoo record)



  • Fix: Issue in Form (form-view) searching Builder(s) really didn't worked properly.
    Technical details:
    This change addresses the formio.builder, adding the search method for the computed field display_name_full which is used as _rec_name.


  • Fix: Forms should be accessible when user belongs to both groups: User: Assigned forms and User: All forms
    Group User: All forms takes precedence over User: Assigned forms.


  • In the create Form (form-view) by default provide only Form Builders without Resource-model in the Form Builder drop-down field.
    Specific modules extend this (domain) filter to add appropriate Form Builders related to the (active) Resource-model - e.g. formio_sale, formio_stock.


  • Improvement: ETL Odoo (resource) data into Form, requires to bypass access control on the target/resource model.
    (Use sudo here).


  • Basic setup to deploy/share public Forms, by a setting (checkbox) in Form Builder.
  • Implement sequence field in Form. Usefull when storing and listing forms in an ordered way.
  • New setting (in Form Builder) which instructs the Form whether to show/hide the UUID in Form footer.
  • Store those show/hide setting fields in the Form, instead of joining its relational Builder value (in readonly mode).
  • Improvements in tree/list and form views regarding Form and Builder.


  • New setting (in Form Builder) which instructs the Form whether to show/hide the Title.
  • Moved the Form Title from the main HTML-document into the embedded document (iframe).
    This improves the embedded Form experience.


  • New settings (in Form Builder) which instructs the Form whether to show/hide some metadata: Assigned user, Submission user & date, ID, State.
    The default is to show all these metadata fields (for backwards compatibility and no data migration needed).
  • Import formio.js version 3.x assets and bootstrap (CSS) instead of CDN.
  • Fix silly Javascript bug: _.extend (underscore.js ain't loaded here). Use jQuery extend.
  • Add help text regarding issue with (Formio.js) and view_as_html setting select component rendering error in viewAsHtml model #1545


  • Add formio.js v4.9.26 assets https://github.com/formio/formio.js/releases/tag/v4.9.26
  • User in group "Forms Admin" can edit the Form it's submission data, for a new Form (if ain't stored).


  • Don't override provided vals in formio.form function _prepare_create_vals().


  • New feature: ETL Odoo (resource) data into Form.
    Supported fields:
    • Scalar fields e.g. Char, Text, Integer, Boolean, Date, Datetime
    • Many2one field (load it's leaf/scalar field)
    • One2many field, supported by Form.io Datagrid component
    (documention and examples shall be added soon)


  • Optional configuration to allow specific User Group(s) to force update of a Form state field (draft, complete, cancel) e.g. by buttons. Feature request: https://github.com/novacode-nl/odoo-formio/issues/36


  • Fix portal iframe (height) resizing issue.
    Issue report: https://github.com/novacode-nl/odoo-formio/issues/35


  • Changed the way Resource Fields are determined and stored. Not by dependent/computed fields anymore, which caused all kind of troubles.
    Affected fields: res_name, res_info, res_act_window_url and res_partner_id.
    !! CAUTION, BEFORE UPGRADE: Test first and be sure all Forms data (regarding these fields) has been migrated properly.


  • Form Builder layout improvements: full width, remove horizontal scrollbar.


  • Fix (workaround) to solve form height-resizing issues.
    Issue report: https://github.com/novacode-nl/odoo-formio/issues/20


  • Add formio.js v4.9.23 assets.
  • Remove formio.js "latest" version (CDN URLs). Requests from CDN caused time-outs.


  • Odoo formio view types for Builder and Form. Finally one can switch view types (form, formio) within the window action.
  • Moved the so-called Form dock (info bar) into the iframe. This updates the info on a (iframe) window reload.
  • Remove the submit done url implementation, which is useless in a backend usage/context.
  • Other improvements and simplification.


  • Extend formio.form create methods with _prepare_create_vals method, which in turn specific modules could call to assign field vals.
  • Fix method compute_res_fields which stores fields regarding the resource model (made possible by change in former point).


  • Computed fields regarding resource model: Store res_name and res_partner_id. Change dependent compute method.
  • Add (related) field submission partner.


  • Change URLs and controllers FROM /formio/form/<action>/<string:uuid> URLs TO /formio/form/<string:uuid>/<action>. This solves issues regarding relative URLs from a Formio Javascript perspective (components). The UUID was stripped by the Formio Javascript client API.
    Should solve: https://github.com/novacode-nl/odoo-formio/issues/11
  • Remove 2 legacy (obsolete) controller methods for routes: /formio/form/<string:uuid> and /formio/builder/<int:builder_id>


  • Prevent Javascript clashes between Odoo and Form.io. Hence remove all Odoo Javascript (assets) loading in the Form.io iframe.
  • Add and load standalone JsonRPC client.


  • Portal: Improved (refactored) controller layout values method.
  • Portal: form buttons now keep query-params.


  • Demo Builder: Save as Draft (button).
  • Form update to Draft fix (workaround). Remove submission_data['submit'].


  • Include and serve the Formio.js library assets (JS, CSS) within the module. Don't use CDN anymore.
  • Click button to display the Form Builder in Full Screen.


  • Portal: Improved (refactored) controller layout values method.
  • Portal: form buttons now keep query-params.


  • Rename (consistency) Builder form-view id/ref: from view_formio_builder to view_formio_builder_form.


  • Possible "Resource model(s)" needs to be registered from sub-modules e.g. formio_sale. Just choosing from all models is useless and confuses the user about its functionality.


  • Form.io embedded in iframe. This avoids clashes (Javascript and CSS) between Odoo and Form.io.
  • Redesign of Form.io templates


  • Search filters on Form Builder and Forms.
  • Assign a user (owner/author/designer) to a Form Builder.


  • Change default forms view to list.
  • Improve forms kanban to group by state.


  • Form Builder versioning. Also create a new Builder version-record (from existing one).


  • Form Builder states: Draft (in design), Current (published) and Obsolete (unpublished).


  • Redesign of Builder and Form templates. A simplification and improvement.
  • Hopefully fixed enough styling issues due to Bootstrap 4 VS 3 presence (Odoo, Formio) and differences.
  • Other small improvements


  • Include new Form.io versions and assets (3.27.3, 4.0.8)
  • Add recommendation into the description of the "latest" Form.io version.


  • Translation system for Form labels, placeholders etc.
  • Language selector on Form.


  • Simple form wizards.


  • Access-check improvements.
  • UI improvements.
  • Dutch translations.


  • Dropdown button in Portal, to add and fill-in new Form(s).


  • Form state (Pending, In Progress, Complete, Canceled).
  • Form is readonly if state is Complete or Canceled.


  • Form invitation mail.
  • Improvements regarding form assignment (user filter).


  • Portal User can use forms.
  • Restrict access to assigned forms (Portal User, Internal User).


  • Translations system to manage the Form.io translatable terms and load into the form.


  • Form.io (library: JS, CSS) version management and loading.


  • Initial version

Please log in to comment on this module

  • The author can leave a single reply to each comment.
  • This section is meant to ask simple questions or leave a rating. Every report of a problem experienced while using the module should be addressed to the author directly (refer to the following point).
  • If you want to start a discussion with the author, please use the developer contact information. They can usually be found in the description.
Please choose a rating from 1 to 5 for this module.