Vendor SKUs
A Vendor SKU links one of your catalog Products to a specific supplier, recording the vendor's part number, catalog price, lead time, and pack size so purchasing and reorder suggestions always know where to buy and how much to order.
A Vendor SKU is a link between a catalog Product and a vendor. It answers the question "when I need to reorder this Product, which vendor carries it, under what part number, at what price, and how does it ship?" — storing every purchasing parameter in one place so that purchase orders and reorder suggestions can fill in the details automatically.
A single Product can have links to several vendors — useful when you have primary and backup suppliers. Marking one link Preferred signals that it's the default source when the system generates a reorder suggestion or auto-fills a PO line.
A Vendor SKU is not a purchase order line and not a unit. It's a standing catalog entry for a vendor-Product pairing — think of it as your price book for that combination.
Where Vendor SKUs live in the UI #
Vendor SKUs don't have their own top-level page. Instead they surface in two places:
- Inventory → Products → (open a Product) → Vendors tab — shows every vendor that carries this Product, with a New button to add another link.
- Inventory → Vendors → (open a vendor) → Products tab — shows every Product you buy from this vendor, with a New button to add another link.
Both views show the same data and use the same form; the only difference is which side of the relationship you start from.
Fields on a Vendor SKU #
- Vendor — the supplier. Required when adding a link from the Product side; required when adding from the vendor side is the Product. Each vendor can only be linked to a given Product once.
- Vendor SKU # — the vendor's own catalog or part number for this Product (e.g.
DRL-18V-001). Optional, but recommended for PO accuracy. - Catalog Price — what the vendor charges per unit, entered in dollars in the UI. Stored in cents in the database and API (see below).
- Lead Time (days) — how many calendar days between placing the order and receiving stock. Used by reorder suggestions to calculate when to order.
- Min Order Qty — the smallest quantity the vendor will sell per order. Reorder suggestions will not propose a quantity below this.
- Units per Pack — how many base units come in one ordered pack (e.g.
10for a box of ten). Helps purchasing convert between order units and inventory units. - Order Unit — a label for the pack (e.g.
box,case,pallet). Appears alongside the pack size in the vendor table. - Preferred — flag this link as the default vendor for reorder suggestions and PO auto-fill. Only one link per Product can be preferred; setting a new one automatically clears the old one.
- Notes — free-text notes about this vendor-Product relationship (e.g. minimum notice period, packaging quirks).
Setting the preferred vendor #
In the Vendors tab on a Product's page, each non-preferred link shows a Set as Preferred action (the star icon). Clicking it marks that link preferred and un-marks whichever link was preferred before — the system ensures there is never more than one preferred vendor per Product. The change is tracked in the Product's change history and can be undone from the notification toast.
How Vendor SKUs feed purchasing #
When you create a purchase order, each line item looks up the vendor SKU link for the chosen vendor and Product pair and pre-populates the unit price and suggests a quantity based on the minimum order quantity and pack size. The vendor SKU number is shown in the Product dropdown label for reference. If the Product has a preferred vendor link, that vendor is suggested automatically.
Reorder suggestions use the preferred vendor's lead time to decide how early to trigger a suggestion, and the minimum order quantity to ensure the proposed PO line meets the vendor's minimums.
Filtering in the list #
Both the Product-side Vendors table and the vendor-side Products table can be scanned
visually. There is no standalone Vendor SKU list in the UI — use the API
vendor_id or product_id filters if you need to query across all links in bulk.
Doing it from the API #
# List all vendor SKU links for a specific Product
curl "https://your-domain.com/api/v1/inventory/vendor-skus?product_id=<product-id>" \
-H "Authorization: Bearer $TOKEN"
# Create a vendor SKU link
curl -X POST "https://your-domain.com/api/v1/inventory/vendor-skus" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"vendor_id": "<vendor-id>",
"product_id": "<product-id>",
"vendor_sku_number": "DRL-18V-001",
"catalog_price": 4500,
"lead_time_days": 7,
"minimum_order_quantity": 1,
"units_per_pack": 1,
"order_unit": "each",
"is_preferred": true
}'
catalog_priceis in cents — send4500for $45.00, not45.00. The UI converts for you, but the API always uses integers. Filter the list byvendor_idorproduct_idto scope results; the endpoint paginates at 50 per page.DELETEsoft-deletes the link; neither the vendor nor the Product is removed.