Unpaid invoices past their due date now move to OVERDUE
A daily process now sets status: OVERDUE on unpaid invoices past their due_date, so status=SENT no longer lists them. No webhook is sent.
OVERDUE was already in the status enum, but nothing ever set it: an unpaid invoice past its due date kept ISSUED or SENT. Now a daily process moves it to OVERDUE. It applies to unpaid ISSUED or SENT invoices with a total above zero whose due_date is earlier than the current day in Europe/Madrid, including invoices issued before this change.
What else changed
- A filter on
status=SENTorstatus=ISSUEDreturns fewer invoices. The overdue ones now carryOVERDUE. To list everything still waiting for payment, use the newpending_collection_only=truefilter instead of a list of statuses. - No webhook is sent when an invoice becomes
OVERDUE. Read the status from the invoice or the list. - It can lag behind the due date, because the process runs once a day. Marking the invoice paid moves it to
PAIDas before. - What to do: if your code treats an unknown
statusas an error, or maps statuses to your own, addOVERDUE.
Endpoints
- GET/v1/companies/{company_id}/invoicesOverdue invoices come back with
status: OVERDUE
Where to go next
Sorting by invoice number is numeric, and payment_date survives a correction
`sort_by=invoice_number` orders by series and then by number (`F-9` before `F-10`), ties are broken the same way, and `payment_date` stays after rectifying or voiding.
Filter invoices pending collection
`pending_collection_only=true` lists the invoices still waiting for payment, whatever their status: issued, sent, overdue or rectified.