Recurring Invoices
Set up recurring billing schedules to automatically generate invoices at regular intervals. Useful for subscriptions, retainers, rent, and any repeating charges. Requires the RECURRING_BILLING module.
Endpoints
GET
/api/v1/recurring-invoicesGET
/api/v1/recurring-invoices/{id}POST
/api/v1/recurring-invoicesPUT
/api/v1/recurring-invoices/{id}POST
/api/v1/recurring-invoices/{id}/stopPOST
/api/v1/recurring-invoices/{id}/resumeCreate a recurring invoice
POST
/api/v1/recurring-invoicescurl -X POST https://api.katixo.com/api/v1/recurring-invoices \
-H "Authorization: Bearer eyJhbGciOiJIUzI1NiIs..." \
-H "Content-Type: application/json" \
-d '{
"contactId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"frequency": "MONTHLY",
"startDate": "2026-07-01",
"endDate": "2027-06-30",
"autoSend": true,
"lines": [
{
"description": "Monthly AMC — POS System",
"quantity": 1,
"unitPrice": 5000.00,
"gstRate": 18.00
}
],
"notes": "Annual Maintenance Contract — POS hardware and software"
}'Request body
| Field | Type | Required | Description |
|---|---|---|---|
contactId | UUID | Yes | Customer contact to bill. |
frequency | string | Yes | Billing frequency: WEEKLY, MONTHLY, QUARTERLY, YEARLY. |
startDate | date | Yes | Date of the first invoice. |
lines | array | Yes | Line items (same structure as invoice lines). |
endDate | date | No | When to stop generating invoices. Runs indefinitely if omitted. |
autoSend | boolean | No | Automatically send generated invoices. Default: false. |
Stop & resume
POST
/api/v1/recurring-invoices/{id}/stopPOST
/api/v1/recurring-invoices/{id}/resumePause a recurring invoice schedule without deleting it. No new invoices are generated while stopped. Resume to continue from where it left off.
The RecurringInvoice object
{
"id": "f6a7b8c9-d0e1-2345-6789-abcdef012345",
"contactId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"customerName": "Sharma General Store",
"frequency": "MONTHLY",
"startDate": "2026-07-01",
"endDate": "2027-06-30",
"nextInvoiceDate": "2026-08-01",
"status": "ACTIVE",
"autoSend": true,
"invoicesGenerated": 1,
"totalBilled": 5900.00,
"lines": [
{
"description": "Monthly AMC — POS System",
"quantity": 1,
"unitPrice": 5000.00,
"gstRate": 18.00,
"lineTotal": 5900.00
}
],
"notes": "Annual Maintenance Contract — POS hardware and software",
"createdAt": "2026-06-15T10:00:00Z"
}