All posts
Functional4 min read

Requiring Manager Approval for Large Sales Orders in Odoo

Configure Odoo to require manager approval before confirming high-value sales orders - adding a review step that prevents unauthorized large commitments from reaching customers.

Sales Order Approval in Odoo#

Large sales orders may require manager review before confirmation - to check discount levels, margin impact, delivery feasibility, or credit risk. Odoo's sales order approval feature adds this step automatically.

Enabling Sales Order Approval#

Sales → Configuration → Settings → enable Sales Order Approval:

  • Minimum Amount: orders above this amount require approval (e.g., $10,000)

How It Works#

  1. Salesperson creates a sale order > $10,000
  2. Clicks Confirm
  3. Instead of confirming, the order moves to Waiting for Approval status
  4. An approval request is sent to the manager (configured in the workflow)
  5. Manager reviews:

- Approve: order confirms and proceeds to delivery

- Reject: order is returned to Draft with a rejection comment

Configuring the Approver#

Sales → Configuration → Sales Teams → [Team] → Manager: this person receives approval requests for the team's orders.

Or use an automated action to route to a specific user based on:

  • Salesperson
  • Amount range (different approver for $10K vs. $100K)
  • Product category

Approval Notification#

The manager receives:

  • Email notification with order summary
  • In-app notification (Discuss)
  • The Waiting Approval filter in their Sales view

Multiple Approval Levels#

For very large orders (e.g., >$100,000), configure a two-stage approval:

  1. Sales Manager approval → order moves to "Senior Approval"
  2. VP/Director approval → order confirms

Implement via Odoo Studio or automated actions with custom status fields.

Audit Trail#

Every approval action is logged in the order chatter:

  • Who approved/rejected
  • When
  • Any comment (rejection reason, approval conditions)

This audit trail is important for SOX compliance and internal audit purposes.

Bypassing Approval for Trusted Customers#

Some customers have pre-approved credit limits:

  1. On the customer record → add a note or custom field "Pre-approved to $X"
  2. Create an automated action to skip approval for orders where the customer has this flag

This avoids unnecessary delays for long-term, trusted accounts while maintaining controls for new or risky customers.

Try ERPeek on your own Odoo module - ask questions, scaffold tests, and explore your codebase in plain language.

Get started free