Customer-specific wholesale pricing means each retailer or group of retailers sees its own price list. Multi-currency means each sees it in its own currency. The decision that matters is whether those currency prices are converted from one base price or set by you. Order41 is our product, and the comparison below cites each vendor's own documentation, checked October 2026.
By Till Elsässer, Founder of Order41 · Published Oct 9, 2026 · Last checked Oct 9, 2026
Most brands end up with three or four standing agreements rather than one wholesale price: a distributor price, a key-account price, a price for independent retailers, and often an export price for a particular market. Each of those is a price list, and the account it belongs to decides which one a buyer sees.
In a spreadsheet this survives until the first mistake, and the mistake is always the same one: a linesheet goes out with the wrong prices on it, to the one account whose price was negotiated separately. The fix is structural rather than careful. As our glossary entry on wholesale price puts it, price lists attach to accounts rather than to documents, so the document cannot be wrong for the account that receives it.
In practice most accounts sit in a group and inherit the group price, while a few carry an individually negotiated price of their own. A tool that can only price by market or by country cannot express the second case, which is usually the one that matters most commercially.
There are two ways to price in more than one currency, and they fail in different directions.
Converting takes one base price and multiplies it by an exchange rate. It is quick, it needs no extra maintenance, and every product has a price everywhere. What the buyer sees is a price that moves between the day they looked and the day they ordered, usually landing on something like $53.92. For a consumer checkout that is fine. For a linesheet a buyer reads, prices, and then orders from three weeks later, it is a source of questions.
Setting a price per currency means you choose €49, $55 and £45 yourself. The buyer sees the same figure on the linesheet, in the order and on the invoice, at a price point you picked rather than one arithmetic produced. The cost is that you own the repricing: nothing updates itself when rates move.
Set prices do not remove currency risk. If the euro strengthens, a fixed dollar price earns you fewer euros until you reprice. What they remove is daily price movement for your buyers, and they move the decision about when to reprice from the exchange rate to you.
There is a second reason a straight conversion is rarely the right wholesale price anyway. Landed cost differs by market, because duty, freight and local handling differ, and so does what a market will bear. Our entry on RRP makes the same point from the retail end: an RRP set in euros does not convert cleanly into pounds or dollars, and the same is true one step earlier in the chain.
Every tool below can price in more than one currency. They differ on what a price list can be attached to, how many you get, who creates them, and whether the figure is yours or the exchange rate's. Checked against each vendor's public documentation on 9 October 2026. Where something is not documented publicly, the table says so.
| Tool | Price lists | Assigned to | Currencies | Converted or set? | Plan or price where public |
|---|---|---|---|---|---|
| Order41 | Unlimited | Customer groups and individual customers | Each customer served in their currency | Set by you; no automatic conversion | From Pro, €65/month |
| Shopify B2B (Basic, Grow, Advanced) | Up to 3 active catalogs across all B2B markets | B2B markets only | Market currency | Automatic conversion or a manual rate; fixed prices override adjustments | Included in the Shopify plan |
| Shopify B2B (Plus) | Unlimited catalogs, up to 25 per company location | Markets, or directly to companies and locations | Market currency | As above | Shopify Plus |
| Joor | As many price types as required, each a currency plus a label | Customers | Multiple, with several price levels per currency | Set per price type | Quote only |
| Nuorder | Price sheets, one per customer | Companies | Assigned per company, set up via account manager or support | Set per currency in the product data | Not published |
| Brandboom | 3 on Startup, unlimited on Business, none on Free or Basic | Presentations, one price list per presentation link | A new price list per currency | Set per price list | Startup $100/mo billed annually; Business on request |
| Le New Black | Price lists with their own currency, extra lists via support | Buyer countries, one price list per country | Per price list | Set per price list; daily rates convert orders for totals and reports | On request |
| RepSpark | Pricing tiers on customer records | Customers | Multi-currency on Professional and Enterprise, not Accelerate | Not documented | On request |
| Faire | Not applicable, it is a marketplace | Not applicable | The retailer's local currency | Automatic daily conversion by default, with an option to set a price per currency | Commission based |
Shopify prices B2B through catalogs. On the Basic, Grow and Advanced plans you can assign up to 3 active catalogs across all your B2B markets, and they attach to markets rather than to individual companies. Plus lifts that to an unlimited number and allows direct assignment to companies and locations, with a maximum of 25 catalogs per company location. Within a catalog, a fixed price overrides a percentage adjustment.
The arithmetic is worth doing before you commit. Three currencies at one price list each already uses the entire limit on a non-Plus plan, because the limit counts across all B2B markets rather than per market. That leaves nothing for a single negotiated key-account price, and assigning a catalog to one company is a Plus feature regardless.
On currency, the buyer always sees the market currency, you can choose automatic conversion or set a rate manually, and selling B2B in more than one currency requires Shopify Payments. If you are already on Shopify and weighing this, we have a guide on moving wholesale off Shopify.
Joor models this as price types, each one a currency plus a label, and its developer documentation states that clients can sell in multiple currencies with multiple price levels per currency and may add as many price types as required. Price types are assigned to customers rather than to countries or markets, which covers the negotiated key account cleanly.
What you cannot do is work out what it costs. All three Joor plans are quote only. We compare the wider picture in Joor alternatives.
Nuorder assigns a currency on the company record, which controls which currency the customer sees prices in, and handles customer-specific pricing through price sheets. The constraint to know about is in the same document: a customer can only be assigned to one price sheet.
Two operational details matter. Additional currencies are set up by your account manager or Nuorder support rather than by you, and a product with no price in a customer's assigned currency does not appear in their portal at all. That second behaviour is a reasonable default and a surprising one the first time a buyer tells you half the range is missing. Pricing is not published.
Brandboom supports price lists for alternate currencies or custom pricing, and is unusually clear about which plan gets how many: none on Free or Basic, 3 on Startup, unlimited on Business. Startup is $100 per month billed annually and Business is on request.
The structural difference from the rest of this list is what a price list attaches to. In Brandboom each presentation has one link and pulls from one price list, so pricing follows the document you send rather than the account you send it to. That is a natural fit if you work presentation by presentation, and a poor one if the same buyer should always see the same prices whatever you send them.
Le New Black gives each price list its own currency and assigns it by buyer country, with the explicit rule that a country can only be assigned to one price list. Additional price lists are added by the support team or your account manager rather than by you.
Prices are set per list, not converted. Exchange rates appear elsewhere: daily rates convert orders into the default currency so that totals and sales reports add up across markets, which is conversion for reporting rather than for what the buyer pays. Pricing is on request.
RepSpark holds pricing tiers on the customer record, and its pricing page lists multi-currency on Professional and Enterprise but not on Accelerate, so the entry plan is out if you sell in more than one currency. Rule-based pricing beyond that is handled by custom plugins requiring a development engagement. Plan prices are not published.
Faire is a marketplace rather than an ordering platform, so price lists per customer are not the model. By default it converts your prices into the retailer's local currency at the daily exchange rate, with an option to set unique pricing per currency instead. Faire's own help article frames the choice the same way this page does: converted prices may change slightly day to day, while set prices are more stable but need updating when rates shift.
One rule to know if you sell in the EU or UK: your wholesale prices on Faire must be the same or lower than your other sales channels for the same currency, which constrains how you price everywhere else.
Order41 gives you unlimited price lists, set per customer group or per individual customer, and each customer is automatically served in their own currency. Prices are not converted between currencies by design: you set the exact figure in each currency you sell in, so a buyer sees the price you chose rather than one an exchange rate produced that morning. All of it is available from the Pro plan at €65 per month, which is published rather than quoted.
That combination is what the table above is really comparing. Shopify caps you at three catalogs unless you are on Plus and will not attach one to a single company below it; Brandboom ties the price list to the presentation rather than the account; Le New Black's price-list documentation maps each country to one price list, so two accounts in the same country share that list's prices; Nuorder and Joor both support this but publish no prices at all. If you want to see how it works in the product, the setup is in our docs under price lists and currencies.
Example numbers for illustration, not real exchange rates or customer prices. The product is a merino scarf from a brand based in Berlin, which costs and reports in euros.
| Customer | Price list | Currency | Wholesale price |
|---|---|---|---|
| EU independent retailers | Group: EU independents | EUR | €49 |
| US specialty stores | Group: US specialty | USD | $55 |
| UK independents | Group: UK independents | GBP | £45 |
| One UK department store | Individual: negotiated key-account price | GBP | £42 |
Converted from €49 at an example rate of 1.08, the US price would be $52.92, and something else a week later. Set per currency it is $55, on the linesheet, in the order and on the invoice. The same logic gives the UK list a round £45 rather than whatever £49 converts to that day.
That is three price lists for three currencies, plus a fourth for one key account. On Shopify's Basic, Grow or Advanced plans the first three already use the entire 3-catalog limit, and assigning a catalog to a single company needs Plus. On Le New Black, going by its price-list documentation, the fourth list is the harder one instead: a country can only be assigned to one price list, and the key account and the other UK independents are in the same country.
Now the honest half. If the euro strengthens to an example 1.15, that $55 is worth about €47.83 rather than the €50.93 it was worth at 1.08. Your buyer's price did not move. Your euro margin did. What set prices give you is that this becomes a decision you make when you review the USD list, once a season or whenever you choose, instead of a number that changes under your buyers daily. If you work with multipliers and an MSRP per market, the same review is where those get checked too, and our post on how brands use multipliers to protect margin goes through that arithmetic.
Most of these are answered in a vendor's documentation in one line, and the answers differ more than the marketing pages suggest.
Each retailer or group of retailers sees its own price list, such as a distributor price, a key-account price, an independent-retailer price or an export price for a market, instead of one wholesale price for everyone. Most accounts sit in a group and inherit the group price, while a few carry an individually negotiated price of their own.
Converting is quick but makes buyer prices move between the linesheet and the order, and land on amounts like $53.92. Setting a price per currency keeps the figure stable and clean, but you review it yourself when rates move. Set prices do not remove currency risk: a fixed dollar price earns you fewer euros if the euro strengthens, until you reprice.
On the Basic, Grow and Advanced plans you can assign up to 3 active catalogs across all your B2B markets, and they attach to markets rather than to individual companies. Shopify Plus allows an unlimited number and lets you assign a catalog directly to a company or location, up to 25 per company location. Checked on Shopify help, October 2026.
Yes. Each customer is automatically served in their currency, at the price you set for that currency. Order41 does not convert between currencies, so the figure a buyer sees is the one you chose rather than one produced by that day's exchange rate.
Unlimited price lists, set per customer group or per individual customer, each with an exact price in every currency you sell in, from the Pro plan at €65 per month. Order41 publishes its pricing, and standard buyer accounts are always free.
Yes. You can give that customer its own price while the rest of the group keeps the group price list. This is the case that tools pricing by market or by country cannot express, because two accounts in the same country have to share a price there.
Pre-orders, stock orders and reorders in one platform.
Free to start, no credit card required.
We use cookies to measure and improve your experience. For more information, please read our cookie policy.