Skip to main content

Billing

View your subscription and invoice history, and open the hosted billing portal to manage your payment method. Haltless bills a single per-machine subscription. All endpoints are authenticated with a Bearer JWT (see Authentication).

Endpoints

MethodPathDescription
GET/api/v1/billing/subscriptionView your current subscription
GET/api/v1/billing/invoicesList your invoices
POST/api/v1/billing/portal-sessionOpen the hosted billing portal (Admin)

The portal endpoint requires an account administrator role.

Subscription

GET /api/v1/billing/subscription

{
"status": "active",
"current_period_start": "2026-08-01T00:00:00Z",
"current_period_end": "2026-09-01T00:00:00Z",
"cancel_at_period_end": false,
"created_at": "2026-01-15T00:00:00Z"
}

status reflects the current billing state (for example active, past_due, canceled). Returns 404 if no subscription exists yet.

Invoices

GET /api/v1/billing/invoices

Returns your invoice history, most recent first. Amounts are in the smallest currency unit (for example cents).

{
"invoices": [
{
"id": "...",
"number": "INV-0001",
"status": "paid",
"amount_due": 9900,
"amount_paid": 9900,
"currency": "usd",
"created": "2026-08-01T00:00:00Z",
"period_start": "2026-08-01T00:00:00Z",
"period_end": "2026-09-01T00:00:00Z",
"hosted_invoice_url": "https://…",
"invoice_pdf": "https://…"
}
]
}

Each invoice includes hosted_invoice_url (view online) and invoice_pdf (download).

Billing portal

POST /api/v1/billing/portal-session

Creates a session for the hosted billing portal, where you can update your payment method and download invoices. Redirect the user to the returned url.

{ "url": "https://…" }