## List an employer's billing invoices `employers.list_invoices(employer_id, **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: String` Unique employer identifier (empr_*) - `limit: Integer` Maximum number of invoices per page - `offset: String` Opaque cursor from a previous page's next_offset ### Returns - `class EmployerListInvoicesResponse` Cursor-paginated invoices envelope: `{ "data": [...], "pagination": { "next_offset": ... } }`. - `data: Array[{ invoice_id, period, status, total}]` - `invoice_id: String` Chargebee invoice id (external id, not a prefixed UUID). - `period: String` Invoice date as an ISO string, or null. - `status: String` Chargebee invoice status (e.g. `paid`), or null. - `total: Float` Invoice total in dollars, or null. - `pagination: { next_offset}` - `next_offset: String` Opaque JSON-encoded cursor for the next page; null when there are no more pages. ### Example ```ruby require "vitable_connect" vitable_connect = VitableConnect::Client.new( api_key: "My API Key", environment: "environment_1" # defaults to "production" ) response = vitable_connect.employers.list_invoices("empr_abc123def456") puts(response) ``` #### 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\"]" } } ```