## List an employer's billing invoices `employers.list_invoices(stremployer_id, EmployerListInvoicesParams**kwargs) -> EmployerListInvoicesResponse` **get** `/v1/employers/{employer_id}/invoices` Returns a cursor-paginated page of the employer's billing invoices, newest first. Pass the `next_offset` from a previous page as `offset` to fetch the next page. The caller must be authorized for the employer; an unknown or unauthorized employer returns 404. ### Parameters - `employer_id: str` Unique employer identifier (empr_*) - `limit: Optional[int]` Maximum number of invoices per page - `offset: Optional[str]` Opaque cursor from a previous page's next_offset ### Returns - `class EmployerListInvoicesResponse: …` Cursor-paginated invoices envelope: `{ "data": [...], "pagination": { "next_offset": ... } }`. - `data: List[Data]` - `invoice_id: str` Chargebee invoice id (external id, not a prefixed UUID). - `period: Optional[str]` Invoice date as an ISO string, or null. - `status: Optional[str]` Chargebee invoice status (e.g. `paid`), or null. - `total: Optional[float]` Invoice total in dollars, or null. - `pagination: Pagination` - `next_offset: Optional[str]` Opaque JSON-encoded cursor for the next page; null when there are no more pages. ### Example ```python import os from vitable_connect import VitableConnect client = VitableConnect( api_key=os.environ.get("VITABLE_CONNECT_API_KEY"), # This is the default and can be omitted ) response = client.employers.list_invoices( employer_id="empr_abc123def456", ) print(response.data) ``` #### Response ```json { "data": [ { "invoice_id": "INV-00042", "period": "2026-05-01T00:00:00+00:00", "total": 1234.56, "status": "paid" } ], "pagination": { "next_offset": "[\"1748736000000\", \"INV-00042\"]" } } ```