Troubleshooting
This guide covers the most common issues you might encounter with WPsigner and provides step-by-step solutions.
Quick Diagnostics
Section titled “Quick Diagnostics”Before troubleshooting specific issues, check the System Status:
- Go to WPsigner → More → System Status
- Review all health checks
- Address any items marked with ⚠️ or ❌
Installation Issues
Section titled “Installation Issues””Plugin could not be activated”
Section titled “”Plugin could not be activated””Symptoms:
- Error message on activation
- White screen after activation
- Plugin immediately deactivates
Causes & Solutions:
| Cause | Solution |
|---|---|
| PHP version too low | Upgrade to PHP 7.4 or higher |
| Missing OpenSSL | Enable OpenSSL extension |
| Memory limit | Increase to 128MB minimum |
| Plugin conflict | Deactivate other plugins to identify conflict |
How to check PHP version:
php -vHow to enable debug mode:
Add to wp-config.php:
define('WP_DEBUG', true);define('WP_DEBUG_LOG', true);define('WP_DEBUG_DISPLAY', false);Then check /wp-content/debug.log for specific errors.
”Upload failed - file size exceeds limit”
Section titled “”Upload failed - file size exceeds limit””Symptoms:
- Cannot upload plugin zip file
- Error during upload process
Solutions:
- Increase PHP upload limits in
php.ini:
upload_max_filesize = 64Mpost_max_size = 64Mmax_execution_time = 300- Or use FTP upload method:
- Extract the zip file locally
- Upload via FTP to
/wp-content/plugins/ - Activate in WordPress admin
Fatal error on activation
Section titled “Fatal error on activation”Full error message check:
- Enable debug mode (see above)
- Try activating again
- Check
/wp-content/debug.log - Search for the specific error
Common fatal errors:
| Error | Solution |
|---|---|
Cannot redeclare function | Plugin conflict - identify and deactivate |
Class not found | Missing dependency - reinstall plugin |
Memory exhausted | Increase WP_MEMORY_LIMIT |
Email Issues
Section titled “Email Issues”Emails not sending
Section titled “Emails not sending”This is the most common issue. Emails may not send for several reasons.
Step 1: Verify email configuration
- Go to WPsigner → Settings → Email Settings
- Verify “From Name” and “From Email” are set
- Ensure email address is valid
Step 2: Send a test email
- Go to WPsigner → More → Email Templates
- Click Send Test
- Enter your email address
- Check if received
Step 3: Configure SMTP
WordPress’s default wp_mail() function often fails. Install an SMTP plugin:
| Plugin | Recommendation |
|---|---|
| WP Mail SMTP | Most popular, easy setup |
| FluentSMTP | Free, full-featured |
| Post SMTP | Good logging |
Step 4: Check SMTP logs
Most SMTP plugins have logging. Check for:
- Connection errors
- Authentication failures
- Rejected recipients
Emails going to spam
Section titled “Emails going to spam”Causes:
- No SPF/DKIM records
- Using @gmail.com as sender
- Poor sender reputation
- Missing authentication
Solutions:
-
Use your own domain for “From Email” (not @gmail.com)
-
Set up email authentication:
- Add SPF record to DNS
- Configure DKIM signing
- Set up DMARC policy
-
Check content:
- Avoid spam trigger words
- Don’t use all caps
- Include clear unsubscribe option (if applicable)
Signer claims they didn’t receive email
Section titled “Signer claims they didn’t receive email”Checklist:
- ✅ Verify email address is correct (check for typos)
- ✅ Check spam/junk folder
- ✅ Check “Promotions” tab (Gmail)
- ✅ Ask if email was blocked by corporate filter
- ✅ Use Resend option in document actions
- ✅ Review SMTP logs for delivery status
Document Issues
Section titled “Document Issues”PDF generation failed
Section titled “PDF generation failed”Symptoms:
- Error when finalizing document
- Certificate of Completion not appending
- Blank or corrupted PDF output
Required extensions:
| Extension | Purpose | Check Command |
|---|---|---|
| GD | Image processing | `php -m |
| Imagick | Advanced image/PDF | `php -m |
| mbstring | String handling | `php -m |
Solutions:
-
Enable GD extension:
Terminal window # Ubuntu/Debiansudo apt-get install php-gdsudo service apache2 restart -
Check file permissions:
Terminal window # The uploads directory must be writablechmod 755 wp-content/uploadschmod 755 wp-content/uploads/wpsigner -
Increase memory limit: Add to
wp-config.php:define('WP_MEMORY_LIMIT', '256M');
Document upload fails
Section titled “Document upload fails”Common causes:
| Issue | Solution |
|---|---|
| File too large | Increase upload_max_filesize |
| Wrong format | Use PDF, PNG, or JPG only |
| Timeout | Increase max_execution_time |
| Permissions | Check /wp-content/uploads/ is writable |
Check upload limits:
- Go to WPsigner → More → System Status
- Review “Upload Size” value
- Increase if needed in
php.ini
Document appears blank or corrupted
Section titled “Document appears blank or corrupted”Possible causes:
- PDF was created with unsupported features
- PDF is password-protected
- File was corrupted during upload
Solutions:
- Try re-uploading the document
- Use a simpler PDF (avoid complex layers/fonts)
- Convert to PDF/A format
- Remove password protection before uploading
Signing Issues
Section titled “Signing Issues”Signing page not loading
Section titled “Signing page not loading”Symptoms:
- White screen when signer clicks link
- 404 error on signing page
- Redirect loop
Solutions:
-
Flush permalinks:
- Go to Settings → Permalinks
- Click Save Changes (without changing anything)
-
Check permalink structure:
- WPsigner requires “pretty” permalinks
- Select any option except “Plain”
-
Check for conflicts:
- Disable caching plugins temporarily
- Try a default theme
- Deactivate security plugins for testing
Signature pad not working
Section titled “Signature pad not working”Symptoms:
- Cannot draw on signature pad
- Signature not appearing
- Pad is unresponsive
Causes & Solutions:
| Cause | Solution |
|---|---|
| JavaScript error | Check browser console for errors |
| Cache | Clear browser cache, disable caching plugin |
| Plugin conflict | Test in incognito mode |
| Touch issues | Update browser, try different device |
Browser compatibility:
- Chrome 80+ ✅
- Firefox 75+ ✅
- Safari 13+ ✅
- Edge 80+ ✅
- Internet Explorer ❌ (not supported)
“Access denied” or “Invalid link”
Section titled ““Access denied” or “Invalid link””Causes:
- Link has expired
- Document was voided
- Link was already used (for single-use links)
- Wrong link/typo
Solutions:
- Check document status (expired? voided?)
- Use Resend to generate fresh email
- Verify the complete URL was clicked
Digital Signature Issues
Section titled “Digital Signature Issues””Certificate not found” error
Section titled “”Certificate not found” error”Symptoms:
- Error when signing document
- Digital signature not applying
- Adobe shows “Signature is invalid”
Solutions:
-
Configure Digital ID:
- Go to WPsigner → More → Digital ID
- Generate or upload a certificate
- Verify it shows as “Active”
-
Certificate expired:
- Check certificate validity dates
- Generate new or upload renewed certificate
Adobe shows “Unknown Signer”
Section titled “Adobe shows “Unknown Signer””This is expected for self-signed certificates.
For self-signed certificates, recipients must manually trust:
- Click on the signature in Adobe
- Click “Validate Signature”
- Choose “Trust this certificate”
For globally trusted signatures: Purchase a certificate from an AATL member (DigiCert, GlobalSign, etc.)
Timestamp not appearing
Section titled “Timestamp not appearing”Causes:
- TSA not enabled
- TSA server unreachable
- Firewall blocking requests
Solutions:
-
Enable TSA:
- Go to WPsigner → Settings → Legal & Privacy
- Check “Enable certified timestamp (TSA)”
- Save settings
-
Test TSA connection:
Terminal window curl -I https://freetsa.org/tsr -
Try different TSA:
- FreeTSA.org
- DigiCert timestamp server
- Sectigo timestamp server
Performance Issues
Section titled “Performance Issues”Plugin is slow
Section titled “Plugin is slow”Optimization steps:
-
Enable caching (but configure WPsigner exclusions)
-
Optimize database:
- Delete old/completed documents you no longer need
- Use a database optimization plugin
-
Upgrade hosting:
- Move from shared to VPS
- Ensure adequate PHP memory
-
CDN for static assets:
- Won’t help with signing pages
- Does help general WordPress performance
Signing page loads slowly
Section titled “Signing page loads slowly”Causes:
- Large PDF files
- Slow server
- Multiple large images in document
Solutions:
- Optimize PDF size before uploading
- Use compression for images
- Upgrade hosting resources
- Move to geographically closer hosting for your signers
API Issues
Section titled “API Issues”API returns 401 Unauthorized
Section titled “API returns 401 Unauthorized”Causes:
- Invalid API key
- Invalid API secret
- Key revoked
- Missing headers
Checklist:
- Verify API key is active (not revoked)
- Check both key AND secret are correct
- Ensure headers are set correctly:
X-WPS-API-KEY: your_key_hereX-WPS-API-SECRET: your_secret_here
API returns 403 Forbidden
Section titled “API returns 403 Forbidden”Causes:
- Key has read-only permissions for write endpoint
- User doesn’t have required WordPress capabilities
Solutions:
- Check key permissions (read vs read_write)
- Create new key with appropriate permissions
Rate limit exceeded
Section titled “Rate limit exceeded”Default limits:
- 60 requests per minute per key
Solutions:
- Implement request throttling in your code
- Use bulk endpoints where available
- Cache responses to reduce calls
WordPress Conflicts
Section titled “WordPress Conflicts”Conflict with caching plugins
Section titled “Conflict with caching plugins”Symptoms:
- Signing page shows cached content
- Changes not appearing
- Session issues
Solution - Add exclusions:
| Caching Plugin | Exclusion Pattern |
|---|---|
| WP Rocket | Add /sign/* to never cache URLs |
| W3 Total Cache | Add to page cache exceptions |
| LiteSpeed | Add to Do Not Cache URIs |
| WP Super Cache | Add to rejected pages |
Conflict with security plugins
Section titled “Conflict with security plugins”Common conflicts:
- Wordfence blocking signing requests
- iThemes Security blocking API
- Sucuri WAF filtering uploads
Solutions:
- Whitelist WPsigner paths (
/sign/*,/wp-json/wpsigner/*) - Add WPsigner to trusted plugins
- Review security logs for blocks
Theme compatibility issues
Section titled “Theme compatibility issues”Symptoms:
- Signing page has theme elements
- Broken layout on signing page
- Missing styles
Solutions:
- WPsigner signing pages should be standalone
- If theme is interfering, check for forced templates
- Report to support with theme name
Database Issues
Section titled “Database Issues”Missing database tables
Section titled “Missing database tables”Symptoms:
- “Table doesn’t exist” errors
- Plugin functions not working
- Data not saving
Solution:
-
Deactivate and reactivate plugin (triggers table creation)
-
If that fails, manually run table creation:
- Access your database via phpMyAdmin
- Check if
wp_wps_*tables exist - If missing, try reinstalling plugin
Data migration issues
Section titled “Data migration issues”When upgrading:
- Always backup before upgrading
- Check that database updates run successfully
- Review changelog for migration notes
Getting More Help
Section titled “Getting More Help”Information to gather before contacting support
Section titled “Information to gather before contacting support”Collect this information for faster resolution:
| Information | How to Get It |
|---|---|
| WordPress version | Dashboard → At a Glance |
| PHP version | System Status page |
| WPsigner version | Plugins page |
| Error messages | Debug log, browser console |
| Steps to reproduce | Write down exact steps |
| Screenshots | Capture error screens |
Enable debug mode
Section titled “Enable debug mode”For detailed error information:
// Add to wp-config.php (before "That's all, stop editing!")define('WP_DEBUG', true);define('WP_DEBUG_LOG', true);define('WP_DEBUG_DISPLAY', false);Errors are logged to /wp-content/debug.log
Contact support
Section titled “Contact support”If you’ve tried the troubleshooting steps:
- Visit wpsigner.com/contact
- Include all gathered information
- Attach debug logs and screenshots
- Describe expected vs actual behavior
Next Steps
Section titled “Next Steps”- System Requirements - Verify compatibility
- Installation - Reinstallation steps
- FAQ - Common questions