Troubleshooting

Common issues and their solutions.

404 Errors on Endpoints

Symptoms: REST API endpoints return 404. My Account license pages show "not found". Webhook URLs return 404.

Solutions:

  1. Go to WP Admin > License Server > Settings > Tools and click Flush rewrite rules.
  2. Alternatively, visit WP Admin > Settings > Permalinks and click Save Changes without changing anything.
  3. Make sure your permalink structure is not set to "Plain" โ€” the REST API and webhook endpoints require pretty permalinks.

Licenses Not Generating on Order Completion

Symptoms: A customer completes an order for a Software product but no license key appears.

Checklist:

  1. Product type โ€” Verify the product is set to Software or Variable Software in the Product data dropdown.
  2. Update file โ€” The product must have a file uploaded in the License tab > Update file field. Without this, license generation is skipped.
  3. Order status โ€” Licenses are only generated when the order status is Completed. Check that the order reached this status (payment gateways that use authorization may leave the order as Processing).
  4. Manual generation โ€” Open the order, select Generate License Key(s) from the Order actions dropdown, and click Update.

Emails Not Sending

Symptoms: Customers are not receiving license or subscription emails.

Checklist:

  1. Email enabled โ€” Go to WP Admin > WooCommerce > Settings > Emails and verify the relevant email is enabled.
  2. WordPress mail โ€” Test that WordPress can send emails. Use a plugin like WP Mail SMTP to verify your mail configuration.
  3. Staging detection โ€” SLSWC suppresses all customer-facing emails on staging environments. Verify your site is not detected as a staging environment.
  4. Scheduled actions running โ€” Expiring and expired license emails are sent by scheduled actions. Verify the slswc actions are scheduled and not past-due (see Scheduled Actions). Action Scheduler is started by WP-Cron, so if your hosting does not support WP-Cron reliably, set up a system cron to trigger wp-cron.php.

Scheduled Actions Not Running

Symptoms: Licenses are not expiring automatically. Emails are not sent on schedule.

Checklist:

  1. Verify scheduling โ€” Go to WP Admin > WooCommerce > Status > Scheduled Actions and search for the slswc group, or run wp action-scheduler action list --group=slswc. Check the Past-due and Failed tabs. See Scheduled Actions for the full list of jobs.
  2. WP-Cron disabled โ€” Action Scheduler's queue runner is started by WP-Cron. If DISABLE_WP_CRON is set to true in wp-config.php, you need a server-level cron job:*/15 * * * * curl -s https://your-store.com/wp-cron.php > /dev/null 2>&1Alternatively, run wp action-scheduler run --group=slswc from a system cron.
  3. Re-register schedules โ€” Missing SLSWC schedules are re-registered automatically on the next admin page load. Deactivating and reactivating SLSWC also re-registers them.

Payment Gateway Webhook Failures

Symptoms: Payments succeed but subscriptions are not created/renewed. Gateway shows undelivered webhooks.

Checklist:

  1. Rewrite rules โ€” Flush rewrite rules (see the 404 fix above). The webhook endpoint https://your-store.com/slswc/webhook/{gateway}/ must be accessible.
  2. Webhook secret โ€” Verify the webhook signing secret matches between your gateway dashboard and the SLSWC gateway settings. A mismatch causes signature verification to fail silently.
  3. SSL โ€” Most gateways require HTTPS for webhook URLs. Make sure your site has a valid SSL certificate.
  4. Debug log โ€” Enable the Debug Log option on the gateway settings page and check wp-content/uploads/wc-logs/ for error details.

Subscription Payments Failing

Symptoms: Subscriptions go to on-hold status. Customers report payment failures.

Checklist:

  1. Customer payment method โ€” The customer's card may have expired or been declined. They need to update their payment method.
  2. Retry settings โ€” Check WP Admin > License Server > Settings > Subscriptions > Renewal & Payment to verify retry settings are configured.
  3. Grace period โ€” If a grace period is set, subscriptions will go on-hold before expiring, giving time for payment to be resolved.
  4. Gateway logs โ€” Enable debug logging on the gateway and review the logs for specific error messages from the payment provider.

Activation Count Mismatch

Symptoms: A license shows the wrong number of active domains.

Solution: Go to WP Admin > License Server > Settings > Tools and click Recalculate activation counts. This recounts all active domains and corrects any drift.

Was this article helpful?