---
title: "Cancel usage charge"
method: POST
path: "/subscriptions/{subscriptionId}/charges/{id}/cancel"
tags: ["Subscriptions"]
---

# Cancel usage charge

`POST /subscriptions/{subscriptionId}/charges/{id}/cancel`

Cancels (refunds) a usage charge. The cancellation is processed asynchronously.
            
Important considerations:
* Only charges in the 'Succeeded' status can be canceled
* Charges can only be canceled within 24 hours of the charge being created
* The caller must be authorized for usage billing on the charged product

## Path parameters

- `subscriptionId` string, required
- `id` string, uuid, required

## Request body

- CancelUsageChargeRequest
  - `reason` string, nullable

## Response `202`

When request is accepted. Returns a 'Link' object to the charge.

- Link
  - `id` string, nullable
  - `href` string, nullable
  - `relation` string, nullable
  - `method` string, nullable

## Other responses

- `400` — When the charge is not in the 'Succeeded' status or is outside the 24 hour cancellation window.
- `403` — When the user is not authorized for usage billing on the product.
- `404` — When the charge does not exist or does not belong to the caller's account.

---

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