CodeBold
Commerce
000
Trades / Sporting goods

Half your shop
has sizes.
Half of it doesn't.

A rack of jerseys is thirty variations. The bat beside it is one line with a weight on the label. Most systems make you choose which kind of shop you are and then fight you on the other half.

01 / The day as it is

Two shops
under one roof.

The football boots need a size run. The goalposts need a delivery date and a note about who is collecting them. The protein tubs go off. The rackets come in three grip sizes that are not sizes in any sense the software understands. By March you are holding last season's colourway in the sizes nobody wanted, and the only thing that told you was the markdown rail.

What stops happening

  • Entering a size run one variation at a time, then a single-line item, then a size run again
  • Kit that is ordered for a customer sitting in stock with nothing saying who it is for
  • Season stock and all-year stock counted as though they behave the same
  • Protein and supplements going out of date at the back of a shelf
  • A cashier hunting for the right grip size with a queue behind
02 / At setup

Fashion &
footwear.

Sporting goods is a fashion shop with a hardware shop inside it, so this is the profile that turns on the part you cannot do by hand. Everything it adds is for variations; nothing it adds gets in the way of a product that has none.

You choose · Fashion & footwear

Switches on

The size matrix on purchase orders

Sizes across the top, colours down the side. A jersey run is one grid instead of thirty lines — and a bat is still just a bat on the row below it.

Switches on

Variant badges at the till

Size and colour on the tile itself. The cashier taps the badge rather than reading a dropdown with a customer waiting.

Switches on

Expiry, where you need it

Supplements and drinks carry dates. Expiry tracking is not part of this profile by default, but it can be switched on for the lines that need it without turning your whole shop into a grocery.

Anything the choice leaves out is hidden, not removed. You are not locked out of a thing by picking wrong at setup — a clothes shop simply is not shown expiry dates it will never use, and a grocery is not shown a size matrix. Change your mind and it is all still there.

03 / What matters here

What actually
helps here.

01

The size curve, visible as you order

Because a run is entered as one grid, the shape of the order is in front of you while you type it. Ordering heavier through the middle sizes stops being a thing you have to remember.

02

Stock takes that survive a rail

Count a rail of forty variants against a figure already on screen, on a phone, without a clipboard. Partial counts are saved as you go, so a count interrupted by a customer is not a count lost.

03

One figure across shop and website

The last medium is one medium. It cannot be sold in the shop and on the site at the same time, because both are reading the same number.

The size matrix, stock takes and multi-outlet stock are in the free plugin. Transfers between outlets and stock valuation are in the paid one.

04 / What we do not do

What we
do not do.

Read this before you buy rather than after. Sporting goods carries two things this plugin has no answer for, and neither is on the roadmap.

Not this

No serial numbers

Bikes, firearms and anything else you must track by individual unit are not supported. Stock is counted by quantity, not by identity — there is nowhere to record that unit 4471 went to a named customer. If your trade requires a serial register, this is the wrong product and no setting changes that.

Not this

No custom orders or deposits

Kit ordered in for a customer, part-paid and collected later, has no first-class place here. You can record it as a normal order and take a payment against it, but there is no deposit ledger and nothing chases the balance.

Not this

No hire or rental

Skis out for a weekend, a machine on loan — anything that leaves and comes back is not modelled. Stock that goes out is sold.

We would rather lose the sale here than in week one.

05 / Questions

For this trade.

Can I mix sized and unsized products?
Yes, and you should. The size grid appears for products that have size and colour attributes and stays out of the way for products that do not. A jersey and a goalpost sit on the same purchase order.
Does it handle grip sizes and weights?
As product attributes, yes — anything you can express as a variation works, including grip size, weight and length. The purchase order grid uses two of them at a time, so pick the two that vary most.
Can I track expiry on supplements?
Yes. Batch and expiry tracking exists in the plugin; it is on by default for grocery shops and can be switched on here for the lines that need it.
What about club and team orders?
They work as ordinary orders with a customer attached. There is no bulk-quote or team-portal feature — if that is central to your business, be aware it is manual.

Order the run.
Sell the bat.

Both halves of a sports shop, in one till and one stockroom, without pretending either one is the other.