Education series · Week

Week 7 — Stripe payments (accepting money online)

Stripe is the cleanest API I deal with — by the end of this video you take a real test charge and watch it land in your dashboard.

📹 Video shipping soon

Drafted + scripted. Recording in queue. Subscribe to the Founder Plan to be notified the moment it lands.

What you'll walk away with

A scene-by-scene walkthrough of every beat in the video. Plain English. Real numbers. Real workflow.

The walkthrough

  1. Week 7 — Stripe payments. Accepting money online.
  2. Your platform tax. Or Stripe's flat fee. Pick one.
  3. Two and ninety-cents per dollar. That is the whole bill.
  4. Three things you need: a button, a session, a webhook.
  5. Step one. Make the account.
  6. Test mode is on by default. Leave it there.
  7. Two keys. Publishable goes in the front-end. Secret stays on the server.
  8. .env file. Gitignored. Never committed.
  9. pip install stripe. That is the SDK.
  10. Create the session on YOUR server. Never the browser.
  11. {CHECKOUT_SESSION_ID} placeholder. Stripe fills it in.
  12. Click the button → POST → get a url back → redirect.
  13. This is the only button on the page.
  14. Stripe runs the form. They eat the PCI burden.
  15. Test card: 4242 4242 4242 4242. Works every time.
  16. Redirect lands. URL has the session ID.
  17. It hits the dashboard. Refundable in one click.
  18. Front-end confirmation is not enough.
  19. Webhooks. Stripe POSTs to you when something real happens.
  20. Webhook signing secret. whsec_.... Verifies the POST is really Stripe.
  21. Bad signature → 400. Good signature → handle the event.
  22. One handler per event type. Match. Act. Log.
  23. Write the sale to your own database. You own this row forever.
  24. Stripe CLI. Local webhook forwarding. No ngrok needed.
  25. Test purchase → CLI relays → server writes the row. End to end.
  26. Your money. Your row. Your file.
  27. Receipt email goes out from YOUR server, not Stripe's.
  28. Customer gets a branded email in under five seconds.
  29. Live mode. Real cards. Real money. Real refunds.
  30. Two key swaps. pk_live_... and sk_live_.... Different whsec_... too.
  31. Production env vars in Netlify. Never in the repo.
  32. First real dollar. Refund yourself. Prove the loop.
  33. Four bugs that bite everyone. Save this clip.
  34. Idempotency. One session ID = one row. Forever.
  35. Week 8: automate the follow-up. Week 11: alert when this breaks.
  36. Cut your AI bill 90%. Founder pricing $24/mo for life. Code LAUNCH30.
  37. Education series. New module every week. Subscribe so you do not lose the chain.

Cut your AI bill 90%+

I built Local Model Dojo so the same kind of bot work that costs $100/mo on the Claude or OpenAI API runs on hardware you already own. Founder pricing locks in for the life of your account.

See Founder pricing → Code LAUNCH30 · 30-day window

← Week 6 — Real backend (FastAPI + SQLite) Week 8 — Automation flows (n8n + your own site) →

— Jake Morris · Oklahoma veteran · localmodeldojo.com