π Recurring Invoice
A Recurring Invoice is a billing template that automatically generates fresh invoices for a client or project on a fixed schedule β weekly, monthly, quarterly, and so on. You set it up once, and DaaiSuite raises every subsequent invoice for you on the due date, complete with line items, GST, currency rate, and attachments.
This article explains how recurring invoices work end-to-end, including frequency rules, start/end dates, the pre-reminder email, the four tabs on the aside panel, and how the Edit / Cancel actions behave once invoices have already been generated.
π‘ Real-world Use Cases
- Software retainers β A web-design agency bills its client βΉ50,000 + GST on the 1st of every month for ongoing maintenance.
- SaaS subscriptions β A consultancy charges βΉ12,000 / quarter for hosting and support.
- AMC contracts β A hardware vendor invoices βΉ2,40,000 yearly for an Annual Maintenance Contract.
- Foreign clients β A studio bills a US client USD 3,500 / month, with the day’s INR rate captured at generation time.
π‘ If you bill the same amount to the same client repeatedly, set up a recurring invoice instead of copy-pasting an invoice every cycle. You eliminate manual work and remove the risk of forgetting a billing date.
π How to Create a Recurring Invoice
π Screen: Billing β Invoices β Add. A recurring invoice is set up from the regular Invoice form by turning on the Is Recurring Invoice toggle. The Recurring Invoices list itself has no Add button β it is where you view and manage the schedules you have already created.
Step 1 β Start a new invoice
Open Billing β Invoices and click Add. Build the invoice exactly as you would a normal one β this becomes the template that every generated invoice copies:
| Field | Description |
|---|---|
| Client / Project | Mandatory. Create a Client invoice (bill the client directly β retainers, AMCs, subscriptions) or a Project invoice (bill against a project; the client is auto-derived). |
| Today’s Currency Rate | Appears only when the client/project currency is foreign (different from your company’s default). Capture the day’s exchange rate so the INR-equivalent amount stays correct. |
| Notes | Free-text β appears on the invoice footer. |
In the Billing Items section, click Add Billing Item + for each line. Each line carries Type (a Package item from the project, or New Billed Item for a freeform line), Title, HSN Code, Quantity, and Price/Unit, plus tax β CGST / SGST for same-state clients or IGST for inter-state. The Subtotal row keeps Item Total, Taxes, and Grand Total in sync as you type. For the full invoice field reference, see the Invoice article.
Step 2 β Turn on recurrence
In the Recurrence section of the invoice form, tick Is Recurring Invoice. Three scheduling fields then appear:
| Field | Description |
|---|---|
| Start Date | Mandatory. The first invoice is generated on this date β it cannot be in the past. |
| End Date | Optional. Leave blank for an open-ended schedule, or set a date for a fixed-term contract (e.g., a 12-month AMC). |
| Frequency | Mandatory. How often the next invoice is generated. See the table below. |
Step 3 β Save
Click Save. The recurring schedule is created and now appears under Billing β Recurring Invoices, where you can open it to view its Details, Attachments, Generated Invoices, and Logs (see below).
π‘ You can attach files (PDF, JPEG, PNG) on the Attachments section β these get carried over to every generated invoice automatically.
π Frequency Options
Frequency controls how DaaiSuite computes the next run date after each generation.
| Frequency | Generates an invoice every⦠| Typical use |
|---|---|---|
| Weekly | 7 days | Short-term staffing, weekly retainers |
| Bi-Weekly | 14 days | Fortnightly support contracts |
| Monthly | 1 calendar month | Most common β software, AMC, SaaS |
| Quarterly | 3 calendar months | Quarterly retainers, hosting |
| Half-Yearly | 6 calendar months | Half-year SLA renewals |
| Yearly | 12 calendar months | Annual maintenance contracts, yearly licences |
ποΈ Start Date, End Date, and Auto-generation
Once saved, the recurring invoice waits for its Start Date. On that day, DaaiSuite generates the first invoice automatically and bumps the Next Run date forward by one frequency interval.
- If End Date is left blank, the schedule continues indefinitely until you cancel it.
- If End Date is set, generation stops on or before that date and the recurring invoice’s status flips to Completed.
- The aside header shows Next Run and Last Run dates so you always know what’s coming next and what was billed last.
β οΈ The Start Date cannot be in the past. If you backdate billing, raise a one-off invoice manually for the older period and start the recurring schedule from the next cycle.
π§ Pre-reminder Email
A few days before the next invoice is generated, DaaiSuite sends a pre-reminder email to the assigned billing user. This gives you a window to:
- Review the line items and tweak quantities if billable hours have changed
- Update the currency rate for the upcoming cycle
- Pause or cancel the recurring invoice if the contract has ended
π‘ Use the pre-reminder window to keep tax rates and prices in sync with the latest contract addendum β especially for long-running yearly contracts.
ποΈ The Four Tabs
1. Details
Shows the recurring template itself β invoice type, client/project, schedule (Start, End, Next Run, Last Run), totals, and the billing-item table. This is also where you Edit or Cancel.
2. Attachments
Files attached here ride along with every generated invoice. Supported types: JPEG, PNG, PDF. Useful for SOWs, contract addendums, or recurring SLA documents.
3. Invoices
Lists every invoice that this template has produced so far, with their numbers, amounts, and payment status. Click any row to open the underlying invoice in a new aside.
4. Logs
The change-history log β who edited what and when β for audit and troubleshooting.
π Generated Invoices
Each generated invoice is a normal invoice in DaaiSuite. It can be edited, sent to the client, paid against, partially paid, cancelled, or have credit notes raised against it β exactly like a manually created invoice.
Once at least one invoice has been generated from a recurring template, the recurring invoice picks up a Has Generated Invoice badge in the grid. From this point, the editing rules change (see the next section).
For all behaviour around the generated invoices themselves β payment, outstanding, cancellation, credit notes β see the Invoice article. To compare with a non-recurring quote-to-invoice flow, see the Proforma Invoice article.
βοΈ Edit vs Cancel β Rules
The header buttons on the recurring invoice aside change based on whether invoices have already been generated:
| State | Button shown | What it means |
|---|---|---|
| No invoices generated yet | βοΈ Edit | You can freely change client, frequency, dates, and line items. |
| At least one invoice generated | π« Cancel | Editing is locked. You can only cancel the schedule. Already-generated invoices stay untouched. |
| Status = Cancelled | β | No further actions. The template is archived, but past invoices remain. |
β οΈ Once an invoice is generated, the recurring template is treated as a live billing contract. We don’t allow retroactive edits because they would create a mismatch between the contract and the invoices already issued. If terms have changed, cancel and create a new recurring invoice from the next cycle.
π·οΈ Status Chips
| Status | Meaning |
|---|---|
| π’ Active | The schedule is running. Invoices will continue to be generated on each Next Run date. |
| π‘ Paused | The recurring schedule is temporarily halted. No invoices are generated while paused, and you can resume it later to continue from the next cycle. |
| π΅ Completed | The End Date was reached. No further invoices will be generated. |
| π΄ Cancelled | You manually cancelled the schedule. No further invoices will be generated. Past invoices are unaffected. |
π Key Points
- One Recurring Invoice = one schedule. To bill the same client on two different cycles, create two recurring invoices.
- The first generation runs on the Start Date, not on the day you saved the template.
- Foreign currency rate is captured at each generation, not at template-creation time β so historical rates are always correct.
- Attachments uploaded to the recurring template are copied onto every generated invoice.
- Generated invoices are independent β they survive even if you cancel the recurring template.
- Cancelling a recurring invoice does not cancel its already-generated invoices. Cancel those individually if needed.
π‘ Tips
π‘ Use Project Invoice mode whenever the billing is tied to deliverables β that way the project’s revenue, margins, and PnL stay in sync.
π‘ If a client moves from monthly to quarterly billing, cancel the monthly recurring invoice and create a fresh quarterly one. Don’t try to edit frequency mid-stream after invoices have been generated β it isn’t allowed by design.
π‘ For foreign-currency clients, always re-check the day’s rate during the pre-reminder window. INR equivalents in your books move with the rate at generation time.
π‘ Use the Logs tab during a billing dispute to prove exactly when (and by whom) a line item, rate, or schedule was changed.

