Troubleshooting and Plugin Conflicts
You switched a module on and nothing changed on the storefront. Or a renewal didn’t charge, or a webhook seems to go nowhere. Most Stackless problems come down to a short list of causes: another plugin doing the same job, a module that depends on one you haven’t switched on, or an error that’s already sitting in the logs.
This lesson walks through each of them, in the order I’d check them, and finishes with where to ask for help.
Check the Module Card First
Open Stackless → Dashboard and find the module. If it’s switched on but not running, the card says why:
- “Paused because (plugin name) is active and does the same job.”
- “Needs the (module name) module enabled.”
- “Failed to start. See WooCommerce → Status → Logs (stackless-*).”
The reason is worked out when the page loads, so reload the dashboard after changing a plugin or another module.
Which Plugins Pause Which Modules
Stackless never runs a module side by side with a plugin that does the same job. When one of these plugins is active, the matching module pauses. On multisite, network-activated plugins count too.
Subscriptions pauses for:
- WooCommerce Subscriptions
- Subscriptions for WooCommerce
- YITH WooCommerce Subscription
- SUMO Subscriptions
Multi-Currency Checkout pauses for:
- WooCommerce Multi-Currency
- WooPayments (multi-currency)
- FOX Currency Switcher
- WPML WooCommerce Multilingual & Multicurrency
- Currency Switcher for WooCommerce
Software Licensing pauses for:
- WooCommerce Software Add-on
- License Manager for WooCommerce
Wishlist pauses for:
- YITH WooCommerce Wishlist
- TI WooCommerce Wishlist
- WooCommerce Wishlists
Back-in-stock Alerts pauses for:
- WooCommerce Waitlist
- Back In Stock Notifier for WooCommerce
- WooCommerce Back In Stock Notifications
Fields & Paid Add-ons pauses for:
- WooCommerce Product Add-Ons
- YITH WooCommerce Product Add-ons
Delivery & Pickup Slots pauses for:
- WooCommerce Order Delivery
- Order Delivery Date Pro
- Order Delivery Date for WooCommerce
Saved Carts & Order Again pauses for:
- Save Cart Later
- Save For Later for WooCommerce
Stripe has no conflict list. It can run alongside the official Stripe plugin because it uses a different gateway ID, its own saved tokens and its own webhooks.
Dependent modules pause one step later. If Multi-Currency Checkout is paused, Currency-Aware Payment Gateways and Storefront Currency Selector pause with it, and Request a Quote pauses when Custom Invoices isn’t running.
WooCommerce Subscriptions Alongside Stackless
While WooCommerce Subscriptions is active, the Stackless Subscriptions module stays paused, so the two never process the same renewals. The rest of Stackless keeps working.
There’s no importer from WooCommerce Subscriptions yet. The Stackless Stripe and PayPal gateways renew Stackless subscriptions through Stackless’s own gateway contract, so existing WooCommerce Subscriptions renewals stay with the gateway that created them. Plan a move off WooCommerce Subscriptions as a fresh start for new subscribers, not a switch you flip on live subscriptions.
Read the Logs
Stackless writes to WooCommerce’s own logs. Go to WooCommerce → Status → Logs and pick a source named stackless- followed by the module ID:
stackless-subscriptionsstackless-stripe_gateway,stackless-paypal_gateway,stackless-polar_gatewaystackless-multi_currencystackless-custom_invoicesstackless-software_licensingstackless-plugin_license
Errors are always logged, including a module that fails to start or to install its tables. The three gateways log routine API activity only when you turn on their Debug log setting:
- Stripe: Stackless → Settings → Stripe, Debug log
- PayPal: WooCommerce → Settings → Payments → PayPal, Debug log
- Polar: WooCommerce → Settings → Payments → Polar, Debug log
Keys, secrets and card data are never written to the logs.
Check Scheduled Actions
Renewals, retries, reminders and rate refreshes run through WooCommerce’s Action Scheduler. Go to WooCommerce → Status → Scheduled Actions and filter by group:
stackless-subscriptionsstackless-stripe_gatewaystackless-custom_invoicesstackless-request_quotesstackless-multi_currencystackless-back_in_stockstackless-software_licensing
A failed action there usually has a matching entry in the logs. Deactivating Stackless leaves subscription schedules in place and only clears its housekeeping tasks.
Webhooks Not Arriving
Stripe, PayPal and Polar report payments back through these REST routes on your site:
/wp-json/stackless/v1/stripe/webhook/wp-json/stackless/v1/paypal/webhook/wp-json/stackless/v1/polar/webhook
Every webhook’s signature is checked, and one that fails the check is rejected. If payments complete at the provider but orders don’t update, check that the signing secret you saved matches the one for that exact endpoint, in the right mode (test or live). PayPal and Polar show your webhook URL on their Stackless settings page so you can copy it exactly. Rejected PayPal and Polar webhooks are logged as warnings even with Debug log off, and Stripe’s Debug log adds webhook results.
My Account Tabs Showing a 404
Several modules add My Account tabs, such as subscriptions, licenses, wishlists and saved carts. These need WordPress’s permalinks refreshed. Stackless does that on the next visit to Stackless → Dashboard or Stackless → Settings after you switch a module on or off, and again after each plugin update. If a tab 404s, open the Stackless dashboard once and try again.
HPOS and Order Storage
Stackless declares support for High-Performance Order Storage. It uses WooCommerce’s order functions throughout, so it works whether HPOS or the older posts storage is in charge, and with sync between them turned on.
Subscriptions are stored as their own order type (stackless_subscription) in the same order tables as your orders. That’s why they don’t show in the regular Orders list. You manage them under Stackless → Subscriptions.
Block Checkout and Classic Checkout
Every module that touches the cart or checkout supports both the Cart and Checkout blocks and the classic shortcode checkout. Two known gaps:
- Product add-on fields and the Buy now button need the classic add-to-cart form on the product page. WooCommerce’s “Add to Cart with Options” block doesn’t show them.
- On the block checkout, links inside consent checkbox labels show as plain text, because WooCommerce’s checkbox field label is plain text.
Known Limits
- Polar takes one subscription per checkout, with no other items in the cart.
- There’s no importer from WooCommerce Subscriptions yet.
- Gateways other than Stripe, PayPal and Polar renew subscriptions through emailed pay links, not automatic charges.
- Deleting the plugin keeps all Stackless data unless
STACKLESS_REMOVE_ALL_DATAis set to true inwp-config.phpfirst. WooCommerce orders are never deleted.
Where to Get Help
Ask in the Stackless for WooCommerce community space. Include:
- the module name and what you expected to happen
- the message on the module card, if there is one
- the matching
stackless-log entry from WooCommerce → Status → Logs, with anything personal removed - whether you use the Checkout block or the classic checkout
Support comes with an active license. If your license has expired, everything keeps working, but support and updates pause until you renew. Install Stackless and Activate Your License covers renewals and moving a license between sites.