Skip to main content

Sales Orders

📄️Bulk Email Customers About Orders

Dispatches a tracked background job that emails customers about their selected sales orders. Multiple orders for the same customer (same store + email, case-insensitive) are grouped into a single email (Cin7 Omni model). Recipients without a resolvable email and opted-out customers are suppressed. The send is capped at `config('mail.bulk_sales_order_recipient_cap')` distinct recipients (default 5000); overflow recipients are reported via the job's `skipped_overflow` result and a warning log — never silently dropped. Every send is written to the order's activity log under one batch.

📄️List Order Shipments

Lists ALL shipments (SalesOrderFulfillments) for a sales order, used by the order's Fulfillment tab. Includes VOIDED shipments: a voided shipment carries a non-null `voided_at` (plus `void_reason` and `voided_by`) and `status=canceled` — it was reversed and its fulfillment order reopened, but is kept for history. The UI buckets voided shipments into a read-only 'Voided' filter and excludes them from the active lifecycle counts. Each shipment exposes its `fulfillment_lines`, warehouse, shipping method, tracking, and provider-sync timestamps.