- One polo order, and where each step can live
- The same order as CMT and as full package
- Output of the merchandising workshop
- Five fit-gap rows, scored for the polo factory
- Bill of materials for one style: men's piqué polo, style P-2041
- Item groups and item settings for the polo
- The polo as five item codes, with user-defined fields
- Jeans: two size axes and the item count
- A unit of measure group for navy jersey, and four real rolls
- Three dye lots as three batches
- Five product trees, and why one average consumption fails
- The polo's route stages, minutes and line capacity
- The polo order's approval calendar, worked back from ex-factory
- 2,000 printed T-shirts through two outside processors
- A quotation cost build for the polo (illustrative figures, USD per piece)
- Landed costs on the imported fabric
- The final inspection sample for 3,000 polos
- Packing 3,000 polos into cartons, one dye lot per carton
- Down payment, letter of credit and exchange difference
- A chargeback on an open-account shipment
- Migration rows for the open polo order
- Test script: the polo order from sales order to cash
- Test script: shade split at cutting
- A cut-over plan, day by day
- One purchase request, from MerchandiserOS to SAP Business One and back
- The same polo order from the brand's side, with the buying agent's commission
- The polo order with operations on top
Part 1Before you start
1Who SAP Business One fits
SAP Business One is a sound choice for small and mid-size garment makers and distributors that want one ledger, one stock value and a mature purchasing and inventory core, and that have a partner to fill the apparel gaps. It is SAP's ERP for smaller companies, sold and implemented through partners, and it runs on Microsoft SQL Server or SAP HANA.
Its strengths for a factory are the ones an accountant values: batches and serial numbers on stock, units of measure groups, landed costs, production orders with bills of materials, approval procedures and down payments. Its weakness for apparel is equally clear. SAP Business One has no standard colour and size matrix, so every size of every colour is its own item code unless an add-on provides a matrix. That one fact shapes most of the design decisions in this chapter.
Signs SAP Business One is a good choice
SAP Business One tends to work when the factory values a stable financial and inventory core over deep apparel features inside the ERP.
- The group already uses SAP, or the owner wants an SAP ledger that auditors and banks recognise.
- A partner with manufacturing and apparel experience is available, including someone who has installed a variant add-on before.
- The number of active styles, colours and sizes is known, and the item count it produces has been worked out (section 12).
- The country has an SAP Business One localisation that covers local tax and e-invoicing (section 23).
Signs to slow down
Slow down when the expectations placed on SAP Business One belong to a planning, floor or development system.
- Merchandisers expect to key orders into a colour-by-size grid, and nobody has chosen or priced an add-on.
- The factory expects production orders to balance sewing lines and track bundles.
- Several processes go out to subcontractors in a chain, and the project assumes a standard subcontracting order will handle it (section 18).
- The go-live date falls inside peak season.
2Why no ERP fits apparel on its own
No general ERP fits apparel out of the box, because an ERP is built around a known item with one bill of materials, while a garment order starts as a style that is quoted, sampled and approved before any item exists. SAP Business One meets this wall sooner than some ERPs because it has no item matrix: the style itself has no home in standard SAP Business One, only its finished item codes do. SAP S/4HANA, NetSuite, Dynamics 365 and Odoo meet the same wall in their own ways, which is why fashion add-ons and fashion-specific systems exist. The same wall stands in front of brands, buying agents and own-label retailers that never cut a garment, because their orders also start as styles, samples and approvals at factories they do not control (section 35).
An ERP is built around the transaction: a known item, a fixed bill of materials, a price, a receipt, an invoice. It is right to be strict about that, because strictness keeps the books correct. A garment order does not start there.
Forcing an ERP to do all of this means heavy customisation in the one system that most needs to stay standard. Every upgrade gets harder, the ledger fills with data finance never reads, and the merchandisers keep their spreadsheets anyway. The durable answer is to give the ERP the books and give the operations to a system built for them. Section 3 summarises that model and section 37 shows it in full.
One polo order, and where each step can live
A buyer sends a tech pack for 3,000 men's piqué polos in navy, five sizes, ex-factory 15 December. Follow the order and ask, at each step, whether standard SAP Business One has a natural home for it.
| Step | What happens | Natural home in SAP Business One? |
|---|---|---|
| Tech pack arrives | Measurements by size, construction, artwork, trims list | No. There is no item yet, and no style object |
| Costing and quote | Fabric use from a marker, CM from operation minutes, quote at USD 4.26 FOB | No. A sales quotation prices items that already exist |
| Lab dips, strike-off, fit sample | Three lab dip rounds before navy is approved | No. These are approvals of the product |
| Order confirmed | Size breakdown 300 / 750 / 900 / 750 / 300 | Yes: a sales order, five lines, one per size item |
| Fabric and trims bought | 925 kg of jersey, rib, buttons, labels, polybags | Yes: purchase requests and purchase orders |
| Fabric received | Three dye lots, rolls of different width and weight | Mostly. Batches yes, with two batch attributes; roll width per batch needs a field |
| PP sample, cutting, sewing | Cut by dye lot, 18 minutes per polo, output by line by hour | Partly. The production order yes, the floor no |
| Embroidery at a subcontractor | Panels out, 1% loss, panels back | Partly. Built from transfers and purchase orders |
| Final AQL inspection | General level II, AQL 2.5, sample of 125 pieces | No quality module or sampling tables |
| Shipping and invoice | Cartons, packing list, commercial invoice | Yes: delivery with packages, A/R invoice |
Three of ten steps have a clear home and a fourth mostly does. The other six are where the order is actually won or lost.
3The recommended architecture, in short
Before discovery starts, agree which system owns which part of the business. Our recommendation is a split along the line in Example 1: SAP Business One keeps the books, and an operations system built for apparel runs everything from the style to the shipment.
| Area | Owned by | Why there |
|---|---|---|
| Style, tech pack, samples and approvals, quotation costing | Operations layer | This work happens before an SAP Business One item exists, and it changes daily |
| Buyer orders, procurement planning, production planning, shop floor, quality, logistics | Operations layer | It needs sizes, dye lots, minutes, inspections and dates in one place |
| Shop-floor capture | The operations layer's floor screens, or a floor system such as Garment.io connected to it | Operators need a simple screen, not an office form |
| Accounts, payables and receivables, invoicing, payments, stock value, tax and e-invoicing | SAP Business One | This is the legal and financial record, and SAP Business One does it well as standard |
With this split, the SAP Business One project stays close to standard: no variant add-on for merchandising, fewer user-defined objects, cleaner feature-package upgrades and a shorter project. The rest of this guide still explains how to bend SAP Business One toward garment production, because some factories choose to do that, and because a consultant needs to know what each choice costs. Where an area moves out of SAP Business One under the recommended model, the section ends with a short note. Section 37 describes the model in full, department by department.
4Business types, and what each needs from SAP Business One
"Apparel manufacturer" covers very different businesses, and the business type decides who owns the material, what is invoiced and which parts of SAP Business One carry weight. Settle it in the first discovery meeting, because a factory often runs two types at once, for example full package for one buyer and CMT for another.
| Type | What it does | What it needs from SAP Business One | Where it struggles |
|---|---|---|---|
| CMT (cut, make, trim) | Sews buyer-supplied fabric and often trims; sells labour | Buyer-owned stock held apart from the company's stock value, material reconciliation per order, service invoicing, labour cost from minutes | Buyer fabric received like a purchase inflates stock value; the design must be explicit |
| Full-package (FOB) factory | Buys all materials, makes, ships; sells the garment | Everything: item codes per SKU, product trees per size, purchasing, batches, landed costs, down payments, multi-currency, subcontract steps | The largest scope, the most items and the most add-on or custom work |
| Textile mill (knitting, weaving, dyeing) | Turns yarn into fabric | Batches with attributes, weight-based units, by-products, dye recipes, lab dips | Recipe and batch genealogy logic goes beyond a garment bill of materials; process add-ons exist in the partner market |
| Hosiery and knit-to-shape | Knits socks, tights or sweaters directly from yarn | Yarn product trees by weight, singles to pairs to packs, few broad sizes | The unit design (singles, pairs, packs) is the main trap |
| Brand or wholesaler | Designs and sells; buys finished goods from factories | Vendor purchase orders, landed costs, wholesale sales, returns, EDI with retailers | Development and supplier follow-up sit in PLM or an operations tool; a variant add-on is often needed for order entry |
| Buying agent or buying house | Places and follows orders across factories for buyers; earns commission | Commission invoicing, multi-currency, light accounting; no stock | The real work (T&A, samples, inspections, documents) is not transactional |
| Own-label retailer | Develops its own label and buys it from factories for its stores or web shop | Purchase orders to factories, landed costs, vendor payments and LCs, stock into its warehouse | Development, sampling and factory follow-up happen before and outside any ERP document; store and POS work is a retail system's job |
The last three types do not manufacture at all; Part 10 covers what they need from SAP Business One and what they should leave out. The list above is general implementation practice. Treat it as a starting point for the discovery questions in section 6, not as a scope.
The same order as CMT and as full package
Suppose the buyer offers the polo order two ways. As full package, the factory buys everything and sells at USD 4.26 FOB. As CMT, the buyer ships the fabric (the same three dye lots, 2,880 m in total) and the factory charges for making only, at an illustrative USD 1.60 a piece.
| Question | Full package | CMT |
|---|---|---|
| Who buys the fabric | The factory, on an SAP Business One purchase order | The buyer; no purchase order |
| How the fabric enters SAP Business One | A goods receipt PO that raises stock value, then an A/P invoice | A receipt designed with finance so the buyer's fabric does not enter the factory's stock value, for example tracked in a separate warehouse at no value or outside SAP Business One |
| Invoice to the buyer | 3,000 × 4.26 = USD 12,780.00 | 3,000 × 1.60 = USD 4,800.00 |
| Material reconciliation | Internal: fabric issued against the production orders | External: 2,880 m received, 2,856 m used, 24 m returned to the buyer or accounted for |
| Main risk | Under-buying fabric (Example 11) | Being charged for fabric the factory cannot account for |
The 2,856 m used and the 24 m left come from the cut plan in Example 10. In CMT, that plan is the evidence the factory shows the buyer, so it must be recorded per dye lot, not as one total.
Part 2Discovery
5Who should be on an SAP Business One apparel project team?
An apparel SAP Business One project needs one decision owner for every design question, and most of those owners sit in the factory, not in IT. The partner configures, installs add-ons and builds extensions; the factory decides how items, units, batches, costs and inspections work.
The table lists the roles we see on projects that go well. One person can hold several roles in a small factory. What matters is that every question in the fit-gap has a named person who can say yes.
| Role | Usually | Decides |
|---|---|---|
| Sponsor | Owner or managing director | Scope, budget, go-live window, which add-ons are bought, what stays outside SAP Business One, disputes between departments |
| Factory project lead | A senior manager with time freed for the project | Day-to-day priorities, test sign-off, readiness for cut-over |
| Merchandising head | Head of merchandising | Item code convention, size scales, season rules, order entry, T&A ownership |
| Development and sampling lead | Sampling room head or technical manager | Sample types, approval rounds, where tech packs and revisions live |
| Production manager | Factory or production manager | Production order level, route stages, resources, subcontract steps, floor capture |
| Industrial engineer | IE manager | Operation minutes (SMV), line capacity, efficiency assumptions |
| CAD and marker lead | CAD room head | Consumption per size, marker efficiency, cutting loss |
| Stores head | Fabric and trims store manager | Units of measure groups, batch and serial rules, warehouses and bins, receiving checks |
| Quality manager | QA manager | Inspection types and points, sampling plans, batch status on hold, who may override a failed inspection |
| Shipping and commercial lead | Shipping or commercial manager | Packing rules, package types, export documents, LC document requirements |
| Finance head | CFO or chief accountant | Chart of accounts, valuation method per item, landed costs, currencies, down payments, chargebacks, tax |
| Key users | One or two per department | Test scripts, training of colleagues, first-line support after go-live |
| Partner functional consultant | SAP Business One partner | How a decision is configured; which add-on covers it; what needs a user-defined object or code |
| Partner developer | SAP Business One partner or in-house | Extensions, stored-procedure validations, integrations, migration templates |
Rules that keep decisions moving
Most delays in apparel projects come from decisions nobody owns. Four rules prevent them.
- One owner per decision. "Merchandising and finance will agree" produces no decision. Write one name against each fit-gap line.
- Decide in writing. Keep a decision log with the date, the owner, the option chosen and the options rejected. Discovery findings, design choices, add-on choices and change requests all go in it.
- The sponsor settles scope, not configuration. The sponsor decides whether a variant add-on is bought. The merchandising head decides how codes and sizes work in it.
- Key users are released from part of their day. A key user who is also running peak-season orders will not test properly.
6What should discovery workshops for an apparel factory cover?
Discovery for an apparel factory is one workshop per department, each walking a real, recent order from start to finish and asking where the data comes from, who changes it and what goes wrong. Use the factory's own orders, not a demo company. The polo order in this guide is the kind of order to bring.
Each workshop produces three things: the current flow as it really runs (including the spreadsheets), a list of findings mapped to the fit-gap lines in section 7, and a list of decisions with an owner. The question lists below are a starting set; add the factory's own. For SAP Business One, add one question to every workshop: how many item codes does this department touch, and how would it find them without a style grid?
Merchandising
Merchandising questions establish how orders arrive, change and are tracked.
- How does an order arrive: buyer PO by email, portal, EDI? What fields does it carry, and how often is it amended after confirmation?
- How are sizes and colours broken down, and do buyers order in ratio packs?
- How many styles, colours and sizes are active in a season, and how many item codes does that make?
- What quantity tolerance do buyers allow, and how is a short or over shipment agreed?
- Is one buyer order split into several deliveries, each with its own date and destination?
- Where is the T&A calendar kept, who updates it, and who looks at it each morning?
Development and sampling
Development questions establish what happens before an order exists.
- Which sample types does each buyer require, and in what order?
- How are sample rounds recorded: sent date, courier, comments, verdict?
- Where do tech packs live, and how is a revision after PP approval handled?
- Who prepares the quotation cost, from what inputs, and how many versions does a quote go through?
Purchasing and stores
Stores questions establish units, batches and what is measured at receipt.
- In which unit is each material bought, stocked and issued? Which suppliers invoice in a different unit from the one they deliver in?
- What is checked at receipt: weight, width, GSM, shade, shrinkage, four-point inspection? Who records it and where?
- How are dye lots and rolls labelled, and can the store find every roll of one lot today?
- Which materials are nominated by the buyer or supplied by the buyer?
- What happens to leftover fabric and trims after an order ships?
Cutting, production and subcontracting
Production questions establish the level of control and how output is counted.
- At what level is production controlled: per order, per style-colour, per size, per delivery, per cut?
- How is the cut plan made per dye lot, and who checks that lots are not mixed?
- How is output counted today: per line per hour, per operator, at end of line?
- Which processes go outside (print, embroidery, wash, CMT) and how are pieces counted out and back?
- How are rejects, repairs and second-quality pieces recorded?
Industrial engineering and planning
IE questions establish where minutes and capacity come from.
- Are operation minutes (SMV) studied per style, taken from a library, or estimated?
- How is line capacity planned across the season, including subcontractors?
- What efficiency figure is used for planning, and how is actual efficiency measured?
Quality
Quality questions establish inspections, buyer standards and who may release a failed lot.
- Which inspections run: incoming fabric, cutting, inline, end of line, pre-final, final, measurement?
- Which buyers set their own AQL levels, and where are their quality manuals kept?
- Who may release a lot that failed inspection, and is that decision logged?
- Which lab tests and certificates are required per order?
Shipping
Shipping questions establish packing rules and documents per buyer.
- How are cartons packed: solid size, assorted, ratio? What carton labels does each buyer require?
- Which export documents are prepared per shipment, and who checks them against the letter of credit?
- Does any buyer require an advance shipping notice?
Finance
Finance questions establish currencies, payment terms, import costing and tax.
- Which currencies are used for sales, purchases and wages? How are exchange differences booked today?
- How are buyers paid: letter of credit, down payment, open account? Which buyers deduct chargebacks?
- How is imported material costed: are freight, duty, clearing and bank charges added to the material cost?
- Which valuation method does the auditor expect for fabric and for finished garments?
- Is the factory in a free zone or under a temporary-admission regime, and what reports does that require?
- Which e-invoicing and tax reporting rules apply?
Output of the merchandising workshop
The team walked the polo order from the buyer's PO to the booking of the shipment. The findings sheet looked like this.
| # | Finding | Fit-gap line | Decision needed | Owner |
|---|---|---|---|---|
| M1 | The buyer PO arrives as a PDF; sizes are keyed by hand into a spreadsheet, then again into the costing sheet | 41 | Where the order is entered once, and whether a grid is needed for it | Merchandising head |
| M2 | The buyer allows ±3% quantity; nobody records it, so shipping asks each time | 43 | Where the tolerance is held and who checks it before shipment | Merchandising head |
| M3 | Three lab dip rounds were tracked in one merchandiser's email | 10 | Where approval rounds are recorded | Development lead |
| M4 | The spec changed after the fit sample; production cut from the earlier sheet on a previous order | 8 | How the approved spec version is fixed for an order | Development lead |
| M5 | Fabric was ordered on the base-size consumption on a previous order and ran short | 12 | Where size-dependent consumption is calculated | CAD lead |
| M6 | The T&A lives in a shared spreadsheet with no dependencies | 36 | Where T&A lives: user-defined objects, an add-on, or an operations system | Sponsor |
Four of the six findings (M3, M4, M5, M6) sit on fit-gap lines where SAP Business One has no standard answer, and M1 depends on an add-on. That is the moment to decide the architecture question in section 3, before anyone designs a user-defined object.
7The apparel fit-gap checklist for SAP Business One: 52 lines
A fit-gap checklist lists every requirement an apparel business has and records, line by line, whether SAP Business One meets it as standard, meets it with configuration, needs an add-on or custom code, or is better handled outside the ERP. The 52 lines below cover product, bill of materials and costing, materials, production, quality, sales and shipping, and finance.
The answers are our assessment of SAP Business One 10.0 for a typical full-package garment factory with no variant add-on. Where an add-on changes the answer, the notes say so. Confirm each line against your feature package and your partner's add-ons before you sign a scope.
Key: Standard works as delivered · Configure settings, user-defined fields, formatted searches or light setup · Custom build an add-on, a user-defined object or code · Operations layer better run in an apparel operations system and passed to SAP Business One
| # | Requirement | SAP Business One answer | Notes |
|---|---|---|---|
| Product | |||
| 1 | Style master with a colour-size variant matrix | Custom build | No standard matrix; one item code per SKU, or a partner variant add-on (section 12) |
| 2 | Size scales per product category | Configure | A size user-defined field with valid values per scale, or the add-on's size grids |
| 3 | Season or collection, and style reuse across seasons | Configure | User-defined field or one of the 64 item properties; reuse rules need design |
| 4 | Carry-over styles with a new price or BOM | Configure | Price lists per season; plan how product-tree changes are versioned, because an edited tree changes what the next production order copies |
| 5 | Prepacks and ratio packs | Custom build | A sales or assembly BOM can sell a pack as one item; pack-level packing lists and assorted cartons need custom work |
| 6 | Pairs and multi-packs (hosiery, gloves) | Configure | A pair unit in a units of measure group; sales or assembly BOMs for multi-packs |
| 7 | Buyer's own style and colour codes | Configure | User-defined fields on the item or the order line |
| 8 | Tech-pack revision linked to the order | Operations layer | No tech-pack object |
| 9 | Points of measure with tolerance per size | Operations layer | No measurement-spec object |
| 10 | Sample types and rounds with buyer approval | Operations layer | No native object; user-defined objects if kept inside (section 17) |
| BoM and costing | |||
| 11 | BOM lines that apply by colour or size | Configure | Each size item has its own product tree, so differences are natural but copied many times; generate trees from a template |
| 12 | Size-graded fabric consumption | Configure | Each size item's tree holds its own fabric quantity (section 15) |
| 13 | Wastage and shrinkage held separately | Custom build | A tree line holds one quantity; separate factors need fields and logic |
| 14 | Trims that change by colourway | Configure | Each colour item's tree lists its own trims |
| 15 | Pre-costing with many elements and currencies | Operations layer | Happens before the item exists |
| 16 | Standard against actual cost per order | Configure | Closing a production order posts its variance; quote against actual per buyer order needs reporting or an operations system |
| 17 | Labour cost from operation minutes | Configure | Resources with a cost per time unit, listed on the product tree (section 16) |
| 18 | Landed cost on receipts | Standard | Landed costs document; allocation by quantity, weight, volume, equal share or value |
| 19 | Quote versions and approval | Operations layer | SAP Business One sales quotations price existing items; the cost build comes first |
| Materials | |||
| 20 | Purchase, stock and issue units with per-lot conversion | Custom build | A units of measure group has one conversion for every document (section 13) |
| 21 | GSM and width per lot or roll | Configure | Batch Attribute 1 and 2, plus user-defined fields where more are needed |
| 22 | Roll tracking | Configure | A batch per roll, or batch per dye lot with bins or serial numbers per roll |
| 23 | Dye lot and shade | Standard | Batch management; shade group in a batch attribute (section 14) |
| 24 | Four-point fabric inspection | Custom build | No inspection object; user-defined table or another system |
| 25 | Quality hold and quarantine | Standard | Batch status Released, Not Accessible or Locked; or a quarantine warehouse |
| 26 | Buyer-supplied (consigned) stock | Configure | Needs a deliberate design so it stays out of stock value; agree it with finance and the auditor |
| 27 | Reserved against free stock | Standard | Committed, ordered and available quantities per item and warehouse |
| 28 | Leftovers and stock-lot disposal | Configure | A leftover item group and warehouse, sold through normal sales documents |
| Production | |||
| 29 | Work orders per style-colour or delivery | Configure | A production order is per item, so per size; grouping five orders into one cut is a design choice |
| 30 | Cut orders, lay plans, marker efficiency | Custom build | Usually a CAD system plus an add-on or custom cut orders |
| 31 | Bundles and bundle tickets | Custom build | A shop-floor system or add-on |
| 32 | WIP by stage and line | Operations layer | Route stages show progress per production order, not per line or bundle |
| 33 | Graded output (first quality, seconds, rejects) | Operations layer | Produced is not the same as shippable |
| 34 | Subcontract out and back with loss | Configure | Built from a subcontractor warehouse, inventory transfers and a service purchase order; the balance per processor needs a report (section 18) |
| 35 | Capacity by line from minutes | Operations layer | Resources carry capacity; season-long line loading across subcontractors does not live there |
| 36 | T&A with a critical path | Operations layer | No native T&A object |
| Quality | |||
| 37 | Inline and end-of-line capture | Operations layer | No standard quality module |
| 38 | Final AQL to ISO 2859-1 at the buyer's level | Custom build | No sampling tables (section 20) |
| 39 | Logged override of a failed inspection | Custom build | Approval procedures cover documents, not inspections |
| 40 | Lab tests and certificates per order | Configure | Attachments on the order, batch or item |
| Sales and shipping | |||
| 41 | Grid order entry by colour and size | Custom build | A partner variant add-on; otherwise one line per size item |
| 42 | Several deliveries per order | Configure | Delivery dates per line, or one order per drop; decide before migration |
| 43 | Over and under-shipment tolerance | Custom build | A user-defined field and a validation in the transaction notification procedure |
| 44 | Carton packing and labels (SSCC) | Configure | Packages and package types on the delivery; buyer label formats and SSCC numbers are custom |
| 45 | EDI 850, 855, 856, 810 | Custom build | An EDI provider or add-on, often through the integration framework (B1if) |
| 46 | Buyer label and ASN rules | Custom build | Per buyer |
| Finance | |||
| 47 | Multi-currency and exchange differences | Standard | Foreign-currency documents and exchange-rate differences; check period-end revaluation with your localisation |
| 48 | Letter of credit terms and document checking | Custom build | No native LC object |
| 49 | Advances and down payments | Standard | A/R down payment requests and invoices; A/P down payments on the purchasing side |
| 50 | Reason-coded chargebacks | Configure | Accounts per reason, or a reason user-defined field on the payment or credit memo |
| 51 | Profitability per order | Configure | Projects or cost-accounting dimensions per order; design with finance |
| 52 | E-invoicing per country | Configure | Where the SAP Business One localisation for your country covers it; check (section 23) |
Counted from this table, 6 of the 52 lines are standard, 22 need configuration, 14 need an add-on or custom code and 10 are better run outside SAP Business One. That count is our assessment for a typical full-package factory without a variant add-on, not a survey. With a variant add-on, lines 1 and 41 usually move to configuration. A CMT factory drops most of the costing and material lines; a mill adds process lines this list does not cover.
Five fit-gap rows, scored for the polo factory
A fit-gap row is only useful with evidence, a decision and an owner. These five rows come from the workshops in Example 3 and the stores and quality workshops.
| # | Requirement | Evidence from the factory | Decision | Owner |
|---|---|---|---|---|
| 1 | Style master with a variant matrix | About 120 active styles a season, 3 to 6 colours, 5 sizes | No variant add-on for merchandising; styles live in the operations layer, SAP Business One holds only the SKUs that ship | Sponsor |
| 20 | Per-lot kg to metre conversion | Four rolls of "180 GSM" held 1.9 m less than the fixed factor said (Example 9) | Fabric stays in kg in SAP Business One; metres worked per roll in the operations layer | Stores head |
| 23 | Dye lot and shade | Shade complaint on a previous order | Batch management on every fabric; batch = dye lot; shade group in Batch Attribute 1 | Stores head |
| 38 | Final AQL | Buyer manual requires general level II, AQL 2.5 major | Inspection run outside SAP Business One; pass or fail gates the delivery | QA manager |
| 49 | Down payments | Buyer pays 30% in advance on this programme | Standard A/R down payment invoice | Finance head |
8Which SAP Business One version, database and hosting should a garment factory choose?
SAP Business One 10.0 comes in two database versions, Microsoft SQL Server and SAP HANA, and both now run the Service Layer API, so the choice rests on the partner, the add-ons you need and the infrastructure you can run. SAP ships improvements to release 10.0 as feature packages named by year and month, such as FP 2602 and FP 2608; this chapter was checked against those.
| Question | What the sources say | For apparel |
|---|---|---|
| Which database? | SAP Business One runs on Microsoft SQL Server (SQL Server 2019 and 2022 are listed for release 10.0 in SAP's platform support matrix) or on SAP HANA | Confirm that every add-on you plan (variant matrix, production, EDI) is released for the database and feature package you choose |
| Which API? | SAP's Service Layer guide states that, as of release 10.0 patch level 01, the Service Layer supports SAP Business One on Microsoft SQL Server as well as SAP HANA, and runs on SUSE Linux Enterprise and Microsoft Windows | New integrations can use the Service Layer on either database (section 34) |
| Browser client? | SAP develops a Web Client alongside the desktop client, adding apps in each feature package; partner sources describe it as running on both databases | Check which screens your users need are in the Web Client on your feature package before promising browser-only access |
| Hosting | On your own servers, or hosted by a partner | Hosting decides who applies feature packages and who owns backups |
| Newest integration features | Webhooks arrived in the Service Layer with FP 2602 | Older feature packages must poll for changes |
From practice: choose the database your partner runs most often and your add-ons support best. Changing database later is a project in itself.
How much does SAP Business One cost for a garment factory?
The cost of SAP Business One for a garment factory depends on the number and type of named user licences, the database, the hosting, the add-ons and above all the partner work the fit-gap calls for. SAP Business One is sold through partners, who quote licences; we do not repeat prices here because they vary by country and change.
| Cost driver | What decides it |
|---|---|
| User licences | Named users of different licence types; count office users, not floor operators who never log in |
| Database | SQL Server licences, or SAP HANA; check what your partner bundles |
| Hosting | Own servers and staff, or a partner's hosted service |
| Add-ons | Variant matrix, production, EDI, quality; each has its own licence and its own upgrade cycle |
| Partner implementation | Discovery, configuration, migration, testing, training and hypercare; scales with the number of custom-build lines in the fit-gap |
| Extensions | User-defined objects, stored-procedure rules and integrations, tested again at every feature package |
The fastest way to lower the total is to shrink the custom-build column. Every line moved to standard SAP Business One or to an operations system is an add-on or an extension nobody has to retest.
Questions to settle with the partner
Settle these with the partner before signing, because each changes the cost and the upgrade path.
- Which database and which feature package will go live, and when is the next feature package due?
- Which add-ons are planned, who supports them, and are they released for that feature package?
- Which extensions (user-defined objects, stored-procedure rules, integrations) are planned, and who owns their code?
- Is there a test company, refreshed from live data, for every feature package upgrade?
9SAP Business One vs Odoo for apparel
Odoo has native colour-size variants with grid entry on sales orders and a documented subcontracting flow, while SAP Business One has neither and relies on add-ons or design, but SAP Business One brings batch status, units of measure groups and an SAP ledger that many auditors and group companies prefer. Neither covers sampling, T&A, AQL or per-roll unit conversion out of the box. Odoo is an open-core ERP with a free Community edition and a licensed Enterprise edition.
| Aspect | SAP Business One 10.0 | Odoo (17, 18, 19) |
|---|---|---|
| Colour and size | No standard matrix; one item code per SKU, or a partner variant add-on | Product template with attributes; variants created Instantly, Dynamically or Never; grid entry on sales orders |
| Size-dependent fabric | Natural, because each size item has its own product tree; many trees to maintain | A line per size group with "Apply on Variants", or separate BoMs |
| Units, kg to metre | Units of measure groups with a fixed conversion per group | Units convert only inside a category in 17 and 18; categories removed in 19 |
| Dye lots | Batches with two batch attributes and a status (Released, Not Accessible, Locked) | Lots, with lot rules per operation type; shade needs a custom field |
| Subcontracting | No documented standard subcontracting order in the sources we checked; built from transfers and purchase orders | Basic, resupply and dropship subcontracting on a subcontracting BoM |
| Quality | No standard quality module; batch status for holds | Quality app in Enterprise; no ISO 2859-1 tables |
| Landed cost | Landed costs document with several allocation methods | Landed costs with five split methods, AVCO or FIFO only |
| Extension model | User-defined fields, tables and objects; SDK (DI API, UI API); add-ons from partners | Python modules; Studio in Enterprise |
| API | Service Layer (OData v3 at /b1s/v1, v4 at /b1s/v2); webhooks from FP 2602 | XML-RPC and JSON-RPC (deprecated in 19); JSON-2 API from 19 |
Which should a garment factory choose?
Choose on the fit-gap, the partner and local compliance, not on the product name. From practice, Odoo tends to suit a factory that wants variants and subcontracting inside the ERP and has developers for Python modules; SAP Business One tends to suit a factory that values an SAP ledger and a strong inventory core and will either buy a variant add-on or keep styles in an operations system. Under the recommended model in section 37, the matrix and subcontracting gaps matter much less, because neither ERP has to hold styles. Our Odoo chapter covers Odoo in the same depth.
10SAP Business One vs NetSuite for apparel
NetSuite has matrix items, a grid order SuiteApp and an Outsourced Manufacturing feature that is the closest native match to CMT, and it is sold only as a cloud service; SAP Business One has none of those three natively but can run on your own servers or a partner's and keeps a batch-based inventory core. Oracle NetSuite is a cloud ERP; its apparel edition is the SuiteSuccess "Apparel, Footwear and Accessories" configuration.
| Aspect | SAP Business One 10.0 | Oracle NetSuite |
|---|---|---|
| Colour and size | No standard matrix; item per SKU or add-on | Matrix items: a parent style with children per option combination, up to 2,000 combinations |
| Grid order entry | Add-on | Grid Order Management SuiteApp on sales orders, purchase orders, transfer orders and quotes |
| Subcontracting | Built from transfers and purchase orders | Outsourced Manufacturing: subcontract work orders turned into purchase orders |
| Dye lots | Batches with attributes and status | Lot-numbered items with per-lot quantity and cost |
| Costing method | Moving average, standard, FIFO or serial/batch valuation, set per item | Average, FIFO, LIFO, standard and lot or serial specific; cannot change once the item is saved |
| Deployment | Own servers or partner-hosted; SQL Server or SAP HANA | Cloud only |
| API | Service Layer (OData); a session cookie after login | SuiteTalk REST with OAuth 2.0; concurrency limits per account tier shared by every integration |
Which should an apparel company choose?
From practice, NetSuite suits brands and wholesalers selling across channels and subsidiaries that want matrix items and a cloud service run by the vendor. SAP Business One suits factories and distributors that want an SAP ledger, local or partner hosting and a strong inventory core at a smaller scale. For a manufacturer, neither covers cutting, bundles, sampling or AQL natively. Our NetSuite chapter covers NetSuite in the same depth, and the comparison table sets all the ERPs in this guide side by side.
NetSuite and Odoo facts are from their vendors' documentation as cited in our NetSuite and Odoo chapters and in sources.
Part 3Design, area by area
11How should item groups and materials be set up in SAP Business One for apparel?
Set up SAP Business One item groups by how each material is bought, stocked, valued and tracked: knit fabric, woven fabric, yarn, trims, packaging, subcontract services and finished garments each get their own group, because the group carries default accounts and settings for every item created in it. An item group in SAP Business One is a classification of items that supplies defaults, such as G/L accounts, to the items assigned to it. Item properties add a second classification: each item can be flagged with up to 64 properties for reporting and selection.
Apparel is not one product type. The garment category decides the size system, the main material, the unit it is bought in and the processes it goes through.
| Category | Main material | Size system | What changes the setup |
|---|---|---|---|
| Woven tops and bottoms | Woven fabric, m or yd | Alpha (S–XXL) or numeric | Fabric width drives the marker; collars and cuffs need interlining |
| Knit tops, polos, fleece | Knit fabric, bought in kg | Alpha | GSM and width per roll; rib and collar trims sized per garment size |
| Denim | Woven denim, weight in oz/yd² | Waist × inseam, two axes | Washing changes shade and size, so shrinkage and wash are part of the spec; washing is usually subcontracted |
| Knitwear and sweaters | Yarn, in kg | Alpha | No fabric stage; consumption is yarn weight per size and machine gauge |
| Hosiery and socks | Yarn, in kg | Few broad sizes, e.g. 39–42 | Knitted in singles, sold in pairs and multi-packs; pairing and boarding are stages of their own |
| Intimates | Knit and lace, many small components | Band × cup | Wires, hooks, elastics and moulded cups make long bills of materials |
| Outerwear | Woven shell, lining, padding by weight | Alpha | Many trims per garment; padding bought by weight |
| Home textiles | Woven or knit, by m | Flat dimensions in cm | No garment sizes; products sold as sets, such as a duvet cover with pillowcases |
Materials, and how each is bought and used
Each material has its own purchase unit, usage unit and receipt checks, and the SAP Business One setup must follow them.
| Material | Bought in | Used in | Track at receipt |
|---|---|---|---|
| Woven fabric | m or yd | m | Composition, width, weight, shade and dye lot, shrinkage |
| Knit fabric | kg | m | GSM, open or tubular width, composition, shade and dye lot, shrinkage |
| Yarn | kg, on cones | kg or g | Count and system (Ne, Nm, denier), ply, composition, shade |
| Sewing thread | Cones | Metres per garment | Ticket number, colour matched to each shade |
| Trims: zips, buttons, labels, hangtags | Pieces, dozens, gross (144) | Pieces | Size and colour per colourway; often from a supplier the buyer nominates |
| Packaging: polybags, tissue, cartons | Pieces | Pieces | Carton dimensions, buyer-specific printing |
| Buyer-supplied material (CMT) | Received, not bought | As above | Owned by the buyer: hold it apart from stock value and reconcile what was used |
In SAP Business One, the valuation method (moving average, standard, FIFO, or serial/batch valuation for batch-managed items) is set at item level, and item groups supply defaults. Batch management is switched on per item, so switch it on for fabric, yarn and any trim that must match a dye lot, and leave it off for buttons and labels.
Bill of materials for one style: men's piqué polo, style P-2041
| Component | Material | Bought in | Per piece (size L) | Varies by |
|---|---|---|---|---|
| Body | Cotton piqué 180 GSM, 1.80 m open width | kg | 0.95 m | Size, colour |
| Collar and cuffs | Flat-knit rib collar and cuffs | pieces | 1 set | Size, colour |
| Buttons | 4-hole polyester, 15 mm | gross (144) | 3 pcs | Colour |
| Sewing thread | Polyester core-spun, tkt 120 | cones | 165 m | Colour |
| Main label | Woven, buyer-nominated supplier | pieces | 1 pc | None |
| Size and care label | Printed satin | pieces | 1 pc | Size |
| Embroidery | Chest logo, subcontracted | service | 1 pc | Colour |
| Polybag | Recycled LDPE, with warning print | pieces | 1 pc | None |
Eight lines, three units of purchase, and four lines that change with size or colour. In SAP Business One the body fabric is a batch-managed item in a Fabric - Knit group, buttons and labels sit in Trims without batches, embroidery is a service item that is not kept in stock, and each polo size is a finished item in Finished garments.
Item groups and item settings for the polo
One setup that follows the rules above. Valuation methods are a finance decision; these are common choices, not requirements.
| Item group | Valuation | Managed by | Units of measure group | Procurement |
|---|---|---|---|---|
| Fabric - Knit | Moving average, or serial/batch valuation | Batches (batch = dye lot) | One group per fabric, inventory unit kg | Buy |
| Fabric - Woven | Moving average | Batches | Inventory unit m | Buy |
| Trims - Rib | Moving average | Batches, to match the body dye lot | Sets | Buy |
| Trims - Buttons | Moving average | None | Base unit piece; purchasing unit gross = 144 pieces | Buy |
| Trims - Labels and thread | Moving average | None | Pieces, cones | Buy |
| Packaging | Moving average | None | Pieces | Buy |
| Subcontract services | Purchasing items not kept in stock | Buy | ||
| Finished garments | Standard | None, or batches per production run | Pieces | Make |
| Buyer-supplied material | Held apart from stock value; design with finance | None | ||
Buttons: the order needs 3 per piece, 9,000 in all. With a 5% allowance the factory buys 9,450 pieces, which is 9,450 ÷ 144 = 65.6 gross, so the purchase order says 66 gross (9,504 pieces). Gross and piece sit in one units of measure group with a fixed ratio of 144, which is exactly what a units of measure group is built for.
With operations on top: the style, its bill of materials by category and its consumption are built in the operations layer. SAP Business One still needs the item groups, valuation methods and batch settings above, because it holds stock value and the payables.
12How do you manage sizes and colours in SAP Business One without a matrix?
Standard SAP Business One has no item matrix, so each colour and size combination is its own item code, tied together by a code convention and user-defined fields for style, colour, size and season; a partner variant add-on adds the matrix on top. Partner documentation and add-on vendors state the gap plainly: there is no product variants functionality in standard SAP Business One.
A style/colour/size matrix is a grid with colours on one axis and sizes on the other, used to create items and to key order quantities for each combination. Without it, three things change for the factory:
- Item creation. Every SKU is created as an item, usually by import, not by hand.
- Order entry. A sales or purchase order has one line per SKU. The polo order is five lines; a jean in three washes is up to 63.
- Reporting by style. Sales, stock and cost by style come from grouping on user-defined fields or the item code prefix.
Three ways to hold colour and size
There are three workable designs, and the choice is made once, before any item is loaded.
| Design | How it works | Trade-off |
|---|---|---|
| Item per SKU, no add-on | A code convention such as P2041-NVY-L, plus user-defined fields U_Style, U_Colour, U_Size, U_Season with valid values | No licence cost; order entry line by line; style reporting built on the fields |
| Partner variant add-on | The add-on keeps a style master and size grids, generates the SKU items and gives grid entry on documents | Grid entry and style views; one more product to license and to upgrade at every feature package |
| Style in an operations layer | Styles, colourways and size breakdowns live outside; SAP Business One holds only the SKUs that are sold, bought or stocked | No matrix needed in the ERP; requires an integration or file exchange |
Examples of variant add-ons in the SAP Business One partner market include FashionNx, iMatrix, Fashion for SAP Business One and Accelon's apparel and footwear solution. We name them only as examples that exist; we have not tested them and do not endorse any of them. Ask each vendor for its release status on your feature package and database, and for a reference customer making garments, not only selling them.
Naming and codes
Agree the code pattern before the first import and keep it short: style, colour code, size, for example P2041-NVY-L. Hold the buyer's own style number in a separate user-defined field. Keep one size field per size scale, so an "S" on a polo and an "S" on a bra band never share a value by accident. Integrations must never rely on the item code as their only link; section 34 explains why.
The polo as five item codes, with user-defined fields
Without an add-on, style P-2041 in navy becomes five items. The fields let a report group them back into one style.
| Item code | U_Style | U_Colour | U_Size | U_Season | Order qty | Line total (USD) |
|---|---|---|---|---|---|---|
P2041-NVY-S | P-2041 | NVY | S | AW26 | 300 | 1,278.00 |
P2041-NVY-M | P-2041 | NVY | M | AW26 | 750 | 3,195.00 |
P2041-NVY-L | P-2041 | NVY | L | AW26 | 900 | 3,834.00 |
P2041-NVY-XL | P-2041 | NVY | XL | AW26 | 750 | 3,195.00 |
P2041-NVY-XXL | P-2041 | NVY | XXL | AW26 | 300 | 1,278.00 |
| Sales order | 5 lines at USD 4.26 | 3,000 | 12,780.00 | |||
The season value is illustrative. User-defined fields on items are named with a U_ prefix in the Service Layer and the database.
Jeans: two size axes and the item count
A five-pocket jean in three washes, waist 28 to 40 in even sizes (7 values) and inseam 30, 32 and 34 (3 values).
| Design | Item codes per style | Across 40 styles | Effect |
|---|---|---|---|
| Every combination created as an item | 3 × 7 × 3 = 63 | 2,520 | 2,520 items, and 2,520 product trees if they are made in the factory |
| Items created only when a combination is first ordered | only those ordered | typically far fewer | Needs a rule and a tool (add-on or import) to create them on demand |
| Styles held outside, SKUs synchronised when needed | only those sold or stocked | typically far fewer | The ERP item list reflects what ships |
Every item that exists must be maintained: prices, product trees, accounts, and retirement when the style ends. Decide which combinations become items, and when, before the first import.
With operations on top: styles, colourways and size breakdowns live in the operations layer, and SAP Business One only needs the finished-goods items that are actually sold and invoiced. The factory can skip the variant add-on for merchandising entirely.
13How do you convert kilograms to metres for fabric in SAP Business One?
SAP Business One converts units through units of measure groups, and a group holds one fixed conversion that every document uses, so kg to metre for knit fabric works only as a nominal factor per fabric, not per roll. A units of measure group lists a base unit and alternative units, each with a conversion quantity to the base; in SAP's training material it is set up under Administration › Setup › Inventory › Unit of Measurement Groups.
Each item has one inventory unit, used for every stock posting, and can have several purchasing and sales units from its group. SAP's learning material adds two constraints that matter here: the inventory unit cannot be changed once transactions exist, and conversion rates inside a group cannot be changed while open documents exist for the item.
GSM means grams per square metre: the weight of one square metre of the fabric. A 180 GSM jersey weighs 180 g per square metre.
180 GSM jersey, 1.80 m open width → 1000 ÷ (180 × 1.80) = 3.086 m per kg
220 GSM fleece, 1.60 m open width → 1000 ÷ (220 × 1.60) = 2.84 m per kg
Three workable designs
There are three workable ways to hold knit fabric in SAP Business One, each with a trade-off.
| Design | How it works | Trade-off |
|---|---|---|
| Buy, stock and issue in kg | Inventory unit kg; product trees in kg per size; metres worked out at the cutting table | Accurate stock value; the cutting room thinks in metres, so the tree quantities must be converted per size |
| Buy in kg, stock in m, one group per fabric | A group per fabric quality with its nominal m per kg | Easy to read in metres; wrong whenever a roll differs from the nominal GSM and width, and the factor is frozen while documents are open |
| Buy and stock in kg, record measured metres per batch | Measured GSM, width and metres held on the batch (attributes or user-defined fields); a report converts per batch | Accurate per roll; needs discipline at receipt and a report or extension |
Never share one group between fabrics of different weight or width. A group for "Jersey 180" is wrong for "Jersey 160" by about 12%.
A unit of measure group for navy jersey, and four real rolls
The fabric is set up with its own group: base unit kg, alternative unit m, 1 kg = 3.086 m, the nominal factor for 180 GSM at 1.80 m. The rolls that arrive are close, not equal.
| Roll | kg | Measured GSM | Width (m) | m per kg | Metres |
|---|---|---|---|---|---|
| R-101 | 25.0 | 176 | 1.82 | 3.122 | 78.0 |
| R-102 | 24.6 | 184 | 1.78 | 3.053 | 75.1 |
| R-103 | 25.3 | 181 | 1.80 | 3.069 | 77.7 |
| R-104 | 24.8 | 188 | 1.76 | 3.022 | 75.0 |
| Total | 99.7 | 305.8 |
Measured: 305.8 m, which is 305.8 ÷ 99.7 = 3.067 m per kg
On 925 kg: 925 × (3.086 − 3.067) ≈ 17 m, about 18 size-L polos at 0.95 m
The group says the stores hold 1.9 m more than they do on four rolls, and about 17 m more on the whole order. Keep the fabric in kg in SAP Business One, and record the measured metres per batch where the cutting room will use them.
With operations on top: the operations layer records a measured lot record per receipt (GSM, width, shrinkage) and works consumption in the unit the cutting room uses. SAP Business One stays in the purchase unit, kilograms, for stock value and payables, with one simple group per fabric.
14How do you track dye lots and fabric rolls in SAP Business One?
Manage fabric by batches and make each batch one dye lot; SAP Business One then asks for the batch on every receipt and issue, stores two free batch attributes, and lets a batch be held with a status of Not Accessible or Locked until it passes inspection. A dye lot is a batch of fabric dyed together; fabric from two dye lots can differ slightly in shade, so pieces cut from two lots show a colour difference once sewn into one garment.
The batch details carry the fields a fabric store needs: Batch Attribute 1 and Batch Attribute 2, expiration date, manufacturing date, admission date and location, plus the manufacturer's batch number. Rename the attributes in your forms to what they mean to you, for example "Shade group" and "Measured GSM / width".
Batch status as a quality hold
A batch has one of three statuses: Released, Not Accessible or Locked. According to SAP's knowledge base, a Not Accessible batch cannot be released in sales documents or A/P credit memos but can move by inventory transfer, and a Locked batch can be released only in inventory documents such as transfers and goods issues. The default status for new batches is set under Administration › System Initialization › General Settings › Inventory › Items. For fabric, receive new batches as Not Accessible and release each one after its incoming inspection.
Rolls
Tracking each roll is a design choice. A batch per roll gives roll-level issue and return but multiplies batches; a batch per dye lot with bin locations or serial numbers per roll keeps the dye lot as the unit. Measured width and GSM per roll need either one batch per roll or user-defined fields.
A shade band is a set of approved shade references for one fabric colour, used to judge whether a new lot is close enough to the standard. SAP Business One has no shade band object; the shade group sits in a batch attribute and the band itself lives in another system or a user-defined table.
Standard SAP Business One lets a user pick any available batch for an issue. To refuse two batches on one cut, add a validation in the SBO_SP_TransactionNotification stored procedure, which SAP Business One calls before a transaction is committed and which can roll it back with a message, or keep the cut plan in an operations system.
Three dye lots as three batches
The order needs 2,856 m. The mill ships 933 kg, 8 kg over the 925 kg ordered and within its delivery tolerance, as 2,880 m in three dye lots. Each dye lot becomes one batch, received in kg as Not Accessible.
| Batch | kg | Metres | Batch Attribute 1 (shade) | Status after inspection |
|---|---|---|---|---|
| NVY180-A | 392.0 | 1,210 | Band 2 | Released |
| NVY180-B | 333.7 | 1,030 | Band 2 | Released |
| NVY180-C | 207.3 | 640 | Band 3 | Released |
| Total | 933.0 | 2,880 |
A = 1,210 ÷ 3.087 = 392.0 kg · B = 1,030 ÷ 3.087 = 333.7 kg · C = 640 ÷ 3.087 = 207.3 kg
The rule: every garment's panels come from one batch, and bundles from different batches never meet on a line. The cut plan follows it.
| Batch | Cut from it | Metres used | Left |
|---|---|---|---|
| A (1,210 m) | XXL 300 · XL 750 · M 23 · S 87 | 1,186.6 | 23.4 |
| B (1,030 m) | L 900 · S 213 | 1,029.7 | 0.3 |
| C (640 m) | M 727 | 639.8 | 0.2 |
| Total | 3,000 pieces | 2,856 | 24 |
Sizes M and S span two batches, which is fine as long as the bundles stay apart and each carton is packed from one batch. SAP Business One needs the batch on every issue for production. The cut plan itself is operations work.
With operations on top: shade bands per fabric, the measured lot record and the incoming inspection that carries the dye lot sit in the operations layer. SAP Business One still holds the batch on receipts and issues, so stock value and traceability stay correct.
15How do bills of materials work for garments in SAP Business One?
SAP Business One stores bills of materials as product trees, one per parent item, so when every size is its own item, every size has its own tree and size-dependent fabric consumption is simply a different quantity on each tree. The cost is maintenance: a style in 4 colours and 5 sizes has 20 trees to keep in step. Generate them from a consumption table, never by hand.
SAP Business One offers four bill of materials types. SAP's help and learning material describe them as follows:
| Type | What it does | Garment use |
|---|---|---|
| Production | Required for MRP runs and standard production orders | Every garment made in the factory; sub-assemblies such as embroidered fronts |
| Sales | The parent is a sales item; components appear as sub-items on sales documents | A set sold as one item where the buyer sees the parts |
| Assembly | A set at one price; only the parent appears on the order | A multi-pack or ratio pack sold as one item |
| Template | No restrictions; its lines are copied into sales and purchasing documents and can be edited there | A standard trims kit copied onto a purchase order |
A production product tree lists components with quantities, and can also list resources (labour and machine time) and route stages (section 16). A sub-assembly such as an embroidered front panel is a production item with its own tree, and appears as a component in the garment's tree.
Marker efficiency is the share of the fabric in a cutting marker that ends up in garment pieces; the rest is waste between the pieces. Shrinkage is the fabric the garment loses in washing or finishing, planned into the pattern. Keep the two apart. A product tree line holds one quantity, so the factors belong in the consumption table that generates the trees, with the tree holding the result.
From practice: an edited production tree changes what the next production order copies, and open production orders keep the components they were created with. Decide who may edit trees of styles with open orders, and log each change.
Five product trees, and why one average consumption fails
Body fabric per polo, from the marker: S 0.82 m, M 0.88 m, L 0.95 m, XL 1.02 m, XXL 1.10 m. With fabric held in kg at the nominal 3.086 m per kg, each size item's tree carries its own quantity.
| Size item | Pieces | m per piece | kg per piece on the tree | Metres |
|---|---|---|---|---|
P2041-NVY-S | 300 | 0.82 | 0.266 | 246 |
P2041-NVY-M | 750 | 0.88 | 0.285 | 660 |
P2041-NVY-L | 900 | 0.95 | 0.308 | 855 |
P2041-NVY-XL | 750 | 1.02 | 0.331 | 765 |
P2041-NVY-XXL | 300 | 1.10 | 0.356 | 330 |
| By size | 3,000 | 2,856 | ||
| Base size M for all | 3,000 | 0.88 | 0.285 | 2,640 |
By size: 2,856 m ÷ 3.086 = 925.5 kg, which is why 925 kg was ordered
Shortfall of the base-size shortcut: 2,856 − 2,640 = 216 m = 7.6% of the need, about 227 size-L polos
Copying the size M tree to all five items under-buys by 216 m, found on the cutting table three weeks before shipment, with a mill lead time longer than that. Item-per-SKU makes the right answer easy to hold; it does not stop someone copying one tree to every size.
With operations on top: the consumption engine (marker efficiency, shrinkage, woven construction) and the net-to-buy across the order book run in the operations layer, which passes the purchase quantity to SAP Business One. The ERP does not need a product tree per size at all.
16How do you model cutting, sewing and finishing with production orders, resources and route stages?
Model the garment's work as a production order with route stages for cutting, sewing and finishing, and put the minutes on resources that carry a cost per time unit; this gives a labour cost and a stage-by-stage view of each order, but it does not balance a sewing line. A resource in SAP Business One is a machine, a labour pool or another capacity that a production order consumes by time; a route stage is a named step in the product tree and production order that groups components and resources.
SAP Business One supports three production order types. Standard copies its components from the item's production tree; Special is for work not based on a tree, such as a repair or rework; Disassembly reports taking an item apart. An order opens as Planned, is Released for work, and is Closed when finished, which posts its variance; Planned and Released orders can be cancelled. Components are issued with Issue for Production and finished goods are recorded with Receipt from Production. SAP's how-to guide on resources and production (release 9.3) describes route stages, resource lines and production, setup and run times.
What an operation's minutes mean in a garment factory
SMV (standard minute value) is the time a trained operator needs for one operation at a normal pace, including allowances. A polo has 15 to 25 sewing operations. You can put each on the tree as a resource line, or group them per route stage. Grouping keeps production orders readable; listing every operation gives a detailed cost but floods the order.
| Question | What SAP Business One gives | What stays outside |
|---|---|---|
| How much labour is in one polo? | Resource time and cost on the tree and the production order | The minute study itself |
| How many polos can line 3 sew this week? | Resource capacity | Line balancing across 25 operators, absenteeism, learning curves |
| Where is bundle 214? | The stage the production order has reached | Bundle tracking and operator output |
| Which line takes which order in week 47? | Production orders with dates | Seasonal line loading across lines and subcontractors |
One more design point is specific to item-per-SKU. A production order is for one item, so the polo order becomes five production orders, one per size. Cutting runs across sizes by dye lot (Example 10). Decide how the five orders are linked to one cut: a user-defined field for the cut number, or a cut plan held elsewhere.
The polo's route stages, minutes and line capacity
The 18 minutes in Example 1 are the sum of these operations, grouped into three route stages, each with one labour resource.
| Route stage | Operation | Minutes |
|---|---|---|
| Cutting | Spread, cut, number and bundle | 1.20 |
| Sewing | Shoulder join | 0.90 |
| Sewing | Placket | 3.10 |
| Sewing | Collar attach | 2.20 |
| Sewing | Sleeve attach | 1.80 |
| Sewing | Side seam and sleeve close | 1.60 |
| Sewing | Cuff attach | 1.40 |
| Sewing | Bottom hem | 1.00 |
| Sewing | Buttonholes and buttons | 1.50 |
| Finishing | Thread trim and inspection | 1.20 |
| Finishing | Press | 1.00 |
| Finishing | Fold, tag and bag | 1.10 |
| Total | Cutting 1.20 · sewing 13.50 · finishing 3.30 | 18.00 |
7,200 ÷ 13.50 sewing minutes = 533 polos a day
3,000 ÷ 533.3 = 5.6 line-days of sewing
Labour cost at USD 4.20 an hour (0.07 a minute): 18 × 0.07 = USD 1.26 a polo
Set the three labour resources at USD 4.20 an hour and put 1.20, 13.50 and 3.30 minutes on the trees. The expected labour on the order is 3,000 × 18 min = 54,000 min = 900 hours × 4.20 = USD 3,780, which is 1.26 a piece: the CM line in Example 15. The 5.6 line-days and the choice of line come from planning, not from the production order.
With operations on top: the planning heat-map (lines and subcontractors, 52 weeks), production orders with job cards per department and the WIP board run in the operations layer. SAP Business One receives material issues and receipts for stock value and does not need resources or route stages.
17Where do sampling, approvals and the T&A calendar live in an SAP Business One project?
SAP Business One has no object for garment samples, buyer approvals or a T&A calendar, so a project must build them as user-defined objects, buy an add-on, or keep them in an operations system. Its approval procedures approve documents such as purchase orders, not lab dips. Before a single bulk garment is cut, the buyer approves the product in stages, each stage can take several rounds, and each approval unlocks the next step of the order.
A PP (pre-production) sample is a garment made in the actual bulk fabric and trims, which the buyer approves as the reference that bulk production must match. A T&A (time and action) calendar is the list of an order's milestones, each with a planned date worked back from the ex-factory date, an actual date and an owner.
| Sample or approval | What it decides | What waits for it |
|---|---|---|
| Proto / development sample | The look and the construction | Costing and the quote |
| Lab dip | The shade, within tolerance under the buyer's light source | Bulk fabric dyeing |
| Strike-off | Print or embroidery artwork, colours and placement | Bulk printing or embroidery |
| Trims approval | Buttons, zips, labels and hangtags | The bulk trims order |
| Fit sample | Measurements and fit on the buyer's model | Pattern correction |
| Size set | Grading across every size | The production marker |
| PP (pre-production) sample | The reference bulk must match | Cutting |
| TOP (top of production) | That the first bulk pieces match the PP sample | The rest of the run |
| Shipment sample | The reference for any claim after delivery | Shipping |
Every round has a sent date, a courier and tracking number, the pieces sent, the buyer's comments and a verdict: approved, approved with comments, or rejected. The T&A calendar hangs on these dates.
What a user-defined sampling object must hold
SAP Business One lets a partner build new records as user-defined tables and user-defined objects, with their own forms and Service Layer endpoints. If the project builds sampling inside SAP Business One, the object needs at least these parts.
- A sample request per style and colourway, with its type (lab dip, strike-off, fit, size set, PP, TOP, shipment).
- Rounds under each request: sent date, courier, tracking number, pieces sent, buyer comments, verdict, verdict date, who recorded it.
- A link from the approved round to the spec version it approved, so a later revision cannot silently replace it.
- A block on the next step: bulk dyeing waits for the lab dip, cutting waits for the PP sample, enforced with a validation in the transaction notification procedure.
- T&A milestones that take their actual dates from the rounds instead of from someone typing them.
Because SAP Business One has no style object without an add-on, the sample request must hang on the user-defined style field, or on the add-on's style record. That is one more reason this area usually lives outside the ERP.
The polo order's approval calendar, worked back from ex-factory
| Date | Milestone | If it slips |
|---|---|---|
| 1 Oct | Order confirmed | |
| 8 Oct | Lab dip round 1 sent; round 2 on 13 Oct | Bulk dyeing cannot start |
| 17 Oct | Lab dip round 3 approved | Each extra round costs about 5 days |
| 20 Oct | Bulk fabric dyeing starts | |
| 24 Oct | Embroidery strike-off approved | Embroidery cannot be booked |
| 7 Nov | PP sample sent in bulk fabric | |
| 10 Nov | Bulk fabric in-house | Cutting waits |
| 14 Nov | PP sample approved, with comments | Cutting cannot start |
| 17 Nov | Cutting starts | |
| 20 Nov to 10 Dec | Sewing; TOP sample from the first bulk pieces | |
| 12 Dec | Final AQL inspection | Shipment held |
| 15 Dec | Ex-factory |
Three lab dip rounds instead of two pushed dyeing back five days, and the order absorbed it only because cutting had slack before the PP approval. That is the kind of question a merchandiser answers every morning, and it needs approvals, dates and dependencies in one place.
With operations on top: dev approvals (lab dip, strike-off, sample, shipping mark) with rounds, courier details and the buyer's verdict, the T&A calendar with its critical path, and the PP approval that locks the style version for the order all live in the operations layer. SAP Business One needs none of it.
18How does subcontracting work in SAP Business One for CMT, washing, printing and embroidery?
We found no documented standard subcontracting order in SAP Business One 10.0 in the SAP sources we checked, so apparel projects build it from standard pieces: a warehouse per subcontractor, inventory transfers to send components out, a production order for the processed item, and a purchase order for the processing charge. Some partner add-ons provide a subcontracting flow on top. Check the What's New notes of your feature package before designing, because SAP adds production features in each one.
CMT (cut, make, trim) means the factory sews garments from fabric the buyer supplies and charges only for the labour; in subcontracting, the same term describes a factory that sends cut panels to another unit to be sewn. Job work is the South Asian term for the same arrangement.
A workable pattern from practice
The pattern below is common in SAP Business One projects. It is implementation practice, not an SAP-documented feature, and each partner varies it.
- Create a warehouse for each subcontractor, so stock at the embroiderer is visible and still valued as the factory's.
- Create the processed item (for example "front panel, embroidered") as a production item with a tree: the cut panel plus thread, if the factory supplies it.
- Send the cut panels with an inventory transfer to the subcontractor's warehouse, including the agreed allowance.
- Open a production order for the processed item, issuing components from the subcontractor's warehouse.
- When goods come back, record a receipt from production into the main warehouse for the good pieces, and account for rejects.
- Buy the processing charge on a purchase order for a service item, so the subcontractor's invoice matches it.
Garments often visit several processors: cut panels to a printer, then to a sewing unit, then to a wash. Each step becomes its own processed item, warehouse and production order. Modelled as one step, the factory loses sight of where its goods are between processors.
2,000 printed T-shirts through two outside processors
| Step | Where | Out | Back | Note |
|---|---|---|---|---|
| Cut front panels | Factory | 2,020 | 1% print allowance on top of 2,000 | |
| Screen print | Printer A (warehouse SUB-PRA) | 2,020 | 2,008 | 12 rejected for misregistration |
| Sew | Factory | 2,008 | 2,003 | 5 panels damaged in sewing |
| Garment wash | Washer B (warehouse SUB-WSB) | 2,003 | 2,001 | 2 lost in wash |
| Ready to pack | 2,001 | 1 spare over the order |
In SAP Business One this is two processed items (printed panel, washed T-shirt), two subcontractor warehouses and two service purchase orders. The 12 misprints and the 2 wash losses are recorded as goods issues with a reason, so the argument with the printer is about numbers, not memory.
Subcontractor tracking a factory expects
A factory expects to see, per processor, what went out, what came back, what was lost and whether the loss is inside the agreed allowance. SAP Business One shows stock in the subcontractor's warehouse; the allowance, reject reasons and the balance per order need user-defined fields and a report.
With operations on top: subcontract steps sit on the production order in the operations layer, and subcontractors appear on the planning heat-map beside the factory's own lines. SAP Business One receives the subcontractor's purchase order and the payable.
19How do you cost a garment in SAP Business One, and where does the garment costing sheet live?
SAP Business One values stock by a valuation method set per item (moving average, standard, FIFO, or serial/batch valuation) and adds freight, duty and other charges to receipts with a landed costs document, but the garment costing sheet used to quote a buyer is built before any item exists and usually lives outside the ERP. A garment costing sheet lists fabric, trims, making, washing, testing, freight, finance cost and margin per piece, and adds up to the price quoted to the buyer.
- Valuation method is set per item. Under serial/batch valuation, SAP describes outgoing costs as the actual incoming cost of that batch, which suits fabric bought at different prices per dye lot.
- Production variance is posted when a production order is closed, comparing what the order consumed with what it received.
- Landed costs spread freight, duty, clearing and other charges over the receipt lines.
- Multi-currency and exchange-rate differences are native, which suits selling in USD or EUR while paying costs locally.
A quotation cost build for the polo (illustrative figures, USD per piece)
| Line | How it is worked out | USD |
|---|---|---|
| Body fabric | 0.31 kg at 4.20 per kg, plus 6% cutting loss | 1.38 |
| Collar and cuffs | 1 set | 0.25 |
| Trims | Buttons, thread, labels, polybag | 0.32 |
| Embroidery | Subcontractor price per logo | 0.18 |
| CM (cut and make) | 18 minutes at 0.07 per minute | 1.26 |
| Testing | Buyer's lab tests spread over the order | 0.10 |
| Factory overhead | 12% of CM | 0.15 |
| Freight to port and export documents | 0.12 | |
| Finance cost | 3% while waiting for payment | 0.11 |
| Margin | 10% | 0.39 |
| FOB price | 4.26 |
Every line except the last is an estimate made before the order exists. After production, the same lines come back as actuals: the real fabric used, the real minutes from the floor, the real embroidery rejects. The factory learns whether the order made money only if the quote and the actuals sit side by side, and in SAP Business One the quote has nowhere to live until the items exist.
How do you configure landed costs in SAP Business One for imported fabric and customs duties?
Define the landed cost types once (freight, clearing, bank charges, customs), each with its allocation method, then create a landed costs document from the goods receipt PO when the charges are known. A landed cost is any cost of bringing goods to the factory beyond the supplier's price: freight, insurance, customs duty, clearing and bank charges.
SAP's learning material and help describe allocation by quantity, weight, volume, equal share and cash value before customs, with customs groups holding a projected duty percentage per group of items and a broker recorded as the vendor who invoices the charges. Check the full list of allocation methods on your feature package. Choose the method per charge: sea freight follows weight or volume; clearing and bank charges usually follow value; a duty charged per kilogram follows weight. How the added cost reaches stock value depends on the item's valuation method and on whether the goods are still in stock, so test it with finance on each method you use. For a factory in a free zone or under temporary admission, duty may be zero or suspended, and the reporting rules are local; agree them with the customs broker and finance before configuring.
Landed costs on the imported fabric
The polo's navy jersey and its rib collars and cuffs arrive in one shipment, received on one goods receipt PO. Duty is zero because the factory imports under temporary admission. All prices are illustrative.
| Receipt line | Quantity | Weight (kg) | Value (USD) |
|---|---|---|---|
| Navy jersey 180 GSM | 925 kg | 925.0 | 3,885.00 |
| Rib collar and cuff sets | 3,060 sets | 76.5 | 765.00 |
| Total | 1,001.5 | 4,650.00 |
| Landed cost type | USD | Allocation | Jersey | Rib sets |
|---|---|---|---|---|
| Sea freight | 420.00 | By weight | 387.92 | 32.08 |
| Clearing and port | 180.00 | By cash value | 150.39 | 29.61 |
| LC bank charges | 95.00 | By cash value | 79.37 | 15.63 |
| Total landed costs | 695.00 | 617.68 | 77.32 |
Value share of jersey = 3,885 ÷ 4,650 = 83.55%
Clearing to jersey = 180 × 0.8355 = 150.39 · bank charges = 95 × 0.8355 = 79.37
Jersey landed = 3,885.00 + 617.68 = 4,502.68 → 4,502.68 ÷ 925 = USD 4.87 per kg
Rib landed = 765.00 + 77.32 = 842.32 → 842.32 ÷ 3,060 = USD 0.28 per set
The fabric line in Example 15 was priced at the mill price of USD 4.20 a kg. At the landed USD 4.87, the same line becomes 0.31 × 4.87 × 1.06 = USD 1.60, which is 0.22 more per polo and USD 660 on the order. The 10% margin of 0.39 would shrink to 0.17. For allocation by weight, fill in each item's weight on the item master and check the split on a test receipt before go-live.
With operations on top: the cost engine (fabric, trims, decoration, CMT, overhead, margin to FOB, with landed cost and dated exchange rates), the standard cost sheet and quotations with approval thresholds run in the operations layer. SAP Business One holds the landed cost that actually hit the receipts, for stock value.
20Can SAP Business One run quality control and AQL inspection for garments?
Standard SAP Business One has no quality management module and no ISO 2859-1 sampling tables, so inspections are recorded in user-defined objects, a partner add-on or an operations system, while SAP Business One enforces the result through batch status and warehouses. AQL (acceptance quality limit) inspection checks a random sample drawn from a lot and accepts or rejects the whole lot according to how many defects the sample contains.
What SAP Business One does give a quality team is the hold. A fabric batch received as Not Accessible cannot go on a sales document; a Locked batch moves only on inventory documents. A quarantine warehouse gives the same effect for items without batches. Neither records what was inspected or who decided.
Quality control at cutting, stitching, dyeing and printing
A garment factory inspects at each stage where a defect is cheaper to catch than at the end. Dyeing and printing usually happen outside the factory, so those checks land on the goods coming back.
| Inspection | When | What it checks | SAP Business One fit |
|---|---|---|---|
| Incoming fabric | At receipt from the mill or dye house | Shade against the shade band, GSM, width, shrinkage, four-point defects | Batch received as Not Accessible, released after inspection; results need a user-defined table |
| Incoming trims | At receipt | Colour, size, count against the approved trims card | Quarantine warehouse and a transfer on release |
| Printed or embroidered panels | On return from the processor | Placement, registration, colour against the strike-off | Rejects recorded as a goods issue with a reason |
| Cutting | After cutting, before bundling | Pattern accuracy, notches, shade within the bundle | Outside SAP Business One |
| Inline (stitching) | During sewing | Operation-level defects, found early | Outside SAP Business One |
| End of line | As garments leave the line | Every garment, graded pass, repair or reject | Receipt from production can separate good and reject quantities; grading needs design |
| Measurement | End of line and final | Points of measure against tolerance per size | Outside SAP Business One |
| DUPRO | Once a share of the order is packed | Early warning before final | Custom |
| Final AQL | When the order is packed | Sample per ISO 2859-1 at the buyer's level | Custom (sampling tables), or the result recorded and used to release the delivery |
The final inspection sample for 3,000 polos
The buyer's quality manual asks for ISO 2859-1, single sampling, normal inspection, general inspection level II, AQL 2.5 for major defects and 4.0 for minor defects.
| Step | Lookup | Result |
|---|---|---|
| Lot size | 3,000 pieces falls in the band 1,201 to 3,200 | Band 1,201–3,200 |
| Code letter | That band at general level II | K |
| Sample size | Code letter K | 125 pieces |
| Major defects, AQL 2.5 | Sample of 125 | Accept at 7 or fewer, reject at 8 |
| Minor defects, AQL 4.0 | Sample of 125 | Accept at 10 or fewer, reject at 11 |
If the inspector finds 8 major defects, the lot fails even if minor defects are well inside their limit. What happens next (re-inspection after 100% checking, or a release decided by the buyer) must be recorded with the person who decided. Many buyers also accept zero critical defects; take that from the buyer's manual. In SAP Business One, the practical link is a delivery that cannot be added until an inspection record says pass, enforced in the transaction notification procedure.
Acceptance numbers as published in ISO 2859-1 Table II-A, reproduced in common AQL references (see sources).
With operations on top: typed inspections (incoming, cutting, PP, DUPRO, final AQL, pre-shipment, measurement), the AQL engine on ISO 2859-1 at the buyer's level, CAPA, needle and metal control and quality grades (only first-quality pieces count as shippable) run in the operations layer. SAP Business One sees the delivery only once it is cleared.
21How do you handle cartons, packing lists and shipping documents in SAP Business One?
SAP Business One records packing on the delivery through its Packages window, using package types you define, and its Pick and Pack Manager moves orders from open to released to picked; buyer carton labels, SSCC numbers and pack-level packing lists usually need custom layouts. Packaging information prints on a separate page when a delivery or A/R invoice is printed, per SAP's help.
Documents a garment shipment needs
An export shipment of garments carries a standard set of documents, and a letter of credit may require each to match exactly.
| Document | Built from | SAP Business One fit |
|---|---|---|
| Packing list by carton | Carton number, size and colour content, dye lot, weights, dimensions | Packages on the delivery give the content; buyer layouts are custom print layouts |
| Carton labels | Buyer's label rules, often with an SSCC barcode | Custom |
| Commercial invoice | The A/R invoice with incoterm, marks and numbers | A/R invoice with a custom export layout |
| Certificate of origin | Issued by a chamber or authority | Outside; attach the copy |
| Advance shipping notice (ASN) | Carton-level content sent to the buyer before arrival | EDI provider or portal upload |
| Bill of lading or air waybill | Issued by the carrier or forwarder | Outside; attach the copy |
Packing 3,000 polos into cartons, one dye lot per carton
The buyer wants solid-size cartons of 10 pieces. Following the cut plan in Example 10, each carton must hold a single dye lot.
| Size and batch | Pieces | Full cartons of 10 | Part carton |
|---|---|---|---|
| S, batch A | 87 | 8 | 1 of 7 |
| S, batch B | 213 | 21 | 1 of 3 |
| M, batch A | 23 | 2 | 1 of 3 |
| M, batch C | 727 | 72 | 1 of 7 |
| L, batch B | 900 | 90 | none |
| XL, batch A | 750 | 75 | none |
| XXL, batch A | 300 | 30 | none |
| Total | 3,000 | 298 | 4 (20 pieces) |
298 full cartons hold 2,980 pieces and four part cartons hold the other 20, so the delivery carries 302 packages of type "Carton 10" instead of the 300 a size-only plan predicts. The buyer must accept part cartons, or accept mixing lots in them. Agree it before packing starts, and make sure the packing list shows the dye lot per carton. Finished polos carry no batch unless you batch-manage finished goods, so the dye lot per carton needs a field or an operations system.
With operations on top: shipments per delivery, packing and cartonisation, and ship clearance against the buyer's terms run in the operations layer. SAP Business One receives the delivery and raises the A/R invoice.
22How does SAP Business One handle multi-currency, letters of credit, down payments and chargebacks?
SAP Business One handles foreign-currency documents, exchange-rate differences, A/R down payment requests and down payment invoices, and approval procedures as standard; letters of credit and reason-coded chargebacks need design, because there is no letter-of-credit object. Garment exporters usually sell in USD or EUR, buy some materials abroad and pay wages locally, so every order touches at least two currencies.
Down payment requests and down payment invoices
SAP Business One has two documents for advances, and the difference matters to finance. An A/R down payment request asks the customer for the advance and posts no journal entry. An A/R down payment invoice records the advance to a liability account, which moves to revenue when the down payment is applied to the final A/R invoice. Choose per buyer, following local tax rules on advances.
Approval procedures
Approval procedures stop a document being added until the named approvers agree. The document is saved as a draft, sent through the approval stages, and added once approved. Use them for purchase orders above a limit, discounts beyond a limit and outgoing payments. They approve documents only; product approvals such as lab dips need another place (section 17).
Letters of credit
A letter of credit is a bank's promise to pay the exporter when documents that match the credit's terms are presented. Under ICC's UCP 600 rules, which most credits follow, documents must be presented within 21 calendar days after the shipment date unless the credit says otherwise, and never after the credit expires. SAP Business One has no LC object: the credit number, amount, latest shipment date, expiry, presentation period and required documents need a user-defined object, and a check before shipment that the documents will match.
Down payment, letter of credit and exchange difference
The polo order is worth 3,000 × USD 4.26 = USD 12,780.00. The buyer pays 30% in advance by transfer and the balance under a sight letter of credit. The factory's local currency is EGP. Exchange rates are illustrative.
| Step | In SAP Business One | USD | EGP |
|---|---|---|---|
| Order confirmed, 1 Oct | Sales order, five size items at 4.26 | 12,780.00 | |
| Down payment invoice | A/R down payment invoice based on the order, 30% | 3,834.00 | |
| Down payment received | Incoming payment against it | 3,834.00 | |
| Shipment, 15 Dec | A/R invoice with the down payment applied | 8,946.00 | at 48.80 = 436,564.80 |
| LC documents presented | User-defined LC record: presentation within 21 days of shipment | ||
| LC paid | Incoming payment of the balance | 8,946.00 | at 49.10 = 439,248.60 |
| Exchange difference | Posted as an exchange gain | 2,683.80 |
Balance = 12,780.00 − 3,834.00 = 8,946.00
Gain = 8,946.00 × (49.10 − 48.80) = 8,946.00 × 0.30 = EGP 2,683.80
The bank's negotiation charges are a separate expense entry. What SAP Business One does not do as standard is warn the shipping team that the credit expires, or that the latest shipment date is close; SAP Business One alerts built on a query can do it once the LC record exists.
Chargebacks
A chargeback is an amount a buyer deducts from a payment for a claimed failure: a late shipment, a wrong carton label, a missing or wrong advance shipping notice. It arrives as a short payment. Record the shortfall against a chargeback account per reason, or with a reason user-defined field on the credit memo, and keep the buyer's deduction notice attached. Without reason codes, nobody can tell whether the factory loses money to labels or to lateness.
A chargeback on an open-account shipment
Suppose the same balance of USD 8,946.00 were shipped to a retailer on open account instead of against a letter of credit. The retailer pays short.
| Deduction | Reason given | USD |
|---|---|---|
| Carton label error | 2 cartons with wrong size label, 50 per carton | 100.00 |
| Late ASN | 1% of the invoice | 89.46 |
| Total deducted | 189.46 |
Received = 8,946.00 − 189.46 = 8,756.54
In SAP Business One, record the incoming payment of 8,756.54 against the invoice and clear the 189.46 with an A/R credit memo, or a journal entry, split into "Chargebacks: labelling" (100.00) and "Chargebacks: ASN" (89.46). If the factory disputes the label claim with carton photos, the 100.00 stays open under dispute instead of being written off.
With operations on top: finance stays in SAP Business One in full. The operations layer sends the orders, deliveries and purchase requests that the invoices and payables are built on; no money amounts travel through its ERP API.
23Does SAP Business One support e-invoicing and localisation for garment-exporting countries?
SAP releases SAP Business One with country localisations, and local tax, reporting and e-invoicing depend on the localisation for your country and on your partner; we have not verified e-invoicing coverage for any specific garment-exporting country in this chapter. E-invoicing rules change often, so treat any statement older than the current tax year with care.
Turkey, Egypt, Pakistan, Bangladesh, India, Vietnam, Morocco, Tunisia and others each have their own invoicing, VAT and export-incentive rules. Check SAP's list of localisations for release 10.0, ask the partner which statutory reports and e-invoicing connections they have delivered in your country, and test an e-invoice end to end in a test company before go-live.
Factories in free zones or under temporary admission often report the import and re-export of materials to customs. SAP Business One stock movements and batches carry the quantities, but the report format is local and usually custom.
Part 4Build
24In what order should you configure SAP Business One for a garment factory?
Configure SAP Business One for a garment factory from the ledger outward: company, chart of accounts, currencies and taxes first, then units of measure groups, batch settings, item groups and valuation, then warehouses, then production and approvals, and only then the items and product trees. Each step depends on the one before it; loading items before their units and groups are final means reloading them, and an item's inventory unit cannot be changed once it has transactions.
Menu paths change between releases and between the desktop client and the Web Client. The table names the area and gives a path only where we confirmed it in SAP material; check every path on your feature package.
| # | Configure | Where | Why at this point |
|---|---|---|---|
| 1 | Company, localisation, chart of accounts, posting periods, taxes | Company creation and administration setup | Every later document posts to these accounts |
| 2 | Currencies and exchange rates | Administration setup, financials | Foreign-currency suppliers and buyers need active currencies |
| 3 | Units of measure groups, one per fabric quality plus count groups (piece, dozen, gross, pair) | Administration › Setup › Inventory › Unit of Measurement Groups | Items carry their group and inventory unit from creation |
| 4 | Batch settings, including the default status for new batches | Administration › System Initialization › General Settings › Inventory › Items | Fabric batches should arrive as Not Accessible |
| 5 | User-defined fields: style, colour, size, season, buyer style, cut number, shade group label | User-defined fields management | Items and documents are created with them |
| 6 | Item groups with default accounts and valuation method; item properties | Inventory setup | The group decides accounts and defaults for every item in it |
| 7 | Warehouses: main stores, cutting, finished goods, quarantine, one per subcontractor; bin locations if used | Inventory setup | Batches, transfers and subcontracting need them |
| 8 | Landed cost types with allocation methods; customs groups | Purchasing setup | Import charges need their types before the first receipt |
| 9 | Resources and route stages | Production setup | Product trees refer to them |
| 10 | Package types (for example "Carton 10") | Inventory setup | Deliveries record packages by type |
| 11 | Approval templates and alerts | Administration, approval process | Purchase orders above a limit go to approval from day one |
| 12 | Validation rules in SBO_SP_TransactionNotification (batch mixing, tolerance, inspection pass) | Database stored procedure, by the partner developer | Rules must exist before users post documents |
| 13 | Add-ons (variant matrix, production, EDI) if chosen | Administration › Add-Ons › Add-On Manager | Add-ons may add their own fields and objects |
| 14 | Master data: business partners, materials, finished items, product trees | Data Transfer Workbench | Last, so every record lands on final settings |
Two item-level switches complete the setup: fabric items are managed by batches, and each finished item's procurement method is set to make, so MRP recommends production orders rather than purchase orders for it. Both are easier to set in the import file than by hand.
25How do you extend SAP Business One for apparel: user-defined fields, objects, add-ons and the SDK?
SAP Business One is extended with user-defined fields on existing records, user-defined tables and objects for new records, validation rules in the transaction notification stored procedure, and add-ons built on the SDK (the DI API for data, the UI API for screens) or bought from partners. Every extension must be retested at each feature package, so keep the list short and owned.
| Tool | What it does | Apparel use |
|---|---|---|
| User-defined fields | New fields on items, business partners, documents and lines; exposed in the Service Layer with a U_ prefix and managed through UserFieldsMD | Style, colour, size, season, buyer style, cut number, tolerance |
| User-defined tables and objects | New tables (UserTablesMD) and objects with their own forms and Service Layer endpoints (UserObjectsMD) | Sample requests and rounds, LC records, inspection results |
| Transaction notification | SBO_SP_TransactionNotification runs before a transaction is committed and can roll it back with a message | Refuse two dye lots on one cut; refuse a delivery above tolerance; refuse a delivery without a passed inspection |
| Formatted searches and queries | Values filled from queries; saved queries for alerts and reports | Default a size scale from the item group; alert on an LC nearing expiry |
| SDK: DI API and UI API | The DI API is a COM library for data; the UI API changes windows, menus and events in the desktop client | Custom screens such as a cut plan or a grid order entry |
| Partner add-ons | Licensed products deployed through the Extension Manager | Variant matrix, production depth, EDI, quality |
Which extensions an apparel project usually needs
An SAP Business One apparel project that keeps operations inside the ERP usually needs most of the list below. The names are descriptive, not real packages. Look for a maintained add-on before building, and check each against your feature package.
| Extension | Purpose | Fit-gap lines | Needed with operations on top? |
|---|---|---|---|
| Variant matrix | Style master, size grids, grid entry on documents | 1, 41 | No; styles live in the operations layer |
| Product tree generator | Creates and updates one tree per size item from a consumption table | 11, 12, 13, 14 | No |
| Fabric metres per batch | Measured GSM, width and metres on the batch, and a report in metres | 20, 21 | No |
| Cut control | Refuses mixed batches on one cut; cut orders and bundles | 23, 30, 31 | No |
| Ratio packs and cartons | Assorted cartons, pack-level packing lists, carton labels | 5, 44, 46 | No for packing; buyer label printing may stay if the delivery is printed from SAP Business One |
| Sampling and approvals | Sample requests, rounds, verdicts, T&A links | 10, 36 | No |
| Subcontract balance | Balance per processor, loss allowance, reject reasons | 34 | No |
| AQL inspection | ISO 2859-1 sample sizes and acceptance numbers, logged overrides | 37, 38, 39 | No |
| Quantity tolerance | Over and under-shipment check before a delivery is added | 43 | No; ship clearance happens in the operations layer |
| Letters of credit | LC terms, dates, document checklist, expiry alerts | 48 | Yes; LC is a finance record |
| Chargeback reasons | Reason codes on deductions, dispute status | 50 | Yes |
| EDI | 850, 855, 856, 810 with each retailer | 45 | Depends on which system the buyer's EDI must reach |
| Export documents | Commercial invoice and packing-list layouts per buyer | 44 | Yes for the invoice |
| Local statutory reports | Free-zone or temporary-admission reports, local tax | 52 | Yes |
Every row is an add-on to license or code someone must retest at each feature package. That is the real cost of keeping operations inside SAP Business One, and it recurs.
26Which systems does an SAP Business One apparel implementation integrate with?
An SAP Business One apparel implementation typically connects to a PLM or tech-pack system, a shop-floor system, EDI with retailers, banks and an operations layer, through the Service Layer, the DI API or the integration framework (B1if); each connection needs one owner per field and links stored on permanent keys. The table shows the usual source of truth for each kind of record, based on general practice.
| Record | Source of truth | Goes to SAP Business One as |
|---|---|---|
| Style, spec, points of measure, revisions | PLM or operations layer | The finished SKU items, once released |
| Pre-cost and quote | Operations layer | Nothing, or a standard cost once the order is confirmed |
| Buyer order | Operations layer, or EDI into the ERP | The sales order |
| Material requirements | Operations layer | Purchase requests that become purchase orders |
| Receipts, stock, batches | SAP Business One, with measurements from the operations layer | Goods receipt POs, transfers, issues |
| Cut, bundle, WIP, operator output | Shop-floor system or operations layer | Issues and receipts, summarised |
| Quality results | Operations layer or quality system | Only the clearance to ship |
| Shipment, invoice | SAP Business One for the invoice; operations layer for the shipment | Delivery and A/R invoice |
| Payments, LC, chargebacks | SAP Business One | Native |
The integration framework for SAP Business One (B1if) is SAP's tool for message-based scenarios: transformation, routing and monitoring between SAP Business One and other systems. From practice, partners use it where a connection needs mapping or several companies, and the Service Layer for direct web and cloud integrations.
Rules for every connection
Four rules prevent most integration faults, whether the other side is a PLM, a floor system or an operations layer.
- Link on DocEntry or the item code you control, never on a document number (DocNum) a numbering series can change or a text field users edit.
- One writer per field. If two systems can change the same quantity, one of them is wrong without knowing it.
- Show disagreements to a person. When the other system says something different, put it on a review list; never overwrite silently.
- Make receivers safe to call twice, so a retried message does not create a second purchase order. SAP's own webhook guide says retries can deliver duplicates.
Part 5Data migration
27How do you migrate apparel data into SAP Business One?
Migrate only open and active apparel data into SAP Business One (active SKUs, open orders, open purchase orders and stock by batch), load it with the Data Transfer Workbench in dependency order, and have each department head sign off the loaded figures. The Data Transfer Workbench (DTW) is SAP's tool for importing data from CSV files into SAP Business One; it ships with templates for each business object, arranged like the main menu, and user-defined objects can be imported with customised templates.
Load order
Each object depends on the ones above it. Load and check each level before starting the next.
| # | Object | Scope | Signed off by |
|---|---|---|---|
| 1 | Chart of accounts, taxes, opening balances plan | Current | Finance head |
| 2 | Units of measure groups, user-defined fields and valid values | Final design | Merchandising head, stores head |
| 3 | Item groups and warehouses | Final design | Finance head, stores head |
| 4 | Business partners (buyers, suppliers, subcontractors) | Active in the last two seasons | Merchandising head, purchasing |
| 5 | Materials (fabrics, yarns, trims, packaging) | Used in active styles or in stock | Stores head |
| 6 | Finished SKU items | Active and carry-over only | Merchandising head |
| 7 | Resources, route stages, product trees | Items with open orders | Production manager, CAD lead |
| 8 | Opening stock by batch and warehouse | Counted at cut-off | Stores head, finance head |
| 9 | Open purchase orders | Undelivered quantities only | Purchasing |
| 10 | Open sales orders | Undelivered quantities only | Merchandising head |
| 11 | Open production orders or WIP | Decide: reload, or finish in the old way | Production manager |
| 12 | Open receivables and payables | Per invoice, at cut-off | Finance head |
The cut-off rule
A cut-off rule states the exact moment after which every transaction is entered in SAP Business One and not in the old system. Write it as a date and time, name what happens to documents in flight (a truck at the gate, an inspection half done), and stop receiving into the old system at that moment. Stock is counted at the cut-off and loaded as it was counted, batch by batch, not as the old system said.
Cleansing
Clean data before it is loaded, never after. The usual work in an apparel migration is listed below.
- Merge duplicate suppliers and materials ("Navy Jersey 180", "Jersey 180 NVY").
- Retire styles with no order in two seasons, so their SKUs are never created.
- Give every fabric one units of measure group, and every roll in stock its batch.
- Map old size labels to the new valid values, one scale at a time.
- Split any "open" order line that is already partly delivered into delivered and open quantities.
Migration rows for the open polo order
The cut-off is 18:00 on 31 October and SAP Business One goes live on 1 November. The polo order is confirmed, the fabric is ordered but not yet received, and the buttons are in stock.
Finished items (one row per size):
ItemCode,ItemName,ItemsGroup,U_Style,U_Colour,U_Size,U_Season P2041-NVY-S,Men's piqué polo P-2041 Navy S,Finished garments,P-2041,NVY,S,AW26 P2041-NVY-M,Men's piqué polo P-2041 Navy M,Finished garments,P-2041,NVY,M,AW26 P2041-NVY-L,Men's piqué polo P-2041 Navy L,Finished garments,P-2041,NVY,L,AW26 P2041-NVY-XL,Men's piqué polo P-2041 Navy XL,Finished garments,P-2041,NVY,XL,AW26 P2041-NVY-XXL,Men's piqué polo P-2041 Navy XXL,Finished garments,P-2041,NVY,XXL,AW26
Open sales order lines:
Order,ItemCode,Quantity,Price,LineTotal SO-P2041,P2041-NVY-S,300,4.26,1278.00 SO-P2041,P2041-NVY-M,750,4.26,3195.00 SO-P2041,P2041-NVY-L,900,4.26,3834.00 SO-P2041,P2041-NVY-XL,750,4.26,3195.00 SO-P2041,P2041-NVY-XXL,300,4.26,1278.00
Open purchase order and stock:
Open PO: navy jersey 180 GSM, 925 kg ordered, 0 kg received Stock: buttons 15 mm navy, 9,504 pcs (66 gross), main warehouse, no batch
Column names here are illustrative; take the exact headers from the DTW template for your feature package, which also links header and line files with a record key. The order total must match the confirmed buyer order to the cent, and the merchandising head signs that it does.
Sign-off
Each owner signs a one-page check of their data: record counts against the old system, totals (stock value, open order value, open payables) and five records picked at random and checked on screen. A migration with no signatures is a migration nobody owns when the first figure is wrong.
Part 6Testing
28How should you test an SAP Business One apparel implementation end to end?
Test an SAP Business One apparel implementation with end-to-end scenarios that follow one real order from the buyer's PO to cash, run by the factory's key users in a test company copied from migrated data, each step with an expected result written down before the test starts. Testing screens one by one proves the configuration works; only end-to-end scenarios prove the business works.
The 13 scenarios below cover the flows where apparel projects usually break. Run each at least twice: once by the partner to find faults, once by the key users to accept the result. Run them again after every feature package upgrade.
| # | Scenario | What it proves | Expected result, in short |
|---|---|---|---|
| T1 | FOB order to payment | The whole chain works | Order, purchase, receipt, production, delivery, invoice and payment all reconcile to the order value (Example 22) |
| T2 | CMT order with buyer fabric | Consigned stock stays out of stock value | Fabric received and issued with no change in stock value; the service invoice carries only CM |
| T3 | Prepack order | Packs, pieces and cartons agree | Buyer orders packs, production makes pieces, the packing list shows packs per carton |
| T4 | Shade split in cutting | Dye lots are never mixed | An issue mixing two batches on one cut is refused; leftover per batch matches the cut plan (Example 23) |
| T5 | Subcontract embroidery with loss | Out, back and loss reconcile | Panels out, good panels back, rejects recorded with a reason, balance zero |
| T6 | Short shipment within tolerance | Tolerance is applied and invoicing follows the shipped quantity | Delivery accepted, order line closed, invoice on shipped pieces |
| T7 | Over-shipment | The upper limit is enforced | Above the tolerance, the delivery is refused or needs a named approval |
| T8 | Seconds sale | Second-quality pieces are valued and sold apart | Seconds move to their own item or warehouse and sell at their own price |
| T9 | LC discrepancy | Document checks catch a mismatch | A late shipment date against the LC is flagged before documents are presented |
| T10 | Chargeback | Deductions are coded | A short payment is split by reason and posted to the chargeback accounts (Example 20) |
| T11 | Mid-season spec revision | The approved version is protected | A product tree change applies to new production orders only; open orders keep their components |
| T12 | Cancelled order with committed materials | Committed stock is visible | Fabric already bought shows as available stock with its cost; open purchase orders are listed for decision |
| T13 | FX at month-end | Currency figures close correctly | Realised differences posted; open foreign balances handled as the finance head decided |
Test script: the polo order from sales order to cash
Scenario T1, run in the test company with migrated master data. Figures are the ones used throughout this guide.
| Step | Action | Expected result |
|---|---|---|
| 1 | Enter the sales order: five size items, S 300, M 750, L 900, XL 750, XXL 300 at 4.26 | 5 lines, 3,000 pieces, USD 12,780.00 |
| 2 | Create a 30% A/R down payment invoice from the order and post the incoming payment | Down payment USD 3,834.00, paid |
| 3 | Run MRP for the order and create the purchase order for 925 kg navy jersey from the order recommendation | Purchase order for 925 kg; approval procedure fires if above the limit |
| 4 | Post the goods receipt PO for 933 kg in three batches A, B, C | Receipt refused without a batch on every line; three batches with status Not Accessible |
| 5 | Release the three batches after incoming inspection | Status Released on A, B and C |
| 6 | Add the landed costs document from Example 16 | Jersey cost updated towards USD 4.87 per kg, as the valuation method allows |
| 7 | Release the five production orders and issue fabric by batch | Issue refused without a batch; only released batches offered |
| 8 | Receipt from production of 3,000 pieces; close the orders | Finished stock 3,000; variances posted on closing |
| 9 | Add the delivery with 302 packages | Delivery for 3,000 pieces, packages recorded |
| 10 | Create the A/R invoice from the delivery and apply the down payment | USD 12,780.00 less 3,834.00 = 8,946.00 due |
| 11 | Post the incoming payment at a different exchange rate | Invoice paid; exchange-rate difference posted to the gain or loss account |
| 12 | Run profitability for the order's project or dimension | Revenue, material and labour cost appear against this order |
Step 3 depends on each fabric's procurement method and the MRP settings. Step 12 depends on how finance designed projects or dimensions.
Test script: shade split at cutting
Scenario T4, using the three batches and the cut plan from Example 10. The cut number is a user-defined field on the issue for production.
| Step | Action | Expected result |
|---|---|---|
| 1 | Issue batch A to cut 01 for XXL 300, XL 750, M 23, S 87 | Issue accepted; batch A recorded on cut 01 |
| 2 | Try to issue batch B to cut 01 | Refused by the transaction notification rule, with a message naming both batches |
| 3 | Issue batch B to cut 02 for L 900 and S 213 | Accepted |
| 4 | Issue batch C to cut 03 for M 727 | Accepted |
| 5 | Return the remaining fabric per batch | Leftover matches the cut plan: A 23.4 m, B 0.3 m, C 0.2 m, recorded in kg on each batch |
| 6 | Pack size S | Two groups of cartons (batch A 87, batch B 213); no carton holds both |
Step 2 needs the cut-control rule from section 25 or an operations layer; standard SAP Business One lets a user pick any released batch.
Test script: subcontract embroidery with loss
Scenario T5 proves that panels sent out, panels returned and panels lost add up. The polo's chest logo is embroidered outside, with a 1% allowance, using the pattern in section 18.
| Step | Action | Expected result |
|---|---|---|
| 1 | Transfer 3,030 cut fronts (3,000 plus 1%) to warehouse SUB-EMB | 3,030 fronts in the embroiderer's warehouse |
| 2 | Release a production order for 3,000 embroidered fronts, issuing from SUB-EMB | 3,030 fronts issued to the order |
| 3 | Receipt from production: 3,004 good, 26 rejected with a reason | 3,004 embroidered fronts in the main warehouse; 26 recorded as rejects ("thread break", "misplacement") |
| 4 | Check the balance at the embroiderer | 0 fronts left in SUB-EMB; 26 rejects inside the allowance of 30 |
| 5 | Post the embroiderer's A/P invoice against the service purchase order | Billed for 3,000 good pieces, as the purchase order says |
Test script: short shipment within tolerance
Scenario T6 proves that a short shipment inside the buyer's tolerance is invoiced on what shipped. The buyer allows ±3%; the factory ships 2,940 pieces, 30 short in M and 30 short in L.
| Step | Action | Expected result |
|---|---|---|
| 1 | Add the delivery for 2,940 of 3,000 | Short by 60 pieces, which is 2.0%; inside the 3% tolerance, so the rule allows it |
| 2 | Close the remaining open quantity on the sales order lines for M and L | No open quantity remains for the 60 pieces |
| 3 | Create the A/R invoice | 2,940 × 4.26 = USD 12,524.40, less the 3,834.00 down payment = 8,690.40 due |
| 4 | Repeat with 2,900 pieces | Short by 3.3%; delivery refused or sent for a named approval |
Step 4 of T6 needs the tolerance rule from section 25; standard SAP Business One has no quantity-tolerance field on a sales order.
Part 7Training, go-live and hypercare
29How should you train a garment factory's staff on SAP Business One?
Train each role only on the windows and scenarios it will use, in the local language, on the factory's own items and orders, and have key users teach their colleagues. A merchandiser does not need the financial menus, and a floor supervisor needs one screen that works, not an introduction to SAP Business One.
Train close to go-live, so that what people learn is still fresh, but not so close that there is no time to repeat a session. Keep each session short and practical: people learn by entering an order they recognise. The plan below is an example for the polo factory; hours are practice, not a standard.
| Role | What they learn | Hours | Pass when they can |
|---|---|---|---|
| Merchandisers | Sales orders line by size item (or the add-on grid), changes, delivery status | 6 | Enter the polo order from the buyer PO without help |
| Purchasing | Purchase requests and orders, MRP recommendations, units, landed costs, A/P invoices | 6 | Buy 925 kg of jersey and add the import charges |
| Stores | Goods receipt POs with batches, batch status, transfers, issues, counts | 8 | Receive three dye lots and issue each to its cut |
| Production planners | Production orders, issue for production, receipt from production, subcontract pattern | 6 | Run the embroidery out and back |
| Quality | Batch status, quarantine warehouse, the inspection record in use | 4 | Hold a batch and release it |
| Shipping | Pick and Pack Manager, deliveries with packages, print layouts | 4 | Pack by dye lot and print the packing list |
| Finance | Invoices, down payments, payments, exchange-rate differences, approvals, reports | 10 | Take the polo order from down payment to closed |
| Key users | All of the above for their area, plus first-line support | 16 | Teach their team and log issues correctly |
Floor operators and supervisors are trained on whatever captures floor output. If that is a kiosk or scanner screen, the training is minutes, not hours; if it is the SAP Business One desktop client, expect the data never to arrive.
30What does an SAP Business One cut-over plan look like for a garment factory?
An SAP Business One cut-over plan is a day-by-day list of the steps that move the factory from the old system to SAP Business One: freeze, final DTW loads, stock count by batch, opening balances, checks and the first live transactions, each with an owner and a go or no-go point. Rehearse it once in full in a test company before the real weekend.
A cut-over plan, day by day
The polo factory goes live on 1 November, before the polo fabric arrives on 10 November and cutting starts on 17 November. A template, to adapt.
| Day | Date | Steps | Owner |
|---|---|---|---|
| T−10 | 22 Oct | Rehearsal load complete in a test company; open issues reviewed; go or no-go for the plan | Factory project lead |
| T−7 | 25 Oct | Master data frozen in the old system; final load of business partners, materials, SKU items, product trees | Merchandising head, stores head |
| T−3 | 29 Oct | Open purchase and sales orders extracted and checked against source documents | Purchasing, merchandising |
| T−1 | 31 Oct | Cut-off at 18:00: no more receipts or issues in the old system; physical count of fabric by dye lot and roll, trims and finished goods | Stores head |
| T0 | 1 Nov, morning | Load counted stock by batch, open orders and open receivables and payables; owners sign totals | All owners, finance head |
| T0 | 1 Nov, noon | Go or no-go by the sponsor on the signed checks | Sponsor |
| T0 | 1 Nov, afternoon | First live transactions: one receipt, one issue, one sales order, one invoice | Key users |
| T+1 | 2 Nov | Daily issue meeting starts; partner on site | Factory project lead |
| T+9 | 10 Nov | Polo fabric received with batches as Not Accessible: the first real test of the batch rules | Stores head |
The fall-back decision belongs at the noon go or no-go: if the counted stock and the open orders do not reconcile, the factory keeps working in the old system for another week rather than going live on figures nobody trusts.
31When should a garment factory go live on SAP Business One, and how long is hypercare?
Go live between seasons, in the lowest-volume weeks and before a new wave of cutting starts, and keep the partner in close support until at least the first month-end close is done in SAP Business One. Hypercare is the period right after go-live when the project team stays on hand to fix issues daily.
- Timing. Avoid the weeks before a main shipment window, the financial year-end and any audit. A go-live in peak season turns every small fault into a missed shipment.
- Feature packages. Do not apply a new feature package in the first weeks after go-live; plan it after hypercare, with the test scripts ready.
- Parallel running. A short, bounded parallel run of the books can help finance compare figures. Running the whole factory in two systems rarely works, because people keep using the one they trust.
- Duration. Practitioners commonly plan hypercare of four to eight weeks. That range is judgement, not a measured standard; the rule that matters is that nobody leaves before the first month-end close in SAP Business One is complete.
- Issue log. Keep one list: date, who, what happened, severity, owner, status. Review it daily in the first two weeks.
- Exit criteria. Hypercare ends when the month-end closes on time, no issue blocks shipping or invoicing, and key users handle first-line questions without the partner.
Part 8Risks
32What are the most common mistakes when implementing SAP Business One for apparel?
The most common mistakes in apparel SAP Business One projects are deciding the variant approach too late, creating every colour-size combination as an item, one units of measure group shared by different fabrics, dye lots not enforced at issue, and assuming a standard subcontracting order exists. The list below comes from implementation practice, not from SAP's documentation.
- The variant add-on decided after master data.Items loaded one way must be reloaded the add-on's way; decide before the first import and budget the add-on's upgrades per feature package.
- Every combination created as an item.Thousands of SKUs and product trees nobody sells or maintains.
- One units of measure group for several fabrics.Stock in metres looks right while the cutting room runs short; and the factor cannot change while documents are open.
- One product tree copied to every size.Large sizes run short and small sizes leave surplus (Example 11).
- Batches not enforced at issue.Shade differences are found at final inspection instead of at cutting.
- Batches received as Released.Fabric is issued before its inspection; receive as Not Accessible and release deliberately.
- The production order used as the production plan.Line balancing, operation times and bundle flow need their own place.
- Subcontracting assumed to be standard.Goods disappear between processors when the transfer pattern is not designed.
- Too much logic in the transaction notification procedure.One unreviewed stored procedure blocks documents across the company after a feature package; keep rules small, commented and tested.
- Integrations linked on document numbers.A numbering series change breaks every link; link on DocEntry.
- Add-ons not checked against the feature package.An upgrade waits for the slowest add-on vendor.
The 15 general failure modes, and how each shows up in SAP Business One
Apparel ERP projects fail in the same fifteen ways whatever the ERP. The table maps each one to where it appears in an SAP Business One project and how to prevent it.
| # | Symptom | Root cause | How it shows in SAP Business One | Prevention |
|---|---|---|---|---|
| 1 | SKU swamp | Every variant created as an independent item | Thousands of item codes with no style record | Create items only when needed; styles in an add-on or operations layer (section 12) |
| 2 | Large sizes short of fabric | Average consumption | One tree copied to every size | Trees generated per size from a consumption table (section 15) |
| 3 | kg and m never reconcile | Fixed conversion | One units of measure group per fabric at a nominal factor | Keep kg; metres measured per batch (section 13) |
| 4 | Shade mixing | No shade rule at issue | Any released batch can be picked for a production order | Batch = dye lot; a cut rule in the transaction notification (section 14) |
| 5 | Costing illusion | Quote, standard and actual not linked | Standard cost on the item, no quote to compare | Keep the quote beside the actuals per order (section 19) |
| 6 | Buyer fabric counted as owned | CMT fabric received like a purchase | Stock value includes the buyer's fabric | A deliberate consigned-stock design (section 4) |
| 7 | Goods lost at subcontractors | Out and back not linked | Transfers with no processed item or balance | Warehouse and processed item per step (section 18) |
| 8 | Produced is not shippable | No output grading | Every received piece counts as finished stock | Grade output; ship on first quality only (section 20) |
| 9 | Spec drift | Revision not linked to the order | Product tree edited while orders are open | Controlled tree changes; the approved version fixed per order |
| 10 | Excel shadow system | No T&A or order view | Merchandisers keep their sheets | Provide the view, in user-defined objects or an operations layer (section 17) |
| 11 | Chargeback leakage | No reason codes | Short payments cleared to one account | Reason-coded accounts or fields (section 22) |
| 12 | LC discrepancies | LC terms not linked to the shipment | No LC object | LC record, alerts and a document check before presenting |
| 13 | Floor data never arrives | Office screens on the floor | Supervisors asked to post receipts from production | Kiosk, scanner or a floor system (section 16) |
| 14 | Big-bang in peak season | A plan-driven date | Go-live during a shipment window | Go live between seasons, with a rehearsed cut-over (section 30) |
| 15 | Migrated garbage | Legacy loaded as it was | Duplicates in business partners and materials | Cleanse first; owners sign off (section 27) |
33What must be decided before an SAP Business One apparel go-live?
Decide the variant approach, the item code convention, the units of measure group for every fabric, the batch rules, the valuation method per item group, the database and hosting, and which system owns sampling, T&A and floor capture before go-live, because each is expensive to change once transactions exist. The full list:
- Variant approach: item per SKU, a named variant add-on, or styles in an operations layer.
- Item code convention and the user-defined fields that group SKUs into styles.
- When a colour-size combination becomes an item.
- The units of measure group and inventory unit for every fabric and yarn.
- Batch per dye lot or per roll; what goes in Batch Attribute 1 and 2; the default batch status.
- Valuation method per item group, and which receipts take landed costs by which allocation.
- Database (SQL Server or SAP HANA), feature package and hosting.
- Which rules live in the transaction notification procedure, and who owns that code.
- Which system owns sampling, T&A, planning, floor capture and quality: SAP Business One, add-ons or an operations layer.
- How buyer-supplied fabric is held so it never enters stock value.
- The quantity tolerance rule and who may approve a shipment outside it.
- How profitability per order is tagged: projects or dimensions.
- Which API the integrations use, and on which keys they link.
Part 9Integration and API
34Which SAP Business One API should an apparel integration use: Service Layer or DI API?
Build new web and cloud integrations on the SAP Business One Service Layer, which speaks OData over HTTPS on both the SQL Server and SAP HANA versions, and keep the DI API for add-ons installed on Windows alongside the desktop client. SAP's Service Layer guide describes it as built on the same core as the DI API, reusing its metadata, so the business objects and their properties match.
| Interface | What it is | Use it for |
|---|---|---|
| Service Layer | OData web API; /b1s/v1 for OData version 3, /b1s/v2 for OData version 4 | Integrations from other systems, web and mobile apps |
| DI API | COM library for data, part of the SDK | Add-ons running with the desktop client on Windows |
| UI API | COM library for windows, menus and events | Changing the desktop client's screens |
| Integration framework (B1if) | Message-based integration with transformation and monitoring | Mapped, scheduled or multi-company scenarios, such as EDI |
| Data Transfer Workbench | CSV import tool | Migration and bulk loads, not live integration |
How the Service Layer works
The facts below are from SAP's guide "Working with SAP Business One Service Layer" (document version 1.29, July 2026) and its API reference for release 10.0.
- Log in, keep the cookie.
POST /Loginunder the Service Layer base URL (SAP's example ishttps://<server>:50000/b1s/v1/Login) withCompanyDB,UserNameandPasswordreturns aB1SESSIONcookie, sent on every later request, and aROUTEIDcookie for load-balancer stickiness. The response includes aSessionTimeoutvalue (30 in SAP's example). Use a dedicated integration user with only the authorisations it needs. As of FP 2305, a Windows domain account can also log in once Active Directory is set up. - Page through lists. The default page size is 20. Send
Prefer: odata.maxpagesize=100or follow the next link in each response. - Protect updates. As of FP 2102, documents including
PurchaseOrders,PurchaseRequests,PurchaseDeliveryNotes,Orders,ItemsandBusinessPartnerscarry ETags; sendIf-Matchso an update fails with 412 if someone changed the record in between. - Group calls.
$batchsends several operations in one request. - Read with SQL where needed. As of FP 2011,
SQLQueriesruns saved SQL through the Service Layer on both databases. - Listen for changes. As of FP 2602, webhooks: enable them per company, create an
EventSubscriptionsrecord naming the business object and transaction type, and run the Webhook Messenger Service. SAP's FAQ says a failed notification is retried up to five times (2, 4, 8, 16 and 32 seconds), that retries can produce duplicates, and that receivers should be idempotent. - Extend. User-defined fields appear with a
U_prefix; user-defined tables and objects get their own endpoints.
Which objects does an apparel integration use?
These entity sets appear in SAP's Service Layer API reference for release 10.0: Items, BusinessPartners, Orders, PurchaseRequests, PurchaseOrders, PurchaseDeliveryNotes (goods receipt PO), InventoryGenExits (goods issue), ProductionOrders, ProductTrees, LandedCosts, BatchNumberDetails, SerialNumberDetails, UnitOfMeasurementGroups, Resources and UserFieldsMD. Confirm field names in your own $metadata before mapping, because feature packages add fields.
Which key should the link be stored on?
Store every link on DocEntry, the document's internal key, which the Service Layer uses in its URLs (for example /PurchaseOrders(1187)). DocNum is the number people read, taken from a numbering series; show it, never link on it. For items, the item code is the key; agree with the factory that item codes are never renamed.
Push or pull?
On FP 2602 or later, subscribe to webhooks for the objects you care about, and keep a scheduled pull as the safety net for anything missed while the receiver was down (SAP also documents a replay for missed events). On earlier feature packages, pull on a schedule, filtering on the documents' update date and reading changes since the last successful run.
One purchase request, from MerchandiserOS to SAP Business One and back
- In MerchandiserOS, request
PR-1042for 925 kg of navy jersey is approved. - The factory's integration job collects it:
GET /api/v1/erp/documentsreturns the request with quantities, units and the supplier code. - The job creates the purchase order in SAP Business One through the Service Layer. The price comes from SAP Business One's own price list for that supplier, not from MerchandiserOS.
POST /b1s/v2/PurchaseOrders
Cookie: B1SESSION=…; ROUTEID=.node1
{"CardCode": "V-MILL01",
"DocDueDate": "2026-11-05",
"U_MOS_Request": "PR-1042",
"DocumentLines": [{"ItemCode": "FAB-JER180-NVY",
"Quantity": 925,
"WarehouseCode": "01"}]}
→ 201 Created {"DocEntry": 1187, "DocNum": 457,
"DocumentStatus": "bost_Open", …}
- The job sends the answer back to MerchandiserOS:
POST /api/v1/erp/po-status
Idempotency-Key: sapb1-po-1187-open
{"rows": [{"request_ref": "PR-1042",
"erp_po_id": "1187",
"erp_po_number": "457",
"status": "Open",
"date": "2026-10-21"}]}
- A person in MerchandiserOS approves it on the ERP review list. The request now shows "SAP Business One PO 457, open".
- The job reads the decision back from
GET /api/v1/erp/proposals/{id}.
The link is stored on DocEntry 1187, not on the number 457, so a numbering-series change breaks nothing. The supplier code, item code and user-defined field are illustrative. No price travels to or from MerchandiserOS in this exchange. A factory that does not want to program can do the same with the file exchange: download the purchase requests as a file, and paste back a file of request, PO number, status and date.
Part 10If you don't manufacture: brands, buying agents and own-label retailers
35Is SAP Business One a good ERP for fashion brands, buying agents and own-label retailers?
SAP Business One can be a good ERP for a fashion or clothing brand, a buying house or an own-label retailer, provided it is used for what they transact (purchase orders to factories, landed cost, vendor payments, wholesale sales and commission invoices) and the manufacturing modules are left switched off. The work that decides whether their orders arrive on time happens at factories they do not own, and SAP Business One has no object for most of it.
Who they are
Three kinds of apparel business never cut a garment themselves, and each uses an ERP differently.
| Business | What it does | What it owns |
|---|---|---|
| Brand or wholesaler | Designs and sells; factories make for it, FOB or CMT | The design, the finished stock once shipped, the sales to retailers or consumers |
| Buying agent or buying house | Sources and follows orders across factories for buyers, on commission | No stock; its income is commission |
| Own-label retailer | Develops its own label and buys it from factories, often through agents | The label's stock once shipped, and its stores or web shop |
What a brand or own-label retailer needs from SAP Business One
An ERP for fashion brands, and an ERP for clothing brands that sell wholesale, is a buying, stock and selling ledger. In SAP Business One that means these standard documents and functions.
- Purchase orders to factories, one line per SKU item, FOB or CMT, with approval procedures above a limit. On CMT, the brand also buys the fabric and sends it to the factory, so the subcontractor-warehouse pattern in section 18 applies.
- Landed costs for freight, insurance, duty and clearing on each goods receipt PO, so stock carries its real cost.
- Vendor payments and advances: A/P down payments to factories and outgoing payments; letters of credit as a user-defined object.
- Wholesale sales orders, deliveries and A/R invoices to retailers, with packages on the delivery.
- EDI 850, 856 and 810 with retailers, through an EDI provider or add-on, often via B1if; and reason-coded chargebacks when retailers pay short (section 22).
- Multi-currency: factories invoice in USD, customers pay in EUR or GBP, the books sit in local currency.
What a buying agent needs from SAP Business One
A buying house ERP is mostly an accounting system. The agent holds no stock and has no goods payables or receivables; its income is a commission invoice to the buyer, raised as an A/R invoice for a service. SAP Business One marketing documents can be item-based or service-based, so the agent can invoice commission without creating stock items. Multi-currency matters, because commission is often invoiced in the buyer's currency.
How a buying agent's commission flows
An agent's commission is earned on the orders it places, and the design question is when the income is recognised and who owes it. Settle three points with finance before configuring.
- Who pays. Most buying houses invoice the buyer (the brand or retailer) for a percentage of FOB. Some are paid by the factory instead; then the invoice goes to the factory, and the buyer may never see it. Each principal is a customer business partner in SAP Business One.
- When it is invoiced. On order confirmation, on shipment, or on the buyer's payment to the factory. Invoicing on shipment is common because the shipped quantity, not the ordered quantity, sets the amount.
- Which rate and currency. Rates differ by buyer and sometimes by product. Hold the agreed rate on the business partner in a user-defined field, and invoice in the currency the agreement names.
The shipped quantity that drives the invoice comes from outside SAP Business One, because the agent does not receive or ship the goods. That is the gap an operations system fills: it knows which factory shipped which order and when, and the agent's SAP Business One raises the invoice from it.
A set-up list for a brand on SAP Business One
A brand or own-label retailer can go live with a smaller configuration than a factory. The list below is the core, in the order a partner would build it.
- Chart of accounts, currencies and taxes, including import duty and VAT on imports.
- Business partners: factories and mills as suppliers, retailers and marketplaces as customers, forwarders and brokers as suppliers of services.
- SKU items with the style, colour, size and season fields from section 12, or a variant add-on if merchandisers key grid orders into SAP Business One.
- Units of measure groups for pieces, packs and cartons.
- Landed cost types for freight, insurance, duty and clearing, and customs groups with projected duty.
- Approval templates for factory purchase orders above a limit.
- A/P down payments for factories that ask for advances, and a user-defined object for import letters of credit.
- Sales documents, package types and EDI for each retailer that requires it, with reason-coded chargebacks.
For an own-label retailer, the same list applies up to the warehouse. What happens after it (store replenishment, allocation, point of sale) belongs to a retail system.
What to skip
A brand, agent or own-label retailer should not buy or configure the manufacturing side: product trees, production orders, resources, route stages and MRP for production. A brand that holds stock still needs item groups, batches only where its buyers demand lot traceability, units of measure groups for cartons and packs, and valuation methods. An agent needs almost nothing from inventory.
36Where does SAP Business One stop for brands and agents, and what runs on top?
SAP Business One stops at the factory gate: it records the purchase order and the goods receipt, but not the development, sampling, T&A, production follow-up and vendor inspections that happen at the factory in between. For a brand or a buying agent, that middle is the job. This is where sourcing agent software and private label sourcing tools earn their place.
| What they need | How SAP Business One handles it |
|---|---|
| Development and sampling with many factories | No sample, style or approval object; lab dips and fit comments live in email |
| T&A across factories | No T&A object; a purchase order has a due date, not a critical path |
| Following production that happens outside | Nothing between the purchase order and the goods receipt PO |
| Inspections at the vendor (AQL) | No quality module or sampling tables |
| One status per order across many factories and buyers | Open purchase orders per vendor; no view of where each order stands |
In practice, brands and agents fill this gap with a tracking spreadsheet per buyer, email threads per factory and inspection reports as PDF attachments. The cost shows up late: a lab dip approved in an email nobody forwarded, a PP sample still at the courier when cutting was due, an inspection failed at the vendor after the vessel was booked. None of these is a finance event, so none of them reaches SAP Business One until it becomes a late goods receipt or a chargeback.
Customising SAP Business One to hold this work means user-defined objects for styles, samples, milestones and inspections, each linked to purchase orders across many factories, and a portal for the factories to update them. That is a second system built inside the first. For a buying house, where this follow-up is the whole service it sells, a sourcing tool built for it is usually the cheaper route.
The MerchandiserOS model for brands and agents
Under the same split as the rest of this guide, MerchandiserOS runs development, samples and approvals, the T&A calendar, the orders placed with factories, sourcing, the planning view across subcontracted factories, quality inspections and shipping follow-up. SAP Business One keeps the books: purchase orders as the financial record, payables, landed cost, stock value, sales invoices, commission invoices and payments. MerchandiserOS includes workspace set-ups for a Brand and for a Buying agent. Retail back-office work (stores, point of sale, allocation and open-to-buy) is outside MerchandiserOS's scope; a retailer keeps its retail system for that.
The same polo order from the brand's side, with the buying agent's commission
A brand places the 3,000 navy polos with the factory at USD 4.26 FOB, through a buying agent paid 5% of FOB. Freight, insurance, duty rate and commission rate are illustrative; check your own customs rules, including whether a buying commission is part of the duty base (here it is not).
| Line | How it is worked out | USD |
|---|---|---|
| Purchase order to the factory | 3,000 × 4.26, five SKU lines | 12,780.00 |
| Sea freight | Forwarder's invoice | 540.00 |
| Insurance | 0.3% of FOB: 12,780 × 0.003 | 38.34 |
| Import duty | 12% of (FOB + freight + insurance): 13,358.34 × 0.12 | 1,603.00 |
| Clearing | Broker's invoice | 150.00 |
| Landed cost into the brand's warehouse | 12,780.00 + 2,331.34 | 15,111.34 |
| Buying agent's commission | 5% of FOB: 3,000 × 4.26 × 5% | 639.00 |
| Total cost to the brand | 15,111.34 + 639.00 | 15,750.34 |
Per polo landed = 15,111.34 ÷ 3,000 = USD 5.04 (charges 0.78 a piece by quantity)
Per polo with commission = 15,750.34 ÷ 3,000 = USD 5.25
In the brand's SAP Business One, the factory purchase order has five SKU lines, the goods receipt PO carries the stock, and a landed costs document adds the four charges. Allocated by quantity, every size carries 0.78; allocated by weight, larger sizes carry more. Whether the 639.00 commission is added to stock cost or expensed is the finance head's decision. In the agent's SAP Business One, the same 639.00 is a service A/R invoice to the brand, with no stock and no goods payable.
Part 11The recommended model
37The operations layer: what runs on top of SAP Business One
The simplest way to run a garment factory on SAP Business One is to let SAP Business One keep the books and run operations, from style to shipment, in a system built for apparel. Parts 3 to 7 of this guide show what it takes to bend SAP Business One toward garment production instead: a variant add-on, product trees per size, user-defined objects for samples and inspections, and rules in a stored procedure. This is the model we recommend: let SAP Business One do what it does best, the books, and give the factory's operations to a system built for them.
The polo order with operations on top
| Step | In MerchandiserOS | What SAP Business One sees |
|---|---|---|
| Tech pack and quote | Style P-2041, graded measurements, cost build at 4.26 FOB | Nothing yet |
| Samples | Three lab dip rounds, strike-off, PP approved 14 Nov and locked to spec version 3 | Nothing |
| Order | 3,000 pieces by size, T&A calendar to 15 Dec | A sales order with five SKU lines, for invoicing |
| Procurement | 925 kg jersey, trims, embroidery; receipts measured per roll and dye lot | Purchase orders, goods receipt POs with batches, payables |
| Planning and production | Line booked, cut by dye lot, job cards by department | Material issued, for stock value |
| Shop floor | Output per line per hour, on MerchandiserOS floor screens or from Garment.io | Nothing |
| Quality | Final AQL at level II, 2.5: 125 pieces inspected; only first-quality pieces ready to ship | Nothing |
| Logistics | Cartons packed by lot, ship clearance against the buyer's terms | Delivery and A/R invoice |
| After shipment | Quote against actuals for fabric, minutes and rejects | Payment received, reported back |
Who does what
Each area has one home. MerchandiserOS runs the work; SAP Business One records the financial result.
| Area | Runs in MerchandiserOS | Recorded in SAP Business One |
|---|---|---|
| Style | Styles with versions and frozen snapshots, tech pack sections, graded measurement points with tolerances, colourways and lab dips, a classified two-level bill of materials (fabric and trims, yarn linked to fabric), consumption from marker efficiency, shrinkage and woven construction, aware of woven, knit and knit-to-shape (pairs for socks) | The finished SKU items, once released |
| Samples and approvals | Lab dips, strike-offs, samples and shipping marks, round by round with parcel and courier details and the buyer's verdict, wired to the T&A; an approved order-level PP round locks the style version for that order | — |
| Quotation | Cost engine from fabric through trims, decoration, CMT, overhead and margin to FOB, with landed cost and dated exchange rates; standard cost sheet; quotations with approval gates and thresholds | Nothing until an order exists |
| Orders | Buyer POs as parent records, orders with size-by-colour breakdown, tolerance band, provisional to confirmed quantity and per-shipment deliveries, ratio packs | The sales order, for invoicing |
| Procurement | Suppliers with qualification, materials master, MRP net-to-buy across the order book, purchase requests, purchase orders, GRN receiving, material issue and return, shade bands per fabric, a measured lot record (GSM, width, shrinkage) per receipt judged against the shade band, incoming inspection carrying the dye lot | The financial purchase order, the payable, stock value |
| Planning | Planning heat-map of lines and subcontractors over 52 weeks, T&A with critical path | — |
| Production | Production orders and per-department job cards, WIP board | Material movements, for stock value |
| Shop floor | MerchandiserOS floor capture screens, or Garment.io feeding output and actual minutes in | — |
| Quality | Typed inspections (incoming, cutting, PP, DUPRO, final AQL, pre-shipment, measurement), AQL engine on ISO 2859-1 with the buyer's level honoured, CAPA, needle and metal control, quality grades so produced is not taken as shippable | — |
| Logistics | Shipments per delivery, packing and cartonisation, ship clearance against the buyer's terms | The delivery and the A/R invoice |
A day in the life, department by department
With operations on top, each department works in the tool built for its job, and finance works in SAP Business One. This is what a normal day looks like on the polo order.
| Department | What they do in MerchandiserOS | What reaches SAP Business One |
|---|---|---|
| Merchandising | Records the buyer PO as the parent record, the order with its size-by-colour breakdown and tolerance band, moves the quantity from provisional to confirmed, splits deliveries per shipment and watches the T&A critical path | The sales order, once confirmed |
| Development | Keeps style P-2041 with its versions, tech pack sections and graded points of measure; logs each lab dip and strike-off round with courier details and the buyer's verdict; the approved PP round locks the style version for the order | Nothing |
| Costing | Builds the cost from fabric to FOB with landed cost and dated exchange rates, keeps the standard cost sheet, sends the quotation through approval gates with thresholds | Nothing until the order exists |
| Purchasing and stores | Runs net-to-buy across the order book, raises purchase requests, receives against the purchase order, records the measured lot (GSM, width, shrinkage) and judges it against the shade band, issues and returns material; suppliers carry their qualification | Purchase requests become SAP Business One purchase orders; receipts and issues for stock value |
| Planning | Loads lines and subcontractors on the 52-week heat-map, opens production orders with job cards per department | Nothing |
| Production floor | Captures output on floor screens and follows the WIP board; or reads output and actual minutes from Garment.io | Nothing |
| Quality | Runs incoming, cutting, PP, DUPRO, measurement and final AQL inspections on ISO 2859-1 at the buyer's level, raises CAPA, keeps needle and metal control, grades output so only first quality ships | Nothing; the shipment is cleared or held |
| Shipping | Packs and cartonises per delivery, clears the shipment against the buyer's terms | The delivery, from which the A/R invoice is raised |
| Finance | Works in SAP Business One: invoices, payables, payments, stock value, tax and e-invoicing | SAP Business One is the record; PO numbers, payment dates and invoice status go back |
What changes in the SAP Business One project
With operations on top, the hard parts of this chapter mostly move out of SAP Business One. You no longer need a variant add-on for merchandising, product trees per size, shade control at cutting, a subcontracting pattern or inspection objects inside the ERP. SAP Business One keeps accounting, purchasing as the financial record, invoicing, payments, stock value and local tax. The project is smaller, feature-package upgrades stay clean, and the factory's floor and merchandising teams work in a tool built for their day.
Measured against the extensions in section 25, the SAP Business One project no longer needs to build or buy:
- A variant matrix add-on for style entry and grid order entry.
- Product tree generators for size-graded consumption.
- Fabric metres per batch, cut control, cut orders and bundles.
- Ratio packs, cartonisation and quantity-tolerance rules.
- Sampling, approvals and T&A objects.
- Subcontract balances with loss allowances.
- AQL inspection and logged overrides.
What stays in the SAP Business One project: finance design, letters of credit, chargeback reasons, local statutory reports, e-invoicing and the connection to the operations layer.
How they connect
SAP Business One and MerchandiserOS connect through the MerchandiserOS ERP API or a file exchange, and the shop floor connects through MerchandiserOS.
- SAP Business One ↔ MerchandiserOS. An integration job, built on the Service Layer, collects purchase requests and sales orders from MerchandiserOS and sends back purchase-order numbers, payment dates and invoice status through the MerchandiserOS ERP API, using an integration login. Every inbound change lands on a review list, where the approver named for that kind of change accepts it, and a "what changed" feed shows the ERP what moved. No money amounts travel through the API; they stay in SAP Business One. A file exchange does the same job with no programming.
- Shop floor. Factories without a floor system use MerchandiserOS's own floor screens. Factories running Garment.io keep it: MerchandiserOS integrates with Garment.io, sending orders and styles to the floor and reading output and actual minutes back.
·Frequently asked questions about SAP Business One for garment manufacturing
These are the questions consultants, factory managers and brand teams ask most often about SAP Business One for apparel. Each answer stands on its own.
Does SAP Business One support a size and colour matrix?
Not as standard. SAP Business One has no item matrix or product variants, so each colour and size combination is a separate item code. A size and colour matrix, with grid entry on sales and purchase documents, comes from partner add-ons such as FashionNx, iMatrix, Fashion for SAP Business One or Accelon's apparel solution, which are named here only as examples. Check any add-on's release status for your feature package and database before choosing it.
How do I manage sizes and colours in SAP Business One without an add-on?
Create one item per SKU with a short code convention such as P2041-NVY-L, and add user-defined fields for style, colour, size and season with valid values, so reports can group SKUs back into styles. Keep one size field per size scale, create items only for combinations that are ordered, and generate them by import rather than by hand. Orders then carry one line per size item.
Can SAP Business One track fabric rolls and dye lots?
Yes. Manage fabric items by batches and make each batch one dye lot; the batch details hold Batch Attribute 1 and 2, dates and location, and a status of Released, Not Accessible or Locked that can hold fabric until it passes inspection. Rolls can be tracked as one batch per roll, or with bin locations or serial numbers inside a dye-lot batch. Refusing two dye lots on one cut needs a validation rule or an operations system.
How do I convert kilograms to metres for fabric in SAP Business One?
SAP Business One converts units through units of measure groups, and each group has one fixed conversion, so kg to metres can only be a nominal factor per fabric, calculated as metres per kg = 1000 ÷ (GSM × width in metres). Real rolls differ from the nominal factor, and the conversion cannot change while open documents exist. Most factories keep knit fabric in kg in SAP Business One and record the measured metres per batch.
How do product trees (bills of materials) work for garments in SAP Business One?
A product tree is SAP Business One's bill of materials, one per parent item, of type Production, Sales, Assembly or Template. Because each size is its own item, each size has its own production tree, so size-dependent fabric consumption is a different quantity on each tree. Generate the trees from a consumption table, because a style in 4 colours and 5 sizes needs 20 of them.
Does SAP Business One support subcontracting for CMT, embroidery or washing?
We found no documented standard subcontracting order in SAP Business One 10.0 in the SAP sources we checked. Projects commonly build it from a warehouse per subcontractor, inventory transfers to send components out, a production order for the processed item and a purchase order for the processing charge, or buy an add-on. Model each outside step separately, so goods between processors stay visible.
How do I set up landed costs in SAP Business One for imported fabric?
Define landed cost types for freight, insurance, clearing, bank charges and customs, each with an allocation method such as quantity, weight, volume, equal share or cash value, and create a landed costs document from the goods receipt PO. Customs groups can hold a projected duty percentage. In this guide's example, USD 695 of charges raised navy jersey from USD 4.20 to USD 4.87 per kg.
Can SAP Business One run AQL quality inspection?
Not as standard. SAP Business One has no quality management module or ISO 2859-1 sampling tables. It can hold stock with batch status or a quarantine warehouse and block a delivery through a validation rule, but the inspection itself, the sample size and the verdict come from a user-defined object, an add-on or an operations system.
Service Layer or DI API: which should an apparel integration use?
Use the Service Layer for new integrations from other systems. It is an OData web API over HTTPS, available on both the SQL Server and SAP HANA versions since release 10.0 patch level 01, with webhooks from FP 2602. Use the DI API, a COM library, for add-ons that run with the desktop client on Windows. Link records on DocEntry, not on document numbers.
Should a garment factory run SAP Business One on SQL Server or SAP HANA?
Both versions run the Service Layer and the core business functions, so choose on what your partner runs most, what your add-ons are released for and what infrastructure you can support. Check every planned add-on against the database and feature package before deciding, because changing database later is a project of its own.
Is SAP Business One good for a garment manufacturing business?
SAP Business One is a good ledger and inventory core for small and mid-size garment makers, with batches for dye lots, units of measure groups, landed costs, production orders, MRP and approval procedures. It has no colour-size matrix, no quality module and no sampling or T&A objects, so a factory either adds add-ons and extensions or runs operations in an apparel system and keeps SAP Business One for the books.
Is SAP Business One good for a clothing brand that outsources production?
Yes, for the transactions: purchase orders to factories, landed costs, A/P down payments, vendor payments, wholesale sales, multi-currency and approval procedures, with EDI and chargebacks added where the brand sells to retailers. It does not follow development, sampling, T&A, production or vendor inspections at the factories, so brands run that part in an operations system and skip the manufacturing modules.
Can SAP Business One handle a buying agent's commission?
Yes. A buying agent can invoice its commission as a service A/R invoice, with no stock items and no goods payables or receivables, in the buyer's currency if needed. For example, 5% commission on 3,000 polos at USD 4.26 FOB is 3,000 × 4.26 × 5% = USD 639.00. The agent's follow-up work across factories needs an operations system.
SAP Business One vs Odoo: which is better for apparel?
Neither is better for every factory. Odoo has native colour-size variants, grid entry on sales orders and a documented subcontracting flow; SAP Business One has none of those as standard but brings batch status, units of measure groups and an SAP ledger that many auditors and groups prefer. Neither covers sampling, T&A or AQL out of the box, so choose on the fit-gap, the partner and local compliance.
SAP Business One vs NetSuite: which suits an apparel company?
NetSuite has matrix items, a grid order entry SuiteApp and Outsourced Manufacturing, and runs only as a cloud service, which tends to suit multi-channel brands and wholesalers. SAP Business One runs on your own or a partner's servers with SQL Server or SAP HANA and tends to suit smaller factories and distributors that want an SAP ledger. For manufacturers, neither covers cutting, sampling or AQL natively.
·Glossary of apparel and SAP Business One terms
Short definitions of the apparel and SAP Business One terms used in this guide.
- AQL
- Acceptance quality limit: an inspection method that checks a random sample from a lot and accepts or rejects the lot on the number of defects found, using ISO 2859-1 tables.
- Batch
- In SAP Business One, a quantity of an item received together and tracked under one number; used here for a dye lot.
- Batch status
- Released, Not Accessible or Locked: controls which documents can use a batch.
- B1if
- The integration framework for SAP Business One, used for message-based integration with transformation, routing and monitoring.
- CM, CMT
- Cut and make, or cut, make and trim: the labour charge for making a garment, and a factory model where the buyer supplies the fabric and the factory charges only for making.
- Colourway
- One colour version of a style, with its own fabric shade and trims.
- Cut-over
- The planned switch from the old system to SAP Business One, around a fixed cut-off moment.
- DI API
- The Data Interface API: SAP Business One's COM library for reading and writing data, used by add-ons.
- DocEntry, DocNum
- A document's internal key, and the number people read from a numbering series. Integrations link on DocEntry.
- Down payment invoice
- An A/R document that records an advance to a liability account until it is applied to the final invoice.
- DTW
- Data Transfer Workbench: SAP's tool for importing CSV data into SAP Business One.
- DUPRO
- During-production inspection, done once part of the order is packed.
- Dye lot
- A batch of fabric dyed together; pieces from different dye lots can differ in shade and must not be mixed in one garment.
- Ex-factory
- The date goods leave the factory for shipment.
- Feature package (FP)
- A release of improvements to SAP Business One 10.0, named by year and month, such as FP 2602.
- FOB
- Free on board: the price of goods loaded at the port of shipment; in garment trade, the usual quoted price per piece.
- GSM
- Grams per square metre: the weight of fabric.
- Hypercare
- The period after go-live when the project team fixes issues daily.
- Item group
- A classification of items in SAP Business One that supplies defaults such as accounts.
- Lab dip
- A small dyed fabric sample sent to the buyer to approve a shade before bulk dyeing.
- Landed cost
- Every cost of bringing goods to the factory beyond the supplier's price: freight, insurance, duty, clearing, bank charges.
- Letter of credit (LC)
- A bank's promise to pay an exporter when documents matching the credit's terms are presented.
- Marker efficiency
- The share of fabric in a cutting marker that ends up in garment pieces.
- POM
- Points of measure: the garment measurements in a tech pack, with a tolerance per size.
- PP sample
- Pre-production sample: a garment in bulk fabric and trims that the buyer approves as the reference for production.
- Product tree
- SAP Business One's bill of materials, of type Production, Sales, Assembly or Template.
- Ratio pack
- A pack or carton holding sizes in a fixed ratio, for example 1 S, 2 M, 2 L, 1 XL.
- Resource
- In SAP Business One, a machine, labour pool or other capacity used by a production order, with a cost per time unit.
- Route stage
- A named step in a product tree and production order, such as cutting, sewing or finishing.
- Service Layer
- SAP Business One's OData web API, at /b1s/v1 (OData version 3) and /b1s/v2 (OData version 4).
- Shade band
- A set of approved shade references for a fabric colour, used to judge each new lot.
- SMV
- Standard minute value: the time a trained operator needs for one operation at a normal pace.
- Size/colour matrix
- A grid of colours by sizes used to create items and enter order quantities for each combination.
- Strike-off
- A sample of a print or embroidery on the actual fabric, approved before bulk.
- T&A calendar
- Time and action calendar: an order's milestones with planned dates worked back from ex-factory, actual dates and owners.
- TOP sample
- Top of production: the first bulk pieces, checked against the PP sample.
- Transaction notification
- The SBO_SP_TransactionNotification stored procedure, which can refuse a document before it is committed.
- UCP 600
- The ICC's rules for documentary credits, which most letters of credit follow.
- Units of measure group
- In SAP Business One, a base unit and alternative units with fixed conversions, assigned to items.
- User-defined field, table, object
- SAP Business One's ways to add fields to existing records and to add new records with their own forms.
·Checklists: an SAP Business One apparel implementation on one page
The checklists below repeat the decisions and checks from each part of this guide, in project order. The methodology page explains the method behind them for any ERP.
Discovery
Discovery is complete when every item below is ticked.
- Business type settled for each buyer: CMT, full package, or both; or brand, agent or own-label retailer.
- One decision owner named for each area.
- One workshop per department, walking a real recent order.
- All 52 fit-gap lines answered with evidence, decision and owner.
- Architecture decided: what SAP Business One owns, what runs in an operations layer.
- Variant approach, database, feature package, hosting and add-ons confirmed against the fit-gap.
Design
Design is complete when every item below is decided and written down.
- Item groups with valuation method; landed cost types with allocation methods.
- Item code convention and user-defined fields for style, colour, size and season.
- A units of measure group per fabric, with the inventory unit fixed.
- Batch = dye lot; batch attributes defined; default batch status Not Accessible.
- Size consumption source decided, and how product trees are generated.
- Route stages, resources and minutes; what stays in planning outside SAP Business One.
- Subcontract pattern: warehouses, processed items and service purchase orders.
- Inspection points, AQL plan source and override rights.
- Package types, carton rules and buyer documents per buyer.
- Currencies, down payments, LC records, chargeback reasons, e-invoicing.
Build, data and testing
Build, migration and testing are complete when every item below is proven on the go-live feature package.
- Configuration done in dependency order, on the go-live feature package.
- Extensions and add-ons listed with owners; transaction notification rules reviewed and commented.
- Integrations link on DocEntry, with one writer per field.
- Migration loaded with DTW in order, with a cut-off rule and signed totals.
- All 13 end-to-end scenarios passed by key users.
Go-live
Go-live is ready when every item below is in place.
- Training done per role, on the factory's own orders.
- Cut-over rehearsed once in full in a test company.
- Go-live date between seasons, away from year-end and audits.
- Go or no-go point and fall-back defined.
- Hypercare runs at least until the first month-end close in SAP Business One.
·Sources
SAP pages and documents were checked on 26 September 2026 against SAP Business One 10.0. Where a fact rests on a partner or community source rather than SAP's own documentation, the text says so.
- SAP, Working with SAP Business One Service Layer (document version 1.29, 2026-07-27): OData versions, login and session, paging, ETags, $batch, SQLQueries, webhooks from FP 2602, user-defined fields and objects, Service Layer and DI API — help.sap.com
- SAP, Service Layer API Reference, release 10.0 (entity sets) — help.sap.com
- SAP Help Portal, Consuming SAP Business One Service Layer — help.sap.com
- SAP, Platform Support Matrix SAP Business One (document version 1.39, 2026-08-28) — help.sap.com
- SAP Help Portal, Bill of Materials Types — help.sap.com · SAP Learning, Utilizing Bill of Materials in SAP Business One — learning.sap.com
- SAP Learning, Working with Units of Measure in SAP Business One — learning.sap.com · SAP consultant training, units of measure (menu path) — help.sap.com
- SAP Learning, Exploring the Inventory Valuation Methods in SAP Business One — learning.sap.com · SAP, How to Set Up and Use Serial/Batch Valuation Method (10.0) — help.sap.com
- SAP Help Portal, Batch Details window — help.sap.com · SAP Knowledge Base Article 3423633, Batch Status: Released, Not Accessible, Locked — support.sap.com
- SAP Help Portal, Item Properties setup — help.sap.com · Item Groups setup — help.sap.com
- SAP, How to Work with Resources and Production in SAP Business One (9.3) — help.sap.com · SAP Learning, Running the Production Process in SAP Business One — learning.sap.com
- SAP Learning, Exploring the Materials Requirements Planning (MRP) Process — learning.sap.com
- SAP Help Portal, Landed Costs setup — help.sap.com · SAP Learning, Managing Landed Costs During the Import Process — learning.sap.com
- SAP Help Portal, A/R Down Payment Invoice — help.sap.com · A/R Down Payment Invoices Process — help.sap.com
- SAP Learning, Implementing the Approval Processes in SAP Business One — learning.sap.com
- SAP Help Portal, Pick and Pack windows — help.sap.com
- SAP Help Portal, Data Transfer Workbench for SAP Business One — help.sap.com
- SAP Help Portal, Integration framework for SAP Business One — help.sap.com · SAP Business One SDK help center (DI API, UI API) — help.sap.com
- SAP, How to Package and Deploy SAP Business One Extensions for Lightweight Deployment (10.0) — help.sap.com
- SAP Community, The SP_TransactionNotification stored procedure — community.sap.com
- SAP Community, updating production orders and approving purchase requests via the Service Layer — community.sap.com · community.sap.com
- SAP Help Portal, What's New in 10.0 FP 2602 — help.sap.com · SAP Business One Blog, FP 2608 new features (partner) — sap-b1-blog.com
- Service Layer v1 and v2 (partner glossary) — sap-b1-blog.com · Web Client on both databases (partner) — vision33.com
- No standard item variants in SAP Business One (partner documentation) — sana-commerce.com · emerging-alliance.com
- Variant add-ons named as examples only — FashionNx wmsspl.com · iMatrix citixsys.com · Fashion for SAP Business One sap-b1-blog.com · Accelon accelontech.com
- Oracle NetSuite documentation: matrix items — oracle.com · Grid Order Management — oracle.com · Outsourced Manufacturing — oracle.com · costing methods — oracle.com
- Odoo documentation: product variants (18) — odoo.com · subcontracting resupply (18) — odoo.com · units of measure (19) — odoo.com · JSON-2 API (19) — odoo.com
- ISO 2859-1, Sampling procedures for inspection by attributes — iso.org
- AQL tables and acceptance numbers — qima.com · tetrainspection.com · inspection levels: qualityinspection.org
- UCP 600, documentary credits — uscib.org · tradefinanceglobal.com
- EDI transaction sets — 1edisource.com · celigo.com
Corrections. SAP Business One changes with each feature package, and a menu path, an API field or a feature boundary can move in a single release. If you find a statement here that your release contradicts, report a correction with the feature package and the page you checked; we correct the guide and note the change and its date at the top of this section. We re-check the SAP Business One facts in this chapter at least once a year and after each major feature package. Related chapters: Odoo, NetSuite, SAP S/4HANA for fashion and Dynamics 365 Business Central.
SAP, SAP Business One and SAP HANA are trademarks or registered trademarks of SAP SE, used here only to name the products. This guide is not endorsed by SAP SE. Microsoft SQL Server is a trademark of Microsoft. Oracle NetSuite, Odoo, FashionNx, iMatrix and Accelon are trademarks of their owners. Garment.io is named because MerchandiserOS integrates with it; this guide is not endorsed by Garment.io.