- Home
- Apps
- Specialized Solutions
- Kanban Replenishment & 2-Bin System
Illustrative previewVisual Kanban and two-bin pull replenishment for production lines,
so line-side components flow on real consumption signals instead of MRP procurement noise. Build-to-order and supported by
ECOSIRE on Odoo 17, 18, and 19.
What is Kanban Replenishment & 2-Bin System?
Visual Kanban and two-bin pull replenishment for production lines, so line-side components flow on real consumption signals instead of MRP procurement noise. Build-to-order and supported by ECOSIRE on Odoo 17, 18, and 19. Built to order by ECOSIRE for Odoo 17, 18, 19 — indicative price from $999.00 USD; request a quote for a scoped proposal.
Key Features
Built to order, done for you
No DIY setup — a working app, built, installed and supported by ECOSIRE.
- 1
You order
Start with a one-time build price. We scope it with you at kickoff.
- 2
We build & install
ECOSIRE builds, configures and installs it on your Odoo.
- 3
Go live + support
You go live in about one working week, with two weeks of go-live support. Defects in the code we deliver are fixed free of charge.
Technical Specifications
- Odoo Compatibility
- Odoo 17, Odoo 18, Odoo 19
- Editions
- Enterprise & Community
- License
- Licence confirmation required
- Python Requirement
- Python 3.10+
- Database
- PostgreSQL 12+
About this Product
Lean shops that run pull-based line replenishment quickly hit the edge of what Odoo does natively. Odoo's stock.warehouse.orderpoint min/max reordering is quantity-based and warehouse-centric — it fires on a global on-hand threshold, not on a physical empty-bin event at a specific line-side location. There is no first-class concept of a Kanban card, a two-bin loop, or a sized supermarket buffer. Teams end up bolting pull discipline onto spreadsheets and laminated cards, while MRP keeps generating procurement suggestions that ignore the shop-floor signal. The result is either stockouts at the line or piles of WIP nobody asked for.
ECOSIRE builds a dedicated Kanban and two-bin replenishment layer as a proper Odoo module. We add new models — a Kanban loop (ecosire.kanban.loop) that binds a product.product, a consuming line-side stock.location, a source supermarket/store location, a container/bin quantity, and a card count — plus a card/bin state model that tracks each physical bin as full, in_use, or empty. @api.depends computed fields derive loop-level metrics (cards in circulation, quantity exposed, coverage in hours) so planners see the loop health, not just raw stock. When a bin empties, the pull signal creates the appropriate stock.move / internal stock.picking from the supermarket to the line (or a purchase/manufacturing signal at the loop's upstream boundary), so replenishment is driven by consumption, not by an orderpoint sweep.
The empty-bin trigger is where the two-bin discipline becomes real. Operators scan a bin's barcode (or a QWeb-printed Kanban card) from an Odoo barcode-friendly view or a lightweight OWL screen; the scan flips that bin to empty and releases the pull. We wire base.automation automated actions and server actions so that reaching the reorder point in a loop kicks off the transfer automatically, and Community-vs-Enterprise differences are handled cleanly — the module works on Community, and where Enterprise-only apps (like the native Barcode app or Studio) are present we integrate with them rather than duplicate them. Security is enforced with ir.model.access.csv plus record rules so line supervisors, material handlers, and planners each see the loops relevant to their work center, and everything is reachable over the standard XML-RPC / JSON-RPC API for integration with MES, andon, or external scanners.
Because loops need to be sized, not guessed, we include Kanban loop sizing recommendations: a compute that reads recent consumption (average daily usage and variability from stock.move history) against replenishment lead time and container size, and suggests the number of cards to keep the loop stable without over-buffering. Planners get a concrete "you are running N cards, the model suggests M" view, plus a QWeb report and printable cards for the physical board.
This is a build-to-order engagement, not an instant download. After you request a quotation we run a short scoping call to confirm your loops, line-side locations, supermarket layout, and Odoo edition, then build the module against your version. Typical delivery is one working week from confirmed scope. You receive the installable source for your Odoo version (17.0, 18.0, or 19.0), UAT on a staging database with a rollback plan, installation and configuration on your environment, documentation, a training session, and a post-go-live support window.
What you get
- Installable module source code targeted to your Odoo edition and version (17.0, 18.0, or 19.0), delivered as a clean addon with `__manifest__.py`
- Installation and configuration on your environment, including loop, supermarket, and line-side location setup
- UAT on a staging database with a documented rollback plan before any production change
- Technical documentation: data model, `base.automation` rules, security matrix, and XML-RPC/JSON-RPC integration notes
- End-user guide covering scanning, bin states, and reading loop health, plus a live training session for handlers and planners
- Git repository handover with commit history and tagged release for your version
- Post-go-live support window for defect fixes and configuration questions
- Sample data and a seeded demonstration loop to validate the pull flow on staging
Who this is for
Lean / Continuous-Improvement Manager
Owns the pull system and wants Kanban and two-bin discipline enforced in Odoo instead of on laminated cards, with loop sizing grounded in real consumption data rather than gut feel.
Production / Line Supervisor
Needs the line fed on time without babysitting MRP. Wants a clear board of which loops are starved or over-carded and a one-scan replenishment action operators can run from the floor.
Materials / Warehouse Planner
Manages the line-side supermarket and upstream replenishment. Wants pull signals to drive internal transfers and purchase/manufacturing triggers so buffers stay lean and coverage stays visible.
ERP / Odoo Administrator
Responsible for keeping the module maintainable across upgrades. Cares about clean models, record-rule security, API access for MES/andon, and Community-vs-Enterprise compatibility.
How Kanban Replenishment & 2-Bin System Compares
| Criterion | ECOSIRE | Custom Build | Competitor | Odoo Native |
|---|---|---|---|---|
| Replenishment trigger | Physical empty-bin scan releases the pull signal | Whatever your developer wires up | Usually still min/max quantity rules | On-hand threshold via orderpoint sweep |
| Two-bin loop model | First-class loop + bin-state model | Built from scratch each time | Rarely a true two-bin concept | Not present |
| Loop sizing | Consumption-based card-count recommendation | Depends on scope and budget | Manual, if offered at all | Manual min/max entry |
| Line-side supermarket | Dedicated store locations per loop | Possible but bespoke | Generic locations only | Warehouse-centric locations |
| Fit to your process | Built to your loops and lines in scoping | Fully bespoke, higher cost/time | Fit your process to the module | Configuration only |
| Odoo version support | Built for 17.0, 18.0, or 19.0 | Whatever you target | Varies; often lags versions | Ships with core |
| API / MES integration | XML-RPC/JSON-RPC loops and bin events | Add it if specified | Limited or undocumented | Generic stock endpoints only |
| Support & handover | Post-go-live window + git repo handover | Per your contract | Vendor SLA, no source | Community/Enterprise support |
Frequently Asked Questions about Kanban Replenishment & 2-Bin System
How long does delivery take?
This is a build-to-order module, not an instant download. After you request a quotation we run a short scoping call, then build against your Odoo version. Typical delivery is one working week from confirmed scope, depending on how many loops and integration points are involved.
How is this different from Odoo's built-in reordering rules?
Native `stock.warehouse.orderpoint` min/max rules are quantity- and warehouse-centric — they fire on a global on-hand threshold and generate MRP/procurement suggestions. This module adds a true pull loop: physical bins with `full`/`in_use`/`empty` states, an empty-bin scan trigger, and supermarket-to-line transfers driven by consumption at a specific line-side location.
Does it work on Odoo Community or only Enterprise?
It is built to run on Community. Where you have Enterprise apps such as Barcode or Studio, we integrate with them rather than duplicate them. We confirm your edition during scoping and build accordingly for 17.0, 18.0, or 19.0.
What ongoing support and updates do we get?
Every engagement includes a post-go-live support window for defect fixes and configuration questions. Beyond that, we offer optional support and version-upgrade retainers to keep the module current as you move across Odoo major versions. You also receive the git repository, so your own team can maintain it.
Can operators trigger replenishment without a barcode scanner?
Yes. Scanning a Kanban card or bin label is the fastest path, but bins can also be flipped to `empty` from a list/kanban view or an OWL screen. The pull signal and internal transfer are created the same way regardless of how the empty-bin event is recorded.
Can it integrate with our MES, andon board, or external scanners?
Yes. Loops and bin states are standard Odoo models exposed over the XML-RPC and JSON-RPC API, so an MES, andon display, or third-party scanner can read loop health and post empty-bin events. We document the endpoints and fields as part of the handover.
How do you decide how many Kanban cards a loop should have?
The module includes a sizing recommendation that reads recent consumption — average daily usage and its variability from `stock.move` history — against replenishment lead time and container size, and suggests a card count. Planners see the running count versus the recommended count and can adjust deliberately rather than guessing.
Related Modules

Jewelry Store Management (POS + Inventory)
A build-to-order Odoo ERP for gold, silver and diamond retailers that prices every ornament from live metal rates, weight and karat, calculates making and wastage charges, and handles hallmark tracking, old-gold buyback and showroom POS. ECOSIRE scopes, builds, installs and supports it.

Laboratory Management for Odoo
A made-to-order Odoo application that models the full lab workflow — sample intake, test assignment, result capture, validation, and reporting — inside your existing ERP. ECOSIRE scopes it to your lab, then builds, installs, and supports it.

Laundry & Dry-Cleaning Management
A build-to-order Odoo module that runs a laundry or dry-cleaner end to end — itemized order intake, barcode garment tracking, process-stage workflow, and pickup/delivery scheduling. ECOSIRE scopes, builds, installs and supports it for you on Odoo 17, 18 or 19.
Kanban Replenishment & 2-Bin System
Visual Kanban and two-bin pull replenishment for production lines, so line-side components flow on real consumption signals instead of MRP procurement noise. Build-to-order and supported by ECOSIRE on Odoo 17, 18, and 19.
- New `ecosire.kanban.loop` model binding a `product.product`, consuming line-side `stock.location`, source supermarket location, container/bin quantity, and card count
- Per-bin state model tracking each physical bin as `full`, `in_use`, or `empty` with a full audit trail of state transitions
- Two-bin pull logic: emptying the active bin releases a replenishment signal while the reserve bin feeds the line, eliminating orderpoint-driven MRP noise
- Scan-to-replenish empty-bin trigger via barcode on a Kanban card or bin label, flipping bin state and creating the pull `stock.move` in one action
