Add Stripe embedded checkout to book pages

Replaces the gumroad_url stub with an on-site embedded checkout (buy
button -> POST to the bookshop backend -> mounted Stripe iframe),
following the existing contact/submissions form's fetch/status-message
pattern. Adds thank-you and resend-link pages, an example book template
(draft), and updates the privacy policy and terms to honestly disclose
Stripe as a third-party payment processor.
This commit is contained in:
2026-07-14 18:35:50 -04:00
parent 40266cf811
commit 41475f4a5a
8 changed files with 171 additions and 12 deletions
+15
View File
@@ -0,0 +1,15 @@
---
title: "Example Book Title"
author: "Author Name"
cover_image: "https://downloads.twosquirrelspress.com/covers/example-book.jpg"
description: "One-line jacket copy for listing pages."
stripe_price_id: "price_XXXXXXXXXXXXXXXXXXXXXXXX"
price_display: "$6.99"
formats: ["EPUB", "PDF"]
draft: true
---
Full jacket-copy / long description goes here. Duplicate this file for
each real book, fill in the real Stripe Price ID (create the Product in
the Stripe Dashboard first, with `tsp_book=true` and `file_key=...` set
in the Product's metadata), and remove `draft: true` to publish it.
+8
View File
@@ -0,0 +1,8 @@
---
title: "Resend my download link"
description: "Lost your download link? Get a new one sent to your email."
layout: "book-resend"
---
Enter the email address you used when you bought a book, and if we find
a matching order we'll send a fresh download link to that address.
+10
View File
@@ -0,0 +1,10 @@
---
title: "Thanks for your order"
description: "Your ebook purchase is complete."
---
Thanks for your purchase! Check your email in a moment for a link to
download your book.
If it doesn't show up within a few minutes, check your spam folder, or
use the [resend form](/books/resend/) to get a fresh link sent to you.