Subscription renewal skipped: symptoms, cause, and the test that catches it
Scheduled renewals do not run or run with stale plan data after a billing job change.
Subscription renewal skipped is documented by 2 accepted public reports from 2 organisations, 2 of them published in the last 5 years.
- Likelihood: low (2 public reports in 5 years)
- Impact: high (2 of 2 reports: money)
Symptoms
User-visible
- Memberships up for automatic renewal were not processed correctly from 25 February 2026 after system-wide improvements.[1]
- Customers paying through a direct debit gateway saw disruptions to collect-invoice and subscription renewal requests after an application change.[2]
- A few renewal and invoice collection transactions through that direct debit gateway failed.[2]
Root causes
- stage: code A recent application change had incomplete error handling, which produced null pointer exceptions in collect-invoice and subscription renewal processing through the direct debit gateway.[2]
- stage: code System-wide improvements caused an unintended malfunction in the automated membership renewal job.[1]
Public examples
- [1]MATCHi AB, 2026-02-28. MATCHi reported that after recent system-wide improvements its automated membership renewal job malfunctioned from 25 February 2026, so some auto-renewals were not processed, and it deployed fixes and re-ran the job to restore affected memberships. primary Issues with automatic renewal of memberships
- [2]Chargebee, 2024-03-01. Chargebee reported that a recent change in its application caused collect-invoice and subscription renewal requests through the GoCardless gateway to fail with null pointer exceptions, and fixed the error handling. primary Service Interruption in the GoCardless Gateway
Test classes that catch it
| Test class | Stage | Limitation | Basis |
|---|---|---|---|
| Unit tests | pre-merge | A unit test of the renewal error handler covers only the gateway error responses its author feeds it, so it misses a response shape that reaches the null pointer path. | by design analysis |
| Integration tests | pre-deploy | An integration test of the payment call passes when the scheduled renewal job never selects a due membership, because no payment call is made at all. | by design analysis |
Risk
- Likelihood: low (2 public reports in 5 years)
- Impact: high (2 of 2 reports: money)
| Accepted public reports | 2 |
|---|---|
| Published in the last 5 years | 2 |
| Impact stated: money | 2 |
Pre-release checklist
- PR-01
- PR-02
- PR-03
- PR-04
- PR-05
- PR-06
- PR-07
First 30 minutes
- FM-01
- FM-02
- FM-03
- FM-04
- FM-05
- FM-06
- FM-07
Download the checklist
What catches this: catalogue entries
Listed because their own documentation or site names unit tests, integration tests on the verification date. Alphabetical. Not a recommendation.
Tools whose documentation names these test classes
- Hoverfly integration source verified 2026-10-21
- Jest unit source verified 2026-10-21
- JUnit unit source verified 2026-10-21
- Nightwatch unit source verified 2026-10-21
- Postman integration source verified 2026-10-21
- pytest unit source verified 2026-10-21
- RSpec unit source verified 2026-10-21
- Serenity BDD integration source verified 2026-10-21
- Testcontainers integration source verified 2026-10-21
- TestNG unit source verified 2026-10-21 integration source verified 2026-10-21
- Vitest unit source verified 2026-10-21
- WebdriverIO unit source verified 2026-10-21
- XCTest unit source verified 2026-10-21
Providers whose site names these test classes
- andagon people GmbH integration source verified 2026-10-21 unit source verified 2026-10-21
- Appmatics integration source verified 2026-10-21
- AQA Masters integration source verified 2026-10-21
- Cleverix integration source verified 2026-10-21
- Crestech Software Systems integration source verified 2026-10-21
- DeviQA integration source verified 2026-10-21
- Inmetrics unit source verified 2026-10-21
- Invensis Technologies integration source verified 2026-10-21
- Outpost QA integration source verified 2026-10-21
- Q-Centric GmbH integration source verified 2026-10-21
- QA Madness integration source verified 2026-10-21
- QA Mentor integration source verified 2026-10-21 unit source verified 2026-10-21
- QAwerk integration source verified 2026-10-21
- Quality Island integration source verified 2026-10-21
- Soflab Technology integration source verified 2026-10-21
- SQA - Software Quality Assurance S.A. integration source verified 2026-10-21
- SunTec India integration source verified 2026-10-21
- T2S Tecnologia unit source verified 2026-10-21
- TestFort integration source verified 2026-10-21
- Testhouse integration source verified 2026-10-21
- Testing IT integration source verified 2026-10-21
- TestMatick integration source verified 2026-10-21
- Testscenario integration source verified 2026-10-21
- Zoonou integration source verified 2026-10-21
Only on this page
In report [1], the automated membership renewal job malfunctioned from 25 February 2026, and the notice was posted as under investigation on 28 February 2026. The report does not say how the subscription renewal skipped fault was detected. The fixes were deployed in two steps, the impacted job was re-run, and affected memberships were updated automatically [1].
In report [2], the fault sat in error handling on one direct debit gateway, so failures showed as null pointer exceptions in renewal processing on that gateway. The fix in report [2] changed how these errors are handled so transactions fail gracefully.
Related incidents
- Tax calculation regression Tax or VAT is computed with the wrong rate or jurisdiction after a rules or data update.
- Double charge after deploy A customer is charged twice for one purchase after a release changes retry or idempotency behaviour.
- Checkout blocked for segment A checkout step fails for one customer segment, country or card type after a release.
- Connection pool exhausted A new code path leaks or holds connections and the pool runs out under load.
- Email or SMS provider template broken Transactional messages are sent with broken templates or to wrong recipients after a template change.
Questions
What causes subscription renewal skipped?
In report [2], a recent application change had incomplete error handling that raised null pointer exceptions in renewal processing on one direct debit gateway. In report [1], system-wide improvements caused the automated renewal job to malfunction.
What are the symptoms of subscription renewal skipped?
Memberships up for renewal were not processed correctly from 25 February 2026 [1]. In report [2], collect-invoice and renewal requests on one gateway were disrupted and a few transactions failed.
Which test class catches subscription renewal skipped, and what does it miss?
Unit tests and integration tests carry the by-design label, because neither report names a test class. An integration test of the payment call alone misses a renewal job that never selects a due membership.
Which public reports document subscription renewal skipped?
Two primary status reports are on this page, published on 1 March 2024 [2] and 28 February 2026 [1]. Neither report gives a detection time.
What should be checked before a release to prevent subscription renewal skipped?
Item PR-04 runs the scheduled renewal job in staging against memberships due today. Item PR-05 confirms the count of due memberships matches the count the job processed.
Should a team roll back or fix forward when subscription renewal skipped happens?
Neither report mentions a rollback. Report [2] changed the error handling so transactions fail gracefully, and report [1] deployed fixes in two steps and re-ran the renewal job.
Release Incident Playbook (2026). Subscription renewal skipped: symptoms, cause, and the test that catches it, content version 1.0.0. https://releasefailures.com/incidents/subscription-renewal-skipped/. Accessed 2026-10-21.