HSN Code vs SAC Code: Full Form, Difference and How to Use Each
HSN Code vs SAC Code: The Difference and When to Use Each | Xflow
Compliance / Tax

Published on 29/10/2026

HSN Code vs SAC Code: Full Form, Difference and How to Use Each

Get export payments with the paperwork built in

Receive client payments in convertible foreign exchange, documented for your GST and FEMA filings.

Key takeaways


  • HSN stands for Harmonized System of Nomenclature and classifies goods; SAC stands for Services Accounting Code and classifies services.
  • HSN codes run up to 8 digits and follow a global system; SAC codes are always 6 digits and start with 99.
  • Since 1 April 2021, businesses with turnover up to ₹5 crore show 4 digits on B2B invoices, and those above ₹5 crore show 6 digits.
  • The code decides the GST rate, so a wrong code means a wrong rate.

What is the difference between HSN code and SAC code?

The difference between an HSN code and a SAC code is what they classify: HSN (Harmonized System of Nomenclature) codes classify goods, while SAC (Services Accounting Code) codes classify services. Both appear on GST invoices and returns in India and decide which GST rate applies.

FeatureHSN codeSAC code
Full formHarmonized System of NomenclatureServices Accounting Code
ClassifiesGoodsServices
Issued byWorld Customs Organization (WCO); India adds the last 2 digitsCentral Board of Indirect Taxes and Customs (CBIC)
Length4, 6 or 8 digits6 digits
Starts withChapters 01 to 98Always 99
UsedWorldwide, for customs and GSTOnly in India, for GST
Example8471 (computers)998314 (IT design and development)

Is a SAC code the same as an HSN code? No. They are separate lists, although the GST portal and most invoices show them in one column headed 'HSN/SAC'. That shared column is why the two are often confused.


The rule that decides which one you use is simple: if what you sell can be packed and shipped, it takes an HSN code; if you sell work, time or expertise, it takes a SAC code. A company that sells laptops uses an HSN code for the hardware and a SAC code when it bills for repairs. The code follows the supply, not the company. That is the short answer to HSN code vs SAC code.


What is an HSN code?

An HSN code is a number that classifies a product under the Harmonized System of Nomenclature, which the WCO introduced in 1988 and more than 200 countries use for customs and trade. In India, the same code sets the GST rate on goods.


The first six digits are the same worldwide, so a smartphone carries the same six-digit code whether it ships to India, the US or Germany. India adds two more digits for its own tariff, which gives an eight-digit code read from broad to specific: chapter, heading, sub-heading and tariff item.


Take 8517 13 00 as an example. Chapter 85 is electrical machinery, heading 8517 is telephones, sub-heading 851713 is smartphones, and the last two digits are India's own tariff split. Rice sits under 1006 and laptops under 8471.


The system is organised into 21 sections and 99 chapters, and the GST rate is linked at the heading or tariff-item level. For the full structure and how to read each part, see our guide on what is an HSN code. HSN codes also appear on shipping bills, bills of entry and e-way bills, not only on GST invoices. India has used HSN for customs since 1986 and for GST since July 2017.


What is a SAC code?

SAC stands for Services Accounting Code, a six-digit code issued by the CBIC that classifies services under GST in India. Every SAC code starts with 99, the chapter reserved for services, and the code decides the GST rate on the service.


How is a SAC code structured?


A SAC code splits into three pairs. The first two digits are always 99. The next two digits name the service group, such as 83 for professional and technical services. The last two digits name the exact service. So 998314 reads as services (99), other professional services (83), and IT design and development (14).


SAC grew out of the codes used under the old service tax and is based on the UN's Central Product Classification, but unlike HSN it is used only in India, because services do not pass through customs.


What are the common SAC codes?

SAC headingServices coveredCommon full code
9954Construction services995411 (construction of buildings)
9963Accommodation, food and beverage996331 (restaurant services)
9965Goods transport996511 (road transport of goods)
9971Financial and related services997113 (foreign exchange services)
9972Real estate services997212 (renting of non-residential property)
9982Legal and accounting services998221 (accounting and bookkeeping)
9983Other professional, technical and business services998313 (IT consulting), 998314 (IT design and development)
9985Support services998511 (recruitment services)
9987Maintenance and repair services998713 (repair of computers)

The full list runs to several hundred codes. The official source is the SAC schedule the CBIC publishes as a PDF on its GST site, and the GST portal's HSN/SAC search returns the same codes with descriptions.


When should you use an HSN code or a SAC code?

Use an HSN code on every line that supplies goods and a SAC code on every line that supplies a service. The practical difference between HSN and SAC code shows up on each invoice line, not at the level of the business. The codes for your main supplies are also listed against your GSTIN in your registration.


  • A trader selling packaged hardware: HSN on every line
  • A software exporter billing a US client for development: SAC 998314
  • An IT firm that sells servers and charges for installation: HSN on the server line, SAC on the installation line, if they are priced separately
  • A freelance designer: SAC 998391 (specialty design services)


What if goods and services are sold together?


When goods and services are sold as one package, GST law looks at the nature of the bundle. A composite supply is a bundle that naturally goes together, with one principal supply, such as a laptop sold with a one-year warranty. It takes the code and rate of the principal supply, so the laptop's HSN code applies to the whole.


A mixed supply is a bundle of items that could be sold separately but are sold for one price, such as a gift hamper. It is taxed at the rate of the item with the highest rate. If you price each item separately on the invoice, each line simply takes its own code.


How many digits of HSN or SAC code do you need?

Since 1 April 2021, the number of digits depends on your aggregate annual turnover (AATO) in the previous financial year: up to ₹5 crore, you show 4 digits on B2B invoices; above ₹5 crore, you show 6 digits on all invoices. The same rule applies to SAC codes.

Aggregate annual turnoverB2B invoicesB2C invoices
Up to ₹5 crore4 digitsOptional
Above ₹5 crore6 digits6 digits
Exports of goods8 digits (shipping bill and customs)Not applicable

These rules come from CBIC Notification 78/2020. Many pages, and some AI answers, still quote the older rule that exempted businesses under ₹1.5 crore and asked for 2 digits up to ₹5 crore. That rule ended on 31 March 2021. For services, a SAC code is required on every B2B invoice regardless of turnover, with the same 4 or 6 digit rule.


Two more checks apply when you file. In GSTR-1, Table 12 now makes you pick the code from a drop-down, which fills in the description, and splits the summary into B2B and B2C tabs, from the May 2025 return period. If you issue e-invoices, the system checks each code against the GST master and rejects codes that do not exist. Our guide to e invoicing under GST covers the rest.


How do you find the right HSN or SAC code?

You find the right HSN or SAC code by searching the GST portal's HSN/SAC tool with a plain description of what you sell, then checking the code's description and rate against the CBIC schedule.


  1. Go to the GST portal and open Search HSN/SAC under Services, User Services. No login is needed.
  2. Type a keyword, such as 'software' or 'rice', or a code if you have one.
  3. Read the descriptions in the results and pick the most specific one that matches your supply.
  4. Check the GST rate for that code in the CBIC rate schedule.
  5. Add the code to your GST registration if it is a main supply, and to your invoice and billing software.


For goods, the material and use of a product decide its chapter, so a steel pipe and a plastic pipe sit in different chapters. For services, the nature of the work decides the code, not the industry of the client.


If two codes seem to fit, choose the more specific description. If a service has no specific code, it falls under the residual entry 999799 (other services), which is taxed at 18%. For a large or recurring supply, confirm the code with your chartered accountant before the first invoice, because every later return will carry it. Keep a short note of why you chose each code, so you can answer an audit query quickly.


What GST rate applies to an HSN or SAC code?

The GST rate is linked to the code: once you have the right HSN or SAC code, the CBIC rate schedule tells you the rate. Since 22 September 2025, most goods and services fall into three slabs: 5%, 18% and 40%.

SlabTypical supplies
Nil or exemptFresh food, healthcare and education services
5%Daily essentials, restaurant services without input tax credit
18%Most goods and most business services, including IT, consulting, legal and accounting
40%Luxury and sin goods, such as tobacco products and large cars

The 12% and 28% slabs were merged into these on that date, so a rate table that still shows them is out of date. The codes themselves did not change; only the rates attached to many of them did. If a supplier's invoice dated after that still shows 12% or 28%, ask for a corrected invoice before you claim input tax credit.


For most service businesses selling within India, the answer is 18%. Exports of services are zero-rated, which means the code still goes on the invoice, but you either supply under a Letter of Undertaking without paying IGST or pay IGST and claim a refund. See export of services under GST for the conditions.


Which code do exporters use?

Exporters of services use the 6-digit SAC code on every export invoice, and exporters of goods use the full 8-digit HSN code, whatever their turnover.


Goods exporters need 8 digits because the shipping bill and customs classification work at that level, so a ₹40 lakh exporter faces the same depth as a ₹40 crore one, and the code on the invoice should match the one on the shipping bill. We compare the two routes in export of services vs export of goods.


Services exporters report the SAC code on the invoice and in GSTR-1, even though the supply is zero-rated. Accuracy matters most here, because the refund of IGST or unused input tax credit is checked against what you reported. Our guide to GSTR-1 for export of services covers the reporting. Imports work the same way: the bill of entry carries the 8-digit HSN code, and IGST paid under reverse charge on imported services is reported against the SAC code.


Software and IT-enabled services exporters have one more document to keep in line. The service described in the SOFTEX form, which STPI or the SEZ authority certifies, should match the SAC code on the invoice. Keeping the code consistent across the invoice, the return and the SOFTEX filing avoids queries later.


Where do you mention HSN and SAC codes?

You mention HSN and SAC codes in six places: your GST registration, every tax invoice, the HSN summary in GSTR-1, e-invoices, e-way bills and, for goods crossing the border, the shipping bill or bill of entry.


  • GST registration: list the codes of your main goods and services when you register
  • Tax invoice: one code per line, in the HSN/SAC column
  • GSTR-1: the HSN-wise summary in Table 12, split into B2B and B2C
  • E-invoice: each line's code is checked against the GST list before the IRN is issued
  • E-way bill: the HSN code of the goods being moved
  • Shipping bill or bill of entry: the 8-digit code for exports and imports of goods


The codes matter because they tie these documents together. The same code on the invoice, the return and the e-way bill gives the right rate, a clean input tax credit for your buyer and returns that match without queries.


How does an HSN or SAC code appear on an invoice?


On a tax invoice, the code sits in its own column on each line, next to the description, so the rate on that line can be checked against the code.

LineDescriptionHSN/SACTaxable valueGST
1Annual software maintenance for US client (export, under LUT)998314₹4,00,0000% (zero-rated)
2Laptop supplied to a Bengaluru client847130₹80,00018% IGST or CGST + SGST
3Installation of that laptop, billed separately998732₹5,00018%

The example is illustrative and shows a business above ₹5 crore turnover, so each code has 6 digits. A business under ₹5 crore could show 4 digits on lines 2 and 3, but SAC codes are always written in full on the portal, so most firms use all 6 digits. Line 1 must also carry the LUT reference and the note 'supply meant for export under LUT without payment of IGST'.


The same codes then flow into the HSN summary in Table 12 of GSTR-1, split into B2B and B2C. If the invoice and the return show different codes, the mismatch is what causes queries, so generate both from the same item master in your billing software. For the rest of the invoice fields, see our guide to an export invoice.


What happens if you use the wrong HSN or SAC code?

A wrong or missing HSN or SAC code can lead to a penalty of up to ₹25,000 under Section 125 of the CGST Act (plus the same under SGST), a wrong tax rate, and delays in input tax credit and refunds.


  • Wrong rate: the code drives the rate, so a wrong code can leave you under-charging and liable for the shortfall with interest
  • Blocked credit: your buyer may face questions on input tax credit if the invoice code does not match
  • Slower refunds: for exporters, a code that differs between the invoice and GSTR-1 is a common reason refunds stall
  • Notices: a mismatch between GSTR-1 and e-invoice or e-way bill data can trigger a query from the department


To fix a wrong code, issue a credit note and a fresh invoice with the right code if the rate changes, or correct it in the next GSTR-1 or in GSTR-1A for the same period if only the reporting was wrong.


Then update the code in your billing software and, if it is one of your main supplies, in your GST registration, so the error does not repeat. Changing codes in your registration is a non-core amendment on the GST portal, so it takes effect without an officer's approval.


Because a wrong code repeats on every invoice until it is caught, checking it once at the start costs far less than correcting a quarter of returns. It also keeps your figures consistent with GST on international transactions and the refund trail.


How does the right code fit into your export payments?

For an Indian exporter, the HSN or SAC code is the first link in a chain that ends with money in your bank account and a complete compliance file. The code sets the rate on the export invoice, the invoice supports the zero-rated claim, and the payment needs its own proof once it arrives.


Xflow handles the payment side of that chain. Xflow Invoicing is a free tool to raise export invoices that carry your SAC or HSN code. Through receiving accounts, your overseas clients pay to local account details in their own country, and you convert at the live mid-market rate, without a hidden FX markup.


Funds settle to your Indian bank account the same day, and an eFIRA is issued within 24 hours for every international transaction, which supports your GST refund and SOFTEX records. Xflow holds RBI authorisation as a cross-border payment aggregator for inward and outward payments.


The classification stays your decision, made with your accountant. What Xflow removes is the slow, manual paperwork that usually follows the invoice, so the code, the return and the inward remittance record all match. Getting started is an online KYB check that usually takes about 10 minutes.

Need help your with international collections? Try Xflow!



Frequently asked questions

HSN stands for Harmonized System of Nomenclature, used for goods, and SAC stands for Services Accounting Code, used for services under GST.

No. HSN codes classify goods and follow a global system; SAC codes classify services, are used only in India and always start with 99.

It is the six-digit code that classifies a service under GST, such as 998314 for IT design and development services.

It is the code that classifies goods under GST, using the global Harmonized System plus India's own last two digits.

Search the GST portal's HSN/SAC tool with a description of your product or service and pick the most specific match.

It depends on turnover: 4 digits on B2B invoices up to ₹5 crore, 6 digits above ₹5 crore, and 8 digits for exports of goods.

Yes, for B2B invoices. The old exemption below ₹1.5 crore ended on 31 March 2021.

Yes. Exports of services are zero-rated, but the SAC code must still appear on the invoice and in GSTR-1.

IT design and development services are taxed at 18%, or zero-rated when exported.

Up to ₹25,000 under the CGST Act and the same under the SGST Act, plus any tax shortfall with interest.

Related Posts