OdooWiki OCA HUB

Website Form Builder

website_form_builder folder_open OCA/website open_in_new
Website License: LGPL-3

This module provides websites the feature of adding custom forms in any page.

auto_awesome What this module does

AI-generated from the code · Odoo 12.0

Lets you build custom website forms that create records in Odoo, by dragging a form snippet onto any page and choosing which model and fields it should fill in.

This module extends the website form snippet so that, from the website editor, you can drop a form on any page and decide what it does.

  • When you add the form snippet, a dialog asks which Odoo model the form should create records in; only models marked as available for website forms appear in the list.
  • From the Customize menu you can add fields taken from that model, add your own custom fields (text, number, date, selection, radio buttons, etc.), mark a field as required, hide it, or set a default value.
  • Required model fields are added automatically when you pick a model, and changing the model resets the form fields.
  • Hiding a required field prompts you for a default value so the record can still be created.
  • A Send button and a result area are added automatically to the form.
  • In the backend, on the model and field configuration screens, new options let administrators allow a model for website forms, give it a display label, choose a default field, and blacklist fields that must not be used in forms.
  • The module touches ir.model and ir.model.fields, and works together with the website form snippet (s_website_form).

Depends on

website_form

Text generated by AI (DeepSeek) from reading the Odoo 12.0 code on GitHub; it may contain mistakes, so check the code before deciding. The module is very large and only part of the code was read. View the code on GitHub

Availability by version

Reviewed: 2026-11-03
Confirmed (verified in repository and branch) Estimated (unverified) No information

Confirmation status: 1 confirmed, 8 with no information of 9 versions.

terminal Installation and usage

OCA documentation · Odoo 12.0

Install some other addon that provides website_form support to benefit from this one's features. Hints:

  • website_crm
  • website_form_project
  • website_hr_recruitment
  • website_sale

To configure this module, you need to:

  • Have Administration / Settings privileges.
  • Go to Settings > Activate developer mode.
  • Go to Settings > Technical > Database Structure > Models.
  • Search for the model you want to manage website form access for.
  • When you find it, it will have a Website Forms section where you can:
  • Allow the model to get forms, by checking Allowed to use in forms.
  • Give the model forms a better name in Label for form action.
  • Choose the field where to store custom fields data in Field for custom form data. If you leave this one empty and the model is a mail thread, a new message will be appended with that custom data.
  • In the Fields tab, there's a new column called Blacklisted in web forms. It's a security feature that forbids form submitters to write to those fields. When you create a new website form, all its model fields are automatically whitelisted for the sake of improving the UX. If you want to have higher control, come back here after creating the form and blacklist any fields you want, although that will only work for custom fields.

To use this module, you need to:

  • Go to any of your website pages.
  • Edit it.
  • Drag and drop the Form snippet into the page.
  • Use the snippet overlay to add, edit and remove fields.
  • If you want to set a hidden field, make sure you set a valid default value on it, or users may get hidden errors and they might even be unable to send the form!
info

Data imported from GitHub: this sheet reflects the latest catalog review, not a live lookup. Always check the module documentation and staging before installing in production.