Thursday, March 31st, 2022
With every project I build, I always have a dilemma as to whether I should build my own checkout page, or use Stripe's.
With One Item Store, I used Stripe's, with Mailoji I used Stripe's, then rolled my own. With Paper Website I built my own.
The reason I built my own checkout page was because Stripe uses a hosted checkout, which can take several seconds to load - especially on serverless backends like Firebase with cold starts.
The checkout is absolutely not the time you want slow loading - hence why I painfully crafted a custom one.
Custom checkouts are also really flexible - you can do account creation on the checkout page, and also add custom features like the gifting feature I added to Paper Website around Christmas.
All this being said, and with a pre-existing checkout template ready to use, I can now confidently conclude that using Stripe Checkout is the best way to go.
It just looks so good, and secure, and you can have so many payment options: Google Pay, Apple Pay, etc.
Things like card error handling and coupon codes are built in; I spent hours building these myself, and they still break sometimes.
With this new project I'm leaning on Stripe for everything: Checkout, receipts, subscription reminders - everything.
I've realised that there are just some things where, as much as I want to build it myself, I'm just going to trust the experts (Stripe) with their pre-built, ultra-optimised experience.
I'm glad I've experienced both sides though.