---
title: "Start Billing Run"
method: POST
path: "/billing/developer/runs"
tags: ["Billing", "billing"]
---

# Start Billing Run

`POST /billing/developer/runs`

Start a new billing run. Creates a BillingRun record and dispatches a Celery task.

Developer only.

## Request body

- StartBillingRunRequest
  - `is_dry_run` boolean — If true, compute billable periods but do not execute transfers

## Response `200`

Successful Response

- BillingRunResponse
  - `billing_run_id` string, uuid, required
  - `status` string, required
  - `is_dry_run` boolean, required
  - `initiated_by` string, uuid, nullable
  - `total_customers` integer, required
  - `total_items` integer, required
  - `successful_items` integer, required
  - `failed_items` integer, required
  - `skipped_items` integer, required
  - `total_amount_cents` integer, required
  - `total_amount_display` string, required
  - `error_message` string, nullable
  - `celery_task_id` string, nullable
  - `started_at` string, date-time, nullable
  - `completed_at` string, date-time, nullable
  - `created_at` string, date-time, required

## Other responses

- `422` — Validation Error

---

[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)
