Troubleshooting
This guide covers common issues and their solutions. For additional help, visit our Support Center.
Content Protection Issues
Paywall Not Showing
Symptoms: Protected content is visible to everyone.
Solutions:
-
Check access level
- Edit the post → Content Protection meta box
- Ensure access level is greater than 0
-
You're logged in as admin
- Administrators bypass all restrictions
- Test in an incognito browser window
-
Caching issue
- Enable Cache Compatibility in Settings → Advanced
- Clear all caches (page cache, object cache, CDN)
-
Theme conflict
- Some themes use custom content filters
- Try switching to a default theme temporarily
Protected Content Visible to Non-Members
Solutions:
-
Enable Cache Compatibility Mode:
- Go to Settings → Advanced
- Enable Cache Compatibility
- Clear all caches
-
Configure your caching plugin:
- Exclude logged-in users from cache
- Add PaywallWP cookies to cache bypass
-
Check CDN settings:
- Add member cookies to cache bypass list
Meta Box Not Showing
Solutions:
-
Check Screen Options:
- In post editor, click "Screen Options" (top right)
- Enable "Content Protection"
-
Using Gutenberg:
- Look in the sidebar under Document settings
- Or use the classic editor plugin
-
Page builder conflict:
- Check page builder settings
- Some builders hide meta boxes
Payment Issues
Checkout Not Loading
Symptoms: Payment form is blank or shows error.
Solutions:
-
Check API keys:
- Go to Settings → Payments
- Verify Stripe/PayPal credentials are correct
- Ensure you're using test keys for test mode
-
Check browser console:
- Open Developer Tools (F12)
- Look for JavaScript errors
- Common issue: blocked scripts
-
Plugin conflict:
- Deactivate other plugins temporarily
- Reactivate one by one to find conflict
Payment Succeeds But Subscription Not Activated
This is almost always a webhook issue.
Solutions:
-
Verify webhooks are configured:
- Check Webhooks Setup Guide
- Confirm webhook URL is correct
-
Check webhook logs:
- Stripe: Dashboard → Webhooks → Click endpoint
- PayPal: Developer Dashboard → App → Webhooks
- Look for failed deliveries
-
Verify signing secret/webhook ID:
- Re-copy from gateway dashboard
- Paste in Settings → Payments
-
Check firewall/security plugin:
- Whitelist webhook requests
- Allow POST to
/wp-json/paywallwp/v1/
"Invalid API Key" Error
Solutions:
- Double-check API keys are complete
- Ensure correct mode (test keys with test mode)
- For Stripe:
sk_test_for test,sk_live_for live - Generate new keys if issue persists
Test Payments
Use these test credentials:
Stripe Test Cards:
| Card Number | Result |
|---|---|
4242 4242 4242 4242 | Success |
4000 0000 0000 0002 | Declined |
4000 0025 0000 3155 | 3D Secure |
PayPal Sandbox:
- Use sandbox buyer account
- Create at developer.paypal.com
Member Access Issues
Member Can't Access Content
Solutions:
-
Check member status:
- Go to PaywallWP → Members
- Verify status is "Active"
-
Check access level:
- Member's level must meet or exceed content level
- Edit member to see their access level
-
Check expiration:
- Ensure subscription hasn't expired
- Check "Expires" date in member details
-
Have member re-login:
- Ask them to log out and back in
- Clears any cached session data
-
Clear cache:
- Clear page cache
- Clear browser cache
Subscription Shows "Expired" But Should Be Active
Solutions:
-
Check subscription in gateway dashboard:
- Stripe: Dashboard → Subscriptions
- PayPal: Dashboard → Subscriptions
-
Verify webhooks are working:
- Check webhook delivery logs
- Renewal events should be received
-
Manually update if needed:
- Edit member in PaywallWP → Members
- Update status and expiration date
Member Logged Out Unexpectedly
Solutions:
- Check WordPress session settings
- Security plugins may have session timeouts
- CDN/caching may interfere with sessions
- Check for multiple login sessions limit
Technical Issues
REST API Errors
Symptoms: 401 Unauthorized, 403 Forbidden, or 404 errors.
Solutions:
-
Check REST API is enabled:
- Some security plugins disable REST API
- Enable REST API or whitelist our endpoints
-
Check permalinks:
- Go to Settings → Permalinks
- Re-save (click Save without changes)
- Don't use "Plain" structure
-
Check .htaccess:
- Look for blocking rules
- WordPress rules should be present
-
Whitelist endpoints:
/wp-json/paywallwp/v1/*
Email Notifications Not Sending
Solutions:
-
Test WordPress email:
- Use WP Mail SMTP plugin
- Send a test email
-
Use SMTP:
- Install an SMTP plugin
- Configure with your email provider
-
Check spam folders:
- Emails may be filtered
Plugin Conflicts
How to identify:
- Deactivate all plugins except PaywallWP Pro
- Test if issue persists
- Reactivate plugins one by one
- Test after each activation
- Identify the conflicting plugin
- Contact support with details
Common conflicts:
- Other membership plugins
- Aggressive caching plugins
- Security plugins blocking REST API
- Optimization plugins removing scripts
Debug Mode
Enable detailed logging:
- Go to Settings → Advanced
- Enable Debug Mode
- Reproduce the issue
- Check
/wp-content/debug.log - Disable after troubleshooting
Debug mode logs sensitive information. Don't leave enabled in production.
Performance Issues
Slow Page Load
Solutions:
-
Check caching:
- Enable a caching plugin
- Configure CDN
-
Optimize scripts:
- Scripts load only where needed
- Ensure no duplicate jQuery
-
Check hosting:
- Consider upgrading hosting
- Use PHP 8.0+
High Database Usage
Solutions:
-
Clean up old data:
- Remove test transactions
- Archive old members
-
Optimize tables:
- Use database optimization plugin
Getting Support
Before Contacting Support
- Check this troubleshooting guide
- Enable debug mode and check logs
- Test with default theme
- Deactivate other plugins
Information to Provide
Go to PaywallWP → Help → System and copy the system report:
- Plugin version
- WordPress version
- PHP version
- Active theme
- Error messages
- Steps to reproduce
Contact Support
Visit paywallwp.com/support to submit a ticket.
Include:
- System report
- Screenshots of issue
- Steps to reproduce
- Any error messages