Logistics Tab
The Logistics tab is where the Tech Pack stops being a design document and starts being a manufacturing document. It plays three roles at once:
- Sourcing document. It tells the purchasing team exactly which raw materials are needed to produce the garment — fabric, trims, labels, packaging, every component.
- Costing document. Every raw material and every service carries a cost. Those costs roll up into the Costing tab, which is what determines the ideal selling rate.
- Production roadmap. It tells the floor which sizes can be cut, which variants are available, and which services (cut, stitch, wash, finish) the garment passes through — and in what sequence.
The tab has four sections, top to bottom: Setup (sizes and variants), Raw Materials, Services, and Bill of Materials.
Repeat-design vs. one-off styles. Quantities on variants and ratios on sizes are optional here. You'll get another chance to set them on the Production Order — and if you fill them on the Tech Pack, the Production Order will pre-load with those values. This lets a single Tech Pack work for both factories that repeat the same design across many production orders, and factories where each style is exclusive to one customer or season.
Setup
Setup defines what gets made, and how many of each. Two tables side by side.
Sizes. A table of size codes and production ratios. The size code is whatever your scale uses — XS / S / M / L / XL, or EU 36 / 38 / 40, or 2T / 3T / 4T for kids. The Ratio is a relative integer; XS=1, S=2, M=3, L=2, XL=1 means M gets the largest share and the extremes get the smallest. Total Ratio sums the column. Ratios are used downstream when material consumption is split across sizes — a fabric quantity defined at the variant level gets distributed across sizes by their ratio.
Variants. A table of color/style variants of this style. Each row needs a Variant Name and (optionally) a planned Quantity. Link a Variant master record and Color and Image fetch automatically. The Thread section captures thread color, weight (Thin ~40, Medium ~30, Thick ~20), and whether the thread is textured. Total Quantity sums all variant quantities.
The variants you enter here are what the Create Sample dialog on the Design tab pulls from. If a variant isn't in this list, you can't sample it.
Image: The Setup section with three sizes and two color variants populated.
Raw Materials
Every material the garment touches goes here — fabric, trims, labels, hangtags, polybags, packaging. One row per material.
Per row: - Type — the Item Group (Trim, Fabric, Packaging, etc.). - Raw Material — a short reference name (e.g. "Main Fabric", "Polybag", "Care Label"). - Item — the ERPNext Item this row resolves to. Can be a concrete Item or a template Item with variants (see below). - Quantity and Cost — per-unit consumption and per-unit cost. Sub Total auto-fills as quantity × cost. - Operation — required. Which manufacturing operation this material belongs to (CUT, STITCH, WASH, etc.). When you set it, a matching row is auto-added to Services if one isn't there already.
A good Tech Pack lists every material the garment touches, not just the headline fabric. The minute you forget the woven label, the hangtag, or the polybag, your cost rollup undershoots and purchasing chases shortages later.
Total Materials sums the sub-totals across all rows.
How the BOM Explodes: By Size and By Variant
Two checkboxes on each Raw Materials row drive how the Bill of Materials below splits out:
- By Variant — tick when the material changes for each variant. Think buttons, thread, or the main fabric itself: a Red Shirt needs Red Poplin 120gsm and red 4-hole buttons; the Blue Shirt needs Blue Poplin and blue buttons. One Raw Materials row, one BOM row per variant.
- By Size — tick when the material changes per size. Think size labels, or a zipper length that grows with the garment.
- Both — tick both when the material changes across both axes. Classic example: zippers on a pant. A Blue Pant size 40 needs
YKK-4.5YG-15CM-560(where560is the YKK color code for Navy Blue); the same style in size 42 needs the longer zipper, and the Black Pant needs a different color code entirely. One Raw Materials row generates one BOM row per (size × variant) combination. - Neither — the same concrete Item is used across the whole run.
When you tick either box, the Item on the Raw Materials row is treated as a template — an ERPNext Item with variants enabled. The BOM below auto-generates a row per combination, and on each row you pick the exact variant Item that applies (the dropdown is filtered to that template's variants, so only valid candidates appear). GarmentFlow then remembers your choice for next time — a powerful tool: once you've told it "Blue Pant size 40 takes YKK-4.5YG-15CM-560," that preference is locked into this Tech Pack and used automatically when production quantities are entered later.
Services
Services lists the operations the garment goes through and how each one handles production batches. Most rows arrive here automatically — when you set the Operation on a Materials row, a matching Service is added if it doesn't exist. You can also add rows directly.
Per row: - Operation — the operation master (CUT, STITCH, WASH, etc.). - Cost — the per-garment cost of running this operation, in your local currency. - Batch Creation Mode — required; see below. - Comments — free-form notes for the production floor.
Total Services sums the Cost column, adjusted for the exchange rate.
Batch Creation Mode
Every Service is one of three modes, and the order of services in the table is enforced:
- Cut Table — the operation works from a Cutting Order and generates a fresh batch code for each cutting run. Cutting itself is Cut Table, as is any operation tied directly to the cut layout (fusing).
- Direct — the operation continues whatever batch came out of Cut Table. The batch code stays with the work as it flows through Direct operations like stitching, embroidery, or finishing.
- Group — the operation accepts and consolidates batches from multiple Cut Tables or Direct flows. Common for wash, laser, or any operation that pools work from several runs into one load.
The required shape is exactly one Cut Table row first, followed by any combination of Direct and Group rows in any order. The Cut Table row is where the batch is born; everything after it either continues a batch (Direct) or consolidates batches (Group). Saving with no Cut Table, with more than one Cut Table, or with a Direct/Group row before the Cut Table will fail validation.
A small gotcha: auto-added Service rows (the ones that appear when you set an Operation on a Material) default to Cut Table. Since only one Cut Table is allowed per Tech Pack, change the mode on each auto-added row to Direct or Group right after it appears — the first row will be your real Cut Table (the cutting operation itself), and everything else needs adjusting.
Image: The Services section with a CUT row (Cut Table), STITCH and EMBROIDERY rows (Direct), and a single WASH row (Group).
Bill of Materials
The BOM is the rolled-up output of Raw Materials × Sizes × Variants for this style, in the form the rest of the factory consumes. Purchasing reads it to know what to buy. Planning reads it to schedule operations. Costing reads it to compute the per-garment cost.
You don't type the BOM by hand. It rebuilds from the upstream tables on every save:
- A Material with neither By Size nor By Variant → one BOM row, quantity × Total Quantity.
- A Material with By Variant → one BOM row per variant.
- A Material with By Size → one BOM row per size, quantity weighted by ratio.
- A Material with both → one BOM row per (variant × size) combination.
Each BOM row has a deterministic reference like MainFabric-Red-M, and inherits the Operation from the source Material. Once you assign a specific variant Item to a row (e.g. the navy zipper for Blue 40), GarmentFlow remembers it — and uses it later to automatically calculate exactly how much of each raw material to buy, based on the quantities and sizes you set on the Production Order.
When you do touch a BOM row: if a Material is set to By Size or By Variant but the auto-resolution couldn't find a matching variant Item, the Item column on that row is left empty. Open the row and pick the correct Item — the dropdown is filtered to variants of the source Material's template Item, so only valid candidates appear.
The remaining BOM fields (Quantity per Box, Percentage Waste, UOM) are populated from the Item master where possible. Adjust per-row only when this style genuinely needs different values — a higher waste tolerance for a tricky fabric, a smaller box for fragile trims.
Image: The Bill of Materials section after a save, showing a few auto-generated rows including one variant-and-size split row with the Item populated and one row awaiting manual assignment.
What to do next
With Logistics done, the spec is essentially complete. Move to the Registry tab to generate barcodes for production labeling, or jump to Costs to see what the style is worth.