Production & costing
Bills of materials from raw ingredient to finished pack, and margin priced at fully-absorbed cost: ingredients, labor, packaging and overhead, not ingredients alone.
Case study · Food manufacturing
FAT Chips makes and sells snacks: online, at farmers markets and wholesale. It is also our own company, so it is where we learned Odoo the hard way. Production, four sales channels, fulfillment, sales tax, bank feeds and the books all run on one self-hosted Odoo Community build we designed and still run every day.
A small food manufacturer has the hardest version of the ERP problem at the smallest size. Raw ingredients become batches, batches become bags, bags become packs and subscriptions, and every one of them has to carry an honest cost. Then the same product leaves through a web store, a market table, a wholesale marketplace and a retailer’s purchase order, each with its own payment processor and its own tax rules.
Off-the-shelf, that is five or six subscriptions stitched together with exports. We wanted one ledger that knew what every order actually earned.
Stock Community plus the OCA modules that close its gaps, and more than a dozen custom modules for the rest.
Bills of materials from raw ingredient to finished pack, and margin priced at fully-absorbed cost: ingredients, labor, packaging and overhead, not ingredients alone.
eatfatchips.com runs on Odoo’s website with a custom checkout: Stripe payments, pack builder, pre-orders, native product reviews and search structured data.
A market-day lifecycle built around how a stall actually runs: stock goes out, what comes back is counted, and the difference is what sold.
Faire connected by API, and retail accounts invoiced from Odoo, so wholesale runs through the same order and fulfillment flow as every other channel.
Subscribe-and-save billing driven by Odoo itself, with the recurring orders landing in the normal fulfillment queue.
Product-level sales tax computed at checkout, including food exemptions, before the card is charged. It became our Midas product.
Buy carrier labels and print bag labels from inside Odoo on the shop’s own printers. It became PBM Shipping.
Plaid, Stripe and Square feeds into Odoo reconciliation, with processor payouts split back to the channel that earned them.
Contribution margin per order and per channel, plus reorder alerts, computed from real orders at real cost. It became Ronin.
Meta Conversions API for server-side ad attribution, branded transactional email and marketing email flows, all from the same customer records.
A forward cash outlook from the bank feed, loan schedules and a nightly net-worth snapshot.
Most implementers learn a business from a requirements document. We learned Odoo by running a manufacturing company on it: closing its books, chasing its inventory counts, paying its sales tax. When we scope your build, we have usually already hit the wall you are about to.
If your products have recipes and your orders come from more than one place, we have built this before. Tell us what you make.
or email [email protected]