Stripe still will not onboard new sellers in India who want to charge customers abroad. I hit that wall on my own product, moved to Dodo Payments, and then spent longer than I want to admit getting the billing right.
That work is now a starter kit. KroszKit, Next.js 16, $29.
The hard part was never checkout. It was everything after it. Webhook signatures. Retried deliveries running fulfilment twice. A card in retry looking identical to a cancellation unless you handle it on purpose. Generated code gets that last one wrong constantly, because Dodo is new enough that models fall back on Stripe patterns. It compiles, the tests pass, and you still lose money.
So the kit ships that path written by hand and covered by 81 tests. Checkout, customer portal, verified webhooks with replay protection, the subscription state machine, dunning aware gating, one time purchases.
It is not demo code. The billing layer was taking real payments at my startup before I pulled it out.
The store selling it runs on it. Same checkout route, same webhook pipeline, same receipt email. You pay, put in your GitHub username, and the repo invite shows up in seconds. After that, updates are git pull.
$29 now, $39 at v1.0. Five seat team license is $99.
marketplace.kroszborg.co
First thing I have ever charged money for, so tell me what is broken.
Link
KroszKit: Ship a paid product this weekend
Dodo-first Next.js starter kits for indie hackers. Billing, auth, transactional email, blog and docs wired up and tested. Buy the kit, keep the repo, ship this weekend.
marketplace.kroszborg.co