sale.order.activity sale.order
sale.order.calendar sale.order sale.order.graph sale.order sale.order.pivot sale.order sale.order.kanban sale.order
sale.order.kanban.upload (orders) sale.order primary 32 file_upload_kanban sale.order.list sale.order 1000
sale.order.list (orders) sale.order primary 2 Sales Orders sale.order.tree.upload (orders) sale.order primary 32 file_upload_list sale.order.list (quotes) sale.order primary 4 Quotations show hide sale.order.list sale.order primary sale_onboarding_list sale.order.kanban sale.order primary sale_onboarding_kanban sale.order.form sale.order
Locked

sale.order.list.select sale.order sale.order.search.inherit.quotation sale.order primary sale.order.search.inherit.sale sale.order primary Sales Orders sale.order list,kanban,form,calendar,pivot,graph,activity {} orders [('state', 'not in', ('draft', 'sent', 'cancel'))]

Create a new quotation, the first step of a new sale!

Once the quotation is confirmed, it becomes a sales order.
You will be able to create an invoice and collect the payment.

list kanban form calendar pivot graph Quotations sales sale.order list,kanban,form,calendar,pivot,graph,activity {'search_default_my_quotation': 1}

Beat competitors with stunning quotations!

Boost sales with online payments or signatures, upsells, and a great customer portal.

Check a sample. It's clean!
list kanban Quotations sale.order list,kanban,form,calendar,pivot,graph,activity {'search_default_my_quotation': 1}

Beat competitors with stunning quotations!

Boost sales with online payments or signatures, upsells, and a great customer portal.

Check a sample. It's clean!
list kanban form calendar pivot graph Orders to Invoice sale.order list,form,calendar,graph,pivot,kanban,activity {'create': False} [('invoice_status','=','to invoice')]

No orders to invoice found

You can select all orders and invoice them in batch,
or check every order and invoice them one by one.

Orders to Upsell sale.order list,form,calendar,graph,pivot,kanban,activity [('invoice_status','=','upselling')] {'create': False}

No orders to upsell found.

An order is to upsell when delivered quantities are above initially ordered quantities, and the invoicing policy is based on ordered quantities.

As an example, if you sell pre-paid hours of services, Odoo recommends you to sell extra hours when all ordered hours have been consumed.

Mark Quotation as Sent form,list code action = records.action_quotation_sent() Share form code action = records.action_share() Send an email 1 list,form code if records: action = records.with_context(hide_default_template=True).action_quotation_send()