> For the complete documentation index, see [llms.txt](https://help.inveterate.com/dev/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.inveterate.com/dev/api-reference-docs/public-api-2.0-reference/admin/webhooks/topics/customer.cancelled.md).

# customer.cancelled

## `customer.cancelled`

#### Payload Structure

```js
{
  "payload": {
    "createdAt": "2025-05-30T10:40:47.081Z",
    "tierId": "3a636361",
    "merchantId": "inveterate",
    "detail": {
      "cancellationSource": "FAILURE",
      "tierName": "PAID"
    },
    "updatedAt": "2025-05-30T10:40:47.081Z",
    "customerId": "7733540520067"
  },
  "metadata": {
    "id": "e3d8d8cc05d1ac397cb5d89e417d2350",
    "retryCount": 0,
    "shopDomain": "inveterate.myshopify.com",
    "topic": "customer.cancelled",
    "version": "2025-06",
    "triggerredAt": "2025-05-30T10:40:47.613Z"
  }
}
```

#### Payload Fields

**payload**

* `createdAt` (string): ISO timestamp when the event was created
* `tierId` (string): Unique identifier for the tier the customer was cancelled from
* `merchantId` (string): Merchant identifier
* `customerId` (string): Customer identifier
* `updatedAt` (string): ISO timestamp when the event was last updated
* `detail` (object): Additional details about the cancellation
  * `cancellationSource` (string): Reason for cancellation (e.g., "FAILURE", "CUSTOMER", "MERCHANT")
  * `tierName` (string): Name of the tier that was cancelled

**metadata**

* `id` (string): Unique event identifier
* `retryCount` (number): Number of retry attempts for this event
* `shopDomain` (string): Shopify domain of the merchant
* `topic` (string): Event topic name
* `version` (string): API version
* `triggerredAt` (string): ISO timestamp when the event was triggered
