Methodology
Supplier Pack & Order Quantity Planner methodology
Educational only: Business decision support, not accounting, tax or legal advice.
Privacy: Calculations run locally; Margin101 does not receive your commercial inputs.
Update policy: Reviewed when formulas or official dependencies change.
Scope: Market-neutral small-business planning using your own assumptions.
1. Formulas and units
netNeedUnits = maximum of zero and required units less stock and on-order unitsWhere
- requiredUnits
- Required units (whole units/replenishment plan)Source: User decision
- netNeedUnits
- Net units needed (units)Source: Calculated output
- orderUnits
- Required order units (units)Source: Calculated output
requiredPacks = maximum of minimum packs and net need rounded up by pack sizeWhere
- requiredUnits
- Required units (whole units/replenishment plan)Source: User decision
- packSizeUnits
- Supplier pack size (units/pack)Source: Business record
- minimumPacks
- Minimum packs (whole packs/order)Source: Business record
- netNeedUnits
- Net units needed (units)Source: Calculated output
- requiredPacks
- Required supplier packs (whole packs)Source: Calculated output
orderUnits = required packs ร pack sizeWhere
- requiredUnits
- Required units (whole units/replenishment plan)Source: User decision
- packSizeUnits
- Supplier pack size (units/pack)Source: Business record
- requiredPacks
- Required supplier packs (whole packs)Source: Calculated output
- orderUnits
- Required order units (units)Source: Calculated output
excessUnits = maximum of zero and order units less net needWhere
- netNeedUnits
- Net units needed (units)Source: Calculated output
- orderUnits
- Required order units (units)Source: Calculated output
- excessUnits
- Excess units after rounding (units)Source: Calculated output
shortfallUnits = maximum of zero and net need less order unitsWhere
- netNeedUnits
- Net units needed (units)Source: Calculated output
- orderUnits
- Required order units (units)Source: Calculated output
- shortfallUnits
- Remaining unit shortfall (units)Source: Calculated output
cashRequiredExTax = order units ร unit costWhere
- requiredUnits
- Required units (whole units/replenishment plan)Source: User decision
- unitCostExTax
- Unit cost (currency units/unit, ex tax)Source: Business record
- orderUnits
- Required order units (units)Source: Calculated output
- cashRequiredExTax
- Cash required (currency units, ex tax)Source: Calculated output
storageFeasible = order units are within storage capacityWhere
- storageCapacityUnits
- Storage capacity (whole units/order storage capacity)Source: User assumption
- orderUnits
- Required order units (units)Source: Calculated output
- storageFeasible
- Storage constraint (feasibility status)Source: Calculated output
- orderFeasible
- Overall order feasibility (feasibility status)Source: Calculated output
cashFeasible = cash required is within cash capWhere
- requiredUnits
- Required units (whole units/replenishment plan)Source: User decision
- cashCapExTax
- Cash cap (currency units/supplier order, ex tax)Source: User decision
- cashRequiredExTax
- Cash required (currency units, ex tax)Source: Calculated output
- cashFeasible
- Cash constraint (feasibility status)Source: Calculated output
orderFeasible = storage and cash constraints are both satisfiedWhere
- orderUnits
- Required order units (units)Source: Calculated output
- storageFeasible
- Storage constraint (feasibility status)Source: Calculated output
- cashFeasible
- Cash constraint (feasibility status)Source: Calculated output
- orderFeasible
- Overall order feasibility (feasibility status)Source: Calculated output
Money inputs and outputs use the currency selected in the scenario without changing the canonical methodology. Rates, margins, utilisation and buffers are entered as percentages and converted to decimal values for calculation.
2. Worked example
Input assumptions
The labelled rows below are formatted directly from the exact shared engine using the visible default inputs.
- Required units
- 90 whole units/replenishment plan
- Supplier pack size
- 12 units/pack
- Minimum packs
- 5 whole packs/order
- Current usable stock
- 0 whole units on hand/replenishment plan
- Confirmed on-order units
- 0 whole units on order/replenishment plan
- Unit cost
- 8 currency units/unit, ex tax
- Storage capacity
- 100 whole units/order storage capacity
- Cash cap
- 1,000 currency units/supplier order, ex tax
Calculation and outputs
Net units needed
netNeedUnits = maximum of zero and required units less stock and on-order units- Required units
- 90 whole units/replenishment plan
- Current usable stock
- 0 whole units on hand/replenishment plan
- Confirmed on-order units
- 0 whole units on order/replenishment plan
- Required supplier packs
- 8 whole packs
- Required order units
- 96 units
- Cash required
- 768 currency units, ex tax
- Overall order feasibility
- Yes feasibility status
Engine result: 90 units
Required supplier packs
requiredPacks = maximum of minimum packs and net need rounded up by pack size- Supplier pack size
- 12 units/pack
- Minimum packs
- 5 whole packs/order
- Net units needed
- 90 units
Engine result: 8 whole packs
Required order units
orderUnits = required packs ร pack size- Required units
- 90 whole units/replenishment plan
- Supplier pack size
- 12 units/pack
- Minimum packs
- 5 whole packs/order
- Required supplier packs
- 8 whole packs
- Cash required
- 768 currency units, ex tax
Engine result: 96 units
Excess units after rounding
excessUnits = maximum of zero and order units less net need- Confirmed on-order units
- 0 whole units on order/replenishment plan
- Net units needed
- 90 units
- Required order units
- 96 units
- Overall order feasibility
- Yes feasibility status
Engine result: 6 units
Remaining unit shortfall
shortfallUnits = maximum of zero and net need less order units- Confirmed on-order units
- 0 whole units on order/replenishment plan
- Net units needed
- 90 units
- Required order units
- 96 units
- Overall order feasibility
- Yes feasibility status
Engine result: 0 units
Cash required
cashRequiredExTax = order units ร unit cost- Confirmed on-order units
- 0 whole units on order/replenishment plan
- Unit cost
- 8 currency units/unit, ex tax
- Required order units
- 96 units
- Overall order feasibility
- Yes feasibility status
Engine result: 768 currency units, ex tax
Storage constraint
storageFeasible = order units are within storage capacity- Confirmed on-order units
- 0 whole units on order/replenishment plan
- Storage capacity
- 100 whole units/order storage capacity
- Required order units
- 96 units
- Overall order feasibility
- Yes feasibility status
Engine result: Yes feasibility status
Cash constraint
cashFeasible = cash required is within cash cap- Required units
- 90 whole units/replenishment plan
- Cash cap
- 1,000 currency units/supplier order, ex tax
- Required supplier packs
- 8 whole packs
- Required order units
- 96 units
- Cash required
- 768 currency units, ex tax
Engine result: Yes feasibility status
Overall order feasibility
orderFeasible = storage and cash constraints are both satisfied- Storage capacity
- 100 whole units/order storage capacity
- Cash cap
- 1,000 currency units/supplier order, ex tax
- Cash required
- 768 currency units, ex tax
- Storage constraint
- Yes feasibility status
- Cash constraint
- Yes feasibility status
Engine result: Yes feasibility status
Example
The labelled rows below are formatted directly from the exact shared engine using the visible default inputs.
- Net units needed
- 90
- Required supplier packs
- 8
- Required order units
- 96
- Excess units after rounding
- 6
- Remaining unit shortfall
- 0
- Cash required
- 768 currency units
- Storage constraint
- Within entered constraint
- Cash constraint
- Within entered constraint
- Overall order feasibility
- Within entered constraint
The required order units is 96.
Interpretation
Supplier packs are indivisible in this decision; do not truncate a fractional pack requirement.
3. Validation and boundary checks
- All inputs must be finite and remain inside the visible validation boundaries.
- Whole-unit and whole-day fields reject fractional values.
- Percentages remain inside the closed range from 0% to 100%.
- Invalid denominators return an explicit unavailable result or fail closed; NaN and Infinity are never displayed.
- Pack size must be positive and packs, stock, on-order, required units and storage capacity must be whole units.
- The required order is never silently reduced when storage or cash is insufficient.
- Required units minimum
requiredUnits โฅ 0 whole units/replenishment planโ A lower value is rejected before calculation.- Required units maximum
requiredUnits โค 100,000,000 whole units/replenishment planโ A higher value is rejected before calculation.- Supplier pack size minimum
packSizeUnits โฅ 1 units/packโ A lower value is rejected before calculation.- Supplier pack size maximum
packSizeUnits โค 100,000,000 units/packโ A higher value is rejected before calculation.- Minimum packs minimum
minimumPacks โฅ 0 whole packs/orderโ A lower value is rejected before calculation.- Minimum packs maximum
minimumPacks โค 100,000,000 whole packs/orderโ A higher value is rejected before calculation.- Current usable stock minimum
currentUsableStockUnits โฅ 0 whole units on hand/replenishment planโ A lower value is rejected before calculation.- Current usable stock maximum
currentUsableStockUnits โค 100,000,000 whole units on hand/replenishment planโ A higher value is rejected before calculation.- Confirmed on-order units minimum
confirmedOnOrderUnits โฅ 0 whole units on order/replenishment planโ A lower value is rejected before calculation.- Confirmed on-order units maximum
confirmedOnOrderUnits โค 100,000,000 whole units on order/replenishment planโ A higher value is rejected before calculation.- Unit cost minimum
unitCostExTax โฅ 0 currency units/unit, ex taxโ A lower value is rejected before calculation.- Unit cost maximum
unitCostExTax โค 10,000,000 currency units/unit, ex taxโ A higher value is rejected before calculation.- Storage capacity minimum
storageCapacityUnits โฅ 0 whole units/order storage capacityโ A lower value is rejected before calculation.- Storage capacity maximum
storageCapacityUnits โค 100,000,000 whole units/order storage capacityโ A higher value is rejected before calculation.- Cash cap minimum
cashCapExTax โฅ 0 currency units/supplier order, ex taxโ A lower value is rejected before calculation.- Cash cap maximum
cashCapExTax โค 10,000,000 currency units/supplier order, ex taxโ A higher value is rejected before calculation.
4. Assumptions and source classification
- All inventory, sales, cost, target, capacity and cash values are supplied by the user.
- Money inputs use one consistent ex-tax currency basis and records refer to the same cohort or planning period.
- The engine retains raw precision; display formatting never feeds back into calculation.
- No jurisdiction, provider fee, industry benchmark or current policy value is embedded.
This planner has no current policy-data dependency. Its commercial assumptions are user supplied. Registered family-level regression suites exercise the shared business-logic engine and worked-result reconciliation.
5. Limitations
- Supplier pack size, minimum order and unit cost must be verified against the current quote.
- Storage and cash flags test only the entered caps and do not alter the required pack order.
- Lead time, supplier availability, demand variability and shelf life require separate planning.
This is educational decision support, not tax, accounting, legal or financial advice. Check the treatment of your actual transactions under the rules that apply to your business and seek qualified advice where appropriate.
6. Update and evidence policy
Registered family-level suites test formula invariants and example reconciliation; the release ledger records that coverage without claiming a separate oracle for every line of public copy. There is no official threshold or benchmark to refresh for this planner. Commercial inputs remain user-supplied because they vary by business and contract.
Change history
- : Initial public release of the Supplier Pack and Order Quantity planner and methodology.
Related reading
Guides to interpret the decision and its assumptions.
- How to Plan Stock Purchases Before a Seasonal Campaign
Reconcile stock, demand assumptions, supplier dates, buying budget and downside cash before committing to a seasonal purchase.
Read guide