PluginUs.Net - Business Tools for WooCommerce and WordPress

[realize your idea - make your dreams come true]
Botoscope is currently in early access

Support Forum

You need to log-in to create request (topic) to the support

We are facing an issue with FOX Currency Switcher on our WooCommerce website while using NitroPack caching.

The support doesn work on Saturdays and Sundays, so some Friday requests can be answered on Monday. If you have problems with registration ask help on contact us page please
If you not got email within 24~36 business hours, firstly check your spam box, and if no any email from the support there - back to the forum and read answer here. DO NOT ANSWER ON EMAILS [noreply@pluginus.net] FROM THE FORUM!! Emails are just for your info, all answers should be published only here.
The support doesn work on Saturdays and Sundays, so some Friday requests can be answered on Monday.

Current Issue:

  • Users from the USA should see USD based on GEO IP.
  • However, on first page load the website sometimes shows GBP instead of USD.
  • After clearing cache or refreshing once, the currency changes correctly to USD.

Environment:

  • WooCommerce website
  • FOX Currency Switcher
  • NitroPack cache enabled
  • Hosting: Digital Ocen
  • Testing done via BrowserStack and VPN locations

It seems the cached version of the page is serving the wrong currency before GEO IP detection updates it.

Could you please help us with the best configuration for:

  • GEO IP currency detection
  • NitroPack compatibility
  • Session/transient storage setup
  • Cookie exclusions or cache exclusions required for FOX Currency

We already suspect this may be related to cache/session conflicts.

Thank you.

Hello Jeet

Thank you for the detailed report — you have correctly identified the root cause. This is a known behaviour when a full-page cache plugin serves a pre-rendered page before server-side GEO IP detection has a chance to run. The cached page was built for one visitor and then served to another in a different location.

Here is how to address it properly with FOX and NitroPack:

Step 1. In FOX settings, enable the option"I am using cache plugin on my site". This switches the currency display mechanism from server-side rendering to a JavaScript-based update after page load, which works correctly regardless of what the cached HTML contains.

Step 2. In NitroPack settings, add the following cookie to the cache exclusion list so that NitroPack does not serve a cached page to users who already have a currency session set:

woocs_current_currency

Step 3. Also make sure that in your NitroPack configuration, pages are not being cached per-URL in a way that locks currency into the URL. If you use the ?currency= parameter switching method, those URLs should also be excluded from cache or handled as separate cache variants.

Step 4. After enabling the cache plugin option in FOX, the prices preloader will appear briefly on first load while the correct currency is applied via JS. This is expected and normal behaviour.

These four steps together should resolve the first-load wrong currency issue entirely. Let us know how it goes after applying them.