Software AI Business Management System Custom ERP Software Custom CRM Software Manufacturing ERP Software Jewellery Software Diamond Software Replace Excel & Tally Yukti AI CRM (product) Automation & AI AI Automation Agency in Surat WhatsApp Automation WhatsApp AI Chatbot AI Agents Voice AI Agents Workflow & n8n Automation GeM Tender Automation AI Consulting Web & Apps Web & Mobile Apps Shopify Store Development Industries Diamond & Jewellery Manufacturing Textile & Apparel Retail & E-commerce Logistics & Transport Travel & Tourism Real Estate Healthcare & Pharma All industries Company Work / Case Studies About Blog AI Automation Cost Free SEO Audit Contact
Case study · Diamond trading ERP · Diamond inventory management software

A diamond trading ERP with lot-wise inventory management and AI inventory insights for Arham Exports

The diamond trading ERP Yukti AI built for Arham Exports, a Mumbai trader of natural melee and calibrated polished diamonds. It tracks every purchase as a lot with its landed cost, keeps the cost of what is left correct through every partial sale, ages and classifies stock into fast, slow and dead, and tells management what to buy and what to stop buying, with the reason shown. Broker scorecards, a stock-matching CRM, receivables and MIS reports sit on the same records.

Arham Exports is a Mumbai-based B2B trader of natural loose diamonds, working from the Bharat Diamond Bourse and supplying manufacturers, wholesalers and retail chains with melee and calibrated polished stones. A diamond trader’s stock is not a list of items with a quantity: it is lots bought at a landed cost, sold in parts, held for months and judged by what sells. Yukti AI built one ERP around that flow — purchase, supplier and broker, diamond lot, inventory, partial sale, customer, profit, receivable, CRM and buying advice — with 18 working modules, weighted-average costing per lot, five ageing buckets, a rule-based purchase and stop-buying engine, broker scorecards, a five-stage CRM that matches buyers to stock, and an AI copilot that answers from the ERP’s own numbers. 51 automated tests check the business logic.

Quick answer

What is the best ERP for diamond inventory management and trading?

The best diamond inventory management ERP is one that treats a purchase as a lot, not an item: it records the landed cost of the lot, reduces carats and cost together on every partial sale, shows the profit of each lot, ages the stock, and separates fast, slow and dead stock using rules you can read. It then adds the things a trading desk lives on — broker and supplier performance, buyers matched to stock, receivables and MIS reports, and buying advice that shows its reasoning. Yukti AI, a software company in Surat, built exactly this for Arham Exports, a Mumbai trader of natural melee and calibrated diamonds. It is a custom ERP rather than a package, uses weighted-average costing per lot, and its “AI” is a transparent rule engine and a copilot that explains the ERP’s own figures instead of inventing numbers.

Executive summary

Quick facts

Arham Exports logo

ClientArham Exports, Mumbai, India — works from the Bharat Diamond Bourse (company website: arhamexports.com)
IndustryB2B natural loose diamond trading and sourcing — natural melee and calibrated polished diamonds for manufacturers, wholesalers and retail chains
Business typeTrader and exporter: buys from suppliers, often through purchase brokers; sells in partial sales to customers, sometimes through sales brokers; customers in many countries according to the company website
Built byYukti AI, Surat, Gujarat — the builder is in Surat; the client is in Mumbai
SolutionCustom diamond trading ERP with MIS, CRM and an AI copilot — 18 module pages plus an alert centre, on one calculation engine
Core mechanicsEvery purchase line becomes a lot; weighted-average cost per lot; carat-first inventory with optional stone count; partial sales that never distort the cost of what remains; every correction is a new linked record, never a deletion
Inventory intelligenceCarrying cost vs indicative selling value, five ageing buckets, fast, slow, dead, excess and shortage, configurable stock rules, rule-based purchase and stop-buying recommendations with reasons
People sidePurchase and sales broker scorecards, supplier analytics, top-20 customers, dormant-customer tiers, a five-stage prospect CRM, follow-ups and requirement-to-stock matching
Money sideInvoice-level receivables and payables with partial and oldest-first allocation, expenses, other income, a gross-profit vs net-operating-result split, CSV-exportable MIS reports
AIDeterministic purchase engine and an AI business copilot with 11 question types; no machine-learning forecast; an optional language-model phrasing layer for the copilot is built and is switched on at go-live
Quality checks51 automated tests of the costing, stock, broker-scoring, customer and recommendation logic pass
StackNext.js 16, React 19, TypeScript, Tailwind CSS 4, Recharts, Zod; PostgreSQL (Supabase) schema with row-level security written for production
StatusWorking version built by Yukti AI. The live database, user logins and connections to the client’s own systems are set up at go-live; none is claimed as connected on this page
The business

A diamond lot is carats, cost and time — and a partial sale changes all three

Arham Exports trades natural polished diamonds in the small and calibrated sizes that jewellery manufacturers, wholesalers and retail chains buy by the parcel. According to its public website the company is based at the Bharat Diamond Bourse in Mumbai, sells only natural stones, and supplies customers in many countries. Nothing on this page is taken from the company’s books; what follows describes the system Yukti AI built around how a diamond trading desk works.

A trader buys a parcel from a supplier, perhaps through a purchase broker who is paid a percentage. That parcel becomes a lot with a quality, a size range, a number of carats and a landed cost that includes brokerage, shipping and insurance. The lot is then sold in pieces to different buyers over weeks or months, sometimes through a sales broker. Every sale takes out some carats and some cost, and what is left keeps ageing. After a year the owner needs answers that a purchase register and a sales register cannot give together: how much money is locked in each lot, what did the part that sold actually earn, which sizes and qualities move, which broker brings stock that sells, and which buyers are drifting away.

Why this matters for the software

A diamond inventory ERP has to follow the lot: where the money went in, how much of it has come back, what is still on the shelf, how long it has been there and who it can be offered to. The flow built for Arham Exports is Purchase → Supplier and broker → Diamond lot → Inventory → Partial sales → Customer → Profitability → Receivables → CRM → Recommendations.

Who this is for

Who is this diamond inventory management ERP for?

The system was designed for a trader and exporter of natural polished diamonds that holds stock in lots and sells it in parts: melee and calibrated sizes, parcels sold to manufacturers and wholesalers, purchases made through brokers, and buyers spread across cities and countries. If you run a diamond trading firm in Mumbai at the Bharat Diamond Bourse, a diamond dealer or exporter in Surat, or a diamond sourcing business anywhere in India, the questions on this page will sound familiar. It is also a working answer to the search for diamond software that goes beyond a stock list.

It is a good fit if most of these are true for you:

  • You buy parcels and sell them in several partial sales, and your Excel sheet cannot tell you the cost of the carats that remain.
  • You pay brokers on purchases or sales and want to know which ones bring stock that actually earns a profit, not just the lowest price.
  • You hold stock for months and cannot say quickly which lots are tying up your money or which sizes you should stop buying.
  • Your accountant works in Tally and your sales team works in WhatsApp and notebooks, and nobody can match a buyer’s requirement to what is in stock.
  • You want an owner-level view, with drill-downs, where every number can be traced back to a transaction.
  • You want AI that is honest about its numbers: advice with the reasoning visible, and an answer of “not enough data” when there is not enough data.

It is a different shape from a diamond manufacturing system. A factory tracks rough inward, assorting, planning and polishing loss; see our diamond assorting ERP with stock custody for that side. For a Surat export house selling through a private buyer portal, see the diamond trading platform case study. This page is the trading-desk system: lots, cost, ageing, brokers, buyers and cash. Yukti AI is in Surat and the client is in Mumbai; we build these systems for diamond firms across India.

The challenge

What Excel and a purchase register cannot see in a diamond trading business

These points describe the gaps the system was built to close, drawn from the build brief and the way diamond trading works. They are not quotes from the client, and no figures about the client’s own business are shown here. The brief notes that the client had about five years of history in Excel and Tally, so the system also had to bring history in without double counting it.

  • The cost of what is left goes wrong. When one lot is sold in several parts, using the full purchase cost against a part-sale overstates the cost and understates the profit. A diamond ERP has to take out only the cost of the carats sold.
  • Landed cost is scattered. Brokerage, shipping, insurance and duty are paid separately from the stones. If they are not spread across the lots they belong to, every margin is wrong.
  • Stock is judged by feeling. Without ageing buckets and rules, a lot that has not moved for a few weeks looks the same as one that has not moved for two years.
  • Brokers are ranked by price or by sales value. The cheapest broker is not always the best, and the broker with the biggest sales may bring slow stock or slow-paying buyers. Small samples make rankings misleading.
  • Buying is reactive. Demand, stock on hand, stock already promised to confirmed orders and dead stock are rarely put together before a purchase.
  • Buyers and stock live apart. A customer’s requirement sits in a notebook while the matching lot sits in a spreadsheet.
  • Profit and cash are two different stories. A lot can show a profit while its receivable is ninety days overdue. Gross profit, expenses and net operating result get mixed together, and costs that are already inside inventory get counted twice.
  • History is hard to migrate. Years of Excel and Tally data carry inconsistent quality and size labels and duplicate parties, and the same voucher must not be imported twice.
Inside the system

What Arham Exports’ team works in

Screens from the diamond trading ERP built by Yukti AI. The figures visible in the screenshots are illustration figures, not Arham Exports’ business results, and party names are hidden.

Diamond inventory management ERP by Yukti AI for Arham Exports, Inventory Intelligence overview: stones and carats on hand, carrying cost, indicative selling value, expected margin, fast, slow and dead stock, excess and shortage counts by quality and size, and carrying cost by quality (illustration figures)
Inventory Intelligence overview — carrying cost against indicative selling value (which is labelled as not realised revenue), movement classes with configurable rules, and excess and shortage by quality and size.
Diamond inventory ageing report in the Arham Exports ERP: five ageing buckets from 0 to 90 days to 2 plus years with carats and cost, and the lots in the selected bucket with quality, size, remaining carats, cost, days held and stock class (illustration figures)
Ageing report — five buckets, each opening the lots inside it with quality, size, remaining carats, cost, days held and stock class.
AI diamond purchase recommendations in the Arham Exports ERP: what should I purchase and what should I stop purchasing, with quality and size, action, suggested carats, average monthly sales, velocity, demand trend, stock on hand, reserved and usable stock, coverage and reorder level, and a written explanation for each row (illustration figures)
Purchase recommendations — BUY NOW, BUY, MONITOR, HOLD or STOP BUYING for each quality and size, with the demand, stock and coverage figures and a written reason.
AI business copilot in the Arham Exports diamond ERP answering what should I purchase this week, with supporting figures, a table of quality and size, links to the records and a button that records the suggestions without placing any order (illustration figures)
AI business copilot — an answer built from the ERP’s own calculations, with supporting figures and links; it records a suggestion only after a person confirms, and never places an order.
Before → after

How diamond stock and cost are tracked now

Before

  • Purchase and sales registers in Excel and Tally, kept apart
  • Cost of the remaining carats worked out by hand, or not at all
  • Broker brokerage and shipping kept outside lot cost
  • Stock judged by memory: what feels old or slow
  • Brokers compared on price or on sales value
  • Buyers’ requirements in notebooks and chats

After (in the ERP)

  • One thread: purchase → lot → partial sale → profit → receivable
  • Weighted-average cost per lot, so remaining cost stays right
  • Brokerage, shipping and insurance spread across lots and capitalised once
  • Five ageing buckets and fast, slow and dead rules you can read and change
  • Scorecards on realised margin, price, consistency, delivery and sell-through, with a confidence level
  • Requirements matched to lots in the same quality and size, oldest lots first
Before vs after, step by step

How does a trading day change, task by task?

The table walks through the real jobs on a diamond trading desk and what each looks like in the ERP. The “before” column is a general description of the manual way of working, not a measurement, and no time savings are claimed.

TaskBefore (manual)After (in the system)
Buying a parcelPurchase entered in a register; brokerage and shipping tracked separatelyMulti-line purchase with live landed cost; additional costs allocated by value or by carats; each line creates its own lot
Selling part of a lotSale entered; remaining stock updated by handLot picker shows available carats and cost basis; oversell is blocked; cost of goods sold, profit and margin are shown live
Checking stockScroll through a sheet of lotsLot-wise inventory with remaining carats and cost, days held, status and stock class, plus a movement ledger for each lot
Finding slow stockJudged by memoryFive ageing buckets; New, Fast, Normal, Slow and Dead classes from rules in Settings
Deciding what to buyGut feeling and recent enquiriesBUY NOW, BUY, MONITOR, HOLD or STOP BUYING per quality and size, with demand, usable stock, coverage and the reason
Choosing a brokerCheapest price or biggest relationshipScorecard on realised margin, price against comparables, consistency, delivery and sell-through, shrunk toward neutral for small samples
Following up a buyerRemembered or noted in a chatFollow-ups today, overdue and upcoming; dormant tiers at 30, 60, 90 and 180 days; open requirements matched to lots
Collecting paymentOutstanding checked invoice by invoiceReceivables ageing, partial receipts allocated manually or oldest first, overdue buyers flagged before new stock is offered
Month-end reviewReports assembled in ExcelMIS tabs for profit and loss, sales, purchases, margin and stock valuation with filters and CSV export

Want a system like this for your diamond business?Tell us how you buy, hold and sell stock today and we’ll show you what one system would replace. Free workflow audit, reply the same day.

Chat on WhatsApp
Inventory

Diamond inventory management software: lots, parcels and sizes

The inventory module is built around one rule: every purchase line creates its own lot, and a lot is the unit that is costed, sold from, aged and judged. That is how traders actually think about stock, and it is why a generic stock-keeping system, which tracks items with a quantity, is a poor fit. A parcel of calibrated stones is not sixty identical items; it is a lot with a quality, a size range, carats, a landed cost, a supplier, perhaps a broker, and a history.

What each lot records

  • Origin: lot ID, purchase number and date, supplier and purchase broker.
  • Specification: a quality band and a size band. The working version ships with a starter grid of five quality bands (from top colour and clarity down to browns and fancy) and six size bands, the smallest being a melee band of 0.01–0.09 ct and the largest 1.50 ct and above. These are masters that can be set to a firm’s own assortments when the live database is configured.
  • Quantities: opening and remaining carats, and optionally stones. Inventory is carat-first; a lot is tracked in stones only if the purchase line gives a stone count, and in that case a sale must state the stones sold so that carats and stones never drift apart.
  • Money: original purchase value, allocated additional costs, landed cost, remaining cost and the average cost per carat of what remains.
  • History: every sale from the lot, sales value, cost of goods sold, gross profit, margin, last movement date, days held, status (Open, Partially sold, Sold out or Cancelled) and stock class.
  • A movement ledger: a purchase-in movement, then sale-out movements, and reversal or return movements if anything is corrected. Balances are derived from this ledger, not typed into a field.

Melee and calibrated diamonds

Melee and calibrated goods are sold by the carat in parcels, which suits carat-first inventory. The system does not force a stone count where the business does not track one, and it does not guess a conversion between carats and stones. Where stones are tracked, the rule that selling all remaining stones must also sell all remaining carats (and the reverse) keeps the two measures consistent. If your parcels are graded into sieve sizes or assortments finer than the starter grid, that grid is where the extra detail goes.

One source of truth

Every dashboard, report, drawer, alert and copilot answer calls the same calculation engine, so a lot’s remaining cost is the same number everywhere it appears. A ledger check confirms that a lot’s remaining carats equal its opening carats minus net sold carats, that remaining cost equals landed cost minus cost of goods sold, and that no cost goes negative. For the buying side of the same question, see our guide on what to look for in jewellery ERP software, and for a jewellery manufacturer’s version see the Lumera jewellery ERP and CRM.

Costing

Lot-wise costing: weighted-average cost per lot and partial sales

Costing is where trading software most often goes quietly wrong, so the method is fixed and written down: weighted-average cost, per lot. It is shown read-only in Settings and is never changed silently.

How landed cost is built

  1. Each purchase line is valued as carats × rate × exchange rate into rupees.
  2. Additional purchase costs — shipping, insurance, duty, other, and brokerage worked out as the broker’s rate on the gross value — are allocated to the lines. Every cost carries its own basis, by value (the default) or by carats, and is spread so that the allocated parts add up to the cost exactly, to the paisa.
  3. Landed cost is gross value plus allocated cost. That is the opening cost of the lot created for the line, and effective cost per carat is landed cost divided by carats.

Because these costs are inside inventory, they flow into the cost of goods sold only when the carats are sold, and they are not expensed a second time: an expense flagged as capitalised to a purchase is excluded from operating expenses.

How a partial sale takes cost out

The average cost per carat of a lot is its remaining cost divided by its remaining carats. A sale line’s cost of goods sold is the carats sold times that average at the moment of posting. When a sale takes all the remaining carats it takes all the remaining cost, so no rounding residue is ever left in a sold-out lot. Selling more than the remaining carats is blocked, including across several lines of one invoice. Because the average of a lot stays constant while it is only ever being sold from, a partial sale never distorts the cost of what remains.

A worked example

The numbers below are invented to show the mechanics, the same way the system’s own documentation and automated test do. They are not Arham Exports’ figures.

StepCaratsRate per ctValueCost taken outRemaining ctRemaining cost
Purchase, landed cost100———100₹10,00,000 (₹10,000 per ct)
Sale 130₹12,000₹3,60,000₹3,00,00070₹7,00,000
Sale 220₹12,500₹2,50,000₹2,00,00050₹5,00,000
Total50—₹6,10,000₹5,00,00050₹5,00,000

Gross profit on the part that sold is ₹1,10,000, a margin of about 18.03 percent, and the 50 carats still on the shelf carry ₹5,00,000 of cost at the unchanged ₹10,000 per carat. Every figure is computed from transactions; nothing is hard-coded.

Corrections never delete history

  • Cancelling a sale restores the carats and the original cost through reversal movements. It is blocked while receipts are allocated or returns exist, and cancelling twice is rejected.
  • A sales return comes back in at the original sale cost, not today’s average, and a credit note reduces the receivable and the revenue.
  • Cancelling a purchase is allowed only while none of its stock has net sales and no payment is allocated.
  • Receipts and payments are reversed, not deleted, which re-opens the invoice balance.
  • Double submits are safe. Every posting carries a request ID created once per form, so a double click, a refresh or a retry returns the original document and creates nothing. Duplicate supplier invoices and duplicate external references are rejected.

Other costing methods, such as FIFO across lots or standard cost, are not part of this build. If a firm wants one, we would add it as an explicit setting, not a silent change.

Ageing and stock classes

Diamond inventory ageing report: fast, slow and dead stock by rule

Every open lot sits in one of five ageing buckets counted from its purchase date: 0–90 days, 91–180 days, 181–365 days, 1–2 years and 2+ years. Each bucket shows carats and carrying cost, and opens the lots inside it with quality, size, remaining carats, cost, days held and class. Click a chart segment or a KPI anywhere in the system and the underlying records open.

Age alone does not make stock dead, so the system also classifies every lot into one of six classes using rules held in Settings. These are the default thresholds in the working version, and all of them can be changed:

ClassDefault rule
NewHeld for less than 30 days
FastSelling at 20% of the lot or more per month, and moved within the last 45 days
NormalEverything that is not New, Fast, Slow or Dead
SlowHeld at least 120 days, and either selling under 8% of the lot per month or not moved for 90 days
DeadHeld at least 365 days and not moved for 180 days and no more than 25% of the lot sold
Sold outNo carats remaining

The key design decision is that dead needs all three conditions together. A lot is never labelled dead simply because it has not moved for a short time. That matters because dead stock is excluded from usable stock in the buying engine and takes a larger haircut in valuation, so a loose label would distort both.

Carrying cost versus indicative selling value

The inventory screens show two different numbers and never mix them. Carrying cost is what the remaining stock cost you. Indicative selling value is remaining carats multiplied by a reference selling rate for that quality and size, taken from recent sales in the last 180 days, then from all-time sales, then, if there is no sales history at all, from cost plus an assumed markup of 12 percent. The basis used is always displayed. Slow stock takes a 7 percent haircut and dead stock 15 percent by default. Expected gross profit is indicative value minus carrying cost, labelled indicative everywhere, and it is never added to revenue or to realised profit. This is a deliberate line: an unsold diamond has a cost, an estimate and a hope, but not yet a profit.

Excess and shortage

For each quality and size the system compares usable stock with demand to flag excess (coverage above a limit, 180 days by default) and shortage risk (coverage shorter than lead time plus safety days, 28 days by default). Those flags feed the recommendations below and the alert centre.

The AI layer

AI inventory management for diamonds: what is built, and what is not

“AI inventory management for diamonds” is a phrase that can mean anything from a chatbot to a forecasting model, so this page is specific. The intelligence in this ERP is of two kinds, and both are built to be checked.

1. A deterministic decision engine

Stock classification, ageing, excess and shortage, purchase and stop-buying recommendations, broker and customer scoring, and alerts are plain formulas with settings you can read, change and test. Given the same records they give the same answer, and each answer carries the figures behind it. There is no machine-learning forecast and no hidden model deciding what to buy. Where there is too little history, the engine says “Insufficient history” instead of producing a confident number.

2. An AI business copilot that explains, but does not calculate

The copilot recognises eleven types of question (listed below), runs the matching engine and returns a summary, supporting figures, a table and clickable references to the lots, brokers or customers involved. It respects the user’s role, so restricted cost and margin figures are not disclosed to roles without that permission. An optional language-model layer is built for go-live: it receives only the already-computed facts of one answer and is instructed to explain them without adding or recalculating any number. That layer is switched off until a key is configured and has not been exercised against a live key in the working version.

Built, and buildable

CapabilityStatus
Ageing, fast, slow and dead classification with configurable rulesBuilt
Buy, buy-now, monitor, hold and stop-buying advice with reasonsBuilt (rule-based)
Broker and customer scorecards with confidence levelsBuilt (rule-based)
Requirement-to-stock matching and cross-sell suggestionsBuilt (rule-based)
Copilot answers to eleven management questionsBuilt (answers from the ERP’s own engines)
Language-model wording of copilot answersBuilt, switched on at go-live with a key
Seasonal demand forecastingNot built; needs two or more years of clean history
Price forecasting, certificate or market-price lookupNot built

The same approach is explained on our AI ERP and AI CRM pages, and agents that act across ERP data are covered under ERP-connected AI agents. For the diamond and jewellery trade specifically, see AI automation for diamond and jewellery businesses.

Buying advice

What should a diamond trader buy, and what should they stop buying?

For every quality and size the purchase engine produces an action and an explanation. It is built to answer two questions the owner asks in different words every week: what should I purchase? and what should I stop purchasing?

The calculation

  • Planning demand per day is half the average over the last 180 days plus half the last 60 days’ velocity, so recent movement counts without wiping out the longer picture.
  • Usable stock is stock on hand, minus carats reserved for confirmed customer orders, minus dead stock. Stock that is already promised or cannot be sold is not counted as cover.
  • Coverage in days is usable stock divided by planning demand.
  • Reorder threshold is planning demand times lead time plus safety days (14 plus 14 by default), and target stock is demand times target cover days (45 by default).
  • Suggested purchase is target stock minus usable stock when usable stock has fallen below the reorder threshold, rounded to half a carat.
  • Trend compares the last 60 days with the previous 60 and labels demand Rising, Stable or Falling.

The six actions

ActionWhen it appears
BUY NOWUsable stock will run out before a replenishment can arrive (coverage shorter than lead time)
BUYUsable stock is below the reorder threshold
MONITORCoverage is below the target but above the reorder point
HOLDStock covers the target; no purchase needed
STOP BUYINGCoverage is above the excess limit, there is no demand, history is thin while aged stock is already held, or the expected margin at recent prices is below the minimum (6 percent by default)
INSUFFICIENT HISTORYFewer than four sales in 180 days, or under 60 days of history: no forecast is made

Each row carries a written explanation built from the same figures. For example, the engine writes that a particular quality and size has a suggested purchase of so many carats, that estimated demand is so many carats a month with a stable or falling trend, that usable inventory covers about so many days, and that open enquiries should be validated before purchasing. A warning is added when the recent margin is thin or the trend is falling. The row also names the supplier and broker with the best realised margin on that specification, using only those with at least 10 carats sold. The result is advice a purchase head can challenge, which is the point.

It never places an order. The most the system will do is record that a person accepted a suggestion. For the owner-level, plain-language way of asking the same thing, see the copilot.

Brokers and suppliers

Diamond broker management software: scorecards that do not reward luck

Brokers sit on both sides of a diamond trade, and the same person or firm may act as a purchase broker, a sales broker or both. The system models that as one broker record with a role, so a person is never duplicated, and it scores the two roles separately.

Principles the scoring follows

  • Outcomes, not price. The lowest price is never automatically best; price is one of five weighted components.
  • Comparable only. A broker’s price is compared with other purchases of the same quality and size in the same period.
  • Realised versus expected. Realised margin counts only carats already sold. Profit still sitting in unsold stock is shown separately as indicative.
  • No double attribution. A purchase has one purchase broker and a sale one sales broker, so within a role the profit attributed to brokers plus unbrokered profit equals total gross profit. Purchase-side and sales-side scores are never added together.
  • Brokerage is a visible cost. Purchase brokerage is inside landed cost, and sales brokerage is shown separately with margin after brokerage scored.
  • An evidence gate. Fewer than three transactions or 15 carats and the broker shows “Not enough data” with no rank.

The default weights

Purchase broker componentWeightSales broker componentWeight
Realised margin of sourced lots35Realised margin after brokerage35
Price against comparables20Lead conversion (a won lead needs a posted sale)15
Quality and assortment consistency15Payment collection on invoices past due25
Delivery reliability15Repeat business (customers with two or more invoices)25
Sell-through speed of sourced lots15

The composite is then shrunk toward neutral for small samples: adjusted score equals 50 plus (score minus 50) times n divided by n plus 4, where n is the number of transactions. A lucky three-deal broker therefore cannot outrank a proven one, and rank uses the adjusted score. Each broker also gets a confidence level: Not enough data, Low (under six transactions), Medium (six to nine) or High (ten or more, with at least half the sourced carats sold). Weights and thresholds sit in Settings.

Quality and size matching

The same scorecards are re-run for each quality and size, so the screen can answer which purchase broker performs best for a given specification, which sales broker generates the best result for it, and which brokers lack the evidence to be ranked. A broker can be strong in one quality and weak in another, and the matrix shows it. This is the nearest thing to a diamond broker management report that does not simply sort by commission.

Suppliers are not brokers

Supplier management keeps supplier performance apart from broker performance: volume bought, landed cost against comparables, payables, consistency, slow stock held from the supplier and the profit realised from its lots. A cheap supplier that supplies slow stock looks different in this report than in a price list.

CRM and buyers

A diamond CRM with stock matching, not just a contact list

Most CRMs know a buyer’s name and last call. A diamond trader also needs to know what that buyer buys, what it earns, whether it pays, and which lot in stock suits its requirement. Because the CRM sits on the inventory and sales records, it can.

Customer analytics

  • Top-20 lists by sales, by gross profit, by carats, by margin and by a composite score, plus low-margin, dormant, declining and overdue customers.
  • The composite score is configurable and its weights are visible (25 percent sales, 15 carats, 30 profit, 20 margin, 10 frequency by default), so a buyer with big sales and thin margin can be told apart from a smaller buyer with better realised profit.
  • Dormancy tiers at 30, 60, 90 and 180 days without a purchase, each with the last purchase, last interaction, responsible salesperson and a recommended next action. A customer with an overdue balance is told to collect before offering new stock.
  • Cross-sell suggestions: stock that shares the quality or an adjacent size with what a buyer already buys, with slow stock surfaced first.

Requirement-to-stock matching

Customer requirements are recorded by quality, size and carats. The matching screen lists the open lots that can satisfy each requirement, oldest first, with the carats available and the shortfall if any. Confirmed orders also reserve stock in the buying engine, so what is promised is not counted twice.

Prospect pipeline

Prospects move through five stages — IDENTIFY, CALL, SHOW, NEGOTIATE and CLOSE — on a board with drag-and-drop or a stage menu. Each lead records the company, contact, source, required quality and size, estimated carats and value, salesperson, last contact and next follow-up. Pipeline value, stage-to-stage conversion (from stage history) and salesperson activity are shown. A lead counts as won only when a posted sale is linked to it, so the conversion figure cannot be flattered by a deal that was only marked closed.

Follow-ups

Today’s, overdue and upcoming follow-ups, leads with no next action and pending work per employee, each with complete, reschedule, reassign and note actions. Nothing is sent to anyone from this screen. If you want a CRM for a diamond business that also runs over WhatsApp, see our custom CRM software, the Yukti AI CRM and CRM automation pages, and the jewellery CRM we built for Surati.

Cash and reports

Receivables, expenses and MIS reports for a diamond trader

Receivables and payables

Balances are held at invoice level. A customer receipt or supplier payment can be allocated invoice by invoice or automatically to the oldest invoices first, partial payments are supported, and any unallocated part stays visible. A receivable is the invoice value minus credit notes minus posted receipt allocations, and it is overdue when it has a balance and its due date has passed. Ageing uses five bands: not yet due, 1–30, 31–60, 61–90 and over 90 days. Supplier payables exclude additional costs such as shipping or insurance that are settled directly.

Expenses and other income

Brokerage, shipping, insurance, salaries, office, bank charges, travel and other heads, a monthly trend and expenses as a percentage of sales. Capitalised costs are kept out of the profit and loss so they are not counted twice. The system draws a hard line between gross profit (sales minus the cost of the carats sold) and the net operating result (gross profit plus other income minus operating expenses, which include payroll and sales brokerage).

MIS and reports

The reports area has tabs for profit and loss by month, sales detail, purchase detail, margin analysis and stock valuation. They can be filtered by date, month, customer, supplier, broker, quality, size, lot, salesperson, location and currency, sorted, paged and exported to CSV. They run on the same engine as the dashboards, which is why a number in a report and the same number on the CEO dashboard cannot disagree.

The owner’s dashboard

The CEO dashboard opens with a briefing that summarises sales against the previous period, margin movement, how many qualities will run out before replenishment can arrive, capital locked in dead stock and overdue follow-ups, with a health score and quick questions to the copilot. Below it are performance, inventory health, customers, procurement and brokers, cash and obligations, and CRM and team, with date-range filters and previous-period comparison. Every KPI and chart segment drills into its records.

If you are weighing what belongs in one system for a trading business, see our AI-powered business management system pillar, and for the wider pattern of replacing Excel and accounting-only software, Replace Excel & Tally.

Automation

Diamond business automation: alerts, reminders and messages, built versus buildable

Automation here means the system watching the records for you and telling the right person what needs attention. It does not mean software acting on its own authority.

Built: the alert centre

Twelve alert types run from the data, each with a severity (critical, warning or info), a reason, the supporting figures and a button to the relevant screen:

  • Dead stock, ageing stock (held over a year), excess stock and low stock against demand.
  • Margin decline against the previous period, and unusually high or low transaction prices (a 12 percent deviation by default).
  • Overdue receivables, supplier payments falling due (7 days by default) and overdue follow-ups.
  • Dormant high-value customers, purchase recommendations, and missing data that weakens a recommendation.

Built: scheduled work lists, not messages

Follow-up lists, dormancy tiers and the copilot’s “who should my team contact today?” answer produce drafts: the contact list and suggested wording are shown for a person to use. Nothing is sent from the system in the working version.

Buildable: WhatsApp and e-mail delivery

Alerts carry channel hooks for WhatsApp and e-mail, but delivery is disabled and stays disabled unless credentials, permissions and the recipient’s consent are configured; the setting is off by default. Connecting it means a WhatsApp Business API account and approved templates, which we cover in WhatsApp Business API pricing in India and WhatsApp automation. Typical diamond uses are a payment reminder to a buyer past due, a stock-arrival note to a buyer whose requirement matches a new lot, and a daily owner summary. Wider process automation, such as scheduled MIS delivery or approvals, is the work of workflow automation. None of these is claimed as connected for Arham Exports.

ERP, inventory software or Tally

Diamond ERP vs inventory software vs Tally: which does a trader need?

Most diamond traders already have Tally or a similar accounting package, and many keep stock in Excel. The question is which problems each tool solves, because they are different problems.

NeedTally or accounting softwareStock list or inventory appDiamond trading ERP (this build)
Ledgers, GST and statutory booksStrong: this is its jobNoNot replaced here; the books stay in Tally
Lot with landed cost and a movement ledgerNot natural; stock is by itemUsually stock by item or packet, with weak costingYes, weighted-average cost per lot
Profit of the part of a lot that soldHard; needs manual workingsRarelyYes, on every sale line
Ageing, fast, slow and dead rulesNoSometimes a basic ageingYes, configurable
Broker and supplier scorecardsNoNoYes, with confidence and an evidence gate
Buyers matched to stock, follow-ups, pipelineNoNoYes
Buy and stop-buying advice with reasonsNoNoYes, rule-based
Owner dashboard with drill-downs and a copilotLimited reportsNoYes

This is why the working version keeps a “systems of record” table in Settings: after migration the ERP is authoritative for the customer and supplier masters, for purchases and sales after go-live, for inventory lots and movements, and for CRM, follow-ups and broker data, while Tally stays the authority for ledgers, GST and statutory books and as a read-only archive of vouchers from before go-live. The ERP does not issue GST invoices or push vouchers into Tally in this build. Where a firm wants a two-way connection, that is the work described in our Tally integration with a custom ERP guide, and the case for moving off spreadsheets step by step is in moving from Excel and Tally to one system.

Moving the data

Importing Excel and Tally history without double counting

The brief for this build says the client had roughly five years of Excel and Tally data, so a migration centre was built to bring history in safely. It is a guided workflow, not a one-click import:

  1. Upload a CSV or Excel file (customers, suppliers, purchases or sales) and preview the rows.
  2. Map columns, with common aliases recognised (for example party, ledger or vendor for a name).
  3. Standardise labels for quality and size, so that several spellings of one quality become one.
  4. Detect duplicates in customer and supplier identities (near-matches are suggested for review) and in transactions, so the same voucher is not imported twice.
  5. Validate and show errors row by row, with an error report.
  6. Confirm explicitly. Nothing is imported or overwritten without a validated mapping, a preview and a confirmation.
  7. Reconcile sales, purchases, receivables, payables and inventory after the import. Re-importing the same file creates nothing.

Tally is handled as a source of exported files. No direct Tally connection is assumed or claimed. For more on the trade-offs, read Replace Excel & Tally.

Export

Diamond export software: what the ERP covers for an exporter, and what it does not

Arham Exports sells to customers in other countries, so the system supports the parts of exporting that live in trading records. Purchases and sales can be raised in a document currency such as USD, AED or HKD with the exchange rate entered on the document, and every report runs in rupees. Customers and suppliers carry a country and a city, and customer types include dealer, wholesaler, manufacturer, retailer, online retailer and exporter. Receivables and ageing work for overseas buyers in the same way as for domestic ones, and the sales filters include currency and location.

What it does not do is also worth stating plainly. It does not generate export invoices, packing lists, shipping bills or bank realisation records, does not post foreign-exchange revaluation or gain and loss (documents are converted at the rate entered), and does not file anything. Those remain with the firm’s export documentation process and its accountant. If you need export documents generated from the same records, that is an addition to scope, discussed after a free workflow audit; see also our diamond software page, which covers memo, parcel inventory and export-house stock workflows for Surat traders.

Solution architecture

One thread, purchase to profit to cash

Purchase
Supplier, purchase broker, landed cost, FX, brokerage
Lot
Quality, size, carats, weighted-average cost, movement ledger
Inventory intelligence
Ageing, fast, slow, dead, excess, shortage, buy and stop-buying
Partial sales
Customer, sales broker, COGS, profit, margin
CRM and brokers
Requirements, follow-ups, scorecards
Cash and MIS
Receivables, payables, expenses, reports, copilot

The architecture has three layers that keep the numbers honest. A calculation engine of pure functions derives lot views, finance, brokers, customers, suppliers, recommendations, alerts and copilot answers from an immutable snapshot of the data. A service layer is the only way to write: every posting is validated, permission-checked, audited, atomic (all or nothing) and idempotent. The screens only display what the engine returns. Balances, costs, receivables and every report are derived from transactions, and no summary table is ever duplicated, so there is nothing to drift. For production, a PostgreSQL schema with row-level security and database functions for posting and cancelling was written to mirror the same rules; it has not been run against a live database yet, which is part of go-live.

What we built

The modules

All 18 modules are working pages on one shared dataset, plus a notification centre — the scope of a full AI-powered business management system shaped around a diamond trading desk. Global search (Ctrl+K) finds customers, suppliers, brokers, prospects, lots, invoices, qualities, sizes and requirements, and opens a detail drawer.

CEO dashboard

Business performance, inventory health, customers, procurement and brokers, cash and obligations, and CRM and team, with date range and previous-period comparison, a business-intelligence briefing and drill-down on every KPI and chart segment.

Purchase management

Multi-line purchases with live landed cost, additional-cost allocation by value or carats, brokerage, foreign-currency rates, payment terms and due dates, atomic posting that creates lots, opening movements and a payable, and cancel and reverse.

Sales management

A lot picker that shows available balance and cost basis, multi-lot invoices, oversell blocked, live cost of goods sold, profit and margin, sales brokers, returns and cancellations.

Lot-wise inventory

A filterable list of lots by class, quality and size, supplier and broker, with remaining carats and cost, sales value, cost of goods sold, gross profit, days held and a movement ledger for each lot, and CSV export.

Inventory intelligence

Overview, ageing and purchase recommendations: carrying cost and indicative value, quality, size, supplier and broker splits, five ageing buckets, fast, slow and dead stock, excess and shortage, and the buy and stop-buying reports.

Broker intelligence and supplier management

Purchase and sales brokers, quality and size matching, a broker directory with roles, terms and notes, and supplier analytics kept separate from brokers.

Customer management, prospect CRM and follow-ups

Rankings, dormant, declining and overdue buyers, cross-sell, requirement matching, a five-stage board, activities and a follow-up desk.

Receivables and payables, expenses and other income

Invoice-level balances, partial receipts and payments with allocation, ageing, upcoming payments, expense categories, monthly trend and expenses as a share of sales.

Employee and payroll

Employee master, salary structure, attendance, leave, incentives, deductions, net salary and paid or pending status, with salary figures visible only to roles that hold that permission. It is a simplified payroll with no statutory filings.

MIS and reports, AI copilot, import, audit log and settings

Five report tabs with filters and CSV export; the copilot; the import and migration centre; an audit log of every posting, cancellation, permission and settings change; and settings for stock rules, valuation, recommendation parameters, scoring weights, alert thresholds, roles and permissions, systems of record and the AI and messaging switches.

Feature by feature

Every feature of the diamond ERP, and what it is for

Everything in this table is built into the system. The right-hand column is the purpose of the feature, not a measured result.

FeatureWhat it doesPurpose for the business
Lot per purchase lineCreates a uniquely identified lot with landed cost and an opening movementJudge stock and profit at the level traders actually think in
Cost allocationSpreads brokerage, shipping, insurance and duty by value or carats, exactly to the paisaMargins that include the real cost of getting the stone
Weighted-average cost per lotTakes out cost in proportion to carats soldRemaining cost stays correct after partial sales
Oversell blockRefuses sales beyond remaining carats, also across lines of one invoiceStock records that cannot go negative
Reversal and return handlingCancels and returns as linked records at the original costHistory is never deleted and nothing is double counted
Idempotent postingA request ID makes double submits harmlessNo duplicate stock from a refresh or double click
Ageing bucketsFive buckets from 0–90 days to 2+ years, each opening its lotsSee where money has been sitting and for how long
Stock classesNew, Fast, Normal, Slow, Dead, with dead needing three conditionsDo not mislabel a short pause as dead stock
Indicative valueCarrying cost beside an estimated selling value with haircuts and a shown basisSee potential without confusing it with revenue
Purchase engineDemand, usable stock, coverage, reorder point and suggested carats per quality and sizeBuy what the data supports, with the reasoning visible
Stop-buying reportFlags excess, no demand, thin margin or thin history with aged stockStop adding to the wrong stock
Broker scorecardsWeighted components, sample adjustment, confidence, evidence gateRank brokers on outcomes, not price or luck
Quality and size matchingBest purchase and sales broker for each specificationRoute each purchase to the source that suits it
Supplier analyticsVolume, landed cost, payables, consistency, slow stock, realised profitSeparate supplier quality from broker quality
Customer rankingTop-20 lists and a configurable composite scoreKnow which buyers earn you money, not just revenue
Dormancy and declining tiers30, 60, 90 and 180 days, and falling purchasesReach out before a buyer is lost
Requirement matchingMatches open requirements to lots of the same quality and sizeOffer the right stone to the right buyer
Five-stage CRMBoard, activities, conversion, won only with a linked posted saleAn honest pipeline
Receivable allocationManual or oldest-first allocation of partial receiptsExact outstanding per invoice
Gross vs net splitGross profit separate from net operating result; capitalised costs excludedKnow what the stock earns versus what the business earns
MIS reportsFive report tabs with filters and CSV exportMonth-end review without rebuilding spreadsheets
Alert centreTwelve alert types with severity, reason, data and actionThe system points at what needs attention
AI copilotEleven question types answered from the engines, drafts onlyAsk the business a question in plain language
Import centrePreview, mapping, label standardisation, duplicate checks, reconciliationBring years of history in safely
Roles, audit logSix roles, a permission matrix, an audit trail of changesStaff see what they need; changes can be traced

Still tracking diamond lots in Excel?Show us your purchase and sales flow and we’ll map what lot-wise costing and ageing would change. Free workflow audit, reply the same day.

Chat on WhatsApp
Workflows

Workflows the system was tested against, step by step

The build brief set twenty mandatory workflows, and the working version is checked against them with automated tests (51 in all) and by walking the screens. Seven of them show how the modules connect:

  1. Purchase to lot. A purchase with a broker and additional costs is posted; a lot appears with landed cost including brokerage, and an opening movement. Posting the same form twice creates nothing new.
  2. Two partial sales from one lot. The same lot is sold in two parts at different rates. The remaining carats and remaining cost, the revenue, the cost of goods sold, the profit and the margin all follow from the transactions, and match the worked example above.
  3. Ageing and classification. A lot held for a long time is placed in the right bucket; a lot with a short pause in movement is not called dead.
  4. Recommendations that change. A purchase suggestion appears when usable stock falls below the reorder point, changes when stock or sales change, counts stock reserved for confirmed orders, and turns into STOP BUYING when stock covers far beyond the excess limit.
  5. Brokers by specification. The cheapest broker is not ranked first; a broker with thin evidence shows “Not enough data”; one person can be a purchase and a sales broker without being duplicated; each transaction’s profit is attributed once.
  6. A lead through five stages. A prospect is moved from IDENTIFY to CLOSE and stays an open lead, not a sale, until a posted sale is linked.
  7. Cancel and reverse safely. Cancelling a sale restores the stock at its original cost, once; a second cancel is rejected; a receipt must be reversed before the sale it paid for; a return comes back at the original cost; a purchase cannot be cancelled after its stock has sold.

The same checks include role restrictions (a sales user sees restricted cost and margin figures as hidden, and the copilot declines restricted questions), partial receipts (a part-payment leaves the exact balance outstanding and over-allocation is rejected) and consistency across screens (lot, customer, supplier and period totals agree).

The copilot

The AI copilot’s eleven questions for a diamond business

The copilot is designed around the questions an owner actually asks. It recognises these, answers each from the matching engine and links to the records behind the answer. Questions that mention a quality and size, such as a code for a specific specification, are filtered to it.

  1. What should I purchase this week?
  2. What stock should we avoid purchasing?
  3. Which quality is moving fastest?
  4. Which broker is best for a particular quality and size?
  5. Which suppliers have generated the highest realised profit?
  6. Which customers have become dormant?
  7. Which lots are tying up the most working capital?
  8. Why has gross margin declined this month?
  9. Which customers should my sales team contact today?
  10. Which inventory can satisfy open customer requirements?
  11. What needs management attention?

Four guardrails apply to every answer: figures come from the deterministic engine and never from a language model; answers respect the user’s role; no purchase, price change, accounting entry or message happens without explicit confirmation; and when history is insufficient the answer says so instead of guessing. The “contact today” answer can show draft WhatsApp messages, and the purchase answer can record that suggestions were accepted, but neither sends or places anything. If you are exploring agents that go further, see AI agent development in Surat.

Roles and security

What each person sees, and how changes are traced

Six roles are defined, each a set of permissions that can be edited in a live matrix: CEO or Admin (everything), Purchase Team (posts purchases and sees cost but not selling margins), Sales Team (posts sales and runs the CRM, with cost and margins hidden), Accounts (receipts, payments, expenses and financial reports), HR (employees, attendance and payroll only) and Management Viewer (read-only dashboards and reports, no salary data). Purchase cost, margins, financial reports and salaries are separate permissions, so a salesperson can quote a buyer without seeing what the stone cost.

Permissions are enforced inside every service, not just hidden in the screens, and every posting, cancellation, permission change and settings change goes into an audit log. For production the database policies are written to enforce the same rules at the data layer, with cost and margin hidden in the views that roles without that permission read. Those policies have been written but not yet run against a live database; that is a go-live step. A user switcher in the working version lets you see what each role sees. It is a way to review the permission design, not a login system.

See your own stock in a working system firstWe build on your real lots, brokers and buyers, so you judge something working, not a slide deck. Free workflow audit, reply the same day.

Chat on WhatsApp
Implementation process

How it was built

STEP 1

Start from the trading flow

The brief set out the real workflow, purchase to supplier and broker to lot to partial sale to receivable to CRM to recommendation, and the ten questions management should be able to answer.

STEP 2

Costing engine first

Lot costing, allocation, partial sales, returns and reversals were built and tested before any screen, because every other number depends on them.

STEP 3

Transactions, then intelligence

Purchases, sales, inventory, then brokers, suppliers, customers, CRM and the purchase engine, all reading the same engine.

STEP 4

The 18 modules on one dataset

Every navigation item is a working page, with a realistic dataset built to check each scenario in the brief, including a lowest-cost supplier that is not the most profitable and a broker who is strong in one quality and weak in another.

STEP 5

Redesign as an intelligence console

After the first review the interface was reworked: on-screen explanatory text was cut back, the company’s logo was added, more visuals were introduced and the CEO dashboard was rebuilt to feel like an analytics briefing rather than a template.

STEP 6

Verify

51 automated tests of the business logic pass, covering costing, ageing, recommendations, brokers, customers, receivables, reversals, permissions and migration. Setting up the live database, connections and logins is the go-live step.

Results

What was delivered

What the system does. No business results or client quotes are published, because none were supplied.

18 modules
Every navigation item a working page, plus an alert centre
51 tests
Automated checks of the costing, stock, broker, customer and recommendation logic
5 buckets
Ageing from 0–90 days to 2+ years, each opening its lots
6 actions
BUY NOW, BUY, MONITOR, HOLD, STOP BUYING, INSUFFICIENT HISTORY
11 questions
Answered by the copilot from the ERP’s own engines
12 alerts
Each with severity, reason, supporting data and an action
What we do not claim

No figures for time saved, revenue, stock reduction or number of users are published, there is no client quote, and Arham Exports’ own business numbers, customers, suppliers and brokers stay private. The figures and party names inside the working version are illustrations, not the company’s data. The live database, user logins, WhatsApp or e-mail delivery, Tally files and a language-model key are set up at go-live and are not claimed as connected here.

Under the hood

Technology

  • Next.js 16, React 19, TypeScript, Tailwind CSS 4 — the application and its screens.
  • Recharts and Lucide icons — charts and icons, with drill-downs from every segment.
  • Zod validation — every posting is validated before it can change data.
  • A pure calculation engine — costing, lot views, finance, brokers, customers, suppliers, recommendations, alerts, search and copilot as plain functions of one immutable snapshot, separate from the screens.
  • A service layer — the only write path: validated, permission-checked, audited, atomic and idempotent reducers.
  • An Excel and CSV reader — for the import and migration centre.
  • PostgreSQL schema on Supabase — normalised tables, derived views, database functions for posting and cancelling, and row-level-security policies, written for the production database.
  • Vitest — 51 tests of the business logic.

The working version keeps its data in the browser, so the user switcher and edits are for review. Moving to the live database is the production step. Costing is weighted-average per lot, base-currency reporting is in rupees, and payroll is simplified with no statutory filings.

Feature checklist

Features of diamond inventory management software, and which ones this lot-wise trading build covers

When diamond traders compare software they usually look at the same five groups: inventory and stock control, trading and sales, finance and reporting, diamond operations and certification, and integrations, mobile and security. This checklist follows those groups. “Covered” means it exists in the Arham Exports ERP; “Can be added” means it is not built and would be scoped with the client. The detailed module-by-module list is further down in every feature of the diamond ERP, and what it is for.

Inventory and stock control

For a trader the question is how much stock, at what cost, and how old.

FeatureWhat it doesIn this build
Lot-wise inventoryPer-lot purchase information, landed cost, remaining carats and cost, days held, status and movement ledgerCovered
Weighted-average cost and partial salesCost per carat stays with the remaining stock after a partial sale; profit per lot is computedCovered
Ageing and stock classesFive ageing buckets and New, Fast, Normal, Slow and Dead classes with configurable rulesCovered
Excess and shortage by quality and sizeCompares stock cover with demand across the quality and size gridCovered
Multi-location stock and transfersLocation is a report filter today; an acknowledged transfer workflow between offices is not builtCan be added
Barcode or QR scanningScan a packet or lot label to find or update itCan be added
Memo and consignmentStock out on approval with return dates. Not part of this build; see memo and stock software in SuratCan be added

Trading, sales and pricing

Purchasing, selling and the people between you and the market.

FeatureWhat it doesIn this build
Purchase with landed costMulti-line entry, cost allocation by value or carats, brokerage as a percentage, FX rate, duplicate supplier-invoice rejectionCovered
Sales with live marginLot picker with available balance and cost basis, oversell blocked, live COGS and margin, returns at original costCovered
Purchase and sales broker scorecardsSample-adjusted scores with a confidence level and a “not enough data” stateCovered
Supplier performanceVolume, landed cost versus comparables, payables, consistency, held and slow stockCovered
Customer ranking, dormant customers, cross-sellTop-20 rankings, dormant tiers and requirement-to-stock matchingCovered
Rapaport or price-list referenceA reference rate for stock pricing and comparison; not built, no live lookup is claimedCan be added
Stock feed, website or marketplace uploadPublish stock to a website or marketplace. A private buyer portal is in the diamond trading platform case studyCan be added

Finance, tax and reporting

Where money is tracked, and what stays in Tally by design.

FeatureWhat it doesIn this build
Receivables and payablesInvoice-level balances, partial receipts and payments, oldest-first allocation, five ageing bucketsCovered
Expenses and gross-versus-net viewCategories, capitalised costs kept out of profit and loss, monthly trendCovered
MIS and reportsProfit and loss, sales and purchase detail, margin analysis, stock valuation, filters and CSV exportCovered
History import from Excel and Tally filesPreview, column mapping, duplicate detection and a reconciliation reportCovered
GST invoicing and statutory booksStay in Tally by design (the settings record Tally as the system of record); a defined file or API exchange can be added. See Tally integrationCan be added

Diamond operations and certification

Features that touch the stones and the sales team.

FeatureWhat it doesIn this build
Prospect CRM and follow-upsFive stages, pipeline value, activities and a today/overdue/dormant follow-up listCovered
AlertsTwelve in-app alert types (dead stock, ageing, margin decline, overdue receivable and others) with a reason and an actionCovered
Employee and payrollAttendance, leave, incentives, deductions and net salary, visible only to roles with the salary permissionCovered
Certificate fields and lab status (GIA, IGI)Certificate number and lab on each stone or parcel; no lookup is builtCan be added
Export documentsExport invoice and packing list from the sale recordsCan be added
WhatsApp or e-mail delivery of alertsThe channel hooks exist but delivery is switched off until a Business API number is connectedCan be added

Integrations, mobile and security

Who can see what, and how the system connects.

FeatureWhat it doesIn this build
Roles and a permission matrixSix roles; purchase cost, margins, financial reports and salaries are separate permissionsCovered
Audit logEvery posting, cancellation, permission and settings change is loggedCovered
CSV export from reportsReports export to CSVCovered
Mobile appSearch stock and see alerts on a phoneCan be added
API for websites and partnersA documented API for stock or ordersCan be added

Compare with the custody and assorting approach in the P. Hitesh & Co. diamond ERP and the checklist in what to look for in jewellery and diamond ERP software.

Outside diamonds, the same costing discipline drives the corrugated box ERP with a box costing engine for Gujarat Print & Pack.

Benefits

Benefits of diamond ERP and inventory software for a diamond trading business

Vendors of diamond software talk about efficiency, stock accuracy, cash flow and faster decisions. For a trader who buys lots and sells them in parts, the benefits are more specific. Each one below is tied to the part of the Arham Exports build meant to deliver it. No measured results are published, because none were supplied: these are design intentions, not outcomes.

Know the real profit of each lot

Cost per carat stays with the remaining stock after every partial sale, so profit per lot and per customer is calculated from the lot, not estimated from a total.

See how much money is tied up in slow stock

Ageing buckets and fast, slow and dead classes show the carrying cost of stock that is not moving, with the rule that flagged it.

Buy with evidence, and know what to stop buying

The recommendation engine compares stock cover with demand and gives BUY, HOLD or STOP BUYING with a reason. It says “insufficient history” rather than guess when there is too little data.

Judge brokers and suppliers fairly

Scorecards are adjusted for sample size, so one lucky deal does not rank a broker first, and thin data shows as “not enough data”.

Collect faster and call the right customers

Receivable ageing, overdue alerts and a daily follow-up list put the people to chase and the buyers to call in front of the team, with the lots that match their requirements.

Avoid overselling and double counting

The system blocks a sale larger than the available balance, also across lines of one invoice, and imports history without counting the same transaction twice.

Control who sees cost and margin

Purchase cost, margins, financial reports and salaries are separate permissions, so a sales user can sell without seeing what the stock cost.

For the same question from a house that sorts and moves parcels, read the P. Hitesh & Co. case study; for the Tally question, see ERP, inventory software or Tally.

AI and automation menu

What AI and automation can add to a diamond inventory system

The earlier AI section explains what is inside this build. This is the wider menu for a diamond trader, with an honest label on each idea: Built in our client systems (it exists in a Yukti AI build), Buildable by Yukti AI (we can build it on your own data once accounts and inputs exist) or Not realistic yet (we would not promise it).

IdeaStatusNotes
Stock-ageing, slow-stock and dead-stock alertsBuilt in our client systems (this one)Rule-based with configurable thresholds; dead stock needs age, stagnation and low sell-through together
Buy and stop-buying recommendationsBuilt in our client systems (this one)Deterministic, with reasons; it is not a machine-learning forecast
Broker and supplier scoringBuilt in our client systems (this one)Weighted, sample-adjusted scores with a confidence level
Customer-to-stock matchingBuilt in our client systems (this one)Requirement matched to same quality and size, oldest lots first
Plain-language questions over live dataBuilt in our client systems (this one)Eleven questions answered with supporting figures; a language model can only rephrase the computed facts
Draft replies and offers that cite only real stonesBuilt in our client systems (another one)The diamond trading platform drafts enquiry replies from real stock; not part of this ERP
Stock and price-change alerts to buyers on WhatsAppBuildable by Yukti AIThe alert hooks exist here but delivery is off; needs the WhatsApp Business API, templates and consent. See WhatsApp automation
Payment reminders by WhatsApp or voice callBuildable by Yukti AIReceivable ageing already exists; add a channel and scripts. See voice AI payment reminder calls
Owner morning digest by WhatsApp or e-mailBuildable by Yukti AIThe figures are computed in the dashboard; delivery is a scheduled workflow. See workflow automation in Surat
Reading supplier invoices and packing lists into purchase entriesBuildable by Yukti AIExtraction plus a review screen; never auto-posting
Certificate (GIA, IGI) data extractionBuildable by Yukti AIExtract the report number and grading fields, verify with the lab, and let a person confirm
Price-versus-market flagsBuildable by Yukti AINeeds a price source; a flag against comparables, not a valuation
Seasonal demand forecastingBuildable by Yukti AI after two or more years of clean historyNot credible before that
Price prediction or AI deciding what to tradeNot realistic yetOut of scope; the copilot drafts and recommends, and a person decides
Image-based diamond gradingNot realistic yetSpecialist scanning vendors, not an ERP feature

For the wider picture see AI automation for diamond and jewellery businesses in Surat, AI ERP, AI CRM and ERP-connected AI agents.

What comes next

What can be added next

The keyword lists for diamond software are full of features that this build does not have. They are listed here as what can be added, not as what exists:

AdditionWhat it would involve
Go-live set-upRun the database schema and policies, set up user logins, load the client’s own quality and size grid, import history through the migration centre
WhatsApp and e-mail deliveryConnect a WhatsApp Business API number and approved templates, record consent, switch the channel hooks on for chosen alerts
Language-model wording for the copilotConfigure a server-side key; the model only rephrases the computed facts
Tally or GST connectionA defined file or API exchange for vouchers and GST, agreed with the accountant
Certificate details and price-list referenceStore certificate numbers per stone or parcel; add a price-list reference as a manual or imported rate. Not built; no live lookup is claimed
Stock feed or website exportPublish a stock list or feed for a website or marketplace. Not built; a private buyer portal is described in the diamond trading platform case study
Memo and consignment handlingOut-on-memo status and returns, as covered on diamond software in Surat. Not part of this build
Export documentsGenerate export invoices and packing lists from the sale records
Seasonal forecastingPossible once there are two or more years of clean history in the live system
Cost and timeline

How much does diamond ERP software cost in India, and how long does it take?

Custom ERP from Yukti AI starts from ₹30,000. The final price depends on the modules, the number of units and users, and the integrations you need, and you get a custom quote after a free workflow audit. Focused builds typically take about 7–10 days to a first working version; a multi-module ERP like this one, with inventory intelligence, brokers, CRM and MIS, usually takes a few weeks depending on scope. Package diamond software is often priced per user or per year, and listings range widely; the useful comparison is what each option does with your lots, your brokers and your reporting. Our custom ERP cost guide explains what drives the price, and AI automation cost in India covers the AI side.

Custom or package

Custom diamond ERP vs a diamond software package: how to choose

People searching for the best software for the diamond industry find a mix of packaged products, free tools and custom builds. There is no single winner; there is a better fit for a given business.

  • A package suits a firm whose workflow looks like the vendor’s: standard stock, memo, certificate and price-list features, quick to start, with the vendor deciding the roadmap. Check whether it costs lots, partial sales and brokers the way you think about them.
  • Free tools and spreadsheets are fine for a small stock list. They stop working when you need cost of what remains, ageing rules, broker scoring and an audit trail, and nobody can tell which version of the sheet is right. Free is rarely free once the time of the people maintaining it is counted.
  • A custom ERP suits a firm with its own way of costing, brokering and selling that a package cannot copy, or one that wants a system that keeps growing with it: lot-wise costing in the method you choose, scorecards with your weights, buyers matched to your stock, and reports in the shape the owner reads. It takes a short audit and a build rather than a licence, and you own the logic.

Our view for most small and mid-size diamond traders is to start with the part of the business where a package fits poorly, usually costing, ageing and brokers, and keep Tally for the books. If you are comparing, our checklist for choosing jewellery ERP software lists the red flags, and custom ERP software explains the approach.

For other diamond businesses

If you hold diamond stock in lots and sell it in parts, this is buildable for you

The pattern — a lot per purchase, weighted-average cost, partial sales, ageing and stock classes, rule-based buying advice, broker scorecards, a stock-matching CRM and receivables on one set of records — fits:

  • Natural and polished diamond traders and dealers in Mumbai, Surat and across India
  • Diamond exporters and sourcing businesses that sell to manufacturers and wholesalers
  • Melee and calibrated parcel dealers
  • Jewellery manufacturers and wholesalers that hold loose stone stock

Two Yukti AI diamond builds side by side show the range. The P. Hitesh & Co. ERP is a Surat firm’s system for assorting, parent and child lot traceability, stock custody, payroll and accounting. This Arham Exports build is a trading-desk system for lots, cost, ageing, brokers, buyers and cash. Two different diamond businesses need two different systems, and both are custom. Start with a free workflow audit and see diamond software in Surat, jewellery software, custom ERP software in Surat or manufacturing ERP software. Related builds: the diamond trading platform and the Lumera jewellery system.

FAQ

Diamond inventory management and diamond ERP: questions traders ask

It depends on the business. A packaged diamond ERP suits a firm whose workflow matches the vendor's standard stock, memo and certificate features. A custom ERP suits a trader that costs lots, scores brokers and reads reports in its own way. For a diamond trading desk, check that the software treats a purchase as a lot with landed cost, takes out only the cost of the carats sold on a partial sale, ages stock, and ranks brokers on outcomes. Yukti AI, a software company in Surat, built a custom ERP of this kind for Arham Exports, a Mumbai diamond trader. See diamond software in Surat for the wider options.
Free tools and spreadsheets exist and are fine for a small stock list, but they stop working when you need the cost of the carats that remain, ageing rules, broker scoring and an audit trail. Free rarely stays free once the time spent maintaining the sheet is counted. Custom ERP from Yukti AI starts from Rs 30,000, and the final price depends on the modules, units and integrations you need, with a custom quote after a free workflow audit.
At minimum: a lot for every purchase with its quality, size range, carats and landed cost; remaining carats and remaining cost after every partial sale; the supplier and broker; days held and ageing; stock class (fast, slow or dead); sales and profit per lot; and a movement ledger so balances are derived rather than typed. The Arham Exports ERP tracks all of these, carat-first, with an optional stone count, and keeps every correction as a linked record instead of deleting history.
Manage it by lot rather than by item. Record each purchase as a lot with its landed cost, reduce carats and cost together on every sale, review ageing buckets regularly, classify stock into fast, slow and dead using written rules, and compare stock with demand before buying. In the Arham Exports ERP every dashboard figure drills down to the lots and transactions behind it, so the owner can check any number.
Lot-wise costing means each purchased lot carries its own landed cost, and a sale takes cost out of that lot only. The Arham Exports ERP uses weighted-average cost per lot: the average cost per carat is remaining cost divided by remaining carats, and a sale line's cost of goods sold is the carats sold times that average. For a lot bought for Rs 10,00,000 over 100 carats, selling 50 carats takes out Rs 5,00,000 and leaves 50 carats carrying Rs 5,00,000. This is a worked example with round numbers, not the client's figures.
A sale line picks a lot and states the carats sold. The system shows the lot's available balance and cost basis, blocks any sale above the remaining carats (also across several lines on one invoice), takes out the proportional cost, and shows profit and margin on the part sold. If a sale takes all remaining carats it takes all remaining cost, so no rounding residue is left. Cancelling a sale restores the carats at the original cost, once, and a return comes back at the original sale cost.
Use rules, not feeling. In the Arham Exports ERP a lot is classed Dead only when it has been held at least 365 days, has not moved for 180 days and has sold no more than 25 percent of its carats; these are default settings that can be changed. A lot that has merely paused for a few weeks is never called dead. Dead stock is excluded from usable stock in the buying engine, takes a larger haircut in indicative valuation and raises a critical alert with the cost locked up.
It groups open lots by how long they have been held, counted from the purchase date. The Arham Exports ERP uses five buckets: 0 to 90 days, 91 to 180 days, 181 to 365 days, 1 to 2 years and over 2 years. Each bucket shows total carats and carrying cost and opens the lots inside it with quality, size, remaining carats, cost, days held and class, so the owner can see where money has been sitting.
AI helps most when it is specific and checkable. In this ERP a deterministic engine classifies stock, flags excess and shortage and writes buy and stop-buying advice with the demand, usable stock and coverage figures behind it, and an AI copilot answers eleven management questions from those same numbers with links to the records. It does not forecast prices, place orders or invent figures, and where history is too thin it says Insufficient history. See AI ERP and AI automation for diamond and jewellery businesses.
Not with a machine-learning model. It estimates planning demand as half the average of the last 180 days plus half the velocity of the last 60 days, labels the trend Rising, Stable or Falling, and says Insufficient history when there are fewer than four sales in 180 days or under 60 days of history. Seasonal forecasting is not built; it needs two or more years of clean history and could be added once the live system holds that.
For each quality and size the engine works out usable stock (on hand minus carats reserved for confirmed orders minus dead stock), coverage in days, a reorder threshold (demand times lead time plus safety days) and a target stock. It then returns BUY NOW, BUY, MONITOR, HOLD, STOP BUYING or INSUFFICIENT HISTORY with a written reason. STOP BUYING appears for excess cover, no demand, thin history with aged stock already held, or an expected margin below the minimum. It never places an order.
The 80/20 rule says a minority of items, often about a fifth, drives most of the sales or value. In diamonds it usually means a few quality and size bands and a few buyers carry most of the turnover. The Arham Exports ERP does not apply a fixed 80/20 cut-off, but it shows carrying cost by quality, size, supplier and broker, top-20 customers by sales and profit, and fast, slow and dead stock, so you can see where the concentration actually is.
A scorecard ranks brokers on outcomes instead of price. For purchase brokers the Arham Exports ERP weighs realised margin of sourced lots (35), price against comparables (20), consistency (15), delivery reliability (15) and sell-through speed (15); sales brokers are scored on margin after brokerage, lead conversion, collection and repeat business. Small samples are pulled toward neutral, each broker gets a confidence level, and a broker with fewer than three transactions or 15 carats shows Not enough data with no rank.
Record the landed cost of the lot and post every partial sale against it. Profit per lot is the sales value of the carats sold minus the cost of those carats. The Arham Exports ERP shows this on each lot with margin, separates realised profit on sold carats from the indicative profit on unsold stock, and rolls the same numbers up by supplier, broker, customer and period, so the figures agree wherever you look.
For stock, cost, brokers, buyers and management reports, yes, an ERP does what Tally cannot. For ledgers, GST and statutory books, most traders keep Tally, and the Arham Exports build is designed that way: Tally stays authoritative for ledgers and GST and is a read-only archive of vouchers from before go-live. The ERP imports Tally and Excel exports as files and does not claim a live Tally connection. See Tally integration with a custom ERP and Replace Excel & Tally.
Customer requirements are recorded by quality, size and carats. The matching screen lists open lots of the same quality and size that can satisfy each requirement, oldest first, with the carats available and any shortfall. Dormant tiers at 30, 60, 90 and 180 days and cross-sell suggestions use the same stock data, and confirmed orders reserve stock in the buying engine so the same carats are not promised twice.
Yes. Inventory is carat-first, which suits melee and calibrated parcels sold by the carat, and a stone count is optional. If a lot is tracked in stones, a sale must state the stones sold so carats and stones never drift. The working version ships with a starter grid that includes a melee band of 0.01 to 0.09 ct, and the quality and size grid can be set to a firm's own assortments when the live database is configured.
Not in the working version. Alerts have channel hooks for WhatsApp and e-mail, but delivery is disabled and stays off until credentials, permissions and recipient consent are configured. Follow-up lists and the copilot produce drafts for a person to use. Connecting WhatsApp means a WhatsApp Business API number and approved templates; see WhatsApp automation and WhatsApp Business API pricing in India.
No. The build has no GIA or IGI certificate lookup, no Rapaport price-list integration and no RapNet or website stock-feed export, so none is claimed. Indicative selling value is based on the firm's own recent sales, then historical sales, then cost plus an assumed markup, with the basis shown. These can be added as separate work after a free workflow audit.
Purchases and sales can be raised in a document currency such as USD, AED or HKD with the exchange rate entered on the document, and every report runs in rupees. Customers and suppliers carry a country, and receivables work the same for overseas buyers. The build does not generate export invoices, packing lists or shipping bills and does not post foreign-exchange gain or loss, so those stay with the firm's export documentation process.
No. The copilot and the engine give advice and drafts only. They cannot place a purchase, change a price, post an accounting entry or send a message without a person confirming, and the most the purchase screen does is record that someone accepted a suggestion. Answers also respect role permissions, so restricted cost and margin figures are not shown to roles without that permission.
Only roles that hold the matching permission. Purchase cost, selling margins, financial reports and salaries are separate permissions across six roles: CEO or Admin, Purchase Team, Sales Team, Accounts, HR and Management Viewer. Permissions are checked inside every service, not just hidden on screen, and every posting, cancellation and settings change is written to an audit log. Database policies that enforce the same rules are written for production and are set up at go-live.
Custom ERP from Yukti AI starts from Rs 30,000. The final price depends on the modules, the number of units and users, and the integrations you need, and you get a custom quote after a free workflow audit. Package diamond software is often priced per user or per year. See the custom ERP cost guide for what drives the price.
Focused builds typically take about 7 to 10 days to a first working version. A multi-module ERP like the Arham Exports build, with lot costing, inventory intelligence, brokers, CRM, receivables and MIS, usually takes a few weeks depending on scope. Go-live work such as the live database, logins, data import and connections is planned with the client after the audit.
No. Arham Exports is in Mumbai at the Bharat Diamond Bourse, and Yukti AI is based in Surat, so we work with diamond firms in both cities and across India. The same lot-wise approach fits traders, dealers, exporters and sourcing businesses. For a manufacturing-side system see the P. Hitesh & Co. diamond assorting ERP, and for Surat trading software see diamond software in Surat.
For a trading business the features that matter most are lot-wise stock with landed cost, weighted-average cost kept through partial sales, ageing and slow or dead stock classes, purchase and sales with live margin, broker and supplier performance, customer and CRM follow-up, receivables, MIS reports and role-based cost visibility. Memo, certificate fields, price lists, barcode scanning and a mobile app are common in packaged software too. The Arham Exports ERP covers the first group and lists the rest as additions.
The benefits are knowing the real profit of each lot, seeing money tied up in slow stock, buying with evidence, judging brokers and suppliers fairly, collecting receivables faster, avoiding overselling and controlling who sees cost and margin. This page publishes no measured results because none were supplied; they describe what the design of the Arham Exports system is meant to deliver.
Built in this system are ageing and dead-stock alerts, buy and stop-buying recommendations, broker scoring, customer-to-stock matching and a question-and-answer copilot. Buildable additions are WhatsApp stock and payment reminders, an owner morning digest, reading invoices and certificates into entries for a person to confirm, and price-versus-market flags. Seasonal forecasting needs two or more years of clean history, and price prediction or image grading is not realistic.
Not in this build. Memo and consignment handling, barcode or QR scanning and a mobile app are common in packaged diamond software and can be added to a custom ERP. The Arham Exports system focuses on lot-wise costing, ageing, recommendations, brokers and CRM, and keeps GST and ledgers in Tally.
In the Arham Exports ERP the CRM lists which customers to contact today and which lots match their requirements, but it does not draft or send messages. Drafting replies that cite only real stones exists in a different Yukti AI build, the diamond trading platform case study, and sending needs a WhatsApp Business API connection. Either can be added to this kind of ERP, with a person approving each message.
Case study at a glance

Summary

Knowledge summary

Yukti AI, a software company in Surat, built a diamond trading ERP with lot-wise inventory management and AI inventory insights for Arham Exports, a Mumbai trader of natural melee and calibrated polished diamonds working from the Bharat Diamond Bourse. Every purchase line becomes a lot with a landed cost that includes brokerage, shipping and insurance, costed at weighted-average cost per lot, so a partial sale takes out only the cost of the carats sold and the cost of what remains stays correct; oversell is blocked and corrections are linked reversals, never deletions. Inventory intelligence shows carrying cost beside an indicative selling value, five ageing buckets, and fast, slow and dead classes where dead needs age, stagnation and low sell-through together. A deterministic purchase engine turns demand, usable stock (net of reserved and dead stock), lead time and safety days into BUY NOW, BUY, MONITOR, HOLD, STOP BUYING or INSUFFICIENT HISTORY with a written reason. Broker scorecards weigh realised margin, price against comparables, consistency, delivery and sell-through, shrink small samples toward neutral and say “Not enough data” below three transactions. A CRM ranks customers, tiers dormant ones, matches requirements to lots and counts a lead as won only when a posted sale is linked. Receivables, expenses, MIS reports with CSV export, an alert centre, an import centre, six roles with an audit log and an AI copilot with eleven question types complete the 18 modules; 51 automated tests pass. Tally remains the books; WhatsApp and e-mail delivery, the live database and logins are set up at go-live. Custom ERP from Yukti AI starts from ₹30,000. No results or client quote are claimed.

Still managing diamond stock
in Excel and Tally?

Tell us how you buy, hold, sell and collect today. We'll show you what one system — lot to cash — would replace.

Free audit · No commitment required · Surat, Gujarat