---
title: "Get Charges"
method: GET
path: "/billing/charge/list"
tags: ["provider", "billing"]
---

# Get Charges

`GET /billing/charge/list`

## Query parameters

- `patient_id` string, nullable
- `status` 'OUTSTANDING' | 'PAID' | 'EXTERNAL_SETTLEMENT' | 'VOID' | 'WRITE_OFF' | 'REFUNDED' | 'CHARGEBACK' | 'PAYMENT_PLAN' | 'COLLECTIONS'

## Headers

- `TENANT` string, required
- `API-KEY` string, required

## Response `200`

Successful Response

- ChargeDetailWithItems[]
  - `id` string, nullable — A unique identifier for the charge. Auto-generated if not provided.
  - `patientId` string, required — Identifier of the patient being charged.
  - `patient` PatientSummary
    - `id` string, required — The unique identifier for the user.
    - `firstName` string, nullable — The user's first name.
    - `lastName` string, nullable — The user's last name.
    - `phoneNumber` string, nullable — The user's phone number.
    - `email` string, nullable — The user's email address.
    - `type` 'PROVIDER' | 'PATIENT' | 'ASSISTANT', required
    - `locationId` string, nullable — The location of the user.
    - `externalId` string, nullable — The user's external identifier if available.
    - `address` string, nullable — The user's primary address.
    - `addressLineTwo` string, nullable — Additional address information.
    - `city` string, nullable — The city of the user's address.
    - `state` string, nullable — The state of the user's address.
    - `zipCode` string, nullable — The postal code of the user's address.
    - `country` string, nullable — The country of the user's address.
    - `createdDate` string, date-time, required — The date and time when the user was created.
    - `addressValid` boolean, nullable — Whether the user's address is valid.
    - `meta` object, nullable — Any additional metadata about the user relevant to your system.
    - `isArchived` boolean, nullable — Whether the user is archived.
    - `primaryLocationId` string, nullable — The primary location of the user.
    - `gender` string, nullable — The gender of the patient.
    - `dateOfBirth` string, date, nullable — The date of birth of the patient.
    - `patientMedications` string[], nullable — List of patient's self-reported medications.
    - `onSchedulingBlacklist` boolean, nullable — Whether the patient is on the scheduling blacklist.
    - `surchargeDisabled` boolean, nullable — Whether surcharges are disabled for this patient.
    - `tags` PatientTagSummary[], nullable — List of patient tags
      - `id` string, required — Unique identifier for the patient tag
      - `name` string, required — Name of the patient tag
      - `emoji` string, nullable — Emoji associated with the tag
      - `color` string, nullable — Color code for the tag (hex format)
      - `isActive` boolean, required — Whether the tag is active
      - `createdDate` string, date-time, required — Date and time when the tag was created
      - `updatedDate` string, date-time, nullable — Date and time when the tag was last updated
    - `creditBalance` integer, nullable — Patient's credit balance in cents.
    - `preferredProviderId` string, nullable — The preferred provider ID for this patient.
  - `total` integer — Total amount of the charge.
  - `totalOutstanding` integer, required — Total outstanding amount that is yet to be paid.
  - `description` string, nullable — Description of the charge.
  - `status` 'OUTSTANDING' | 'PAID' | 'EXTERNAL_SETTLEMENT' | 'VOID' | 'WRITE_OFF' | 'REFUNDED' | 'CHARGEBACK' | 'PAYMENT_PLAN' | 'COLLECTIONS'
  - `discountAmount` integer, nullable — Any discount applied to the total outstanding.
  - `discountPercentage` number, nullable — Percentage of discount applied to the charge.
  - `externalId` string, nullable — External identifier for the charge, if applicable.
  - `externalCreatedDate` string, date-time, nullable — The creation date of the charge in your external system, if applicable.
  - `ruleSetId` string, nullable — Identifier for the `RuleSet` applied to this `Charge`, if any.
  - `createdDate` string, date-time, nullable — The date when the charge was created.
  - `creatorId` string, nullable — Identifier of the `Provider` who created the charge (i.e. the Clinician, or relevant Biller).
  - `items` ChargeItemDetailOutput[], required
    - `id` string, nullable — Unique identifier for the charge item
    - `itemId` string, nullable — Optional unique identifier for the item
    - `chargeId` string, required — Identifier of the charge this item is associated with
    - `name` string, nullable — Name of the item (None for items with associated inventory item)
    - `description` string, nullable — Description of the item
    - `quantity` integer, required — Quantity of the item being charged
    - `discountAmount` integer, nullable — Discount amount for the item
    - `discountPercentage` number, nullable — Discount percentage for the item
    - `discountReason` string, nullable — Reason for discount
    - `price` integer, required — Price of the item in cents
    - `soldPackageId` string, nullable — Unique identifier for the sold package usage
    - `bankedQuantity` integer, nullable — Quantity to bank for later use
    - `bankedItemId` string, nullable — ID of banked item being used (for tracking usage)
    - `issuedDiscountId` string, nullable — Unique identifier for the specific issued discount instance used
    - `soldByProviderId` string, nullable — Unique identifier for the provider who sold the item
    - `taxAmount` integer, nullable — Tax amount for the item in cents
    - `pricingId` string, nullable — Unique identifier for the pricing for the item
    - `shipmentIds` string[], nullable — Optional list of shipment IDs to reduce the stock quantity of
    - `item` ItemTiny
      - `id` string — Unique identifier for the item
      - `name` string, required — Name of the item
      - `brandName` string, nullable — Optional brand name of the item
      - `description` string, nullable — Optional description of the item
      - `price` integer, required — Price of the item in cents
      - `category` string, nullable — Category name (references category.name)
      - `unit` 'AMPOULES' | 'APPLICATORS' | 'BOTTLES' | 'BOXES' | 'CAPSULES' | 'CUPS' | 'DOSES' | 'G_PER_ML' | 'GRAMS' | 'IU' | 'IU_PER_ML' | 'OUNCES' | 'FLUID_OUNCES' | 'KG' | 'KITS' | 'LITERS' | 'MCG' | 'MG' | 'MG_PER_ML' | 'ML' | 'MMOL' | 'MICROGRAM_PER_ML' | 'PACKS' | 'PAIRS' | 'PATCHES' | 'PERCENTAGE' | 'PIECES' | 'POUCHES' | 'ROLLS' | 'SACHETS' | 'SHEETS' | 'SPRAYS' | 'STRIPS' | 'SYRINGES' | 'TABLETS' | 'TABLETS_PER_DAY' | 'TESTS' | 'TUBES' | 'UNITS' | 'VIALS' | 'TREATMENTS' | 'SESSIONS' | 'PULSES' | 'JOULES' | 'CENTIMETERS' | 'THREAD_COUNT' | 'INJECTIONS' | 'WRINKLE_UNITS' | 'POUNDS' | 'FEET' | 'INCHES'
      - `isPhysical` boolean — Whether the item is physical
      - `isArchived` boolean — Whether the item is archived
      - `internalNotes` string, nullable — Optional internal notes for the item
      - `taxable` boolean — Whether the item is subject to taxes
      - `sortOrder` integer, nullable — Optional sort order for the item
      - `allowCustomPricing` boolean — Whether custom pricing is allowed for this item
      - `type` 'ITEM' | 'PRODUCT' | 'MEDICATION' | 'SERVICE' | 'PACKAGE' | 'MEMBERSHIP'
    - `locationId` string, nullable — Location ID where the sale occurred
    - `locationName` string, nullable — Location name where the sale occurred
    - `saleDate` string, date-time, nullable — Date when the sale occurred
  - `tips` TipDetail[] — List of `Tips` in the `Charge`.
    - `chargeId` string, required — Charge ID this tip belongs to
    - `amount` integer, required — Tip amount in cents
    - `providerId` string, required — Provider ID receiving the tip
    - `id` string — Unique identifier for the tip
    - `provider` ProviderTiny
      - `id` string, required
      - `firstName` string, required
      - `lastName` string, nullable
      - `email` string, nullable
      - `createdDate` string, date-time, nullable
  - `locationId` string, nullable — Identifier of the `Location` where the charge was created.
  - `eventId` string, nullable — Identifier of the `Event` this charge is associated with, if any.
  - `memberId` string, nullable — Identifier of the `Member` this charge is associated with, if any.
  - `comment` string, nullable — Any additional comments about the charge.
  - `meta` object, nullable — Any additional metadata about the charge relevant to your system.
  - `merchantAccountId` string, nullable — Identifier of the `MerchantAccount` this charge is associated with.
  - `adjustments` AdjustmentSummary[], required
    - `chargeId` string, required
    - `providerId` string, nullable
    - `locationId` string, nullable
    - `id` string, required — Unique identifier for the adjustment
    - `amount` integer, required — Amount of the adjustment
    - `reason` string, nullable — Reason for the adjustment
    - `createdDate` string, date-time, required — Date when the adjustment was created
    - `adjustmentType` 'WRITE_OFF' | 'ADJUSTMENT' | 'EXTERNAL_SETTLEMENT', required
  - `payments` ChargePaymentDetailOutput[], required
    - `paymentId` string, required — The unique identifier for the payment.
    - `amount` integer, required — The amount of the payment.
    - `createdDate` string, date-time, nullable — The date and time the payment was created.
    - `chargeId` string, required — The unique identifier for the charge.
    - `payment` PaymentOutput, required
      - `id` string, required — The unique identifier for the payment.
      - `patientId` string, nullable — The ID of the patient associated with the payment.
      - `payinId` string, nullable — The ID of the payin associated with the payment.
      - `amount` integer, required — The total amount of the payment.
      - `status` 'CANCELED' | 'CREATED' | 'FAILED' | 'IN_REVIEW' | 'PRESENTING' | 'PROCESSING' | 'SUCCEEDED', required
      - `currency` string — The currency in which the payment was made.
      - `payinConfigId` string, nullable — The configuration ID for the payin.
      - `paymentMedium` string, required — The name of the payment medium.
      - `paymentMethodId` string, nullable — The ID of the payment method used.
      - `stripePaymentIntentId` string, nullable — Stripe's payment intent ID if used.
      - `failedReason` string, nullable — Reason for payment failure if applicable.
      - `updatedDate` string, date-time, nullable — The date and time the payment was last updated.
      - `createdDate` string, date-time, required — The date and time the payment was created.
      - `fee` integer — The fee charged by the payment processor.
      - `feeToPatient` integer, required — The fee charged to the patient for the transaction.
      - `paymentMethod` PaymentMethodSummary
        - `id` string, required
        - `patientId` string, nullable, required
        - `rainforestPaymentMethodId` string, required
        - `brand` string, nullable, required
        - `last4` string, nullable, required
        - `expMonth` integer, nullable, required
        - `expYear` integer, nullable, required
        - `accountHolderType` string, nullable, required
        - `accountNumberLast4` integer, nullable, required
        - `bankName` string, nullable, required
        - `routingNumber` integer, nullable, required
        - `description` string, nullable, required
        - `type` 'CARD' | 'ACH' | 'APPLE_PAY', required
        - `isDefault` boolean
        - `isArchived` boolean
      - `refunds` RefundSummary[] — List of refunds associated with the payment.
        - `id` string, required
        - `paymentId` string, required
        - `amount` integer, required
        - `reason` 'DUPLICATE' | 'DISPUTE' | 'BOOKING_FEE' | 'OTHER', required
        - `createdDate` string, date-time, required
        - `status` 'CANCELED' | 'CREATED' | 'FAILED' | 'IN_REVIEW' | 'PRESENTING' | 'PROCESSING' | 'SUCCEEDED', required
        - `rainforestRefundId` string, nullable
        - `fee` integer

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.dev/decodahealth/apis/decoda-api.md) · [All operations](https://skmtc.dev/decodahealth/apis/decoda-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/decodahealth/decoda-api/revisions/4939a65a89d2/schema)
