raw
A variant of F&B Production and Distribution tracker.
View the interactive variant page →
F&B Production & Distribution Tracker
Part of the worlds-biggest-software-project initiative.
A phone-first, offline-capable inventory and production ledger for small-to-medium food makers and distributors. It records what was received, what was used, what was made, and what was moved or sold, with every movement dated and attributed to a user.
The F&B Production & Distribution Tracker is a candidate open-source system for small-to-medium food manufacturers, sellers and distributors. It replaces paper-based stock reconstruction with an append-only movement ledger. The ledger covers opening stock, receiving, production yield, raw and third-party resale, transfers between sites, and partial fulfilment with backorders. Its reference operator is an artisanal charcuterie business in the Philippines. That business runs two sites, one of which has unreliable internet, and sells through Shopify and wholesale.
Why the F&B Production & Distribution Tracker?
- Variable-weight handling is priced out of reach for small producers. Actual-weight packs and per-kg pricing ("catch-weight") exist only in food ERPs such as inecta, BatchMaster and Aptean, typically US$25k–120k+ to implement, or as paid third-party Odoo add-ons. MRPeasy, Katana, Cin7, Unleashed and Zoho Inventory document no catch-weight support.
- No tool documents offline capture for production or receiving. Across the 15 tools surveyed, the only offline modes found were retired (Unleashed Mobile Sales, Cin7 Omni Pick 'n' Pack), "coming soon" (Unleashed's warehouse app), or limited to point of sale (Odoo, ERPNext). Cost and connectivity are documented barriers to digital adoption for Philippine food processors.
- Small-business tools are weak on yield. Process loss, trim and reusable by-products are first-class only in ERPNext v16, MRPeasy's Professional plan and Cin7's Advanced Manufacturing add-on. Expected-versus-actual yield variance appears only in mid-market food ERPs.
- Common food-distributor flows are awkward. Selling the same raw lot either directly or into production, and reselling bought-in goods without a fictitious production batch, are not modelled as normal flows in most tools. Neither is a backorder balance that persists separately from reservations.
- There is a pricing gap. Cheap distribution tools (Zoho Inventory US$29–249/month, Ecount Philippines PHP 2,800/month) have little manufacturing support. Mid-market systems (Cin7 US$349–1,199/month, Unleashed US$399–729/month) add cost without offline capture or catch-weight. Shopify retired its Stocky inventory app on 31 Aug 2026, and Katana moved its paid plan to quote-only.
Key Features
Movement ledger and stock control
- Item, lot, location and user masters with stable IDs, units, storage state (chilled or frozen), shelf-life rules and lifecycle status. History is retained when an item is paused or discontinued.
- "Ground Zero" opening stock counted by lot, location, weight and condition. Unknown legacy data is flagged, never invented.
- Receiving with partial receipts, discrepancies and quality holds. Normal issue of held, expired or insufficient stock is blocked, and picking follows first-expired, first-out (FEFO).
- Append-only posting: reason-coded waste, reviewable returns and linked corrections. There are no silent balance edits.
Production and yield
- Actual input lots and weights, trim, samples, process loss, reusable by-products, work in progress and partial completion.
- Yield variance explained as a mass balance without double-counting intermediate weights. The patterns come from ERPNext v16 Secondary Items, MRPeasy's output prompts and inecta's expected-versus-actual breakdown.
- An under-produced run splits into a completed part and an open remainder.
Variable weight and pricing
- Count and actual weight kept together for variable-weight packs.
- Fixed-pack, weight-band and per-kg pricing kept distinct. No surveyed tool documents this as a configurable choice.
Distribution and orders
- The same raw stock can be issued to production or sold directly. Bought-in third-party products are received, held and resold without a fictitious production batch.
- Two-step transfers between sites, with in-transit stock and shortage or damage recorded on receipt.
- Orders track ordered, cancelled, fulfilled and outstanding quantities. A reservation is not counted as fulfilment, and the backlog is reported by customer and by SKU.
- Invoice-ready export to an existing invoice engine, with stable references, pricing modes, actual weights and revision history.
Offline capture, traceability and reporting
- Phone capture at a poorly connected site: queued postings that never disappear or double-post, last-sync and pending status shown, and stock conflicts routed to a person.
- Two-way lot trace, plus reports on stock by site and lot, expiry risk, yield, transfers, backorders and exceptions, with CSV export.
- Planned extensions:
- phone-camera scanning and GS1 lot/pack labels that keep the existing customer finishing-instruction QR;
- a gated Shopify connector.
AI-Native Advantage
AI is applied where existing tools are manual or rule-based, and always produces suggestions for a person to approve. The planned uses are:
- explaining yield variance in plain language from the movement ledger, citing the postings behind it;
- reading photographed supplier delivery receipts, handwritten count sheets and scale tickets into draft receipts and opening counts for staff to confirm;
- suggesting resolutions when offline postings conflict;
- ranking lots by expiry risk against open backorders.
Production scheduling is deliberately not automated. Backorders stay visible so that people decide what to make or buy.
Tech Stack & Deployment
The offline core is designed as an installable web app (Service Workers, IndexedDB, Web App Manifest). Movement IDs are UUIDv7 values generated on the device and de-duplicated on the server. Sync runs in the foreground or when the app opens, because Background Sync is Chromium-only.
| Area | Planned standard or approach |
|---|---|
| API contract | OpenAPI 3.2 and JSON Schema 2020-12 |
| Errors | RFC 9457 Problem Details |
| Events to the invoice engine | CloudEvents, signed per Standard Webhooks |
| Traceability | Lot, expiry and weight fields shaped for GS1 Application Identifiers and GS1 Digital Link; movements map to GS1 EPCIS 2.0 events (ISO/IEC 19987/19988) |
| Shopify connector (planned) | Admin GraphQL API with idempotent inventory mutations |
| Optional AI assistant access | MCP server (spec revision 2026-07-28) |
Tax-invoice compliance (the Philippine BIR EOPT and EIS rules) stays with the existing invoice engine; the ledger makes no tax-invoice claim. Standards and competitor API references are in initial-research/standards.md.
Market Context
Analyst estimates put food and beverage ERP at roughly US$4–7B (Marketintelo 2025; PMR 2025) and inventory management software at US$2.5–3.9B (Fortune Business Insights, GMI, 2024–25), each growing about 6–10% a year. These come from paywalled summaries and vary widely.
The Philippines has 140,180 manufacturing MSMEs (DTI 2023). By the research's own derivation, not a published figure, roughly 40,000–55,000 of them are food makers. Primary buyers are:
- owner-operators running on paper and spreadsheets;
- QA and operations leads facing audits or recalls;
- multi-channel sellers reconciling Shopify and wholesale stock.
Full research is in initial-research/research.md and initial-research/features.md. The client brief is in docs/.
Project Status
This project is in the research and specification phase. Contributions, feedback, and domain expertise are welcome.
Contributing
We welcome contributions from developers, domain experts, and potential users. See CONTRIBUTING.md for guidelines.
Important: All contributions must be your own original work or clearly attributed open-source material with a compatible licence. Copyright infringement and licence violations will not be tolerated and will result in immediate removal of the offending contribution. If you are unsure whether a piece of code, text, or other material is safe to contribute, open an issue and ask before submitting.
Contributors should not copy code from Odoo Enterprise or OPL-1 store modules. Code reused from GPL-3 projects such as ERPNext or Tryton would bring copyleft obligations. Variable-weight handling follows a design rule adopted because of a US catch-weight patent (US 7,664,684 B2): packs are weighed at packing, and kg orders are checked in kg with no estimated pack conversion. Contributions must keep to it. See initial-research/features.md.
Licence
Licence to be determined. See discussion for context.