---
title: "Starts reconciliation for a single billing item, all items for a customer, or all items in a billing group."
method: POST
path: "/billing/reconcile"
tags: ["Billing", "Reconciliation"]
---

# Starts reconciliation for a single billing item, all items for a customer, or all items in a billing group.

`POST /billing/reconcile`

Exactly one of BillingItemId, CustomerId, or BillingGroupId must be specified.
 Date range filtering is only available with CustomerId or BillingGroupId.
 Returns a correlation ID that can be used to track progress of the bulk operation.

## Request body

- StartBulkReconciliationEndpointInput
  - `billingItemId` string, nullable — The identifier of a single billing item to reconcile.
  - `organizationId` string, required — The organization the reconciliation is scoped to.
  - `customerId` string, uuid, nullable — The customer identifier to reconcile all billing items for.
  - `billingGroupId` string, nullable — The billing group identifier to reconcile all billing items for.
  - `startDate` string, date-time, nullable — Optional start date filter. Only applies with CustomerId or BillingGroupId.
  - `endDate` string, date-time, nullable — Optional end date filter. Only applies with CustomerId or BillingGroupId.
  - `timestampMode` 'UseResponseCreatedAt' | 'UseReconciliationTime'

## Response `200`

OK

- StartBulkReconciliationEndpointOutput
  - `bulkReconciliationId` string, required — The bulk reconciliation identifier for all jobs created in this bulk operation.

## Other responses

- `400` — Bad Request
- `401` — Unauthenticated
- `403` — Forbidden

---

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