Sourcing parts for a job
Updated September 24, 2026
What this does
Every part line on a work order carries a sourcing status and a Source action. The action opens the Source Part panel, which answers one question three ways: do we have it on the shelf, what have we paid for it before, and if we need to buy it, from whom.
Before you start
parts_orders.edit to pull from stock, parts_orders.create to raise an order (Owner, General Manager, Service Manager, Service Writer). The line has to be a Part line; labor, fees, sublet, and discounts don't source.
Steps
Source on the part line. The panel searches the line's name and part number automatically; edit the search and press Enter to try something else.
In Stock lists matching inventory parts with quantity on hand, cost, retail, and location. Pull takes the line's quantity out of stock, records a Sale transaction against the part, sets the line's cost price to the part's cost and (when the part has one) its selling price to the part's retail, and marks the line In stock. The button is disabled when on hand is short of the line's quantity; it will not pull a partial.
Shop History shows what the shop has bought under this name before: the price range seen, recent vendor quotes with dates, and which vehicles it went on. Use it to sanity-check a quote or pick a vendor. It's read-only.
New Purchase Order at the bottom raises a parts order from this line: Vendor, Part Number, Brand, Part Name, Qty, Unit Cost, Core Charge, Customer Price. Creating it marks the line Ordered, copies the unit cost to the line's cost price and, if you entered one, the customer price to the selling price. The order then lives on the Parts Orders board; see Parts orders.
Get Quotes — PartsTech appears only on vehicle work orders when PartsTech is connected; see PartsTech quotes.
Sourcing statuses
Not needed is the default on every part line and means no one has decided yet, not that the part is on hand. Needed flags it for ordering; the Batch Order page collects these. In stock was pulled from inventory. Quoted has a PartsTech quote attached but not yet ordered. Ordered is on a parts order. Received arrived; Installed is on the vehicle. Received and Installed are set from the parts order, not the work order.
What happens to stock
Pull takes stock out immediately. Ordering can put it back and take it out again, if the order line names a stocked part.
The Create Purchase Order form in this panel has a Stocked Part picker for exactly that, and if you leave it blank the app still links the line when the part number you typed matches exactly one part in your inventory. Receiving that order adds to the count; finishing the job takes the same quantity back out, so the part nets to zero. A line with no stocked part behind it — a part bought for this car and this car only — never touches the shelf at either end, which is the common case here.
When the job reaches Ready for Pickup, the app writes a parts history record for every in-stock or received part line (that's what Shop History reads), deducts the received lines that are linked to a part, and leaves pulled lines alone — they came off the shelf already, and deducting them twice is the bug that rule exists to prevent.
Common problems
Pulled the wrong part. There's no un-pull. Record a Return transaction on the part for the quantity, then delete or re-source the line.
Pull is greyed out. On hand is below the line quantity. Reduce the line quantity, receive stock first, or order the part.
Line says Not needed but the part's on the shelf. Not needed is the default, not a fact. Pull it so the count and the cost are right.