---
title: "cancel subscription · RUAL Documentation"
description: "Cancels a subscription. By default at the end of the paid-for period: the customer keeps their access until it runs out, the subscription stays active w…"
canonical: https://docs.rual.nl/block-types/stripe/stripeconnection_subscriptions_cancel
language: en
---

# cancel subscription

This block is part of the [`stripe`](https://docs.rual.nl/block-types/stripe) group and was last modified in core [`v15.0.0`](https://docs.rual.nl/core-versions/150000).

Cancels a subscription. **By default at the end of the paid-for period**: the customer keeps their access until it runs out, the subscription stays active with `cancels at period end` set, and **resume subscription** undoes it. Tick `immediately` to stop access now : that is irreversible, and unless `prorate` is set the customer is not credited for the unused time.

- flow `flow`

- connection required `stripeconnection`

- subscription id required `value`

- immediately `boolean` Stop access now instead of at the end of the period. **Cannot be undone** : a new subscription has to be created.

- prorate `boolean` With `immediately`: credit the unused time to the customer's Stripe balance, applied to their next invoice. This does **not** refund their card : use **create refund** for that.

- reason `value` A free-text note stored on the cancellation, for your own reporting.

- idempotency key `value` Optional. Reusing a key makes Stripe replay the first response instead of creating a second object : wire something stable per order, like the order GUID.

- flow `flow`

- connection `stripeconnection`

- is active `condition` True for `active` AND `trialing` : branching on status == active alone locks every trial user out.

- status `value` `trialing`, `active`, `past_due`, `canceled`, `unpaid`, `incomplete`, `paused`.

- subscription id `value`

- cancels at period end `condition` True when the subscription is running out rather than renewing. Resume clears it.

- period end `number` Unix timestamp : when the customer's paid-for access runs out, and when the next charge falls due.

- period start `number` Unix timestamp.

- canceled at `number` Unix timestamp of when cancellation was requested. 0 when it has not been.

- trial end `number` Unix timestamp. 0 when there is no trial.

- price id `value` The plan on the first item : what a single-plan subscription is subscribed to.

- items `array ` Every subscription item, for the multi-plan case.

- customer id `value`

- latest invoice id `value` The invoice a credit note would be issued against.

- meta data `object`

- subscription `object`

- success `condition`

- error `value` Stripe's own message, or a sentinel like MISSING_SESSION_ID for a problem in the wiring.

- error code `value` Stripe's machine-readable code, e.g. `card_declined`, `resource_missing`.

- decline code `value` Why the bank refused, e.g. `insufficient_funds`. Only set on a declined card.

| `unsubscribe` |
| --- |
| `end subscription` |
| `stop billing` |
| `cancel` |

### Version history

Introduced in [`v15.0.0`](https://docs.rual.nl/core-versions/150000).

### Service documentation
