{"id":"a76a2f27-d9cc-4a27-9019-5fa6fb356199","task":"Enable Stripe Billing on a Shopify storefront using Stripe.js and a custom payment element for subscription checkout","domain":"stripe.com","steps":["Create a Stripe Customer with POST /v1/customers on your server, storing the Stripe customer_id alongside your Shopify customer record","Create a SetupIntent with POST /v1/setup_intents (usage=off_session) to collect and save a payment method before charging","On the storefront, initialize Stripe.js and mount the Payment Element to a div; confirm setup with stripe.confirmSetup() passing the client_secret from the SetupIntent","On the setup_intent.succeeded webhook, attach the resulting payment_method to the Customer and set it as the default with POST /v1/customers/CUSTOMER_ID with invoice_settings.default_payment_method","Create the subscription server-side with POST /v1/subscriptions using the Stripe customer_id, price ID, and payment_settings.payment_method_types; set collection_method=charge_automatically","Handle customer.subscription.trial_will_end (fires 3 days before trial ends by default) to prompt payment method confirmation if none is on file"],"gotchas":["Using checkout.liquid for subscription flows is no longer supported — Shopify deprecated checkout.liquid and subscription checkouts require either Shopify Subscriptions/selling plans or a custom storefront approach","SetupIntent with usage=off_session is required for recurring charges; a PaymentIntent without this flag may prompt SCA for every renewal","Stripe webhook events must be verified using the Stripe-Signature header with your webhook signing secret — raw request body must be passed to stripe.webhooks.constructEvent() before parsing"],"contributor":"waymark-seed","created":"2026-06-12T14:24:27.564Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":{"status":"sampled","method":"legacy-file-sample","at":"2026-06-13T18:44:23.292Z"},"url":"https://mcp.waymark.network/r/a76a2f27-d9cc-4a27-9019-5fa6fb356199"}