Why Configure Quotation Approvals?
Without approval workflows, any sales rep can confirm orders of any value. For businesses with pricing authority limits, discount policies, or compliance requirements, approval gates prevent unauthorized commitments. Odoo 19 offers approval mechanisms through order locking, access rights, and the Approvals module integration.
Prerequisites
- Odoo 19 with Sales module installed
- Sales Manager and Administrator access
Step 1: Enable Order Locking
Navigate to Sales > Configuration > Settings. Under Quotations & Orders, enable Lock Confirmed Sales. When enabled, confirmed sales orders become read-only (the locked field is set to True), preventing modifications without explicit unlocking. Click Save.
Step 2: Configure Access Rights for Approval
Odoo's sales security groups control who can confirm orders:
- User: Own Documents Only — Can create quotations but has limited confirmation authority
- User: All Documents — Can manage all quotations in their sales team
- Administrator — Full access including configuration and confirmation
Assign your sales reps to the appropriate group under Settings > Users & Companies > Users, then edit each user's Sales access level.
Step 3: Set Up Approval Rules with Automated Actions
For threshold-based approvals without the Enterprise Approvals module:
- Go to Settings > Technical > Automated Actions
- Create a new action triggered on Sales Order
- Set the trigger: On Creation & Update, when
amount_totalexceeds your threshold (e.g., $10,000) - Action: Send an email notification to the sales manager requesting approval
- Optionally, add a status tag or custom field to track approval state
Step 4: Using the Approvals Module (Enterprise)
If you have Odoo Enterprise with the Approvals module:
- Navigate to Approvals > Configuration > Approval Types
- Create an approval type for "Sales Order Approval"
- Set minimum approvers, approval thresholds, and required roles
- Link the approval to the sales order workflow via automated actions
This provides formal multi-step approval with audit trails and role-based authorization.
Step 5: Implement Discount Controls
Control discount authority at the user level:
- Navigate to Sales > Configuration > Settings
- Enable Discounts under the Pricing section
- Use the Sale Order Discount Wizard to apply global discounts — restrict access to this wizard via security groups so only authorized users can apply large discounts
Step 6: Pro-Forma Invoice Workflow
Enable Pro-Forma Invoice under Sales > Configuration > Settings. This adds a pro-forma invoice step that serves as an internal review document before the final order confirmation. The group_proforma_sales implied group controls access to this feature.
Step 7: Customer-Side Approval
Add customer approval by requiring online signature and/or payment before order confirmation:
- On each quotation or in quotation templates, enable Online Signature and/or Online Payment
- Set the Prepayment Percentage — the customer must pay this percentage through the portal before the order confirms
This creates a two-sided approval: internal manager sign-off plus customer commitment via signature or payment.
Step 8: Test the Workflow
- Log in as a sales rep and create a quotation above the approval threshold
- Attempt to confirm — verify the approval gate blocks or sends notification as expected
- Log in as a manager and approve the order
- Verify the order transitions to Confirmed status and becomes locked if locking is enabled
Best Practices
- Set approval thresholds that match your actual pricing authority levels
- Keep the approval chain short — one level is usually sufficient for most businesses
- Document your approval policy in the quotation template's terms and conditions
- Use Discuss channels for approval notifications to keep email volume manageable