HSN code in billing: how many digits you need, and why your turnover decides it
Most shops meet the HSN code as a nuisance field. Somebody from accounts asks why a return will not validate, and the answer turns out to be four digits where six were needed. It is a small rule with an annoying reach, and almost all of it can be settled once inside the billing system.
The rule itself is short. How many digits you must show depends on two things. One is your aggregate turnover in the previous financial year. The other is whether the supply is to a business or to a consumer.
On this page

What an HSN code actually is
HSN stands for Harmonized System of Nomenclature. It is an international classification for goods, maintained by the World Customs Organization and used by most trading countries. The first six digits are the international part. India adds two more for its own tariff detail.
The structure is hierarchical. The first two digits identify the chapter, the next two narrow it to a heading, and the next two to a subheading. So a four digit code says roughly what the product is. A six digit code says it with far less ambiguity.
Services use a parallel scheme called SAC. The digit logic that follows applies to both, which matters for any business that bills goods and services on the same invoice.
The digit rule, in plain terms
The requirement was set out in Notification 78/2020 of Central Tax, dated 15 October 2020, and brought in through the GST portal in phases during 2022. The outcome is simple to state.
If your aggregate annual turnover in the preceding financial year was more than five crore rupees, you report six digits. If it was up to five crore, you report four digits on business to business supplies, and four digits are optional on business to consumer supplies.

Note the word preceding. The band is set by last year, not by how this year is going. A business that crossed five crore in the year just ended moves to six digits from the start of the new year, whatever happens next.
| Turnover last year | B2B invoice | B2C invoice | GSTR-1 table 12 |
|---|---|---|---|
| More than Rs 5 crore | Six digits | Six digits | Six digits |
| Up to Rs 5 crore | Four digits | Optional | Four digits |
| Services, either band | SAC, same logic | SAC, same logic | SAC, same logic |
Where it actually bites
The invoice is the visible half. The half that causes the phone call is table 12 of GSTR-1, which summarises outward supplies by HSN. The portal validates what you file there, and a code of the wrong length or a mismatched unit of measure will be rejected.
This is why the HSN code in billing belongs in the item master rather than in a habit. If each bill depends on somebody remembering a code, the summary at month end will be built from a mixture of right answers, blanks and guesses.
Unit of measure deserves the same discipline. The portal expects its own unit quantity codes. A shop selling in pieces, kilograms and litres needs each item mapped before the first return of the year, not during it.
Setting the HSN code in billing up once

The work is a one-time pass through your catalogue, and it is less painful than it sounds. Most retail catalogues cluster into a few dozen codes, because a shop sells variations of a small number of product families. Export the list from your item master and work through it family by family.
- Export your item list with its current codes and tax rates
- Group items by product family and assign a code per family
- Fill the digit length that your turnover band requires
- Map each item to the right unit quantity code
- Make the HSN field compulsory, so new items cannot be saved without one
The fifth step is the one that keeps the catalogue clean a year later. Without it, every new product added during a busy week arrives with an empty code, and the cleanup becomes annual.
Common mistakes worth avoiding
- Copying a code from a supplier invoice without checking it fits your product
- Using one code for a whole category because it is close enough
- Assuming the code sets the tax rate, when the rate is a separate decision
- Leaving codes at four digits after crossing the turnover threshold
- Letting the counter type a code at billing time
The third one causes real trouble. The code classifies the product. It does not, by itself, decide what rate applies. Treat them as two fields that usually agree and occasionally do not, and keep both on the item inside your back office.
If you are close to the threshold
Businesses hovering around five crore have an easy decision. Go to six digits anyway. Six is always acceptable where four is required. It removes the annual question of which band you are in, and it keeps the HSN code in billing stable from one year to the next.
It also removes a migration. Changing digit length across a live catalogue mid-year is tedious, and the risk of half the items moving and half staying is real.
The short version
Check last year’s aggregate turnover against the five crore line. Set the digit length to match. Put the HSN code in billing on the item master, make it compulsory, and map your units. Done once, the return stops arguing with you.
Frequently asked questions
How many HSN digits does a small retailer need?
If aggregate turnover in the preceding financial year was up to five crore rupees, four digits are required on business to business supplies. Four digits are optional on business to consumer supplies. Above five crore, six digits apply to all invoices and to the GSTR-1 summary.
Is the turnover tested on this year or last year?
The preceding financial year. The band is fixed at the start of the year, based on what the previous year closed at. It does not change part way through because current sales have moved up or down.
Where does the HSN code get checked, apart from the invoice?
Table 12 of GSTR-1, which summarises outward supplies by HSN. The portal validates the entries there, so a code of the wrong length or an unexpected unit quantity code will cause the return to fail validation.
Does the HSN code decide the GST rate?
Not directly. The code classifies the goods, and the rate is a separate determination. They usually line up, but treat them as two fields on the item record. Assuming one sets the other is a common way to bill at the wrong rate for months.
What about services sold alongside goods?
Services use the SAC classification rather than HSN, and the same digit logic applies based on turnover. A business billing both on one invoice needs each line mapped correctly, since the return summarises them on the same basis.
Sources, method and author
The digit requirement follows Notification 78/2020 of Central Tax dated 15 October 2020, and the phased implementation on the GST portal through 2022. Businesses above five crore rupees of preceding year turnover report six digit codes. Those up to that figure report four digits on B2B supplies. Structure and ownership of the HSN system come from the World Customs Organization. Rates and classification for individual products are not covered here, since they change and are product specific.
- GST portal — return filing and table 12 validation
- CBIC GST — notifications, including 78/2020 of Central Tax
- World Customs Organization on the Harmonized System — what the six international digits represent
- Summary of the phased GSTR-1 implementation — the 2022 phase dates in one place
Clotouch is a point of sale product built by Clonet Technologies Pvt Ltd. This guide explains a compliance rule and how to configure for it in any billing system, including ours. It is not tax advice, and classification of individual products should be confirmed with your accountant.
Author. Aman Raj. Published 8 October 2026 for Clonet Technologies Pvt Ltd, Bengaluru.