Dual Unit of Measure is needed!

Hi everybody , I wonder if ERPNext can support dual UOM for an item. this is often needed when measuring for example: liquids in liters or bottles (each) , also in steel manufacturing where we can sell a bundle or tons …many other examples.


Does the inbuilt UoM conversion not work for you ?

I agree, some businesses require 2 units of measure, and you cannot solve with just conversions. I’ve often seen this where the customer keeps track of “Containers”, or uses Catch Weight.

Here is an article that describes Catch Weight. TL;DR - You need to track quantity of Turkeys (each) and weight of Turkeys (pounds, kilos).

You can sometimes solve this with Lot Numbering/Batch Numbering. But sometimes you cannot, and you need 2 units of measure. 1 for mass/weight. 1 for container/box.

1 Like

Hi, unfortunately the unit conversion does not help in this case. Because as example the steel rebar bundles do not have the same weight. Selling takes place on weight basis but warehouse management considers bundles with an average weight of 2 tons per bundle. The same concept goes also for liquids, bottles and liters.


Same concept for tubulars. Valuation/billing is done by length but for warehouse management, number of units of a nominal length is tracked.

1 Like

Related post [feature request] Multiple UOM

Try Stock Entry Repack.
Purchase Invoice - Steel Tonne
Repack - Steel Tonne to Steel Bundle
Repack - Steel Bundle to Steel Rebar

If all the data was correct:

  • Stock accurately shows the total kilograms of metal, per Item Code.
  • Batches represent a single, variable-size bale.

Then at a minimum, you’d need to create a new, custom Report. As you say, something to show the combination of Stock UOM and Batch Bales.

But more likely, such a business would need more than just a few new Reports. If I was in this business, I’d anticipate a few more needs:

  1. A screen to help me split/combine bales when necessary (something a bit fancier than just a Stock Entry)
  2. During receiving, something to help me quickly create new Batches, and assign + split the incoming PO quantity. (example, PO says I’m receiving 100kg, but how will that be allocated into multiple Batches?)
    • Or perhaps the bundling of scrap metal doesn’t happen until after initial receiving. Maybe it’s some kind of “prep” work? In that case, I might want a brand new screen for allocating my scrap metal.
  3. For sales/transfer, something to smartly Pick material based on kilograms. For example, assume a customer wanted 2kg of metal. It would be nice if my ERP suggested the optimum picking would be:
    • 1 unit of Batch Z100 ( 0.33 kilograms)
    • 1 unit of Batch Z209 ( 1.00 kilograms)
    • 1 unit of Batch Z214 ( 0.67 kilograms)

To my knowledge, the above doesn’t exist in ERPNext yet. I’d probably want to develop it for my hypothetical scrap metal business.

1 Like

Good question. I don’t “think” it matters too much, Batch versus Serial.
Although if you anticipate using those features for other purposes someday, that might sway you in 1 direction or another.

I will note that native ERPNext code treats Serials in a more complicated way. They have more SQL columns, and more related Python code, when compared to Batch DocType. With that in mind, it might be somewhat easier to customize Batches.

I wish I had more concrete facts to share. But I’ve only worked with Dual UOM in ERPNext just once, a long time ago. And in that project, I inherited a lot of the (not-so-great) design from my predecessors. I’m scheduled to do a lot more in 2024, though.