Is GST charged on shipping charges?
Yes, but usually not at the courier's rate. What decides it is who supplies what to whom.
- You sell goods and deliver them, and charge for delivery. That is one supply to the customer: goods plus their delivery. The CGST Act calls it a composite supply, and its own example fits: "Where goods are packed and transported with insurance, the supply of goods, packing materials, transport and insurance is a composite supply and supply of goods is a principal supply" (section 2(30)). A composite supply is taxed as its principal supply (section 8(a)). The shipping charge takes the goods' rate.
- A courier delivers for you and bills you. That is a separate supply from the courier to you, usually at 18%. You pay it, and claim it back as input tax credit.
The value rule points the same way: the taxable value of a supply includes incidental expenses charged to the buyer, and anything done by the supplier in respect of the supply at or before delivery (section 15(2)(c)).
Worked examples
| Order | Goods | Shipping charged | Tax on shipping |
|---|---|---|---|
| One kurta, taxable value ₹1,000 | 5% | ₹100 | 5%: ₹5 |
| One leather bag, ₹4,000 | 18% | ₹100 | 18%: ₹18 |
| Free shipping above ₹999 | any | ₹0 | none; nothing is charged |
The total tax on the kurta order is therefore 5% of ₹1,100, which is ₹55, split into CGST and SGST or charged as IGST by the delivery state.
What if one order has goods at two rates?
A cart with a 5% kurta and an 18% bag has one shipping fee but two kinds of goods. The approach most consistent with the rule is to split the shipping charge across the items in proportion to their value and tax each share at its item's rate.
| Item | Value | Share of ₹150 shipping | Tax on the share |
|---|---|---|---|
| Kurta, 5% | ₹1,000 | ₹30 | ₹1.50 |
| Bag, 18% | ₹4,000 | ₹120 | ₹21.60 |
Some sellers charge the highest rate in the cart on the whole fee for simplicity. That pays more tax than needed, never less. If your carts often mix rates, settle the method with your CA and use it every time.
How to set it up in Shopify
Shopify taxes shipping separately from products, in two settings:
- Charge tax on shipping rates. For India this setting decides whether shipping is taxed at all. If it is off, shipping goes out with no GST, which is wrong when the goods are taxable.
- Shipping overrides. A product tax override (for example, 5% on a clothing collection) does not touch the shipping line. Without a shipping override, shipping is taxed at the region's base rate, so a clothing store whose India rate is 18% charges 18% on shipping until it adds a 5% shipping override.
Then check one test order's invoice: the tax on the shipping line should match the goods.
Other charges that follow the goods
The same reasoning applies to other amounts you charge with the goods and as part of selling them:
- a cash-on-delivery fee;
- gift wrapping chosen at checkout;
- packing and handling charges;
- transit insurance you arrange and charge for.
Each is part of the value of the goods and taxed at their rate, and belongs on the same invoice.
Exports
Shipping charged on an export order is part of the export: zero-rated with it, whether you ship under a letter of undertaking or pay IGST and claim a refund.
What about my courier and aggregator bills?
Shiprocket, Delhivery and similar companies bill you with GST, usually 18%. As long as the invoice carries your GSTIN and appears in your GSTR-2B, that GST is input tax credit you set off against the tax on your sales. Check that every courier invoice is raised on the GSTIN of the state you ship from.