=== WPC Multi Currency for WooCommerce ===
Contributors: wpclever
Donate link: https://wpclever.net
Tags: woocommerce, multi currency, currency switcher, currency converter, exchange rate
Tested up to: 7.0
Version: 1.1.0
Stable tag: 1.1.0
License: GPLv2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html

A powerful multi-currency solution for WooCommerce that lets customers browse and pay in their preferred currency.

== Description ==

**WPC Multi Currency for WooCommerce** is a feature-rich currency conversion and switching system designed for global WooCommerce stores. Whether you sell to a handful of countries or worldwide, this plugin gives your customers the freedom to shop in the currency they know and trust — boosting conversion rates and reducing cart abandonment.

Instead of forcing visitors to manually calculate prices, WPC Multi Currency handles everything seamlessly: real-time exchange rates, automatic price conversion, smart psychological pricing, and a variety of beautiful switcher components that blend into any theme.

= Why WPC Multi Currency? =

* **Free Exchange Rate API** — uses ExchangeRate-API (open.er-api.com) out of the box: completely free, no API key required, and reliably maintained.
* **Smart Psychological Pricing** — built-in charm rounding (e.g., .99, .95, end-in-9, round thousands) for professional, conversion-optimized prices.
* **Dual Price Display** — show the converted price alongside the original base price for full transparency.
* **Deep WPC Integration** — works seamlessly with WPC Product Bundles, WPC Composite Products, WPC Smart Wishlist, and other WPC plugins.
* **Enterprise Caching** — intelligent cache busting for WP Rocket, LiteSpeed, W3 Total Cache, and more. No stale prices, ever.
* **Developer Ready** — REST API endpoints, 10+ public helper functions, and extensive filter hooks for custom integrations.

= Key Features =

* Unlimited currencies with individual exchange rates, symbols, and formatting
* Automatic exchange rate updates via ExchangeRate-API (free, no key required, stable)
* Scheduled rate updates (hourly, twice daily, daily, weekly)
* Manual rate override for full control
* Conversion fee support (percentage or fixed amount per currency)
* Smart price rounding: nearest 1/10/100/1000, Charm .99, Charm .95, End-in-9, Round thousands
* Dual price display (show original price alongside converted price)
* Fixed price per product per currency (override auto-conversion)
* Custom dropdown switcher with flag support (emoji or custom image)
* Button-style switcher option
* Menu switcher — append to any WordPress navigation menu
* Product page switcher — show on single product pages at configurable positions
* Floating switcher — fixed-position FAB button with 6 placement options
* Currency-specific Payment Gateway restrictions
* Currency-specific Shipping Method restrictions
* GeoIP auto-detection — automatically switch currency based on visitor location
* Order emails display in the customer's selected currency
* WooCommerce Widget for sidebar placement
* WPML and Polylang integration for multilingual stores
* REST API for headless and mobile app integrations
* Public PHP functions for third-party plugin developers
* Intelligent cache compatibility (WP Rocket, LiteSpeed, W3TC, WP Super Cache, SG Optimizer, and more)
* Cart fragment cache busting for real-time mini-cart updates
* High-Performance Order Storage (HPOS) compatible
* Translation ready

== External services ==

**Exchange Rate API**

This plugin connects to the ExchangeRate-API service to fetch up-to-date currency exchange rates. This is required for the automatic rate update feature to work correctly.

When an admin clicks "Fetch Exchange Rates" or when a scheduled update runs, the plugin sends a request to: https://open.er-api.com/v6/latest/{BASE_CURRENCY}

No personal data or user information is transmitted. Only the store's base currency code (e.g. "USD") is included in the request URL.

This service is provided by ExchangeRate-API Ltd:

* Service page: https://www.exchangerate-api.com/
* Terms of Service & Privacy Policy: https://www.exchangerate-api.com/terms

**IP Geolocation API**

This plugin also connects to the ipapi.co service to detect the visitor's country by IP address. This is used only when the "GeoIP Auto-Detection" feature is enabled AND WooCommerce's built-in geolocation returns no result. The result is cached for 24 hours to minimise external requests.

When a fallback lookup is needed, the plugin sends a request to: https://ipapi.co/{VISITOR_IP}/country/

The visitor's IP address is transmitted as part of the request URL. No other personal data is sent. The response contains only a 2-letter ISO country code (e.g. "US").

This service is provided by Kloudend, Inc.:

* Service page: https://ipapi.co/
* Terms of use: https://ipapi.co/terms/
* Privacy policy: https://ipapi.co/privacy/

= Need more features? =

Please try other plugins from us:

- [WPC Smart Compare](https://wordpress.org/plugins/woo-smart-compare/ "WPC Smart Compare")
- [WPC Smart Quick View](https://wordpress.org/plugins/woo-smart-quick-view/ "WPC Smart Quick View")
- [WPC Smart Wishlist](https://wordpress.org/plugins/woo-smart-wishlist/ "WPC Smart Wishlist")
- [WPC AJAX Add to Cart](https://wordpress.org/plugins/wpc-ajax-add-to-cart/ "WPC AJAX Add to Cart")
- [WPC Share Cart](https://wordpress.org/plugins/wpc-share-cart/ "WPC Share Cart")
- [WPC Estimated Delivery Date](https://wordpress.org/plugins/wpc-estimated-delivery-date/ "WPC Estimated Delivery Date")
- [WPC Smart Upsell Funnel](https://wordpress.org/plugins/wpc-smart-upsell-funnel/ "WPC Smart Upsell Funnel")

== Installation ==

1. Ensure WooCommerce is installed and activated.
2. Upload the plugin folder to `/wp-content/plugins/` or install via **Plugins > Add New**.
3. Activate the plugin through the **Plugins** menu.
4. Go to **WP-admin > WPClever > Multi Currency** to configure your currencies and exchange rates.

== Changelog ==

= 1.1.0 =
* Updated: Optimized the code
* Updated: Compatible with WP 7.0 & Woo 10.8

= 1.0.3 =
* Fixed: Check permission_callback in REST API Route

= 1.0.2 =
* Fixed: External services

= 1.0.1 =
* Fixed: Remove inline JS
* Fixed: Undocumented use of a 3rd Party / external service
* Fixed: Check permission_callback in REST API Route

= 1.0.0 =
* Initial release
