10.2k stars · Apache-2.0 · sdk/1.0.0-alpha.20 (2026-09-04)
Merchant-of-record checkout for software products — the EU VAT problem legally stops being yours.
▶Repo detailsthe review · specs · pros & cons · install
What it is
A billing and checkout platform for software products, open source under Apache-2.0 and run as a hosted service. As merchant of record, Polar is legally the seller: it collects and remits sales tax and EU VAT on your behalf, issues the invoice, and pays you out.
Why it matters
Selling a subscription across borders is not a payments problem, it is a tax-registration problem, and it is the single most common reason a solo founder's paid tier sits at "coming soon" for a year. Polar removes it: you get a checkout link, a customer portal, licence keys, usage-based add-ons and webhooks, and somebody else files the returns. For Grasppy that is the difference between a working Pro tier this weekend and a research project you keep deferring. Set beside Lago (#1) the division is clean — Polar is how you take money now; Lago is how you meter it later, if and when usage-based pricing is worth building.
- Merchant of record: the tax and compliance burden genuinely is not yours, which no self-hosted option can offer.
- Apache-2.0 and shipping constantly — production deploy tags dated today, SDK
1.0.0-alpha.20yesterday. - Checkout, customer portal, licence keys and webhooks work out of the box, with no server to run.
- The code is open; the value is the hosted service. This is a vendor relationship with a percentage attached, not a self-host.
- The SDK is still on
1.0.0-alphatags — expect churn at the integration layer. - A merchant of record owns the payment relationship. Moving away later means re-subscribing every customer by hand.
Set beside Lago (#1) the division is clean — Polar is how you take money now; Lago is how you meter it later, if and when usage-based pricing is worth building.
A checkout link on the Astro pricing page (Ed. 3 #4); a webhook endpoint in FastAPI that flips the account to Pro; the same webhook into n8n to create the Twenty contact and start the Mautic (Ed. 10 #6) welcome sequence.

