Receive stock from a supplier
On this page
Replenishment has two halves: knowing when to reorder, and recording what arrives. StoreConnect handles the first with a reorder point on each stock level, and the second with a manual stock adjustment that captures the unit cost and the supplier it came from.
Use this process when you buy stock in from suppliers and want your inventory counts and cost valuation to stay accurate.
:::note StoreConnect has no supplier purchase order object. Where you see Purchase Order in StoreConnect, it refers to a business customer’s own PO number captured at checkout, which is the opposite direction of trade. If you raise formal purchase orders to your suppliers, do that in your accounting or ERP system, and use the process below to record the stock when it arrives. :::
Before you start
- Create stock locations and stock levels for the products you are receiving. See Stock locations.
- Link each product to its supplier, so the receipt can reference real terms. See Product suppliers.
Set a reorder point
Each Stock Level record carries two thresholds. They do different jobs, and neither one blocks a sale on its own.
| Field | API name | What it does |
|---|---|---|
| Minimum Stock Reorder Level | s_c__Minimum_Stock_Reorder_Level__c |
The quantity you want to keep on hand at all times. It flags that a product needs restocking and has no effect on whether the product can be sold. |
| Out of Stock Level | s_c__Out_Of_Stock_Level__c |
The Available to Sell figure at which the store treats the product as out of stock. Setting it to 5 shows the product as out of stock once Available to Sell reaches 5. |
Use them together to stop selling before you hit zero. Set Out of Stock Level to the point at which you want the storefront to stop taking orders, and Minimum Stock Reorder Level above it, so the reorder flag is raised while you can still sell.
:::warning
Out of Stock Level does not reserve units. It decides when the product stops being purchasable, not how many units the storefront may sell. While Available to Sell is still above the threshold, a single order can take every unit, including the ones below it. With Available to Sell at 20 and Out of Stock Level at 5, one customer ordering 20 succeeds and leaves you at zero.
Treat the threshold as a cut-off, not as stock held back for another channel. If you need units genuinely ring-fenced for walk-in trade, hold them at a separate Stock Location with Online Fulfillment Options set to Do not fulfill online orders. The storefront ignores those stock levels entirely when it works out what is available. See Stock locations.
:::
To set the thresholds:
- Open the Stock Level record for the product and location, or open the Stock Management component and click the inventory icon on the stock level row to open the Inventory Details side panel.
- Enter the Minimum Stock Reorder Level.
- Enter the Out of Stock Level if you want selling to stop above zero.
- Click Save.
The Inventory Details side panel also shows Count on Hand, Last Inventory Count, and Last Inventory Date as read-only reference values, and you can move between stock level rows without closing it.
:::note A negative Out of Stock Level has no effect. The field accepts a negative number, but the storefront treats a product as out of stock as soon as its total Available to Sell reaches zero, whatever the threshold says. You cannot use a negative value to permit a small amount of overselling. To keep selling past zero, select Backorderable (sell if out of stock)? on the stock level instead. See Backorders. :::
Example: a product with a two-week lead time
A product sells around 20 units a week and its supplier takes two weeks to deliver:
- Minimum Stock Reorder Level —
40, so the product flags for reorder with roughly the lead time still in cover. - Out of Stock Level —
5, so the storefront stops taking orders while five units are still on the shelf rather than running to zero.
Build the reorder list
A reorder list is every stock level that has fallen to its threshold. Salesforce reports cannot compare one field against another in a filter, so add a formula field first and filter on that.
- In Salesforce Setup, open Object Manager and select Stock Level.
- Create a field of type Formula, named
Needs Reorder, returning Checkbox. -
Enter the formula:
s_c__Available_To_Sell__c <= s_c__Minimum_Stock_Reorder_Level__c - Save, then add the field to the Stock Level page layout so staff can see it on the record.
- Go to the Reports tab and click New Report.
- Choose a report type covering Stock Level and its Product. StoreConnect ships no packaged report types, so create a custom one in Setup under Report Types if none exists yet.
- Filter on Needs Reorder equals
True. - Group rows by Product, and add Available to Sell, Count on Hand, and Minimum Stock Reorder Level as columns.
- Save and run the report.
Watch the blank thresholds. A blank Minimum Stock Reorder Level compares as zero, so for those stock levels the formula reduces to Available to Sell at or below zero, and the product flags for reorder only once it has already run out. On the report it looks identical to a product comfortably in stock, right up to the point it becomes unsellable.
To keep those rows out of the list and handle them as a setup task instead, exclude blanks in the formula:
AND(
NOT(ISBLANK(s_c__Minimum_Stock_Reorder_Level__c)),
s_c__Available_To_Sell__c <= s_c__Minimum_Stock_Reorder_Level__c
)
Then report separately on stock levels where the threshold is blank, so the products nobody has set a threshold for are visible as a list of their own.
To get one list per supplier, build the equivalent report over Supplier Accounts grouped by Account, since the supplier lives on the Product Supplier record rather than on the stock level. Run the reorder report to see what needs buying, and the supplier report to see who to buy it from.
Record what arrives
A Manual Stock Adjustment (s_c__Manual_Stock_Adjustment__c) groups many product quantity changes for one stock location into a single record, with a supplier reference and a cost per line. That makes it the right record for a goods receipt.
:::warning Saving one does not change your stock levels. StoreConnect records the adjustment and its items; it does not apply them. Nothing in the platform acts on the Status field, so setting it to complete marks the paperwork done and moves no stock.
Applying a receipt to stock is your own automation, normally a record-triggered Flow on the adjustment that writes to Change Quantity on each affected Stock Level. Decide what yours should be before you start receiving against these records, or you will accumulate accurate paperwork and untouched stock levels. :::
:::note
Do not confuse it with Stock Adjustment (s_c__Stock_Adjustment__c), which is the automatic history log of every quantity change. That log is written for you and should never be edited. See Manage stock levels.
:::
- Go to the Manual Stock Adjustments list.
- Click New.
- Set Stock Location to the location receiving the stock.
- Set Supplier to the supplier Account the stock came from.
- Set Effective Date to the date the stock arrived.
- Enter the supplier’s invoice or consignment number in Reference, and anything the receiving team needs to know in Notes.
- Click Save.
- In the Manual Stock Adjustment Items related list, add one item per product:
- Product — the product received.
- Quantity — the number of units received, as a relative change.
- Unit Cost — the cost price per unit for this receipt. When POS creates the item it takes this from the product’s Cost Price (
Product2.s_c__Cost_Price__c), so keep that field current if you receive stock at POS.
- Set Status to record where the receipt has got to, and Committed By to whoever checked it in. Both are for your own reporting and automation. Neither is read by StoreConnect.
The adjustment and its items now hold what arrived, at what cost, from which supplier. Your Flow is what turns that into a stock movement, by writing to Change Quantity on each Stock Level. Until it runs, the stock levels are unchanged and the Stock Adjustment history log has nothing new in it.
What the cost fields give you
Each item can carry the valuation around the receipt, so the adjustment doubles as a costing record. These are plain fields, not formulas, and only the POS receiving path fills them in.
| Field | API name | What it records |
|---|---|---|
| Unit Cost | s_c__Unit_Cost__c |
The cost price of the product when the item was created. |
| Stock On Hand | s_c__Stock_On_Hand__c |
The available stock on hand before this adjustment was applied. |
| Value On Hand | s_c__Value_On_Hand__c |
The total value of the product, at cost, before the adjustment. |
| Unit Variance | s_c__Unit_Variance__c |
The change in unit count after the adjustment. |
| Value Variance | s_c__Value_Variance__c |
The change in monetary value after the adjustment. |
The header record has Total Variance Value (s_c__Total_Variance_Value__c) for the value of the whole receipt.
:::warning An adjustment you create in Salesforce leaves every one of these blank. They are populated only when POS creates the item, so a hand-built or Data Loader receipt has no valuation on it at all, and a report over them silently omits those rows.
If you receive stock in Salesforce and want the costing, your Flow has to write these fields as well as moving the stock. Unit Cost is the one that matters most: without it there is no record of what the receipt cost. :::
Where Unit Cost is populated and the Supplier is on the header, a report over manual stock adjustment items shows what stock was valued at over time, by supplier. That is the figure to check the blended Landed Cost against. See Product suppliers.
:::note Cost flows in one direction only: from the product’s Cost Price onto the receipt, and only on the POS path. Receiving stock does not update the supplier’s Purchase Price or Landed Cost, and nothing writes back to the Supplier Account record at all. Keep Cost Price accurate if you receive at POS, since that is where the receipt’s valuation comes from. :::
Handle a short or damaged delivery
Deliveries arrive short, broken, or wrong. Because Quantity on a manual stock adjustment item is a relative change, record what you can actually sell, not what the paperwork claims.
- Short delivery — enter the quantity that physically arrived. If the invoice says 50 and 48 arrived, enter
48and note the shortfall in Notes. Chase the missing units as a separate receipt when they turn up. - Damaged on arrival, and you are sending it back — leave the damaged units out of the receipt entirely. They never became sellable stock, so counting them in and out again just adds two entries that cancel.
- Damaged on arrival, and you are keeping it — receive the full quantity, then write off the damaged units separately so the loss is visible as a loss rather than hidden in a short receipt.
Put the supplier’s reference on the adjustment either way. When you later query why a supplier’s landed cost is climbing, the shortfalls and damage recorded against their receipts are the evidence.
Write off damaged or missing stock
Stock is damaged in the warehouse, breaks in handling, and goes missing. That is a stock correction rather than a receipt, so use Change Quantity on the Stock Level record with a negative number, and record the reason.
Use a stocktake instead when you have physically counted and want the counted figure to become the new baseline. See Manage stock levels for a comparison of the correction methods, and Record a stocktake for counts.
Keeping write-offs separate from receipts is what makes shrinkage measurable. If damage is absorbed into short receipts, it looks like a supplier problem when it may be a handling problem.
Return goods to a supplier
StoreConnect has no supplier return or RMA record. Handle a return in two parts:
- Remove the units from sellable stock, using a negative Change Quantity on the Stock Level or a manual stock adjustment against the supplier.
- Contact the supplier to arrange the return, and track the credit in your accounting system. Supplier contact details are on the supplier Account, and POS staff can reach them through the supplier list. See Add a supplier list to POS.
Receive stock at POS
POS can reach stock adjustments directly, so receiving does not have to happen in Salesforce. Two POS actions are relevant:
| Action | What it opens |
|---|---|
nav:stock_adjustments |
The stock adjustments screen |
nav:suppliers |
The suppliers list, for contacting the supplier about a short or damaged delivery |
Add both to a POS layout used by receiving staff, so a delivery can be checked in and queried from the same screen. See POS layouts and Add a supplier list to POS.
Moving stock you already own
A manual stock adjustment records stock entering or leaving your business. Moving existing stock between your own locations is a different record. Use a stock transfer instead, so the stock is not counted twice. See Transfer stock.
Once the adjustment is saved, the receipt is on file with its supplier, reference, and unit cost, and its items record what arrived. The stock itself moves when your own automation runs and writes to Change Quantity, so check the new Count on Hand on the Stock Level records before you treat the delivery as booked in.
Was this article helpful?
Thanks for your feedback! It helps us improve our docs.