Shopify Migration & Stripe: Unpacking Your Custom B2B Workflows in a Walled Garden

Hey everyone! I recently saw a really interesting discussion pop up in the Shopify community, and it's a classic dilemma that many growing businesses face when considering a move to Shopify: how do you handle deeply integrated, custom Stripe workflows when Shopify really wants you to use Shopify Payments?

The conversation, started by Andrew_Mayhall, perfectly encapsulated this challenge. Andrew's business, running for 8+ years on Squarespace, had built its entire B2B and reseller operations around a custom Stripe account. With two full-time developers and about $1M in DTC revenue, their reliance on Stripe's direct API access and custom tooling was non-negotiable. But when they looked at Shopify, they hit a roadblock: Shopify Payments. While Shopify Payments is powered by Stripe under the hood, it doesn't give merchants the same direct control, dashboard access, payment_intent IDs, or webhooks that a direct Stripe account offers. Andrew felt like he was facing a "walled garden," and frankly, it's a sentiment I hear often.

The "Walled Garden" Reality Check: Shopify Payments vs. Your Stripe

Andrew's experience trying to get an exception from Shopify support isn't uncommon. As one community member, Hasidop, pointed out, "You’re not doing anything wrong, Shopify just won’t allow external gateways in native checkout, no matter your history." This is especially true for US-based stores on standard plans. Shopify's preference for Shopify Payments is strong, and it comes with implications for businesses with complex, existing payment logic.

The core issue isn't that Shopify Payments is bad; it's that it abstracts away the direct Stripe control that businesses like Andrew's have come to rely on for their custom APIs and workflows. If your current reseller tooling keys off Stripe events directly, you're going to need a new strategy.

Navigating Your Options: Paths for Stripe-Dependent Migrations

The community discussion highlighted a few viable paths, each with its own trade-offs, depending on your business size and what's truly non-negotiable for you.

Path 1: The Split Processor Strategy

This is often the cleanest initial approach. Lumine, another helpful community member, suggested: "Keep Shopify DTC on Shopify Payments, keep B2B and resellers on your current Stripe account."

  • How it works: Your direct-to-consumer sales go through Shopify Payments, leveraging its seamless integration with Shopify's checkout. Your existing B2B and reseller operations, which rely on your custom Stripe tooling, continue to run on your standalone Stripe account.
  • Pros: You maintain full control over your critical B2B workflows without rebuilding. It's often less disruptive.
  • Cons: You lose some reporting unification, as your payment data lives in two separate systems.

This path makes particular sense if your B2B flow isn't going through the Shopify checkout anyway, or if your custom B2B tools are robust enough to operate independently.

Path 2: Embracing Shopify Plus and its B2B Power

Andrew mentioned they were already looking at Shopify Plus, and this is where a lot of the magic can happen for B2B needs. Lumine brought up some fantastic points about Shopify Plus's native B2B features:

  • Native B2B Features: Shopify Plus offers robust features like Catalogs, Price Lists (for custom pricing), MOQ (Minimum Order Quantity) at the variant level, net terms (Net 15/30/60 without upfront card), and quantity rules. It also handles Companies, locations, and assigned buyers, which often form the core of custom B2B tooling.
  • DTC & B2B Graduation Flow: Shopify Plus allows for a "graduation flow" where a customer can have the same record across DTC and B2B contexts. You can tag customers or attach them to a Company, and they'll see DTC pricing or catalog pricing depending on the storefront. Shopify Flow can even automate tagging based on LTV or order count thresholds.
  • Checkout Extensibility: For anything truly needing Stripe-direct (like metered billing or mid-cycle adjustments), Shopify Plus's checkout extensibility can be a game-changer. It allows for more customization within the checkout flow, potentially enabling you to pass metadata back to a separate Stripe flow, without needing a full Stripe Connect setup.

This approach means leaning into Shopify's ecosystem to replicate and even enhance your existing custom B2B tooling, rather than trying to force your old tools into a new platform. Andrew himself noted the appeal of Shopify for custom user pricing, MOQ, and terms, which aligns perfectly with Plus's capabilities.

Path 3: Third-Party Gateway on Shopify Plus

While Shopify strongly pushes Shopify Payments, using a third-party gateway is technically an option, but it comes with significant cost implications on standard plans. Lumine broke down the math:

  • Transaction Fees: On standard Shopify plans, using a non-Shopify Payments gateway incurs a 2% transaction fee. For Andrew's $1M revenue, that's $20,000 annually.
  • Shopify Plus Advantage: On Plus, this fee drops dramatically to 0.15%. At $1M, that's just $1,500 annually. This makes a third-party gateway (like Authorize.net relay, or Stripe if you're outside the US and it's available as a third-party option) much more feasible financially.

Shopify Plus also offers checkout.liquid and checkout extensibility, which are crucial for passing metadata back to your Stripe flow if you go this route. However, remember the hidden cost...

The Webhook Challenge: A Necessary Translation Layer

Regardless of whether you use Shopify Payments or a third-party gateway on Shopify, there's a critical point to remember, even on Plus: "...the checkout emits Shopify order webhooks, not Stripe payment webhooks." If your existing reseller tooling keys off Stripe events directly (e.g., `payment_intent.succeeded`), you will need a translation layer. This means building something that listens to Shopify's order webhooks and then either fetches the corresponding payment details from Shopify's API or triggers your custom Stripe logic based on that order information.

Andrew's frustration with the "esoteric roadblocks" is completely understandable. Moving a business with deep custom integrations is never simple. The community discussion really highlighted that while Shopify has a strong preference, there are strategic paths forward. It boils down to weighing what's most important: retaining absolute direct Stripe control (which likely means custom checkout outside Shopify's native flow), or leveraging Shopify Plus's powerful B2B features to replace some of your custom tooling, even if it means adapting to Shopify's payment ecosystem. It's about finding the right balance between platform benefits and preserving your essential business logic, and sometimes, that means some gritty custom development work to bridge the gap.

Share:

Use cases

Explore use cases

Agencies, store owners, enterprise — find the migration path that fits.

Explore use cases