Kokil Thapa - Professional Web Developer in Nepal
Freelancer Web Developer in Nepal with 15+ Years of Experience

Kokil Thapa is an experienced full-stack web developer focused on building fast, secure, and scalable web applications. He helps businesses and individuals create SEO-friendly, user-focused digital platforms designed for long-term growth.

Shopify B2B Wholesale Setup Guide

By Kokil Thapa | Last reviewed: August 2026

Running a hybrid retail and wholesale operation requires precise backend configuration to avoid margin erosion or customer friction. This Shopify B2B wholesale setup guide provides the exact architectural steps needed to configure native B2B features on Shopify Plus in 2026. If you are evaluating whether to build custom solutions versus using native tools, understanding these capabilities is essential before hiring an eCommerce website developer in Nepal or elsewhere. The following sections detail how to implement company profiles, tiered pricing, and net payment terms directly within the admin, eliminating the need for fragile third-party workarounds.

How Do You Configure Company Profiles in Shopify B2B?

The foundation of any functional B2B store is the company profile. Unlike standard consumer accounts, B2B profiles bind multiple users, addresses, and payment methods to a single legal entity. In my experience working on production eCommerce systems, skipping granular profile configuration is the most common cause of checkout errors and tax miscalculations later.

Creating and Structuring Company Records

Navigate to Customers > Companies in your Shopify Plus admin. Each company record acts as a container for business logic rather than just contact information. When setting up a new wholesale partner, you must define three critical elements immediately:

  1. Primary Contact: The administrative user who manages other employees and approves orders.
  2. Billing Address: Must match the legal entity for VAT/PAN compliance, especially for cross-border trade between Nepal and India or international shipments.
  3. Tax Exemption Status: Apply tax overrides at the company level if the buyer is reselling goods and holds a valid resale certificate.

A frequent mistake is treating company profiles as static records. In practice, they should be dynamic. Use the Shopify Admin API or bulk import CSVs to update company metadata when contracts renew or credit limits change. For businesses managing hundreds of wholesale accounts, integrating this with an external ERP prevents data drift between your financial system and your storefront.

Company Profile ArchitectureLegal Entity (Company)Admin UserManages Team & ApprovalsBuyer Users (N)Place Orders / View CatalogBilling & Tax ConfigVAT/PAN + Payment TermsShared ResourcesPrice Lists • Shipping Addresses • Order History • Credit Limit
Shopify B2B company profile structure linking legal entities to users, billing rules, and shared pricing resources

Managing User Permissions and Locations

Shopify Plus allows you to assign specific roles within a company profile. Administrators can invite buyers, set spending caps, and restrict access to certain catalogs. For Nepali wholesalers operating from Kathmandu with warehouses in Birgunj or Bhairahawa, configuring multiple shipping addresses per company is vital. Ensure each location has accurate inventory allocation rules to prevent overselling during peak seasons like Dashain.

Always validate email domains for company users. Allowing personal Gmail addresses for B2B accounts creates security risks and complicates offboarding when employees leave. Enforce corporate domain verification through the admin settings or via API validation during automated provisioning.

How Do Price Lists Work for Shopify Wholesale Pricing?

Native price lists are the engine of the Shopify B2B wholesale setup guide. They replace the outdated method of creating duplicate products with "wholesale" tags or running discount code scripts that fail at scale. Price lists allow you to assign fixed prices or percentage discounts to specific products, variants, or entire collections based on the company profile.

Fixed vs. Percentage-Based Pricing Models

You have two primary strategies when configuring price lists:

  • Percentage Discounts: Best for general wholesale tiers (e.g., "Gold Partners get 20% off all collections"). This is easier to maintain but risky if your base retail price changes frequently.
  • Fixed Prices: Essential for contract manufacturing or regulated goods where margins are negotiated per SKU. Use this for high-volume items where a 1% variance significantly impacts profitability.

In production environments, I recommend combining both. Apply a global percentage discount for the catalog, then override specific high-margin SKUs with fixed prices to protect your bottom line. This hybrid approach mirrors how traditional distribution agreements work offline.

FeaturePercentage DiscountFixed Price List
Maintenance EffortLow (auto-updates with base price)High (manual updates required)
Margin ProtectionRisk of over-discountingPrecise control per SKU
Best Use CaseGeneral reseller tiersContractual / Government tenders
Currency HandlingInherits market currencyCan be set per currency (USD/NPR)
API ComplexitySimple assignmentRequires variant-level mapping

Assigning Price Lists via API and Admin

While the admin UI works for dozens of companies, scaling to hundreds requires automation. Use the companyContact and priceList GraphQL APIs to programmatically assign pricing tiers during customer onboarding. When integrating with external CRMs or ERPs, sync price list assignments nightly to catch discrepancies.

mutation CompanyContactUpdate($id: ID!, $priceListId: ID!) {
  companyContactUpdate(id: $id, priceListId: $priceListId) {
    companyContact {
      id
      priceList {
        name
      }
    }
    userErrors {
      field
      message
    }
  }
}

Ensure your price lists have clear naming conventions (e.g., WHOLESALE-TIER-A-2026) to avoid confusion during audits. Archived price lists remain visible in historical orders but cannot be assigned to new customers, providing a clean audit trail for accounting teams.

Price Resolution PipelineBase Retail PriceProduct Master DataGlobal % DiscountTier Level AdjustmentSKU Fixed OverrideContract Specific PriceFinal B2B PriceCheckout DisplayResolution Rules1. Fixed Price overrides Percentage2. Highest Priority List wins3. Falls back to Base if no match
Shopify B2B price resolution flow prioritizing fixed overrides over percentage discounts

What Payment Terms and Checkout Settings Are Required?

B2B transactions rarely use immediate credit card payment. Configuring net terms and purchase orders correctly is what separates a professional wholesale portal from a hacked-together retail store. This section of the Shopify B2B wholesale setup guide addresses the financial plumbing that keeps cash flow predictable.

Setting Up Net 30/60/90 Terms

In Settings > Customers > Companies, enable payment terms for eligible profiles. Shopify Plus supports standard Net 15, 30, 60, and 90 day terms out of the box. Crucially, these terms are enforced at checkout: approved buyers see "Pay on Account" as a payment option, while unapproved users or guest checkouts are restricted to immediate payment methods.

For Nepali businesses dealing with local suppliers, consider aligning digital terms with your actual banking cycles. If your bank reconciliation happens weekly, setting Net 7 or Net 14 might improve liquidity compared to industry-standard Net 30. Always communicate these terms clearly in the checkout instructions and confirmation emails to avoid disputes.

Purchase Orders and Approval Workflows

Many institutional buyers require Purchase Order (PO) numbers for every transaction. Enable the PO field in checkout settings specifically for B2B company profiles. You can make this field mandatory for tagged companies using checkout extensibility functions, ensuring no order enters your fulfillment queue without proper reference documentation.

Approval workflows add another layer of control. Administrators can set order thresholds (e.g., NPR 50,000) that trigger an internal approval request before the order is confirmed. This prevents junior staff from placing unauthorized bulk orders and gives finance teams visibility into pending liabilities. Configure notification templates to route approvals to the correct department head automatically.

How Should You Structure Your B2B Storefront Experience?

The visual and functional experience for wholesale buyers differs fundamentally from retail consumers. Speed, density, and reordering capability matter more than lifestyle imagery. When advising clients on Shopify vs WooCommerce for B2B, I emphasize that Shopify's native B2B theme extensions now handle most requirements without custom app development.

Optimizing Product Pages for Bulk Ordering

Wholesale buyers need to see volume breaks, stock levels, and case pack quantities immediately. Customize your product templates to display:

  • Quantity Breaks Table: Show price reductions at 10, 50, 100+ units prominently above the fold.
  • Case Pack Multiples: Enforce ordering in increments (e.g., packs of 12) to simplify warehouse picking.
  • Stock Availability: Display real-time inventory counts or lead times for backordered items.
  • Quick Add / CSV Upload: Allow buyers to paste SKUs and quantities directly instead of browsing visually.

Use Shopify's Online Store 2.0 JSON templates to create dedicated B2B product layouts. These can be assigned exclusively to wholesale collections or rendered conditionally based on login status, keeping your DTC experience untouched.

DTC Storefront FocusHero Imagery & StorytellingEmotional connection drives conversionSingle Unit Add-to-CartSimple quantity selector (1-10)Reviews & Social ProofTrust signals for first-time buyersB2B Storefront FocusVolume Pricing & Stock LevelsData density enables fast decisionsBulk Order Forms / CSV UploadEfficiency over discoveryReorder & Account DashboardRepeat purchasing workflowVS
Key differences between DTC emotional design and B2B efficiency-focused layouts

Handling Login Gates and Catalog Visibility

Decide early whether your wholesale catalog will be fully gated, partially visible, or entirely separate. Shopify Plus supports locking specific collections or products behind company profile authentication. A common pattern is showing retail prices to guests while revealing wholesale pricing and bulk options only after B2B login.

If you operate in markets with strict price confidentiality (common in pharmaceutical or industrial distribution), use customer tags combined with metafields to hide sensitive products entirely from unauthorized accounts. Test this thoroughly across devices; cached pages sometimes leak hidden content if cache keys aren't segmented by user session.

When Should You Extend Beyond Native B2B Features?

Native Shopify B2B covers 80% of wholesale use cases in 2026, but complex scenarios still require extension. Understanding these boundaries prevents costly rebuilds later. If your requirements exceed native capabilities, consulting a specialist familiar with Laravel API best practices for headless integrations may be more sustainable than stacking incompatible apps.

Complex Quoting and Negotiation Workflows

Native price lists are static. If your sales team negotiates custom quotes per order with expiration dates, line-item overrides, and multi-stage approval, you likely need a quoting app or custom middleware. These systems generate draft orders that convert to live orders upon acceptance, preserving the negotiation history for audit purposes.

Multi-Warehouse and Regional Routing

While Shopify Markets handles international selling, domestic multi-warehouse routing for B2B often needs customization. If your Kathmandu office sells but fulfillment splits between Chitwan and Nepalgunj based on destination, native inventory locations may not suffice. Custom fulfillment logic via webhooks or third-party logistics integrations ensures accurate shipping costs and delivery estimates.

ERP and Accounting Synchronization

B2B operations live and die by accurate financial data. Native Shopify exports are insufficient for real-time ERP sync. Implement robust integration patterns using Shopify Flow or custom middleware to push invoices, sync inventory, and pull customer credit limits bidirectionally. For Nepali businesses using Tally or similar regional accounting software, custom connectors are often necessary since pre-built integrations focus on Western platforms like QuickBooks or Xero.

Implementing Your Shopify B2B Wholesale Setup Guide Strategy

Deploying native B2B on Shopify Plus eliminates the technical debt associated with legacy wholesale hacks. By systematically configuring company profiles, structuring price lists for margin protection, enforcing payment terms, and optimizing the storefront for bulk efficiency, you build a scalable wholesale channel that operates alongside your DTC business without compromise. This Shopify B2B wholesale setup guide provides the architectural blueprint, but execution quality determines long-term success.

If you need assistance auditing your current wholesale configuration, integrating ERP systems, or building custom B2B workflows on Shopify Plus, contact me to discuss your specific requirements. With extensive experience in eCommerce architecture and Nepal-focused business constraints, I help merchants implement sustainable B2B solutions that grow with their operations.

Frequently Asked Questions

Native B2B functionality requires Shopify Plus, starting at USD 2,000 per month (approximately NPR 265,000). Standard plans lack company profiles, price lists, and payment terms.

Expect NPR 150,000 to NPR 400,000 (USD 1,100–3,000) for configuration, theme customization, and testing on an existing Plus store. Complex ERP integrations or custom checkout logic increase costs significantly beyond base setup fees.

Yes, Shopify Plus supports unified stores with separate price lists, catalogs, and payment terms per company profile. This avoids managing duplicate inventory but requires careful theme logic to prevent B2B pricing leakage to retail customers.

Create price lists in Settings > Customers > Company Profiles, then assign quantity breaks or percentage discounts to specific products or collections. Price lists override base store prices automatically when authenticated B2B users browse assigned catalogs.

Native B2B offers integrated company management, net payment terms, and unified inventory without app conflicts. Third-party apps suit lower-tier plans but often create duplicate customer accounts, sync issues, and fragmented order data that complicates fulfillment workflows.

Enable payment terms under Settings > Payments > Manage Payment Terms, then assign them to specific company profiles. Approved companies see invoice options at checkout instead of immediate payment. Overdue invoices appear in admin for manual follow-up and dunning.

Local Nepali gateways typically support only immediate payments, not net terms. Configure bank transfer or custom payment methods for term-based B2B orders while keeping eSewa/Khalti available for prepaid wholesale purchases or mixed retail transactions.

Use catalog assignments within company profiles to control product access. Unassigned products remain invisible to that buyer even if published globally. Combine with metafields for buyer-specific descriptions or minimum order quantities without affecting retail storefronts.

Checkout blocks the order with a configurable message when outstanding balance plus cart total exceeds the assigned credit limit. Admins can manually approve overrides or adjust limits in the company profile without disabling term-based purchasing entirely.

Use custom checkout fields or post-purchase scripts to capture PAN numbers, then generate compliant invoices via Order Printer Pro or custom Liquid templates. Ensure tax settings distinguish between domestic B2B, export, and retail transactions for accurate IRD reporting.

Yes, export customer data including company associations, payment terms, and historical orders via CSV or API. Map legacy tiers to Shopify price lists during import. Test authentication and pricing accuracy before redirecting DNS to avoid disrupting active buyer relationships.

Common causes include unassigned price lists, cached storefront responses, or conflicting discount codes overriding company pricing. Clear theme cache, verify company profile assignments, and test in incognito mode. Check that no automatic discounts apply globally to B2B tags.

Use Shopify’s built-in customer segmentation by company profile or add UTM parameters to B2B-specific marketing channels. Export order data filtered by payment terms or tags for external BI tools. Avoid relying solely on channel attribution since unified stores share session tracking.

Not ideal. Shopify B2B targets physical goods with inventory management. Service firms needing retainer billing, matter-based pricing, or compliance workflows should consider dedicated legal-tech platforms or custom Laravel portals with proper contract and document handling capabilities.

Enforce staff permissions limiting company profile access, enable two-factor authentication for all admin users, and audit login activity regularly. Never expose price list IDs in client-side code. Use Shopify’s native authentication rather than custom login forms to prevent credential harvesting or session hijacking.

Share this article

Quick Contact Options
Choose how you want to connect me: