Eric Mutema

Case study 07 of 08

Adriana Cowdin

Fixed failing subscription renewals and blocked cancellations for an author and coach's WooCommerce store, and built a custom abandoned cart recovery plugin.

Role
WordPress and WooCommerce developer
Type
Client work
Stack
  • WordPress
  • WooCommerce
  • WP Swings Subscriptions
  • PHP
  • SiteGround

01The Problem

Adriana Cowdin sells her book, merchandise and The Collective, a group coaching membership, through a WooCommerce store on SiteGround.

Subscription renewals were failing and some members could not cancel. Failed renewals lose recurring revenue, and blocked cancellations create support work and frustrated customers.

02The Approach

I started with the billing issues and traced the renewal failures to broken cron jobs in the WP Swings subscriptions plugin, not the payment gateway.

The cancellation blocks came from SiteGround's bot protection challenging legitimate requests.

For cart recovery, I built a small custom plugin instead of adding a large marketing suite.

03The Solution

Four changes, each scoped to one problem.

  • Repaired the scheduled renewal jobs so subscriptions renew on time.
  • Resolved the SiteGround bot protection conflict so members can cancel.
  • Built a custom abandoned cart recovery plugin under the AAC namespace, then audited it to confirm it contains no billing logic.
  • Removed the Kadence theme and its dependencies, leaving one theme stack to maintain.

04The Why

Keeping cart recovery fully separate from billing means a bug in a reminder can never touch a payment. The audit after the build confirmed that line holds.

Removing the unused theme cuts weight and update risk on a store that handles payments.

05The Result

Renewals and cancellations work again, and abandoned carts now get a recovery path.

06Stack

  • WordPress
  • WooCommerce
  • WP Swings Subscriptions
  • PHP
  • SiteGround

Visit site