Billing

Hardware Shop Billing: GST Rates, HSN Codes and Bill Example

How to bill a hardware shop under GST: HSN digits, 18% and 5% items on one invoice with an example, contractor quotes and credit. Free GST bill maker.

VyapRise TeamUpdated 9 min readShare on WhatsApp

In short

A hardware shop bill is a normal GST tax invoice on which each line carries its own HSN code and GST rate, so cement, fittings and tools sit on one bill. Show at least 4-digit HSN on B2B bills if turnover is up to ₹5 crore, 6 digits above, and let the software split the tax line by line.

  • One invoice can carry items at different GST rates; tax is worked out per line and totalled by rate.
  • Up to ₹5 crore aggregate turnover in the previous year, B2B invoices need at least 4-digit HSN codes; above ₹5 crore, 6 digits on all invoices.
  • After the GST rate changes of 22 September 2025, most hardware items sit at 18%, and cement moved from 28% to 18%.
  • If you sell the same product by the box and by the piece, set it up as two items unless your software converts units.
  • Quotations for contractors should convert into the invoice, so rates and quantities are not typed twice.

Why hardware billing is harder than it looks

A hardware shop can stock five thousand items: screws in twenty sizes, hinges in three finishes, pipes, fittings, paints, tools, cement and a corner of farm equipment. Many of them differ only by size. Many carry different HSN codes and GST rates.

Then the customers differ too. A walk-in buyer wants one tap washer and a quick bill. A contractor wants a quotation for a whole site, takes goods over three weeks, and pays at month-end.

Good hardware shop billing comes down to four things done once and done properly: the item list, the HSN codes, the GST rate on each item, and the way you handle credit.

To make a bill right now, the free GST bill maker takes its own HSN code and GST rate on every line and needs no sign-up.

Setting up thousands of items without losing a week

Do not type items one by one. Build the list in Excel first, then import it.

A naming rule that makes search work

Pick one order of words and stick to it: material, product, size, finish.

  • MS Hinge 4 in Black
  • SS Hinge 4 in Matt
  • PVC Elbow 1 in
  • CPVC Elbow 1 in

When every hinge starts with its material and every size uses “in” or “mm” the same way, typing “hinge 4” on the billing screen finds the right one in seconds.

Columns to fill for each item

Column Example Why it matters
Item name MS Hinge 4 in Black What you search and what prints
Category Door fittings Stock and profit reports by category
Unit NOS, BOX, MTR, KGS Prints on the bill and in GST reports
HSN code 8302 Mandatory on B2B bills
GST rate 18% Drives the tax on every line
Sale price 45 Default rate on the bill
Purchase price 32 Profit and stock value
Barcode Manufacturer code or your own Scan instead of search
Opening stock 120 Starting quantity (add on the item after import)
Minimum stock 24 Low-stock alert (add on the item after import)

In VyapRise, the item import reads .csv, .xlsx and .xls files, lets you map your columns, shows a preview, and gives back an error file for rows it could not read. It takes the name, code, HSN, GST rate, prices, barcode, category and unit; add opening stock and minimum stock on the items after the import. The Free plan holds a limited number of items (see the pricing page); a full catalogue of thousands of items needs the Pro plan (a yearly plan), and the free trial lets you import it first.

Boxes and pieces from one item

Set up the screw once, in its smallest unit, and add the box as another unit:

  • SS Screw 1 in with unit NOS
  • Other unit: BOX = 100 NOS, with its own box price if boxes sell cheaper

A contractor buys 3 boxes: choose BOX on the line, and stock falls by 300. A walk-in buys 40 loose: choose NOS. There is one stock figure and nothing to adjust when you open a box. The same works for wire bought by the coil and sold by the metre, or cement by the bag and the kilo. If the box carries its own barcode, add it to the item and scanning it bills the box. Other units work on every plan.

HSN codes: how many digits you need

The number of HSN digits depends on your aggregate annual turnover in the previous financial year:

Previous year turnover B2B invoices B2C invoices
Up to ₹5 crore At least 4 digits Optional
Above ₹5 crore 6 digits 6 digits

Most hardware shops are under ₹5 crore, so 4 digits on bills to registered buyers is the minimum. Many shops still enter 6 or 8 digits on the item, because a longer code costs nothing and avoids rework if the business grows.

Common chapters you will meet: 2523 for cement, 3208 and 3209 for paints, 3917 for plastic pipes and fittings, 7318 for screws, bolts and nuts, 8205 for workshop hand tools, 8302 for hinges and fittings, and 8481 for taps and valves. Confirm the exact code for each product with your CA or the supplier’s invoice.

GST rates after September 2025

From 22 September 2025, GST moved to mainly two rates, 5% and 18%, with the old 12% and 28% slabs removed for most goods and a 40% rate kept for a short list of luxury and sin goods. For a hardware shop this means:

  • Most hardware, fittings, tools, pipes and paints are at 18%.
  • Cement moved from 28% to 18%.
  • Some farm items moved to 5%, for example drip irrigation and sprinkler equipment.
  • Some items stay nil-rated, such as manually operated agricultural hand tools like spades and shovels under HSN 8201.

Rates are set per HSN code, and a product’s exact description can change its rate. Check the current rate for every item when you build your list, and update the item when a rate changes.

Mixed GST rates on one bill: a worked example

A contractor in your own state buys the following. Each line takes its rate from the item.

Item HSN Qty Rate (₹) Taxable (₹) GST Tax (₹)
OPC cement 50 kg bag 2523 10 340 3,400.00 18% 612.00
MS Hinge 4 in 8302 24 45 1,080.00 18% 194.40
Garden spade 8201 2 350 700.00 Nil 0.00
Sprinkler head 8424 5 120 600.00 5% 30.00
Total 5,780.00 836.40

Because the sale is within your state, the tax splits in half:

Rate Taxable (₹) CGST (₹) SGST (₹)
18% 4,480.00 403.20 403.20
5% 600.00 15.00 15.00
Nil 700.00 0.00 0.00
Total 5,780.00 418.20 418.20

Invoice total: ₹5,780.00 + ₹836.40 = ₹6,616.40, rounded off to ₹6,616.

If the same contractor were in another state, the ₹836.40 would be charged as IGST instead. The rates shown are for illustration; confirm each item’s current rate.

A tax invoice can carry a nil-rated line like the spade. When you sell taxable and exempt goods together to an unregistered buyer, the rules also allow a single “invoice-cum-bill of supply”. Our bill of supply vs tax invoice guide explains when each applies.

The purchase side: check the supplier’s rates too

Mixed rates cut both ways. A supplier’s bill for a wholesale order of fittings, pipes and tools also carries several GST rates, and that bill is the basis of your input tax credit.

When you enter a purchase bill, check three things against your item list:

  1. The HSN on the supplier’s bill matches yours. If the supplier uses 3917 for a fitting and you use 3926, one of you is wrong. Ask before you sell it on.
  2. The GST rate matches. A supplier still charging an old rate after a rate change is common in the first weeks.
  3. Both GSTINs are correct: yours on the supplier’s bill, and the supplier’s in your books. Otherwise the bill will not appear in, or will not match, your GSTR-2B, and the credit is at risk.

Getting the purchase side right means the rate on your sale bill is the rate you paid on, and your GST return reconciles without a month-end hunt.

Quotations for contractors

Contractors compare three shops before they buy. A clear quotation wins the order:

  1. List every item with size, quantity, rate and GST rate.
  2. Show the tax separately, so the contractor sees the real total.
  3. State validity, for example “Rates valid for 7 days”, because cement and steel move fast.
  4. State delivery terms: who pays for loading and transport.

In VyapRise, a quotation converts into an invoice, a sale order or a delivery challan, so nothing is typed twice. When a contractor takes goods to site over several weeks, a sale order tracks what has been delivered and billed on each line, and you can bill in parts. Quotations, sale orders and delivery challans are part of the Pro plan (a yearly plan) and open during the free trial. For a one-off quote without an account, use the free quotation generator.

Credit customers: keeping the udhaar clean

Hardware shops run on credit. Three habits keep it under control:

  • Give every credit customer a credit period. Each invoice then gets a due date.
  • Record each receipt against the invoices it pays. A lump sum “on account” makes the ledger hard to read later.
  • Check the ageing report every week. It groups what each customer owes by how long it has been due.

In VyapRise, the party ledger shows on every plan (the current month on Free); on the Pro plan, the ledger covers any period and the statement can be downloaded as a PDF and shared on WhatsApp. Overdue reminders show in the app’s notification bell; on the Pro plan VyapRise can also email payment reminders to customers automatically, but it does not send WhatsApp or SMS reminders. You can set a credit limit on a customer: by default the invoice form warns when a new bill would cross it, and a setting can make such a bill (or one for a customer with long-overdue dues) wait for the owner’s approval. Receipts are part of Pro; on the Free plan, a payment is recorded on the invoice itself. For balances from before you started, a receipt (Pro) can be recorded against “old invoices”, or each customer’s unpaid bills can be imported as opening bills on any plan. Our guide to keeping udhaar records covers the routine in more detail.

Barcodes for small, fiddly items

Small items are where counter mistakes happen. Scan the manufacturer barcode where there is one, and print your own labels for loose items. A USB or Bluetooth scanner works on the VyapRise sales invoice on every plan; scanning on the purchase bill and label printing are part of Pro. Our guide to barcode label printing walks through the setup.

Billing software for your hardware shop

The setup above takes a weekend: build the Excel list, import it, check rates, and start billing on Monday. See how VyapRise handles items, rates and credit on the billing software for hardware shops page, and the GST side (place of supply, HSN, GSTR-1) on the GST billing software page.

How VyapRise handles this

  • Bulk item import

    Import items with code, HSN, GST rate, unit, category, prices and barcode from an Excel or CSV file, with a preview and an error file for rows that fail.

  • Mixed rates on one bill

    Each line takes its HSN and GST rate from the item; VyapRise splits CGST and SGST or IGST line by line and prints the tax totals.

  • Quotation to invoice

    A contractor's quotation converts into an invoice, a sale order or a delivery challan, and the party ledger tracks what is still due. Quotations are part of the Pro plan (a yearly plan) and open during the free trial.

Frequently asked questions

Can one GST invoice have items at 5% and 18%?

Yes. GST is charged line by line, so a single tax invoice can carry items at different rates. The invoice shows each line's rate and tax. There is no need to split the sale into two bills.

What is the GST rate on hardware items?

Since 22 September 2025 most hardware, fittings, tools, pipes and paints are at 18%, and cement moved from 28% to 18%. Some farm items such as drip irrigation and sprinkler equipment are at 5%, and manually operated hand tools like spades and shovels (HSN 8201) are nil-rated. The rate follows each item's HSN code, so check every item.

How many HSN digits should a hardware shop show?

If your aggregate turnover in the previous financial year was up to ₹5 crore, show at least 4 digits on B2B invoices; HSN is optional on B2C invoices. Above ₹5 crore, show 6 digits on all invoices. Confirm the exact code for each product with your CA.

What is the GST rate on cement now?

Cement under HSN 2523 is taxed at 18% from 22 September 2025, down from 28%. Rates for other items also changed on that date, so check each item's current rate before you bill.

Can VyapRise sell screws by the box and by the piece?

Yes, from one item, on every plan. Keep the screw in pieces (NOS) and add BOX = 100 NOS as another unit, with its own box price if you like. On the bill choose BOX or NOS for each line; stock is always counted in pieces, so nothing needs adjusting when you open a box.

How do I track contractors who pay later?

Give each contractor a party with a credit period. Every invoice gets a due date, the party ledger shows the running balance, and the ageing report shows what is overdue. On the Pro plan, record receipts against specific invoices so the balance stays clean; on the Free plan, record the payment on the invoice itself, and the ledger and ageing show the current month.

Does VyapRise keep special rates for each contractor?

On the Pro plan, yes: customer price lists are part of Pro (a yearly plan). On every plan, each item has a sale price and you can change the rate on any invoice line. An item's wholesale price applies automatically from a minimum quantity only at the POS, which is part of Pro.

Read next

Related guides, and the free tools that do this job right now.

GST billing, stock and accounts in one place — free

VyapRise runs GST invoices, quotations, challans, stock and ledgers together. The Free plan is free forever, and Pro is ₹1,499 per year — try it free for 7 days.

Free plan forever · Pro free for 7 days · No card needed