Invoices
Create, manage, and send professional invoices linked to bookings, with integrated tax calculation and PDF generation.
Overview
The invoicing module handles the full lifecycle of billing — from creating itemized invoices linked to bookings, through tax calculation and PDF generation, to sending invoices via Gmail and recording payments.
Invoice Creation
Creating an Invoice from a Booking
The most common workflow is to generate an invoice directly from a booking:
- Open a booking and click Create Invoice
- Room charges and dates are pre-populated from the booking
- Add additional line items (services, minibar, etc.) as needed
- Review tax calculations
- Save as Draft or Finalize immediately
Creating a Standalone Invoice
You can also create invoices independent of bookings:
- Navigate to Invoices → New Invoice
- Select or create a guest
- Add line items manually
- Configure taxes and totals
- Save the invoice
Invoice Fields
| Field | Description |
|---|---|
| Invoice Number | Auto-generated based on your series configuration |
| Invoice Date | Date of invoice creation (defaults to today) |
| Due Date | Payment due date |
| Guest | Linked guest profile |
| Booking | Optionally linked booking |
| Notes | Internal or customer-facing notes |
| Terms | Payment terms displayed on the invoice |
Invoice Structure
Line Items
Each invoice contains one or more line items:
| Property | Description |
|---|---|
| Description | Item name or description (e.g., "Deluxe Room — 3 nights") |
| HSN/SAC Code | Harmonized System code for GST classification |
| Quantity | Number of units |
| Rate | Price per unit |
| Discount | Discount amount or percentage per line item |
| Tax | Applicable tax rate(s) from your tax configuration |
| Amount | Calculated total for this line item |
Taxes
Taxes are applied per line item based on your configured tax rates:
- CGST — Central GST (e.g., 6%)
- SGST — State GST (e.g., 6%)
- IGST — Integrated GST for inter-state (e.g., 12%)
- Tax Groups — Composite groups combining multiple tax rates
The system automatically determines whether to apply CGST+SGST or IGST based on the guest's state vs. your organization's state.
Tax Calculation
Tax can be configured as exclusive (added on top of the rate) or inclusive (already included in the rate). The invoice displays the breakdown either way.
Totals & Summary
The invoice summary section shows:
| Line | Description |
|---|---|
| Subtotal | Sum of all line items before tax |
| Discount | Total discount applied |
| Taxable Amount | Subtotal minus discounts |
| CGST | Total Central GST |
| SGST | Total State GST |
| IGST | Total Integrated GST (if applicable) |
| Total | Grand total including all taxes |
| Amount Paid | Sum of all recorded payments |
| Balance Due | Remaining amount to be paid |
Invoice Lookup by Code
Every invoice is assigned a unique invoice code (e.g., INV-2026-00042). You can look up any invoice by its code:
- Navigate to Invoices
- Use the search bar and enter the full or partial invoice code
- The system matches against invoice numbers across all bookings
This is useful for quickly finding an invoice when a guest calls with their invoice reference number.
Sending Invoices via Gmail
Prerequisites
Before sending invoices, you must connect your Gmail account. See the Integrations guide for setup instructions.
Sending Process
- Open a finalized invoice
- Click Send via Email
- The system generates a PDF of the invoice using Puppeteer
- A compose dialog appears with:
- To: Guest's email (pre-filled from guest profile)
- Subject: Customizable subject line
- Body: Rendered from your email template
- Attachment: The generated PDF invoice
- Review and click Send
PDF Generation
Invoices are rendered to PDF using Puppeteer (headless Chromium):
- Professional layout matching your organization branding
- Organization logo, name, and address in the header
- Full itemized breakdown with taxes
- QR code (if enabled) for payment
- Proper page breaks for multi-page invoices
- GST-compliant format with HSN codes and tax breakdowns
TIP
PDF generation happens server-side. The generated PDF is temporarily stored and attached to the outgoing email.
Payment Recording
Recording a Payment
To record a payment against an invoice:
- Open the invoice
- Click Record Payment
- Enter payment details:
| Field | Description |
|---|---|
| Amount | Payment amount (defaults to balance due) |
| Date | Payment date |
| Payment Mode | Cash, Bank Transfer, UPI, Card, Cheque, etc. |
| Reference | Transaction reference number |
| Notes | Optional notes |
- Save the payment
Payment Effects
When a payment is recorded:
- The invoice's Amount Paid updates automatically
- The invoice status changes accordingly:
- Paid — when full amount is received
- Partially Paid — when partial amount is received
- An accounting entry is created automatically (double-entry)
- The booking's payment status updates if the invoice is linked to a booking
Payment History
Each invoice maintains a payment history showing all recorded payments with dates, amounts, payment modes, and references. Payments can be viewed but not edited after creation to maintain audit integrity.
Invoice Statuses
| Status | Description |
|---|---|
| Draft | Created but not finalized — can still be edited |
| Finalized | Locked for editing — ready to send |
| Sent | Emailed to the guest |
| Partially Paid | Some payment received |
| Paid | Full amount received |
| Overdue | Past due date with outstanding balance |
| Cancelled | Voided invoice |
Permissions
Invoice operations are controlled by the Invoices RBAC module:
| Permission | Access |
|---|---|
| View | Browse and view invoices |
| Create | Create new invoices |
| Update | Edit draft invoices, record payments |
| Delete | Cancel or delete invoices |
| Manage | Full access including send and bulk operations |