Case study · Custom jewellery ERP + CRM · Surat
One custom system for a diamond jewellery brand — stock, ledger, catalogue and GST billing
How Yukti AI replaced six-plus separate Excel files with a single jewellery ERP and CRM for Lumera Fine Jewellery — diamond and gold inventory, a live metal ledger with vendors and karigars, a shareable online catalogue with view and order tracking, barcode tags and GST invoicing. The system now generates Lumera's real customer invoices.
Lumera Fine Jewellery is a lab-grown diamond fine-jewellery brand in Surat. Diamond stock sat in one spreadsheet, gold in another, finished pieces in a register, and the metal ledger never quite tallied — and for selling online, the only tool they had was their website. Yukti AI built a custom jewellery ERP and CRM on Next.js and Supabase covering customers and leads, orders with full diamond and metal detail, a vendor and karigar gold ledger by purity, multi-location inventory, per-piece barcode and QR tags, GST invoice PDFs, and a shareable online catalogue where the team can track views, clicks and likes and take orders directly — all behind one staff login with role-based, row-level security, and an AI layer that analyses the data and surfaces what to act on.
Quick facts
| Client | Lumera Fine Jewellery — a lab-grown diamond fine-jewellery brand (est. 2014) |
|---|---|
| Location | Katargam, Surat, Gujarat |
| Industry | Diamond & jewellery — brand, selling natural, lab-grown and moissanite |
| Business type | Jewellery brand with in-house and vendor / karigar production, stock in India and Hong Kong |
| Core challenge | Diamond stock, gold stock and finished pieces in separate Excel files; a metal ledger that never tallied; no way to sell online except the website; customer, sales and owner all working from different places |
| Solution | Custom jewellery ERP + CRM — one platform, staff login, role-based |
| Modules | Customers, Leads, Orders & order items, Payments & Invoices, Products, Online catalogue + analytics + order requests, Inventory (India / Hong Kong), Vendors & gold ledger, Barcodes / QR, Tasks, Import / Export, Dashboard |
| Jewellery-specific detail | Diamonds by shape / size / carat / colour / type (natural, lab-grown, moissanite); gold by weight and karat (14k / 18k); making charges; vendor and karigar gold balances |
| Billing | GST invoice PDFs generated from the order — the system produces Lumera's real customer invoices |
| Roles | Admin, Manager, Sales, Production — row-level security; cost & profit visible to admin / manager only |
| Stack | Next.js 16 (App Router, TypeScript), Tailwind + shadcn/ui, Supabase (Postgres, Auth, Storage, RLS), Vercel |
| Catalogue | Shareable online catalogue with view / click / like analytics and direct order requests; quotations generated from the ERP |
| Result | One system in place of six-plus Excel files; stock deducts itself on every order; live metal-ledger balance per vendor and karigar; real GST invoices generated by the system |
What is a jewellery ERP? A business system that connects jewellery inventory, diamond and gold tracking, orders, production, the metal ledger, catalogue, payments and GST billing in one place, instead of separate spreadsheets and billing software.
What did Yukti AI build for Lumera? A custom jewellery ERP and CRM — customers and leads, orders with full diamond and metal detail, a vendor / karigar gold ledger, multi-location inventory, a shareable online catalogue with analytics, barcode and QR tags, and GST invoicing — on Next.js and Supabase, with role-based access and an AI layer that analyses the data.
Is it live, and what changed? Yes — it runs Lumera's operations and produces the brand's real customer invoices. The team reports it has freed up two to three hours a day, a quotation or GST invoice now takes about three minutes, and the AI sends the owner recommendations daily from analysis that runs on its own. WhatsApp automation (enquiry auto-reply, follow-ups, order-status messages) is on the roadmap.
What Lumera's team works in
Screens from the live Lumera jewellery ERP, built by Yukti AI.
Why jewellery is hard to run on generic software
A jewellery business does not sell units off a shelf. Every piece is a combination of a stone package and a metal weight, each priced differently, each moving through its own supply chain:
- Diamonds are described by shape, size, carat, colour and type — and "type" now includes natural, lab-grown and moissanite, which are priced completely differently and must never be confused on an invoice.
- Gold is tracked by weight and by karat (14k, 18k), and the same design in two purities is effectively two products.
- Making charges sit on top of stone value and metal value, per gram or per piece, and vary by design complexity.
- Gold physically leaves the building — issued to a vendor or a karigar, some consumed in the piece, the rest returned. Knowing how much of your gold is sitting with which craftsman is a core financial control, not a nice-to-have.
Off-the-shelf retail or billing software has no concept of most of this. So jewellery businesses do what Lumera did — keep it in spreadsheets, one per problem, and reconcile by hand.
The value of a custom jewellery system is that the stone package, the metal weight, the making charge, the gold ledger entry and the GST invoice are one linked record — not five spreadsheets that have to agree.
What Lumera was doing by hand
- "Diamond stock is in one file, gold in another, finished pieces in a register." Three sources of truth, none of them talking to each other.
- "The metal ledger never quite tallies." Gold given, gold returned and gold consumed were tracked loosely, so the balance with each vendor was an estimate.
- "Every order is deducted from stock manually, one piece at a time." Slow, and a missed deduction meant selling a piece that was already gone.
- "The customer, the sales staff and the owner all work from different places." No single view of an enquiry from first message to delivered order.
- "Catalogues are built by hand for each client, and prices are retyped every time." A design's price depends on the live gold rate, so a hand-built catalogue is stale the day it is made.
- "Invoices are made in a separate tool." So the invoice and the order could disagree on stone detail or making charges.
How the operation changed
Before
- 6+ Excel files: diamonds, gold, pieces, orders, customers, catalogue
- Metal ledger reconciled by hand, balance approximate
- Stock deducted manually per order
- Catalogue rebuilt and re-priced for every client
- Invoices made in a separate tool
- No shared view of a customer or an order
After
- One system: stock, ledger, catalogue, orders, customers, billing
- Live gold-ledger balance per vendor and karigar, per purity
- Stock deducts itself on every confirmed order
- Catalogue generated from the product master, priced off the live rate
- GST invoice generated straight from the order
- Customer, sales and owner on the same platform, role-based
Why a custom build, not a jewellery software package
There are off-the-shelf jewellery packages. Lumera's view — and Yukti AI's — was that a packaged product forces its own workflow: its idea of an order, its invoice format, its stock model, its user roles. For a brand that sells natural, lab-grown and moissanite side by side, holds stock in more than one location, and runs both in-house and vendor production, "close enough" from a package means a permanent layer of workarounds in Excel on top of the software you paid for.
A custom build meant the data model matched Lumera's reality exactly — and it meant the invoice the system prints is the invoice Lumera actually gives customers, with nothing re-entered.
How the system is put together
The modules
Customers & Leads (CRM)
Customers captured with enquiry source (Instagram, WhatsApp, referral, website, walk-in, exhibition), enquiry date and an assigned team member. Leads move through a kanban pipeline — new → contacted → qualified → converted / lost — with follow-up dates, and a lead converts directly into an order carrying its detail across. Benefit: an enquiry is tracked from the first Instagram DM to the delivered piece, by one owner.
Orders & order items
Orders with an auto number (LUM-2026-0001), order type (ring, bracelet, necklace, earring, pendant, bangle), and line items carrying gross and net weight, diamond carat and pieces, gold purity, quantity and unit price. Material source is recorded — gold and diamonds can be customer-provided or in-house — along with the vendor or karigar and an estimated delivery date, with a status stepper from inquiry through casting, setting, polishing, QC, ready and delivered. Benefit: the order holds every number the invoice and the ledger will need.
Inventory, multi-location
Products with full specification — SKU, category, gross / net weight, diamond carat and pieces, gold purity, metal type, images, barcode — and stock tracked independently by location (for example India and Hong Kong) as separate counts on the same piece, with low-stock alerts per location. Stock deducts itself on every confirmed order. Benefit: no more selling a piece that is physically in the other city.
Vendors & the gold ledger
Each vendor has a live gold balance by purity (14k / 18k), computed from every transaction — issued, consumed or returned — with consumptions linked to the specific order they went into, and a running balance shown per row. Benefit: "how much of our gold is with this karigar right now, and against which orders" is a screen, not a monthly argument.
Online catalogue, analytics & order requests
Before this, the only way Lumera could sell online was their website. The system gives them a shareable online catalogue built from the product master — filtered by collection, purity, carat, price and location, priced live off the current gold rate. The team sees catalogue analytics (which pieces are viewed, clicked and liked, by which client) and a order-requests inbox where a client can order directly from the catalogue. Quotations are generated from the ERP and carry into the order. Benefit: a second, trackable sales channel — the owner and team can see interest before a piece is even quoted.
Barcodes & scan lookup
Printable jewellery-tag barcodes and QR codes per piece (gross / net weight, diamond info, purity, SKU), plus a scan-lookup page that shows the full specification of any piece — auth-protected, so a public scan returns nothing. Benefit: the tag on the piece is the piece's record.
Payments & GST invoicing
Part-payments recorded by method (cash / bank), balance computed live as order total minus payments received, and payment status auto-derived (pending / partial / paid). GST invoices — diamond value, metal value, making charges itemised — are generated straight from the order as a PDF. The system produces Lumera's real customer invoices.
Tasks & Import / Export
A kanban task board with priority and overdue highlighting, linked to orders or leads; and an import / export module — export customers, products and orders to Excel, import customers from Excel or CSV with a template and a result summary. Benefit: the existing spreadsheets came in once, cleanly, at go-live.
Dashboard
Live KPIs — open leads, active orders, pending payments, open tasks, low stock, 14k and 18k gold currently with vendors, an order-pipeline bar chart, and delivered profit (admin and manager only). Benefit: the owner's first screen every morning is the state of the business.
How one jewellery order flows through the system
Every step below is one record moving forward — no re-entry between the enquiry and the invoice.
Manual step → handled by the system
| Task | Before — done by hand | Now — in the system |
|---|---|---|
| New enquiry | Noted in a chat or a book | Captured as a lead with its source and an owner |
| Catalogue for a client | Rebuilt and re-priced each time | Generated from the product master, priced off the live rate, shared as a link |
| Stock deduction | Manual, one piece per order | Deducts itself on every confirmed order |
| Gold ledger | Reconciled by hand, balance approximate | Live balance per vendor and karigar, per purity |
| Quotation | Made separately, retyped into the order | Generated from the ERP, carries into the order |
| GST invoice | Made in a separate tool | Generated from the order, itemising diamond, metal and making charges |
| Payment status & balance | Tracked in a sheet | Computed live from recorded payments |
| Business questions | Searching spreadsheets | The AI layer answers from the live data |
What is live today, and what is on the roadmap
Lumera's system is a clean, complete operational platform first. The AI layer turns its own data into decisions; a WhatsApp automation phase is planned.
Live today
AI data analysis & suggestions on the live system — which leads have gone quiet and who to call, which designs, carats and purities are moving versus dead stock, how margin tracks as the gold rate moves, metal-ledger anomalies (a vendor balance drifting, gold out longer than usual), and plain-language questions like "how much 18K gold is with vendors against pending orders" answered from the data.
On the roadmap
WhatsApp automation — enquiry auto-reply grounded in the catalogue, follow-up messages when a lead goes quiet, order-status updates to the customer, and one-instruction catalogue sharing over WhatsApp. The data model was built so this layer adds on without a rebuild.
What each person gets
Admin / Owner
Everything — plus cost price, profit on delivered orders, and full delete rights. The dashboard is the state of the business.
Manager
Full operational access and profit visibility, without the ability to delete core records like orders and customers.
Sales
Customers, leads, orders and the catalogue — cost and profit fields removed at the data layer, not just hidden.
Production
Read access across the system, plus the ability to update order status and write inventory and vendor gold-ledger entries.
How it was built
Business & data discovery
We mapped Lumera's real workflow and, crucially, the structure of the existing spreadsheets — the fields, the enums, the way stones and metal were being described.
Jewellery-specific data model
Eleven linked tables designed around diamonds, gold, purity, making charges, vendors and the ledger — with row-level security and a role matrix from the start.
Build the operational core
Customers, leads, orders, inventory, vendors and the gold ledger — then catalogue, barcodes, payments and GST invoicing on top.
Migrate the spreadsheets
The existing customer and product data imported through the import module, with a template and a result summary, so go-live started with real data.
Deploy & support
Deployed on Vercel with Supabase, staff accounts created by role, and ongoing support — including the WhatsApp automation phase on the roadmap.
What changed
Figures reported by the Lumera team — no invented numbers.
Yukti AI has helped us streamline our entire process. Our stock, gold ledger, catalogue and billing used to live in separate Excel files that we reconciled by hand — now it is one system the whole team works from. The analysis runs on its own and the AI sends us recommendations every day, so we catch things we would have missed. A quotation or a GST invoice now takes about three minutes instead of an afternoon, and it has freed up two to three hours a day.
Keval Goti — Founder, Lumera Fine Jewellery
Technology & security
Stack: Next.js 16 (App Router, TypeScript) · Tailwind + shadcn/ui · Supabase (PostgreSQL, Auth, Storage, Row-Level Security) · Vercel. A jewellery-specific data model connects diamonds, gold, orders, vendors, inventory, catalogue and billing as one set of linked records.
Security: the whole system is behind a staff login. Every table has row-level security; cost price and profit are removed for the sales and production roles at the database layer, not just hidden in the screen; the barcode scan-lookup page is auth-gated so a public scan returns nothing; payment balance and profit are always computed, never stored, so they cannot drift; and Lumera owns and can export all data at any time.
Full technical architecture
- Next.js 16 (App Router, TypeScript) — auth-gated layout groups keep the whole CRM behind a login.
- Supabase (PostgreSQL, Auth, Storage, RLS) — eleven linked tables, all with RLS enabled; a security-definer function reads the caller's role and the policy matrix is enforced in the database.
- Tailwind CSS + shadcn/ui — a fast, consistent interface in Lumera's brand colours.
- @react-pdf/renderer — GST invoice, vendor order form and catalogue PDFs.
- bwip-js + qrcode — jewellery-tag barcodes and QR codes.
- xlsx (SheetJS) + papaparse — Excel and CSV import / export.
- recharts — dashboard charts and profit indicators.
- Vercel — hosting and deploys.
If you run a jewellery or diamond business, this is buildable for you
Lumera is one of several jewellery systems Yukti AI has built — alongside a jewellery-factory CRM with a two-way WhatsApp inbox and a lab-grown catalogue and product-master system. The same approach fits:
- Jewellery brands and retailers selling natural, lab-grown and moissanite
- Diamond and jewellery wholesalers running vendor and karigar production
- Jewellery manufacturers who need a metal ledger and job-work tracking
- Businesses that need GST invoicing built into the same system as stock
Start with a free workflow audit. See Jewellery Software, Diamond & Jewellery Automation in Surat or the full AI Business Management System.
Questions jewellery businesses ask
Explore more
Jewellery Software
Custom diamond & gold inventory, metal ledger, WhatsApp catalogue, GST billing and CRM.
Case study: Surati Jewellery Factory
A jewellery CRM with a two-way WhatsApp inbox and AI auto-reply grounded in the live catalogue.
Case study: Shinelabb
A product master and client-catalogue system for a lab-grown and natural-diamond wholesaler.
Diamond & Jewellery Automation
How Surat's jewellery businesses automate enquiries, catalogues and follow-ups.
Custom CRM Software
A CRM built around your pipeline, your sources and your product — not a generic template.
All case studies
Every Yukti AI build — jewellery, manufacturing, trading and services.
Summary
Yukti AI built a custom jewellery ERP and CRM for Lumera Fine Jewellery, a lab-grown diamond fine-jewellery brand in Surat, replacing six-plus separate Excel files with one platform. The system covers customers and a lead pipeline by enquiry source, orders with full diamond specification (shape, size, carat, colour, type — natural, lab-grown, moissanite) and metal detail (weight, karat, making charges), a vendor and karigar gold ledger with live balances per purity, multi-location inventory (India and Hong Kong) that deducts on order, a shareable online catalogue with view / click / like analytics and a direct order-requests inbox, quotations generated from the ERP, per-piece barcode and QR tags with an auth-protected scan lookup, part-payment tracking, and GST invoice PDFs generated from the order — which produce Lumera's real customer invoices. It is built on Next.js 16 and Supabase with row-level security and role-based access for admin, manager, sales and production, plus an AI layer that analyses the data and sends the owner daily recommendations; WhatsApp automation is on the roadmap. Founder Keval Goti reports the system has streamlined the whole process, freed up two to three hours a day, and cut a quotation or GST invoice to about three minutes. Yukti AI builds comparable custom jewellery software for brands, wholesalers and manufacturers across Surat and India.