Sell courses, ebooks, subscriptionswithout platform fees.
For creators, freelancers, and solopreneurs who don't want to give 5-10% of every sale to a middleman.
10 minutes of setup. The rest is just sharing the link.
* Free tier on Vercel + Supabase. Stripe account required (also free to create).

Real backing, not marketing fluff
- Source-available on GitHub — Elastic License 2.0 + commercial license
- 3,500+ automated tests covering checkout, payments, security
- Built by Paweł — 17 years in IT, ex-Roche / IBM / Asseco
- Powered by Stripe — same payments stack as Gumroad, LemonSqueezy
Stripe test mode, no real charges
USE CASES
Who Sellf is built for
If you sell digital goods online, Sellf likely fits
Online Courses
Share video courses with time-limited access. Simple and effective content delivery.
- Protected video embeds
- Access for 30 or 90 days
- Fast video via Bunny.net
Subscriptions & Memberships
Sell recurring access instead of one-time. Monthly, yearly, with or without a trial. Customers cancel themselves and invoices arrive automatically.
- Recurring billing on month, year, or any Stripe interval
- Optional free trial per product
- Customer portal: cancel, resume, update card
Digital Products
Sell ebooks, templates, software licenses, or files. Better than Gumroad with zero commission.
- Instant delivery
- Unlimited products
- Coupon system
Free Products & Sales Funnels
A free ebook collects emails, then you sell a premium course. One-click login from email, no passwords.
- Free products to collect contacts
- No forms, no passwords needed
- All in one database
Pricing
See how much actually stays with you
Drag the slider to compare platform fees at your revenue level.
You save $1,010/mo vs Gumroad
Annual savings vs Gumroad: $12,120
On a $10,000/mo course business you pay ≈ $1,260/mo in Gumroad fees alone.
VPS for ~$6/mo. Stripe takes 3.4%. You pocket the rest.
Yearly difference: $11,800 stays with you.
QUICK START
Up and running in 3 steps
From clone to a working shop in under 10 minutes
* Free path: Vercel + Supabase + Stripe (all free tier). VPS path for commercial production.
Deploy
One-click deploy to Vercel or Netlify (free tier) — or run on your own VPS. Whatever works.
Deploy
One-click deploy to Vercel or Netlify (free tier) — or run on your own VPS. Whatever works.
Connect Stripe
Add your Stripe API keys. Payments go directly to your account. No middlemen.
Connect Stripe
Add your Stripe API keys. Payments go directly to your account. No middlemen.
Start Selling
Create products, set prices, share links. Your store is live.
Start Selling
Create products, set prices, share links. Your store is live.
Deploy
Pick the path that fits you
Three honest options from clone to live shop. Every one tested end-to-end. No marketing magic — what you'll actually click is listed below.
Free accounts you'll need on any path
Stripe
Free, ~2 min to sign up at stripe.com
Supabase
Free tier, ~3 min at supabase.com
Every path above is tested end-to-end — same one-click buttons live in the GitHub README. Pick what fits today; you can move to another later without touching the code.
Checkout walkthrough
Click through the checkout your buyer sees.
Order bumps, coupons via URL, one-time offers — all of it on a single page.
- 1. Product
- 2. Checkout
- 6. One-time offer
- Done
Premium course bundle
Lowest price in last 30 days: $59
License
Pick the tier that fits where you are
Free covers most solopreneurs forever. Pro removes branding and adds power-user features. Business is anything custom — talk to us.
Free
Elastic License 2.0 (source-available). No limits on products, sales, or buyers. Forever.
- Unlimited products
- Unlimited buyers
- Stripe + 26 currencies
- REST API keys
- Webhooks + DLQ + retry
- Payment CSV export
- Hide "Powered by Sellf"
- Save custom themes
- Expanded API scopes
Registered
Free + payment CSV export. Register your install in 30 seconds.
- Unlimited products
- Unlimited buyers
- Stripe + 26 currencies
- REST API keys
- Webhooks + DLQ + retry
- Payment CSV export
- Hide "Powered by Sellf"
- Save custom themes
- Expanded API scopes
Pro
Hide "Powered by Sellf", save custom themes, expand API key scopes.
- Unlimited products
- Unlimited buyers
- Stripe + 26 currencies
- REST API keys
- Webhooks + DLQ + retry
- Payment CSV export
- Hide "Powered by Sellf"
- Save custom themes
- Expanded API scopes
Business
Custom needs, enterprise support, volume licensing — talk to us.
- Unlimited products
- Unlimited buyers
- Stripe + 26 currencies
- REST API keys
- Webhooks + DLQ + retry
- Payment CSV export
- Hide "Powered by Sellf"
- Save custom themes
- Expanded API scopes
FEATURES
Everything you need to sell digital products
Built-in features that other platforms charge hundreds per month for
See your revenue at a glance
Revenue, sales, and trends in one dashboard. 20+ currencies, sales goals, and performance at your fingertips.
Accept payments everywhere
Customers pay without leaving your page. 20+ currencies, guest checkout, bank-level encryption.
Charge customers on a schedule
Sell memberships and recurring access alongside one-time products. Free trials, Stripe-native coupon duration (once, N cycles, forever), and webhooks on every lifecycle event.
Earn 30% more per order
Show an extra offer at checkout. Buyer clicks 'Add' and the order value grows 30-50%.
One-time offer pages
Post-purchase OTO with its own discount and analytics. Connect any product as the upsell.
Switch checkout layout per product
Default, tip jar, or one-time offer (OTO) layout per product. Add custom fields to capture exactly the data you need at checkout.
Run promos that sell
Create discount codes and automatic promos. Set usage limits and expiry dates to protect your margins.
Webhook DLQ + retry
Failed deliveries land in a dead-letter queue with exponential backoff and a one-click replay UI.
Build your audience for free
Offer a free product and collect emails. Buyers log in with one click from email, no passwords. Then sell them premium content.
Validate before you build
Add a waitlist to upcoming products. Capture emails before launch, signups fire a webhook to your mailer (n8n, Make, Listmonk). Signed-in users see their email pre-filled with one-click override.
Pay what you want
Let fans set their own price, with or without a minimum threshold. Higher conversion on lead magnets.
Tip jar
Optional tip step at checkout. Never coercive — buyers stay in control.
Deliver content your way
Serve downloads, redirect buyers to your platform, or embed protected video through the self-hosted Playerstack bundle.
Stay EU-compliant automatically
Sellf automatically tracks price history as required by the Omnibus Directive. Zero manual work.
Create real urgency
Set time or quantity limits. Live countdowns motivate faster purchases.
Turn buyers into repeat customers
After purchase, route buyers through a One-Time Offer or fallback Downsell. Drive return visits with post-purchase coupons. Build a path from first sale to lifetime value.
Handle refunds without headaches
Set refund rules per product, approve requests, handle partial refunds, and trigger signed refund webhooks automatically.
Your keys never leave your server
Stripe credentials stay in your .env file. No telemetry, no external calls. RLS on every table, penetration-tested, with a built-in security audit panel.
Magic-link guest checkout
Buyers purchase without an account. Their purchases auto-claim when they later register with the same email.
Lock premium content
Lock any page behind your Sellf product.
Paste one line on your existing course page. Sellf checks the buyer's access before content shows.
This lesson is for buyers of the Premium course only. Sign in to unlock.
In production, Sellf checks the buyer's purchase before the page unlocks — the snippet works on any of your pages (Astro, WordPress, plain HTML). Protected content stays protected.
Want to lock your premium content? Self-host →
Recurring revenue
How a recurring customer looks over a year.
Watch one subscriber for 12 months. Sellf handles trials, failed-card retries, customer-portal cancellations, and partial refunds.
- TRIAL7-day free trial
- ACTIVEMonth 1
- ACTIVEMonth 2
- ACTIVEMonth 3
- RETRYINGMonth 4
- ACTIVERetry succeeded — payment captured
- ACTIVEMonth 5
- ACTIVEMonth 6
- ACTIVEMonth 7
- ACTIVEMonth 8
- ACTIVEMonth 9
- ACTIVEMonth 10
- CANCELLEDMonth 11
- CANCELLEDPartial refund for unused days
Subscriptions run on Stripe Billing — retries, customer portal, and partial refunds all work out of the box.
Want recurring revenue on your products? Self-host →
PAYMENTS
Tax handling that grows with you
Stripe takes care of most of it. You start simple and only add complexity when your revenue actually demands it.
Merchant of Record
Paddle, LemonSqueezy, Gumroad
- Platform fees: 5–10%
- Customer data belongs to the platform
- Platform risk: account freezes, shutdowns
Sellf + Own Stripe
Direct payments to your account
- Platform fees: $0
- Only Stripe fees: ~2.9%
- You own all customer data
- Self-hosted. No platform risk
Grow into tax handling, not against it
Just starting
Selling under €10,000/yr cross-border in the EU? You only declare VAT in your home country. Nothing extra to do.
Growing
Crossed €10,000/yr cross-border? Register once in EU OSS and flip on Stripe Tax (+0.5%) — VAT calculations become automatic.
Scaling
Optional: hand off accounting to a bookkeeper or switch to Stripe Managed Payments. You decide when.
General info, not tax or legal advice. Talk to your accountant before going live.
DEPLOYMENT
Deploy anywhere, your way
From ~$3/month VPS for hobbyists to production-ready infrastructure
Quick Start
mikr.us (free SSL) or any VPS + Caddy
~$3/mo- PM2 process manager
- Auto SSL included
- Supabase Cloud
- ~130MB RAM footprint
Production
Best price/performance ratio
~$4-14/mo- PM2 or Docker
- Managed database
- Zero-downtime deploys
- 2-core CPU, 8GB RAM, 100GB NVMe
- MCP server (Claude Desktop integration)
Want to see it in action first?
Explore the full admin panel, test checkout with Stripe test cards, and browse sample products. No setup required.
TECHNOLOGY
Built on technology you can trust
Reliable, proven tools for performance, security, and growth
Honest answers
"Yes, but…" — let's talk about your concerns
The fears that stop most people from leaving Gumroad. Here's what actually happens.
"I've never set up a server"
One-line deploy. You paste a command, the server installs itself. Detailed guide for SSL, domain, backups. Most users finish in 10 minutes. If you can paste a command, you can run Sellf.
"What if the server crashes?"
Set up automatic backups once (not complicated — a single cron job or your VPS provider's built-in snapshots). Server dies? Spin up a new VPS, restore from the latest backup — usually 5 minutes. Your Stripe account and payment data stay with Stripe — never lost.
"How much will this actually cost me?"
VPS: 25-50 zł/mo (forever). Stripe: ~3.4% per sale (no subscription). Domain: 50 zł/year. Total: under 700 zł/year regardless of revenue. Save thousands vs Gumroad.
"Is my buyers' data safe?"
Stripe keys never leave your .env file. Database has row-level security on every table. Sellf passed a security audit, has 3,500+ automated tests. Your buyers' data lives on your server, not in someone else's cloud.
Frequently Asked Questions
GitHub Issues →Yes. We provide a one-line deploy script for any modern VPS (DigitalOcean, Hetzner, Mikrus). The provided guide walks through SSL, backups, and domain pointing step by step. If you can copy-paste a command, you can run Sellf.
A VPS that fits Sellf costs $5-15/month (Hetzner CX22, DigitalOcean basic). Stripe charges its normal ~3.4% per transaction. There's no Sellf subscription. Total: roughly $60-180/year of infrastructure regardless of how much you sell.
Set up automatic backups once (not complicated — a single cron job or your VPS provider's built-in snapshots). If your VPS dies, spin up a new one and restore from the latest backup — usually under 5 minutes. Your Stripe account and payment data are never lost (Stripe stores them).
Failed deliveries land in a dead-letter queue with exponential backoff. You see them in the dashboard and can replay any of them with one click.
Yes — Sellf ships an MCP server with 45 tools, 4 resources, and 6 prompts. Add it to Claude Desktop and ask it to list products, refund a payment, or pull analytics.
Sellf records the data and exports CSVs. You stay the Merchant of Record so you keep full control (and your data), and you grow into VAT / OSS handling on your own timeline.
Ready to Start?
Deploy Sellf in 10 minutes. Sell without monthly platform fees.
