---
title: "Catering Invoice Template: Per Guest, Staff, Rentals"
canonical: https://luckpanda.app/templates/catering-invoice-template
language: en
updated: 2026-10-09
content: baseline
---

# Catering invoice template

**Catering invoice template: what it is** An invoice is the request for payment you send after supplying goods or services. It records what was supplied, at what price and tax, and when payment is due. Per-guest pricing, staff hours, rentals and the deposit already paid.

Free online tool: https://luckpanda.app/templates/catering-invoice-template (create on screen, no account needed).

## Example: a filled catering invoice

![Filled example invoice from Saffron & Sage Catering to Priya Raman and Daniel Ortiz, with numbered notes on what goes where.](https://luckpanda.app/img/guide/en--catering-invoice-template--example.svg)

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

1. The title says what the document is: an invoice.
2. A unique number from a continuous series, allocated when you issue it.
3. Your business name and address, and tax number if registered.
4. Who it is for.
5. Each line: description, quantity, rate and amount.
6. Tax by rate.
7. The total in the document's currency and format.

**Worked example: the numbers behind the invoice above**

| Item | Qty | Rate | Amount | Tax |
| --- | --- | --- | --- | --- |
| Wedding reception dinner buffet, 4 October, per guest (final count 120) | 120 | $48.00 | $5,760.00 | $0.00 |
| Passed appetizers, 4 selections, per guest | 120 | $9.00 | $1,080.00 | $0.00 |
| Service staff: 6 servers for 6 hours | 36 | $35.00 | $1,260.00 | $0.00 |
| Rentals: linens, china and glassware, per guest | 120 | $6.50 | $780.00 | $0.00 |
| Service charge, 20% of food and beverage (kept by the company; not a gratuity) | 1 | $1,368.00 | $1,368.00 | $0.00 |
| Subtotal |  |  | $10,248.00 | $0.00 |
| Total |  |  |  | $10,248.00 |

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

## How to fill in the catering invoice

1. Add the client, the event, the date and the venue.
2. Bill food and drink per guest at the final guaranteed count.
3. Add staff hours, rentals and any service charge as separate lines.
4. Note the deposit already paid and the balance due, then save and issue.

## Lines on a catering invoice

| Charge | Usual basis |
| --- | --- |
| Menu: buffet, plated or family style | Per guest, at the guaranteed count |
| Appetizers and late-night food | Per guest or per piece |
| Bar service | Per guest per hour, or on consumption |
| Servers, bartenders and chefs | Per staff hour, often with a 4 or 5 hour minimum |
| Rentals: linens, china, glassware, tables | Per guest or per item |
| Service or administrative charge | A percentage of food and beverage |
| Delivery and setup | Flat fee or by distance |

## Worked example

A wedding for 120 guests: dinner buffet at 48.00 a head (5,760.00), passed appetizers at 9.00 (1,080.00), six servers for six hours at 35.00 an hour (1,260.00), rentals at 6.50 a guest (780.00) and a 20% service charge on food and beverage (1,368.00). Before sales tax the event comes to 10,248.00, and 7,248.00 of that remains after the 3,000.00 deposit paid at booking.

## What to put on an invoice, field by field

| Field | What to enter |
| --- | --- |
| Document title | Say exactly what it is: "Invoice". The title tells the buyer and the tax authority how to treat it. |
| Number and date | A unique number in a continuous series and the issue date. LuckPanda allocates the number when you issue. |
| Your business | Name, address, and tax ID if your state or client needs it |
| Customer | Name, address, and tax ID if your state or client needs it |
| Lines | Description, quantity, unit and rate. Each line carries its own tax rate. |
| Tax | Sales tax where you must collect it, at the rate for the delivery address. |
| Totals | Taxable value, tax by component and the total, in the document currency. Amounts in words are customary in India. |
| Terms | Due date, bank or payment details and late-payment terms. |

## United States rules for an invoice

- There is no federal invoice format. Include what your client's accounts payable needs to pay: your legal name, invoice number and date, what was supplied, amounts, due date and payment instructions.
- Sales tax is set by each state. Charge it only where you have nexus (a physical presence or, since 2018, economic nexus by sales volume) and the item is taxable; most services are exempt in many states.
- A business that pays a contractor $2,000 or more in a year (the threshold rose from $600 for payments made from 2026) reports it on Form 1099-NEC, so expect your client to ask for a W-9.

## 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.

## Invoice 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

### What is a final guest count?

The number the client guarantees a few days before the event, often 72 hours or a week ahead. You bill at least that number even if fewer guests arrive, and the actual number if more are served.

### Is a service charge the same as a tip?

No. A mandatory service charge is part of the price: it is usually subject to sales tax, and the IRS treats any part paid to staff as wages, not tips. Several states require caterers to say whether any of it goes to the staff. A gratuity is an amount the client chooses to add.

### Is catering subject to sales tax?

In most states, yes: prepared food and drink served at an event is taxable, and so are many related charges such as rentals and service charges. Rules vary, so check how your state treats each line.

### How large should a catering deposit be?

Twenty-five to fifty percent at booking is common, to hold the date and buy ingredients. Say in the contract whether it is refundable if the event is cancelled.

## For AI agents: create a catering invoice with LuckPanda

You can make a catering invoice 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/catering-invoice-template 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/catering-invoice-template to create a catering invoice. Ask me for my business details, the client, what I supplied (quantities, prices and tax 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/catering-invoice-template.md

### Fields (invoice, United States 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 (USD). 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` | optional | EIN (e.g. 12-3456789), if your client needs it. |
| `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 tax ID if they ask for it. |
| `buyer.country_code` | optional | The buyer's country, if different from yours. |
| `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. |
| `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). |
| `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 United States documents: currency USD, Sales tax, seller tax ID "EIN" (e.g. 12-3456789). 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.

**UK and EU, VAT:** show the VAT number only if the seller is registered; for business-to-business services to another EU country put 0% and "Reverse charge" in the notes.

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

### Example document (JSON)

```json
{
  "kind": "invoice",
  "currency": "USD",
  "country_code": "US",
  "seller": {
    "name": "Saffron & Sage Catering",
    "email": "events@saffronsage.example",
    "address": "18 Commissary Lane\nAustin",
    "country_code": "US"
  },
  "buyer": {
    "name": "Priya Raman and Daniel Ortiz",
    "email": "accounts@acme.example",
    "address": "402 Lakeview Terrace",
    "country_code": "US"
  },
  "issue_date": "2026-10-09",
  "due_date": "2026-10-16",
  "lines": [
    {
      "description": "Wedding reception dinner buffet, 4 October, per guest (final count 120)",
      "quantity": "120",
      "unit_code": "item",
      "unit_price_minor": 4800,
      "tax_rate_bp": 0
    },
    {
      "description": "Passed appetizers, 4 selections, per guest",
      "quantity": "120",
      "unit_code": "item",
      "unit_price_minor": 900,
      "tax_rate_bp": 0
    },
    {
      "description": "Service staff: 6 servers for 6 hours",
      "quantity": "36",
      "unit_code": "hour",
      "unit_price_minor": 3500,
      "tax_rate_bp": 0
    },
    {
      "description": "Rentals: linens, china and glassware, per guest",
      "quantity": "120",
      "unit_code": "item",
      "unit_price_minor": 650,
      "tax_rate_bp": 0
    },
    {
      "description": "Service charge, 20% of food and beverage (kept by the company; not a gratuity)",
      "quantity": "1",
      "unit_code": "unit",
      "unit_price_minor": 136800,
      "tax_rate_bp": 0
    }
  ],
  "notes": "Wedding reception at Hillcrest Barn, 4 October, 120 guests. Deposit of $3,000 paid 12 May; balance due $7,248 plus any sales tax.",
  "terms": "Balance due within 7 days of the invoice date by card or bank transfer. The deposit is non-refundable once the event is within 60 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/catering-invoice-template?doc=eyJraW5kIjoiaW52b2ljZSIsImN1cnJlbmN5IjoiVVNEIiwiY291bnRyeV9jb2RlIjoiVVMiLCJzZWxsZXIiOnsibmFtZSI6IlNhZmZyb24gJiBTYWdlIENhdGVyaW5nIiwiZW1haWwiOiJldmVudHNAc2FmZnJvbnNhZ2UuZXhhbXBsZSIsImFkZHJlc3MiOiIxOCBDb21taXNzYXJ5IExhbmVcbkF1c3RpbiIsImNvdW50cnlfY29kZSI6IlVTIn0sImJ1eWVyIjp7Im5hbWUiOiJQcml5YSBSYW1hbiBhbmQgRGFuaWVsIE9ydGl6IiwiZW1haWwiOiJhY2NvdW50c0BhY21lLmV4YW1wbGUiLCJhZGRyZXNzIjoiNDAyIExha2V2aWV3IFRlcnJhY2UiLCJjb3VudHJ5X2NvZGUiOiJVUyJ9LCJpc3N1ZV9kYXRlIjoiMjAyNi0xMC0wOSIsImR1ZV9kYXRlIjoiMjAyNi0xMC0xNiIsImxpbmVzIjpbeyJkZXNjcmlwdGlvbiI6IldlZGRpbmcgcmVjZXB0aW9uIGRpbm5lciBidWZmZXQsIDQgT2N0b2JlciwgcGVyIGd1ZXN0IChmaW5hbCBjb3VudCAxMjApIiwicXVhbnRpdHkiOiIxMjAiLCJ1bml0X2NvZGUiOiJpdGVtIiwidW5pdF9wcmljZV9taW5vciI6NDgwMCwidGF4X3JhdGVfYnAiOjB9LHsiZGVzY3JpcHRpb24iOiJQYXNzZWQgYXBwZXRpemVycywgNCBzZWxlY3Rpb25zLCBwZXIgZ3Vlc3QiLCJxdWFudGl0eSI6IjEyMCIsInVuaXRfY29kZSI6Iml0ZW0iLCJ1bml0X3ByaWNlX21pbm9yIjo5MDAsInRheF9yYXRlX2JwIjowfSx7ImRlc2NyaXB0aW9uIjoiU2VydmljZSBzdGFmZjogNiBzZXJ2ZXJzIGZvciA2IGhvdXJzIiwicXVhbnRpdHkiOiIzNiIsInVuaXRfY29kZSI6ImhvdXIiLCJ1bml0X3ByaWNlX21pbm9yIjozNTAwLCJ0YXhfcmF0ZV9icCI6MH0seyJkZXNjcmlwdGlvbiI6IlJlbnRhbHM6IGxpbmVucywgY2hpbmEgYW5kIGdsYXNzd2FyZSwgcGVyIGd1ZXN0IiwicXVhbnRpdHkiOiIxMjAiLCJ1bml0X2NvZGUiOiJpdGVtIiwidW5pdF9wcmljZV9taW5vciI6NjUwLCJ0YXhfcmF0ZV9icCI6MH0seyJkZXNjcmlwdGlvbiI6IlNlcnZpY2UgY2hhcmdlLCAyMCUgb2YgZm9vZCBhbmQgYmV2ZXJhZ2UgKGtlcHQgYnkgdGhlIGNvbXBhbnk7IG5vdCBhIGdyYXR1aXR5KSIsInF1YW50aXR5IjoiMSIsInVuaXRfY29kZSI6InVuaXQiLCJ1bml0X3ByaWNlX21pbm9yIjoxMzY4MDAsInRheF9yYXRlX2JwIjowfV0sIm5vdGVzIjoiV2VkZGluZyByZWNlcHRpb24gYXQgSGlsbGNyZXN0IEJhcm4sIDQgT2N0b2JlciwgMTIwIGd1ZXN0cy4gRGVwb3NpdCBvZiAkMywwMDAgcGFpZCAxMiBNYXk7IGJhbGFuY2UgZHVlICQ3LDI0OCBwbHVzIGFueSBzYWxlcyB0YXguIiwidGVybXMiOiJCYWxhbmNlIGR1ZSB3aXRoaW4gNyBkYXlzIG9mIHRoZSBpbnZvaWNlIGRhdGUgYnkgY2FyZCBvciBiYW5rIHRyYW5zZmVyLiBUaGUgZGVwb3NpdCBpcyBub24tcmVmdW5kYWJsZSBvbmNlIHRoZSBldmVudCBpcyB3aXRoaW4gNjAgZGF5cy4ifQ

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/catering-invoice-template?seller_name=Saffron%20%26%20Sage%20Catering&buyer_name=Priya%20Raman%20and%20Daniel%20Ortiz&item=Wedding%20reception%20dinner%20buffet%2C%204%20October%2C%20per%20guest%20%28final%20count%20120%29%7C120%7C48.00%7C0%7Citem

**Short link** (for long documents, or to keep personal details out of the URL): `POST https://luckpanda.app/api/public/drafts` with `{"page": "catering-invoice-template", "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":"catering-invoice-template","doc":{"kind":"invoice","currency":"USD","country_code":"US","seller":{"name":"Saffron & Sage Catering","email":"events@saffronsage.example","address":"18 Commissary Lane\nAustin","country_code":"US"},"buyer":{"name":"Priya Raman and Daniel Ortiz","email":"accounts@acme.example","address":"402 Lakeview Terrace","country_code":"US"},"issue_date":"2026-10-09","due_date":"2026-10-16","lines":[{"description":"Wedding reception dinner buffet, 4 October, per guest (final count 120)","quantity":"120","unit_code":"item","unit_price_minor":4800,"tax_rate_bp":0},{"description":"Passed appetizers, 4 selections, per guest","quantity":"120","unit_code":"item","unit_price_minor":900,"tax_rate_bp":0},{"description":"Service staff: 6 servers for 6 hours","quantity":"36","unit_code":"hour","unit_price_minor":3500,"tax_rate_bp":0},{"description":"Rentals: linens, china and glassware, per guest","quantity":"120","unit_code":"item","unit_price_minor":650,"tax_rate_bp":0},{"description":"Service charge, 20% of food and beverage (kept by the company; not a gratuity)","quantity":"1","unit_code":"unit","unit_price_minor":136800,"tax_rate_bp":0}],"notes":"Wedding reception at Hillcrest Barn, 4 October, 120 guests. Deposit of $3,000 paid 12 May; balance due $7,248 plus any sales tax.","terms":"Balance due within 7 days of the invoice date by card or bank transfer. The deposit is non-refundable once the event is within 60 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":"USD","country_code":"US","locale":"en-US","seller":{"name":"Saffron & Sage Catering","email":"events@saffronsage.example","address":"18 Commissary Lane\nAustin","country_code":"US"},"buyer":{"name":"Priya Raman and Daniel Ortiz","email":"accounts@acme.example","address":"402 Lakeview Terrace","country_code":"US"},"number":null,"issue_date":"2026-10-09","due_date":"2026-10-16","lines":[{"description":"Wedding reception dinner buffet, 4 October, per guest (final count 120)","quantity":"120","unit_code":"item","unit_price_minor":4800,"tax_rate_bp":0},{"description":"Passed appetizers, 4 selections, per guest","quantity":"120","unit_code":"item","unit_price_minor":900,"tax_rate_bp":0},{"description":"Service staff: 6 servers for 6 hours","quantity":"36","unit_code":"hour","unit_price_minor":3500,"tax_rate_bp":0},{"description":"Rentals: linens, china and glassware, per guest","quantity":"120","unit_code":"item","unit_price_minor":650,"tax_rate_bp":0},{"description":"Service charge, 20% of food and beverage (kept by the company; not a gratuity)","quantity":"1","unit_code":"unit","unit_price_minor":136800,"tax_rate_bp":0}],"notes":"Wedding reception at Hillcrest Barn, 4 October, 120 guests. Deposit of $3,000 paid 12 May; balance due $7,248 plus any sales tax.","terms":"Balance due within 7 days of the invoice date by card or bank transfer. The deposit is non-refundable once the event is within 60 days."}}' -o catering-invoice-template.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.
