Internationalization
Introduction
Shopify Plus enables you to sell to customers in multiple countries and regions around the world. After reading this guide, you'll have a clearer understanding of how to implement your unique currency, language, taxes and duties, shipping and localized customer experience requirements which may have an impact on other choices you'll make when planning your Shopify Plus launch.
By the end of this guide you’ll know:
- How Shopify handles currencies and what fees apply
- How Shopify handles multiple domains for internationalization
- How to sell in multiple languages on Shopify
- How Shopify handles taxes and duties
- How Shopify handles shipping rates
- How to localize the customer experience
- If you should open one or more Shopify stores to sell internationally
Key Terminology
Throughout this guide you'll find references to the following key terms:
- Internationalization: the design and development of a system that enables localization for target audiences that vary in culture, currency, and language
- Localization: the process of adapting content and products to meet the language, cultural, and business requirements of a specific target market (locale)
- Market: a grouping of geographic regions where you offer the same localized experience
- Local currency: the currency that the customer sees when browsing the site and when going to checkout
- Store currency: The basis for currency conversion rates, and the currency that financial reporting within a Shopify store’s admin is displayed in.
- Payout currency: the currency of the payout you receive from your payment services provider to your bank account
- Currency conversion rate: the exchange rate used to calculate the price that's displayed to your customer in their local currency
Shopify Markets
Shopify Markets is a cross-border management tool that helps you identify, set up, launch, optimize and manage your international sales - all from a single store.
With Shopify Markets, you can:
- Manage your global sales from a centralized markets dashboard and view performance metrics and recommendations
- Target individual countries or regions, or group them together based on your business strategy
- Sell in multiple languages
- Sell in multiple currencies
- Use different domains, subdomains or subfolders to target each of your markets
- Allocate different inventory levels per market
- Calculate and collect import taxes and duties
- Set different shipping rates per market
- Set different product prices per market
Shopify Markets is most valuable to you if you also use Shopify Payments. Some of Shopify Markets’ features will not be available if you use another payment provider. You’ll learn more about your options with or without Shopify Payments in the following sections of this guide.
Selling in Multiple Currencies
Shopify Markets supports selling in multiple currencies on a single store when you use Shopify Payments.
Shopify Markets with Shopify Payments provides the following features that help you sell in multiple currencies:
- Rounding Rules: Product price rounding and custom rounding rules help avoid inconsistent price endings, when using exchange rates to sell in multiple currencies.
- Manual Exchange Rates: Set a fixed currency conversion rate for each currency that you set up.
- Price Adjustments: Price adjustments enable you to increase or decrease product prices for customers shopping from a specific country or region by a set percentage.
- Fixed Product Prices per Market: For each product, you can set a product price and compare-at price manually for each market that you have enabled. These prices can be set up by importing a CSV file, or by using the Price List API.
If you’re not using Shopify Payments, then you should use multiple Shopify stores to provide your customers in each market with the ability to pay in their local currency.
Note: If you use Shopify Payments, currency conversion fees are charged when a customer pays in a different currency than your payout currency. Currency conversion fees are added to the price that's displayed on the site. These fees are deducted from your payout and are also charged to the customer when they place an order. However, if you use manual exchange rates, then you must pay the conversion fee. You can add these fees into the manual conversion rate to pass the fee on to the customer. The formula for setting the price of a product when selling in multiple currencies is:
Store currency price x Conversion rate x (1 + Conversion fee) = Local currency price |
Customer Currency Selection
You can use two methods to set the local currency on your multicurrency storefront:
- Manual currency selector: Add a country selector to your Shopify store to allow your customers to choose which region and currency they want to shop in. This can be helpful if your customers want to shop in a different currency than you expect for their location.
- Automatic currency selector: You can set up your storefront to automatically choose the currency for a customer based on the customer’s location or the domain the customer uses to access your store.
You can provide both options on the same site by setting the default currency based on domain or location automatically, and adding a manual currency selector that customers can use to change the currency.
Selling in Multiple Languages
With Shopify Markets, you can offer multiple languages on a single store. To translate your content, you can use a compatible third-party application or import your translations directly into Shopify. All of the properties are stored in localized translation files that can be edited or managed through your theme source control.
If you want to provide a unique customer experience, depending on the language—for example, different content or branding based on the customer’s language—without extensive theme customizations, you might find it easier to set up multiple Shopify stores, each with a different default language. You can add a store selector to your theme, typically in the form of a dropdown or pop-up, to help customers switch to the correct store for their country/region and language. When you add your first country or region, multiple currencies are enabled and the Geolocation app is added to your Shopify store automatically.
Localizing the Customer Experience
Fully localizing your customer experience often goes beyond offering multiple languages and currencies on a single store.
Shopify Markets supports contextual inventory, the ability to make products and inventory visible on the storefront based on the customer country.
The international pricing feature, available within Shopify Markets if you also use Shopify Payments, allows you to set different product prices per market.
If you want to offer different design, content, or product selection in different countries or regions, you can use theme customizations to create localized experiences for your customers. We will share some options in the Technical Considerations section of this guide.
If you want to limit the amount of theme customizations, or your corporate setup requires you to book sales from a region to a regional business unit, you might find it easier to set up multiple Shopify stores.
Handling Duties, Taxes and Shipping
With Shopify Markets, you can collect duties and import taxes from your international customers at checkout. If your store is not eligible, or you don’t want to use this functionality, you can use a third party app to estimate duty and import taxes at checkout.
With Shopify’s tax engine, you can set up tax rates on products and shipping based on your business’s location, or the location you’re shipping to. Learn more about setting up your taxes here, and consult a tax advisor if you’re uncertain about your requirements. In the majority of cases, Shopify’s tax engine will allow you to implement your tax requirements. If your desired customer experience or internal reporting is not supported by Shopify’s tax engine on a single store, you may consider opening additional stores to sell in the countries where you have unique tax requirements.
With Shopify, you can set up shipping profiles, consisting of different shipping zones and rates, that you can associate to your products. Typically, you will be able to accurately set shipping rates for all your international markets from a single store. Learn more about setting up your shipping here.
Technical Considerations
In this section, you’ll go over some technical considerations about implementing your chosen set-up, whether you need a single store or multiple stores to support your internationalization requirements.
Domains
If you want to use different domains with a single Shopify store, International Domains enables you to configure specific domains, subdomains, or language-specific subfolders to automatically associate with a specific language and local currency. You can use country code top-level domains (ccTLD), for example, .ca, .co.uk, .au, or subdomains, for example, eu.store.com, ca.store.com, or subfolders for example, store.com/en-ca, store.com/fr-ca when assigning a specific domain or language to a country or region.
If you’re using multiple stores, you must set up a different domain or subdomain for each store. The same domain or subdomain cannot be shared by multiple stores and language/region specific subfolders are not supported.
See the Appendix for graphical examples of a single-store and a multi-store domain set-up.
Whether you’re setting up domains for one or multiple stores, below are some important considerations:
- If you already own the root domain, you can set up subdomains by configuring new DNS records.
- To use ccTLD you must purchase a domain for each country or region you want. Some domain registrars don't support all ccTLD, so you may need to use multiple registrars to purchase and manage the domains. Some ccTLD require the purchaser to have residency or a business presence in the country to purchase the domain.
- Using ccTLD results in independent search engine page rankings. This requires you to build page authority and rank for each domain. This can also cause duplicate content across domains (when not redirecting to the store’s primary domain) and should be used carefully.
Language, Currency, or Country Switchers
To direct your customers to the correct language, currency, or localized experience, you can use the following methods.
Apps
Geolocation, an app made by Shopify, allows you to set up a language or currency switcher if used in conjunction with Shopify Payments. Alternatively, there are apps available that provide store and domain redirects. Apps like Locksmith can be used to conditionally hide or display content on a Shopify store based on several criteria, including domain and custom Liquid conditions. Please note that not all apps are currently compatible with Shopify Markets. Verify if the app you are considering is compatible here.
Pop-Ups and Drop-Downs
You can provide an option for a customer to choose their currency, language, or location manually. This is often provided in the form of a pop-up or a drop-down menu where they can select the appropriate currency, language, or location.
Javascript
You can create redirects for customers by using Javascript on your theme. You can conditionally display content to a customer by referencing the current domain (e.g. eu.example.com) in Javascript using the window.location.hostname property and using additional client-side logic. This typically requires using a paid service to help translate a customer’s IP address into an approximate location.
Shopify Scripts
With Shopify Scripts, you can hide or show payment methods and shipping rates based on the shipping location.
Liquid
Shopify Liquid templates can be configured to conditionally display content in the resulting page render. You can learn how to use liquid to customize content by country in this tutorial.

Need support?
In the event that you have any urgent issues or need to speak with someone immediately, we encourage you to reach out to our amazing 24/7 support team.