Odoo Form Builder & Forms
version: 19.0.10.11Build, integrate and deploy forms without a team of developers.
Drag & drop to start, extend with Record Mapping and Simple APIs — both configured right in the Form Builder — when requirements grow.
Enterprise grade forms, simple to complex — one form, everywhere:
backend,
portal,
website and
embedded.
https://surveyjs.io/partner-solutions
No tiers, no usage caps, no per-response fees.
Record Mappings, Server Actions and API logic may need review on major upgrades.
Form examples
Build any form: registrations, bookings, check-ins, surveys, quizzes, calculations and more.
Forms that become Odoo records
Most form tools collect your data somewhere else, then leave you to bridge it back — exports, Zapier, manual re-keying.
Nova Forms (by Nova Code) is built the other way around: forms live inside Odoo, and every submission becomes a clean record in your own database — automatically.
Customize without touching core Odoo
Many custom fields and logic don't need to live in core Odoo. When a form can capture them and link straight to the Odoo record, you keep the core clean and upgrade-friendly.
Move that customization into no-code, upgrade-safe forms where it fits: less custom development where you don't need it, fewer regressions, lower cost.
And if you ever need those custom Odoo fields or logic, you can add them later and populate them from (existing and new) form submissions.
One-time, not monthly.
A monthly subscription elsewhere — one-time here
One license — per production database & per major Odoo version.
Staging and development copies included.
Everything included
| Build & design — no code needed | |
| 30+ field types & logic |
Build anything from a quick contact form to a complex multi-page survey — no limits.
• 30+ field types: text, choice, datetime, rating, slider, matrix, file upload, signature and more. • Conditional logic (show/hide, skip, branching), validation, calculated values and dynamic panels & matrices. • Form designs are standard SurveyJS JSON — portable and upgrade-proof, never locked in. |
| Form Builder |
Design forms visually — no code, no developer needed.
• Powerful drag & drop Form Builder (SurveyJS Creator) packed with features. • Every form design lives safely in your Odoo database as a form builder record. |
| Themes & Styling |
Make every form match your brand — no CSS required (but it's possible).
• Pick from built-in themes or create and save your own. • Customize background, colors, fonts, header, logo and appearance right in the Form Builder. • Apply a theme across one or more Form Builders. See the Themes & Styling section below for examples. |
| Highly configurable |
Tailor every form to your needs — all from the Form Builder, no code required.
• Publish to backend, portal, website or embedded on a 3rd-party site. • Post-submission redirect, reminder rules and more — per form. • Sensible defaults out of the box — fine-tune only what you need. |
| Publish & use everywhere | |
| Forms — build once, use everywhere |
Build a form once — publish and use it everywhere, with every response stored in Odoo.
• Create, deploy, publish and share a form: internally, portal, website, embedded on a 3rd-party website, by email or a hyperlink. • The same form works everywhere — backend, portal, website and embedded — build and maintain it just once. • Assign forms to a (portal) user and send an invitation by mail. • View a submission anywhere (backend, portal, website, embedded), where access allows. • All submissions are stored in your Odoo database as form submission records. |
| Website — Drag & drop Form block (snippet) |
This requires the Forms • Website Snippet module:
https://apps.odoo.com/apps/modules/19.0/website_formio_snippet
A redirect after submission can also be configured. |
| Embedded Forms — on external websites |
• Embedding a Form on an external website is just a copy/paste of a HTML snippet.
• A redirect after submission can also be configured. |
| Captcha — spam & bot protection for public forms |
Protect public (unauthenticated) forms against automated submissions — enable it per form with a single setting.
• Powered by a privacy-first, included captcha — no external service, no tracking, no cookies (GDPR-friendly). • Invisible to the visitor and accessible (WCAG 2.2 AA); verified server-side on submit. • Works on website and embedded forms. |
| Multilingual & Translations management |
• Forms and Builders are multilingual.
• Language-switch buttons are automatically available in the form and form builder. • Manage custom translations (e.g. labels, select choices, buttons) in the Form Builder. • The default language is automatically determined by: website or logged in (portal) user. • If the website is enabled, the language (translations) also react upon the website language-switch. |
| Integrate & automate with Odoo | |
| Odoo apps |
Connect Forms to the rest of your Odoo — the possibilities are unlimited.
• Integrate with any app: CRM, Helpdesk, Sales, HR, Inventory, e-commerce, Website and more. • Ready-made integration modules to get you started — explore them via the "Nova Code" author link at the top. |
| Record Mapping (create or update records) |
• Create or update (upsert) Odoo records from a Form submission, by simple configuration in the Form Builder — no code. • Map form fields onto a target model's fields; match an existing record (upsert) or always create a new one. • Dropdowns map to Many2one (incl. relation lookup), and Dynamic Matrix / Panel rows map to One2many child records. • Configure one or more record mappings per form — chain them so a later mapping can use a record created by an earlier one. Examples: • Create or update a Contact (res.partner) from a registration form. • Create a CRM Lead and link it to the Contact created by an earlier mapping. This requires the Forms • Components API module:
https://apps.odoo.com/apps/modules/19.0/formio_components_api
Note: from Odoo 20, this will be included in this (formio) module. |
| Server Action(s) to process a Form submission |
For advanced or custom processing of Form submissions with Python code — beyond what no-code Record Mapping (above) covers. Server Actions can be implemented to process Form submissions. See also the section about Server Actions below. Form submission fields (values) can be read and used as fields for an Odoo model record. Examples: • Create a CRM Lead • Create a Helpdesk Ticket • Create or update a Stock Picking (receipt, delivery) • Create a Sign Request document with some placeholders pre-filled by form fields and email the Sign Request link. • Email a PDF report (QWeb generated) from the form submission data. |
| PDF Report Generation |
Generate professional PDF documents from Form submissions out of the box — no code, no developer needed.
• Works on Odoo's native QWeb report engine — full control over layout and branding. • Print or email the generated PDF automatically on submission. • Ideal for confirmations, registrations, certificates and more. • Two report variants included — generate the PDF in the logged-in user's language & locale, or in the partner's language & locale from the form record. This requires the Forms • QWeb Reports module:
https://apps.odoo.com/apps/modules/19.0/formio_report_qweb
|
| Field APIs — pre-fill, change, domain |
Connect form fields to live Odoo data through a set of server-side APIs — available and configurable right in the Form Builder.
• Pre-fill — load and populate field values from Odoo records or any custom source. • Change — react to a field change and update other fields in response. • Domain — filter the choices of a select/dropdown field dynamically. Examples: • For a logged-in portal user, populate form fields with company (parent) details, address, invoices or shipments. • Filter a product select/dropdown by product category or attributes. • On selecting a product, update price, unit or description fields automatically. This requires the Forms • Components API module:
https://apps.odoo.com/apps/modules/19.0/formio_components_api
Note: from Odoo 20, this will be included in this (formio) module. |
| Your data, your control | |
| Full control and data ownership, privacy and compliance | All data is stored in the Odoo database (form builders, form submissions etc). |
| Built for autonomy — no lock-in by design |
• Form designs and submissions are stored as standard SurveyJS JSON — portable to any system that speaks SurveyJS (open source form software). • Migrate them to another SurveyJS-based stack whenever you choose. • Your data is never trapped in a proprietary format. |
| Unlimited |
• Unlimited form builders, forms, submissions and users — all included in one license.
• No tiers, no usage caps, no per-response fees. |
| JSON data |
• A Form Builder (design) is stored as JSON data in the schema field of a form builder record.
• A submitted Form (input data) is stored as JSON data in the submission field of a form record. |
| Fast to deploy, runs anywhere | |
| No iframes — Rendering happens in an encapsulated Shadow DOM |
• Form Builder and Forms render in their own Shadow DOM — fully isolated, with no resizing, style leakage or cross-origin headaches.
• The same applies everywhere — Odoo backend, portal, website, and embedded forms. |
| Hosting types | Works on Odoo.sh or any Linux hosting of your choice. |
| Odoo editions | Compatible with Odoo Enterprise and Community. |
| Installation (app/module in general) | After installation you can start right away. No extra technical requirements or setup. |
| Installing and upgrading SurveyJS (Form Builder and Form Library) is simple and fast | Upgrade SurveyJS package when a new version is available, by just a few clicks. |
| Future-proof & trusted | |
| AI-ready |
Future-proof by design — built to grow with AI.
• Forms and submissions are structured JSON — easy for AI to read, generate and process. • Data lives in standard Odoo models — AI-readiness as Odoo's AI features grow. |
| Upgrade-proof by design |
• Form Builder, Forms and related data migrate seamlessly — stored as JSON, compatible across Odoo versions. • Custom API and Server Action logic may need review on major upgrades. |
| Quality control | Backed by a comprehensive suite of 150+ unit tests, safeguarding stability and reliability — and compatibility across Odoo versions. |
| Nova Code and SurveyJS are EU-based |
Nova Code and SurveyJS [1] are both EU companies. [1] SurveyJS provides the JavaScript libraries that power the Form Builder and Forms. |
| Developer Friendly |
• Extend, customize the Forms modules.
• Develop additional Forms modules. • Develop custom Form fields (questions) e.g. AI prompt, QR-code scanning, map etc. |
| We also open source |
We provide an open source Python package, used in some of the modules, that parses and transforms SurveyJS Form Builder (Creator) schemas and Form responses into usable Python objects. Explore the source code or contribute on GitHub: https://github.com/novacode-nl/python-surveyjs
|
Form Builders
Configure and design
Form Builders
Form Builder Configuration
Form Builder — SurveyJS Creator
Form Builder Configuration — Advanced features by other modules
Themes & Styling
Style your Forms with Themes.
Pick and customize a Theme in the Form Builder. Choose from the built-in Themes or save your own,
then apply it to one or more Form Builders.
Form Builder - Theme tab (select and apply a Theme)
Form Builder - Themes (built-in and custom Themes)
Form Builder - Theme appearance settings (Advanced mode)
Forms & Submissions
Create or share a Form: internal, website, portal, by email or a hyperlink
Form: Pending
Form: Completed
Form: Submission form-view
Form Submissions
Record Mapping (create or update records)
Form Builder — Record Mappings (button)
Form Builder — Record Mapping configuration
Record Mapping is provided by the Forms • Components API (formio_components_api) module — included from Odoo 20.
Server Actions
A Server Action can process a Form submission.
For example, to integrate the form data with other Odoo apps (modules), create a helpdesk ticket, CRM Lead or other requirements.
Form Builder - Server Actions (button)
Server Action - Code
Server Action - Help
User Preferences
Personal Form Builder preferences (My User → My Preferences → Forms)
Demo
Visit https://surveyjs.io for a free Form Builder (Creator) demo and the Form Library Demos.
Click the "Live Preview" button at the top of this page to request a live demo (video call) from our contact form.
Contact Us
Have a question, or need a live demo (video call)?
For advanced form building and integrations to support, training and best practices.
Get in touch via our Contact Form
https://www.novaforms.io/contact
Highly recommended additional modules
The Forms app (formio module) is already included when you purchase another module (see modules below), which saves costs.
| Name | URL | Components API |
https://apps.odoo.com/apps/modules/19.0/formio_components_api/
Note: from Odoo 20, this will be included in this (formio) module. |
|---|---|
| Website Snippet |
https://apps.odoo.com/apps/modules/19.0/website_formio_snippet/
|
| Contacts |
https://apps.odoo.com/apps/modules/19.0/formio_partner/
|
| CRM |
https://apps.odoo.com/apps/modules/19.0/formio_crm/
|
| Helpdesk |
https://apps.odoo.com/apps/modules/19.0/formio_helpdesk/
|
| QWeb Reports |
https://apps.odoo.com/apps/modules/19.0/formio_report_qweb/
|
| ETL Interface |
https://apps.odoo.com/apps/modules/19.0/formio_etl/
|
| Deploy Tool |
https://apps.odoo.com/apps/modules/19.0/formio_deploy/
|
Under no circumstances we will refund the costs of the Forms (formio) modules, i.e. to try it out.
License
One license — per production database & per major Odoo version. Staging and development copies included.
Contact us for multi-project, reseller and custom licensing.
The Nova Forms App is powered by the SurveyJS form libraries (https://surveyjs.io).
No additional SurveyJS license is needed for normal use
Building, styling, deploying and integrating forms — and using the SurveyJS question types and extensions that ship with Nova Forms — is fully covered.
A separate SurveyJS Survey Creator commercial license (per developer) is only required if you modify or extend SurveyJS itself at the source-code level.
If that applies, contact us at https://www.novaforms.io/contact and we'll help you get it right.
What's new in version >= 19.0.10.0
The Form Builder and Form Renderer are powered by a new engine based on SurveyJS, now the default for all new forms.
SurveyJS is a better fit for modern Odoo versions, enabling richer features, better integrations and a solid long-term foundation.
The module (for Odoo 19.0) ships with a hybrid implementation supporting both engines, so existing forms keep working.
Note:
From Odoo 20.0 onward, the previous engine will no longer be supported and forms (form builders) should be migrated.
Contact us for more information.
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
Discuss (mail)
|
| Lines of code | 20758 |
| Technical Name |
formio |
| License | OPL-1 |
| Website | https://www.novaforms.io |
Odoo Proprietary License v1.0 This software and associated files (the "Software") may only be used (executed, modified, executed after modifications) if you have purchased a valid license from the authors, typically via Odoo Apps, or if you have received a written agreement from the authors of the Software (see the COPYRIGHT file). You may develop Odoo modules that use the Software as a library (typically by depending on it, importing it and using its resources), but without copying any source code or material from the Software. You may distribute those modules under the license of your choice, provided that this license is compatible with the terms of the Odoo Proprietary License (For example: LGPL, MIT, or proprietary licenses similar to this one). It is forbidden to publish, distribute, sublicense, or sell copies of the Software or modified copies of the Software. The above copyright notice and this permission notice must be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Please log in to comment on this module
Super helpful module and amazing developer support
Nova Forms is a very useful and well-designed module. It makes building and managing complex forms in Odoo much easier, and the integration works smoothly on my website. The documentation and configuration are clear, and the module works well even before using a license key.
Most importantly, the developer is extremely responsive and helpful – my questions about setup and licensing were answered quickly and in detail. I’m very satisfied so far and would highly recommend this module to other Odoo users.
Wow, what a useful module
If you need super customizable forms look no further. Would definitely recommend as it’s already saving us so much time in our operations.
Excellent module with outstanding flexibility
Nova Forms has been a great addition to our Odoo environment. The module is powerful, flexible, and makes it possible to create highly customized forms without complex development work. It covers a wide range of use cases and integrates smoothly with existing Odoo processes.
What impressed us the most is the level of customization available. The form builder is intuitive, while still offering advanced capabilities for more complex business requirements. It has significantly reduced the time needed to implement and maintain custom forms.
The developer support is also exceptional. Questions are answered quickly, solutions are provided efficiently, and the documentation is clear and helpful.
Highly recommended for any Odoo company looking for a professional and reliable form solution.
Game-changer for Odoo
Exceptionally well-built and extremely versatile. The drag-and-drop builder is effortless to use, and the flexibility truly feels unlimited.
If you want reliable, professional forms in Odoo, this is the top choice. Highly recommended!
Game-changer for Odoo
Exceptionally well-built and extremely versatile. The drag-and-drop builder is effortless to use, and the flexibility truly feels unlimited.
If you want reliable, professional forms in Odoo, this is the top choice. Highly recommended!
Great addition
Wow, this module has allowed for some huge time savings and I’d recommend it for all your form needs. The possibilities with the right knowledge feel endless. We look forward to seeing even more ways I can implement forms with Odoo in the future.