---
title: "Get Next Bill Preview"
method: GET
path: "/billing/next-bill-preview"
tags: ["Billing", "billing"]
---

# Get Next Bill Preview

`GET /billing/next-bill-preview`

Preview the next bill amount with adjustments applied. Admin only.

## Response `200`

Successful Response

- NextBillPreviewResponse
  - `gross_amount_cents` integer, required
  - `gross_amount_display` string, required
  - `total_credits_cents` integer, required
  - `total_credits_display` string, required
  - `total_charges_cents` integer, required
  - `total_charges_display` string, required
  - `net_amount_cents` integer, required
  - `net_amount_display` string, required
  - `per_call_usage` PerCallUsageResponse — Current-period usage for a minimum + per-call contract. Provisional until the period closes: duration and voicemail outcomes are set by post-processing, so calls from the last few minutes may not be counted yet.
    - `period_start` string, date-time, required — Start of the current service period
    - `period_end` string, date-time, required — End of the current service period (exclusive)
    - `billable_call_count` integer, required — Calls counted toward this period's charges
    - `per_call_rate_cents` integer, required
    - `per_call_rate_display` string, required
    - `usage_amount_cents` integer, required — billable_call_count * per_call_rate
    - `usage_amount_display` string, required
    - `minimum_cents` integer, required — Monthly minimum; 0 when the contract has no minimum item
    - `minimum_display` string, required
    - `is_minimum_applied` boolean, required — True when the minimum exceeds usage, so the minimum is what's billed
    - `min_call_duration_seconds` integer, nullable — Calls shorter than this weren't counted; null means no minimum duration
    - `count_voicemails` boolean, required — Whether outbound voicemail calls were counted
    - `total_calls` integer, required — All calls placed or received in the period, before exclusions
    - `excluded_test` integer, required — Test calls, never billable
    - `excluded_imported` integer, required — Imported call logs and intake recordings (RingCentral/VXT/Croo), not agent calls
    - `excluded_error` integer, required — Calls that ended in an error
    - `excluded_no_duration` integer, required — Calls with no recorded duration (failed or incomplete)
    - `excluded_unanswered` integer, required — Outbound calls that never connected (no answer, busy)
    - `excluded_too_short` integer, required — Calls below min_call_duration_seconds
    - `excluded_voicemail` integer, required — Outbound calls that reached voicemail

---

[API](https://skmtc.dev/openintake/apis/fastapi.md) · [All operations](https://skmtc.dev/openintake/apis/fastapi/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/openintake/fastapi/revisions/4a81645b59f6/schema)
