Skip to main content

Costs, discounts and charges on a purchase order

Where a purchase order's unit costs come from, per-line and whole-order discounts, shipping and other charges, and how each one feeds landed cost.

A purchase order is the record of what you are actually paying this time. Unit costs start from your Shopify product costs, and the Cost summary takes discounts, shipping and other charges that feed your landed cost when the goods arrive.

Costs, discounts and charges

  • Unit cost pre-fills from your Shopify product cost, and you can override it per line - the PO is the source of truth for what you're actually paying this time.

  • Discount % applies per line, for supplier deals and volume pricing.

  • A supplier whose terms are a standing discount can carry it: set Default discount % in the Details card on the supplier's page, and every new line on an order to that supplier starts at it - added on the order, from a CSV import, from Reorder or from the POS. A discount stated in an imported file wins. Lines already on an order keep theirs when you change the default, and supplier returns are never discounted by it.

  • Setting the same figure on lots of lines? Two shortcuts. When several lines are variants of one product - a size range, a colourway - typing the cost or the discount on one of them puts Apply to the other variants under the field, which copies it to the rest of that product's lines. The link only appears while they still disagree, so it doubles as a check that a range matches. For lines that are not variants of each other - a whole order at 15% off - tick the ones you want in the Select column, then use Set cost or Set discount in the bar that appears above the items. Your selection stays put afterwards, so you can set a cost and a discount on the same rows.

  • In the Cost summary, click Add cost and choose Add shipping or Add adjustment to add order-level charges - freight, handling, a credit from the supplier. Rename the labels to match the invoice, and choose how each charge splits across items. Enter a charge as an amount or as a percent of the subtotal - a percent converts to a fixed amount when you add it, and the Custom split isn't offered while the amount is a percent. Those charges feed your true landed cost when you receive - see Landed cost: what your stock really costs.

  • For a discount on the whole order, choose Add discount. Enter it as an amount or as a percent of the subtotal - a percent converts to a fixed amount the moment you add it, so it will not change if you edit the items afterwards. The discount prints on the purchase order your supplier receives and reduces the order total. With the default By value split it also lowers each item's landed cost in proportion; pick Not allocated if it should only reduce the order total. Typing a negative amount on an adjustment does the same thing.

Freight that comes with a delivery goes in the Freight and charges box on the receive card, beside Invoice total. It only adds to the landed cost of the items in that delivery. Billed by this supplier sits beside it and starts ticked. Untick it when a carrier or broker bills you for that freight: it still counts in landed cost, but it stays off the supplier's copy and their bill, and it stays out of the invoice check.

Enter freight in one place. If you know the freight when you create the order, add it with Add shipping and leave the receive card's box empty. If you only find out when the invoice comes, enter it on the receive card instead. When the order already has shipping on it, the receive card says how much under the Freight and charges box. Entering it in both places puts it on the supplier's bill twice.

When you type an Invoice total, Stockroom compares it with the goods in the delivery plus the freight the supplier billed. That includes the delivery's share of any shipping on the order itself, so enter the invoice total exactly as it appears on the supplier's invoice.

A charge billed after the goods arrived - a customs broker's or carrier's invoice, say - goes on that delivery. In the order's History card, click the + on the delivery's row to open Add delivery charge. Choose the Type (Shipping or Adjustment), a Charge label, an amount or a percentage of that delivery's goods, and how to Split across items (By value, By quantity, By weight or Not allocated). Billed by this supplier starts unticked here: leave it that way for a broker's or carrier's invoice, so the charge adds to landed cost but stays off the supplier's copy and their bill. Add charge saves it. Only that delivery's items share the charge, and only their landed costs update. If that changes what those items cost, Stockroom then offers to update your product costs in Shopify, the same choice you get when you receive - nothing changes in Shopify unless you confirm it, and the charge stays saved either way. A closed or archived order doesn't take one - reopen the order, add the charge, then close it again.

Good to know

  • A cost per unit can be a very small number - buy resin at $5.31 a kilo, stock it in grams, and each gram costs $0.00531. Stockroom keeps unit costs to eight decimal places everywhere it uses them: recipes, landed cost, averages and margins. Shopify's own cost box only holds cents, so the figure sent there is rounded to the cent, and a cost that would round to nothing is sent as $0.01 - a zero in that box reads as no cost at all. The exact figure stays in Stockroom, and order totals are money and unaffected.

  • Each line's amount is rounded to the cent before the lines are added up, so the subtotal on screen, on the PDF and in QuickBooks is the same figure.

  • To total what you paid in shipping over a year, use Reports > Purchase order charges.

  • The costs on a placed order are fixed; what a delivery actually cost is recorded when you receive, and can be corrected afterwards - see Receiving Inventory Against a Purchase Order.

  • How charges spread across items and reach your product costs is in Landed cost: what your stock really costs; buying in another currency is in Buying in your supplier's currency.

Did this answer your question?