Skip to content

Raise pending invoices now

POST
/invoices/pending/raise
curl --request POST \
--url https://example.com/invoices/pending/raise \
--header 'Content-Type: application/json' \
--cookie __Host-bottle.session_token=<__Host-bottle.session_token> \
--data '{ "customerIds": [ "019205d1-6e7a-7c3b-9f6e-3a2b1c0d9e8f" ] }'

Raises each customer’s next invoice now, for everything up to and including today, instead of waiting for their usual date. Their next invoice starts tomorrow and goes out on the usual date, so nothing is billed twice or missed. A period that is already due is raised first, on its own invoice. Customers with nothing to bill are listed as skipped. To undo, cancel the invoice: cancelling a customer’s latest invoice puts its orders and period back as they were.

Media typeapplication/json
object
customerIds
required
Array<string>
>= 1 items <= 200 items

The invoices raised, and the customers skipped with the reason

Media typeapplication/json
object
raised
required
Array<object>
object
customerId
required

UUID v7

string format: uuid
invoiceId
required

UUID v7

string format: uuid
number
required
string
totalPence
required
integer
skipped
required
Array<object>
object
customerId
required

UUID v7

string format: uuid
customerName
required
string | null
reason
required
string
Allowed values: not_found not_scheduled nothing_to_bill

Example

{
"raised": [
{
"customerId": "019205d1-6e7a-7c3b-9f6e-3a2b1c0d9e8f",
"invoiceId": "019205d1-6e7a-7c3b-9f6e-3a2b1c0d9e8f"
}
],
"skipped": [
{
"customerId": "019205d1-6e7a-7c3b-9f6e-3a2b1c0d9e8f",
"reason": "not_found"
}
]
}

Not signed in

Media typeapplication/json
object
error
required
string
message
required
string

Example

{
"error": "not_found",
"message": "Customer not found"
}

Not a member, or without the permission this needs

Media typeapplication/json
object
error
required
string
message
required
string

Example

{
"error": "not_found",
"message": "Customer not found"
}

Validation failed

Media typeapplication/json
object
error
required
string
Allowed values: validation
message
required
string
issues
required
Array<object>
object
path
required
string
message
required
string

Example

{
"error": "validation",
"issues": [
{
"path": "email",
"message": "Invalid email"
}
]
}