Quote to Invoice
1. What? — Definition and context
Section titled “1. What? — Definition and context”In Odoo, when a customer accepts a quote (sale.order moves to “sale” state), an invoice has to be created, possibly validated, and sometimes emailed. This workflow automates the chain: as soon as the quote is confirmed, the invoice is created and a Telegram notification fires if the amount crosses a configurable threshold.
2. Why? — Stakes and motivations
Section titled “2. Why? — Stakes and motivations”Problems solved
Section titled “Problems solved”| Problem | Without automation | With automation |
|---|---|---|
| Invoicing forgotten | Quote confirmed, invoice never created | Automatic creation |
| Invoicing delay | Invoice 3 days after confirmation | Instant |
| No visibility | Discover the sale inside Odoo | Instant Telegram notification |
3. How? — Technical implementation
Section titled “3. How? — Technical implementation”Architecture
Section titled “Architecture”Trigger
Section titled “Trigger”An Odoo Automated Action watches sale.order records moving to “sale” and posts an internal webhook to N8N.
Journey
Section titled “Journey”- Verification — The workflow checks that no invoice already exists for this quote (duplicate prevention)
- Creation — Odoo XML-RPC call to create the invoice (
account.move) from thesale.order - Auto-post (optional) — If
auto_postis enabled, the invoice moves from draft to validated - Email send (optional) — If
auto_send_emailis enabled, the invoice email is sent to the customer - Notification — If the amount crosses the threshold (default: 1000 EUR), a Telegram notification is sent
Configuration
Section titled “Configuration”| Parameter | Default | Description |
|---|---|---|
auto_post | false | Automatically validate the invoice |
auto_send_email | false | Send the email to the customer |
notification_threshold | 1000 | Telegram notification threshold (EUR) |
4. What if? — Outlook and limits
Section titled “4. What if? — Outlook and limits”Current limits
Section titled “Current limits”| Limit | Impact | Mitigation |
|---|---|---|
| No accounting validation | Invoice auto-posted without review | auto_post disabled by default |
| Fixed threshold | Same threshold for every customer | Configurable per workflow |
Evolution scenarios
Section titled “Evolution scenarios”If manager validation is needed:
- Use the Approval Workflow Hub for amounts above X
- [Validate] button in Telegram before posting
Related pages
Section titled “Related pages”Workflows
Section titled “Workflows”- CRM Pipeline — Upstream sales pipeline
- Website Lead Notification — Web form leads
- Notification Hub — Notification routing
Infrastructure
Section titled “Infrastructure”- Odoo 18 on Docker — Invoicing and accounting