Blog / GST

GST invoice automation for Shopify and D2C orders

Every D2C brand hits the same wall around order #50: Shopify confirms orders beautifully, but the GST invoice — the document your CA actually needs — is still being made by hand in Excel, with tax math copied from a WhatsApp message some CA sent in 2024.

Invoice creation is the single most mechanical step in your entire order flow. It follows fixed rules. Which means it is the easiest thing to automate — if you get three rules right.

Rule 1: CGST/SGST vs IGST comes from the shipping state

If your buyer is in your own state, an 18% tax splits into CGST 9% + SGST 9%. If they are in another state, the whole 18% is charged as IGST. The decision comes from the place of supply — for D2C, effectively the shipping address. Humans get this right until the day they don't; automation reads the state code from the order and never gets bored.

Rule 2: invoice numbers must be consecutive — really consecutive

GST expects a consecutive serial for the financial year (like INV/26-27/0042). Gaps invite questions during scrutiny. The trap: two orders arriving in the same minute, or a failed order that "used up" a number. Numbering must be atomic — the number is allocated only when the invoice is actually created, in the same transaction, so no duplicates and no burnt numbers ever.

Rule 3: B2B and B2C are different documents

A B2C invoice carries no buyer GSTIN. A B2B buyer will demand their GSTIN printed correctly — that is how they claim input credit. Your flow should ask for a GSTIN when the buyer is a business, validate its format, and print it faithfully.

Bonus rule: send the invoice where your customer actually is — as a PDF on WhatsApp, not buried in an email they'll search for during returns season.

The automated flow

  1. Order lands (Shopify webhook, or a manual entry).
  2. Tax is computed from the shipping state — CGST/SGST or IGST, correctly split.
  3. A gapless invoice number is allocated atomically.
  4. The PDF is generated and sent to the customer on WhatsApp.
  5. The sale posts to Tally as a sales voucher with the same split — books and invoices never diverge.

In Yantra this is the "Order → GST invoice" template: one click, then describe any tweak in plain Hinglish. GST invoicing is built into the platform — numbering, tax split, PDF and the WhatsApp send included — and a failed run never costs a rupee.

Every order, invoiced correctly, automatically

Start free — 1,000 runs, no card needed.

Start free

Questions we get asked

When do I charge CGST/SGST vs IGST?

Same state: CGST+SGST split. Different state: IGST. The shipping state decides — so the automation reads it from the order.

Do invoice numbers really need to be gapless?

GST expects consecutive serials for the financial year; gaps invite scrutiny questions. Atomic allocation prevents duplicates and burnt numbers.

Does a B2C invoice need the buyer's GSTIN?

No — only B2B invoices carry the buyer's GSTIN (that's how they claim input credit). Ask, validate, and print it when the buyer is a business.