Skip to content
Toss ERP user manual
Sign in

Chapter 10 — Manufacturing (MRP)

Module code: MRP Features: mrp_dashboard, mrp_bom, mrp_mo, mrp_planning, mrp_costing, mrp_reports Home: /mrp/


10.1 What the module is for

Manufacturing turns materials into finished goods and records what that cost. A manufacturing order consumes components out of stock, absorbs the labour and machine time of the operations performed, and produces finished goods valued at material plus conversion cost.

The costing is the part worth understanding, because it is what makes the module more than a stock movement:

   Components   ──issue──►   Work in progress   ──receive──►  Finished goods
   (materials)                      ▲                          (carrying both)
                                    │
                    Labour and machine time absorbed
                       from the routing operations

   On close, whatever is left in work in progress is
   cleared to a production variance account.

10.2 Concepts

Concept Meaning
Work centre A machine or station where work happens. Carries what one hour there costs.
Operation (routing step) A step in making the product: mixing, baking, packing. Names a work centre, a duration and a crew size.
Bill of materials (BOM) The recipe: which components in what quantity make how much of the finished item, plus the operations.
Manufacturing order (MO) An instruction to make a stated quantity.
Unbuild Taking a completed batch apart again, returning components to stock.

Manufacturing order states

 Draft ──confirm──► Confirmed ──start──► In progress ──► Done
                                                          │
                                              cancel ─────┴──► Cancelled

10.3 Setup

1. Work centres

/mrp/work-centres/           list
/mrp/work-centres/new/       create

A work centre states what one hour there costs, built from what it is actually made of rather than a single guessed number:

Field Meaning
Power (kW) The machine's power draw
Electricity rate Cost per unit of electricity
Labour rate per hour The cost of one worker-hour
Default workers The usual crew size at this station
Other cost per hour Anything else — consumables, maintenance provision

The hourly rate is then: machine cost (power × tariff) + labour (rate × crew) + other. The form shows a live calculation as you type, so you can see the effect of each figure.

Where a rate has been negotiated rather than calculated, tick use manual rate and enter it directly.

Why the split matters: the same sealing machine costs a different amount per hour on a step that needs three people than on one that needs five. Because the work centre states the cost of one worker-hour and the operation states the crew, one work centre serves both correctly.

2. Bills of materials

/mrp/boms/                   list
/mrp/boms/new/               create
/mrp/boms/<id>/edit/         edit
  1. Select New BOM.
  2. Header: - Product — what is being made. - Quantity — how much this recipe produces. A recipe for 100 kg is easier to maintain than one for 1 kg. - Type — a normal BOM, or a kit/phantom BOM, which is exploded into its components rather than being made as a stocked item. - Is default — tick this on the recipe that should be offered automatically when a manufacturing order is created for this product.
  3. Component lines — for each material: - The item and the quantity per BOM quantity. - Scrap percentage, if a known proportion is lost in the process. The order will then issue enough to allow for it.
  4. Operations — for each step: - The work centre. - The duration in minutes per batch. - The crew size, if it differs from the work centre's usual crew.
  5. Save.

The BOM form shows the resulting standard cost per unit, the split between material and routing, the time per batch and how many orders have used this recipe. Check the standard cost looks right before using it — every variance report is measured against it.

3. Warehouse manufacturing steps

On the warehouse (Chapter 8) set the number of manufacturing steps:

Steps Flow
1 Straight from stock into production and back
2 Components are first moved to a pre-production area
3 Finished goods are additionally moved to a post-production area before storage

Choose the one that matches how the floor actually works.


10.4 Creating a manufacturing order

Screen: /mrp/manufacturing-orders/new/

  1. Select New manufacturing order.
  2. Choose the product. The default BOM is offered automatically; change it if you are making this batch to a different recipe.
  3. Enter the quantity to produce.
  4. Set the scheduled date and the warehouse.
  5. Save. The order is in Draft.

10.5 Running an order

Confirm

Screen: /mrp/manufacturing-orders/<id>/confirm/

Confirming explodes the BOM: the component requirement is calculated for the quantity ordered, the material issue and finished-goods receipt transfers are drafted, and any kit components are expanded into their parts.

The order page now shows each component with its required quantity, how much has been issued, and how much it is short by.

Start

Screen: /mrp/manufacturing-orders/<id>/start/

Marks the order as in progress and issues components to work in progress. Partial issue is allowed — issue what you have and issue the rest later.

Issue extra material

Screen: /mrp/manufacturing-orders/<id>/extra-issue/

When a batch needs more than the recipe said — a spill, a rework — issue the extra here rather than editing the BOM. The BOM stays the standard; the extra shows up as variance, which is the truthful account of what happened.

Receive finished goods

Screen: /mrp/manufacturing-orders/<id>/receive/

  1. Select Receive.
  2. Enter the quantity actually produced. Partial receipts are allowed.
  3. Validate the receipt.

Finished goods are valued at what this batch actually cost — the material issued plus the labour absorbed — not at the catalogue cost.

Record operations

Screen: /mrp/manufacturing-orders/<id>/operations/

Record the time actually spent at each work centre. Labour is absorbed into work in progress from these figures, so an order with no operation time recorded will carry material cost only.

The order page shows the machine, labour and other split, and the rate per hour used, with the breakdown behind it. The rates are snapshotted when the order is confirmed — a later change to electricity prices does not restate a batch you have already made.

Close

Screen: /mrp/manufacturing-orders/<id>/close/

Closing finishes the order.

  • If less was produced than ordered — a short close — you must enter a comment explaining why. This is a control, not a formality: the comment is what an auditor reads.
  • Whatever is still sitting in work in progress is cleared to the production variance account, and the order page shows the amount and links to the entry. A write-off is never silent.

Cancel

Screen: /mrp/manufacturing-orders/<id>/cancel/

Available while the order has not consumed or produced anything meaningful.


10.6 Unbuild: taking a batch apart

Screen: /mrp/manufacturing-orders/<id>/unbuild/

Sometimes a completed batch must be reversed — it failed inspection, or was made in error. Unbuild runs the whole thing backwards: finished goods come off stock, components go back on, and the labour absorbed is reversed.

  1. Open the closed order and select Unbuild.
  2. Enter the quantity to take apart. Partial unbuilds are allowed, and an order can be unbuilt more than once.
  3. The confirmation page shows exactly what will come back before you commit.
  4. Confirm.

Components return at the cost they were issued at, read from the order's own valuation layers. Today's price would invent a gain that never happened.

The moving-average warning

If the finished item is valued at moving average, the confirmation page tells you so explicitly, naming the average it will come off stock at and the cost the batch was built at. Under moving average every unit leaves at the running average by definition, so the batch's own cost is not recoverable and the difference goes to production variance. This is correct behaviour, not a fault — but a large variance line nobody explained would look like one, so the page explains it first.

Unbuild is refused if the order is not closed, if you ask for more than was produced, if more than remains unbuilt, or if the finished goods are no longer on hand. A shipped batch cannot be taken apart.


10.7 Planning

Screen: /mrp/planning/

The planning wizard looks at demand and proposes manufacturing orders to meet it, using the default BOM for each product. Review the proposals, adjust quantities and dates, and create the orders you want.


10.8 Reports

Home: /mrp/reports/

Grouped by the question they answer.

Running the floor

Report Answers
MO status What is open, at what stage, and how late
Component availability Which orders will stall for want of materials
Work centre load Hours booked and cost absorbed per centre, planned against actual, split by machine, labour and other

What production cost

Report Answers
Production cost analysis Per closed batch: material, labour, variance and unit cost against the BOM standard
Yield and consumption Planned against produced, the cost of any shortfall, and material used against requirement scaled to actual output. The second figure is where quiet margin leaks show up.
WIP ageing What is tied up in open orders, bucketed by age

Reference

Report Answers
BOM structure The full exploded recipe, including sub-assemblies

10.9 Accounts used

Account Used for
Work in progress Holds material and labour while an order is running
Labour overheads absorbed Credited as labour is absorbed into work in progress. Deliberately separate from the direct labour account payroll posts to — the gap between the two is under- or over-absorption, which a single merged account would hide.
Production variance Where a short close and any residue is written off

The labour and variance accounts are created the first time they are needed, so an existing chart of accounts does not have to be re-seeded.


10.10 Routine

Daily
  [ ] Check component availability for orders due this week
  [ ] Record operation time for yesterday's work
  [ ] Receive finished goods the same day they are made

Weekly
  [ ] Close completed orders, with a comment on every short close
  [ ] Review WIP ageing — an old open order usually means a forgotten close

Monthly
  [ ] Review production cost analysis against the BOM standards
  [ ] Investigate yield and over-consumption
  [ ] Confirm work in progress clears to zero for closed orders

10.11 Troubleshooting

Symptom Cause Fix
Confirm produces no components The product has no BOM, or none is marked default Create the BOM and tick is default
Receive button is disabled A full-size receipt draft is already open Open the existing draft and validate it rather than creating a second
Finished goods valued too low Operation time was never recorded, so no labour was absorbed Record the operations, then receive
Work in progress does not clear on close Material issued does not match what was produced Check for unissued components or an unrecorded extra issue; the residue is written to variance with a link to the entry
A large variance on close Short close, over-consumption, or a moving-average effect on unbuild Read the write-off card on the order — it names the amount and links to the entry
Work centre rate looks wrong Crew size on the operation, or the tariff on the centre The rate breakdown on the order shows which component is out
A confirmed order shows old rates Rates are snapshotted at confirmation, by design Cancel and re-create the order if it must use new rates
Unbuild is refused Order not closed, quantity too high, or goods no longer on hand The message names which condition failed