---
title: "Get billing charge by id"
method: GET
path: "/billingCharges/{billingChargeId}"
tags: ["billingCharges"]
---

# Get billing charge by id

`GET /billingCharges/{billingChargeId}`

## Path parameters

- `billingChargeId` string, required

## Response `200`

BillingCharge

- BillingChargeResponse — Represents a single financial charge tracked against a patient, such as a copay, patient balance, custom appointment fee, or convenience fee. A billing charge moves through a status lifecycle (planned, billable, billed, or aborted) and a separate payment status (pending, paid, partially paid, refunded) as it is billed and collected, and can be linked to an appointment, patient, insurance verification, and one or more billing transactions.
  - `_id` string — Luma's internal ID of an object.
  - `user` string — The ID of the root account user.
  - `deleted` 0 | 1 — Flag for logical deletion where 1 means deleted.
  - `createdBy` string — The ID of the user who created this object.
  - `updatedBy` string — The ID of the user who updated this object.
  - `createdAt` string, date-time — The date/time when this object was created.
  - `updatedAt` string, date-time — The date/time when this object was updated.
  - `amount` number — The charge amount.
  - `currency` string — Currency code for the charge.
  - `status` 'planned' | 'billable' | 'billed' | 'aborted' — Lifecycle status of the charge. `planned` = planned but not yet billed, `billable` = confirmed by staff and ready to bill, `billed` = sent to the patient for collection, `aborted` = wrongfully added or aborted.
  - `lastStatusUpdatedAt` string, date-time — When `status` was last changed.
  - `lastStatusUpdatedBy` string — ID of the user who last changed `status`.
  - `type` 'copay' | 'balance' | 'custom-appointment-charge' | 'convenience-fee' — The kind of charge. `copay` = copay amount for the appointment, `balance` = patient balance tied to the appointment, `custom-appointment-charge` = custom value added by staff, `convenience-fee` = a convenience fee charge.
  - `source` 'manual' | 'integrator' | 'insurance-verification' | 'fixedAmount' — Where the charge originated from. `manual` = added by staff, `integrator` = from the EHR, `insurance-verification` = from the insurance verification process, `fixedAmount` = created from a fixed copay rule.
  - `description` string — Public description of the charge, visible to the patient.
  - `reason` string — Internal, staff-only note about the charge. Omitted from patient-facing responses.
  - `appointment` string — ID of the appointment associated with this charge.
  - `patient` string — ID of the patient associated with this charge.
  - `insuranceVerification` string — ID of the insurance verification this charge's copay was derived from, if any.
  - `insurance` string — ID of the patient's insurance saved alongside the insurance verification.
  - `paymentStatus` 'pending' | 'not-paid' | 'paid' | 'partially-paid' | 'refunded' — How much of the charge has been collected.
  - `amountPaid` number — The amount paid toward this charge so far.
  - `billingTransactions` string[] — IDs of the billing transactions associated with this charge.
  - `isCreatedByAI` boolean — Indicates whether this charge was created or suggested by AI.

## Other responses

- `401` — Not authenticated
- `403` — Access token does not have the required scope

---

[API](https://skmtc.net/lumahealth/apis/rest-service.md) · [All operations](https://skmtc.net/lumahealth/apis/rest-service/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/lumahealth/rest-service/revisions/d3c75c2a2f1d/schema)
