Import Builder/Guides/Wholesale price tiers
Wholesale and distribution

Wholesale Price Tiers, Minimum Orders and Pack Sizes in a CSV

Wholesale prices aren't one number: there's a price for each kind of customer, special prices for some accounts, and minimums and pack sizes on top. Here's how Unleashed, Cin7 Core and inFlow store them in a CSV, and the mistakes that end up costing you margin.

Price tiers: one column per tier

Each system gives a product several prices, one per customer group, and each is a column in the import. The tiers are numbered or set up in the system first; the names you use (Retail, Wholesale, Distributor) live in its settings, not in the file.

Unleashed

Ten columns in the product import, Sell Price Tier 1 to Sell Price Tier 10, beside Default Sell Price and Minimum Sell Price. Keep those headers as they are: Unleashed asks you not to replace them with your own tier names. Prices take up to 4 decimal places.

Cin7 Core

Up to 10 price tiers per product, named in general settings. The Simple prices export lists every product with a column for each of the ten tiers: edit it and import it back. Customers are given a tier, and a sale order's tier overrides the customer's.

inFlow

Pricing schemes. Create them in inFlow first, or they won't appear when you match columns. Then import product details with one price column per scheme, mapping Default unit price to your default scheme. Products must be set to Fixed Price, not Fixed Markup.

Fixed prices and calculated prices are different things. Cin7 Core can calculate a tier as a markup percentage or an added amount on a base such as average cost or the supplier price, imported in its own Markup Prices file. Fixed prices don't convert between currencies there: a Retail price of 200 is AU$200 to one customer and US$200 to another, so Cin7 Core suggests separate tiers, or calculated prices, for other currencies.

Prices for individual customers

A key account often has its own prices on some products. These don't fit as columns, because every customer would need one. Cin7 Core imports them in a separate Custom Prices file with one row per customer and product: the product SKU, the customer's name and the price. A custom price overrides the customer's tier.

Keep them in that long shape in your own spreadsheet too, rather than a grid of products against customers. It's easier to check, and it imports as it is.

Minimum orders and pack sizes

Unleashed's product import has Minimum Order Quantity for purchase orders, Minimum Sale Quantity for sales orders, and Pack Size for the units in a pack, all counted in the product's base unit. inFlow handles packs as units of measure instead: a standard unit, plus a sales unit and a purchasing unit with a ratio, such as a case of 10 written as 1 and 10.

Whichever system you use, settle the base unit first. Every price, minimum and pack size depends on it, and most pricing mistakes start with a file where some rows count units and others count cases.

Mistakes that cost you margin

Prices with symbols and words

Write 12.50, not $12.50, 12.50 ex GST or 12.50/case. Put the currency, tax and unit in your settings or in other columns, never in the price. Strip currency symbols guide.

Per-pack and per-unit prices mixed up

Decide whether every price is per unit or per pack, and say so in the column name. A case price in a unit price column charges the customer for a case on every unit.

Tiers in the wrong columns

Tier columns are numbered, and the names (Retail, Wholesale, Distributor) live in the system's settings. Write down which number is which before you start, and check that each column's prices make sense against the others, such as wholesale below retail.

Minimums counted in packs instead of units

Unleashed counts Minimum Order Quantity, Minimum Sale Quantity and Pack Size in base units, so a minimum of 2 cases of 12 is 24, not 2.

Markups written as prices, or prices as markups

A static price is an amount; a markup is a rule. Cin7 Core imports them in different files (Simple prices and Markup Prices), and inFlow's pricing scheme import is for products set to a fixed price.

Too many decimal places

Unleashed accepts up to 4 decimal places in prices. Round prices calculated in a spreadsheet before importing, rather than letting 12.4999999 through.

Moving to a new system at the same time? The guide to moving products and stock into new inventory software covers the import order and opening stock.

Before you import

Price tiers or pricing schemes set up in the system before importing
A note of which tier number is which customer group
Every price a plain number, without symbols, tax notes or units
Every price per unit, or every price per pack, and labelled so
Minimum quantities and pack sizes in base units
Wholesale prices below retail in every row
Customer-specific prices on their own rows, one per customer and product
A test import of a few products checked before the rest

Collect price lists as plain numbers

Ask suppliers and your own team for prices in a form with your columns. Currency symbols, words in price cells, and missing costs or lead times are flagged as they're entered. Data is checked in the browser and never stored by us.