Naughty Bean Consulting
Sheet P-01 ClickCollect
Sheet P-01 Product Rev D Independent coffee shops and small chains

ClickCollect

Branded online ordering for coffee shops, on their own domain.

Coffee shops lose orders to queues and lose margin to marketplaces. ClickCollect gives a shop its own branded ordering site, on a subdomain or on the shop’s own domain, with a menu, cart, scheduled pickup times, loyalty and card payment. Customers order ahead; the shop sees the order on a staff dashboard, and the customer gets WhatsApp updates as it moves.

Every shop lives in its own PostgreSQL schema, so tenants never share rows. Owners run everything from a portal: menu, branding, locations, staff roles, revenue reporting and their own subscription. Two billing models are on offer, a flat monthly fee or a 2% commission on orders, and the platform bills itself through Paystack.

The unglamorous parts are where most of the engineering went: routing checkout to Yoco, PayFast, Stripe or iKhokha depending on the shop’s country; provisioning a virtual host and a TLS certificate automatically when an owner points a custom domain at the platform; and parsing free-text WhatsApp orders with a language model so a shop can take orders without the customer ever opening a browser.

Fig. 2 System diagram
Notes — what it does
  1. Branded storefront on a clickcollect.coffee subdomain or a verified custom domain, with TLS issued automatically.
  2. Installable PWA storefront with menu, cart and scheduled pickup slots.
  3. Checkout routed to Yoco, PayFast, Stripe or iKhokha by country and currency.
  4. Loyalty engine: stamp cards, discounts, combos and spend-and-save rules.
  5. Staff order dashboard and an owner portal with menu, branding, locations, team roles and revenue reporting.
  6. WhatsApp order-status notifications, and AI parsing of free-text WhatsApp orders.
  7. Two SaaS billing models, a flat monthly fee or a 2% commission, billed through Paystack.
  8. Headless Platform and Storefront APIs for custom front ends.
Bill of materials
ItemLayerComponent
01FrameworkDjango 5.2 with django-tenants, one PostgreSQL schema per shop
02DatabasePostgreSQL
03Front endServer-rendered templates, HTMX, Alpine.js, Tailwind CSS; installable PWA with service worker
04APIsdjango-ninja REST APIs for the platform and each storefront
05Authdjango-allauth with Google sign-in, Cloudflare Turnstile
06HostingGunicorn, Nginx and WhiteNoise on aaPanel; vhosts and TLS provisioned through the aaPanel API
07MonitoringSentry

Integrations

YocoPayFastStripeiKhokhaPaystackTwilio WhatsApp Business APISendGridOpenRouterReplicateCloudflare TurnstileaaPanel API
Request for quotation

Tell us what to build.

A web app, a mobile app, a platform, an integration nobody else wants to touch. Send the brief, we reply with questions, a scope and a price.