| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Sales (sale_management)
• Discuss (mail) • Invoicing (account) |
| Community Apps Dependencies | Show |
| Lines of code | 2901 |
| Technical Name |
ek_checklist_sale |
| License | OPL-1 |
| Website | https://ekika.co |
| Versions | 18.0 19.0 |
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Sales (sale_management)
• Discuss (mail) • Invoicing (account) |
| Community Apps Dependencies | Show |
| Lines of code | 2901 |
| Technical Name |
ek_checklist_sale |
| License | OPL-1 |
| Website | https://ekika.co |
| Versions | 18.0 19.0 |
Checklist Manager for Sales
Enforce structured operational signoff on Sales Orders before your team can confirm them. Define reusable checklist templates with items, assignees, deadlines, and evidence - then wire them as a workflow gate that blocks confirmation until every required step is done. A lightweight side-drawer panel keeps all checks visible right inside the record, and every action is logged to an immutable audit trail.
Key Features
-
Sales Confirmation Gate
-
Reusable Checklist Templates
-
Side-Drawer Panel on Forms
-
Auto & Manual Policies
-
Per-Item Assignees & Deadlines
-
Required Execution Notes
-
Evidence File Attachments
-
Skip / Not Applicable States
-
Real-Time Progress % Tracking
-
Immutable Audit Trail
-
Odoo Activity Sync
-
Manager / Auditor / User Roles
-
Multi-Company Support
-
Domain-Based Applicability Filter
Sales Confirmation Gate
When a checklist policy is set to Workflow Gate on the Sales Order Confirm event, Odoo refuses to confirm the order until all required checklist items are completed. This enforcement runs at the server level - no UI tricks, no workarounds.
- Gate fires on every
action_confirmcall, including API calls - Error message names the blocking checklist and remaining required item count
- Gate event key
sale.order.confirmregistered automatically on install
Checklist Template Builder
Create reusable checklist templates targeting any Odoo model - Sales Orders, Contacts, Manufacturing Orders, or any custom model. Each template holds an ordered list of items and one or more policies that control when and how the checklist is applied.
- Target any non-transient Odoo model from a single template manager
- Progress policy: Required Items only or All Items
- Starter "Sales Order Readiness" template included out of the box
Checklist Launcher Button
A compact launcher box appears in the bottom-right dock of every supported form view â even when the drawer is closed, the current checklist state is instantly visible without opening anything. The button shows a live completion badge (e.g. "1/3"), status pills for blocking and overdue items, and a Manual indicator if manual templates are available to start.
- Stat-button style: shows required done/total count at a glance
- Danger pill when a gate checklist is blocking confirmation
- Warning pill for overdue items â no need to open the drawer to spot problems
Side-Drawer Panel
An OWL-powered side drawer appears on every supported form view - users never navigate away from the record to complete a checklist. The launcher button shows a live badge with completion %, blocking count, and overdue count so the signoff state is always visible at a glance.
- Live badge: completion %, blocking, and overdue pills updated in real time
- Grouped item sections: Pending, Done, Skipped - collapsible
- Start new manual checklists from the drawer without leaving the order
Flexible Policy Engine
Each template can have multiple policies - each policy independently controls creation mode (Manual or Automatic) and enforcement mode (Advisory or Workflow Gate). A domain filter scopes which records the policy matches, so you can gate only high-value orders or specific customer segments.
- Auto creation: checklist starts when a matching order is opened or created
- Domain builder filters by any field on the sale order model
- Multiple gate events per policy - assign exactly which Odoo actions to block
Per-Item Assignees & Deadlines
Each template item can be pre-configured with an assignee type - the current user, the record's responsible user, or a specific user field on the target model. Deadlines can be set as a fixed offset from checklist start or derived from a date field on the record.
- Assignee types: None, Current User, Record Responsible, Specific Field User
- Deadline modes: None, Days After Checklist Start, From Record Date Field
- "Assign to me" button for unassigned items directly inside the drawer
Evidence & Execution Notes
Template items can require an execution note - a free-text explanation the assignee must write before marking the item done. Items can also require one or more evidence attachments (proposals, approval emails, screenshots) that remain permanently linked to the checklist item.
- Note required: item cannot be completed without a non-empty note
- Evidence required: at least one attached file must exist before completion
- File uploads done directly inside the drawer - no page navigation needed
Real-Time Progress Tracking
Every checklist instance maintains a live completion percentage, required done/total counts, overdue item count, and a blocking flag. The drawer's summary card surfaces next-due item, next assignee, and available manual starts so managers always see the team's signoff state.
- Completion % computed on required-only or all items - configurable per template
- Overdue count highlights items past their deadline in real time
- Blocking badge turns red on the launcher when a gate checklist is incomplete
Immutable Audit Trail
Every meaningful action - checklist creation, item completion, reassignment, note update, evidence upload, gate block - writes an immutable event record with actor, timestamp, old value, and new value. These events cannot be edited or deleted, making the trail a trustworthy compliance artifact.
- 11 event types covering every state change including gate-blocked
- Actor recorded on every event, even server-triggered ones
- Auditor role can read all trails without any management rights
Roles, Activities & Multi-Company
Three access levels ship out of the box: User (complete items), Manager (configure templates and policies), and Auditor (read-only trail access). Assigned checklist items automatically create Odoo activities, and company-scoped record rules ensure strict data isolation in multi-company setups.
- Activities sync after every item state change - completed items clear their activity
- Company-scoped rules on templates, policies, instances, items, and events
- Only the assigned user or a Manager can update a checklist item
Step 1 - Install the Module
Install EKIKA Checklist Manager - Sales from Apps.
This module depends on ek_checklist_base and sale_management - both are installed automatically if not already present.
After installation, a Checklists menu appears under Settings > Technical and the gate event Sales Order Confirm is registered automatically on the sale.order model.
Step 2 - Create a Checklist Template for Sales Orders
Go to Custom Apps > Checklists > Templates and click New. Set the Target Model to Sales Order, give the template a meaningful name (e.g. "Sales Order Readiness"), and choose a Progress Policy - Required Items (completion % counts only mandatory steps) or All Items. A ready-to-use Starter: Sales Order Readiness template is included - copy and adapt it instead of starting from scratch.
Step 3 - Add Checklist Items
Switch to the Items tab and click Add a line. For each step your team must complete, enter a Name, mark it Required if it must be done before confirmation, choose an Assignee Type, and set a Deadline Mode. Enable Require Execution Note and/or Require Evidence Attachments to enforce written proof at the point of completion.
Step 4 - Create a Confirmation Gate Policy
Switch to the Applicability tab and click Add a line in the Policies list. Set Creation Mode to Manual (or Automatic to start the checklist when a matching order is opened), and set Enforcement Mode to Workflow Gate. Then switch to the Automation & Gates tab and assign the Sales Order Confirm gate event to the policy. Optionally add a domain filter - for example, to gate only orders above a certain value or for a specific sales team.
Step 5 - Assign User Roles
Go to Settings > Users & Companies > Users and open the user record. Under the Checklist category, assign the appropriate role: User (can complete checklist items from the drawer), Manager (can create and edit templates, items, and policies), or Auditor (read-only access to templates, instances, and audit trail).
Step 6 - Use the Checklist from a Sales Order
Open any Sales Order. If an automatic policy matches, the checklist starts immediately. For a manual policy, click the Checklist launcher button at the top-right of the form to open the drawer, then click Start Checklist next to the template name. Complete each item - write the execution note if required, attach evidence if required - and click Complete Item. When all required items are done, click Confirm on the order and it will proceed without any gate error.
Advanced - Domain-Based Applicability Filtering
Each checklist policy has an Applicability Domain field rendered as an Odoo domain builder widget.
Use it to scope the policy to specific order subsets - for example, only orders where amount_total > 1500, or only orders from a specific sales team or pricelist.
The domain is evaluated at runtime against the actual record and supports dynamic context variables uid, user, and company_id.
Frequently Asked Questions
Can't find your question? Contact us at hello@ekika.co or open a support ticket at ekika.co/support.
Yes. EKIKA Checklist Manager for Sales (and its dependency ek_checklist_base) works on both Community and Enterprise. The side-drawer is built with standard OWL components and the gate uses the standard action_confirm override - no Enterprise-only framework features are required.
Only orders that have an active checklist instance linked to a Workflow Gate policy are blocked. If no checklist has been started on an order - or if the policy is set to Advisory instead of Gate - confirmation proceeds normally. The gate is fully opt-in per template and policy, so you control exactly which orders require signoff.
Yes - the included ek_checklist_base module lets you create templates targeting any non-transient Odoo model: Contacts, Project Tasks, Purchase Orders, Manufacturing Orders, and more. The side-drawer appears automatically on the form view of any model with a matching template or active instance. Workflow gates on other models require a dedicated bridge module (e.g. ek_checklist_mrp for manufacturing confirmation).
Yes. Multiple checklist instances from different templates can run concurrently on the same order, each tracking progress independently. If multiple gate policies are active, all must be satisfied before confirmation is allowed. The gate error message lists every blocking checklist and its remaining required item count so the user knows exactly what is still needed.
Odoo raises a UserError that names the blocking checklist(s) and the count of required items still pending. The order stays in its current state - no partial confirmation occurs. Simultaneously, the engine writes a gate-blocked event to the audit trail and posts a chatter message on the order so the team has a record that a confirmation attempt was made and why it failed.
The gate check applies to all users, including managers - this is by design. To bypass in an urgent situation, a Checklist Manager can: (1) complete remaining required items directly from the drawer on behalf of the assignee, (2) reopen and re-complete items if they were done incorrectly, or (3) temporarily archive the gate policy. Every bypass action is recorded in the audit trail so compliance remains intact and traceable.
Yes. When a checklist item has an assigned user and is in Pending state, the system creates a To-Do activity (prefixed [Checklist]) with the item's deadline and notes. When the item is completed, skipped, or marked Not Applicable, its activity is automatically removed. Activity sync runs after every item state change, keeping users' activity queues accurate without any manual intervention.
Contact us:
- WhatsApp / Phone: +919510031431 - URGENT
- Email: hello@ekika.co
- Website: https://ekika.co
- Support Ticket: https://ekika.co/support
- 24 x 7 Available - Contact us NOW.
Need Help?
EKIKA Has Your Back - 24/7 Support.
We're just a message away, no matter the time zone.
90 Days Free Support
(copy link to clipboard)
(copy link to clipboard)
(copy link to clipboard)
Services EKIKA Provides
EKIKA is your destination for expert Odoo ERP implementation and customization. We pride ourselves on building reliable, trust-based partnerships that give you full transparency and control over your business processes.
With over 12 years of experience, we can assist you with eCommerce platforms, production planning, point-of-sale systems, inventory management, and advanced field worker tracking solutions to optimize your workflows.
Implementation
Odoo ERP tailored for your business needs for smooth operations.
Customization
Personalized adjustments to Odoo modules for seamless management.
Support
Ongoing assistance and maintenance to keep your Odoo running smoothly.
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