Skip to content

Odoo Sale Order Cannot Confirm: Every Cause & Fix

DeployMonkey Team · March 22, 2026 10 min read

Symptoms

  • Confirm button grayed out or missing
  • Error message on clicking Confirm
  • Order stays in Quotation state
  • "Validation Error" popup

Cause 1: Missing Required Fields

# Common missing fields:
# - Customer (partner_id): required
# - Pricelist: required if multi-pricelist enabled
# - Payment Terms: may be required by custom module
# - Warehouse: required for delivery
# - Order Lines: at least one line required

# Fix: fill in all required fields
# Check for red-highlighted fields in the form

Cause 2: No Order Lines

# Cannot confirm an empty quotation
# At least one order line is needed

# Fix: add at least one product line with quantity > 0

Cause 3: Product Not Saleable

# Product has 'Can be Sold' unchecked
# Or product is archived (active=False)

# Fix: Product → Sales tab → check 'Can be Sold'
# Or: un-archive the product

Cause 4: Approval Workflow

# If sale order approval is enabled:
# Settings → Sales → Quotations & Orders → Sale Order Approval
# Orders above a threshold need manager approval

# Fix: either get approval or disable the approval requirement
# Or: user needs the 'All Documents' sales access right

Cause 5: Credit Limit Exceeded

# If credit limit checking is enabled:
# Customer's outstanding balance + this order > credit limit

# Fix: either:
# - Collect payment from customer first
# - Increase the customer's credit limit
# - Override with manager approval

Cause 6: Fiscal Position Error

# Fiscal position maps taxes but no valid tax exists for the mapping
# Error: "No tax found for the fiscal position mapping"

# Fix: check the fiscal position:
# Accounting → Configuration → Fiscal Positions
# Verify all tax mappings have valid source and destination taxes

Cause 7: Custom Python Constraint

# A custom module added a constraint that blocks confirmation:

# Check Odoo logs for the specific error:
grep -i "validationerror\|constraint" /var/log/odoo/odoo.log | tail -10

# Common custom constraints:
# - Minimum order amount
# - Maximum discount percentage
# - Required fields from custom module
# - Customer-specific restrictions

# Fix: satisfy the constraint or modify the custom module

Cause 8: AccessError

# User doesn't have permission to confirm orders
# Needs: Sales / User (or higher) group

# Error: "You are not allowed to modify Sale Order"
# Fix: add user to the correct sales security group
# Settings → Users → select user → Sales → set to 'User' or 'All Documents'

Cause 9: Product Variant Issue

# Product variant is inactive or attribute combination is invalid
# Order line shows the product but confirmation fails

# Fix: check product variant:
# - Is the variant active?
# - Are all required attributes set?
# - Does the variant have a valid price?

Cause 10: Database Lock

# Another transaction holds a lock on the sale order record
# Confirmation times out or hangs

# Fix: wait and retry, or check for blocking queries:
SELECT pid, state, query FROM pg_stat_activity
WHERE datname = 'odoo' AND state != 'idle'
ORDER BY query_start;

Diagnosis Checklist

  1. Are all required fields filled (customer, lines, pricelist)?
  2. Is the confirm button visible? (check user permissions)
  3. Is sale order approval enabled? (check settings)
  4. Check Odoo logs for the specific error message
  5. Try in developer mode — more info in error dialogs
  6. Check for custom module constraints
  7. Try confirming as admin — if it works, it's a permission issue

DeployMonkey

DeployMonkey's AI agent diagnoses sale order confirmation failures — identifying missing fields, permission issues, custom constraints, and workflow blocks. It provides the specific fix in seconds.