COUNTCOUNT
Sign Up

API Reference

Recurring Invoice Templates

Recurring invoice templates define a schedule that automatically generates invoices (or estimates) in a workspace. Each template stores the invoice payload, recurrence cadence, and next run date. Credit memos cannot be recurring.

Last updated 2026-06-21

Overview

The Recurring Invoice Templates API lets your integration list, create, update, pause, resume, and delete scheduled invoice templates. A template holds the same invoice-shaped fields as a one-off invoice — customer, line items, taxes, and totals — plus recurrence settings that control when new invoices are generated.

Templates are identified by a UUID returned as `id` in partner responses. Pause stops generation by clearing `nextInvoiceDate`; resume requires you to supply a new `nextInvoiceDate` in the request body. Credit memos (`invoiceType: "memo"`) are rejected on create — use the Invoices API for memos.

Key concepts

Identification

A template is referenced by its UUID, returned as `id`. Pass that value in the path for retrieve, update, pause, resume, and delete.

Create payload

POST uses the same UUID field rules as invoice create (`customerUuid`, product UUIDs on line items, `tagUuids`) plus a required `recurrencePattern`. Optional `inAdvanceCreationDays`, `recurrenceInterval`, `recurrenceEndDate`, and `emailCustomer` control scheduling.

Draft and pause

New templates default to draft (`isDraft: true`) and are paused until you resume them with a `nextInvoiceDate`. POST `/{uuid}/pause` sets `nextInvoiceDate` to null and stops generation without deleting the template.

Resume requires nextInvoiceDate

POST `/{uuid}/resume` must include `nextInvoiceDate` (ISO date) in the JSON body. The API returns 400 if it is missing.

Credit memos excluded

Setting `invoiceType` to `memo` on create returns 400. Credit memos are one-off documents created through POST /partners/invoices.

The recurring invoice template object

Fields returned on a template. Recurrence-specific settings are nested under `createdInvoiceTemplate`; line items appear as `invoiceProducts`.

Attributes

iduuid

Template identifier (UUID). Use in path parameters.

invoiceTitlestring

Display title for generated invoices.

summarystring

Optional summary or memo line on generated invoices.

emailstring

Customer email used when emailing generated invoices.

currencystring

ISO 4217 currency code.

subtotalnumber

Subtotal before tax.

taxTotalnumber

Total tax amount.

totalnumber

Grand total including tax.

invoiceTypeenum

Document type generated from this template. Cannot be memo.

One of: invoice, estimate

customerobject

Embedded customer record with billing details.

invoiceProductsarray

Line items (products/services) on each generated invoice.

createdInvoiceTemplateobject

Recurrence schedule and generation settings.

recurrencePatternenum

Cadence unit. Aliases like biweekly and quarterly are normalized on save.

One of: daily, weekly, monthly, yearly

recurrenceIntervalinteger

Interval multiplier for the pattern (for example every 2 months when pattern is monthly and interval is 2).

occurrenceCountinteger

Total number of occurrences when limited; null for open-ended schedules.

remainingOccurrenceinteger

Occurrences left before the schedule ends.

recurrenceEndDatedate

Optional end date for the schedule (ISO).

nextInvoiceDatedate

Next invoice date (ISO). Null when the template is paused.

inAdvanceCreationDaysinteger

Days before each scheduled date that the invoice instance is created.

creationDatedate

Date the next invoice instance will be created (ISO).

emailCustomerboolean

When true, generated invoices are emailed to the customer automatically.

projectobject

Linked project, when set, or null.

attachmentsarray

Attachments copied to each generated invoice.

tagsarray

Tags applied to generated invoices.

createdAtdatetime

ISO 8601 creation timestamp.

updatedAtdatetime

ISO 8601 last update timestamp.

Example
{
  "id": "c4d5e6f7-a8b9-0123-cdef-456789012345",
  "invoiceTitle": "Monthly consulting retainer",
  "summary": "Recurring monthly invoice for Acme Corporation",
  "email": "contact@acme.com",
  "currency": "USD",
  "subtotal": 1000,
  "taxTotal": 85,
  "total": 1085,
  "invoiceType": "invoice",
  "customer": {
    "id": "dfa3219e-6af8-4c53-997a-037534f63a35",
    "customer": "Acme Corporation",
    "email": "contact@acme.com",
    "contactName": "John Doe"
  },
  "invoiceProducts": [
    {
      "id": "d5e6f7a8-b9c0-1234-defa-567890123456",
      "productServiceId": "aa11bb22-cc33-dd44-ee55-ff6677889900",
      "description": "Consulting services",
      "quantity": 10,
      "unitPrice": 100,
      "price": 100,
      "nonTaxable": false
    }
  ],
  "createdInvoiceTemplate": {
    "recurrencePattern": "monthly",
    "recurrenceInterval": 1,
    "occurrenceCount": null,
    "remainingOccurrence": null,
    "recurrenceEndDate": null,
    "nextInvoiceDate": "2026-04-01",
    "inAdvanceCreationDays": 0,
    "creationDate": "2026-04-01",
    "emailCustomer": true
  },
  "createdAt": "2026-01-15T10:30:00.000Z",
  "updatedAt": "2026-01-28T14:22:30.000Z"
}

List excludes draft templates by default

GET /partners/recurring-invoice-templates returns only non-draft templates (`isDraft: false`) unless you pass `isDraft=true` or `isDraft=all`. A template stays `isDraft: true` (and is skipped by the recurrence job) until its seed invoice is approved.

Search

The `search` query parameter matches invoice title, summary, email, customer name, and rounded total amounts.

Supported recurrence patterns

Accepted values include daily, weekly, biweekly, monthly, quarterly, and yearly. Unsupported patterns return 400 with a descriptive message.

Recent changes

2026-06-21

Complete Partner API reference

Documented all remaining API reference groups: Chart of Accounts, Vendors, Products & Services, Recurring Invoice Templates, Credit Memos, Bills, Journal Entries, Tags, People, Projects, Tasks, Time Entries, Expense Receipts, Reports, and Workspace Stats. Added missing invoice endpoints (audit log, attachments, credit application, remove transaction) and group overviews for Invoices and Transactions.

Endpoints