All work
Beverage / Retail

Cask

Beverage industry ordering and distribution platform connecting producers, distributors, and retailers in one place.

The Challenge

Beverage distributors were managing orders across dozens of producers and hundreds of retail accounts using spreadsheets and phone calls. Errors were common, fulfilment visibility was poor, and producers had no real-time view of sell-through at retail.

Digitising Beverage Distribution

The beverage supply chain in New Zealand is relationship-driven but operationally fragmented. Cask's goal was to digitise the order-to-fulfilment flow without disrupting the personal relationships at its heart.

Multi-Tier Data Model

The core schema models the three-sided marketplace: Producers own Products and Variants (including vintage and batch metadata). Distributors hold inventory allocations. Retailer Accounts place Orders against distributor stock.

Access control is enforced at the database row level — producers see only their own data, distributors see their portfolio, retailers see only products they have access to through their distributor relationship.

Ordering Experience

The retailer-facing ordering interface is a React SPA with offline support via a service worker cache. Field reps often work in cellars and warehouses with poor connectivity; orders queue locally and sync when network is restored.

Fulfilment Pipeline

Each order moves through a state machine: Placed → Confirmed → Packed → Dispatched → Delivered. Email notifications (via SendGrid) trigger at each transition. Producers receive a daily summary of all orders containing their products.

AWS S3 stores proof-of-delivery photos uploaded via the distributor mobile app, linked to the order record for dispute resolution.

Our Solution

We built Cask as a multi-sided ordering platform: producers list their catalogue and set pricing tiers, distributors place and manage orders, and retailers browse curated selections with one-click reorder. Every order flows through a shared fulfilment pipeline with real-time status updates.

Tech Stack

ReactNode.jsExpressPostgreSQLAWSS3SendGridTailwind CSS

Results

  • Order processing time reduced from 2 days to 4 hours on average
  • Distributor error rate dropped by 65% in the first quarter
  • 30+ independent beverage producers onboarded within 3 months
  • Real-time inventory visibility across all retailer accounts

Want similar results?

Let's talk about what we can build for your business.

Start a conversation