← All work
// case_study · DWG-S·002

A fragrance brand's own store, admin and ads, live in five days.

LULU & HUNQ is a Delhi house of seven genderless eaux de parfum. Nexvia moved their shop off Shopify onto a fast store of their own at the same address, with every old link kept, built them an admin the team runs from a phone (orders, packing, couriers, GST invoices, refunds, profit), wired up full ad tracking, and launched their Diwali performance marketing on Meta and Google.

Live · luluandhunq.com since 3 Oct 2026 Store · admin app · Meta + Google ads
DWG-S·002 · live demo LULU & HUNQ by Nexvia: the owner's admin home on a laptop and the shop on a phone (demo with sample orders)
The owner's admin and the shop · demo on fictional sample orders · lulu-demo.nexviatech.in
NX-2026 · DWG-S·002 · CASE STUDY SPEC PROJECT FACTS
ClientLULU & HUNQD2C fragrance brand · Delhi · seven genderless eaux de parfum and The Minis set
What we didStore · admin · tracking · adsNew storefront off Shopify, order desk and Profit Control Room, ad tracking, Meta and Google campaigns
TimelineKick-off to live in four daysStarted 30 Sep 2026 · store switched over on 3 Oct · ads live on 4 Oct
Old links303 Shopify addresses · 0 brokenSame product and collection addresses, 361 redirects, 73 reviews carried over
SpeedLighthouse 98–100 on phonesAccessibility checks clean · 700+ automated tests before every release
AdminPhone · tablet · computerInstallable admin app with new-order alerts · owner, manager and packer roles
Money & deliveryRazorpay · COD · ShiprocketUPI-first payment window, cash on delivery with a small advance, courier bookings, labels and returns, GST invoices
MarketingMeta + Google, measured to the orderPixel + Conversions API, GA4, Google Ads conversions, Merchant Center feed · 46 creatives made in-house
StackAstro · Cloudflare · SupabasePostgreSQL with row-level security · Workers · Web Push · Blender for the 3D bottles
Try it yourself

The real admin, open to everyone.

The demo is the actual LULU & HUNQ site, admin and shop, running on a month of made-up orders: about a hundred orders in every state, courier scans, GST invoices, a refund, chats, reviews to approve, a month of visits, product costs, ad spend and Razorpay settlements. Pick a role and use it the way the team does.

Sign in asE-mailWhat you will see
Ownerowner@lulu-demo.testToday's sales, the Profit Control Room, ad cost per order, staff and settings
Managermanager@lulu-demo.testOrders, stock, customers, chats, reviews and refunds
Packerpacker@lulu-demo.testOrders to pack, slips, labels and courier pickups — no money on screen

Password for every role: demo1234 · or one click on the demo's start page

  • Order something, then watch it arrive. Open the demo shop, check out with the test payment window, and the order, the alert and the GST invoice appear in the admin. Every e-mail the shop would send lands in a demo outbox you can read.
  • It runs entirely in your browser. The demo downloads a private copy of the sample shop (about 16 MB, once) and never connects to the real store, its payments, couriers, WhatsApp or e-mail.
  • Everything in it is fictional. Customers, phone numbers, the company details on invoices and every number are invented; the products and photos are the brand's own. Reset in the demo menu starts over.
How an order moves

From a tap on an ad to a parcel at the door.

Each step happens once and is visible to the next person straight away. The packer works from a phone, the owner sees the money, and nobody copies an order between three different tools.

luluandhunq · order pipeline
shopperad click ›› product page ›› UPI, card or cash on delivery with a small advance
trackingpurchase sent by the browser and the server, same event id ✓ Meta · GA4 · Google Ads
adminalert on the team's phones ›› GST invoice made ›› confirmation e-mail with the PDF ✓
packerpick the gift ›› pack ›› book the courier ›› label prints
courierpickup ›› scans flow back ›› delivered ✓ COD money matched
ownersales ledger & GST ›› Razorpay settlements ›› profit after ads, per campaign
Screens from the demo
The shop on a phone: the seven bottles in 3D and the offer bar
The shop
A product page with size, price, offer and the photo / 3D switch
Product page
Admin home on a phone: orders to pack, today's and the last 7 days' sales
Admin home
Orders list with payment and status for each order
Orders
One order: what goes in the box, the free gift, the next step
Pack an order
Shipping: parcels to book, waiting for pickup, on the way, needing a person
Couriers
Profit Control Room on a phone: sales, profit after every cost, ad cost per order
Profit
Website visits: from visit to order, where visitors drop off
Visits funnel
The packer's home: the same work, no money on screen
Packer's view
Ads in the Profit Control Room: each campaign's spend, orders, cost per order against break-even, and a scale or cut signal
Ads · cost per order against break-even, per campaign
Profit Control Room overview: sales, profit, ad cost per order, cash still to come from Razorpay
Profit Control Room · what was sold, what was kept
Performance marketing

Diwali ads on Meta and Google, measured to the order.

The store went live on a Saturday night; the Diwali campaigns went live the next afternoon, only after a real order had proved the tracking end to end. Since then each campaign is judged by what an order costs in ads against what an order can afford, in the brand's own admin rather than in the ad platforms' reports.

Diwali ad: the gift that's never a guess, all seven bottles among diyas
Diwali ad: the two-bottle offer with a surprise gift
Carousel card: one to keep, one to gift
Carousel card: Wood Witch with its notes and mood

Diwali creatives, made in-house: the brand's own bottles rendered in 3D, set among diyas, petals and string lights modelled from code — no stock images.

01 · meta

Three campaigns, 15 ads

An Advantage+ sales campaign for new buyers, a warm campaign for site visitors and Instagram engagers, and a small one that grows the Instagram following. Reels, statics in three sizes and three carousels.

02 · google

Search and Performance Max

Brand search, a Diwali gifting search with 65 keywords and 126 negatives, and Performance Max running on the store's own product feed in Merchant Center.

03 · creative

46 creatives, made in-house

The seven bottles rendered in Blender and lit for Diwali; reels, statics and carousels laid out to the brand's type, with the offer and delivery promise on every card.

04 · tracking

One purchase, counted once

The Meta Pixel and the Conversions API send each purchase with the same event id, so Meta keeps one; GA4 and a single primary Google Ads purchase action count it too. Checked with a real-money order before launch.

05 · rules

Break-even before budgets

The most an order can spend on ads comes from the brand's own margins. Day-3 and day-5 checks scale the campaigns well under it and cut the ones over it.

06 · guardrails

Copy and media rules

No claims a wear test hasn't proved, no competitor names in keywords, creator videos only as the brand's own posts, and Meta's automatic add-ons switched off on every ad.

What we built

Twelve things the store and admin do every day.

01 · store

A store that feels like the brand

Designed in rounds with the founder: the seven bottles turning in 3D on the home page, a photo or 3D view on every product, the brand's own words, reviews and creator videos.

02 · migration

Off Shopify, nothing lost

Same product and collection addresses, every other old link redirected, reviews carried over and Search Console kept verified, with Shopify on standby while the switch settled.

03 · checkout

UPI-first, COD with an advance

Razorpay's window opens over the page with UPI first. Cash on delivery takes a small advance online, which keeps out orders nobody means to accept. Saved addresses, Buy now, first-order and pair offers.

04 · orders

An order desk for the packer

What goes in the box, the free gift to pick, the next step in one button, packing slips and a courier file. The packer's screens never show money.

05 · app

Admin app with alerts

Installs from the browser on a phone, tablet or computer and puts every new order and chat in the notification pane. No app store needed.

06 · gst

GST invoices, made for you

Orders paid online get their invoice at confirmation and the PDF goes with the e-mail; cash orders are invoiced at packing. Ledger and GST views for the accountant.

07 · couriers

Bookings, labels, returns

Shiprocket bookings with parcel sizes, labels and pickups from the admin, scans flowing back, failed deliveries raised to a person, return pickups and COD money matched.

08 · messages

E-mails with the brand on them

Confirmation, shipped, cancelled and refund e-mails with exact amounts and the logo. WhatsApp order updates are built in, each one with its own switch in the admin.

09 · people

Chats, reviews, abandoned carts

Website chats answered from the admin, reviews checked before they show, and people who left at checkout listed for a friendly follow-up.

10 · profit

The Profit Control Room

Sales after GST, product costs, packing and couriers, Razorpay fees and settlements, ad spend per campaign: what the month actually kept, and which campaigns earn their budget.

11 · visits

A funnel without the creepiness

Where visitors come from and where they drop off, from visit to order, counted without storing addresses or browser fingerprints.

12 · control

Roles, a test copy, a pause switch

Owner, manager and packer roles; a separate test copy of the shop for trying changes; and one switch that pauses ordering without touching the domain or the data.

Under the hood

Fast for shoppers, safe for the money.

Store & admin
AstroTypeScriptCloudflare WorkersWeb PushBlender 3D
Data
PostgreSQLRow-level securityDatabase functions onlySupabase
Integrations
RazorpayShiprocketResend e-mailWhatsApp Cloud APIMeta CAPIGA4 · Google AdsMerchant Center
What we learned

Four rules the project taught us.

01

Keep every old address

Moving off Shopify is where shops lose their search rankings. All 303 old links were listed first and every one still lands on the right page.

02

Prove tracking with real money

A test order paid with a real card, then checked in Meta, GA4 and Google Ads before a rupee of ad spend. Ads optimise on whatever the tracking tells them.

03

Design the admin for the person packing

The packer uses a phone at a table full of boxes. One clear next step per order, big buttons, and no money on screen.

04

Judge ads by cost per order

Platform "return on ad spend" flatters every campaign. The brand's own orders, matched to the campaign that sent them, against a break-even worked out from real costs, does not.

Run a D2C brand on Shopify? Let's talk.

We can move your store, build the admin your team actually needs and run your ads against your real margins. Start with the demo, then tell us how your orders flow.