Appearance
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.
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:
- 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.
- 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 |
| Recommended size | ~$10M+ | ~$10M+ | Any | 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
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.
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 and sufficient scale → Stripe or Adyen
- International agency marketplace with multi-currency without critical scale → Airwallex (1 store per currency area)
- European agency marketplace → Mollie

