Get a free audit
Get a free audithello@conversionsking.online

Shopify B2B NetSuite integration for European wholesale

Sync Shopify B2B companies, catalogs, terms and VAT numbers with NetSuite customers, price levels and credit limits for EU wholesale.

Shopify B2B NetSuite integration for European wholesale

Shopify B2B, now available on the Basic, Grow, Advanced and Plus plans, can sync with NetSuite for European wholesale. Map each Shopify company location to a NetSuite customer, catalogs to price levels, and payment terms to NetSuite terms. Keep credit limits in NetSuite, store validated VAT numbers on both sides, and let NetSuite issue the invoice.

That covers the shape of it. The details depend on your plan, how many price lists you run and how many countries you ship to. This guide covers what Shopify B2B includes on each plan today, how each object maps to NetSuite, and how VAT numbers and the reverse charge work for cross-border wholesale in the EU.

Key takeaways

  • B2B is no longer Plus-only, but non-Plus plans are limited to three active catalog assignments and cannot assign catalogs to individual companies.
  • The company location is the key record. It carries the VAT number, tax setting, payment terms and catalogs, and it maps best to a NetSuite customer.
  • NetSuite owns credit. Shopify’s B2B plan comparison does not include credit limits, so enforce them in NetSuite and sync the result.
  • VIES validation is useful but not infallible. Have a fallback for when the service is down.

Which Shopify plans include B2B in 2026?

According to Shopify’s B2B features by plan, B2B is available on Basic, Grow, Advanced and Shopify Plus, but not on Starter or Retail. Most features are on every eligible plan. The main differences are below.

FeatureBasic and GrowAdvancedPlus
Companies and company locationsYesYesYes
Active catalog assignments to B2B markets33Unlimited
Catalogs assigned directly to a companyNoNoYes
Quantity rules and price breaksYesYesYes
Net payment terms and vaulted cardsYesYesYes
Deposits and partial paymentsNoNoYes
Contextual B2B storefront and checkoutNoYesYes

On Basic, Grow and Advanced, catalogs also require the new version of Shopify Markets. For a wholesaler with one trade price list per country, three catalog assignments run out quickly. If your NetSuite setup has a price level per customer tier and per currency, you are likely to need Plus.

How does Shopify B2B map to NetSuite?

Shopify B2BNetSuiteNotes
CompanyParent customerOptional. Useful for groups with many branches.
Company locationCustomer or subcustomerThe record that is billed. Holds VAT number, terms and addresses.
Customer (buyer contact)ContactLinked to the customer, with a role.
Catalog and price listPrice level, or customer item pricingOne catalog per price level is easiest to maintain.
Quantity price breaksQuantity pricingCheck the number of quantity columns matches.
Payment termsTerms recordMap each option one to one.
PO numberSales order PO fieldCarry it to the invoice.

Store the Shopify company and location IDs on the NetSuite customer, and the NetSuite internal ID on the Shopify location, using an external ID or metafield. That pair is how the integration finds the right record every time, without matching on names or emails.

One NetSuite detail is easy to miss. Oracle’s help on customer credit limits and holds notes that a parent’s credit limit does not cover its subcustomers. If you model locations as subcustomers, decide where the limit sits before you build.

How do NetSuite price levels become Shopify catalogs?

NetSuite’s Multiple Prices feature lets you set a price level on each customer, plus customer-specific item prices that override everything else. Shopify catalogs hold a price list with fixed prices or a percentage adjustment, and a publication that controls which products the buyer sees.

The cleanest mapping is one Shopify catalog per NetSuite price level and currency, pushed from NetSuite on a schedule. Company-specific prices are harder. On Plus you can give a company its own catalog. On other plans you cannot, so either fold those prices into a shared level or quote them through draft orders. If NetSuite also runs price rules from Advanced Pricing, test what Shopify shows against what NetSuite would charge, line by line, before launch.

How should payment terms and credit limits work?

Shopify B2B payment terms include Net 7, 15, 30, 45, 60 and 90, and due on fulfilment. Map each to a NetSuite terms record and sync it from NetSuite to the company location, so credit control sets terms in one place.

Credit limits are different. NetSuite can warn or hold orders when a customer is over their limit or has overdue invoices, depending on the Customer Credit Limit Handling preference. Shopify’s plan comparison does not list a credit limit feature. We usually handle this in one of two ways:

  • Sync a hold. When NetSuite puts a customer on hold, the integration changes the Shopify company location to submit orders as drafts for review, or removes its payment terms so the buyer must pay by card.
  • Check at order time. The order still lands in Shopify, but NetSuite holds the sales order until credit control releases it. Simpler, but the buyer finds out later.

Payments against B2B invoices should flow back to Shopify too, so the buyer sees the order as paid in their account.

How do VAT numbers, VIES and the reverse charge work?

In Shopify, tax IDs live on the company location, not the company. Shopify’s guide to creating companies says that for stores using Shopify Tax, the field becomes “VAT number” for locations in the UK and EU, and Shopify Tax validates it. Each location also has a tax setting: collect tax, do not collect tax, or collect tax unless exemptions apply.

Shopify’s VAT validation page adds several limits worth planning for:

  • Validation runs in real time through VIES. If VIES cannot complete the check, VAT is charged by default, and there is no manual override.
  • The reverse charge depends on the fulfilment location. It applies from an EU location to another EU country and from the EU to the UK, but not from the UK to the EU.
  • Orders with items stocked in different countries are not supported, and changing the fulfilment location after the order is created does not re-evaluate the exemption.
  • The checkout VAT number field does not apply to B2B-specific checkouts, so B2B VAT numbers belong on the company location.

VIES itself is run by the European Commission. Its VIES information page explains that it is a search engine over national VAT databases, not a database of its own, and that it is sometimes unavailable while those databases are backed up. Northern Ireland numbers use the XI prefix. Great Britain (GB) numbers are not in VIES and are checked with HMRC.

In NetSuite, store the validated VAT number on the customer record, with the check date and result. For cross-border B2B supplies of goods inside the EU, a valid VAT number for the buyer is one of the conditions for the exemption, and the sales also go on your EC Sales List. Domestic B2B sales are different: a Dutch wholesaler selling to a Dutch retailer charges Dutch VAT whatever VIES says. Agree the tax codes and invoice wording with your adviser. This is general information, not tax advice. Our EU VAT and OSS guide and UK VAT after Brexit guide go further.

Which system should issue the B2B invoice?

NetSuite, in almost every case we see. It holds the invoice number sequence, the customer’s VAT number, the tax codes and the terms. It is also where e-invoicing obligations land as they arrive across Europe, which our EU e-invoicing guide covers. Shopify should show the order and, once NetSuite has invoiced, a link to or copy of the invoice. Do not let both systems send an invoice to the buyer.

Who creates new trade accounts?

Decide whether NetSuite or Shopify creates the company. Many wholesalers keep NetSuite as the master: credit control approves a new account, NetSuite creates the customer, and the integration creates the Shopify company and location. If buyers apply through a form on Shopify, treat the application as a request that NetSuite approves, not as a new customer. Either way, deduplicate on VAT number before you create anything.

Common B2B integration mistakes

  • Building price lists by hand in Shopify. They drift from NetSuite within weeks. Push them from the price levels instead.
  • One VAT number for a whole group. Branches in different countries often have their own numbers, so store them per location.
  • Ignoring currency. A Swedish buyer on a EUR price list will see EUR. Decide the currency per B2B market before you map catalogs.
  • Testing only the happy path. Test a buyer on hold, a VAT number that fails VIES and an order shipped from a non-EU warehouse.

FAQ

Do I need Shopify Plus for B2B with NetSuite?

Not always. Basic, Grow and Advanced include B2B, but with three active catalog assignments and no company-specific catalogs. Wholesalers with many price levels usually need Plus.

Does Shopify check VAT numbers with VIES?

Shopify Tax validates VAT numbers entered on EU and UK company locations, and Shopify states that checkout validation uses VIES in real time. Keep the result in NetSuite as well.

Can Shopify enforce NetSuite credit limits?

Not natively. The integration can sync a hold from NetSuite, switch the location to draft orders or remove payment terms until credit control releases it.

Should a company location be a NetSuite customer or subcustomer?

Either works. Subcustomers suit groups with central billing. Separate customers suit locations that are billed and credit-checked on their own.

Selling wholesale in Germany, France or the Netherlands brings its own invoicing and tax rules. See our pages for Germany, France and the Netherlands, or the Shopify NetSuite integration overview. When you are ready, book a free integration assessment and we will review your B2B setup and plan.

All articlesWork with us