Configuration & Usage
The Sales bridge has no settings of its own. Once installed, it works automatically. This page explains how the automatic linking behaves, the create button, and the two shared settings that influence it.
How sale orders are matched
Matching runs inside connect.call.process_call_event() — the hook every provider
calls when a call is created — right after the core has recorded the call and
resolved its partner:
- If the call already has a linked order, nothing happens (a manual assignment is never overwritten).
- Otherwise, if the call has a partner, the module looks up that partner's most recent open order.
- If one is found, it is attached to the call's
sale_orderfield.
An order counts as open when its state is Quotation (draft), Quotation
Sent (sent), or Sales Order (sale). Cancelled orders are excluded. The
most recent match wins.
Fields added to the sale order
The module adds connect_calls (all linked calls) and the connect_calls_count
shown on the Calls smart button, plus read-only partner_phone /
partner_mobile fields (related to the partner). The quotation and sales order
search views gain these two as searchable fields.
Working with a linked call
On the Connect call form:
- The Sale Order notebook page shows the linked order and an Unlink button (visible only when an order is set).
- A Sale Order stat button (cart icon) opens the linked order, or — if none is
linked yet — first retries the partner lookup and then opens a new New Sale
Order form pre-filled with the caller as customer. A brand-new order created
this way is back-linked onto the call automatically (the call id travels in the
form context and
sale.order.create()reads it).
The call list gains an optional Sale Order column (right of Partner).
On the sale order form, a Calls smart button (phone icon) opens all calls linked to that order.
License required for the button
The Sale Order button raises "Connect Sale license is not activated!" if the license is inactive, because it is a direct user action. The silent automatic matching, by contrast, simply skips linking when the license is missing.
Call summaries
If the core OpenAI transcription/summarization feature is enabled and the shared
Register Summary setting (connect.settings.register_summary) is on, then when a
call gains a summary and is linked to an order, that summary is posted to the
order's chatter automatically.
Register Summary is a core setting
register_summary lives on the shared connect.settings record and governs
summary posting for all Connect bridges, not just Sales. Configure it under
the Connect core settings.
License gate
Automatic order matching and summary posting check the Oduist Connect Sale license
(check_license('connect_sale')) silently — if it is not active, calls are still
recorded but no order is linked and no summary is posted.