Merchant of Record vs Your Own Stripe Account: How to Sell Software Licenses (and Handle VAT)
Merchant of record or your own Stripe account? How each model handles VAT, fees, payouts and license key delivery for indie software sellers.
The short version of merchant of record vs Stripe is not “easy checkout versus hard checkout.” It is a choice about who legally sells the software to the customer. With a merchant of record (MoR) such as Paddle or Lemon Squeezy, that provider is the seller on the receipt and takes responsibility for indirect tax on the transaction. With your own standard Stripe account, your company is the seller, the customer pays you directly, and the tax obligation remains yours—even if Stripe Tax helps calculate, collect, or file it.
What “merchant of record” actually means
A merchant of record is not merely a payment processor. It buys or resells the digital product in a structure where it becomes the customer-facing seller for the transaction. That lets it take on responsibilities such as calculating and remitting VAT, GST, or sales tax, issuing compliant receipts, handling payment disputes, and supporting billing questions.
Paddle describes itself as the legal reseller and therefore responsible for collecting and paying VAT and tax. Lemon Squeezy says it assumes tax collection and calculation liability and files and pays those taxes on the seller's behalf. You receive a payout from the MoR rather than each customer's payment settling directly into your own merchant account.
Selling through your own Stripe account: what you own
With ordinary Stripe Payments, Stripe processes the payment, but you remain the seller. Your company name, policies, registrations, invoices, refunds, and tax compliance stay in the foreground. Customer payments settle into your Stripe balance rather than arriving as a periodic supplier payout from an MoR. That gives you more control over pricing, branding, customer data, and cash flow, and usually a lower base processing fee—but it also leaves more operational work with you.
Stripe Tax can calculate rates, validate tax IDs, monitor obligations, and—depending on the selected product and country—assist with registrations and filings. Standard Stripe Payments plus Stripe Tax is still your tax operation. Stripe's separate Managed Payments product is an MoR offering; when comparing “MoR vs Stripe,” make sure you mean ordinary Stripe Payments rather than Stripe's own MoR option.
EU VAT, OSS, and US sales tax in plain terms
For cross-border B2C services in the EU, VAT is generally charged at the customer's destination rate. The EU One Stop Shop (OSS) lets an eligible seller register through one member state's portal, submit one return, and make one payment covering those EU consumer sales instead of registering separately in every member state.
If you sell through an MoR, the provider handles the customer transaction's indirect-tax side for the jurisdictions and products it covers. You still need to account correctly for the payout income and your own business taxes, so “the MoR handles VAT” does not mean “you no longer need an accountant.”
US sales tax follows a different system. Whether you must register can depend on economic nexus thresholds in each state, and the taxability of downloaded software or SaaS is not consistent from state to state. A tax engine can monitor thresholds and calculate the right result once configured, but an own-Stripe seller still owns the registrations, filings, remittance, and any advice needed to classify the product correctly.
If you use your own Stripe account, software can help with the workflow, but responsibility does not disappear. Your checklist can include:
- determining where you have an obligation to register;
- collecting enough evidence of the customer's location;
- charging the destination-country rate for B2C sales;
- validating VAT IDs and applying reverse charge where the rules allow it;
- issuing compliant invoices and credit notes; and
- filing, remitting, reconciling, and retaining the required records.
Cost, control, and customer data
| Question | Paddle / Lemon Squeezy | Your own Stripe account |
|---|---|---|
| Seller of record | The MoR | Your company |
| VAT / sales tax liability | Handled by the MoR for covered sales | Yours; Stripe Tax can automate parts of the workflow |
| Funds | Provider pays you on its payout schedule | Charges settle to your Stripe balance |
| Customer relationship | MoR appears as seller and controls parts of billing support | You own the direct sale, policies, and support relationship |
| Headline fee | Paddle: 5% + 50¢; Lemon Squeezy: 5% + 50¢, with some additional fees | Varies by country and payment method; tax products are priced separately |
| License delivery | May be built in or connected by webhook, depending on provider and licensing needs | You connect successful payment events to your licensing system |
Paddle publishes 5% + 50¢ per checkout transaction, including payments, billing, tax compliance, fraud protection, chargebacks, and payment-related buyer support. Lemon Squeezy starts at 5% + 50¢, but documents additions such as 1.5% for international or PayPal transactions and 0.5% for subscription payments.
Stripe pricing depends on the country of your account and the customer's payment method. For a Croatian business, for example, Stripe currently lists 1.5% + €0.25 for standard EEA cards, with higher rates for premium, UK, and international cards. Stripe Tax Basic lists 0.5% for no-code tax calculation on transactions where you are registered to collect; registration and filing are separate unless you use a broader plan or partner service.
That does not make one side automatically cheaper. An MoR fee bundles work and liability you would otherwise handle internally or buy separately. Stripe's lower processing rate looks better if you already have an accountant, registrations, tax operations, billing support, and a licensing backend. It looks less complete if “we will deal with VAT later” is the plan.
Account approval and payout risk
No payment route guarantees permanent approval or instant access to every euro earned. An MoR must be willing to become the legal seller of your product, so it reviews the business, website, product category, refund policy, and risk profile. Paddle requires domain, business, and identity checks before acting as the MoR. A rejection can block launch on that provider even when the software itself is legitimate.
Your own Stripe account removes the separate MoR product-approval layer, but it does not remove processor risk. Card processors still perform verification, monitor disputes and refunds, and may place a temporary reserve on part of a balance. Stripe documents reserves as temporary holds sized to a business's risk. Whichever model you choose, keep exportable customer and entitlement records, avoid making the payment provider your only source of truth, and maintain enough cash buffer for delayed payouts or refunds.
How license delivery works in each model
A successful checkout tells you money moved. It does not, by itself, define what the buyer may run, on how many devices, for how long, or what happens after a refund or failed renewal.
A production license-delivery flow should answer at least these questions:
- Fulfillment: which verified payment event creates the license, and how is that operation made idempotent when the webhook is retried?
- Entitlements: which product, version, features, activation limit, and expiration does the purchase grant?
- Delivery: does the buyer receive a key by email, through an account, or both—and can they recover it safely later?
- Enforcement: can the app validate online, survive a temporary outage, and prevent one key from being shared indefinitely?
- Lifecycle: what happens after a refund, chargeback, cancellation, failed renewal, plan change, or device replacement?
Lemon Squeezy advertises automatic license-key issuance as part of its commerce product. That can be ideal when its key model matches your app. With Paddle or your own Stripe account, you will commonly connect payment webhooks to a dedicated license service. Either way, test the whole lifecycle—not only the happy path where checkout succeeds once.
Refunds and failed renewals need deliberate rules too. A payment reversal should not accidentally delete audit history, and one failed subscription attempt may deserve a grace period rather than immediate lockout. The practical design is event-driven: verify the provider's webhook, update the order and entitlement idempotently, and then revoke, expire, or preserve the license according to your policy. See the failed-payment lifecycle guide and the webhook reference for the implementation side.
A simple decision checklist by stage
Your first sale
An MoR is usually the shortest route when the alternative is delaying launch while you learn multi-jurisdiction tax. Confirm that the provider accepts your exact product category and that its licensing features cover your activation model before committing.
Your first 100 customers
Re-run the economics with real numbers: average order value, customer countries, refunds, support time, and the actual extra fees on your payment mix. If demand is proven and the MoR fee is now materially larger than accounting and tax operations, an own-Stripe path becomes easier to justify. Plan migration and entitlement exports before—not after—you need them.
A B2B or invoice-heavy product
Direct Stripe ownership can be especially useful when customers expect quotes, purchase orders, custom terms, VAT IDs, consolidated invoices, or negotiated renewals. An MoR can still work, but confirm that its invoicing flow and seller-on-receipt model fit the procurement process. For the license itself, decide whether you sell perpetual or subscription access independently of the payment provider.
Do not choose from the percentage alone. Price a complete system: payment processing, tax calculation, registrations and filings, fraud and disputes, invoices, subscription operations, customer support, license delivery, and license enforcement. The “cheaper” column can switch as your geography, average order value, refund rate, and internal capabilities change.
Selling with your own Stripe and PermitCore Store
PermitCore Store is the your-own-Stripe path. You connect your Stripe account, payments settle directly to you, and PermitCore takes 0% commission on Store sales. A verified Stripe webhook turns the completed checkout into an encrypted license, links it to the buyer's account, and applies the product's activation and entitlement rules.
The Store supports country-specific tax rates, customer-facing tax breakdowns, VIES VAT-number validation, B2B reverse-charge handling, and downloadable invoices. It is deliberately not a merchant of record: your company remains the seller and is responsible for choosing correct rates, registrations, filings, remittance, and professional tax advice. PermitCore handles the storefront-to-license lifecycle; it does not pretend that tax calculation alone transfers legal responsibility.
- Create the product and choose its license model, activation limit, features, and expiration.
- Connect your Stripe keys and configure the verified Store webhook.
- Publish one-time or recurring prices, tax rates, invoice details, and the storefront design.
- Run a test checkout and confirm the order, customer account, license, invoice, refund, and failed-payment paths—not only the payment screen.
If that ownership model is what you want, see the Store setup guide, the step-by-step Store walkthrough, or the checkout-to-license architecture. The newer Store 2.0 overview shows the buyer experience and Shop Designer. If you would rather outsource the seller-of-record role, Paddle, Lemon Squeezy, or FastSpring may be the more appropriate choice—and that is a perfectly rational trade.
Build your first licensed product without building a license server.
Create a free PermitCore account, issue a test license, and validate it from your application.