curl -X PATCH https://kliio.app/api/v1/invoices/inv-uuid-... \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "status": "Paid" }'
const res = await fetch('https://kliio.app/api/v1/invoices/inv-uuid-...', {
method: 'PATCH',
headers: {
Authorization: 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({ status: 'Paid' })
})
const { data } = await res.json()
{
"success": true,
"data": {
"id": "inv-uuid-...",
"invoice_number": "INV-0042",
"status": "Paid",
"amount": 1500.00,
"currency": "USD",
"due_date": "2025-04-30",
"created_at": "2025-03-15T10:30:00.000Z"
}
}
{
"error": "No valid fields to update"
}
{
"error": "Invoice not found or access denied"
}
Invoices
Update Invoice
Updates one or more fields on an existing invoice.
PATCH
/
api
/
v1
/
invoices
/
{id}
curl -X PATCH https://kliio.app/api/v1/invoices/inv-uuid-... \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "status": "Paid" }'
const res = await fetch('https://kliio.app/api/v1/invoices/inv-uuid-...', {
method: 'PATCH',
headers: {
Authorization: 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({ status: 'Paid' })
})
const { data } = await res.json()
{
"success": true,
"data": {
"id": "inv-uuid-...",
"invoice_number": "INV-0042",
"status": "Paid",
"amount": 1500.00,
"currency": "USD",
"due_date": "2025-04-30",
"created_at": "2025-03-15T10:30:00.000Z"
}
}
{
"error": "No valid fields to update"
}
{
"error": "Invoice not found or access denied"
}
Headers
string
required
Bearer YOUR_API_KEYPath Parameters
string
required
UUID of the invoice to update.
Body
Send only the fields you want to change. At least one field is required.string
New status. One of:
Draft, Sent, Paid, Overdue, Cancelled.string
Updated invoice description.
string
Updated due date in
YYYY-MM-DD format.number
Updated total amount.
string
Updated 3-letter currency code.
number
Updated tax rate as a percentage (0–100).
Response
boolean
true on update.object
The updated invoice object.
curl -X PATCH https://kliio.app/api/v1/invoices/inv-uuid-... \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "status": "Paid" }'
const res = await fetch('https://kliio.app/api/v1/invoices/inv-uuid-...', {
method: 'PATCH',
headers: {
Authorization: 'Bearer YOUR_API_KEY',
'Content-Type': 'application/json'
},
body: JSON.stringify({ status: 'Paid' })
})
const { data } = await res.json()
{
"success": true,
"data": {
"id": "inv-uuid-...",
"invoice_number": "INV-0042",
"status": "Paid",
"amount": 1500.00,
"currency": "USD",
"due_date": "2025-04-30",
"created_at": "2025-03-15T10:30:00.000Z"
}
}
{
"error": "No valid fields to update"
}
{
"error": "Invoice not found or access denied"
}

