Procurement

Procurement workflow from pending items to received, purchase order statuses, and distributor API ordering.

Written By Victor Raessen

Last updated 4 days ago

The procurement module manages ordering products from distributors after a quote is approved. It tracks what needs to be ordered, groups items into purchase orders, submits them to distributors, and syncs everything back to your PSA.

Procurement is the bridge between sales and fulfilment. When a quote is approved, line items automatically appear as pending items. From there, you create purchase orders, submit them to distributors (via API, email, or manually), receive items as they arrive, and track the full audit trail. The entire flow ties back to your PSA — the exact entities created depend on which PSA you use.

Procurement workflow

  1. Quote approved — Product line items from Quotes automatically appear as pending items in Procurement. Services and items flagged as "does not require procurement" are excluded.
  2. Review pending items — Navigate to Procurement > Pending Items to see all items awaiting order. Dismiss items that don't need procurement (e.g., internal items) with a reason.
  3. Create purchase order — Group pending items into a purchase order, assigned to a distributor. Items from multiple quotes can be combined into a single PO.
  4. Approval (if configured) — Orders exceeding a configured value threshold are sent for internal approval before they can be placed.
  5. Place order — Submit the order to the distributor via API, email, or mark as manually submitted. Optionally skip distributor submission for internal/warehouse orders while still syncing to your PSA.
  6. PSA sync — Salesbuildr creates the corresponding entities in your PSA (tickets, charges, purchase orders, or sales orders — depending on your PSA).
  7. Receive items — Track received quantities and serial numbers as items arrive. Receiving data syncs back to your PSA where supported.
  8. Complete — The order is automatically marked complete when all items are received.

What each PSA creates

The entities Salesbuildr creates in your PSA differ significantly. Understanding these differences is important for your post-sale workflow.

Capability

Autotask

ConnectWise

HaloPSA

Standalone

Post-sale ticketTicket with charges (per line item, including cost and sell price)Service ticket + converts opportunity products to ticket line itemsSales order with line items (not a ticket)No PSA entity
Purchase order in PSACreates a PO entity in Autotask with line items, linked to the distributor companyNot supported — POs exist only in SalesbuildrCreates a PO entity in Halo, linked to the supplier and sales orderNot applicable
Item receiving syncReceiving records sync to Autotask PO items (quantity + serial number + date)Not syncedCreates stock records in Halo (quantity, cost, supplier, serialized assets if configured)Not applicable
Opportunity updatePipeline stage updated via Opportunities stage mappingPipeline stage updated via stage mappingPipeline stage updated via stage mappingStage updated locally
Internal notesTicket note (internal only) + URL attachment linking to Salesbuildr quoteInitial description on service ticketCRM note on the sales orderStored locally
Shipping chargeSeparate ticket charge with billing code from Autotask shipping typeNot synced as separate chargeNot synced as separate lineNot applicable

Autotask details

Autotask has the most complete integration. Salesbuildr creates:

  • A post-sale ticket with charges for each line item (operational charge type, with cost, sell price, quantity, and product link)
  • A purchase order entity in Autotask with line items, including ship-to address for dropship orders
  • Receiving records that sync back to Autotask PO items as you receive in Salesbuildr

Autotask PO creation requires the Enable for Procurement toggle in Admin > Integrations > Autotask > Purchase Order, a configured inventory location, and products synced to Autotask. Service-type items are excluded from both PO line items and ticket charges.

Note: Autotask creates tickets and purchase orders — not sales orders or contracts. To add products to Projects, use the Won Opportunity Wizard in Autotask manually.

ConnectWise details

ConnectWise creates a service ticket on your configured board and converts the won opportunity's products into service ticket line items using ConnectWise's native conversion mechanism.

Purchase orders are not created in ConnectWise — they exist only in Salesbuildr. You can still submit POs to distributors via API or email, but the PO entity is not synced to ConnectWise Manage. Item receiving is tracked in Salesbuildr only.

Configure ticket settings (board, status, priority, SLA, impact) in Admin > Integrations > ConnectWise > Ticket Settings.

HaloPSA details

HaloPSA creates two distinct entities:

  • A sales order (not a ticket) with line items, linked to the Halo quotation and opportunity. Each line includes cost, sell price, and supplier ID.
  • A purchase order entity in Halo, linked to the sales order and supplier company.

When items are received, Salesbuildr creates stock records in Halo. For products with a linked asset type, serialized asset records are created automatically.

All items in a Halo PO must belong to a single company. The distributor company must be configured as a supplier company type in Halo.

Standalone (no PSA)

Without a PSA connected, procurement still works for distributor ordering. Purchase orders are created and tracked in Salesbuildr, and can be submitted to distributors via API or email. All internal features work — approval workflows, item receiving, audit trail, PDF generation. No external entities are created.

Purchase order statuses

Status

Description

PendingOrder created, items can still be added or removed
Awaiting approvalSent for internal approval — waiting for the designated approver to act
Email sentPO PDF emailed to the distributor
SubmittedOrder submitted via distributor API or marked as manually submitted
PartialSome items received, not all
CompletedAll items received (calculated automatically)
CancelledOrder cancelled — all items returned to the pending items pool

Order types

  • Wholesale — Shipped to your location for staging, configuration, or internal stock
  • Dropship — Shipped directly from the distributor to the customer. Enter the customer's shipping address when placing the order.

Submission methods

When placing a purchase order, you choose how to submit it to the distributor:

  • API submission — Sends the order directly to the distributor's ordering API. Available for supported distributors (see below). The distributor's order number is stored automatically.
  • Email submission — Generates a PDF of the purchase order and emails it to the distributor. Available for any distributor with a configured email address.
  • Mark as submitted — For orders placed manually (phone, distributor portal). Optionally store a link to the external PO for reference.
  • Skip distributor submission — Submit to your PSA only, without sending to the distributor. Useful for internal/warehouse distributors or orders you'll place separately.

Supported distributors

Purchase orders can be submitted directly to supported Distributors via API:

Distributor

API

Email

Notes

Ingram MicroYesYesOAuth2 authentication. Supports dropship, special bid numbers, and end-user info.
TD SynnexYesYesSeparate EU (API key, XML) and US (user/password, XML) implementations. Automatic order status polling.
Pax8YesYesCloud subscriptions. Handles commitment terms, billing periods (monthly, annual, multi-year), and provisioning.
OnetrailYesYesRouted through Ingram Micro infrastructure.

For other distributors (Also, Westcon, Dicker Data, or any custom distributor), use email submission or mark as manually submitted.

Approval rules

Configure approval rules under Admin > Procurement > Approvals to require internal approval before purchase orders can be placed.

Each rule defines a value range (from/to amount) and an approver. When a purchase order's total falls within a rule's range, the order must be approved by the designated person before it can be submitted. The order creator cannot approve their own orders.

Rules are evaluated in order. If no rule matches (amount below thresholds, or the only matching rule's approver is the creator), no approval is required. Approval rules are snapshot onto the order at creation time — changing rules later does not affect existing orders.

When an order requires approval, it enters the awaiting approval status and the approver receives an email notification. The approver can reject the order (returning it to pending with a reason) or place it directly (which constitutes approval).

Products, services, and recurring items

Not all quote items enter the procurement pipeline:

Item type

Enters procurement?

Why

Products (hardware, physical)YesStandard procurement items
Pax8 cloud subscriptionsYesException — Pax8-linked items always enter procurement regardless of product type, because the subscription is provisioned through the Pax8 API
Services and labourNoFiltered out — services don't require procurement ordering
BundlesNoBundle containers are not procured (individual bundle items may be)
Items flagged "does not require procurement"NoPer-product opt-out flag on the product record

Recurring services (subscriptions, MRR items) are not handled by procurement. These are typically managed through your PSA's native contract or agreement tools. Salesbuildr's procurement pipeline does not create contracts or agreements in any PSA.

Item receiving

As items arrive from distributors, track received quantities and serial numbers in Salesbuildr. Navigate to the purchase order and record each receipt.

The order status updates automatically: partial when some items are received, completed when all quantities match.

Receiving data syncs to your PSA where supported:

  • Autotask — Creates receiving records on the Autotask PO items (quantity, serial number, date)
  • HaloPSA — Creates stock records in Halo (quantity, cost, supplier). For products with a linked asset type, serialized asset records are created automatically.
  • ConnectWise / Standalone — Receiving is tracked in Salesbuildr only

What you'll continue to do separately

Procurement handles the sales-to-ordering handoff — from approved quote through to item receiving. Some areas remain outside Salesbuildr and are managed through your existing tools:

Area

Current state

What this means

Receiving itemsTrack quantities and serial numbers in Salesbuildr; use your standard PSA workflow for warehouse processingSalesbuildr records what arrived and syncs to your PSA (Autotask and HaloPSA), but physical receiving workflows stay in your PSA
Order trackingCheck your distributor portal for shipment statusTracking numbers are not synced automatically. TD Synnex order status is polled; other distributors are not.
Shipping optionsDistributor default shipping appliesCarrier selection and expedited options are configured in the distributor portal, not in Salesbuildr
Inventory managementManage separately in your PSANo automatic stock picking from internal inventory when creating orders
Serial numbersEntered manually during receivingSerial numbers are not captured automatically from the distributor. Enter them as you receive items.
Pricing updatesClick to refresh before orderingDistributor prices are fetched at quote time. Use "Use Latest Distributor Cost" on the pending items page to get current pricing before placing the order.

See also