SolutionsFeaturesPricingBlogDocumentationGet startedGet started
← Back to blog

Agency vs. Merchant of Record on Shopify

By Paul8 min read
Agency vs. Merchant of Record on Shopify

Agency vs. Merchant of Record on Shopify

Payment models, fund holding, and currency flows for multi-vendor marketplaces.

Overview

When building a multi-vendor marketplace on Shopify, one of the first decisions is choosing between two legal models: Merchant of Record (MoR) and the Agency model. This choice affects how VAT is handled and how the payment flow is set up.

Agency Merchant of Record
Legal seller Vendor Marketplace
Payment owner at checkout Vendor (marketplace cannot hold funds at any time) Marketplace
VAT / tax liability Vendor’s responsibility Marketplace’s responsibility
Conclusion Payment flow is more complex, but regulatory burden is significantly lower Payment flow is simpler, but the marketplace must manage VAT responsibilities

What is a Merchant of Record?

In the MoR model, the marketplace is the legal seller. It collects payments in its own name, handles VAT, refunds, and chargebacks, then pays vendors as suppliers after deducting its commission. The buyer’s contract is with the marketplace, not the vendor.

What is the Agency Model?

In the agency model, the marketplace acts as an intermediary. The vendor is the legal seller; the buyer’s contract is with the vendor. The marketplace facilitates the transaction and earns a commission, but never legally owns the funds.

Both models run at scale, and you can tell them apart by who takes the money. Amazon and Etsy collect the buyer’s payment themselves and remit sales tax or VAT under marketplace-facilitator rules, the MoR shape. Classifieds marketplaces like Craigslist and Gumtree sit at the far agency end: the buyer deals with the seller directly and the platform never enters the payment flow at all. Most Shopify marketplaces land on the MoR side simply because Shopify Payments puts the funds in the marketplace’s account.

Setting Up a MoR Model on Shopify

This is the standard Shopify setup.

  • The marketplace collects all payments through Shopify Payments, which processes transactions in any currency.
  • Once funds are in the marketplace account, the marketplace can send vendor payouts through any payment system (e.g. bank transfers, Stripe).
  • Garnet Marketplace can help automate these vendor payouts.

The marketplace is responsible for all downstream compliance: VAT registration and remittance in each market it sells into, chargeback handling, and refund processing.

Setting Up an Agency Model on Shopify

This is not the standard model on Shopify. Several constraints define the agency model setup:

  1. The marketplace cannot hold buyer funds at any point. Doing so constitutes money transmission, a regulated activity under PSD2 in the EU/UK that requires a Payment Institution licence.
  2. Shopify Payments cannot be used, as it routes all funds to the marketplace’s bank account, making the marketplace the payment owner, which conflicts with the agency model.

A third-party payment provider is therefore required:

  • Either use a payment system of your choice outside of Shopify (e.g. Stripe), which requires rebuilding the entire checkout.
  • Or use a payment system that integrates natively with Shopify’s checkout (e.g. Adyen, Airwallex, Mollie).

Here is a summary of the different options:

Summary

Custom checkout Shopify-native
Stripe Adyen Airwallex Mollie
Agency model compliant Yes Yes Yes Yes
Shopify native No Yes Yes Yes
Multi-currency checkout Yes Yes No No
Multi-store needed? No No Yes Yes
Development cost High Medium Low Low
Overall cost High High High Low
Recommended size ~$10M+ ~$10M+ ~$10M+ Any

Stripe Connect (Custom Checkout)

Stripe Connect supports the agency model via Destination Charges or Separate Charges and Transfers: funds are held in Stripe’s regulated infrastructure, then released to vendor accounts after a configurable delay (up to 90 days). This gives full control over escrow logic, multi-currency processing, and vendor onboarding.

However, Stripe is not permitted as a native Shopify payment method. Using it requires rebuilding the entire checkout outside of Shopify via the Payment Apps API.

Advantages

  • Full multi-currency processing, buyers can pay in their local currency
  • Delayed payout up to 90 days (manual trigger via API)
  • Automatic refund reversal on vendor share
  • Maximum control over fund routing and vendor onboarding

Constraints

  • Not natively compatible with Shopify, full checkout rebuild required
  • Significant investment required for development

::: warning Development cost Using Stripe for an agency model on Shopify is technically possible but requires rebuilding the checkout outside Shopify. This is a significant investment that most marketplace operators choose to avoid at an early stage. :::

Adyen (Shopify Native)

Adyen is the only third-party provider that Shopify natively supports for true multi-currency processing at checkout on a single store, buyers pay in their local currency without a store-per-currency setup.

Advantages

  • True multi-currency checkout on a single Shopify store
  • No custom checkout rebuild required
  • Enterprise-grade fraud prevention and compliance tooling
  • Supports split payments and delayed payouts

Constraints

  • Enterprise-oriented: Adyen recommends a minimum of ~$10M in annual processing volume
  • Complex onboarding and verification process
  • Higher cost structure than Airwallex or Mollie at lower volumes

Airwallex (Shopify Native)

Airwallex integrates natively with Shopify and supports the agency model via a delayed routing / holding account mechanism: the PSP collects funds, holds them in its own regulated infrastructure (not the marketplace’s account), and releases them to vendor accounts when the platform triggers the payout. This keeps the marketplace outside the flow of funds.

::: warning Enterprise pricing Airwallex is an expensive option. Its marketplace/holding-account capabilities are aimed at larger operators, and it only becomes worthwhile at scale — typically around ~$10M+ in annual revenue. Below that threshold, Mollie is the more economical choice. :::

::: warning Multi-currency checkout limitation Other third-party gateways including Airwallex do not support multi-currency processing at checkout on Shopify. Customers can see local prices while browsing (via Shopify Markets), but the final checkout converts back to the store’s base currency.

To offer true local-currency checkout, a multi-store strategy is required: one Shopify store per currency area (e.g. a GBP store for the UK, a USD store for the US), synchronised via an inventory sync app. :::

Advantages

  • Natively compatible with Shopify, no checkout rebuild
  • PSP holds funds (marketplace stays outside money transmission perimeter)
  • Global coverage (180+ countries, 130+ currencies)
  • Handles marketplace currency → vendor currency conversion at payout
  • Delayed payout up to 90 days

Constraints

  • No multi-currency checkout on a single store, buyers pay in the store’s base currency

Mollie (Shopify Native)

Mollie also integrates natively with Shopify and follows the same delayed routing / holding account mechanism as Airwallex. It is particularly well suited for European marketplaces, with native support for local payment methods such as iDEAL, Bancontact, and Klarna.

Advantages

  • Natively compatible with Shopify, no checkout rebuild
  • PSP holds funds (marketplace stays outside money transmission perimeter)
  • Delayed payout up to 90 days
  • Most economic solution

Constraints

  • No multi-currency checkout on a single store, buyers pay in the store’s base currency
  • Europe only

Conclusion

  • International agency marketplace with multi-currency checkout and sufficient scale (~$10M+) → Stripe or Adyen
  • International agency marketplace at scale (~$10M+) willing to run one store per currency area → Airwallex (an expensive option, only worthwhile at this volume)
  • European or budget-conscious agency marketplaceMollie (the most economical solution)

Frequently Asked Questions

Got questions? We've got answers! Check out our FAQ section to find answers to the most common questions about Garnet.

Ask a Question
  • What is the difference between the agency model and merchant of record?

    Under merchant of record the marketplace is the legal seller: it collects payment in its own name, owns VAT, refunds and chargebacks, and pays vendors as suppliers after deducting commission. Under the agency model the vendor is the legal seller, the buyer contracts with the vendor, and the marketplace only earns a commission without ever legally owning the funds. Merchant of record gives you a simpler payment flow and a heavier regulatory burden; the agency model reverses that trade-off.

  • Can you run an agency model marketplace with Shopify Payments?

    No. Shopify Payments routes every payment to the marketplace bank account, which makes the marketplace the payment owner and contradicts the agency model. You need a provider that holds the funds itself: Adyen, Airwallex or Mollie integrate natively with Shopify checkout, while Stripe requires rebuilding the checkout outside Shopify.

  • Why can a marketplace not hold buyer funds in the agency model?

    Holding a buyer payment on a seller behalf is money transmission, a regulated activity under PSD2 in the EU and UK that requires a Payment Institution licence. The money therefore has to sit in the regulated infrastructure of a payment provider until the payout is triggered, never in the marketplace account.

  • Which payment provider is best for an agency marketplace on Shopify?

    Mollie for European or budget-conscious marketplaces, as it is native to Shopify, supports delayed payouts up to 90 days, and is the most economical option. Adyen or a custom Stripe checkout when you genuinely need multi-currency checkout and process around $10M or more a year. Airwallex also works at that scale if you accept running one store per currency area.

  • Does the agency model support multi-currency checkout on Shopify?

    Only with Adyen, the one third-party provider Shopify natively supports for true multi-currency processing on a single store, or with a custom Stripe checkout. Airwallex and Mollie convert back to the store base currency at checkout, so local-currency checkout means running one Shopify store per currency area, synchronised with an inventory sync app.

Book a meeting with us

Schedule a free consultation to discuss your marketplace project and see how Garnet can help you launch and scale.
Our calls are available in English and French.

Or write us an email directly at contact@nospam.garnetmarketplace.com.invalid

ResourcesNewsletter

Get updates on Garnet features.

Garnet Marketplace logo