Guides & How-Tos12 min read

Ecommerce LMS: Sell Inside Your LMS or Bolt On a Store

A $300 certification seat loses $9.00 to Stripe’s card rate, or $15.00 through a Shopify Basic store on a third-party provider. Both routes priced, plus company invoices, tax and the one-seat refund test.

Onur Öztürk
Co-Founder
A cart tray carrying one block beside a single disc, standing for selling a course where you deliver it

Every sale on an ecommerce LMS pays two fees: the platform’s cut and the payment processor’s charge. Bolt a separate store onto the LMS and a third fee often joins them. For a training provider selling certification seats to delegates by card and seat blocks to companies by invoice, that stack moves your margin more than any feature list, and a learning management system with ecommerce built in usually keeps more of each sale when clients can pay the way its checkout expects. This guide prices one $300 seat through each route, then shows where company buyers, refunds and tax change the answer.

Running a workshop you could sell as a course? See how to sell it without a sales commission.

Key Takeaways

  • A $300 seat paid with a US card loses $9.00 at Stripe’s standard 2.9% + 30¢, even on a platform that charges no fee of its own.
  • A Shopify store that takes payment through a third-party provider pays Shopify another 2% of each sale on Basic, 1% on Grow, 0.6% on Advanced and 0.2% on Plus.
  • Delegates paying with a foreign card cost 1.5% more at Stripe, plus 1% when the currency converts.
  • Company clients want an invoice. Stripe Invoicing charges 0.4% per paid invoice on its Starter plan, and Docebo’s Training Credits are the one procurement mechanism an LMS in this guide names.
  • A refund should remove one delegate’s access and leave the completion and certificate they already earned on record.

What One Sale Costs on an Ecommerce LMS

Every sale pays two parties. The platform may take a cut for running the checkout, and the payment processor takes a fee for moving the money. A vendor that says it “charges no fees” has removed the first line and said nothing about the second.

The strongest LMS checkouts say so in their own words. Docebo says its eCommerce app “does not charge fees on your transactions”, then adds that sales through third parties such as Shopify or Stripe follow that vendor’s terms. Absorb LMS says transactions are “entirely free of any commission to us” and offers over 70 payment gateways, each with its own rate.

Stripe’s standard rate for a US card is 2.9% + 30¢ per successful transaction. That’s the floor under most of these checkouts. Here’s what a $100 course sale leaves you, at the rates each vendor publishes.

Platform and plan Platform’s cut Processing on a $100 US card sale You keep
Docebo eCommerce app None Your gateway’s rate ($3.20 at Stripe’s standard rate) $96.80
Absorb LMS eCommerce None Your gateway’s rate ($3.20 at Stripe’s standard rate) $96.80
Thinkific, every self-serve plan No separate cut 2.9% through Thinkific Payments $97.10
Kajabi Basic None 2.9% + 30¢ through Kajabi Payments $96.80
LearnDash None listed: a yearly license for your own WordPress site Stripe or PayPal at their own rate $96.80 at Stripe’s standard rate
LearnWorlds Starter $5 per enrollment 2.9% + 30¢ passed through $91.80
Teachable Starter 7.5% 2.9% + 30¢ $89.30

Three rows depend on details the table can’t show:

  • Thinkific quotes a flat 2.9% on its pricing page. Ask whether a fixed per-card fee applies where you sell, because 30¢ on top would leave you $96.80.
  • LearnWorlds drops the $5 enrollment fee on every plan above Starter.
  • Teachable shows “0%” with an asterisk on its higher plans, so ask what the footnote covers before you model it as zero.

The floor also moves with where your delegates live. Stripe adds 1.5% for international cards and another 1% when the currency has to convert. A $300 seat that costs $9.00 to take from a US card costs $13.50 from a foreign card and $16.50 with conversion.

Before you compare subscriptions, price one sale on every platform you’re considering: the platform’s cut, the processor’s fee and the foreign-card uplift if you train abroad. A “no fees” claim removes one line, never both. The subscription side of the bill is its own calculation, covered in what a platform charges you before a single sale.

The Third Fee a Bolt-On Store Adds

A bolt-on store moves checkout into shop software, and every purchase then has to create an enrollment in the learning management system that delivers the course. That connection is a setup job with upkeep. The fee that comes with the store is easier to miss.

Shopify charges its own transaction fee when a store takes payment through a third-party provider instead of Shopify Payments, its in-house processor. That fee sits on top of whatever the provider charges. It’s 2% on Basic, 1% on Grow, 0.6% on Advanced and 0.2% on Plus.

Here’s a worked example. A training provider sells a $300 certification seat, 40 seats a year, through a Shopify store. The store’s third-party provider charges the same 2.9% + 30¢ as Stripe.

Shopify plan Extra fee per $300 seat Total fees per seat Extra fees on 40 seats ($12,000)
Basic (2%) $6.00 $15.00 $240
Grow (1%) $3.00 $12.00 $120
Advanced (0.6%) $1.80 $10.80 $72
Plus (0.2%) $0.60 $9.60 $24

Sold through an LMS checkout with no platform cut, those 40 seats cost $360 in processing. Through Shopify Basic with a third-party provider they cost $600, and the store plan and the app that connects the store to your LMS come on top.

So add Shopify’s third-party fee as its own line before you compare a store quote with an LMS checkout. If the store can use Shopify Payments, get that rate in writing and price it instead. A higher plan cuts the percentage, so set any difference in plan price against your yearly third-party sales before you upgrade to save on fees.

Sell Inside the LMS or Store-First: Decide by Who Pays

There are three ways to sell a course: the LMS runs checkout, a store runs checkout and tells the LMS who bought, or a marketplace sells it for you. The short version of all three, with who owns checkout in each, is in our guide to connecting an LMS to the systems around it. The choice between the first two comes down to who’s paying, not to which vendor lists more gateways.

The two routes aren’t always exclusive. Absorb LMS has its own eCommerce module, and its page says you can also “integrate other third-party eCommerce platforms–or even an eCommerce module you built yourself.” On a platform like that, you can start inside the LMS and add a store later.

Use these rules:

  • Sell inside the LMS if the course is the product and most seats are bought by delegates with their own card: one checkout, one learner record, no store fee.
  • Go store-first if training is one line among many things your business sells, such as books, kits or event tickets, and your finance team already runs the store. Budget the third-party fee (or the Shopify Payments rate), the connector app and a second system to reconcile every month.
  • Put the invoice path first if company clients bring in most of the revenue. The checkout then matters less than how fast you can enroll a named group once a payment lands.

If you haven’t settled who runs the platform itself, decide who hosts your LMS first. On a self-hosted system, the checkout is one more thing your own team has to patch and secure.

When the Buyer Is a Company, Not a Delegate

A delegate pays with a card. A client company usually sends a purchase order and asks for an invoice, and a card checkout has no step for either. That gap shows up the first time a client wants 20 seats.

Docebo is the one LMS in this guide that names a mechanism for it. Its Training Credits exist to “streamline budgeting and procurement approvals with virtual credits, so your customers can buy and access learning content without the back-and-forth.” For you, the question is whether a client can approve one budget and let its managers spend it on seats, instead of raising a purchase order per course.

Without credits, the invoice goes out some other way. You can raise it from your own accounting tool and enroll the delegates by hand, or send it through your processor. Stripe Invoicing charges 0.4% per paid invoice on its Starter plan, and Stripe’s payment fees still apply to whatever method the client uses. On a 20-seat block at $300 a seat, that’s $24 on a $6,000 invoice.

Stripe lists no cap on that rate and tells businesses with large invoice amounts to talk to its sales team. A capped fee belongs to a different product. If the client pays by card at checkout and only needs an invoice for its records, Stripe’s post-payment invoice costs 0.4% with a $2.00 cap per invoice.

Settle three questions before a client raises them mid-contract:

  1. How does a company pay for 20 seats? Credits, an invoice the platform creates, or an invoice you raise before enrolling named delegates. Get the steps in writing.
  2. Who calculates and collects the tax? Docebo lets you set taxes manually, show prices with or without tax, or use its Stripe tax integration to calculate and collect them automatically. Stripe’s no-code Tax Basic service costs 0.5% per transaction where you’re registered to collect, or $1.50 on a $300 seat. Tax support that names no service isn’t an answer.
  3. Where does the card data go? PCI DSS, the PCI Security Standards Council’s standard, applies to every business or service provider that stores, processes or transmits cardholder data. Ask whether card details reach the LMS vendor’s servers or go straight to the processor’s payment form, and which part of that flow a “PCI compliant” claim like Absorb’s covers. It’s one line item among the 18 that checking a vendor’s security should cover.

If company clients bring in more of your revenue than individual delegates do, choose the platform on the answer to question one, not on its card checkout.

The Refund That Has to Touch Only One Seat

A refund, a chargeback or a failed renewal should remove access. It shouldn’t delete the completion or the certificate the delegate already earned, because those are two different records. Treat them as one and you either leave a paid-up delegate locked out or wipe a certificate a client needs as proof of training.

For a training provider, the harder case is partial. A client buys 20 seats, then cancels one delegate in week three of a six-week cohort. The fix has to reach that single seat: one person loses access, the other 19 carry on, every certificate already issued stays on record, and the client’s invoice gets a credit for one seat.

Chargebacks carry their own price. Stripe charges $15.00 for each dispute you receive and another $15.00 for each dispute you respond to manually, so a contested chargeback on a $300 seat costs $30 before the $300 itself is settled. Teachable publishes the same flat $15 chargeback fee. Some platforms also set refund terms for your buyers: Teachable’s Terms of Use give students who buy through its own payment gateways a 14-day refund window.

Run this test with a trial account before you sign:

  1. Sell one seat to a test delegate, and let them finish a module and earn a certificate.
  2. Refund the sale, then check that access is gone and the completion and certificate remain.
  3. Enroll three test delegates as one company purchase, cancel one seat, and check the other two are untouched.

A purchase is easy to show off. The reversal is the part to watch, so add these three steps to the questions you make a vendor answer live.

Confirm the Basics Before You Compare Vendors

Three checkout features are the floor, and a platform missing one is behind, not different. The wider feature list sits in which LMS features you’ll use in year one.

  • Local currency. Absorb offers to “charge your global customers in their local currency”. Selling abroad, ask which side pays the conversion fee.
  • Bundles and discounts. Docebo sells “single courses or full subscriptions” with “bundles, discounts, and memberships”; Absorb offers discounted bundles and coupon codes. A certification path sold as three courses needs a bundle price.
  • Subscriptions. A yearly recertification program is easier to sell as a renewal than as a new purchase each year. Check that a failed renewal triggers the same one-seat access rule as a refund.

Tick these three off in the first call, and spend the demo on fees, company buyers and refunds.

Where Mini Course Generator Fits

Mini Course Generator is our product, and it sits at the sell-inside-the-LMS end: a pay-wall Gateway in front of the course and a landing page builder to sell it from. You can try Mini Course Generator free and price a real sale through it before you commit.

Its position on the platform’s cut is plain: “We do not cut any sales commissions (we do not even have access to your sales data) and the funds are transferred instantly to your account.” There are no transaction fees either. That covers the platform line of the stack, so confirm at setup which payment account the money lands in and what that provider charges.

The limits matter for a training provider. There’s no Shopify, WooCommerce or BigCommerce connector, so the bolt-on store route isn’t available, and there’s no training-credit or invoice checkout for company buyers. For a client block, raise the invoice from your own accounting tool, then admit the named delegates through the specific-learners Gateway. Magic links give them password-less access.

Price a Client’s Seats Before You Pick a Checkout

Take last year’s sales and split them four ways: card or invoice, domestic or foreign. Run each group through the fee stack on both routes, including Shopify’s third-party fee on a bolt-on store and the invoice fee on company blocks. If card seats from individual delegates carry the revenue, sell inside the LMS. If company invoices carry it, choose the route with the shortest path from a paid invoice to an enrolled group.

Then run the one-seat refund test before you sign anything. When the numbers point inside the platform, you can pay-wall your course and admit a client’s named delegates from the same place.

Frequently Asked Questions

Is an LMS with ecommerce cheaper than Shopify plus an LMS?

On fees, usually yes. A built-in checkout with no platform cut leaves only the processor’s fee. A Shopify store on a third-party provider adds Shopify’s own fee on top, from 2% on Basic down to 0.2% on Plus, and the store plan and connector app cost extra.

Can an LMS take purchase orders or invoices?

Some can. Docebo offers Training Credits for budgeting and procurement approvals. Elsewhere, raise the invoice yourself or through your processor, then enroll the client’s delegates once it’s paid.

Do “no transaction fee” platforms still charge processing?

Yes, through the processor. “No fee” means the platform takes no cut, and the card processor still charges its own rate. Ask every vendor for both numbers, in writing.

What happens to a certificate when a delegate gets a refund?

It should stay. A refund removes access to the course, while the completion and certificate are a separate record. Check it in a trial account before you launch.

How do I sell training to delegates in other countries?

Show prices in local currency if the platform supports it, and budget a higher card fee. Stripe adds 1.5% for international cards and another 1% when the currency converts.

Sources

Vendor pricing and product pages read September 2026.

  • Stripe pricing: US and international card rates, currency conversion, dispute fees, Stripe Tax and post-payment invoices
  • Stripe Invoicing pricing page: per-invoice rates, how payment fees apply and large invoice amounts
  • Shopify pricing: third-party payment provider fees by plan
  • PCI Security Standards Council: PCI DSS scope
  • Docebo eCommerce product page: transaction fees, gateways, Training Credits, tax options, bundles and subscriptions
  • Absorb LMS eCommerce feature page: commission, gateway count, third-party platforms, PCI claim, local currency, bundles and coupons
  • Thinkific pricing page: Thinkific Payments rate
  • Teachable pricing page and Terms of Use: Starter transaction fee, processing rates, chargeback fee and the student refund window on its own payment gateways
  • Kajabi pricing page: Kajabi Payments rates
  • LearnWorlds pricing page: Starter enrollment fee and processing pass-through
  • LearnDash product page: yearly site license and Stripe and PayPal payment integrations
  • Mini Course Generator monetization page and pricing FAQ: sales commission and transaction fees

Start creating mini-courses today

Build interactive, AI-powered mini-courses in minutes — free to start.