Skip to content

Invoices

Billing invoices for dental services provided to patients. List and retrieve invoice details, including amounts, payments, insurance, and outstanding balances.

List invoices

Request

Returns a paginated list of invoices for the practice identified by X-Practice-Id. Results are ordered by creation time, most recent created first (created_at descending), then by id descending for a stable sort.

Optional query parameters allow filtering results by patient, site, create and update date ranges, and if the invoice has been paid.

When is_paid is true, results are restricted to invoices that have been paid. When false, results are restricted to invoices that have not been paid. When omitted, all invoices are returned.

Date range. Optional query parameters created_date_from and created_date_to filter by creation date, while updated_date_from and updated_date_to filter by update date. Both ends are inclusive.

Use limit and the meta.cursor value from the response to retrieve further pages.

Security
oauth2(Required scopes: invoice:read)
Query
limitinteger, [ 1 .. 100 ]

Maximum number of records to return per page.

Default:20
cursorstring

Cursor reference to the next page of records.

site_idstring, (uuid)

Filter records to those occurring at the specified site. The value should be a UUID corresponding to a site within the practice.

created_date_fromstring, (date)

Inclusive start of a created date range filter. Calendar date only (YYYY-MM-DD). Use together with created_date_to for explicit date range control.

  • When used together with created_date_to, the range between the two values must not exceed 90 days.
  • When used without created_date_to, returns records from created_date_from up to 90 days later (or up to the current date-time if it is earlier).
Example:created_date_from=2026-01-01
created_date_tostring, (date)

Inclusive end of a created date range filter. Calendar date only (YYYY-MM-DD). Use together with created_date_from for explicit date range control.

  • When used together with created_date_from, the range between the two values must not exceed 90 days.
  • When used without created_date_from, returns records from 90 days before created_date_to (or from the earliest available date if less than 90 days of data exists) up to created_date_to.
Example:created_date_to=2026-01-01
updated_date_fromstring, (date)

Inclusive start of an updated date range filter. Calendar date only (YYYY-MM-DD). Use together with updated_date_to for explicit date range control.

  • When used together with updated_date_to, the range between the two values must not exceed 90 days.
  • When used without updated_date_to, returns records from updated_date_from up to 90 days later (or up to the current date-time if it is earlier).
Example:updated_date_from=2026-01-01
updated_date_tostring, (date)

Inclusive end of an updated date range filter. Calendar date only (YYYY-MM-DD). Use together with updated_date_from for explicit date range control.

  • When used together with updated_date_from, the range between the two values must not exceed 90 days.
  • When used without updated_date_from, returns records from 90 days before updated_date_to (or from the earliest available date if less than 90 days of data exists) up to updated_date_to.
Example:updated_date_to=2026-01-01
patient_idstring, (uuid)

Filter invoices to those associated with the specified patient. The value should be a UUID corresponding to a patient within the practice.

is_paidboolean

Filter invoices to those that have been paid or unpaid.

Headers
X-Practice-Idstring, (uuid)required

UUID of the practice in whose context the request is executed. The API uses this to resolve data the caller is permitted to access for that practice.

curl -i -X GET \
  'https://docs.api.dentally.com/_mock/docs/versions/2026-01-01/nexgen/invoices?limit=20&cursor=string&site_id=497f6eca-6276-4993-bfeb-53cbbbba6f08&created_date_from=2026-01-01&created_date_to=2026-01-01&updated_date_from=2026-01-01&updated_date_to=2026-01-01&patient_id=497f6eca-6276-4993-bfeb-53cbbbba6f08&is_paid=true' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'X-Practice-Id: 497f6eca-6276-4993-bfeb-53cbbbba6f08'

Responses

The list of invoices.

Bodyapplication/json
dataArray of objects(invoice)required

List of invoices.

metaobject(meta)required

Cursor-based pagination metadata. When an operation supports paging, pass cursor from this object on a subsequent request to continue after the current page.

Response

Paginated list with cursor for the next page.

{ "data": [ { … }, { … } ], "meta": { "cursor": "eyJjdXJzb3IiOiJuZXh0In0" } }