Week 2: We added Payments and More to the Starter Kit
During two streams we added stripe subscriptions with webhooks and decorators.
What’s up, Full Cycle Devs?
I’m checking back in after two streams this week. Here are the stats, because everyone likes stats:
Monday, 15 April
Friday, 19 April
Interpretation
So the two streams were noticeably slower/with fewer viewers than last week, but that was to be expected. I didn’t announce much on Reddit this time. Also, I didn’t do a great job informing community members about today’s stream. 😕
Thanks to our new and recurring subscribers, 🇦🇹 chutneyy0 and 🇬🇧 Budbomber!
VODs
As always, recordings are available on YouTube for those in unfortunate time zones or with other commitments. Your interaction does not mean less!
Next Stream
Next stream will be Tuesday, 23 April 2024 · 09:30 - 13:30 GMT+2, so mark that on your calendars!
I still can’t commit to a fixed schedule due to lots of new topics with my upcoming real estate company, with full-day appointments on both Monday and Wednesday.
Progress This Week
This week was all about payments. We researched multiple payment providers and settled on stripe. During 8h streamed (nothing was done off-screen or off-stream), we accomplished the following (and thoroughly talked through):
Evaluate payment providers → go with stripe
Evaluate existing 3rd party packages (like djstripe) → go with 1st party stripe SDK
Import stripe plans via a custom admin add form and action
Research ideal way for users to interact with active subscriptions → go with official stripe customer portal (less code and responsibility on our end, big players such as X also use it)
Implement subscriptions for organisations (we added multi-tenancy last week)
Checkout session tracking for later reminders on not-completed subscription attempts
Webhook handler for subscription changes off-site (like customer portal/admin dashboard), verified locally with stripe-cli
django admin management command to register the webhook with stripe
Config for webhook endpoint, storing secret in db
@stripe_subscription_required decorator to easily put views behind a paywall
lifecycle hooks for transition changes on stripe subscriptions
Not bad, considering I was also explaining and talking a lot with chat. Thanks again for being so active and interacting with me!
Plans For Next Week
Glancing at my github issues, we have a few fixed points to cover next week:
Verify stripe webhook calls with the webhook secret
Also add subscriptions on a user level (only on org level at the moment)
Toggle for certain features (e.g. switch off organisation support)
Async/delayed jobs for upsell and expensive jobs
Request More!
You’ll always find me with an open ear when requesting features! You can reply to this post or email (depending on how you’re reading this) and I will read and consider it!
Thanks again for being an FCD,
Michael
Reply