Managing products

Finding, adding, editing, deactivating and deleting products, and what each field on the form means.

The list

Open Products in the navigation. The list is alphabetical, 25 to a page, active and inactive together. Type in Search by name, SKU, description or unit to filter. The search is by keyword: every word you type must appear somewhere on the product, and a word matches any part of a field, in any case. The fields searched are the name, SKU, description and the unit it is sold by. So diesel finds every diesel product and diesel gallon only those sold by the gallon. Up to five words count.

ColumnWhat it shows
NameThe product name.
SKUThe code, or a dash.
Sold ByThe unit's name: a listed unit as named (Unit, Kilogram, Gallon…), or a custom unit exactly as typed. The abbreviation (kg, gal…) appears only beside quantities on receipts. A dash for a product priced at a custom price only.
Price / unitThe price in the organisation currency, or Custom Price for a product priced at a custom price only.
StatusActive or Inactive.

On a phone each product is a card with its price ("1,100 / Gallon", "Custom Price", or "1,100 / Gallon or Custom Price") and, when relevant, the SKU and an Inactive badge. Tap to open. Pull down to refresh.

Lists show 25 rows a page. Under the list, "Page 1 of 4 · 92 products" with Previous and Next turns the pages; a list that fits on one page shows only the count. Typing in the search box starts again from the first page.

For the whole catalogue in one document, run the Price List report.

Adding a product

Press New Product. Four cards, and a fifth, Locations, when you may view locations:

"Details"

Name
Required, up to 160 characters.
SKU
Optional, up to 64 characters, typed in capitals. Unique within the organisation, and a SKU that belonged to a deleted product cannot be reused. Clashes are reported by name: "SKU “X” is already in use." or "SKU “X” belonged to a deleted product and cannot be reused."
Description
Optional, up to 1000 characters. Not printed on receipts.

"Pricing"

These are the product's global values; a location may override them, see Locations below. Headed "How this product is priced when sold". Three buttons, with a line of help under whichever is chosen. The wording on this card is deliberately general — products feed receipts today and may feed other features later — so it says "sold" where the receipt pages say "receipt line":

Per Unit
The default. "A fixed price per unit. Only the quantity is entered when the product is sold." On a receipt the catalogue price is locked and only the quantity is typed.
Custom Price
"The amount is entered when the product is sold. No unit price or unit is kept." The "Unit & Price" card disappears, and on a receipt the line has an Amount box instead of a quantity.
Both
"Sold at the unit price or at an entered amount. Choose which is offered first." A second row, Default, chooses which a new receipt line starts in (Per Unit or Custom Price); whoever issues the receipt can switch it on the line.
Units From Amount
Shown for Custom Price and Both: Off (default) or On. When on, a receipt line sold at a custom price also records how many units the amount bought, worked out as the amount divided by the price per unit, to three decimal places (rounded half up: 5,000 at 1,100 a gallon is 4.545 gal). The receipt prints the units and the rate under the line, and Sales by Product counts them in Units Sold. Switching it on brings the "Unit & Price" card back for a Custom Price product, because the amount is divided by that price and the result is in that unit; the price must then be above zero ("Enter a price above zero to work out units from the amount."). Off, a custom-priced sale records the amount only.

"Quantity"

Shown for Per Unit and Both (a product sold at a custom price only has no quantity to type, and keeps whatever rule it had for a switch back). Headed "What the quantity may be when sold per unit". It decides what can be typed in the receipt's Qty box for this product; see Issuing a receipt.

Whole Quantity
The default. "The quantity entered when the product is sold must be a whole number of 1 or more."
Fractional Quantity
"The quantity entered when the product is sold may have decimals, up to the precision chosen below. Units worked out from an amount are not affected." A Precision number box then takes the decimal places allowed, 1 to 3, with the smallest step under it ("Up to 2 decimal places: 0.01 is the smallest step."). It starts at 3 for a product that has never been fractional, and a typed precision is remembered across a switch to Whole and back. Blank, 0, 4 or anything else shows "Enter a precision from 1 to 3." when saving.

Units worked out from an amount are never affected by this card: a custom-priced line's quantity stays 1 and its units keep their own three decimals.

"Unit & Price"

Shown unless the pricing is Custom Price with Units From Amount off. Headed "Prices in currency" (and, for a Custom Price product that works units out, "… · the rate units are worked out at").

Sold By
A typed field with suggestions. Default Unit. Start typing to see the matching units from the list of thirteen, then tap one to pick it; a blank field suggests nothing. Matching is forgiving: "gal", "gallon" or "gallons" all find Gallon, and an abbreviation typed on its own is saved under the unit’s name (the field says "Saved as Kilogram; shown as “kg”."). Anything else is kept as typed, up to 32 characters, and the field says so: "Not on the list — “Pallet” is shown as typed." A listed unit prints its abbreviation on receipt lines and labels the quantity box ("Qty (gal)"); a custom unit prints the text itself ("Qty (Pallet)"). Required.
Price per unit
The price for one unit in the organisation currency. For a currency with no minor unit type whole numbers; for currencies with cents, type decimals. Negative or unreadable values show "Enter a valid price." Zero is allowed.

"Availability"

"Inactive products keep their history but cannot be sold." Active (default) or Inactive.

"Locations" (optional)

Headed "How this product sells at each location — optional, saved with the product". One row per active location with the values the product would sell at there, and Add Overrides, which opens the same override editor described under Locations below, previewing against the values typed above. Done closes it; Remove Overrides drops a location's staged overrides. Nothing is saved until the product is created, when each override is applied in turn; a staged override that could not stand (per unit with no price anywhere) stops the creation with a message naming the location. Without any locations the card says where to add them. It needs Locations.View; without it, add overrides on the product's page afterwards.

Press Create Product. On success you land on the product's page.

Editing a product

Open the product. Editors see the same form with Save Changes; viewers see a read-only card with the name, SKU, price (or "Custom Price") and description. Below either sits the Locations card, and the page ends with Related Records: the receipts with a line taken from this product (see How products connect).

Changing a price affects new receipts only. Receipts already issued keep the price they printed.

Switching a product to Custom Price drops its unit price, unless Units From Amount is on; switching it back asks for one again. Changing the pricing affects new receipts only, and the receipt product search picks the change up at once. Changing the price of a product that works units out from the amount changes the units recorded on new receipts only: every issued line keeps the rate it was worked out at.

Locations

The card under the form, headed "How this product sells at each location" (or "…sells and is stocked at each location" when Inventory is licensed). It needs Products.View; changing overrides needs Products.Edit. Without any locations it shows only the organisation-wide stock row (when Inventory is licensed) and says where to add locations: "This organisation has no locations yet. Add them under Settings → Business → Locations…". Overrides are per location, so nothing can be overridden until a location exists.

Everything on the form above is the product's global value. A location can override any of these, each on its own: the pricing (Per Unit, Custom Price or Both), the default for Both, Units From Amount, the quantity rule and its precision, the unit, the price per unit, and the availability. Whatever a location does not override falls back to the global value, field by field, and a change to the global value reaches every location that does not override it. Receipts issued at the location read the product through its overrides; the Products list, the dashboard and the Price List report always show the global values.

One row per active location (an inactive location stays listed while it still overrides something or holds stock):

The override editor

Nothing selected on a row means "use the product's value", and the caption under each row names that value ("Global: Per Unit"). Tap a chip to override; tap the selected chip again, or the red × circle that appears at the end of the row while one is selected, to go back to the global value. The typed boxes (Sold By, Price, Precision) work the same way with blank: the placeholder shows the global value ("Global: 1,100").

Pricing
Per Unit, Custom Price or Both.
Default
Shown only while the pricing that applies here is Both: Per Unit or Custom Price.
Units From Amount
Shown while the pricing that applies here allows a custom price: Off or On. A location can work units out where the product does not, or stop doing so where it does.
Quantity
Shown while the pricing that applies here allows selling per unit: Whole Quantity or Fractional Quantity. While the rule that applies here is Fractional, a Precision number box takes the decimal places allowed here, 1 to 3; blank means the global precision (the placeholder shows it). When the product itself takes whole quantities there is no global precision, so blank allows 3 decimals here and the hint says so. Anything else typed shows "Enter a precision from 1 to 3, or leave it blank to use the global precision." instead of saving. A location can allow fractions where the product does not, or require whole numbers where it allows them.
Sold By, Price per unit
Shown unless the pricing that applies here is Custom Price with Units From Amount off. Blank means the global unit or price (the placeholder shows it); where units are worked out, the price field says "Units are worked out at this rate." A typed unit follows the same rules as the form's Sold By field.
Availability
Active or Inactive. A product can be sold at one location only (inactive globally, Active there) or everywhere but one.

Save Overrides saves the whole set; saving with nothing selected and every box blank removes the override. Clear Overrides removes it in one step. Parts the chosen pricing cannot use are not kept (a default where the pricing is not Both, Units From Amount where it is Per Unit, a quantity rule where it is Custom Price, a precision where the rule is Whole, a price where nothing needs one).

Two combinations are refused: a location selling the product per unit with no price anywhere, that is, a product with no global price (Custom Price) overridden to Per Unit or Both without a price of its own; and a location working units out from the amount with no price above zero to divide by. The editor says so, and a change to the product's global pricing that would create either state at some location is refused naming the location.

Deactivating a product

Set Availability to Inactive and save. The product stays in the Products list and the Price List report (marked not active) but disappears from the receipt product search, except at a location whose override sets it Active. Reactivate the same way. To stop selling it at one location only, override its availability there instead.

Deleting a product

Delete asks "Delete this product?" and reminds you: "Receipt lines that used it keep their name and price. This cannot be undone." The product leaves every list and search, its SKU is retired for good, and any stock records for it remain in Inventory under its name.