Why Apple Pay Isn’t Showing on WooCommerce Authorize.Net Checkout (SkyVerge)

It’s understandable to be frustrated when you’ve meticulously followed all the steps for Apple Pay setup with WooCommerce Authorize.Net (SkyVerge) and it’s still not showing. Since you’ve confirmed the Apple Developer setup (PEM certificate, domain verification) and the functions.php filter is working (revealing the settings page), the issue likely lies in one of the more subtle configuration points or interactions.

Let’s break down the common culprits beyond the initial setup you’ve already verified:

Key Areas to Re-Check When Everything “Seems” Right:

  1. Apple Pay Requirements on Your Device/Browser:
    • Safari Only: You explicitly mentioned you’re using Safari, which is good.
    • Compatible Device: Is your specific iPhone, iPad, or Mac model actually capable of using Apple Pay? (e.g., iPhone 5s does not support it, even if it runs a recent iOS).
    • Apple Pay Enabled in Wallet: Have you added a valid card to your Wallet app on the device you’re testing with, and is Apple Pay enabled for that card? If your device isn’t set up for Apple Pay, the button won’t appear on any site.
    • Region/Country: Ensure your Apple ID region and the merchant’s region align with where Apple Pay is supported. While less common, regional restrictions can sometimes play a role.
  2. Authorize.Net Account Specifics:
    • Digital Payment Solutions Enabled: Log into your Authorize.Net Merchant Interface. Go to Account > Digital Payment Solutions. Is Apple Pay explicitly enabled here? This is separate from the certificate upload.
    • Processor Compatibility: While less frequent with SkyVerge, confirm with Authorize.Net (or their documentation) that your specific merchant processor (e.g., TSYS, Chase, Global Payments) fully supports Apple Pay integration via Authorize.Net. Some older accounts or processors might not.
    • Transaction Key / API Login ID: Just to be absolutely sure, re-verify that the API Login ID and Transaction Key in your WooCommerce Authorize.Net settings precisely match what’s in your Authorize.Net merchant account. Even a single character typo will break it.
  3. WooCommerce Authorize.Net Plugin Settings (Inside WordPress Admin):
    • “Enable Apple Pay” Checkbox: After adding the filter and seeing the settings, did you actually check the “Enable Apple Pay” checkbox within WooCommerce > Settings > Payments > Authorize.Net CIM (or similar)? It’s easy to miss.
    • Apple Merchant ID: Is the Apple Merchant ID entered into the plugin settings exactly the same as the one you created in your Apple Developer account? Case-sensitive and no extra spaces.
    • Certificate Path: This is critical.
      • Absolute Path: Are you providing the absolute server path to your .pem file? This usually looks something like /home/yourusername/ssl/apple-pay-authnet.pem or /var/www/vhosts/yourdomain.com/private/apple-pay-cert.pem. It’s generally not a URL.
      • Permissions: Does the .pem file have the correct file permissions (e.g., 600 or 644) so that your web server can read it, but no one else can? Incorrect permissions can prevent the server from accessing it.
      • Location: Is the file located outside of your publicly accessible webroot (public_html, www, htdocs)? This is a security best practice. If it’s inside the webroot and not correctly secured (e.g., via .htaccess to deny access), it might be an issue (though usually it just fails silently if permissions/path are wrong).
    • Display Locations: In the plugin settings, under the Apple Pay section, ensure you have selected the “Checkout Page” (and any other pages like product or cart pages) where you want the button to appear.
    • Debug Mode (if available): Check if the SkyVerge plugin has a debug mode you can enable (often under the main Authorize.Net settings). This might log more detailed errors that could point to the problem.
  4. Website Environment & Caching:
    • HTTPS Everywhere: Is your entire site (including images, scripts, CSS) loading via HTTPS? Mixed content warnings (some elements loading over HTTP) can break Apple Pay. Use a tool like Why No Padlock? to scan your checkout page.
    • SSL Certificate Validity: Is your SSL certificate valid, not expired, and correctly installed for your domain?
    • Caching: Clear all levels of cache:
      • Browser Cache: Hard refresh (Cmd/Ctrl + Shift + R).
      • WordPress Caching Plugins: (WP Super Cache, WP Rocket, LiteSpeed Cache, etc.).
      • Server-Side Caching: (Varnish, Cloudflare, host-level caching).
      • Object Cache: (Redis, Memcached) if you use one.
    • CDN (if applicable): If you’re using a CDN (like Cloudflare), ensure it’s not interfering. Try temporarily pausing it or bypassing it for testing.
    • Firewall/Security Plugins: Temporarily disable any security plugins (e.g., Wordfence, Sucuri) to rule them out as a blocker. They might be preventing certain JavaScript from loading or external calls.
  5. Browser Developer Tools (The Most Powerful Tool):
    • Open Safari’s developer tools on your Mac (Safari > Develop > Show Web Inspector, or Cmd+Option+I). If you’re on iOS, connect your device to your Mac and use the Safari developer tools on the Mac to inspect the iOS Safari instance.
    • Console Tab: Look for any JavaScript errors. These are often the biggest clues. Errors related to “ApplePaySession is not defined” or “payment request” issues are strong indicators.
    • Network Tab: Watch the network requests. Are there any failed requests? Especially look for any requests related to Apple Pay or Authorize.Net.
    • Elements Tab: Inspect the HTML of the checkout page. Search for elements with id="apple-pay-button" or similar. If they’re not there, it means the JavaScript isn’t even attempting to render the button. If they are there but hidden, inspect their CSS.

If all else fails, consider these more advanced troubleshooting steps:

  • Temporary Debugging:
    • WooCommerce System Status Report: Go to WooCommerce > Status and check for any red flags or warnings. Pay attention to plugin versions, server environment, and template overrides.
    • WordPress Debugging: Enable WP_DEBUG in your wp-config.php file to see if any PHP errors are being suppressed that might relate to the certificate path or other issues.
    • define( 'WP_DEBUG', true );
    • define( 'WP_DEBUG_LOG', true );
    • define( 'WP_DEBUG_DISPLAY', false ); Then check the wp-content/debug.log file after attempting checkout.
  • Contact SkyVerge Support: Since you’re using a premium plugin, their support team will have specific knowledge of common issues and can often look at your setup directly if necessary. Provide them with all the details you’ve already checked.

It’s almost always a small misconfiguration or permission issue when Apple Pay doesn’t show up after the initial basic setup. Keep a methodical approach, and you’ll likely uncover the culprit.

Related Posts


Rename Admin Posts Menu items WordPress Without Plugin

You can rename admin menu items. 100% working solutions

Auto create an user account after WooCommerce checkout without Plugin

To automatically create a user account after WooCommerce checkout, you can use the woocommerce_thank...

WordPress Subdirectory Setup for Root Domain

WordPress Subdirectory Setup for Root Domain This guide assumes your WordPress installation is in a ...

Create a Custom WordPress Plugin to Add Shortcodes – Complete Tutorial

Here’s a complete tutorial on how to create a custom WordPress plugin for adding shortcodes. T...

Recent Posts