Documentation / Garment

👕 Garment / Clothing Guide

This guide covers everything specific to garment shops, clothing retailers, fashion boutiques, and apparel wholesalers using Ledgr. The garment niche is built around the central reality that every shirt comes in 5 sizes and 4 colors — that's 20 SKUs, all related.

Why Ledgr for garment retail?

Apparel inventory has unique demands that generic accounting software ignores. Ledgr's garment preset adds:

Niche enabled when: you pick "Garment / Clothing" during onboarding. The variants feature flag is auto-enabled. Estimates module is on by default (boutiques often quote before invoicing).

Initial setup

1. Pick the Garment niche

During onboarding, select Garment / Clothing. Ledgr enables:

2. Configure GST

Indian apparel GST is tiered:

Set up two tax groups — "GST 5% Apparel Below 1k" and "GST 12% Apparel Above 1k". Pick the right one per product based on its sale price.

3. Set up brand + season categories

Garment retailers stock multiple brands across multiple seasons. The brand + season + article fields are per-product — there's no separate brand master table. Common values used as tags:

Adding garment products

The garment product form

When the garment niche is on, the product form gains a Garment Info section:

FieldWhat it does
BrandManufacturer (Levi's, Allen Solly, etc.). Searchable on POS, drives Sales by Brand report.
Article No.Style/article code. Same article = same design across sizes/colors. Use for variant grouping.
Season"SS-2026", "AW-2025", "Year-Round". Drives Stock by Brand-Season report and end-of-season clearance.
ColorSet on each variant child. Used by the Size × Color matrix.
SizeSet on each variant child. Used by the Size × Color matrix.

The variant editor (parent → children flow)

This is the big one. Don't create 20 separate products for "Polo Shirt in 5 sizes × 4 colors". Create one parent product, define the size and color attributes, and let Ledgr generate the 20 children.

  1. Inventory → New Product. Fill name, brand, article number, season. Set rate (the parent rate is the default; children inherit unless overridden).
  2. Click + Add Variants button (visible because variants feature is on). This opens the variant attribute editor.
  3. Add attribute "Size" with values S, M, L, XL, XXL (comma-separated).
  4. Add attribute "Color" with values Red, Blue, Black, White.
  5. Click Generate. Ledgr creates 5 × 4 = 20 child products with auto-generated SKUs (PS-101-S-Red, PS-101-M-Red, etc.) and the same default rate.
  6. Edit any child to override its rate (e.g. XXL costs ₹50 more). Or set per-variant stock by clicking the child.
  7. Save → 20 child rows now appear in the Inventory list, all linked to the same parent.
Important: The variant attribute editor only works at create time. Once a parent has children, you can edit individual children but the variant generator is disabled. Plan your size/color list carefully before clicking Generate. To add a new size after the fact, manually create a child product.

Per-variant pricing

Different variants can have different prices. XXL might cost more, blue might be premium-priced. Edit each child product individually — the parent's rate is just the default suggestion when generating.

Per-variant stock

Each child has its own stock balance. When you receive 50 units of "Polo Shirt PS-101", you'd typically receive (10 each in S/M/L/XL/XXL × 2 each in Red/Blue/Black/White) = 50 units split across the 20 children, not 50 units on the parent.

Recording sales (POS)

Variant search

On POS, type "Polo PS-101" — you'll see all 20 child variants in the search results, each as a separate card with its size/color and current stock. Pick the right one, add to cart.

Brand filter

The brand filter row above the product grid (visible when products have brand values) lets the cashier click a brand chip to instantly filter — useful when a customer says "show me all Levi's".

The Size × Color Matrix view (killer feature)

Apparel software's most-asked feature. One screen showing your stock for an article in a grid: rows = colors, columns = sizes, cells = current qty.

How to access

Sidebar → Reports → Inventory → Size × Color Matrix (only visible when variants feature is on).

What it shows

One matrix per (Brand, Article) combination. For example, for "Allen Solly · PS-101":

ColorSMLXLXXLTotal
Red2583018
Blue0465217
Black1242110
White3694224
Total6172714569

Cells with 0 are dimmed. Cells with stock ≤ 2 are amber-tinted. Row + column totals at the edges. Standard apparel-software ergonomics — see in 2 seconds that "Red XXL is out" or "Black needs reorder across all sizes".

Search + CSV export

Top of the matrix view has a search box (filter by brand / article / name) and CSV export (long format — one row per cell with non-zero qty, useful for Excel pivot or re-import after stock-take).

Other reports for garment

Sales by Brand

Reports → Garment Reports → Sales by Brand. Period sales grouped by brand:

Stock by Brand / Season

Reports → Garment Reports → Stock by Brand / Season. Current stock value rolled up:

Stock Detail (every garment SKU)

Reports → Garment Reports → Stock Detail. Flat row per child SKU with brand / article / season / size / color / qty / value. Use this for end-of-month inventory listing or insurance valuation.

Common workflows

New arrival of a variant range

  1. Inventory → New Product → fill parent details (name, brand, article number, season).
  2. Click +Add Variants → enter sizes (S, M, L, XL, XXL) and colors (Red, Blue, Black, White).
  3. Click Generate → 20 children created.
  4. Edit each child to set the right opening stock from your goods-in note (e.g. 10 in S-Red, 12 in M-Red, etc.).
  5. Save. Stock journal posts (Dr. Inventory / Cr. Opening Equity if opening stock; or just records purchase if it's a Purchase Bill).

Receiving a partial reorder

  1. Open the existing parent — children already exist.
  2. Create a new Purchase Bill from your supplier.
  3. Add lines for the specific child SKUs being restocked (e.g. "Polo Shirt PS-101 / M / Red — 5 units").
  4. Save → stock_ledger updates only those children.

End-of-season clearance markdown

  1. Reports → Stock by Brand / Season → identify the worst-moving season-brand combos.
  2. Decide markdown — e.g. "AW-2025 Allen Solly: 30% off MRP".
  3. Open each child product (or use bulk-edit if available) and reduce the rate.
  4. POS reflects new prices immediately. Mark the products with a "Clearance" tag/category if you want.

Customer return / size exchange

  1. From the original invoice → "Create Credit Note" → pick the line (e.g. M / Red).
  2. If they want a different size — create a fresh Sales Invoice for the new size (e.g. L / Red), apply the credit note as part-payment.
  3. Stock returns: M / Red goes back into inventory, L / Red goes out.

Physical stock-take

  1. Reports → Stock Detail → CSV export → open in Excel.
  2. Add a "counted_qty" column. Walk the shop and fill in actuals.
  3. For each variance: Stock Adjustment in Ledgr (Inventory → Stock Adjustment) with reason "Stock-take adjustment".
  4. Variance posts journal: Dr. Stock Loss / Cr. Inventory (or vice versa for stock found).

FAQ — Garment specific

Can I have variants beyond just size and color? Like size + color + fit?

Yes — the variant editor takes any number of attributes. Add a third row: "Fit" with values "Slim, Regular, Loose". Generates size × color × fit children (e.g. 5 × 4 × 3 = 60 SKUs for one article). Use sparingly — 60 SKUs per article gets unwieldy.

What about kids' sizes — they're age-based, not S/M/L?

Use whatever values make sense — "0-3M", "3-6M", "6-12M", "1-2Y", "2-4Y". The variant editor doesn't enforce specific size labels.

Can I print barcodes for each variant?

Each child has its own SKU which can serve as the barcode value. Print via your label printer software using the SKU. Native barcode-print is on the roadmap for Ledgr v1.1.

Multi-store garment chain — how do I track stock per store?

Each Ledgr install is one company. For multi-store, use Multi-Warehouse: define each store as a warehouse, and stock-by-warehouse reports show per-store balances. Stock transfers between stores are first-class (Inventory → Stock Transfer).

What about uniform / corporate orders — do I create variants for these too?

Yes if there are multiple sizes. For one-off customizations (specific company logo, embroidered name), use a regular non-variant product or a service line item.

Can I track fabric meterage and dispatch by yards/rolls?

Yes. The stock units include mtr, yard, and roll. Set the primary unit to mtr and add a roll UOM with the appropriate conversion (e.g. 1 roll = 50 mtr). Sell loose by metre, receive in rolls — multi-UOM handles the conversion.

The matrix view shows lots of empty cells for newly stocked articles. Can I hide them?

Currently the matrix shows every (color, size) combination that has at least one stock movement. Empty cells stay visible to help you spot gaps. A filter toggle to hide zero-only cells is on the roadmap.

Migrating from a legacy garment system?

We'll help with parent/variant import from CSV (Tally, Marg, custom Excel formats supported). 1-hour onboarding call.

Chat on WhatsApp