| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Sales (sale_management)
• Discuss (mail) • Invoicing (account) |
| Lines of code | 867 |
| Technical Name |
oe_sales_dynamic_approval |
| License | LGPL-3 |
| Website | https://www.oaklandmena.com |
| Versions | 16.0 17.0 18.0 19.0 |
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
•
Sales (sale_management)
• Discuss (mail) • Invoicing (account) |
| Lines of code | 867 |
| Technical Name |
oe_sales_dynamic_approval |
| License | LGPL-3 |
| Website | https://www.oaklandmena.com |
| Versions | 16.0 17.0 18.0 19.0 |
User Guide
This guide explains how to use the Dynamic Sales Order Approval module.
1. Configuration
- Install the Module: Ensure the module is installed in your Odoo instance.
- Access Configuration: Navigate to Sales > Configuration > Approval Configuration.
- Create a New Approval Level: Click Create to define a new approval rule.
-
Set Approval Details:
- From Amount / To Amount: Define the monetary range for this approval level. For example, a range of $10,000 to $50,000.
- Level: Assign a numerical level. Lower numbers have higher priority (e.g., Level 1 for the first approver).
- Approve Process By: Choose whether approval will be granted by a specific User or a Group.
- Approvers: Depending on the previous selection, either add individual users or select a user group from the list.
2. Sales Workflow
- Create a Sales Order: A sales user creates a new sales quotation as they normally would.
- Submit for Approval: When the sales user is ready, they click the Submit for Approval button on the sales order form.
- Automatic State Change: The sales order's status will automatically change from "Quotation" to "Waiting for Approval" if it falls within a configured approval level.
- Email Notification: An email is sent to the designated approvers for that level, containing a direct link to the sales order.
3. Approval Workflow
- Review the Order: The approver receives the email and clicks the link to open the sales order in Odoo.
-
Action Buttons: On the sales order form, they will see two new buttons:
- Approve: Click this button to approve the order. The state will change to "Sales Order," and an email is sent to the customer to confirm the order.
- Reject: Click this button to reject the order. A pop-up wizard will appear, prompting the approver to enter a rejection reason.
- Notification: After the approver takes an action, the sales user is notified of the approval or rejection via email.
Frequently Asked Questions
1. What happens if I don't configure any approval levels?
If no approval levels are configured, the "Submit for Approval" button will not appear, and the sales order workflow will behave as the standard Odoo process.
2. Can I have multiple approvers for a single level?
Yes, you can add multiple users or a user group to a single approval level. All of them will be notified, but only one is required to approve or reject the order.
3. What if an order's total amount doesn't match any configured level?
If a sales order's total amount does not fall within a defined range, it will not be submitted for approval. The `Submit for Approval` button will not be visible on the sales order record.
4. How can I change the email templates?
You can modify the email templates by navigating to Settings > Technical > Email > Templates and searching for the relevant templates: `Sale Order: Approve Order`, `Sale Order: Reject Order`, and `Sale Order: Confirm Order`.
5. Does this module modify the default Odoo sales order flow?
Yes, it adds new states (`waiting_for_approval`, `reject`) and introduces buttons and backend logic to handle the dynamic approval process, ensuring sales orders with configured amounts go through the required checks.
Module Support & SLA
For any support related to this Odoo module, please contact us at apps@odooerp.ae
Our standard response time (SLA) for support queries is between 12 to 48 hours.
Our standard response time (SLA) for support queries is between 12 to 48 hours.
Please log in to comment on this module