{"id":333341,"date":"2026-07-13T06:56:16","date_gmt":"2026-07-13T06:56:16","guid":{"rendered":"https:\/\/wordpress.org\/plugins\/kazzylen-smart-multi-currency-for-woocommerce\/"},"modified":"2026-07-13T06:55:58","modified_gmt":"2026-07-13T06:55:58","slug":"kazzylen-smart-multi-currency-for-woocommerce","status":"publish","type":"plugin","link":"https:\/\/he.wordpress.org\/plugins\/kazzylen-smart-multi-currency-for-woocommerce\/","author":20756539,"comment_status":"closed","ping_status":"closed","template":"","meta":{"version":"1.1.0","stable_tag":"1.1.0","tested":"7.0.4","requires":"6.4","requires_php":"8.0","requires_plugins":null,"header_name":"Kazzylen Smart Multi-Currency for WooCommerce","header_author":"KAZZYLEN","header_description":"Add up to 3 currencies to your WooCommerce store with a live front-end switcher, automatic price conversion, and a floating currency widget. No coding required.","assets_banners_color":"c1b7e9","last_updated":"2026-07-13 06:55:58","external_support_url":"","external_repository_url":"","donate_link":"","header_plugin_uri":"https:\/\/kazzylen.com\/kazzylen-smart-multi-currency-for-woocommerce\/","header_author_uri":"https:\/\/kazzylen.com","rating":0,"author_block_rating":0,"active_installs":0,"downloads":106,"num_ratings":0,"support_threads":0,"support_threads_resolved":0,"author_block_count":0,"sections":["description","installation","faq","changelog"],"tags":{"1.1.0":{"tag":"1.1.0","author":"kazzylen","date":"2026-07-13 06:55:58"}},"upgrade_notice":{"1.0.3":"<p>Fixes cart and checkout totals not converting on the block-based Cart\/Checkout. Update required if using WooCommerce block cart\/checkout.<\/p>","1.0.2":"<p>Removes the currency add limit for WordPress.org compliance. USD, EUR and GBP are pre-installed on activation.<\/p>"},"ratings":[],"assets_icons":{"icon-128x128.png":{"filename":"icon-128x128.png","revision":3605561,"resolution":"128x128","location":"assets","locale":"","width":128,"height":128},"icon-250x250.png":{"filename":"icon-250x250.png","revision":3605561,"resolution":"250x250","location":"assets","locale":"","width":250,"height":250}},"assets_banners":{"banner-1544x500.png":{"filename":"banner-1544x500.png","revision":3605561,"resolution":"1544x500","location":"assets","locale":"","width":1544,"height":500},"banner-772x250.png":{"filename":"banner-772x250.png","revision":3605561,"resolution":"772x250","location":"assets","locale":"","width":772,"height":250}},"assets_blueprints":{},"all_blocks":[],"tagged_versions":["1.1.0"],"block_files":[],"assets_screenshots":{"Screenshot-1.png":{"filename":"Screenshot-1.png","revision":3605561,"resolution":"1","location":"assets","locale":"","width":1102,"height":608},"Screenshot-2.png":{"filename":"Screenshot-2.png","revision":3605561,"resolution":"2","location":"assets","locale":"","width":1104,"height":595},"Screenshot-4.png":{"filename":"Screenshot-4.png","revision":3605561,"resolution":"4","location":"assets","locale":"","width":1220,"height":722}},"screenshots":{"1":"Currencies tab \u2014 USD, EUR and GBP ready to go on activation","2":"Exchange Rates tab \u2014 one-click Fetch Live Rates","3":"Settings tab \u2014 position, price format and more","4":"Floating currency switcher on the frontend"}},"plugin_section":[],"plugin_tags":[8504,21294,16558,24514,286],"plugin_category":[45],"plugin_contributors":[266948],"plugin_business_model":[],"class_list":["post-333341","plugin","type-plugin","status-publish","hentry","plugin_tags-currency","plugin_tags-currency-switcher","plugin_tags-exchange-rate","plugin_tags-multi-currency","plugin_tags-woocommerce","plugin_category-ecommerce","plugin_contributors-kazzylen","plugin_committers-kazzylen"],"banners":{"banner":"https:\/\/ps.w.org\/kazzylen-smart-multi-currency-for-woocommerce\/assets\/banner-772x250.png?rev=3605561","banner_2x":"https:\/\/ps.w.org\/kazzylen-smart-multi-currency-for-woocommerce\/assets\/banner-1544x500.png?rev=3605561","banner_rtl":false,"banner_2x_rtl":false},"icons":{"svg":false,"icon":"https:\/\/ps.w.org\/kazzylen-smart-multi-currency-for-woocommerce\/assets\/icon-128x128.png?rev=3605561","icon_2x":false,"generated":false},"screenshots":[{"src":"https:\/\/ps.w.org\/kazzylen-smart-multi-currency-for-woocommerce\/assets\/Screenshot-1.png?rev=3605561","caption":"Currencies tab \u2014 USD, EUR and GBP ready to go on activation"},{"src":"https:\/\/ps.w.org\/kazzylen-smart-multi-currency-for-woocommerce\/assets\/Screenshot-2.png?rev=3605561","caption":"Exchange Rates tab \u2014 one-click Fetch Live Rates"},{"src":"https:\/\/ps.w.org\/kazzylen-smart-multi-currency-for-woocommerce\/assets\/Screenshot-4.png?rev=3605561","caption":"Floating currency switcher on the frontend"}],"raw_content":"<!--section=description-->\n<p><strong>Kazzylen Smart Multi-Currency<\/strong> gives your WooCommerce store multi-currency support the moment you activate it. Three currencies (USD, EUR, GBP) come pre-installed, and you can add any additional currency you need. No API key required.<\/p>\n\n<h4>What's included<\/h4>\n\n<ul>\n<li><strong>USD, EUR and GBP pre-installed<\/strong> \u2014 ready to go on activation; add any additional currency you need<\/li>\n<li><strong>Live price conversion<\/strong> \u2014 all WooCommerce product prices, cart totals and checkout amounts convert automatically<\/li>\n<li><strong>Floating currency switcher<\/strong> \u2014 a FAB button on every page, fully accessible and keyboard-navigable<\/li>\n<li><strong>Shortcode<\/strong> \u2014 <code>[ksmc_currency_switcher]<\/code> \u2014 place the switcher anywhere on your site<\/li>\n<li><strong>WordPress widget<\/strong> \u2014 drag the switcher into any widget area<\/li>\n<li><strong>3 switcher styles<\/strong> \u2014 dropdown, list, or pill buttons<\/li>\n<li><strong>Free rate fetching<\/strong> \u2014 one-click \"Fetch Live Rates\" powered by frankfurter.app and open.er-api.com (no API key required)<\/li>\n<li><strong>Manual rate entry<\/strong> \u2014 set your own exchange rates at any time<\/li>\n<li><strong>Cookie-based session<\/strong> \u2014 visitor currency choice is remembered across pages and visits<\/li>\n<li><strong>URL switching<\/strong> \u2014 <code>?currency=EUR<\/code> works for direct links<\/li>\n<li><strong>Clean uninstall<\/strong> \u2014 removes all plugin data on deletion<\/li>\n<\/ul>\n\n<h4>Pro Version<\/h4>\n\n<p>Upgrade to <a href=\"https:\/\/kazzylen.com\/kazzylen-smart-multi-currency-for-woocommerce\/\">Kazzylen SMC Pro<\/a> for:<\/p>\n\n<ul>\n<li><strong>Unlimited currencies<\/strong> \u2014 add any currency in the world<\/li>\n<li><strong>Automatic rate updates<\/strong> \u2014 hourly, twice-daily, daily or weekly via ExchangeRate-API, OpenExchangeRates, Fixer.io or CurrencyFreaks<\/li>\n<li><strong>Geo-IP detection<\/strong> \u2014 automatically show each visitor's local currency (KAZZYLEN GeoIP built-in, no key needed)<\/li>\n<li><strong>Per-currency rate margins<\/strong> \u2014 markup or markdown on top of the live rate<\/li>\n<li><strong>Global rate margin<\/strong> \u2014 single margin applied across all currencies<\/li>\n<li><strong>Payment gateway restrictions<\/strong> \u2014 control which gateways appear per currency<\/li>\n<li><strong>Priority support<\/strong><\/li>\n<\/ul>\n\n<h4>Shortcode Usage<\/h4>\n\n<pre><code>[ksmc_currency_switcher]\n[ksmc_currency_switcher style=\"dropdown\"]\n[ksmc_currency_switcher style=\"list\"]\n[ksmc_currency_switcher style=\"buttons\"]\n[ksmc_currency_switcher style=\"dropdown\" show_symbol=\"yes\" show_name=\"yes\" show_flag=\"no\"]\n<\/code><\/pre>\n\n<h4>Compatibility<\/h4>\n\n<ul>\n<li>WooCommerce 7.0+<\/li>\n<li>WordPress 6.4+<\/li>\n<li>PHP 8.0+<\/li>\n<li>Block themes and classic themes<\/li>\n<li>HPOS compatible<\/li>\n<\/ul>\n\n<h3>External Services<\/h3>\n\n<p>This plugin optionally connects to two free external APIs to fetch live exchange rates. <strong>These connections only occur when an admin manually clicks \"Fetch Live Rates\" in the Exchange Rates tab.<\/strong> They are never triggered automatically or on the frontend.<\/p>\n\n<p><strong>1. Frankfurter API (api.frankfurter.app)<\/strong>\nUsed for: Fetching live exchange rates for major world currencies (USD, EUR, GBP and others).\nData sent: The base currency code (e.g. \"USD\") and target codes (e.g. \"EUR,GBP\"). No personal data, no user data, no store data.\nWhen: Only on admin action (\"Fetch Live Rates\" button click).\nProvider: Frankfurter is a free, open-source exchange rate API with no user registration required.\nSource code and terms: https:\/\/github.com\/hakanensari\/frankfurter (MIT license, no separate Privacy Policy \u2014 no personal data is collected or stored by this service)\nAPI endpoint: https:\/\/api.frankfurter.app\/latest<\/p>\n\n<p><strong>2. ExchangeRate-API Free Tier (open.er-api.com)<\/strong>\nUsed for: Fallback exchange rates for currencies not covered by Frankfurter.\nData sent: The base currency code only (e.g. \"USD\"). No personal data, no user data, no store data.\nWhen: Only on admin action (\"Fetch Live Rates\" button click) and only if Frankfurter did not return a rate for a given currency.\nTerms of Service: https:\/\/www.exchangerate-api.com\/terms\nPrivacy Policy: https:\/\/www.exchangerate-api.com\/privacy\nAPI endpoint: https:\/\/open.er-api.com\/v6\/latest\/<\/p>\n\n<p>Both services are free, require no API key or account, and receive no personal data whatsoever.<\/p>\n\n<!--section=installation-->\n<ol>\n<li>Go to <strong>Plugins \u2192 Add New<\/strong> and search for <strong>Kazzylen Smart Multi-Currency<\/strong>.<\/li>\n<li>Click <strong>Install Now<\/strong>, then <strong>Activate<\/strong>.<\/li>\n<li>Go to <strong>WooCommerce \u2192 Multi Currency<\/strong>.<\/li>\n<li>USD, EUR and GBP are already installed. Enable or disable each as needed.<\/li>\n<li>Click <strong>Fetch Live Rates<\/strong> on the Exchange Rates tab to update rates.<\/li>\n<li>The floating switcher appears automatically on the front end.<\/li>\n<\/ol>\n\n<!--section=faq-->\n<dl>\n<dt id=\"does%20it%20cost%20anything%3F\"><h3>Does it cost anything?<\/h3><\/dt>\n<dd><p>The plugin is completely free with no API key, no account, and no ads.<\/p><\/dd>\n<dt id=\"can%20i%20change%20which%20currencies%20are%20available%3F\"><h3>Can I change which currencies are available?<\/h3><\/dt>\n<dd><p>You can enable or disable EUR and GBP, and update exchange rates at any time. The Pro version lets you add any currency in the world.<\/p><\/dd>\n<dt id=\"how%20do%20i%20add%20more%20currencies%3F\"><h3>How do I add more currencies?<\/h3><\/dt>\n<dd><p>Upgrade to <a href=\"https:\/\/kazzylen.com\/kazzylen-smart-multi-currency-for-woocommerce\/\">Kazzylen SMC Pro<\/a> for unlimited currencies.<\/p><\/dd>\n<dt id=\"how%20do%20i%20place%20the%20switcher%20in%20my%20header%20or%20menu%3F\"><h3>How do I place the switcher in my header or menu?<\/h3><\/dt>\n<dd><p>Use <code>[ksmc_currency_switcher]<\/code> in a Custom HTML widget, or the KAZZYLEN Currency Switcher widget in Appearance \u2192 Widgets. A floating switcher also appears automatically.<\/p><\/dd>\n<dt id=\"does%20it%20work%20with%20block%20checkout%3F\"><h3>Does it work with block checkout?<\/h3><\/dt>\n<dd><p>Yes \u2014 price conversion works at the WooCommerce filter level, compatible with both classic and block-based checkout.<\/p><\/dd>\n<dt id=\"does%20it%20store%20personal%20data%3F\"><h3>Does it store personal data?<\/h3><\/dt>\n<dd><p>The plugin stores the visitor's selected currency in a browser cookie only. No personal data is sent externally.<\/p><\/dd>\n\n<\/dl>\n\n<!--section=changelog-->\n<h4>1.1.0<\/h4>\n\n<ul>\n<li>Add: Currency limit \u2014 users can add, edit and delete any 3 currencies of their choice; attempting to add a 4th shows a clear message to delete one first<\/li>\n<li>Update: Version 1.1.0, Stable tag 1.1.0<\/li>\n<\/ul>\n\n<h4>1.0.5<\/h4>\n\n<ul>\n<li>Fix: Shortcode renamed from kazzylen_currency_switcher to ksmc_currency_switcher to match the ksmc_ plugin prefix<\/li>\n<li>Fix: Admin page slug renamed from kazzylen-smc to ksmc-currencies to match the ksmc_ prefix<\/li>\n<li>Fix: Enqueue hook detection updated to use ksmc-currencies page slug<\/li>\n<li>Add: Restored world currencies selector (70+ currencies) in Add Currency modal<\/li>\n<li>Add: Restored Add\/Delete\/Set Base buttons and full AJAX handlers<\/li>\n<li>Update: Version 1.0.5, Stable tag 1.0.5<\/li>\n<\/ul>\n\n<h4>1.0.4<\/h4>\n\n<ul>\n<li>Fix: Removed data-world-currencies.php (155-currency dataset) \u2014 no longer needed since add currency is not a feature of this plugin<\/li>\n<li>Fix: Removed world_currencies from wp_localize_script output<\/li>\n<li>Fix: Strengthened External Services readme section with explicit ToS\/Privacy links and clearer data disclosure for both Frankfurter and ExchangeRate-API<\/li>\n<li>Update: Version 1.0.4, Stable tag 1.0.4<\/li>\n<\/ul>\n\n<h4>1.0.3<\/h4>\n\n<ul>\n<li>Fix: Cart and checkout totals not converting on the WooCommerce Cart\/Checkout BLOCKS \u2014 item price converted correctly but subtotal\/total stayed in base currency with the new currency symbol applied. Root cause: block cart\/checkout reads totals via the WooCommerce Store API, which bypasses classic display filters (woocommerce_cart_subtotal, woocommerce_cart_item_price, woocommerce_calculated_total) entirely. Removed the remove\/restore filter pattern around cart calculation so WooCommerce always computes totals from the already-converted product price \u2014 this is read correctly by both classic templates and the Store API.<\/li>\n<li>Fix: Short description in readme.txt trimmed to under 150 characters<\/li>\n<\/ul>\n\n<h4>1.0.2<\/h4>\n\n<ul>\n<li>Fix: Text domain updated from kazzylen-smc-free to kazzylen-smart-multi-currency-for-woocommerce to match plugin slug<\/li>\n<li>Add: External Services section in readme documenting frankfurter.app and open.er-api.com usage<\/li>\n<li>Fix: Admin menu capability corrected \u2014 manage_woocommerce when WC active, manage_options otherwise; prevents \"not allowed\" error on rates\/settings tabs<\/li>\n<li>Fix: Cart\/checkout conversion rewritten to use cart display hooks instead of remove\/add_filters; fixes base price showing with wrong symbol in cart<\/li>\n<\/ul>\n\n<h4>1.0.1<\/h4>\n\n<ul>\n<li>Fix: Cart and checkout showing base currency amount with converted symbol<\/li>\n<li>Fix: All text domain mismatches resolved<\/li>\n<li>Fix: Admin menu page access errors fixed<\/li>\n<li>Add: Country selector in currency modal<\/li>\n<li>Add: 155-currency world data file<\/li>\n<\/ul>\n\n<h4>1.0.0<\/h4>\n\n<ul>\n<li>Initial release<\/li>\n<\/ul>","raw_excerpt":"Add unlimited currencies to your WooCommerce store. Live price conversion, floating switcher, shortcode and widget. Free, no API key needed.","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/he.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin\/333341","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/he.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin"}],"about":[{"href":"https:\/\/he.wordpress.org\/plugins\/wp-json\/wp\/v2\/types\/plugin"}],"replies":[{"embeddable":true,"href":"https:\/\/he.wordpress.org\/plugins\/wp-json\/wp\/v2\/comments?post=333341"}],"author":[{"embeddable":true,"href":"https:\/\/he.wordpress.org\/plugins\/wp-json\/wporg\/v1\/users\/kazzylen"}],"wp:attachment":[{"href":"https:\/\/he.wordpress.org\/plugins\/wp-json\/wp\/v2\/media?parent=333341"}],"wp:term":[{"taxonomy":"plugin_section","embeddable":true,"href":"https:\/\/he.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_section?post=333341"},{"taxonomy":"plugin_tags","embeddable":true,"href":"https:\/\/he.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_tags?post=333341"},{"taxonomy":"plugin_category","embeddable":true,"href":"https:\/\/he.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_category?post=333341"},{"taxonomy":"plugin_contributors","embeddable":true,"href":"https:\/\/he.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_contributors?post=333341"},{"taxonomy":"plugin_business_model","embeddable":true,"href":"https:\/\/he.wordpress.org\/plugins\/wp-json\/wp\/v2\/plugin_business_model?post=333341"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}