Skip to Content
Odoo Menu
  • Sign in
  • Try it free
  • Apps
    Finance
    • Accounting
    • Invoicing
    • Expenses
    • Spreadsheet (BI)
    • Documents
    • Sign
    Sales
    • CRM
    • Sales
    • POS Shop
    • POS Restaurant
    • Subscriptions
    • Rental
    Websites
    • Website Builder
    • eCommerce
    • Blog
    • Forum
    • Live Chat
    • eLearning
    Supply Chain
    • Inventory
    • Manufacturing
    • PLM
    • Purchase
    • Maintenance
    • Quality
    Human Resources
    • Employees
    • Recruitment
    • Time Off
    • Appraisals
    • Referrals
    • Fleet
    Marketing
    • Social Marketing
    • Email Marketing
    • SMS Marketing
    • Events
    • Marketing Automation
    • Surveys
    Services
    • Project
    • Timesheets
    • Field Service
    • Helpdesk
    • Planning
    • Appointments
    Productivity
    • Discuss
    • Approvals
    • IoT
    • VoIP
    • Knowledge
    • WhatsApp
    Third party apps Odoo Studio Odoo Cloud Platform
  • Industries
    Retail
    • Book Store
    • Clothing Store
    • Furniture Store
    • Grocery Store
    • Hardware Store
    • Toy Store
    Food & Hospitality
    • Bar and Pub
    • Restaurant
    • Fast Food
    • Guest House
    • Beverage Distributor
    • Hotel
    Real Estate
    • Real Estate Agency
    • Architecture Firm
    • Construction
    • Property Management
    • Gardening
    • Property Owner Association
    Consulting
    • Accounting Firm
    • Odoo Partner
    • Marketing Agency
    • Law firm
    • Talent Acquisition
    • Audit & Certification
    Manufacturing
    • Textile
    • Metal
    • Furnitures
    • Food
    • Brewery
    • Corporate Gifts
    Health & Fitness
    • Sports Club
    • Eyewear Store
    • Fitness Center
    • Wellness Practitioners
    • Pharmacy
    • Hair Salon
    Trades
    • Handyman
    • IT Hardware & Support
    • Solar Energy Systems
    • Shoe Maker
    • Cleaning Services
    • HVAC Services
    Others
    • Nonprofit Organization
    • Environmental Agency
    • Billboard Rental
    • Photography
    • Bike Leasing
    • Software Reseller
    Browse all Industries
  • Community
    Learn
    • Tutorials
    • Documentation
    • Certifications
    • Training
    • Blog
    • Podcast
    Empower Education
    • Education Program
    • Scale Up! Business Game
    • Visit Odoo
    Get the Software
    • Download
    • Compare Editions
    • Releases
    Collaborate
    • Github
    • Forum
    • Events
    • Translations
    • Become a Partner
    • Services for Partners
    • Register your Accounting Firm
    Get Services
    • Find a Partner
    • Find an Accountant
    • Meet an advisor
    • Implementation Services
    • Customer References
    • Support
    • Upgrades
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +1 (650) 691-3277
    Get a demo
  • Pricing
  • Help
You need to be registered to interact with the community.
All Posts People Badges
Tags (View all)
odoo accounting v14 pos v15
About this forum
You need to be registered to interact with the community.
All Posts People Badges
Tags (View all)
odoo accounting v14 pos v15
About this forum
Help

Catch weight problem

Subscribe

Get notified when there's activity on this post

This question has been flagged
deliverybarcodeiventory
160 Views
Avatar
Jakub Lovas

Hello,

we are implementing Odoo in company that sells and manufactures ice creams. 

They have 3 types on containers (packages) each of them has theoretical weight. Problem is that in UoM i have one container = 4.8 kg. But after manufacturing the weight may be like 4.6, 4.7, 4.9. I have UoM = kg on product because invoice is based on weight, track inventory by lots and invoicing based on delivery qty.

When i make sales order for 3 containers (aprox 14.4 kg) and delivery i have problem with scanning products in barcode. I pick 4,6 + 4,7 + 4,9 = 14,2 kg and there is still like 0.2 kg missing. Also package on SO is like 2,97 not 3 full packages.

May I ask for help, please?

I am in Odoo 19 on odoo.sh

Best regards,

Jakub

0
Avatar
Discard
marwan, Marawan Ahmed

You’re facing a classic variable-weight packaging (catch weight) problem in Odoo, which is common in food industries like ice cream, meat, cheese, etc. The issue comes from mixing theoretical container quantity (4.8 kg) with real manufacturing weight (4.6 / 4.7 / 4.9) while invoicing and inventory are based on kg and barcode scanning is based on containers.

Here’s a clear and practical solution used in real Odoo food manufacturing implementations.

🎯 Root of the Problem

You currently have:

  • Product UoM = kg (correct for invoicing)

  • Container = 4.8 kg theoretical

  • Manufacturing produces real weights

  • Sales order = 3 containers

  • Delivery scans 3 lots

  • Real weight = 14.2 kg instead of 14.4

  • Odoo shows:

Missing 0.2 kg

2.97 packages instead of 3

This happens because:

Odoo calculates based on theoretical UoM conversion instead of real lot weight.

So the system expects:

3 × 4.8 = 14.4 kg

But real production is:

4.6 + 4.7 + 4.9 = 14.2

✅ Correct Industry Approach

In food manufacturing, you should not use container as UoM.

Instead:

Product UoM = kg

and

Container = Packaging

not UoM.

🧩 Recommended Odoo Design

Step 1 — Product UoM

Product:

Ice Cream Vanilla

UoM = kg

Purchase UoM = kg

Inventory UoM = kg

This is correct already.

Step 2 — Use Packaging instead of UoM

Go to:

Product → Packaging

Create:

Container Small = 4.8 kg

Container Medium = 9.6 kg

Container Large = 12 kg

Now container is only:

Packaging

not UoM.

Step 3 — Manufacturing

When producing:

You create lots like:

Lot 001 → 4.6 kg

Lot 002 → 4.7 kg

Lot 003 → 4.9 kg

Each lot has real weight.

Stock becomes:

4.6

4.7

4.9

Correct.

Step 4 — Sales Order

Instead of:

3 containers

You sell:

Ice Cream = 14.4 kg (approx)

or

3 containers (informational only)

but system tracks kg.

Step 5 — Barcode Picking

During delivery:

Scan:

Lot 001 → 4.6

Lot 002 → 4.7

Lot 003 → 4.9

Odoo automatically calculates:

Total delivered = 14.2 kg

Delivery validated.

Invoice = 14.2 kg.

No missing quantity.

No 2.97 packages.

Problem solved.

📦 Container Still Visible on Sales

If client wants:

3 containers

you can add:

custom field

Number of Containers

or

Packaging on SO

This is informational only.

Invoice still based on kg.

🧠 Best Practice in Food Industry

Always:

Inventory = Weight

Sales = Weight

Invoice = Weight

Lots = Real Weight

Packaging = Container

⚙️ Better Advanced Solution

If they insist on:

sell 3 containers

but invoice real weight,

you need Catch Weight system.

This is usually done using:

OCA Catch Weight module

Odoo Community Association

Module:

stock_catch_weight

sale_catch_weight

mrp_catch_weight

This allows:

  • Sell containers

  • Deliver lots

  • Invoice real weight

  • Barcode scan correctly

  • No quantity mismatch

This is the cleanest solution.

🧪 Example Workflow

Sales

3 containers

System calculates:

expected = 14.4

Delivery

Scan:

4.6

4.7

4.9

System:

delivered = 14.2

Invoice

14.2 kg

Customer pays real weight.

🚨 Important

Never use:

1 container = 4.8 kg

as UoM conversion.

Because Odoo expects exact math.

And food production never gives exact weight.

✅ Recommended Configuration

Product

UoM = kg

Tracking = Lots

Invoicing = Delivered Quantity

Packaging = Container

Manufacturing

Produce lots with real weight.

Sales

Sell kg or containers (info only)

Delivery

Scan lots

Invoice real weight.

📊 Final Recommendation

Best implementation in Odoo 19 on odoo.sh:

Option 1 (Simple and Fast)

Use:

  • kg as UoM

  • packaging for containers

  • sell weight

  • scan lots

✔ No mismatch

✔ No barcode issue

✔ No 2.97 containers

Option 2 (Professional Food Industry)

Install Catch Weight modules

✔ Sell containers

✔ Deliver weight

✔ Invoice real weight

✔ Full automation

❓ Quick Question

Does the company insist on selling 3 containers (not kg) on the Sales Order, or they are okay with selling kg and showing containers only for reference?

Enjoying the discussion? Don't just read, join in!

Create an account today to enjoy exclusive features and engage with our awesome community!

Sign up
Related Posts Replies Views Activity
FedEx Ground not an option
delivery
Avatar
Avatar
2
Mar 26
434
Error with Check Status
delivery
Avatar
0
Sep 25
1444
Can I remove the "Product Barcode Lookup" module from my database? Solved
barcode
Avatar
Avatar
Avatar
2
Sep 25
1382
How can I customize product labels to show additional information?
barcode
Avatar
Avatar
Avatar
2
Sep 25
1934
How to manage deliveries with our own fleet Solved
delivery
Avatar
Avatar
Avatar
Avatar
Avatar
4
Jul 25
4342
Community
  • Tutorials
  • Documentation
  • Forum
Open Source
  • Download
  • Github
  • Runbot
  • Translations
Services
  • Odoo.sh Hosting
  • Support
  • Upgrade
  • Custom Developments
  • Education
  • Find an Accountant
  • Find a Partner
  • Become a Partner
About us
  • Our company
  • Brand Assets
  • Contact us
  • Jobs
  • Events
  • Podcast
  • Blog
  • Customers
  • Legal • Privacy
  • Security
الْعَرَبيّة Català 简体中文 繁體中文 (台灣) Čeština Dansk Nederlands English Suomi Français Deutsch हिंदी Bahasa Indonesia Italiano 日本語 한국어 (KR) Lietuvių kalba Język polski Português (BR) română русский язык Slovenský jazyk Slovenščina Español (América Latina) Español Svenska ภาษาไทย Türkçe українська Tiếng Việt

Odoo is a suite of open source business apps that cover all your company needs: CRM, eCommerce, accounting, inventory, point of sale, project management, etc.

Odoo's unique value proposition is to be at the same time very easy to use and fully integrated.

Website made with

Odoo Experience on YouTube

1. Use the live chat to ask your questions.
2. The operator answers within a few minutes.

Live support on Youtube
Watch now