Skip to content

Feature request: per-subscription cancellation notice period ("cancel by" date) #132

Description

@mjarkas97

Thank You and all Contributors out there for making it possible to have such a cool app.

The Problem:

In some countries depending on the subscription, one may need to cancel it 2-12 Weeks before the cancellation date.

So having the following entries:

  1. Renew Date: 01.03.2027 -> Cancellation should be at 2 week earlier: 15.02.2027 (ignore Feb. has fewer days ...)
  2. Renew Date: 01.03.2027 -> Cancellation should be at 4 week earlier: 01.02.2027
  3. Renew Date: 01.03.2027 -> Cancellation should be at 8 weeks earlier: 01.01.2027

i would like to be informed/reminded to cancel a subscription before the corresponding date has passed.

Workaround:

Cancellation Date:
The cancellation date wouldn't work because cancellation reminders only fire for subscriptions that were already cancelled. So cancellation reminders only fire for subscriptions that were already cancelled — it's "heads up, access ends soon," not "remember to cancel."

Renewal Reminder Windows:
The windows are a single global setting, so they can't differ per subscription — one contract can't get 14 days lead while another gets 56. The workaround is to set the union of all needed periods (e.g. 56,28,14,7,1) and put the notice period in the subscription Name, since Name is the only field that appears in the notification. Disadvantage: every subscription fires every window, which is noisy for monthly ones, and the Name has to carry data that belongs in a field.

Per-subscription notice period (proposal):
A per-subscription field like cancellation_notice_days (default 0, so existing behaviour is unchanged), used to derive cancel_by = renewal_date - notice_days, with reminders driven off that date instead of the renewal date. Disadvantage: new field plus a migration, and the reminder logic has to key its de-duplication off the derived date rather than the renewal date.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions