Sales Orders & Invoices
1. Overview
Section titled “1. Overview”The Sales Orders & Invoices module manages the full order-to-cash cycle for product sales — from creating a sales order through shipment, invoicing, and collections. Its screens appear in the left navigation under the Orders section, while the underlying functionality belongs to the Accounts Receivable subsystem (customers, terms, collections, and AR Settings).
2. Key Concepts
Section titled “2. Key Concepts”-
Sales Order — A customer’s commitment to purchase products. The order captures what was ordered (products, quantities, prices), drives inventory allocation and shipment scheduling, and serves as the source for invoicing. Orders are either open or closed.
-
Sales Invoice — A bill sent to the customer for products shipped or services rendered. Invoices can be created from a sales order (linking to specific order lines) or as standalone documents. Posting an invoice creates AR entries: debit the AR Control account, credit the configured revenue account (per line item); and for inventory-tracked items (when the invoice type has shouldTrackInventory enabled): debit the COGS account, credit the Inventory account.
-
Shipment — A record of physical goods leaving the warehouse to fulfill sales order lines. When dispatched, a shipment draws from inventory, records the carrier and tracking number, and can generate an invoice. A single order can have multiple shipments (partial fulfillment).
-
Drop Ship — An order that ships directly to a custom address not stored in the customer’s site addresses. When Drop Ship is enabled, the standard Ship To field is replaced with manual address fields. This is used for one-off delivery locations.
-
Salesman Commission — Sales representatives assigned to orders and invoices with commission percentages. Multiple salesmen can share a single order. Commission tracking feeds sales performance reports and compensation calculations.
3. How It Connects
Section titled “3. How It Connects”Upstream — Where Sales Orders gets its data:
- Accounts Receivable (Customers) → The customer database provides billing addresses, payment terms, credit limits, and tax jurisdictions. Customer-specific pricing tiers automatically populate unit prices on order lines.
- Inventory (Products) → The product catalog provides items, costs, and availability for order line items. Inventory allocation reserves stock for the order.
Downstream — Where Sales Orders sends its data:
- Inventory → Shipment dispatch draws from inventory, reducing on-hand quantities and posting COGS entries to the GL.
- Accounts Receivable → Invoices created from orders enter the AR collections cycle. Cash receipts and deposits flow from invoice payments.
- General Ledger → Invoice postings create balanced GL entries: revenue recognition (credit the configured revenue account), receivable creation (debit the AR Control account), and cost recognition (debit the COGS account, credit the Inventory account).
- Reports → Sales order, shipment, and invoice data feeds reports for order status, fulfillment metrics, and sales analysis.
Key Integration Point — Order-to-Ship-to-Invoice: The standard workflow connects three records: a Sales Order defines what was promised, a Shipment records what was sent, and a Sales Invoice bills for what was delivered. Each step links back to the previous one, creating a complete audit trail from customer order through revenue recognition.
4. AR Dashboard
Section titled “4. AR Dashboard”The AR Dashboard provides a high-level view of accounts receivable health and collection activity.
Charts
Section titled “Charts”| Chart | Type | Description |
|---|---|---|
| Accounts Receivable Aging ($) | Dual-axis bar | Aging buckets (Current, 1–30 Days, 31–60 Days, 61–90 Days, 90+ Days, Prepayments) showing Amount ($) on the left axis and Count on the right axis. |
| Cash Anticipation | Dual-axis bar | Same bucket structure as Aging — projects when open AR is expected to be collected based on terms |
| Top 10 Bad Debt Customers (90+ Days) | Horizontal bar | Customers with the highest past-due balances over 90 days. Bars are red. Click a customer to navigate to their record. |
| Captured Discounts | Bar chart | Compares Available vs. Captured early-payment discounts by count and dollar amount |
Each chart manages its own date control. The Accounts Receivable Aging and Cash Anticipation charts each have an As Of Date picker with a Run button that refreshes only that chart. The Top 10 Bad Debt Customers and Captured Discounts charts have no date control.
5. Sales Orders List
Section titled “5. Sales Orders List”Navigate to Orders → Manage Orders to see all sales orders.
Search Grid Columns
Section titled “Search Grid Columns”| Column | Description |
|---|---|
| Sales Order ID | System-assigned order identifier |
| Customer | Customer account (single combined column) |
| Ship To | Shipment site name and address (single combined column) |
| Order Type | Sales order type classification |
| Order Date | Date the order was entered |
| Promise Date | Date promised to the customer |
| Due to Ship Date | Required ship-by date |
| Total Amount | Total order value |
| Total Open Amount | Remaining unbilled/unfulfilled order value |
The Customer PO #, customer name and address, and site name and address are searchable (used as search filters) but are not shown as separate columns — Customer and Ship To are each a single combined column.
Filtering
Section titled “Filtering”An Open / Closed toggle filters the list to active or completed orders. Additional column-level filters are available for date ranges and text search.
6. Create / Edit Sales Order
Section titled “6. Create / Edit Sales Order”Click Create Sales Order or the Edit action from the list. The form is organized into a header section and lower tabs.
General Fields
Section titled “General Fields”Customer & Site
Section titled “Customer & Site”| Field | Required | Description |
|---|---|---|
| Customer | Yes | Customer account for the order |
| Ship To Address | Conditional | Delivery site address (required unless Drop Ship is checked) |
| Terms | Yes | Payment terms (e.g., Net 30, COD) |
| Customer PO Number | No | Customer’s purchase order reference (max 255 characters) |
| Order Type | Yes | Order classification |
| Source Building | No | Warehouse or building fulfilling the order |
| Field | Required | Description |
|---|---|---|
| Sales Order Date | No | Date the order was placed |
| Requested Date | No | Date the customer wants delivery |
| Earliest Ship Date | No | Earliest acceptable ship date |
| Latest Ship Date | No | Latest acceptable ship date |
| Promise Date | No | Date promised to the customer |
| Due to Ship Date | Yes | Internal required ship-by date |
Freight & Pricing
Section titled “Freight & Pricing”| Field | Required | Description |
|---|---|---|
| Freight Terms | Yes | Freight delivery terms (e.g., FOB Origin, FOB Destination) |
| Ship Via | No | Carrier or shipping method description (max 255 characters) |
| Freight Amount | No | Freight charge added to the order |
| Sales Tax Jurisdiction | No | Tax jurisdiction; the application calculates tax based on the selected jurisdiction |
| Sales Tax Percent | No | Tax rate percentage |
| Sales Tax Amount | No | Tax dollar amount |
| Discount Percent | No | Order-level discount percentage |
| Discount Amount | No | Order-level discount dollar amount |
Drop Ship
Section titled “Drop Ship”Enable Drop Ship to ship directly to a custom address instead of a site on file. The following fields become required when Drop Ship is active:
| Field | Required | Description |
|---|---|---|
| Ship To Name | Yes | Recipient name |
| Ship To Name 2 | No | Additional name line |
| Ship To Address | Yes | Street address |
| Ship To Address 2 | No | Suite/unit |
| Ship To City | Yes | City |
| Ship To State | Yes (US) | State (required for US addresses) |
| Ship To Country | Yes | Country |
| Ship To Zip | Yes | Postal/ZIP code |
Order Control
Section titled “Order Control”| Field | Required | Description |
|---|---|---|
| Hold Sales Order | No (checkbox) | Flags the order as on hold and displays a red Hold chip on the order. It is an informational flag only — it does not block creating shipments or invoices in the UI or on the server |
| Hold Reason | No | Reason for the hold. Enabled only when Hold Sales Order is checked; optional even when Hold is enabled |
| Ship Complete | No (checkbox) | Indicates the full order should ship together; enforced in the UI only |
| Cancel Backorders | No (checkbox) | Indicates unfulfilled backorder quantities should be cancelled; this is a UI-level control (stored but not enforced server-side) |
| Cancellation Date | No | Date the order was or will be cancelled |
| Cancellation Reason | No | Reason for cancellation (max 255 characters) |
Contact Info
Section titled “Contact Info”| Field | Description |
|---|---|
| Buyer Contact | Buyer name at the customer (max 255) |
| Buyer Phone | Buyer phone number |
| Buyer Phone Extension | Buyer phone extension |
| Warehouse Contact | Warehouse contact name |
| Warehouse Phone | Warehouse phone number |
| Warehouse Phone Extension | Warehouse phone extension |
| Field | Description |
|---|---|
| Our Vendor ID | Your vendor ID in the customer’s system (max 255) |
| Department | Internal department reference (max 255) |
| Notes | Free-text internal notes |
Lower Tabs (Create / Edit)
Section titled “Lower Tabs (Create / Edit)”| Tab | Description |
|---|---|
| Items | Line items — products, quantities, pricing, and GL accounts |
| Salesmen | Assign salesmen and commission rates to this order |
| Notes | Internal notes |
| Custom Fields | Organization-specific custom data fields |
Line Item Columns (Items Tab)
Section titled “Line Item Columns (Items Tab)”| Column | Required | Description |
|---|---|---|
| Product | Conditional | Product from inventory (required if quantity > 0 or description is entered) |
| Description | No | Item description (max 1000 characters) |
| Ordered Quantity | Conditional | Number of units ordered (required if product selected) |
| Order UOM | Conditional | Unit of measure for ordered quantity |
| Unit Price | No | Sell price per unit |
| Price UOM | Conditional | Unit of measure for pricing |
| Discount % | No | Line-level discount percentage |
| Unit Cost | No | Cost per unit |
| Cost UOM | Conditional | Unit of measure for cost |
| Sale Account | Conditional | GL account for revenue (required if product selected) |
| Cost Account | Conditional | GL account for cost of goods (required if product selected) |
| Due Date | No | Line-level due date |
| Customer Product | No | Customer’s product code or reference |
Salesmen Tab
Section titled “Salesmen Tab”Add one or more salesmen to the order for commission tracking:
| Field | Required | Description |
|---|---|---|
| Salesman | Yes | Sales representative |
| Commission Rate | No | Commission percentage for this salesman |
7. View Sales Order
Section titled “7. View Sales Order”Clicking a Sales Order ID opens the full detail view.
Upper Tabs
Section titled “Upper Tabs”| Tab | Description |
|---|---|
| General | All header fields in read-only display |
| Custom Fields | Custom field values |
Lower Tabs
Section titled “Lower Tabs”| Tab | Description |
|---|---|
| Items | Line items with expandable rows showing allocations and related invoices per line |
| Allocations | Inventory allocated to this order (all lines) |
| Salesmen | Salesmen assigned and their commission rates |
| Invoices | All invoices generated from this sales order |
| Product Log | History of inventory transactions against this order |
| Attachments | Uploaded documents and files |
Expandable Line Item Detail
Section titled “Expandable Line Item Detail”Each line item in the Items tab can be expanded to show two sub-tabs:
- Allocations — Inventory allocated to this specific line
- Invoices — Invoices that bill for this line
(A Shipments sub-tab exists in the code but is currently hidden.)
8. Sales Invoices List
Section titled “8. Sales Invoices List”Navigate to Orders → Manage Invoices to see all sales invoices.
Search Grid Columns
Section titled “Search Grid Columns”| Column | Description |
|---|---|
| Sales Invoice ID | System-assigned invoice identifier |
| Customer | Customer account name |
| Site | Delivery or billing site name |
| Invoice Type | Sales invoice type classification |
| Invoice Date | Date on the invoice |
| Posting Date | Date the invoice was posted to the GL |
| Total Amount | Total invoice amount |
9. Create / Edit Sales Invoice
Section titled “9. Create / Edit Sales Invoice”Invoices can be created directly (standalone) or generated from a sales order. Click Create Sales Invoice or select an order from the sales order selection dialog.
General Fields
Section titled “General Fields”| Field | Required | Description |
|---|---|---|
| Customer | Yes | Customer account |
| Ship To Address | Conditional | Site address (required unless Drop Ship is checked) |
| Terms | Yes | Payment terms |
| Customer PO Number | No | Customer PO reference |
| Sales Invoice Type | Yes | Invoice classification |
| Sales Invoice Date | Yes | Date printed on the invoice |
| Posting Date | Yes | Date the invoice posts to the general ledger |
| Due Date | Yes | Payment due date |
Drop Ship, Freight, Tax, and Discount fields are the same as on Sales Orders (see Section 6).
Applying Prepayments
Section titled “Applying Prepayments”When you create an invoice, two header fields let you apply money the customer has already paid against the new invoice.
| Field | Required | Description |
|---|---|---|
| Payment on Acct Application | No | Amount of the customer’s on-account prepayment credit to apply to this invoice. Must be zero or greater. |
| Order Prepayments | No (read-only) | Total of unapplied prepayments/deposits already recorded against the linked sales order. This field is display-only and cannot be edited; its total is populated only when the invoice was created from a sales order that has deposits on it (otherwise it shows zero). |
Payment on Acct Application draws from the customer’s prepayment balance — money the customer paid that has not yet been applied to an invoice. The amount you enter is applied to the invoice when you save it, and the customer’s account balance is increased by the invoice total minus the amount you applied here. If the amount you enter exceeds the customer’s available prepayment balance, the save fails with the message Prepayment Application exceeds available amount followed by the available amount.
Order Prepayments reflects deposits already collected against the sales order this invoice was created from. When an invoice is generated from an order, the system loads the order’s unapplied prepayment postings and totals them into this field. When you save the invoice, the remaining invoice amount (the invoice total minus the Payment on Acct Application amount) is automatically applied against the order’s prepayments, up to the amount of prepayments available on that order.
To apply a prepayment to an invoice:
-
Open Create Sales Invoice, either standalone or by selecting a sales order. If you select an order that has deposits on it, the Order Prepayments total is filled in automatically.
-
Enter the line items and confirm the invoice total.
-
In Payment on Acct Application, enter the portion of the customer’s on-account prepayment balance you want to apply to this invoice. Leave it at
0to apply none. -
Save the invoice. The entered amount is drawn from the customer’s prepayments, and any remaining balance carried by the linked order’s deposits is applied automatically.
Lower Tabs (Create / Edit)
Section titled “Lower Tabs (Create / Edit)”| Tab | Description |
|---|---|
| Items | Line items |
| Salesmen | Assigned salesmen with commission rates |
| Custom Fields | Custom data fields |
Line Item Columns (Items Tab)
Section titled “Line Item Columns (Items Tab)”| Column | Required | Description |
|---|---|---|
| Product | Conditional | Product (required if quantity > 0 or description entered) |
| Description | No | Item description (max 1000 characters) |
| Quantity | Conditional | Number of units (required if product selected) |
| Quantity UOM | Conditional | Unit of measure for quantity |
| Unit Price | No | Sell price per unit |
| Price UOM | Conditional | Unit of measure for price |
| Discount % | No | Line-level discount |
| Unit Cost | No | Cost per unit |
| Cost UOM | Conditional | Unit of measure for cost |
| Sale Account | Conditional | Revenue GL account (required if product selected and not a proforma invoice) |
| Cost Account | Conditional | Cost of goods GL account (required if product selected and not a proforma invoice) |
| Customer Product | No | Customer’s internal product reference |
Lead and Job are invoice header fields (in the General area), not line-item columns. Populated from the selected customer’s leads and jobs, Lead associates the whole invoice with a CRM lead and Job associates the whole invoice with a Job Costing job.
Proforma Invoice Types
Section titled “Proforma Invoice Types”The Sales Invoice Type you select (in the General fields) controls two behaviors that are surfaced directly in the invoice header as read-only indicators:
| Indicator | Driven By | Meaning |
|---|---|---|
| Tracking Inventory? | The invoice type’s inventory-tracking setting | When Yes, inventory-tracked line items relieve stock and post Cost of Goods Sold / Inventory entries. |
| Proforma Invoice? | The invoice type’s proforma setting | When Yes, the invoice is a proforma invoice and does not post to the general ledger. |
A proforma invoice type is a sales invoice type flagged as proforma in its setup (see Sales Invoice Types under Settings). Proforma invoices behave differently from standard invoices in two ways:
- No general ledger posting. When a proforma invoice is created, the system skips the AR and inventory ledger entries that a standard invoice would generate. Voiding a proforma invoice likewise creates no reversing ledger entries, because there were none to reverse.
- Relaxed line-item account requirements. On a standard invoice, selecting a product on a line item makes the Sale Account (revenue GL) and Cost Account (cost-of-goods GL) required. On a proforma invoice, these two columns are not required, even when a product is selected — so you can issue a proforma without assigning revenue and cost accounts to each line.
To create a proforma invoice:
- On the Create / Edit Sales Invoice screen, set Sales Invoice Type to a type configured as proforma. The header Proforma Invoice? indicator will read
Yes. - Add line items as usual. Sale Account and Cost Account may be left blank on each line.
- Save the invoice. No general ledger entries are created.
Line Item Row Actions (Items Tab)
Section titled “Line Item Row Actions (Items Tab)”Each line on the Items tab ends with an actions column: a trash icon that removes the line (Delete Detail) and a three-dot menu with the following options.
| Action | Availability | Description |
|---|---|---|
| View Product | Requires a product on the line | Opens the product record in a new tab |
| View Tiered Pricing | Requires a customer product on the line | Opens a read-only View Tiered Pricing dialog for that customer product |
| View Product Log | Requires a product on the line | Opens a Product Log dialog showing inventory transactions for that product |
| View Sales History | Requires a product on the line | Opens the Sales History dialog for that product (see below) |
View Sales History
Section titled “View Sales History”The View Sales History action opens a dialog titled Sales History - <product ID> - <product description> that lists prior sales invoice lines for the same product, so you can see how the item has been priced and sold to customers before. When the line has a customer product assigned, the history is limited to lines that share that customer product; otherwise all sales history for the product is shown.
The dialog lists one row per prior invoice line, sorted with the most recent invoice date first. Voided invoices are excluded.
| Column | Description |
|---|---|
| Invoice Date | Date of the prior sales invoice |
| Sales Invoice ID | The prior invoice’s ID — opens that invoice in a new tab |
| Customer | Customer name and ID — opens that customer in a new tab |
| Quantity | Quantity sold on that line |
| Quantity UOM | Unit of measure for the quantity |
| Unit Price | Sell price per unit on that line |
| Price UOM | Unit of measure for the price |
| Extended Price | Line total |
| Discount | Discount amount applied to that line |
| Customer Prod ID | Customer’s product reference on that line |
Retention
Section titled “Retention”When a sales invoice is associated with a Job (via the Job header field), the system tracks a Retention amount — the portion of the invoice held back under the job’s retention terms.
Navigation: Orders → Manage Invoices → open or create an invoice → totals area (next to Sales Tax and Total).
| Field | Required | Description |
|---|---|---|
| Retention | No | Amount of retention withheld on this invoice. Auto-calculated from the selected Job’s retention percentage applied to the after-discount amount. |
How Retention is calculated:
- When a Job is selected on the invoice, Retention is calculated as the Job’s retention percentage applied to the invoice’s after-discount subtotal (subtotal minus discount).
- When no Job is selected, Retention calculates to
0. - The amount is recalculated whenever the totals are recomputed (for example, when line items or the discount change). Because editing the Retention field also re-runs the totals calculation, a value you type is re-derived from the Job’s retention percentage whenever a Job is selected.
10. View Sales Invoice
Section titled “10. View Sales Invoice”Upper Tabs
Section titled “Upper Tabs”| Tab | Description |
|---|---|
| General | Header information in read-only view |
| Custom Fields | Custom field values |
Lower Tabs
Section titled “Lower Tabs”| Tab | Description |
|---|---|
| Items | Invoice line items |
| Salesmen | Assigned salesmen |
| Product Log | Inventory transaction history |
| Attachments | Uploaded files |
11. Sales Order Shipments
Section titled “11. Sales Order Shipments”Shipments record the physical movement of goods to fulfill sales order lines. The Sales Order Shipments screen has no dedicated sidebar menu entry (it is currently disabled in the menu configuration); reach it through links and actions on a sales order or from a sales invoice (an invoice links to its shipment). The Orders sidebar category itself contains Manage Orders and Manage Invoices.
Shipment List
Section titled “Shipment List”Displays all shipments with their Shipment ID, Customer, Ship To, Carrier, Pro Number, Scheduled Pickup, and Expected Delivery. There is no Order, Ship Date, or Status column.
A radio filter above the search box restricts which shipments the search returns. It defaults to Unshipped:
| Option | Result |
|---|---|
| All | Returns matching shipments regardless of whether they have been shipped |
| Unshipped | Returns only shipments that have not yet been shipped (the default) |
| Shipped | Returns only shipments that have already been shipped |
The list stays empty until you type in the search box; the filter then narrows the matches returned for what you typed. Search matches against Shipment ID, Pro Number, SSCC-18, and the customer or ship-to name and address. Changing the filter re-runs the current search with the new shipped/unshipped restriction.
Create / Edit Shipment
Section titled “Create / Edit Shipment”A shipment is linked to a specific sales order and records which order lines are being fulfilled, the quantity shipped per line, and the freight and logistics detail used to move the goods. In addition to the customer, ship-to address, and source building, the form captures the following freight and logistics fields:
Freight & Logistics
Section titled “Freight & Logistics”| Field | Required | Description |
|---|---|---|
| Description | No | Free-text description of the shipment (max 255 characters) |
| Special Handling Requirements | No | Free-text handling instructions for the carrier (max 255 characters) |
| SSCC-18 | Conditional | Serial Shipping Container Code. Read-only on the form; generated automatically if left blank. Required when dispatching |
| Carrier | No | Carrier moving the shipment. Selecting a saved carrier auto-fills the SCAC Code |
| SCAC Code | Conditional | Standard Carrier Alpha Code. Populated automatically when a saved carrier is chosen, or entered manually. Required when dispatching |
| Pro Number | No | Carrier’s PRO (progressive) tracking number (max 255 characters) |
| Source Building | Yes | Warehouse or building the goods ship from |
| Freight Terms | Yes | Freight delivery terms for the shipment |
| NMFC Classification | Conditional | National Motor Freight Classification for LTL freight. Required when dispatching |
| Weight (lbs) | No | Total shipment weight in pounds (whole number, 0 or greater) |
| Total Pallets | No | Number of pallets (whole number, 0 or greater) |
| Total Cartons | No | Number of cartons (whole number, 0 or greater) |
| Total Drums | No | Number of drums (whole number, 0 or greater) |
| Scheduled Pickup | No | Date and time the carrier is scheduled to pick up |
| Expected Delivery | No | Date and time delivery is expected |
| Trailer Number | No | Trailer identifier (max 255 characters) |
| Seal Number | No | Seal identifier (max 255 characters) |
View Shipment
Section titled “View Shipment”The view screen shows full shipment detail and the sales order lines fulfilled (Items tab: Order ID, Product ID, Description, Ordered Qty, Shipped Qty, Shipment Qty, UOM), plus Product Log and Attachments tabs. The header indicates whether the shipment auto-invoices via the Auto-Invoice? and Is Invoiced flags, but it does not list the actual invoices generated from the shipment.
Shipment States
Section titled “Shipment States”A shipment carries two independent state flags, each shown as a chip on the View Shipment header:
| State | Values | Meaning |
|---|---|---|
| Open / Closed | Open or Closed | Whether the shipment is still being worked. A newly created shipment is Open; dispatching it sets it to Closed. You can also toggle this manually with the Open Shipment / Close Shipment action. |
| Shipped / Unshipped | Shipped or Unshipped | Whether the goods have left the warehouse. A shipment is created Unshipped and becomes Shipped only after it is dispatched. |
If the shipment is on hold, a red Hold chip also appears, showing the hold reason when one is recorded.
A shipment starts life Open and Unshipped: it has been planned and its lines and tracking details captured, but no inventory has moved yet. The Dispatch Shipment action is what actually ships it — see below.
Dispatch and Reverse Dispatch
Section titled “Dispatch and Reverse Dispatch”Dispatching is the step that turns a planned shipment into a shipped one. Both actions are reached from the Actions menu on the View Shipment screen and require the Dispatch Sales Order Shipment permission.
Dispatch Shipment (shown when the shipment is Unshipped) opens a dialog where you confirm the carrier and shipping details, then commits the shipment. When you dispatch:
- The shipment’s allocated inventory is removed from on-hand stock.
- Shipped quantities are added to the fulfilled sales order lines.
- The shipment is marked Shipped and Closed.
- For company-owned inventory, an invoice is generated automatically as part of the dispatch.
The Dispatch dialog captures:
| Field | Required | Description |
|---|---|---|
| Special Handling Requirements | No | Free-text handling notes |
| SSCC-18 | — | Serial shipping container code (display only; not editable) |
| Source Building | Yes | The building the goods ship from |
| Freight Terms | Yes | Customer freight terms |
| Carrier | Yes | Shipping carrier (select an existing carrier or type a new one); selecting a carrier fills in its SCAC Code |
| SCAC Code | Yes | Standard Carrier Alpha Code |
| Pro Number | No | Carrier pro / tracking number |
| Trailer Number | No | Trailer identifier |
| Seal Number | No | Seal identifier |
| NMFC Classification | Yes | Freight classification |
| Weight (lbs) | Yes | Total shipment weight |
| Total Pallets | Yes | Pallet count |
| Total Cartons | Yes | Carton count |
| Total Drums | Yes | Drum count |
| Invoice Date | Conditional | Invoice date (used when the shipment auto-invoices) |
| Posting Date | Conditional | GL posting date (used when the shipment auto-invoices) |
| Scheduled Pickup | No | Carrier pickup date and time |
| Expected Delivery | No | Expected delivery date and time |
To dispatch a shipment:
- Open the shipment in View Shipment. Confirm it shows the Unshipped chip.
- Open the Actions menu and choose Dispatch Shipment.
- Review and complete the carrier and shipment detail fields, then click Dispatch.
- The shipment header updates to Shipped and Closed, and an invoice is created for any company-owned inventory.
Reverse Dispatch Shipment (shown when the shipment is Shipped) undoes a dispatch. It opens a small dialog asking only for a Posting Date. When you reverse a dispatch:
- The previously shipped inventory is added back and re-allocated to the shipment.
- Shipped quantities are removed from the sales order lines.
- Any invoice that was generated by the dispatch is voided.
- The shipment returns to an Unshipped state (it remains Closed; use Open Shipment to reopen it).
Shipment Documents & Actions
Section titled “Shipment Documents & Actions”The Actions menu on a shipment lets you preview, print, and email the shipment’s paperwork. Most of these documents open as a PDF in a new browser tab.
Navigation: Sales order shipment → Actions menu.
| Action | Description |
|---|---|
| Preview Bill of Lading | Open a PDF preview of the bill of lading for this shipment |
| Preview Packing List | Open a PDF preview of the packing list for this shipment |
| Preview Pick Ticket | Open a PDF preview of the warehouse pick ticket (disabled once the shipment has been shipped) |
| Preview Shipping Label | Open a PDF preview of the shipping label for this shipment |
| Print Documents | Open the Print Sales Order Shipment Documents dialog to send documents to a printer |
| Email Bill of Lading | Send the bill of lading to a recipient via email |
| Email Packing List | Send the packing list to a recipient via email |
| Email Pick Ticket | Send the pick ticket via email (disabled once the shipment has been shipped) |
| Audit Shipment | View the full audit trail of changes to this shipment |
When you email a shipment document, the same Email Dialog used elsewhere in the module opens (see Email Dialog under Actions & Dialogs). For a Bill of Lading or Packing List, the recipient list is pre-filled with the customer contacts that are flagged to receive shipping notifications.
Print Documents Dialog
Section titled “Print Documents Dialog”The Print Sales Order Shipment Documents dialog sends one or more documents directly to a configured printer instead of opening a PDF preview. It lists three documents, each with its own enable checkbox, quantity, and printer selection:
| Field | Description |
|---|---|
| Bill of Lading | When enabled, prints the bill of lading. Quantity defaults to 1. The Printer list shows your PCL printers |
| Packing List | When enabled, prints the packing list. Quantity defaults to 1. The Printer list shows your PCL printers |
| Shipping Labels | When enabled, prints the shipping labels. Quantity defaults to 1. The Printer list shows your Zebra printers |
All three documents are enabled by default, and each printer field defaults to your first available printer of the matching type (the first PCL printer for Bill of Lading and Packing List, the first Zebra printer for Shipping Labels). Uncheck any document you do not want to print. The Print button is unavailable unless at least one document is enabled.
-
Open the shipment and choose Print Documents from the Actions menu.
-
For each document you want to print, leave its checkbox enabled (or enable it), set the quantity, and choose a printer from the list.
-
Uncheck any documents you do not want to print.
-
Click Print to send the selected documents to their printers, then close the dialog.
Shipment Status, Hold, and Actions
Section titled “Shipment Status, Hold, and Actions”The shipment View screen header shows two status chips and, when applicable, a hold chip:
| Chip | Values | Meaning |
|---|---|---|
| Open / Closed | Open (green) or Closed (blue) | Reflects the shipment’s isClosed flag |
| Unshipped / Shipped | Unshipped (amber) or Shipped (grey) | Reflects whether the shipment has been dispatched (isShipped) |
| Hold | Red Hold chip (shown only when the shipment is held) | Displays Hold plus the selected reason, e.g. Hold: Credit Hold, when the shipment is flagged on hold |
Holding a Shipment
Section titled “Holding a Shipment”A shipment can be placed on hold independently of any order-level hold. The hold is set on the Create / Edit Shipment form:
| Field | Required | Notes |
|---|---|---|
| Hold | No (checkbox) | Flags the shipment as on hold. When checked, the shipment displays a red Hold chip on its View screen |
| Hold Reason | No | Reason for the hold. Enabled only when Hold is checked; clearing the Hold checkbox clears the reason. The list is limited to hold reasons configured to apply to sales order shipments |
Open / Close Shipment
Section titled “Open / Close Shipment”The shipment Actions menu includes an Open Shipment / Close Shipment toggle. The menu item label reflects the current state: it reads Close Shipment for an open shipment and Open Shipment for a closed one.
- Open the shipment’s Actions menu and choose Close Shipment (or Open Shipment).
- Confirm the action in the dialog, which names the shipment by its ID.
- The shipment’s Open / Closed status updates accordingly.
Shipment-Based Invoicing
Section titled “Shipment-Based Invoicing”When a sales order is configured to invoice from shipments, the void and issue corrected invoice actions on the resulting invoices are disabled — the shipment record governs the billing.
Dispatch Shipment
Section titled “Dispatch Shipment”Dispatching is the action that records a shipment as physically shipped. Open the Dispatch Shipment dialog from the shipment, complete the carrier and packaging details, then click Dispatch. Dispatching draws the allocated inventory, closes the shipment, and — for company-owned inventory — generates the sales invoice in the same step (see Auto-Invoice on dispatch below).
The dialog collects:
| Field | Description |
|---|---|
| Special Handling Requirements | Free-text handling notes for the shipment |
| SSCC-18 | The shipment’s SSCC-18 serial shipping container code (read-only) |
| Source Building | Building the goods ship from (required) |
| Carrier | Shipping carrier (required) |
| Pro Number | Carrier PRO / tracking number |
| SCAC Code | Standard Carrier Alpha Code (required) |
| NMFC Classification | Freight classification (required) |
| Freight Terms | Customer freight terms for the shipment (required) |
| Trailer Number | Trailer the shipment is loaded on |
| Seal Number | Trailer seal number |
| Weight (lbs) | Shipment weight (required) |
| Total Pallets / Total Cartons / Total Drums | Package counts (required) |
| Invoice Date | Date used as the invoice date when auto-invoicing (required when Auto-Invoice applies) |
| Posting Date | GL posting date used when auto-invoicing (required when Auto-Invoice applies) |
| Scheduled Pickup | Scheduled carrier pickup date and time |
| Expected Delivery | Expected delivery date and time |
| Auto-Invoice | Read-only indicator showing the shipment will generate an invoice on dispatch |
The Auto-Invoice checkbox is read-only — you do not toggle it. The dialog opens with Invoice Date and Posting Date pre-filled to today’s date, and both fields are required and editable while Auto-Invoice applies. Adjust these dates before dispatching if the invoice should carry a different invoice date or post to a different accounting period.
To dispatch a shipment and bill it in one step:
-
Open the shipment and choose the dispatch action to open the Dispatch Shipment dialog.
-
Confirm or adjust the carrier, Source Building, freight, weight, and packaging fields. Source Building, Carrier, SCAC Code, NMFC Classification, Freight Terms, Weight, Total Pallets, Total Cartons, and Total Drums are required.
-
Review Invoice Date and Posting Date (both default to today). Set the Invoice Date and the accounting period Posting Date you want the generated invoice to use.
-
Click Dispatch. The shipment is marked shipped and closed, the allocated inventory is drawn, and — for company-owned inventory — a posted sales invoice is generated automatically.
How the invoice is generated: When the dispatched shipment fulfills lines from more than one sales order, dispatch creates one sales invoice per sales order on that shipment. Each generated invoice uses the Invoice Date and Posting Date you entered, links back to the originating shipment, and posts its GL entries as part of creation, so it is a posted invoice rather than a draft. The shipment is then marked invoiced.
12. Actions & Dialogs
Section titled “12. Actions & Dialogs”Sales Order Actions
Section titled “Sales Order Actions”| Action | Description |
|---|---|
| Allocate Inventory | Navigate to the inventory allocation screen for this order (disabled if the order is closed) |
| Preview Order Acknowledgement | Open a PDF preview of the order acknowledgement document |
| Preview Pick Ticket | Open a PDF preview of the warehouse pick ticket |
| Email Order Acknowledgement | Send the order acknowledgement to a recipient via email |
| Email Pick Ticket | Send the pick ticket via email |
| Audit Sales Order | View the full audit trail of changes to this order |
| Edit Sales Order | Open the edit form (disabled if the order is closed) |
| Delete Sales Order | Permanently delete the order after confirmation (disabled if the order is closed) |
Sales Invoice Actions
Section titled “Sales Invoice Actions”| Action | Description |
|---|---|
| Preview Invoice | Open a PDF preview of the invoice |
| Void Invoice | Mark the invoice as void — requires entering a Void Date (disabled for shipment-based invoices) |
| Issue Corrected Invoice | Create a replacement invoice for a voided invoice (disabled for shipment-based invoices) |
| Email Invoice | Send the invoice to a recipient via email |
| Audit Sales Invoice | View the full audit trail for this invoice |
Email Dialog
Section titled “Email Dialog”When sending any document (acknowledgement, pick ticket, or invoice) by email, a dialog opens where you can configure:
- Recipient email address(es)
- Subject
- Body (message text)
- Send Copy to Me — also send the email to your own address
- Save New Email Addresses — save any newly entered recipient addresses for reuse
Add Salesman Dialog
Section titled “Add Salesman Dialog”Both sales orders and invoices allow adding multiple salesmen:
- Salesman (required) — select from configured salesmen
- Commission Rate (optional) — percentage commission for this salesman on this transaction
Pre-Sales Order Import
Section titled “Pre-Sales Order Import”When creating a sales order, you can load from a pre-sales order (legacy import). A dialog lists available pre-sales orders showing: Source, Customer, Customer PO #, Order Date, Requested, Due to Ship, Earliest Ship, Latest Ship, and Total.
13. Settings
Section titled “13. Settings”Access via Accounts Receivable → Settings.
Global GL Account Settings
Section titled “Global GL Account Settings”These GL accounts are required and must be configured before using the module:
| Field | Required | Description |
|---|---|---|
| Sales Ledger | Yes | Revenue GL account for product sales |
| Freight Ledger | Yes | GL account for freight charges |
| Discount Ledger | Yes | GL account for discounts granted |
| Tax Ledger | Yes | GL account for collected sales tax |
| Inventory Ledger | Yes | GL account for inventory cost of goods sold |
| Cash Ledger | Yes | GL account for cash receipts |
| Accounts Receivable Ledger | Yes | The AR control account |
| Prepayments Ledger | Yes | GL account for customer prepayments/deposits |
Other Global Settings
Section titled “Other Global Settings”| Field | Required | Description |
|---|---|---|
| Default Payment Type | Yes | Default AR payment type for new receipts |
| Default Customer Terms | Yes | Default payment terms applied to new customers (the input is not visually marked required, but the form validation requires a value) |
| SSCC-18 Company Prefix | Yes | Company prefix for SSCC-18 shipping barcode generation (max 10 characters) |
Reference Data Tabs
Section titled “Reference Data Tabs”| Tab | Description |
|---|---|
| Customer Terms | Define payment term options (e.g., Net 30, Net 60, 2/10 Net 30, COD) |
| Customer Freight Terms | Define freight delivery terms (e.g., FOB Origin, FOB Destination, Prepaid) |
| Customer Statuses | Manage status values for customer accounts |
| Customer Categories | Manage customer category classifications |
| Payment Types | Define AR payment types (e.g., Check, ACH, Credit Card, Wire) |
| Deposit Groups | Define named deposit groups (a description) used to group cash receipts onto bank deposits |
| Sales Order Types | Define sales order type classifications |
| Sales Invoice Types | Define sales invoice type classifications |
| Salesmen | Manage the list of available sales representatives |
| Sales Tax Jurisdictions | Configure tax jurisdictions with rates for tax calculation in the application |
| Shipping Carriers | Define available shipping carrier options |
14. Permissions
Section titled “14. Permissions”Sales Order and Invoice permissions are configured per role. The following capabilities can be granted or restricted:
| Permission | Description |
|---|---|
| Read Sales Orders | View the sales order list and details |
| Create Sales Orders | Create new sales orders |
| Update Sales Orders | Edit existing open sales orders |
| Delete Sales Orders | Delete sales orders |
| Read Sales Invoices | View the invoice list and details |
| Create Sales Invoices | Create new invoices |
| Void Sales Invoices | Void posted invoices |
| Read Sales Order Shipments | View shipment records |
| Create Sales Order Shipments | Create new shipments |
| Update Sales Order Shipments | Edit shipment records |
| Manage Settings | Access and modify AR Settings |
Contact your system administrator to adjust role permissions.
15. Worked Examples
Section titled “15. Worked Examples”Example 1: Standard Order-to-Ship-to-Invoice
Section titled “Example 1: Standard Order-to-Ship-to-Invoice”Scenario: Henderson Contractors orders 500 concrete anchors at $2.50 each and 100 hex bolts at $1.50 each. Jeff Allen is the salesman. Total order = $1,400.00.
Step 1 — Create the sales order:
- Navigate to Orders → Manage Orders and click +.
- Customer = Henderson Contractors, Ship To = Henderson Main Yard — 88 Builder’s Lane.
- Order Type = Standard, Customer Terms = Net 30, Due to Ship =
02/20/2026. - Freight Terms = FOB Origin, Freight Amount = $75.00.
- Items tab:
- Line 1: Product = Concrete Anchor 3/8”, Qty = 500, Unit Price = $2.50, Sale GL = 4000 Sales Revenue → Line Amount = $1,250.00
- Line 2: Product = Hex Bolt 1/2” × 3”, Qty = 100, Unit Price = $1.50, Sale GL = 4000 Sales Revenue → Line Amount = $150.00
- Salesmen tab: Jeff Allen, Commission Rate = 3%.
- Click Save. Sales Order SO-4100 created. Total = $1,400.00 + $75.00 freight = $1,475.00.
Step 2 — Allocate inventory:
- From SO-4100, click Actions → Allocate Inventory.
- Both products show sufficient stock. Reserve mode → Post.
Step 3 — Ship the order:
- Open SO-4100 and use its shipment action (the Sales Order Shipments screen has no dedicated menu entry), then click +.
- Sales Order = SO-4100, Ship Date =
02/20/2026, Carrier = Precision Trucking. - Ship all quantities: Anchors = 500, Bolts = 100.
- Click Save.
Step 4 — Invoice:
- Navigate to Orders → Manage Invoices and click +.
- Customer = Henderson Contractors, link to SO-4100.
- Invoice Date =
02/20/2026, Invoice Type = Standard, Terms = Net 30 → Due Date =03/22/2026. - Line items populate from the order. Click Save.
GL posting:
| Account | Debit | Credit |
|---|---|---|
| AR Control | $1,475.00 | |
| Sales Revenue (configured per line) | $1,400.00 | |
| Freight Income | $75.00 | |
| COGS | $875.00 | |
| Inventory | $875.00 |
Example 2: Partial Shipment and Backorder
Section titled “Example 2: Partial Shipment and Backorder”Scenario: Henderson Contractors orders 200 stainless steel brackets at $3.75 each ($750.00). Only 150 are in stock; the remaining 50 are backordered.
Step 1 — Create the sales order:
- Customer = Henderson Contractors, Order Type = Standard.
- Item: Product = SS Bracket L-Type, Qty = 200, Unit Price = $3.75 → Line Amount = $750.00.
- Leave Cancel Backorders unchecked (default) to create a backorder for unfulfilled qty.
- Click Save. SO-4105 created.
Step 2 — Ship what’s available:
- Create shipment for SO-4105, Ship Date =
02/22/2026. - SS Bracket: Shipped Qty = 150 (only 150 in stock). Backorder Qty = 50.
- Click Save.
Step 3 — Invoice the partial shipment:
- Create invoice from SO-4105.
- Invoiced Qty = 150 × $3.75 = $562.50.
- Click Save. Invoice posted.
Step 4 — Receive backorder and complete:
- When the remaining 50 brackets arrive in inventory, create a second shipment for SO-4105.
- Shipped Qty = 50.
- Create a second invoice: 50 × $3.75 = $187.50.
Result:
- SO-4105 shows: Ordered = 200, Shipped = 200, Invoiced = 200 → Closed.
- Two invoices: $562.50 + $187.50 = $750.00 total.
16. Business Rules
Section titled “16. Business Rules”Rules are grouped by category. Each rule has an ID for cross-referencing.
Constraints
Section titled “Constraints”- BR-SO-C1: Drop Ship Address Required — When Drop Ship is enabled, manual Ship To address fields replace the standard site address and are required.
- BR-SO-C2: Ship Complete — When enabled, the UI prevents partial shipment; all ordered quantity must be available before shipping. This is a client-side control; the flag is stored but not enforced server-side.
- BR-SO-C3: Hold Flag Recorded — The hold flag and Hold Reason are recorded and shown on the sales order (a Hold chip in the order view). There is currently no UI block preventing a held order from being shipped or invoiced, and the hold is not enforced server-side.
Automations
Section titled “Automations”- BR-SO-A1: Customer Pricing — Customer-specific pricing auto-populates unit prices on order lines from special pricing agreements.
- BR-SO-A2: Tax Calculation — Selecting a Sales Tax Jurisdiction causes the application to calculate tax amount on the order/invoice. The server stores the supplied tax percent and amount; calculation occurs client-side.
- BR-SO-A3: Backorder Auto-Create — Partial shipments auto-create backorder quantities for remaining items unless “Cancel Backorders” is checked. Cancel Backorders is a UI-level control; the flag is stored but not enforced server-side.
- BR-SO-A4: Invoice GL Post — Invoice posting auto-creates GL entries: debit the AR Control account / credit the configured revenue account, and for inventory-tracked items: debit the COGS account / credit the Inventory account.
Workflows
Section titled “Workflows”- BR-SO-W1: Order-to-Invoice — Create Order → Allocate Inventory → Ship → Invoice → Collect Payment.
- BR-SO-W2: Void and Correct — Voiding an invoice reverses GL entries; a corrected invoice can be issued to replace it.
Cross-Module Effects
Section titled “Cross-Module Effects”- BR-SO-X1: Inventory Allocation — Sales orders create demand that drives inventory allocation; dispatched shipments draw from inventory and reduce on-hand.
- BR-SO-X2: AR Collections — Invoices created from orders enter the AR collections cycle (Cash Receipt → Deposit).
- BR-SO-X3: Commission Tracking — Salesman assignments on orders feed sales performance reports and compensation calculations.
17. Troubleshooting / FAQ
Section titled “17. Troubleshooting / FAQ”Q: I can’t save a drop ship order — “Ship To address required.” When Drop Ship is enabled, the standard Ship To field is replaced with manual address fields that must all be filled (BR-SO-C1). Enter the complete delivery address in the custom fields.
Q: I can’t create a partial shipment — the system requires full quantity. The Ship Complete flag is enabled on the order (BR-SO-C2). The UI prevents partial shipments when this flag is set — all ordered quantity must be available. Disable Ship Complete on the order if partial shipment is acceptable, or wait until full stock is available.
Q: An order is marked on hold — does that stop shipping or invoicing? No. The hold flag and Hold Reason are recorded and shown on the order (a Hold chip) for awareness (BR-SO-C3), but the system does not currently block a held order from being shipped or invoiced. Review the Hold Reason, resolve the issue, and clear the hold for accurate records before proceeding.
Q: I need to void an invoice but the Void button is disabled. Invoices generated from a shipment cannot be voided directly. You must reverse the shipment instead. For standalone invoices (not linked to a shipment), the Void button should be available — check your permissions.
Q: Backorders weren’t created after a partial shipment. The Cancel Backorders checkbox was checked on the order (BR-SO-A3). When checked, partial shipments do not auto-create backorders. Create a new order for the remaining quantity, or re-open the original order if possible.
Q: The invoice amount includes unexpected tax. A Sales Tax Jurisdiction is selected on the order or invoice, which causes the application to calculate tax (BR-SO-A2). If tax should not apply, remove the jurisdiction. If the tax rate is wrong, check the jurisdiction configuration in AR Settings → Sales Tax Jurisdictions.
Q: Customer pricing isn’t populating on order lines. Customer-specific pricing auto-populates from special pricing agreements (BR-SO-A1). Verify the customer has a pricing agreement configured, and that the product is included in that agreement. If no agreement exists, prices default to the product’s standard price.
18. Tips & Notes
Section titled “18. Tips & Notes”-
Order → Invoice workflow: The typical flow is Create Sales Order → Allocate Inventory → Ship → Invoice. Invoices can also be created directly without a sales order for services or one-off billing.
-
Drop ship orders: When Drop Ship is enabled, the ship-to address fields override the customer site address. All required ship-to fields must be filled before saving.
-
Order holds: Placing an order on hold records the hold flag and reason and shows a Hold chip on the order, but it does not currently prevent the order from being shipped or invoiced. Always enter a Hold Reason so the team knows why the order is held and what action is needed before processing it.
-
Ship Complete: Enabling Ship Complete causes the UI to prevent partial shipments. All ordered quantities must be available before the UI allows the shipment to be created. This is a client-side control.
-
Sales tax: Configure Sales Tax Jurisdictions in Settings to enable tax calculation in the application. Once a jurisdiction is selected on an order or invoice, the application calculates and populates the tax percent and amount. The server stores the supplied values.
-
Salesman commissions: Adding salesmen to an order or invoice is important for commission reporting. Multiple salesmen can share an order with different commission rates.
-
Voiding invoices: Only invoices that were not generated from a shipment can be voided directly. For shipment-based invoices, reverse the shipment instead. The Void Date is required and should typically match your accounting period.
-
Corrected invoices: When you issue a corrected invoice after voiding, the system creates a new invoice to replace the voided one. The original voided invoice remains in history for audit purposes.
-
SSCC-18 prefix: The SSCC-18 Company Prefix is used for generating compliant GS1 shipping labels. It must match your registered GS1 company prefix.
-
Aging dashboard: The Accounts Receivable Aging chart is a static visualization of open AR by aging bucket. To drill into specific customers, use the Top 10 Bad Debt Customers (90+ Days) chart on the AR Dashboard, where clicking a bar opens that customer’s record.
-
Product log: The Product Log tab on sales orders and invoices shows the inventory transaction history associated with that document — with columns such as Date, User, Transaction ID, Product ID, Location ID, Pallet ID, Serial Number, Transaction Type, Description, and quantities. Transaction types reflect the underlying inventory movements (for example Manage Shipment, Reserve Inventory, Allocate Inventory, Count Adjustment, and Post Inventory Adjustment) — useful for reconciliation and auditing.