Total sales revenue from invoiced orders in the selected period, excl. GST. Only orders with invoice_status = 'invoiced' are included — confirmed-but-not-yet-invoiced orders are excluded.
Table: sale.order
Field: amount_untaxed (excl. GST)
Formula: SUM(amount_untaxed) WHERE state IN ('sale','done') AND invoice_status = 'invoiced' AND date_order IN range
—
Avg. Order Value
?
The average dollar value of each invoiced order in the period, excl. GST. Only orders with invoice_status = 'invoiced' are included.
Table: sale.order
Field: amount_untaxed (excl. GST)
Formula: SUM(amount_untaxed) ÷ COUNT(id) WHERE state IN ('sale','done') AND invoice_status = 'invoiced'
—
Orders Received
?
All orders created in the period, regardless of whether they have been confirmed yet.
Table: sale.order
Formula: COUNT(id) WHERE create_date IN range AND state != 'cancel'
—
Orders Approved
?
Confirmed orders that have been invoiced in the selected period. Orders confirmed but not yet invoiced are excluded.
Table: sale.order
Formula: COUNT(id) WHERE state IN ('sale','done') AND invoice_status = 'invoiced' AND date_order IN range
—
Orders Completed
?
Orders that have been fully locked and closed in Odoo.
Table: sale.order
Formula: COUNT(id) WHERE state = 'done' AND date_order IN range
—
Orders by Type
?
Invoiced orders broken down by customer type — whether the buyer is an Agent, Owner, or Tenant. Only orders with invoice_status = 'invoiced' are included.
Table: sale.order
Formula: COUNT(id) WHERE state IN ('sale','done') AND invoice_status = 'invoiced' AND ordering_as = 'Agent' / 'Owner' / 'Tenant'
Agent—
Owner—
Tenant—
Customer Refunds
?
Credit notes issued to customers in the period — used as a proxy for returns and refunds. All values excl. GST.
Table: account.move
Field: amount_untaxed (excl. GST)
Formula: COUNT(id) + SUM(amount_untaxed) WHERE move_type = 'out_refund' AND invoice_date IN range
Count—
Total Value—
Fulfilment
Active Order Fulfilment Performance
?
Live snapshot of all currently active orders, bucketed by how many days have passed since their Processing Start Date vs. the 10-day target. Not affected by the date range above.
Table: sale.order
Field: processing_start_date (set when WooComm status → Processing)
The average number of days between the scheduled delivery date and when it was actually completed.
Table: stock.picking
Formula: AVG(date_done − scheduled_date) WHERE state = 'done'
—
Items Sent
?
Total units on invoiced orders in the period, broken down by product type. Only lines from orders with invoice_status = 'invoiced' are included.
Table: sale.order.line
Formula: SUM(product_uom_qty) WHERE order_id.state IN ('sale','done') AND order_id.invoice_status = 'invoiced' AND product name CONTAINS 'key' / 'fob' / 'remote'
Keys—
Fobs—
Remotes—
Completed Fulfilment Performance
?
Completed deliveries bucketed by how many days they took from scheduled date to actual completion.
Table: stock.picking
Formula: COUNT WHERE (date_done − scheduled_date) <= 3 / <= 10 / > 10 days
Total Completed within 3 Days
—
Total Completed within 10 Days
—
Total Completed > 10 Days
—
% Completed within 3 Days
—
% Completed within 10 Days
—
% Completed > 10 Days
—
Fulfilment Performance by Product Type
?
Same fulfilment buckets as above, but filtered to deliveries containing each product type.
Revenue from invoiced orders, grouped by the chosen period. Use the date presets on the right to independently control the chart range. All values excl. GST. Only orders with invoice_status = 'invoiced' are included.
Table: sale.order
Field: amount_untaxed (excl. GST)
Formula: SUM(amount_untaxed) WHERE invoice_status = 'invoiced' grouped by day / week / month
Top 10 Products
?
The highest-earning products by total revenue from invoiced order lines in the period, excl. GST. Only lines from orders with invoice_status = 'invoiced' are included.
Table: sale.order.line
Field: price_subtotal (excl. GST)
Formula: SUM(price_subtotal) WHERE order_id.invoice_status = 'invoiced' GROUP BY product_id ORDER BY revenue DESC LIMIT 10
Loading...
Top 10 Categories
?
Revenue and order count grouped by product category from invoiced order lines in the period, excl. GST. Only lines from orders with invoice_status = 'invoiced' are included.
Tables: sale.order.line, product.product
Field: price_subtotal (excl. GST)
Formula: SUM(price_subtotal) WHERE order_id.invoice_status = 'invoiced' GROUP BY product_id.categ_id ORDER BY revenue DESC LIMIT 10
Loading...
Top 10 Buildings / OCs
?
The customers with the most invoiced orders in the period — typically representing buildings or owners corporation accounts. Only orders with invoice_status = 'invoiced' are included. Revenue excl. GST.
Table: sale.order
Field: amount_untaxed (excl. GST)
Formula: COUNT(id) + SUM(amount_untaxed) WHERE invoice_status = 'invoiced' GROUP BY partner_id ORDER BY order count DESC LIMIT 10
Loading...
Top 10 Order Reasons
?
The most common reasons entered on invoiced orders in the period, by order count. Only orders with invoice_status = 'invoiced' are included.
Table: sale.order
Field: reasons_for_order (char)
Filter: state IN ('sale','done') AND invoice_status = 'invoiced'
Loading...
Help Desk Overview
Tickets Createdi
Total helpdesk tickets created during the selected date range.
Source: helpdesk.ticket · create_date
—
Open Ticketsi
Tickets created in the period that are not in a resolved/closed stage (based on stage name).
Source: helpdesk.ticket · stage_id
—
SLA Breachesi
Number of SLA policies that failed (deadline exceeded) for tickets in the selected period.
Source: helpdesk.sla.status · status = failed
—
Resolved (Period)i
Tickets created in the period that are in a folded (closed) stage in Odoo.
Source: helpdesk.ticket · stage_id.fold = true
—
Avg Resolution Timei
Average days from ticket creation to close_date, for tickets resolved within the selected period.