E-commerce17 min read

How to Create GST Invoices in WooCommerce India

To create GST invoices in WooCommerce India, you need to configure tax rates correctly, collect the buyer’s required details, and use an invoice system that…

#WooCommerce#GST invoices#tax automation#ecommerce compliance

How to Create GST Invoices in WooCommerce India

To create GST invoices in WooCommerce India, you need to configure tax rates correctly, collect the buyer’s required details, and use an invoice system that generates compliant invoices for each order. WooCommerce provides basic tax settings, but most Indian stores need a GST invoice plugin or connected accounting system to handle CGST, SGST, IGST, credit notes, HSN or SAC codes, and reporting.

A proper setup depends on what you sell, where your business is registered, whether customers provide GSTINs, and whether your turnover or transaction type brings you under e-invoicing or other GST requirements. The goal is not simply to print a PDF with “GST” written on it. The invoice should accurately represent the tax treatment of the transaction and remain useful for returns, reconciliations and customer records.

What a GST Invoice Means for a WooCommerce Store

A GST invoice is a tax document issued by a registered supplier for a taxable supply of goods or services. In a WooCommerce store, it is usually generated after an order is placed and payment or fulfilment reaches the stage defined by your accounting process.

The invoice should show:

  • The seller’s legal name and registered address
  • The seller’s GSTIN
  • A unique invoice number
  • Invoice date
  • Buyer details
  • Product or service description
  • HSN or SAC code
  • Quantity and taxable value
  • Applicable GST rate
  • CGST and SGST, or IGST, as applicable
  • Total invoice value
  • Delivery address where relevant
  • Place of supply
  • Reverse-charge information where applicable
  • Signature or authorised signatory details, where required by your process

For a simple retail order, the buyer may not provide a GSTIN. You still need to calculate the correct tax and issue a suitable invoice or receipt. For a business customer claiming input tax credit, the customer will generally need accurate business details and GSTIN information on the invoice.

WooCommerce itself is an ecommerce platform, not a complete Indian GST accounting application. Its built-in tax settings can calculate tax, but they do not automatically understand every Indian compliance requirement.

Tax invoice, bill of supply and receipt

A tax invoice is generally used by a GST-registered business making taxable supplies. It displays the applicable GST and allows an eligible business customer to use the document for input tax credit, subject to the customer meeting the relevant conditions.

A bill of supply is used in situations where GST is not charged in the same way as a tax invoice. For example, a composition taxpayer cannot collect GST separately from customers and generally issues a bill of supply instead. Certain exempt supplies may also require different treatment.

A payment receipt confirms that money was received. It does not always replace a tax invoice. Your WooCommerce payment confirmation email, order summary or Razorpay receipt may not contain all the information required for a GST invoice.

Information to Collect Before Configuring WooCommerce

Before installing a plugin, make a written list of the tax rules that apply to your business. This avoids trying to solve a business-policy problem through a technical setting.

Start with your registration status:

  • Are you GST-registered?
  • Are you under the regular scheme or composition scheme?
  • Do you have one GST registration or registrations in multiple states?
  • Are you selling goods, services or both?
  • Do you sell taxable, exempt or zero-rated products?
  • Do your products have different GST rates?
  • Do you sell to consumers, businesses or both?
  • Do you ship outside India?

Next, prepare product-level information. Each product or service should have:

  • Product name
  • SKU
  • HSN code for goods or SAC code for services
  • GST rate
  • Whether the price is tax-inclusive or tax-exclusive
  • Whether the product is taxable, exempt or zero-rated
  • Whether a cess applies
  • Unit of measurement where needed

The HSN or SAC code should be selected based on the actual product or service and the relevant GST classification. Do not copy a competitor’s code simply because the product name looks similar. Classification can affect the tax rate, invoice fields and return reporting.

For Indian ecommerce stores, it is also important to decide how the buyer’s state will be determined. Normally, the billing and shipping information collected at checkout is used along with the supplier’s location. A store selling from Maharashtra to a customer in Maharashtra may generally apply CGST and SGST, while an eligible interstate supply may generally use IGST. The exact place-of-supply rule can vary by transaction type, especially for services, exports and special categories of goods.

If your store sells through marketplaces, uses fulfilment centres in different states or holds stock in multiple locations, the tax logic may be more complicated than a standard single-warehouse setup.

How to Configure GST in WooCommerce

WooCommerce includes tax configuration under its settings. The exact menu labels can vary slightly depending on the WooCommerce version and extensions installed, but the usual process is similar.

Enable tax calculations

In the WordPress dashboard, open the WooCommerce settings and enable tax calculations. Once taxes are enabled, WooCommerce provides tax-related sections for standard rates and additional tax classes.

Do not enable this casually on a live store without checking how existing product prices are stored. A change between tax-inclusive and tax-exclusive pricing can alter the displayed price, cart total and checkout total.

Before changing the setting, confirm:

  • Whether your catalogue prices already include GST
  • Whether product prices are entered before GST
  • Whether shipping charges are taxable in your setup
  • Whether discounts reduce the taxable value
  • Whether payment gateway charges are shown to the customer
  • Whether prices are displayed with or without tax

Choose inclusive or exclusive pricing

Indian consumer stores often display a final price that already includes GST. Business-to-business stores sometimes work with prices before tax and add GST at checkout. Either approach can work if it is applied consistently and shown clearly.

For tax-inclusive pricing, WooCommerce calculates the tax portion inside the displayed price. For example, if a product is displayed at ₹1,180 with an applicable 18% GST rate, the taxable value is calculated from the total rather than adding 18% on top. The actual calculation should be checked in the store and invoice output.

For tax-exclusive pricing, the catalogue price is treated as the taxable value and GST is added at checkout. A product shown at ₹1,000 with 18% GST would have a customer total of ₹1,180 before other charges or discounts.

A common problem occurs when a store imports prices from an old website but changes the WooCommerce tax setting without adjusting the numbers. Test at least one product from each tax category before publishing the change.

Add GST rates and tax classes

Use WooCommerce tax classes to separate products with different tax treatment. A store may need classes for standard-rated goods, lower-rated goods, exempt products or zero-rated supplies.

The rate table should include the relevant:

  • Country
  • State or region, if your configuration uses it
  • Postcode rule, if needed
  • Tax rate
  • Tax name
  • Priority
  • Compound setting
  • Shipping-tax setting

For Indian stores, the major issue is not creating a tax row for every possible state without a plan. It is deciding how the system will distinguish intra-state and inter-state supplies.

Some plugins use the customer’s state and the store’s registered state to calculate CGST plus SGST or IGST. Others use separate tax rules or a dedicated GST engine. A basic WooCommerce configuration may display a combined GST amount but may not split it into the components needed on the invoice.

Configure the store location correctly

Set the WooCommerce base location to the state and address associated with the GST registration used for that store. The registered address, warehouse address and fulfilment address may not always be the same.

If you have registrations in more than one state, a single WooCommerce store may not be sufficient without custom logic or an integrated tax system. The invoice must identify the correct supplier registration for the supply. In such cases, speak with a GST professional and have the technical implementation reviewed before processing regular orders.

Use a GST Invoice Plugin or Accounting Integration

WooCommerce’s native tax calculation is useful, but most businesses need additional invoice functionality. A GST invoice plugin or accounting integration can generate a PDF, display the correct tax components and maintain invoice sequences.

When evaluating a plugin, check whether it supports:

  • CGST and SGST split for intra-state orders
  • IGST for eligible interstate orders
  • GSTIN capture at checkout
  • HSN or SAC per product
  • Place of supply
  • Shipping and discount tax treatment
  • Credit notes and refunds
  • Cancelled invoice records
  • Sequential invoice numbering
  • PDF download and email delivery
  • Multiple GST registrations, if relevant
  • Export invoices and LUT-related fields, if relevant
  • Integration with Tally, Zoho Books or another accounting system
  • Order edits and partial refunds
  • Manual regeneration controls
  • Audit logs or downloadable reports

Do not choose a plugin only because its product page says “GST compatible”. Install it on a staging site and test real order scenarios.

Plugin versus accounting software

A plugin is usually the fastest way to add invoices to WooCommerce. It can read order information, calculate or display GST and attach a PDF to the customer email.

An accounting integration is more useful when the business has regular reconciliations, purchase records, multiple sales channels or an accountant who works in a specific system. The WooCommerce order can flow into accounting software, where invoices, credit notes, ledgers and GST reports are managed centrally.

Requirement WooCommerce tax settings GST invoice plugin Accounting integration
Basic tax calculation Yes, with configuration Usually Usually
CGST, SGST and IGST presentation May require custom setup Commonly supported Commonly supported
GSTIN collection Not normally complete by default Usually supported Depends on connector
PDF tax invoices Limited without extension Usually supported Usually supported
Credit notes and refund records Needs checking Often supported Generally stronger
Multiple sales channels Not suitable alone Limited Better suited
GST reconciliation Not available as a full process Basic exports may exist More suitable
E-invoicing or IRN workflow Not built in Depends on product Depends on integration
Best use Small, simple configuration Store-level invoice automation Growing or multi-channel business

The best choice depends on your order volume and accounting process. A small D2C brand selling only through its website may begin with a reliable invoice extension. A manufacturer, wholesaler or multi-channel retailer may need accounting software as the source of truth.

Build the Invoice Workflow Correctly

Tax calculation is only one part of invoice automation. You also need a controlled workflow for order status, numbering, refunds and corrections.

Decide when the invoice is generated

Many stores generate an invoice when payment is complete. Others generate it when the order is packed or shipped. The correct trigger depends on your business process and the applicable GST rules for the type of supply.

Avoid generating multiple invoice numbers when an order changes from “processing” to “completed”. The system should either keep one invoice associated with the order or clearly mark a replacement and cancellation according to your process.

If payment fails or an order is cancelled before fulfilment, the system should not create an invoice that appears to represent a completed taxable supply unless your accountant has defined that treatment.

Set a controlled invoice number series

Invoice numbers should be unique and follow a consistent sequence. Decide whether you will use:

  • One series for all invoices
  • Separate series for different GST registrations
  • Separate series for B2B and B2C invoices
  • Separate series for retail, wholesale or marketplace sales

The invoice prefix can include a financial year or store identifier, but the format should be easy to search and reconcile. Do not allow customers or administrators to edit invoice numbers casually.

Test whether deleted orders, failed payments and refunded orders consume invoice numbers. A gap may have an explanation, but your records should make the explanation clear.

Handle credit notes and refunds

WooCommerce refunds do not automatically mean that a proper GST credit note has been created. If an order is partially refunded, the invoice and tax amounts may need adjustment.

Your system should be able to show:

  • Original invoice reference
  • Credit note number
  • Credit note date
  • Returned or cancelled items
  • Taxable value reversed
  • GST reversed
  • Net amount refunded

A payment gateway refund record is not the same as a GST credit note. For frequent returns, test partial returns, exchange orders, cancelled shipments and failed delivery cases.

Keep invoices accessible

Send the invoice by email only after checking that the PDF displays correctly on mobile. Many Indian customers use phones rather than desktop computers to place and review orders.

The invoice should also be available from the customer account area if your store supports accounts. Keep a copy in your business records and back up the underlying order data. If a plugin is removed later, you should not lose access to past invoice details.

Checkout Fields and B2B GSTIN Collection

A consumer checkout and a business checkout need different information. Requiring GSTIN from every customer can create unnecessary friction, especially for D2C purchases. A better approach is to provide an optional business purchase section.

Useful fields may include:

  • Business name
  • GSTIN
  • Billing address
  • State
  • Place of supply
  • Purchase order number
  • Email address for accounts

Validate the basic structure of the GSTIN, but do not treat format validation as proof that the number belongs to the buyer. If your process relies on accurate GSTIN data, use an appropriate verification process or ask the customer to confirm the legal name and address associated with it.

The customer’s GSTIN should be printed on the invoice only when it has been provided and accepted by your business process. Do not insert a placeholder GSTIN or use the seller’s GSTIN in the buyer field.

For B2C orders, the invoice normally uses the consumer’s name and address information collected at checkout. Large-value consumer transactions and special reporting situations may require additional handling. Confirm these rules with your tax adviser rather than relying entirely on a plugin’s default behaviour.

E-Invoicing, Exports and Other Special Cases

A standard WooCommerce PDF invoice is not automatically an e-invoice under the GST system. E-invoicing involves reporting eligible invoices to the Invoice Registration Portal and receiving an Invoice Reference Number, QR code and related data.

Whether e-invoicing applies depends on factors such as turnover, taxpayer category, transaction type and current government notifications. The applicable turnover threshold and reporting rules can change, so check the latest information on the GST portal or with your tax professional. If your business is covered, a plugin that merely creates PDFs is not enough.

An e-invoice workflow may require:

  • API or software integration with an approved provider
  • Correct GSTIN and supplier details
  • HSN or SAC data
  • Buyer GSTIN where applicable
  • Taxable value and tax breakup
  • IRN and QR code on the final document
  • Cancellation and amendment controls
  • Timely reporting after invoice generation

Exports are also different from ordinary domestic sales. An export invoice may be issued under a letter of undertaking without payment of IGST, where the conditions are met, or with payment of IGST where that route is used. The invoice should show the required export information, such as destination and relevant shipping details. Consult an export-focused GST professional before automating this workflow.

Other situations requiring attention include:

  • Selling digital services to customers outside India
  • Selling through Amazon, Flipkart or other marketplaces
  • Using marketplace or platform-collected taxes
  • Selling products with cess
  • Supplying exempt or nil-rated items
  • Operating under the composition scheme
  • Issuing invoices from more than one state
  • Selling to government departments or institutions
  • Selling subscriptions or recurring services

A plugin designed for a basic physical-product store may not handle all these cases accurately.

Testing Checklist Before Going Live

Run test orders on a staging website or a protected test environment. Use real business rules rather than testing only a single ₹100 product.

Test at least these situations:

  1. An intra-state order where CGST and SGST should appear.
  2. An interstate order where IGST should appear.
  3. A consumer order without GSTIN.
  4. A business order with GSTIN.
  5. A product with a different GST rate.
  6. A tax-inclusive product price.
  7. A tax-exclusive product price.
  8. A discount applied to one item and the full order.
  9. A taxable shipping charge.
  10. A free-shipping order.
  11. A partial refund.
  12. A complete cancellation.
  13. A failed payment.
  14. A cash-on-delivery order.
  15. An order with multiple products and tax rates.
  16. An order using a coupon.
  17. An order with an invalid or incomplete address.
  18. An export order, if relevant.

For each test, compare the WooCommerce order, checkout total, payment gateway amount, invoice PDF and accounting entry. The totals should match. Check rounding at line-item level and invoice level, particularly when the cart contains multiple quantities or discounted items.

Also verify that:

  • The invoice number is unique
  • The date is correct
  • The supplier GSTIN is correct
  • The customer state is correct
  • The place of supply is shown
  • HSN or SAC appears for every relevant line
  • CGST, SGST and IGST are not applied together incorrectly
  • The PDF does not expose private admin information
  • The invoice email is delivered
  • Refund documents reference the original invoice
  • Mobile display is readable

Have your accountant review sample invoices before launch. Technical correctness and tax correctness are related but not identical.

Common Mistakes in WooCommerce GST Invoicing

Treating WooCommerce tax as complete GST compliance

WooCommerce can calculate tax according to configured rules, but it does not decide whether your HSN classification, place of supply or e-invoice obligation is correct.

Using one rate for the entire catalogue

Products can have different GST rates. Applying one standard rate to every product may create incorrect customer charges and reporting.

Mixing inclusive and exclusive prices

If product prices include GST but WooCommerce treats them as exclusive, customers may be charged tax twice in practice. Audit the catalogue after every import or pricing change.

Showing a receipt instead of an invoice

An order confirmation is not necessarily a tax invoice. Make sure the customer receives the intended GST document.

Ignoring returns

A refund in WooCommerce does not automatically update GST records. Credit notes and tax reversals need a defined process.

Collecting GSTIN without checking it

A typo can prevent a business customer from using the invoice for input tax credit. Add a review or validation process for B2B orders.

Editing invoices after issue

Do not casually modify a final invoice. Use cancellation, replacement or credit-note procedures appropriate to the situation and keep the record of what changed.

Relying on an outdated plugin

GST rules, e-invoicing requirements and WooCommerce versions change. Keep the plugin, WordPress, payment gateways and security updates maintained, while checking that updates do not alter tax calculations.

Frequently Asked Questions

Is WooCommerce enough to create GST invoices in India?

WooCommerce can calculate taxes and store order information, but its standard features may not provide all the invoice fields and workflows required by an Indian GST-registered business. Most stores use a GST invoice plugin, accounting integration or a custom implementation to generate and manage compliant documents.

Can I show CGST and SGST automatically in WooCommerce?

Yes, this can be implemented with a suitable tax configuration or GST-focused extension. The system must know the supplier’s registration state and the customer’s relevant state, and it must apply the correct place-of-supply logic. Test both intra-state and interstate orders before relying on automation.

Do customers need to provide GSTIN at checkout?

No, not every customer is a GST-registered business. Consumer orders can be processed without GSTIN, while business buyers should have an optional way to provide their GSTIN and legal business details if they require a business invoice.

Does a WooCommerce PDF invoice count as an e-invoice?

Not automatically. A PDF generated by WooCommerce or a plugin is different from an e-invoice registered through the GST Invoice Registration Portal. If your business falls within the current e-invoicing requirements, you need a compatible reporting workflow and the required IRN and QR code information.

How should WooCommerce refunds be handled for GST?

A payment refund and a GST credit note are separate records. Your invoice system should connect the refund to the original invoice and show the reversed taxable value and GST amounts where applicable. Confirm the correct treatment for cancellations, returns and partial refunds with your accountant.

Can I use one WooCommerce store for multiple GST registrations?

It may be possible, but the store needs to identify the correct supplier registration, invoice series, warehouse or fulfilment location and tax treatment for each order. A basic single-registration plugin may not be suitable. Multi-state businesses should plan this with both a GST adviser and a WooCommerce developer.

Where to Start

Begin by documenting your GST registrations, product HSN or SAC codes, tax rates, pricing method and customer types. Then choose whether the store will use a GST invoice plugin, an accounting integration or a custom connection.

Configure the tax settings on staging first. Test intra-state, interstate, B2B, B2C, discount, shipping, refund and cancellation scenarios. Have your accountant review sample invoices and confirm whether e-invoicing, exports or marketplace-specific rules apply to your business.

Keep invoice numbering controlled, update the software stack, and review the process whenever you add a new product category, warehouse, marketplace or GST registration. If you need help configuring WooCommerce GST invoice India workflows, you can talk to the Govindani Infotech team on WhatsApp; project requirements and pricing are confirmed there.

Need Help With Your Digital Strategy?

Govindani Infotech helps Indian businesses and NGOs build websites, run ads, and grow online. Contact us for a free consultation.