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 formCause 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 > 0Cause 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 productCause 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 rightCause 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 approvalCause 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 taxesCause 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 moduleCause 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
- Are all required fields filled (customer, lines, pricelist)?
- Is the confirm button visible? (check user permissions)
- Is sale order approval enabled? (check settings)
- Check Odoo logs for the specific error message
- Try in developer mode — more info in error dialogs
- Check for custom module constraints
- 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.