From Roastery to Counter: How a Specialty Coffee & Chocolate Brand Runs Its Entire Value Chain on One Odoo ERP Platform with Lumi-X

At a glance
A newly founded company set out to build a Vietnamese fine coffee and chocolate brand. It roasts its own coffee and makes its own chocolate, and sells through retail stores, to corporate (B2B) customers and through monthly subscriptions. It needed a complete management system from the start, while protecting its initial capital and getting the business running quickly. In just 3 months, Lumi-X implemented Odoo 19 to bring production, inventory, in-store sales, customer management, HR and payroll onto a single source of truth. The system is configured for the specifics of the industry: batch-level traceability, expiry-based stock rotation and POS tailored to Vietnam F&B's nature.
The client & its vision
The founders want to prove that Vietnamese coffee and chocolate can meet "fine" standards, from the raw beans and the roast to the experience at the counter. To turn that ambition into a well-run business, they needed a solid management platform from day one, rather than patching tools together and rebuilding later as the company grows.
As a young business, the client set three criteria for its implementation partner:
Real experience: knowledge of both food manufacturing and retail, and of Vietnamese regulations.
Reasonable cost: make the most of the initial capital, so it can go into products, stores and the brand.
Fast delivery: get the system, and the business, up and running quickly.
Challenges
The client is a startup, but its business model (making, retailing and wholesaling at the same time) was complex from the start:

Limited capital and time: every system investment had to pay off early. A long implementation means a later opening and later revenue.- ico
Building from scratch: no legacy system or data. Processes, product catalog, recipes and master data had to be set up right the first time.
Multi-step production: coffee moves through roasting, blending, cooling and packing; chocolate has its own recipes and variants. The business needed accurate bills of materials and control over actual consumption.
Traceability: in case of a complaint or recall, the team must be able to trace any finished product back to its roast batch and raw-material lots, and forward to the customers who received it.
Different shelf-life rules: chocolate must be picked FEFO (first expired, first out), while coffee beans follow FIFO.
Imported ingredients: freight and duties on imported cocoa had to be built into product cost to get margins right.
Several sales channels: walk-in retail, corporate quotations and gift sets, and recurring coffee subscriptions. Each channel has its own pricing and promotions.
Shift-based store staff: attendance, overtime and payroll had to comply with Vietnamese labor law, social insurance and personal income tax rules.
Cup-label printing from POS on Odoo Online: the bar needs a label for every drink order. But standard Odoo POS only sends print jobs in ESC/POS, while most label printers on the market use TSPL. The result: blank labels, garbage characters, or nothing at all. Odoo Online also does not allow custom modules to be installed to work around it.
Our solutions
Lumi-X followed a structured delivery method: discovery and Blueprint, configuration, module-by-module UAT, data migration, go-live. The main areas delivered:
1. Manufacturing & Quality
Multi-level BoMs with variants (250G / 500G / 1KG packs, etc.) and kits for combos and gift baskets.
A work center for each roasting, blending, cooling and packing station. Manufacturing orders are generated automatically from sales, forecasts (MPS) or minimum-stock rules.
Quality checks at three points: receipt, in-process and finished goods. A quality-alert workflow tracks root causes and corrective actions.
2. Inventory, traceability & barcode
Multiple warehouses and locations (production, finished goods, store stock, in-transit).
Lot/batch tracking with roast dates and expiry dates. Full upstream and downstream traceability: supplier → manufacturing order → finished lot → customer.
FEFO applied automatically to chocolate and FIFO to coffee. Receiving, picking and stock counts run on a mobile barcode app.
Landed costs allocated to inventory valuation.
3. Purchasing
Quote comparison across suppliers. Annual blanket agreements with coffee and cocoa suppliers.
3-way matching (PO ⇔ receipt ⇔ vendor bill) before any payment.
4. Omnichannel sales & CRM
Quotation templates for B2B and seasonal gifting. Tiered pricelists by customer segment, season and channel. Online signature and deposit payment through the customer portal.
Monthly coffee subscriptions with automatic recurring invoicing.
CRM with lead scoring, a custom B2B pipeline and a 360° customer view (opportunities, orders and invoices on one screen).
5. In-store Point of Sale
Touchscreen POS that keeps selling offline. Store stock is deducted in real time.
Loyalty points, coupons and gift cards. Customers can pay with several methods on one bill: cash, bank QR, e-wallet, card.
Hardware connected through Odoo IoT: an 80mm thermal receipt printer and a cup-label printer for the bar. Lumi-X wrote dedicated setup guides and troubleshooting checklists for store staff.
Technical highlight: TSPL label printing on Odoo Online
Odoo Online does not support TSPL label printers from POS. The Lumi-X project team researched the issue and solved it completely: Lumi-X built an application that runs on the store's IoT machine and automatically converts Odoo's ESC/POS print jobs into the label printer's TSPL commands. As a result:
Every drink order prints its cup label automatically at the bar. Orders without drinks print no label.
The client keeps Odoo Online and the label printers it already owns. There was no need to move to Odoo.sh or a private server, or to buy new printers, which keeps both investment and running costs low.
The system stays on standard Odoo, so future version upgrades are not affected.
6. HR, Attendance, Payroll & Sales KPIs
Check-in by web/mobile, PIN kiosk, or fingerprint/face-ID devices. Shift planning for store teams.
Overtime calculated with Vietnamese statutory multipliers (150% on weekdays, 200% on weekly rest days, 300% on public holidays), with an approval step.
Vietnam-compliant salary structures covering social, health and unemployment insurance plus progressive PIT. Payslips are generated in bulk, emailed to staff and exported as bank payment files.
Sales targets per salesperson, tiered commissions, and revenue and margin dashboards by product, channel and region.
How Lumi-X delivered
Blueprint first: every process was agreed in writing before configuration, so the system matches how the business actually runs.
Module-by-module UAT: the client's key users ran the test scripts themselves and signed off before go-live.
Weekly status reporting: progress, issues and risks were reported openly and tracked jointly by both teams.
Vietnamese user manual: step-by-step guides for every module. The manual is kept up to date, for example with the in-store printer setup guide.
Standard Odoo first: Lumi-X used standard Odoo features instead of custom modules. This keeps maintenance costs low and makes future upgrades easier.
Results
All 10 modules live within 3 months.
A young business with a complete management system from the start, ready to scale as it grows.
One source of data for production, inventory, sales, HR and payroll.
Batch-level traceability available directly in the system.
Automatic cup-label printing from POS on Odoo Online, using a TSPL label printer.
Product costs that include the full cost of imported ingredients.
Payroll, social insurance and PIT calculated automatically under Vietnamese regulations.