A GST tax invoice from a WooCommerce store must carry the particulars listed in Rule 46 of the CGST Rules: your name, address and GSTIN, a consecutive invoice number, the date, the buyer's details, the HSN code, a description, quantity, taxable value, the tax rate and amount split into CGST, SGST or IGST, and the place of supply for inter-State sales. WooCommerce calculates the tax but does not produce that document by itself. Stores get it from an invoice plugin, an accounting or invoicing service, or custom work.
This article is for store owners and their accountants who want invoices that hold up at filing time. It explains what the rules ask for, the three ways stores produce the invoice, where things usually go wrong and what to ask a developer. It is not tax advice; your chartered accountant should approve the final format.
#Why the invoice deserves attention before launch
A wrong invoice format costs little on the day and a lot at the end of the quarter. Every order your store has issued becomes a line your accountant must report, and fixing hundreds of invoices after the fact is slow, paid work.
Business buyers feel it sooner. A registered buyer needs an invoice with their own GSTIN on it to claim input tax credit, so a store that cannot capture a GSTIN at checkout quietly loses B2B orders. And marketplaces have trained shoppers to expect a proper invoice in their inbox, so a bare order email looks unprofessional next to it.
#What Rule 46 asks a tax invoice to show
Rule 46 of the CGST Rules, 2017 sets out the particulars a registered person must put on a tax invoice. The list below follows the CGST Rules as published by CBIC (opens in a new tab), translated into what it means for a store order. CBIC's page on invoice rules (opens in a new tab) covers the same ground.
| Particular on the invoice | Where it comes from in a store |
|---|---|
| Name, address and GSTIN of the supplier | Store settings, fixed for every invoice |
| Consecutive serial number, at most 16 characters, unique for the financial year | An invoice counter, separate from the order number |
| Date of issue | The date the invoice is generated |
| Name, address and GSTIN of the recipient, if registered | Billing details plus a GSTIN field at checkout |
| Name, address, delivery address and State of an unregistered recipient, when the taxable value is ₹50,000 or more | Billing and shipping address |
| HSN code for the goods or services | A field on each product |
| Description, quantity and unit | Order line items |
| Total value and taxable value after any discount | Order totals, with coupons applied before tax |
| Rate and amount of tax: CGST, SGST, IGST, UTGST or cess | Tax rates set by State |
| Place of supply with the State name, for inter-State supply | Shipping State |
| Delivery address, where different from the place of supply | Shipping address |
| Whether tax is payable on reverse charge | Usually a fixed "No" line for retail stores |
| Signature or digital signature | See the note on electronic invoices below |
Two details in that table trip stores up more than the rest.
The first is the serial number. The WooCommerce order number is not a valid invoice series, because cancelled carts, failed payments and test orders leave gaps in it. The invoice needs its own consecutive counter. I cover the rules for that counter in GST invoice numbering rules for custom software, and they apply equally to a store.
The second is the signature. The same rule says the signature or digital signature is not required when an electronic invoice is issued in accordance with the Information Technology Act, 2000. Ask your accountant how they want that handled for emailed PDF invoices.
#How many HSN digits to print
The number of HSN digits depends on your turnover. Notification 78/2020-Central Tax (opens in a new tab), effective 1 April 2021, sets it out.
| Aggregate turnover in the preceding financial year | HSN digits on the invoice |
|---|---|
| Up to ₹5 crore | 4 |
| More than ₹5 crore | 6 |
The notification adds that a registered person with turnover up to ₹5 crore may leave the HSN code off invoices for supplies to unregistered persons, which covers most retail orders. Many small stores still print it on every invoice, because one template for all customers is simpler and business buyers expect it.
#CGST and SGST, or IGST
The tax split depends on where the goods go. A sale delivered within your own State shows CGST and SGST as two lines. A sale delivered to another State shows a single IGST line, and the invoice must name the place of supply.
A store that ships across India therefore needs both behaviours, chosen automatically from the delivery State on each order. This is the part that most often shows up wrong on live stores: one combined "GST 18%" line for every order, with no split and no place of supply.
#What WooCommerce does and does not do
WooCommerce gives you the tax engine but not the tax document. Knowing where that line sits saves a lot of confusion in quotes.
Out of the box, WooCommerce lets you choose whether prices are entered with or without tax, add tax classes for products with different rates, and set rates by country, State and postcode, as its tax setup documentation (opens in a new tab) describes. It can calculate tax from the customer's shipping address, billing address or your shop's base address, and show totals as one line or itemised by rate name.
What it does not have is anything specific to India:
- No GSTIN field for you or your buyer
- No HSN field on products
- No invoice PDF, and no invoice number series separate from the order number
- No built-in idea of CGST and SGST versus IGST; you create that with tax rate rows per State
- No GST reports in the shape your accountant files
Shopify has the same gap, as I explain in WooCommerce vs Shopify in India. Neither platform should be chosen on the hope that invoices will sort themselves out.
#Three ways stores produce GST invoices
Stores handle GST invoices in one of three ways, and the right one depends on order volume and how your accountant works.
| Approach | How it works | Suits | Watch for |
|---|---|---|---|
| Invoice plugin | A plugin generates a PDF from each order and attaches it to the order email | Small and mid-size stores with standard products | Template needs GST fields added; plugin updates can change the layout |
| Accounting or invoicing service | Each paid order is sent to your accounting software, which issues the invoice | Stores whose accountant already lives in that software | Two systems to keep in sync; returns and cancellations must flow too |
| Custom invoice module | A developer builds the invoice, numbering and reports to your accountant's format | B2B stores, multiple GSTINs, unusual rules | Higher build cost; needs a clear written specification |
#The plugin route
A general PDF invoice plugin is the usual starting point. One widely used example is PDF Invoices & Packing Slips for WooCommerce (opens in a new tab) by WP Overnight, with more than 300,000 active installations as of November 2026. Its free version attaches a PDF invoice to order emails and issues sequential invoice numbers.
A general plugin is not a GST plugin, though. The GSTIN, HSN codes, tax split and place of supply have to be added to its template, and the tax rates have to be set up so the split is right in the first place. That set-up work is where the skill is, not in installing the plugin.
#The accounting software route
If your accountant already works in an accounting package, it often makes sense for that package to be the single place invoices are issued. The store then sends each paid order across, and the invoice comes back or goes out from there. I cover what that connection involves in integrating a website with Tally or Zoho. The risk is the unhappy paths: refunds, partial returns and cancelled orders must reach the accounts too.
#The custom route
Custom work is justified when the plugin template cannot express your rules. Typical reasons are several GSTINs for warehouses in different States, B2B buyers with credit terms, or invoice formats agreed with large customers.
#Mistakes I see on live stores
Most invoice problems come from the same few shortcuts. Check your own store against this list.
- Order number used as invoice number. Gaps appear whenever a payment fails or an order is cancelled.
- One "GST" line for everything. No CGST and SGST split for local orders, no IGST for other States.
- No GSTIN field at checkout. Business buyers cannot get an invoice they can use for input tax credit.
- HSN codes missing or kept in the description. They belong in a product field so they print consistently.
- Coupons applied after tax. The taxable value should reflect the discount.
- Shipping charges taxed at the wrong rate or not at all. Ask your accountant how shipping should be treated for your goods.
- Refunds with no document. A refund on a tax invoice normally needs a credit note with its own series.
- Invoices that change after issue. Editing an order silently rewrites the PDF, so the copy the customer holds no longer matches yours.
#What to ask your developer
A good brief gets you a correct invoice the first time. Put these questions to whoever builds or maintains the store.
- Where does the invoice number come from, and what happens to it when an order is cancelled or refunded?
- How does the store decide between CGST plus SGST and IGST, and can I see a sample of each?
- Where do I enter HSN codes, and can I bulk-edit them?
- Can a business buyer enter a GSTIN at checkout, and is its format checked?
- What document is issued for a refund or a partial return?
- Can my accountant export a month of invoices in the format they file from?
- If the invoice plugin is updated or replaced, what happens to the numbering?
Then ask your accountant for one thing: a marked-up sample invoice showing exactly what they want. Handing that to a developer removes most of the guesswork. This kind of job sits within WooCommerce customisation, and where the accounts need to stay in step, API integration work.
#Do it yourself or hire help
A store owner comfortable with WordPress can install an invoice plugin and set up tax rates for a simple catalogue with one tax rate and retail buyers only. Send a test order to an address in your own State and one to another State, and take both PDFs to your accountant.
Hire help when you sell to registered businesses, carry products at several tax rates, ship from more than one State or already have live orders with the wrong format. Corrections to tax documents are sensitive, and they should be made by someone who will test every case before touching the live store. If wholesale buyers are part of the plan, my article on B2B and wholesale WooCommerce stores covers the wider set-up.
#A simple next step
Place two test orders on your store today, one delivered within your State and one outside it, and open the invoices. Compare them line by line with the Rule 46 table above, then send both to your accountant with one question: is anything missing or wrong?
Their reply is your to-do list. If you are still planning the store, add "GST invoice approved by my accountant" to the launch list in what to arrange before selling online in India.
Frequently asked questions
Does WooCommerce generate GST invoices automatically?
No. WooCommerce calculates tax on each order, but it does not create an invoice PDF or include GSTIN and HSN fields. Stores add these with an invoice plugin, an accounting integration or custom development.
Is the HSN code mandatory on every invoice?
It depends on turnover and the buyer. Under Notification 78/2020-Central Tax, businesses with turnover up to ₹5 crore print 4 digits and larger ones 6, and the smaller group may omit the code on invoices to unregistered persons. Check your own case with your accountant.
Can I use the WooCommerce order number as the invoice number?
It is not a safe choice. Rule 46 asks for a consecutive serial number unique for the financial year, and order numbers skip whenever a payment fails or an order is cancelled. A separate invoice counter avoids the gaps.
Do I need to show CGST and SGST separately?
Yes, for a sale within your State the invoice shows the rate and amount of each tax, which means separate CGST and SGST lines. For a sale to another State it shows IGST and the place of supply.
Sources
The facts in this article were checked against these pages, last reviewed 11 November 2026.
- The Central Goods and Services Tax Rules, 2017 (Part A, Rules), CBICcbic-gst.gov.in/pdf/18052021-CGST-Rules-2017-Part-A-Rules.pdf
- Tax Invoice, Credit and Debit Notes rules, CBIC GST portalcbic-gst.gov.in/gst-invoice-rules.html
- Notification No. 78/2020-Central Tax, GST Councilgstcouncil.gov.in/sites/default/files/2024-05/notfctn-78-central-tax-english-2020.pdf
- Setting up taxes in WooCommerce, WooCommerce documentationwoocommerce.com/document/setting-up-taxes-in-woocommerce/
- PDF Invoices and Packing Slips for WooCommerce, WordPress.org Plugin Directorywordpress.org/plugins/woocommerce-pdf-invoices-packing-slips/




