Troubleshooting

This guide covers problems store owners run into most often. Start with Avenia Digital Products → System Status when the issue involves payments or downloads.

Cart looks empty

The cart relies on a browser cookie. If cookies are blocked, or the customer switches browsers or uses a private window, the cart can look empty.

Ask them to allow cookies for your site and try again in the same browser.

If the icon never updates, checkout shows the wrong cart, or problems started right after enabling a page cache or CDN HTML cache, see “Wrong cart or AJAX failures after enabling page cache” below.

Wrong cart or AJAX failures after enabling page cache

Most common WordPress cache plugins honor the plugin’s no-cache signals, so you usually do not need a manual exclude list. Use the steps below only if the cart icon fails to update, checkout shows the wrong cart, or problems started right after you enabled page caching or a CDN that caches full HTML.

Flush your page cache (and any CDN HTML cache if you use one). Confirm cart, checkout, account, login, thank-you, download, and payment-return URLs are not in a “cache all HTML” rule. Confirm admin-ajax.php is not blocked by a firewall or optimization setting.

After you change Core Page assignments or permalinks, flush the page cache again so old paths are not still cached.

If your cache plugin or CDN does not pick up exclusions automatically (including setups that cache full HTML at the edge), exclude:

  • Your cart, checkout, account, login, and thank-you page URLs (Settings → General → Core Pages)
  • /aveniadp-download/
  • /aveniadp-account-download/
  • /wp-json/avenia-digital-products/
  • Query args: aveniadp_buy, aveniadp_buy_error, aveniadp_thank_you, thank_you_token, aveniadp_payment_return, aveniadp_payment_cancelled, aveniadp_payment_error, aveniadp_download, aveniadp_account_download

Do not exclude the whole site on the aveniadp_cart_key cookie.

Cannot add a subscription to the cart

On the product page, the customer must choose Monthly or Yearly before clicking Add to Cart. If neither period has a price in the Pricing box, add prices and update the product.

Checkout does nothing

Confirm the Checkout page still contains the checkout shortcode (Settings → General → Core Pages shows which page is assigned).

Confirm either Test Mode is on, or Stripe/PayPal is enabled with credentials filled in.

Try another browser in case a script is blocked.

Payment succeeded but order stays pending

This is usually a webhook problem. The customer paid at Stripe or PayPal, but your site never received (or never accepted) the completion event.

Open System Status and confirm webhook URLs and secrets/credentials.

In Stripe or PayPal, open the webhook delivery log and look for failures.

Fix the URL or signing secret, then try another test purchase.

Checkout fails with mixed products

Mixed carts (one-time + subscription): not allowed with Stripe or PayPal. Ask the customer to buy those types in separate checkouts.

Multiple subscription products: works with Stripe. PayPal checkout in this plugin supports one subscription at a time. If they chose PayPal, have them switch to Stripe or remove extras.

Emailed download links expire after the days set under Settings → Emails → Email Link Expiration (default 2 days). Account downloads are not affected by that setting and are not limited by download count, customers can re-download while their purchase or subscription still grants access

Have the customer log in on your Login page and download from My Account.

If they never set a password, they should use the set-password link from the Account Confirmation email, or Lost password on the login form.

If every download returns “not found”, go to Settings → Permalinks in WordPress and click Save Changes.

Anyone can download the file from a direct url

Product files live under wp-content/uploads/aveniadp-protected/. On Apache, the plugin’s .htaccess deny-all rules should block that path. On Nginx, including hosts that serve static files through Nginx in front of Apache, those rules are ignored for direct file URLs.

Open System Status → Protected uploads. If the live check says direct URL access is not blocked, the folder needs a server-level rule.

If you manage the server, add the Nginx deny location shown on that screen to the site’s server { } block and reload Nginx. On managed or shared hosting you cannot edit that config yourself, ask support to deny direct access to the sd-protected folder, or turn off your host’s “direct/static file delivery” speed option so Apache .htaccess rules apply again.

Then purge CDN and page caches and re-test in a private window. See Downloads And Delivery for the full walkthrough.

Authorized email and My Account download links still work; only guessing or sharing the raw uploads URL should fail.

Emails never arrive

Check spam.

Confirm the email type is enabled under Settings → Emails (including Subscription Payment Failed for past-due renewals).

Install an SMTP plugin and send from an address on your domain.

Run a simulated purchase (Simulate payments on) or a sandbox purchase to yourself and watch for the messages. Use Send test email on Settings → Emails to preview a type without creating an order.

Customer cannot log in

They should use your site’s Login page, not /wp-admin/.

If Account Creation is set to Guest Checkout, no account was created at purchase.

If auto-create is on, they should have received an Account Confirmation email with a set-password link.

Subscription still charging after you revoked access

Revoking access only stops downloads and licenses on your site. Cancel billing in Stripe or PayPal, or have the customer cancel in My Account. See Access Control.

Still Stuck?

Write down what you expected, what happened, and any order number.

Check System Status for missing payment settings.

Try the same steps in Test Mode.

Contact support with your site URL and screenshots.