List customer invoices
List customer invoices with status, amount due and due date, with filters.
MCP tool odoo_read → list_invoices
read
Returns customer invoices, newest first, with the invoice number, contact, dates, total and amount still due. Drafts have no number yet. Pages hold up to 100 invoices; pass offset to read on. You see the invoices your Odoo user can see, in the company you are signed in to.
Parameters
| Name | Type | Description |
|---|---|---|
| status enum | enum | draft, posted or cancel. Default: all. |
| payment_status enum | enum | not_paid, in_payment or paid. Default: all. |
| overdue boolean | boolean | true: only invoices whose due date is before today. |
| contact_id integer | integer | Only invoices of this contact. |
| invoice_date_from date | date | Only invoices dated on or after this date. |
| limit integer | integer | 1 to 100. Default: 50. |
| offset integer | integer | Number of records to skip, for the next page. Default: 0. |
tools/call
{
"jsonrpc": "2.0",
"id": 1,
"method": "tools/call",
"params": {
"name": "odoo_read",
"arguments": {
"operation": "list_invoices",
"arguments": {}
}
}
} Example response
{
"content": [
{
"type": "text",
"text": "{ ... same JSON as structuredContent ... }"
}
],
"structuredContent": {
"items": [
{
"invoice_id": 4182,
"number": "INV/2026/00412",
"contact": "Northwind Studio",
"status": "posted",
"payment_status": "not_paid",
"invoice_date": "2026-09-13",
"due_date": "2026-09-27",
"amount_total": 3200,
"amount_due": 3200,
"currency": "EUR"
},
{
"invoice_id": 4151,
"number": "INV/2026/00398",
"contact": "Harbor Print",
"status": "posted",
"payment_status": "not_paid",
"invoice_date": "2026-09-22",
"due_date": "2026-10-06",
"amount_total": 2150,
"amount_due": 2150,
"currency": "EUR"
}
],
"total": 2
},
"isError": false
}