Posted on

Multi currency shipping rates with WPML+WCML

Shipping rates main currency

Multi currency shipping rates can be a headache on multi currency e-shops. In this post, we will demonstrate how easy is with Fish and Ships+WCML.

If you’re running a WooCommerce with WPML as multilingual and multi currency site, you have to know that Fish and Ships is fully compatible with it, and it will work transparently, out of the box.

This post assumes you’ve configured WCML multicurrency, here you can read the WPML Multi-currency support for WooCommerce documentation.

Automated exchange rates
by WPML’s WooCommerce Multilingual (WCML)

On the Fish and Ships table rate configuration, you enter the shipping costs into the main currency in the same way as you do into one-currency shop. When the customer switch to secondary currency, WCML will convert the shipping rate. Easy as a piece of cake. Sure. 😉

Let’s see the next scenario: an ecommerce with main currency in Euros, and two more currencies, dollars and pounds. Configured on WCML:

WPML multi currency
WPML multi currency.
(You’ll find this screen through admin menu: WooCommerce > WooCommerce Multilingual, and click the Multi-currency tab)

The table rate as follows: 1€ per lightweight product, and extra charge for a weight products:

Shipping rates on main shop currency
Shipping rates on main shop currency .
(You’ll find this table rate editing the shipping method, on WooCommerce > Settings, and click)

…and with a lightweight product in our cart, switching through WCML currency selector, the shipping rate is converted in the same way as the product price:

Automated shipping rate conversion for every currency
Automated shipping rate conversion for every currency

Setting manually multi currency shipping rates

There is a new feature in WCML: the ability to set different shipping rates for every currency. Fish and Ships supports it through an easy and inctuitive interface. Simply activate the checkbox labeled “set prices for every currency“. A new tabs appear on the top of the shipping table rate, one for every currency configured on WCML :

Distinct prices on WPML multi currency
Distinct prices on WPML multi currency

…and you can set every currency field, on every currency. Note that non-currency fields can’t be set on secondary currencies. On our example, to make it easy to understand, we will set two pounds instead of one euro:

 Setting the shipping rates manually for pounds
Setting the shipping rates manually for pounds

…and three dollars instead of one euro:

Setting the shipping rates manually for dolars
Setting the shipping rates manually for dolars

Now, the same cart, will get the product price converted with the same exchange rates set in WCML. But the manual multi currency shipping rates are set: one euro, two pounds, and three dollars, instead of automated shipping rate conversion:

Distinct shipping rates for every currency
Distinct shipping rates for every currency