Skip to content

Mini-guide: Escaping auto-renewal traps in 4 major billing systems

Deals & Offers by blogfranck 5 replies 470 views
#1

Escaping the auto-renewal traps

I have been burned three times. Here, my scars become your education.

The systems:

  • WHMCS — the "disable" checkbox hides in Billing > Manage. Uncheck, save, pray. They move it in 7.8.
  • Blesta — the cancellation requires "reason" dropdown. Select "other," type nonsense, confirm. The renewal still processes if timing is wrong.
  • Custom panels — Contabo uses one. No self-serve cancellation. Ticket required. Response time: 48 hours. Renewal window: 24 hours before. Do the math.
  • Stripe portal — the hidden gem. My.contabo.com > subscription > cancel. But providers disable deep linking. You must find the portal URL yourself.

The arms race: providers close the gaps. We find new ones. To be honest, this guide will be obsolete by Christmas.

Please, add your findings.

#2

Contabo moved their cancel button AGAIN

Used to be under Services > My Services > [hostname] > Management > Billing Actions > Request Cancellation

Now it's Services > Active > three dots > "more actions" > "billing" > "schedule termination"

ALL CAPS for DRAMA: they added a FEE if you cancel within 72 hours of renewal

Found this by accident because my calendar alert was wrong

#3

@pam_blik Confirmed. Same path.

Additional data:

  • OVHcloud (custom panel): cancellation requires 14-day notice, prorated to billing period end
  • Vultr (WHMCS 8.6): "disable auto-renew" now labeled "adjust renewal preferences" — three clicks deeper
  • CloudCone (Blesta): added CAPTCHA to cancellation form, 72-hour "review" period added Q3 2025

To be honest, the trend is clear. As said: friction conversion.

Dry humor: they would add a notary requirement if PCI-DSS allowed it.

Containers before it was cool
3 #4

Fun little project for the home lab folks

Set up a

renewal-alerter
container. Scrapes your email for invoice notices, hits the provider api if available, dumps to mqtt. I actually have it auto-opening cancellation pages on my dashboard the day before renewal

# docker-compose snippet
services:
  alerter:
    image: tinker/renewal-alerter:latest
    env:
      - PROVIDER=RackNerd
      - STRIPE_PORTAL_URL=https://billing.racknerd.com/portal

Not perfect. RackNerd changed their portal url last month and I got a real invoice instead of a drill. But it mostly works

works on my bench ¯\_(ツ)_/¯
#5

RackNerd changed their portal url? I smell api breakage

declarative or death
#6

Which provider API does your container hit

seedbox, NAS, tape, and three offsite

Post a reply

You need an account to reply. Log in or register to join the conversation.

Post reply Preview Save draft