Pawpots is a multi-country fresh, human-grade pet food brand selling kettle-cooked, vet-formulated meals for dogs and cats across Lebanon and the UAE. Meals are personalised per pet — species, age, weight, life stage, health condition (hypoallergenic and kidney-support recipes among others). The customer journey runs on a recurring autoship subscription with a discounted trial pack as the on-ramp, plus a referral program ("invite a friend, both sides get a discount"). On the veterinary side, the platform carries Vet Connect (book-a-vet consultations) and a Vet Portal for veterinary ambassadors who partner with the brand. Delivery covers Lebanon and the UAE.
The operating reality of a customised-meal-plus-subscription pet brand is much heavier than the customer side suggests. Every order is sized to a specific animal. Bundles have to compose correctly when a household has more than one pet. Subscription cycles have to fire on cadence. Inventory has to be forecasted weeks ahead because fresh food has a shelf-life constraint. Sale orders have to reconcile to finance. Vet partners need a back-channel. Referral mechanics have to work both directions without manual reconciliation.
The Challenges Pawpots Faced
- Pet-specific portion calculation. Recommending the right meal size for a specific pet is not a lookup — it's an algorithm. Species, weight, age, life stage, activity level, and any health condition all feed into a daily-portion calculation that drives both the recipe match and the quantity-per-shipment.
- Bundling for multi-pet households. A customer with two dogs and a cat needs a single subscription with three separately-portioned bundles, billed and shipped as one order. Generic e-commerce product bundling doesn't model that cleanly.
- Recurring subscription as the operating rhythm. Subscriptions are not a feature on top of e-commerce — they're the operating motion. Cycle generation, skip / pause / swap, address change, plan change, cancellation, dunning — all first-class.
- Sale orders + finance reconciliation across one-offs and subscriptions. Trial-pack orders, one-off purchases, and subscription cycle orders all have to land in the same accounting model so monthly reconciliation reads from a single ledger.
- Inventory forecasting for fresh food. Fresh, kettle-cooked food has shelf-life constraints. The kitchen has to produce against demand that exists in the subscription book weeks ahead, not against orders that have already landed. Without a forecast tied to the subscription schedule, the kitchen is either overproducing waste or shorting orders.
- Vet partner channel. Veterinary ambassadors who refer or recommend Pawpots need their own portal — referral tracking, commission visibility, patient context, content access — without exposing the rest of the operating system.
- Referral mechanics that actually work. The two-sided referral promise ("you get 60% off, they get 70% off the trial") only works if the platform tracks who referred whom, applies the right discounts to the right orders, and reports on referral performance cleanly.
How Linescripts Built the Solution
Custom portion-algorithm logic
A custom algorithm calculates the right daily portion (and therefore the right shipment size) per pet based on species, weight, age, life stage, and health condition. The algorithm runs as part of the buying flow — customers see a personalised recommendation rather than a generic "select a plan" picker — and as part of subscription cycle generation, so reshipments stay sized to the pet rather than locked to whatever the customer first picked.
Product bundling for multi-pet households
The product bundling model lets a single subscription carry multiple pet-specific bundles. A household with two dogs and a cat is one customer, one subscription, one billed order — three correctly-portioned bundles inside it. The composition logic respects the per-pet algorithm so each bundle's size matches the actual animal.
Recurring subscription as a first-class operating motion
Subscriptions are not a feature bolted on; they are the operating rhythm. Cycle generation runs on schedule, sale orders generate from cycles, invoices and shipments flow through the standard Odoo lifecycle, customers can skip / pause / swap / change address / change pet profile through self-service, and finance reconciles against one ledger.
Sale orders + finance reconciliation across all order types
Trial-pack orders, one-off shop purchases, and subscription-cycle orders all post to the same accounting model. Monthly reconciliation reads from a single source; there is no separate subscription tool to reconcile against. Refunds, plan changes, and dunning flow through the same posting rules as everything else.
Payment methods that match the operating reality. Stripe handles online card payments; a cash-on-delivery flow handles the customers — common in both the Lebanon and UAE markets — who prefer to pay the courier at the door. COD orders reconcile back through the same accounting model as card orders, so finance does not run two reconciliation pipelines.
Inventory forecasting tied to the subscription book
Because subscriptions are inside the operating system, the platform knows what cycles will fire in the coming weeks — which pets, which recipes, which quantities. That forward-looking demand picture feeds inventory forecasting so the fresh-food kitchen produces against actual upcoming demand rather than reacting to orders after they land. Less waste, fewer shortages, a kitchen that can plan.
Vet Portal + Vet Connect (video consultations)
A dedicated portal for veterinary ambassadors — referral attribution, commission visibility, patient context for the pets the vet has referred or recommended for, and content access. Built on Odoo's portal layer with permissions scoped so vets see their relevant data and nothing more. The Vet Connect "book a video consultation" flow runs on a custom appointment-scheduling model wired to a Zoom integration module so the consultation itself happens inside the customer's same Pawpots account context.
Referral program with two-sided mechanics
Referral tracking that knows who referred whom, applies the right discounts to the right orders (the referrer's 60% off their next order; the friend's 70% off their trial pack), and reports on referral performance so marketing sees what's actually working.
Customer-facing surface
The buying experience — personalised portion recommendation, pet-profile capture, subscription configuration, multi-pet households, trial-pack on-ramp, account self-service for skip / pause / swap / address change, referral invite flow — lives on a customer-facing site that's part of the same operating platform, not a separate storefront that needs reconciliation back into the operating system.
What Changed for Pawpots
- Every order is sized to a specific pet. Portion algorithm runs on every cycle, not just at first subscription, so the food a pet receives reflects the pet's current weight and stage rather than what the customer picked twelve months ago.
- Multi-pet households are one subscription. Two dogs and a cat ship as one order with three correctly-portioned bundles inside it.
- Subscriptions are inside the operating system. No separate subscription SaaS, no monthly reconciliation against a third-party billing tool — cycle generation, billing, fulfilment, and accounting all run on the same data.
- The kitchen produces against forecast, not against the inbox. Subscription-driven inventory forecasting reduces waste in a fresh-food operation where shelf life is the constraint.
- Veterinary ambassadors have their own back-channel. Vet Portal gives partners the visibility and attribution they need without exposing the rest of the operating system.
- Referrals work without manual tracking. Both sides of the two-sided discount are applied automatically; performance is visible to marketing without an export.
- Self-service for the things customers want. Skip, pause, swap, address change, plan change — without a support ticket.
Closing
The architectural decision that makes this platform work is that everything — portion algorithm, bundling, subscription, sale orders, inventory forecast, vet portal, referral mechanics, customer self-service — lives inside one operating system. The portion algorithm fires inside the same model that generates the cycle order that posts to the same ledger that the inventory forecast reads from. There is no separate subscription tool, no separate referral SaaS, no separate vet partner database to reconcile. One operating system, one data source, one finance ledger — that's what made fresh-food-with-portion-personalisation-at-subscription-scale feasible to actually run.