Shopify B2B12 min read

How Shopify B2B Company Accounts Work — Complete 2026 Guide

Company accounts, contacts, payment terms, catalogs, and price lists — Shopify's native B2B features explained with practical implementation detail.

  • Shopify B2B
  • Shopify Plus
  • Company Accounts
  • B2B API

Shopify's native B2B features have matured significantly since their 2022 launch. If you're evaluating Shopify Plus for a wholesale or B2B operation, this guide covers the actual architecture — not the marketing copy.

01What Shopify B2B actually is

Shopify B2B is a set of Plus-only features that let you create company accounts — entities that sit above individual customer accounts. A company has locations, contacts (Shopify customers), payment terms, and a catalog (a price list plus access rules).

02Company accounts: the core data model

The company is the top-level object. Everything else hangs off it. Here's how the hierarchy works:

  • Company — the legal entity (e.g. Acme Corp)
  • Company Location — a specific address/division within the company
  • Company Contact — a Shopify customer who belongs to the company and can place orders
  • Catalog — a price list + product visibility rules assigned to a company or location

03Catalogs and price lists

A catalog is how you control pricing and product access for B2B customers. Each catalog has one price list — a set of price adjustments applied to products. You can have fixed prices per product/variant, percentage adjustments, or volume-based pricing.

graphql
mutation CreateCatalog {
  catalogCreate(input: {
    title: "Acme Corp Catalog"
    priceList: {
      name: "Acme Corp Pricing"
      currency: GBP
      fixedPricesAndAdjustments: [
        {
          variantId: "gid://shopify/ProductVariant/12345"
          price: { amount: "45.00", currencyCode: GBP }
        }
      ]
    }
    publication: { channelId: "gid://shopify/Channel/..." }
  }) {
    catalog { id title }
    userErrors { field message }
  }
}

04Payment terms

Payment terms (net 30, net 60, net 90, etc.) are assigned at the company or location level. When a B2B customer checks out, the payment terms are applied automatically — the customer doesn't pay at checkout, an invoice is generated instead.

Payment terms are a Plus-only feature. On standard plans, you'd need to implement this manually using draft orders or a third-party app.

05What you can't do with native B2B

Native B2B is powerful but has documented limitations. You can't have multiple price lists per company (one catalog per company). Volume pricing beyond line-item quantity breaks requires Shopify Functions. Purchase order workflows need custom development or an app.

06When to use native B2B vs. custom development

  • Native B2B is sufficient for: simple wholesale with fixed trade pricing, payment terms, and basic company account management
  • Custom development is needed for: complex volume pricing rules, ERP-driven pricing sync, multi-tier distributor hierarchies, custom PO workflows
  • Use both: native B2B for the company/contact/payment model, custom Shopify Functions for pricing logic beyond what price lists support
All articles →
Shopify B2B · 15 min readShopify B2B + ERP Integration: Architecture Patterns That HoldHeadless & Hydrogen · 6 min readHydrogen Remix Tutorial: Build a Production StorefrontShopify Development · 13 min readShopify Selling Plans API: Building Native Subscriptions Without Third-Party Apps