List Invoices
Listing of every invoice across all orders, matching the admin Invoices grid. Every invoice field plus the billingAddress / shippingAddress objects are populated on each row — only the line items are left empty on the listing. Requires the sales.invoices.view permission.
How this menu works
For the invoice state semantics, why a paid order can read "pending", the red payment-due countdown, and the print / send-duplicate / mass-status actions, see the Invoices overview.
Endpoint
| Endpoint | Method |
|---|---|
/api/admin/invoices | GET |
Query Parameters
| Parameter | Type | Description |
|---|---|---|
page | integer | Page number (1-based). |
per_page | integer | Items per page (default 10, cap 50). |
id | string | Filter by invoice id (integer or comma-separated list). |
order_id | string | Partial match on the parent order number. |
state | string | pending, pending_payment, paid, overdue. |
base_grand_total_from | number | Min grand total. |
base_grand_total_to | number | Max grand total. |
created_at_from | date | Created after (ISO date). |
created_at_to | date | Created before (ISO date). |
sort | string | id (default desc), increment_id, order_id, base_grand_total, state, created_at. |
order | string | asc or desc. |
Row shape
Each row carries the full invoice column set, order/customer context, and the billing & shipping addresses. The field reference is identical to Get Invoice — the only difference is that the line items are empty ([]) on the listing.
| Group | Fields |
|---|---|
| Identity | id, incrementId, orderId, orderIncrementId, state, emailSent, totalQty |
| Currency codes | orderCurrencyCode, baseCurrencyCode, channelCurrencyCode |
| Totals | subTotal*, grandTotal*, taxAmount*, discountAmount*, shippingAmount* — each in order + base currency, with formatted* and incl-tax variants |
| Status & timestamps | transactionId, reminders, nextReminderAt, createdAt, updatedAt |
| Order & customer | orderStatus, orderStatusLabel, orderDate, channelName, customerName, customerEmail |
| Addresses | billingAddress, shippingAddress (objects) |
| Line items (empty on listing) | items ([]) |
A null here means the DB is genuinely empty
Listing rows return the actual stored value for every column. A null (e.g. transactionId, customerName, baseCurrencyCode) means that row has no value stored for it — not that the listing is withholding data. Only the line items are deliberately omitted on the listing.
INFO
For invoice detail + PDF + create, see the per-order endpoints under Orders.

