---
title: "Bill of Supply Format Under GST Rule 49"
canonical: https://luckpanda.app/templates/bill-of-supply-format
language: en
updated: 2026-10-09
content: baseline
---

# Bill of supply format

**Bill of supply format: what it is** A bill of supply is the GST document a registered seller issues instead of a tax invoice when it may not charge GST: for exempt supplies, or for every supply if it is under the composition scheme (rule 49 of the CGST Rules). For composition dealers and exempt supplies, no GST.

Free online tool: https://luckpanda.app/templates/bill-of-supply-format (create on screen, no account needed).

## Example: a filled bill of supply format

![Filled example bill of supply from Laxmi Stationery Mart to Saraswati Vidya Mandir School, with numbered notes on what goes where.](https://luckpanda.app/img/guide/en--bill-of-supply-format--example.svg)

*The example in the editor above, drawn as the finished bill of supply. Numbers mark what each part is for.*

1. The title says what the document is: a bill of supply.
2. A unique number from a continuous series, allocated when you issue it.
3. Your name, address and GSTIN.
4. Who it is for.
5. Each line: description, HSN/SAC, quantity, rate and taxable value.
6. GST split by component: CGST and SGST in the same state, IGST across states.
7. The total in the document's currency and format.

**Worked example: the numbers behind the bill of supply above**

| Item | Qty | Rate | Taxable value | Tax |
| --- | --- | --- | --- | --- |
| Exercise notebooks, 200 pages, single line (HSN 4820) | 300 | ₹38.00 | ₹11,400.00 | ₹0.00 |
| Ball pens, blue, box of 10 (HSN 9608) | 25 | ₹50.00 | ₹1,250.00 | ₹0.00 |
| Chart paper, assorted colours (HSN 4802) | 200 | ₹6.00 | ₹1,200.00 | ₹0.00 |
| Subtotal |  |  | ₹13,850.00 | ₹0.00 |
| Total |  |  |  | ₹13,850.00 |

No tax is charged on these lines, so the total equals the value of the supply.

## How to fill in the bill of supply format

1. Title it "Bill of supply" and add your GSTIN.
2. If you are under composition, include the declaration; Rule 49 places it at the top.
3. List items with HSN or SAC, quantity and value, with no GST.
4. Save it; sign in to number bills in their own consecutive series.

## Bill of supply format (Rule 49)

- Title "Bill of supply"
- Supplier name, address and GSTIN
- Consecutive serial number, up to 16 characters, unique for the financial year
- Date of issue
- Recipient name, address and GSTIN or UIN if registered
- HSN or SAC
- Description of the goods or services
- Value of the supply after discounts
- Signature or digital signature
- For composition taxpayers: "composition taxable person, not eligible to collect tax on supplies"

## The composition scheme in brief

The turnover limit is ₹1.5 crore for goods (₹75 lakh in some special category states) and ₹50 lakh for service providers. Composition taxpayers cannot claim input tax credit or make inter-state supplies of goods.

| Taxpayer | Tax on turnover | Can charge GST to buyers? |
| --- | --- | --- |
| Manufacturers and traders | 1% (0.5% CGST and 0.5% SGST) | No |
| Restaurants not serving alcohol | 5% | No |
| Service providers under section 10(2A) | 6% | No |

## India GST rules for a bill of supply

- Rule 49 sets the contents: the title "Bill of supply", supplier name, address and GSTIN, a consecutive serial number of up to 16 characters, date, recipient details, HSN or SAC, description, value and signature.
- Composition taxpayers print "composition taxable person, not eligible to collect tax on supplies" at the top.
- No GST is shown or charged, and the buyer gets no input tax credit.
- A registered person supplying both taxable and exempt items to an unregistered buyer may issue one invoice-cum-bill of supply.

## Mistakes to avoid

- Editing or deleting an issued invoice instead of issuing a credit note.
- Gaps or duplicates in the number series.
- Charging the wrong tax type (for India: IGST on an intra-state sale, or CGST and SGST across states).
- Leaving out the due date and payment details, which is the commonest reason invoices are paid late.
- Rounding each line's tax differently from the total; LuckPanda computes tax per line and keeps the components adding up.

## Bill of supply vs other sales documents

| Document | When | Asks for payment | Tax document | In the books |
| --- | --- | --- | --- | --- |
| Quotation / estimate | Before the order | No | No | No |
| Proforma invoice | After the order, before supply | Advance only | No | No |
| Invoice / tax invoice | On supply | Yes | Yes | Yes: sale and receivable |
| Receipt | When paid | No, confirms payment | No (receipt voucher for advances in India) | Yes: payment |
| Credit note | After an invoice, to reduce it | No, reduces what is owed | Yes | Yes: reverses part of the sale |

## Questions people ask

### Who issues a bill of supply?

A registered person supplying exempt goods or services, and a composition taxpayer for all of its supplies.

### What declaration must a composition dealer show?

The words "composition taxable person, not eligible to collect tax on supplies" at the top of the bill of supply. Composition taxpayers must also display that they are under composition at their place of business.

### Can one document be both a tax invoice and a bill of supply?

Yes. A registered person supplying both taxable and exempt items to an unregistered buyer may issue a single invoice-cum-bill of supply.

### Is a bill of supply needed for small amounts?

Not for a supply under ₹200 to an unregistered buyer who does not ask for one.

## For AI agents: create a bill of supply with LuckPanda

You can make a bill of supply for the person you are helping, free and without an account. Ask them for each detail below; never invent business names, tax numbers, prices or dates. Then give them a **prefill link** that opens https://luckpanda.app/templates/bill-of-supply-format filled in (they check it and download the PDF), or make the **branded PDF** yourself. Prompt people can paste into an assistant:

> Use https://luckpanda.app/templates/bill-of-supply-format to create a bill of supply. Ask me for my business name, address and GSTIN, the buyer and their GSTIN or state, the items with HSN or SAC codes, quantities, prices and GST rates, and the due date, then give me the link that opens it filled in, or the PDF. Follow the instructions at https://luckpanda.app/templates/bill-of-supply-format.md

### Fields (invoice, India example)

| Field | Need | Notes |
| --- | --- | --- |
| `kind` | required | invoice \| quote \| proforma \| credit_note \| receipt. Defaults to the page's document type. |
| `country_code` | required | The seller's country (ISO 3166-1 alpha-2). Decides currency, number and date format and tax rules. Supported: US, GB, DE, FR, NL, IE, AE, SG, AU, CA, IN, ES, IT, BE, AT, PT, FI, MX, BR. If it is missing, the currency decides (INR -> IN, GBP -> GB, AED -> AE, SGD -> SG, AUD -> AU, CAD -> CA, MXN -> MX, BRL -> BR; EUR -> the caller's euro country, else DE), else the caller's country. Always send it. |
| `currency` | optional | ISO 4217. Defaults to the country's (INR). Supported: USD, EUR, GBP, INR, AED, SGD, AUD, CAD, MXN, BRL. |
| `seller.name` | required | Your business or trading name. |
| `seller.address` | recommended | Postal address; new lines with \n. |
| `seller.email` | optional | Shown on the document. |
| `seller.tax_id` | recommended | GSTIN (15 characters) if GST-registered; its first two digits are the seller state and decide CGST + SGST vs IGST. |
| `seller.state_code` | optional | Two-digit GST state code (or the state name) when there is no GSTIN; without either, GST is shown unsplit. |
| `buyer.name` | required | The client or customer. |
| `buyer.address` | recommended | Billing address. |
| `buyer.email` | optional | Used later if the person sends it from LuckPanda. |
| `buyer.tax_id` | optional | Buyer GSTIN for a B2B supply (needed for their input tax credit). |
| `buyer.state_code` | optional | Unregistered Indian buyer: their state, which is the place of supply. |
| `buyer.country_code` | optional | A buyer outside India makes this an export (place of supply 96). |
| `issue_date` | optional | YYYY-MM-DD. Defaults to today. |
| `due_date` | optional | YYYY-MM-DD. Default 14 days after the issue date. |
| `lines` | required | 1 to 100 lines. |
| `lines[].description` | required | What was supplied (at most 500 characters). |
| `lines[].quantity` | required | Decimal as a string, up to 6 decimals ("1", "2.5"). |
| `lines[].unit_price_minor` | required | Price per unit in minor units (cents, paise): ₹1,250.50 is 125050. Or send lines[].unit_price in major units ("1250.50") instead. |
| `lines[].tax_rate_bp` | optional | Tax rate in basis points (18% = 1800). Or lines[].tax_percent (18). Default 0. GST rates: 0, 5, 18 or 40 (3 for gold, 0.25 for rough diamonds). |
| `lines[].unit_code` | optional | unit \| hour \| day \| month \| item. Default unit. |
| `lines[].discount_minor` | optional | Discount on the line, minor units (or lines[].discount in major units). |
| `lines[].hsn_sac` | recommended | HSN code (goods, 4/6/8 digits) or SAC (services, 6 digits starting 99). |
| `place_of_supply` | optional | GST state code, or 96 for another country. Defaults to the buyer's state. |
| `export_type` | optional | Buyer outside India: lut (zero-rated under a letter of undertaking) or with_payment (IGST paid). |
| `notes` | optional | Shown on the document (at most 2000 characters). |
| `terms` | optional | Payment terms and bank details (at most 2000 characters). |

Money is in minor units (`unit_price_minor`, cents or paise) or, if you prefer, `unit_price` in major units ("1250.50"). Tax is `tax_rate_bp` (18% = 1800) or `tax_percent`. Dates are YYYY-MM-DD. Text is plain text: HTML is shown as typed, never rendered. Logos and document numbers are not accepted from links.

### Country rules

This page makes India documents: currency INR, GST, seller tax ID "GSTIN" (e.g. 27AAPFU0939F1ZV). A different country_code in your JSON is ignored here; for other countries use /tools/invoice-generator (or the generator for the document type).

**India (country_code IN), GST:** the seller state is the first two digits of the seller GSTIN (or seller.state_code). Seller state = place of supply: CGST + SGST, each half the rate. Another state: IGST. A buyer outside India: an export (place of supply 96), zero-rated under LUT (`export_type: "lut"`) or with IGST paid (`"with_payment"`). If the seller state is unknown, GST is shown unsplit until it is given. Add HSN (goods) or SAC (services) codes per line.

Full rules for any type and country: `GET https://luckpanda.app/api/public/rules?document_type=invoice&country=IN` or the MCP tool `get_document_rules`.

### Example document (JSON)

```json
{
  "kind": "invoice",
  "currency": "INR",
  "country_code": "IN",
  "seller": {
    "name": "Laxmi Stationery Mart",
    "email": "laxmistationery@example.com",
    "address": "Main Bazaar\nRajkot, Gujarat 360001",
    "country_code": "IN",
    "tax_id": "24ADLPL3307N1ZE"
  },
  "buyer": {
    "name": "Saraswati Vidya Mandir School",
    "email": "accounts@acme.example",
    "address": "Kalawad Road\nRajkot, Gujarat 360005",
    "country_code": "IN"
  },
  "issue_date": "2026-10-09",
  "due_date": "2026-10-24",
  "lines": [
    {
      "description": "Exercise notebooks, 200 pages, single line (HSN 4820)",
      "quantity": "300",
      "unit_code": "unit",
      "unit_price_minor": 3800,
      "tax_rate_bp": 0
    },
    {
      "description": "Ball pens, blue, box of 10 (HSN 9608)",
      "quantity": "25",
      "unit_code": "unit",
      "unit_price_minor": 5000,
      "tax_rate_bp": 0
    },
    {
      "description": "Chart paper, assorted colours (HSN 4802)",
      "quantity": "200",
      "unit_code": "unit",
      "unit_price_minor": 600,
      "tax_rate_bp": 0
    }
  ],
  "notes": "Bill of supply. Composition taxable person, not eligible to collect tax on supplies.",
  "terms": "Payment within 15 days."
}
```

### 1. Prefill link (no API call)

Put the JSON in `?doc=`, as base64url (UTF-8) or as URL-encoded raw JSON. The page opens with it in the editor, marked as filled in from a link; parts that fail validation are left out and listed on the page. Example:

https://luckpanda.app/templates/bill-of-supply-format?doc=eyJraW5kIjoiaW52b2ljZSIsImN1cnJlbmN5IjoiSU5SIiwiY291bnRyeV9jb2RlIjoiSU4iLCJzZWxsZXIiOnsibmFtZSI6IkxheG1pIFN0YXRpb25lcnkgTWFydCIsImVtYWlsIjoibGF4bWlzdGF0aW9uZXJ5QGV4YW1wbGUuY29tIiwiYWRkcmVzcyI6Ik1haW4gQmF6YWFyXG5SYWprb3QsIEd1amFyYXQgMzYwMDAxIiwiY291bnRyeV9jb2RlIjoiSU4iLCJ0YXhfaWQiOiIyNEFETFBMMzMwN04xWkUifSwiYnV5ZXIiOnsibmFtZSI6IlNhcmFzd2F0aSBWaWR5YSBNYW5kaXIgU2Nob29sIiwiZW1haWwiOiJhY2NvdW50c0BhY21lLmV4YW1wbGUiLCJhZGRyZXNzIjoiS2FsYXdhZCBSb2FkXG5SYWprb3QsIEd1amFyYXQgMzYwMDA1IiwiY291bnRyeV9jb2RlIjoiSU4ifSwiaXNzdWVfZGF0ZSI6IjIwMjYtMTAtMDkiLCJkdWVfZGF0ZSI6IjIwMjYtMTAtMjQiLCJsaW5lcyI6W3siZGVzY3JpcHRpb24iOiJFeGVyY2lzZSBub3RlYm9va3MsIDIwMCBwYWdlcywgc2luZ2xlIGxpbmUgKEhTTiA0ODIwKSIsInF1YW50aXR5IjoiMzAwIiwidW5pdF9jb2RlIjoidW5pdCIsInVuaXRfcHJpY2VfbWlub3IiOjM4MDAsInRheF9yYXRlX2JwIjowfSx7ImRlc2NyaXB0aW9uIjoiQmFsbCBwZW5zLCBibHVlLCBib3ggb2YgMTAgKEhTTiA5NjA4KSIsInF1YW50aXR5IjoiMjUiLCJ1bml0X2NvZGUiOiJ1bml0IiwidW5pdF9wcmljZV9taW5vciI6NTAwMCwidGF4X3JhdGVfYnAiOjB9LHsiZGVzY3JpcHRpb24iOiJDaGFydCBwYXBlciwgYXNzb3J0ZWQgY29sb3VycyAoSFNOIDQ4MDIpIiwicXVhbnRpdHkiOiIyMDAiLCJ1bml0X2NvZGUiOiJ1bml0IiwidW5pdF9wcmljZV9taW5vciI6NjAwLCJ0YXhfcmF0ZV9icCI6MH1dLCJub3RlcyI6IkJpbGwgb2Ygc3VwcGx5LiBDb21wb3NpdGlvbiB0YXhhYmxlIHBlcnNvbiwgbm90IGVsaWdpYmxlIHRvIGNvbGxlY3QgdGF4IG9uIHN1cHBsaWVzLiIsInRlcm1zIjoiUGF5bWVudCB3aXRoaW4gMTUgZGF5cy4ifQ

Or use simple parameters for the common fields:

| Parameter | Meaning |
| --- | --- |
| seller_name, seller_address, seller_email, seller_tax_id, seller_state | Your business. seller_state: Indian GST state code or name. |
| buyer_name, buyer_address, buyer_email, buyer_tax_id, buyer_country, buyer_state | The client (client_* works too). |
| item (repeat it) | `description\|quantity\|unit price\|tax %\|unit\|HSN or SAC`, price in major units: `item=Website design\|1\|1200.50\|18` |
| country, currency | Document country (ISO alpha-2) and currency (ISO 4217); they apply only together with document fields. |
| kind | invoice, quote, proforma, credit_note or receipt (default: the page's). |
| issue_date, due_date | YYYY-MM-DD. |
| notes, terms | Plain text. |
| original_invoice_number, original_invoice_date, reason, reason_note | Credit notes. |
| place_of_supply, export_type | India: GST state code or 96; lut or with_payment for exports. |

https://luckpanda.app/templates/bill-of-supply-format?seller_name=Laxmi%20Stationery%20Mart&seller_tax_id=24ADLPL3307N1ZE&buyer_name=Saraswati%20Vidya%20Mandir%20School&item=Exercise%20notebooks%2C%20200%20pages%2C%20single%20line%20%28HSN%204820%29%7C300%7C38.00%7C0%7Cunit

**Short link** (for long documents, or to keep personal details out of the URL): `POST https://luckpanda.app/api/public/drafts` with `{"page": "bill-of-supply-format", "doc": {...}}` returns `{"url": "https://luckpanda.app/d/<id>", "totals": {...}, "missing": [...], "ignored": [...]}`. Links open for 7 days; at most 60 per hour per network.

```bash
curl -s -X POST https://luckpanda.app/api/public/drafts -H 'content-type: application/json' \
  -d '{"page":"bill-of-supply-format","doc":{"kind":"invoice","currency":"INR","country_code":"IN","seller":{"name":"Laxmi Stationery Mart","email":"laxmistationery@example.com","address":"Main Bazaar\nRajkot, Gujarat 360001","country_code":"IN","tax_id":"24ADLPL3307N1ZE"},"buyer":{"name":"Saraswati Vidya Mandir School","email":"accounts@acme.example","address":"Kalawad Road\nRajkot, Gujarat 360005","country_code":"IN"},"issue_date":"2026-10-09","due_date":"2026-10-24","lines":[{"description":"Exercise notebooks, 200 pages, single line (HSN 4820)","quantity":"300","unit_code":"unit","unit_price_minor":3800,"tax_rate_bp":0},{"description":"Ball pens, blue, box of 10 (HSN 9608)","quantity":"25","unit_code":"unit","unit_price_minor":5000,"tax_rate_bp":0},{"description":"Chart paper, assorted colours (HSN 4802)","quantity":"200","unit_code":"unit","unit_price_minor":600,"tax_rate_bp":0}],"notes":"Bill of supply. Composition taxable person, not eligible to collect tax on supplies.","terms":"Payment within 15 days."}}'
```

### 2. Branded PDF (no sign-in)

`POST https://luckpanda.app/api/public/pdf` with `{"doc": {...}}` (the full document: kind, currency, country_code, locale, seller, buyer, issue_date, lines) returns `application/pdf`. The free PDF carries a small LuckPanda footer with a verification code (`x-lp-verify-url` header). Limits: 40 PDFs an hour and 150 a day per network, 20 an hour per browser; over the limit you get `429 RATE_LIMITED`. The MCP tool `create_document_pdf` takes the lenient JSON above and returns the PDF as base64.

```bash
curl -s -X POST https://luckpanda.app/api/public/pdf -H 'content-type: application/json' \
  -d '{"doc":{"kind":"invoice","currency":"INR","country_code":"IN","locale":"en-IN","seller":{"name":"Laxmi Stationery Mart","email":"laxmistationery@example.com","address":"Main Bazaar\nRajkot, Gujarat 360001","country_code":"IN","tax_id":"24ADLPL3307N1ZE"},"buyer":{"name":"Saraswati Vidya Mandir School","email":"accounts@acme.example","address":"Kalawad Road\nRajkot, Gujarat 360005","country_code":"IN"},"number":null,"issue_date":"2026-10-09","due_date":"2026-10-24","lines":[{"description":"Exercise notebooks, 200 pages, single line (HSN 4820)","quantity":"300","unit_code":"unit","unit_price_minor":3800,"tax_rate_bp":0},{"description":"Ball pens, blue, box of 10 (HSN 9608)","quantity":"25","unit_code":"unit","unit_price_minor":5000,"tax_rate_bp":0},{"description":"Chart paper, assorted colours (HSN 4802)","quantity":"200","unit_code":"unit","unit_price_minor":600,"tax_rate_bp":0}],"notes":"Bill of supply. Composition taxable person, not eligible to collect tax on supplies.","terms":"Payment within 15 days."}}' -o bill-of-supply-format.pdf
```

### 3. MCP server (no auth)

Streamable HTTP at `https://luckpanda.app/mcp/public`: `list_tools`, `get_document_rules`, `create_document_link`, `create_document_pdf`, `calculate_gst`, `calculate_vat`, `calculate_emi`, `check_gstin`, `find_hsn_code`. Install: https://luckpanda.app/agents.

### What needs a LuckPanda account

Agents propose; people decide. Nothing made here is issued, sent or paid by an agent. The person signs in free to keep going:

- **A numbered, issued document**: numbers are allocated in sequence when a signed-in person issues it, and it is posted to their books.
- **Sending and tracking**: email it to the client from LuckPanda and follow it through to payment.
- **Payment links** and automatic reminders.
- **Verifications** (GSTIN and other registry checks) and e-invoicing.
- **The clean PDF** without LuckPanda branding (the Sales module).
- **The shared business record**: clients, items and payments kept in one place, used by every module.

Sign in: https://luckpanda.app/signin. Pricing: https://luckpanda.app/pricing.md. All agent options: https://luckpanda.app/agents.md.
