Skip to content

Markets and currencies

Applies toShopify

Steps for

How it works

By default, SparkLayer shows B2B prices in your store's default currency. For example, if your store currency is GBP, every B2B customer sees prices in GBP. With Shopify Markets set up, you can add other currencies, such as USD or EUR. Each customer group then sees prices in its own currency.

When a B2B customer signs in, SparkLayer checks the price list assigned to their customer group. If that price list uses a different currency from your default (for example EUR instead of GBP), the customer sees all B2B prices, cart totals and checkout amounts in that currency. They don't need to switch currency themselves.

Setting it up takes 3 steps: a Shopify market for each currency, a price list in that currency, and a customer group that uses it.

How a customer's currency is chosen

Customer signs in

SparkLayer finds their customer group
(this flows forward)

Group's price list

The price list has a currency, for example EUR
(this flows forward)

Prices in that currency

Product pages, cart and checkout show EUR
(this flows forward)

Order in Shopify

The order arrives with EUR as its currency

To see it working, try our demo store (opens in a new tab).

Set up Shopify Markets

Start in Shopify. Each currency you want to use needs a matching, active market.

  1. In your Shopify admin, go to Settings,Markets (opens in your Shopify admin in a new tab) (or Markets in the main menu if you use Shopify's new Markets experience).
  2. Create a market for each region or country where you want to offer a currency. For example, create a "European Union" market with Euro as its currency.
  3. Check the market's status is Active.
  4. Check Shopify Payments (opens in a new tab) is turned on. Multi-currency only works in regions where Shopify Payments is available.

You don't need to set up catalogs or product availability in the market. SparkLayer manages B2B product visibility and pricing itself. The market only needs to exist so Shopify recognises the currency. Next, create a price list in that currency.

Create a price list in another currency

Each price list has one currency, and you set every price in it yourself.

  1. Go to SparkLayer Wholesale,Pricing,Price lists (in your Shopify admin).
  2. Click Create price list (or open an existing price list).
  3. Enter a Name and a Handle (or ID), and choose the Currency, for example EUR, USD or AUD.
  4. Add your prices as usual, entering every value in the price list's currency.

You can't change a price list's handle or currency after you've created it. Once the price list is ready, assign it to a customer group.

Assign the price list to a customer group

The customer group decides which customers see the new currency.

  1. Go to SparkLayer Wholesale,Customers,Customer groups (in your Shopify admin).
  2. Click Edit on the customer group, or click Create customer group to make a new one.
  3. Under Customized rules, open Price lists and choose the price list in the right currency. Click Add price list to add more.
  4. Set any other ordering rules, such as a minimum order value. They apply in the price list's currency.
  5. Save the group.

A customer group can have several price lists, and the first one with the product's SKU wins: see Price list order. All of a group's price lists must use the same currency. If they don't, customers see PRICING:001.

When customers in the group sign in, they see B2B prices in that currency on product pages, in the cart and at checkout.

What customers see

Once the group is set up, its customers see their currency everywhere they shop:

  • Product pages: B2B prices in the customer's currency. A customer on a EUR price list sees euros; a customer on your default GBP price list sees pounds.
  • Cart and checkout: line items, subtotals and order totals in the customer's currency. The payment methods are the ones set on their customer group.
  • Shipping: if a customer group has more than one shipping method (for example standard and express), shipping costs are converted from your store's default currency to the customer's currency.

How orders appear in Shopify

An order placed in another currency arrives in your Shopify admin in that currency. The draft order shows the customer's market, for example "France (EUR €)". How it arrives depends on the payment method:

Payment methodHow the order arrives in Shopify
Pay by invoiceAs a draft order
Payment on accountAs a draft order
Card at checkoutThe customer completes the Shopify checkout, so it arrives as a completed order

To have draft orders turned into completed orders automatically, turn on Auto-complete draft orders at SparkLayer Wholesale,Integrations,Platform,Shopify order actions (in your Shopify admin).

Because of how Shopify converts currencies and applies discounts, you may see small rounding differences between the price you set and the price on the Shopify order. For example, €7.99 may show as €8.00 in the Shopify admin. This is a Shopify limitation.

Use Shopify Companies with Shopify Markets

If you use Shopify's Companies feature alongside SparkLayer, multi-currency works in the same way. See Shopify Companies for how SparkLayer works with Companies.

Limitations

These Shopify Markets features and setups aren't supported, or work differently, with SparkLayer:

  • "Use local currencies": in a market with several countries, Shopify can let customers pay in their own region's currency (the market's Currency setting, Use local currencies). SparkLayer doesn't support this. Choose a single currency for markets with B2B customers, or orders may fail.
  • Price rounding: small differences can appear between your SparkLayer price and the price on the Shopify order, because of Shopify's currency conversion and rounding.
  • One market per currency: each currency you offer B2B customers needs its own market in Shopify Markets.
  • Shopify Payments required: multi-currency only works in regions where Shopify Payments is available (opens in a new tab).
  • Managed Markets and zero-value orders: with Shopify Managed Markets, you can't create a zero-value B2B order (such as £0.00 or €0.00) in any currency other than your store's default. Customers see an error at checkout if they try. See Shopify's Managed Markets requirements and considerations (opens in a new tab).
  • Duties and import taxes: if you turn on duties in Shopify Markets, SparkLayer doesn't charge them in the SparkLayer cart. Duties aren't supported.
  • Market catalogs: if you assign a product collection to a market in Shopify, SparkLayer doesn't detect or enforce it. SparkLayer manages B2B product visibility with its own rules and customer group settings.

FAQs

Was this page helpful?

Last updated