Doctor Subs
Doctor Subs
Description
A WordPress plugin that helps diagnose and troubleshoot WooCommerce subscription issues.
What It Does
Doctor Subs analyzes WooCommerce subscriptions to identify common problems:
- Skipped Payment Cycles: Detects when subscription payments have missed expected billing cycles
- Manual Completions: Flags orders that were completed manually without proper payment processing
- Status Mismatches: Identifies inconsistencies between subscription status and payment schedules
- Action Scheduler Issues: Reviews scheduled events for failures or missing actions
- Timeline Analysis: Creates visual timelines showing renewal patterns and missing payments
- Stripe Payment Method Detachment: Detects detached payment methods caused by cloned/staging sites (fixes Stripe renewal failures)
Requirements
- WordPress 5.0+
- PHP 7.4+
- WooCommerce 9.8.5+
- WooCommerce Subscriptions (latest version)
How to Use
Quick Access from Subscriptions List
- Go to WooCommerce > Subscriptions
- Find any subscription in the list
- Click the “Doctor Subs” link in the Status column (next to Suspend/Cancel)
- The analysis will start automatically
Manual Analysis
- Go to WooCommerce > Doctor Subs
- Search for a subscription by ID or customer email
- Click on the search result to analyze
- Review the automated analysis results
Analysis Process
The plugin follows a systematic troubleshooting approach:
Step 1: Subscription Anatomy
Reviews the subscription structure, settings, and configuration
Step 2: Expected Behavior
Determines what should happen based on the subscription setup
Step 3: Timeline Analysis
Documents what actually occurred to identify discrepancies
Step 4: Advanced Detection
- Skipped Cycles: Analyzes payment history for missed billing cycles
- Manual Completions: Identifies orders completed without proper transactions
- Status Mismatches: Finds inconsistencies between status and payments
- Action Scheduler: Reviews scheduled events for failures
- Payment Gateway: Checks gateway configuration and mode (live/sandbox)
- Stripe Payment Method Detachment: Detects detached payment methods from cloned/staging sites
Common Issues Detected
- Missing renewal orders
- Failed scheduled actions
- Payment method problems
- Timeline discrepancies
- Status inconsistencies
- Gateway communication issues
- Skipped payment cycles
- Manual completion flags
- Stripe payment method detachment (cloned site bug)
- Stripe API errors in renewal orders
Technical Details
Core Components
- Main Plugin: Handles initialization and WordPress integration
- Admin Interface: Provides the user interface and menu integration
- AJAX Handler: Processes analysis requests securely
- Analyzers: Specialized classes for different types of analysis
- Data Collectors: Gathers subscription and order information
- Utilities: Security, logging, and helper functions
Security Features
- Nonce verification for all requests
- Permission checking (requires manage_woocommerce capability)
- Input sanitization and validation
- Rate limiting for analysis requests
- Secure database queries using prepared statements
License
GPL v2 or later. See LICENSE file for details.
Installation
- Download: Visit GitHub Releases and download “Source code (zip)”
- Upload: Go to Plugins > Add New > Upload Plugin in WordPress
- Install: Choose the downloaded zip file and click Install Now
- Activate: Click Activate Plugin
- Access: Navigate to WooCommerce > Doctor Subs