Checkout Extensibility Build
Checkout UI extensions for trust content, delivery choice, gifting and post-purchase upsell. Native, upgrade-safe, and no longer dependent on checkout.liquid.
Plus-tier engineering for Amsterdam brands running several EU markets, a wholesale book, or both out of one admin.
Delivered remotely for brands across Amsterdam and Netherlands.
The Netherlands produces a particular kind of Plus candidate: a brand with a home market of seventeen million people and a real business in Germany, Belgium and France within two years of launch. That shape stresses the parts of Shopify a single-market DTC brand never touches. Markets routing, per-country pricing that is not simply the euro price with a different flag, duties and VAT presented correctly at checkout, and a returns path per country that does not route every German parcel back through Amsterdam because nobody configured a second location.
The other shape is DTC plus wholesale, which is close to the default in this city's apparel, interiors and food trades. You sell direct in the Netherlands, and you sell to buyers who saw you at a trade show and now expect a price list, payment terms and a reorder portal. Native B2B on Plus handles most of that: company profiles, per-company price lists, quantity rules and net terms on the same catalogue and the same inventory as your DTC store. The genuinely EU-specific piece is the intra-community reverse charge, which means a validated VAT number has to change what the buyer is charged. That is a checkout and Functions problem, not a spreadsheet.
Headless comes last and usually gets talked out of the room. Hydrogen on Oxygen is right when you have a content layer heavy enough to justify it or a product configurator Liquid cannot serve, and for a Dutch brand with a strong AMS-IX-fed local audience, the honest answer is that a well-built Liquid theme is already fast enough for the people you are selling to. Where the case does hold, we build it with SEO parity per market, because a headless storefront that loses hreflang has cost you the exact expansion the project was meant to support.
A brand in a big domestic market can postpone the multi-market conversation for years. A brand in the Netherlands cannot, and that changes what Plus is for here. The first genuine constraint is the EU-wide distance-selling threshold: once cross-border B2C sales pass it, you charge each customer their own country's VAT rate and file through OSS, which means the store has to hold the correct rate per market rather than a single Dutch rate applied everywhere. The second is the payment mix. iDEAL is the domestic backbone, Bancontact is what Belgian buyers reach for, SEPA direct debit and pay-on-invoice carry weight in Germany, and each of those needs to be present in the right market rather than in a single global list nobody curated. The third is B2B: an Amsterdam denim or interiors brand exporting to DACH needs VIES-validated VAT numbers to trigger the reverse charge automatically. We build these three as configuration with owners and documentation, not as a one-off setup someone leaves behind.
The same standard of work we run for every client — applied to a Amsterdam brand’s realities.
Full service detailCheckout UI extensions for trust content, delivery choice, gifting and post-purchase upsell. Native, upgrade-safe, and no longer dependent on checkout.liquid.
Custom discount, delivery and payment-method logic written as Functions. Volume tiers, bundle pricing and B2B rules run server-side instead of via three stacked apps.
Company profiles, price lists, payment terms, quantity rules and a self-serve reorder portal. Wholesale and DTC on one catalogue, one inventory, one admin.
Multi-currency, multi-language, market-specific catalogues, domain routing and correct hreflang. Expansion without a store-per-country sprawl.
Hydrogen on Oxygen with the Storefront API, edge caching and streaming SSR. We build this only when the performance or content case is real, and we say so when it isn't.
NetSuite, Business Central, Akeneo or a 3PL wired in through a documented middleware layer with retry logic, error alerting and a reconciliation report.
We do not work off a rate card. Every Amsterdam engagement starts with a fixed statement of work — named deliverables, named dates, one number — written after we have looked at your store, not before. If a smaller first step would serve you better, we will say so.
Get this scopedWe map your systems, order flows and edge cases end to end, then document where data breaks today. Output is an architecture diagram you can hand to any engineer.
Native-versus-custom decision for every requirement, with cost and maintenance load attached. Plenty of requests get answered with a $0 native setting.
Two-week sprints in a dev store with a staged demo at the end of each. You see working software every fortnight, not a status deck.
Peak-traffic simulation, payment-failure paths, partial-sync recovery and a rollback plan. We break it in staging so BFCM doesn't break it live.
Phased rollout, monitoring dashboards and training for ops and finance. Every custom component ships with a README and a named owner.
Anonymised under NDA. Figures pulled from the client’s own analytics.
~$4.2M/yr, 60% subscription revenue, 22 SKUs, US · Shopify Plus (Recharge, Klaviyo)
Monthly subscription churn hit 9.4% and the cancel flow was a single button on a hosted page nobody had touched in three years. Support processed 340 subscription changes a month by hand because customers could not do it themselves. The named constraint: no forced logins. The brand refused to gate account access behind a password reset, which ruled out every off-the-shelf portal.
~$11M/yr, 2,300 SKUs, configurable upholstery, US · Shopify Plus + Hydrogen storefront (Oxygen)
Fabric, leg and size options turned 2,300 SKUs into more than 40,000 variant permutations, and the Liquid theme rendered a configurable PDP in 6.9 seconds on mobile. Collection filtering ran client-side, so 40% of shoppers left before the first product painted. The named constraint: the ERP stayed. It was the single source of truth for stock and lead times and was not up for replacement.
“We sell wholesale into about 400 accounts and were still taking reorders by email like it was 2009. They built the B2B catalog on Shopify with net-30 terms and per-account price lists, and moved our whole rep team onto it in one week. Average reorder went from roughly 20 minutes of back-and-forth to under three.”
“A Hydrogen build plus a NetSuite sync that our own team had failed at twice. Inventory finally matches between the warehouse and the storefront, which sounds boring and is the most valuable thing anyone has done for us this year. LCP went from 4.1s to 1.3s. The honest part: the first six weeks felt slow and I genuinely wasn't sure we'd picked right — it only clicked once we moved to a standing Thursday call with the engineers instead of account-manager summaries.”
Thirty minutes with the strategist who would actually run your account. We screen-share your store, read your data live, and tell you the three highest-value things we can see from the outside.
Prefer to write it out? [email protected] gets a real reply the same business day, Mon-Fri, 9am-6pm MT.