---
title: "Get Cash Balance Timeline"
method: GET
path: "/billing/cash-balance/timeline"
tags: ["provider", "billing"]
---

# Get Cash Balance Timeline

`GET /billing/cash-balance/timeline`

## Request

- Base URL: `https://docs.decodahealth.com` (the document declares no server; this is the origin it was published from)
- URL: `https://docs.decodahealth.com/billing/cash-balance/timeline`
- Auth: none declared. Required headers: `TENANT`, `API-KEY`
- TypeScript: <https://skmtc.dev/decodahealth/apis/decoda-api/docs/billing/cash-balance/timeline/get.ts> (a function with typed inputs; its response is checked against the schema)

Get complete cash balance timeline for a location with all events aggregated.

By default (when no start_date is provided), returns the last 7 days of data for performance.
The timeline will automatically include the most recent cash balance closure before the start date
to ensure accurate running balance calculations.

## Query parameters

- `location_id` string, required
- `start_date` string, date-time, nullable
- `end_date` string, date-time, nullable
- `include_calculated` boolean

## Headers

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

## Response `200`

Successful Response

- CashBalanceTimelineResponse: Complete timeline response including events and stats.
  - `events` TimelineEvent[], required: List of timeline events
    - `id` string, required: Unique identifier for the event
    - `type` 'balance_closure' | 'adjustment' | 'calculated_balance' | 'discrepancy_note' | 'cash_payment' | 'cash_refund', required: Type of timeline event
    - `date` string, date-time, required: Date/time of the event
    - `cashBalance` CashBalanceDetail: Detailed cash balance record including location name and creator name.
      - `id` string, required: The unique identifier for the cash balance
      - `creatorId` string, required: The ID of the creator
      - `locationId` string, required: The ID of the location
      - `closingBalance` integer, required: The closing balance amount in cents
      - `balanceDiscrepancy` integer, required: The balance discrepancy amount in cents
      - `discrepancyAcknowledged` boolean: Whether the discrepancy has been acknowledged
      - `acknowledgedById` string, nullable: The ID of the user who acknowledged the discrepancy
      - `createdDate` string, date-time, required: The date and time the cash balance was created
      - `updatedDate` string, date-time, nullable: The date and time the cash balance was last updated
      - `isArchived` boolean: Whether the cash balance record is archived/voided
      - `locationName` string, nullable: The name of the location
      - `creatorName` string, nullable: The name of the creator
      - `acknowledgedByName` string, nullable: The name of the user who acknowledged the discrepancy
    - `adjustment` CashBalanceAdjustmentDetail: Detailed cash balance adjustment information including creator details.
      - `id` string, required: The unique identifier for the adjustment
      - `locationId` string, required: The ID of the location
      - `amount` integer, required: The adjustment amount in cents
      - `reason` string, required: The reason for the adjustment
      - `creatorId` string, required: The ID of the creator
      - `createdDate` string, date-time, required: The date and time the adjustment was created
      - `isArchived` boolean: Whether the adjustment has been voided
      - `creatorName` string, nullable: The name of the creator
    - `calculatedBalance` CalculatedDailyBalance: Daily calculated balance summary.
      - `date` string, date-time, required: The date for this calculated balance
      - `endingBalance` integer, required: Ending balance in cents
      - `startingBalance` integer, required: Starting balance in cents
      - `cashPayments` integer, required: Total cash payments in cents
      - `cashRefunds` integer, required: Total cash refunds in cents
      - `adjustments` integer, required: Total adjustments in cents
      - `locationId` string, required: The location ID
      - `locationName` string, nullable: The location name
    - `paymentSummary` PaymentSummaryForTimeline: Payment summary for timeline display.
      - `id` string, required: Payment ID
      - `amount` integer, required: Payment amount in cents
      - `payerName` string, required: Name of the payer
      - `creatorName` string, required: Name of the user who processed the payment
      - `createdDate` string, date-time, required: Payment creation date
      - `paymentMedium` string, required: Payment medium (e.g., CASH)
    - `refundSummary` RefundSummaryForTimeline: Refund summary for timeline display.
      - `id` string, required: Refund ID
      - `amount` integer, required: Refund amount in cents
      - `payerName` string, required: Name of the original payer
      - `creatorName` string, required: Name of the user who processed the refund
      - `createdDate` string, date-time, required: Refund creation date
      - `reason` string, nullable: Reason for the refund
    - `locationName` string, nullable: Name of the location
  - `stats` TimelineStats, required: Summary statistics for timeline events.
    - `totalEvents` integer, required: Total number of events
    - `balanceClosures` integer, required: Number of balance closures
    - `adjustments` integer, required: Number of adjustments
    - `discrepancies` integer, required: Number of discrepancies

## 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.dev/decodahealth/apis/decoda-api/revisions/4ab18c80f9e9?raw)
