Complete reference for the membership checkout flow — from user signup to active member provisioning. Covers the SetupIntent payment flow, OfficerRnD integration, auto-promo system, and MailerSend email confirmations.
The checkout system avoids the OfficerRnD GrowthHub fee by owning the payment flow directly via Stripe. The Cloudflare Worker orchestrates member provisioning and email confirmations.
Eleven steps take a visitor from landing on a membership page to being fully provisioned as a member.
Visitor browses to a membership page on labourtemple.com (e.g. /memberships/all-access). Each page is a Webflow CMS collection item with a unique plan-slug field.
The checkout JS fetches plan data from the Worker and renders pricing with pro-rated amounts. If the plan has an auto-promo code (e.g. AUTO-ALL-ACCESS), it's validated against Stripe and applied automatically.
Checkout JSNative Webflow fields collect: first name, last name, email, phone, company name, referral source, and optional notes. The Stripe Payment Element collects card or bank account details.
Webflow + StripeThe site script calls window._validate() to check all required fields. If validation fails, fields are highlighted and submission is stopped.
The script calls elements.submit() to securely tokenize the payment method with Stripe — without charging it yet.
Form data and plan slug are sent to POST /create-payment. The Worker creates or finds an OfficerRnD member, creates or finds a Stripe Customer, and creates a SetupIntent. Returns clientSecret, setupIntent ID, and memberId.
Cloudflare WorkerThe site script calls stripe.confirmSetup() with the client secret. Stripe confirms the card or bank account via the Payment Element.
The site script calls window._complete(), which sends memberId, setupIntent, plan, and promo to POST /complete-checkout.
The Worker retrieves the confirmed SetupIntent, sets the default payment method, adds the initiation fee as a one-time invoice item, creates the Stripe subscription (with promo code if provided), and creates the OfficerRnD membership.
Cloudflare WorkerThe Worker sends a branded confirmation email to the customer and a plain-text notification to the team (admin@labourtemple.com, membership@labourtemple.com, chris@hundredacre.design) via MailerSend.
MailerSendOn success, the user is redirected to /join-confirmation.
WebflowFive services work together to power the checkout system.
Hosts membership pages (CMS collection) and embeds the checkout form. Native form fields handle user input while an embed block contains the Stripe Payment Element and checkout logic.
Orchestrates the entire checkout: creates OfficerRnD members, Stripe customers, SetupIntents, subscriptions, memberships, and sends confirmation emails. Also serves the external checkout JS and validates promo codes.
Processes card and ACH payments, manages subscriptions, stores customer metadata. Uses SetupIntent flow — payment method is confirmed before subscription is created.
Stores member records and membership assignments. The Worker handles this directly via the v1 API — no Zapier needed.
Sends branded confirmation emails to new members and plain-text notifications to the team after each successful checkout.
Six plans are currently live in the checkout system. Each plan slug must match exactly between Webflow CMS and the Worker's PLAN_CONFIG.
| Plan Name | Slug | Monthly | Initiation | Pro-rate | Terms |
|---|---|---|---|---|---|
| Passport – Monthly | passport | $100/mo | $100 | Yes | /legal/membership-terms |
| Labour Temple Startup | startup | $30/mo | $100 | Yes | /legal/membership-terms |
| Labour Temple All Access | all-access | $300/mo | $200 | Yes | /legal/membership-terms |
| Founder Membership | founder | $500/mo | $200 | Yes | /legal/membership-terms |
| Sonic Studio: Creator Pass | creator-pass | $500/mo | $200 | No | /legal/sonic-terms |
| Meeting Spaces: Innovator Pass | innovator-pass | $500/mo | $200 | No | /legal/membership-terms |
Certain plans can automatically apply a promo code on page load — no code changes needed.
The auto-promo convention follows the pattern AUTO-{PLAN-SLUG} in uppercase. For example, AUTO-ALL-ACCESS for the all-access plan.
AUTO-{SLUG}npx wrangler deployThree locations contain checkout logic:
npx wrangler deploywrangler deploy (5 min cache)wrangler deploywrangler tail or DashboardTwo-step pattern:
Pro-rated plans use billing_cycle_anchor to the 1st of next month.
Webflow has two hard limits: 10K embed, 2K site script. Checkout logic is ~11.7K. Solution: host JS on Worker at /checkout.js, loaded via script tag. Source file uses .txt extension for Wrangler text import.
window._S — Stripe appearance configwindow._validate — Field validation functionwindow._complete — Checkout completion handlerwindow._promo — Active promo codewindow._autoPromo — Auto-promo codeEmbed must run before site script.
Emails via MailerSend are sent with Promise.allSettled and failures are logged but don't break checkout.
Check CMS plan-slug matches PLAN_CONFIG key, data-plan attribute set on #checkout, window._S defined, site script applied and published.
Plan slug mismatch between CMS and PLAN_CONFIG.
Origin not in ALLOWED_ORIGINS, add to worker.js and redeploy.
checkout.js hasn't loaded, check Network tab.
Check MAILERSEND_API_KEY secret, check MailerSend dashboard Activity log. Checkout still succeeds.
Check OFFICERND secrets, check Worker logs in Cloudflare dashboard.
Verify promotion code exists and is active in Stripe, check code matches AUTO-{SLUG} format.
Browser Console for JS errors · Network tab for POST requests · Cloudflare Logs for Worker errors · Stripe Dashboard > Developers > Logs · MailerSend Dashboard > Activity
Complete feature matrix for all six membership plans — benefits, discounts, amenities, and content status. Use this to quickly compare plans, verify CMS data, and identify missing content.
passport (was previously passport-monthly). CMS plan-slug field must match.| Feature / Attribute |
All Access
$300
/mo · +$200 init
AUTO-ALL-ACCESS |
Passport
$100
/mo · +$100 init
AUTO-PASSPORT |
Startup
$30
/mo · +$100 init
AUTO-STARTUP |
Innovator
$500
/mo · +$200 init
AUTO-INNOVATOR-PASS |
Creator
$500
/mo · +$200 init
AUTO-CREATOR-PASS |
Founder
$500
/mo · +$200 init
AUTO-FOUNDER |
|---|---|---|---|---|---|---|
| Plan Configuration | ||||||
| Plan Slug | all-access |
passport |
startup |
innovator-pass |
creator-pass |
founder |
| Billing | Pro-rated to 1st | Pro-rated to 1st | Pro-rated to 1st | Not pro-rated | Not pro-rated | Pro-rated to 1st |
| Terms Page | /legal/membership-terms | /legal/membership-terms | /legal/membership-terms | /legal/membership-terms | /legal/sonic-terms | /legal/membership-terms |
| Workspace Access | ||||||
| Unlimited Daily Cowork Access | ✓ | — | — | — | ✓ | — |
| 5 Cowork Day Passes/Month | — | ✓ | — | — | — | — |
| Monthly Meeting Room Credits | — | — | — | ✓ | — | — |
| 8 Hours Monthly Sonic Studio | — | — | — | — | ✓ | — |
| Mail & Virtual Office | ||||||
| Business Mail Address | ✓ | — | ✓ | — | — | — |
| Letter Scanning & Package Holds | ✓ | — | ✓ | — | — | — |
| Member Discounts | ||||||
| 20% Off Meeting Room Bookings | ✓ | ✓ | ✓ | — | ✓ | — |
| 20% Off Sonic Studio Bookings | ✓ | ✓ | ✓ | ✓ | — | — |
| 20% Off Event Spaces | ✓ | ✓ | — | ✓ | ✓ | — |
| 20% Off Private Team Offices | ✓ | ✓ | — | — | — | — |
| Facility Amenities | ||||||
| Shared Cowork Environment | ✓ | 5 days | — | — | ✓ | — |
| Private Phone Booths | ✓ | w/ passes | — | — | ✓ | — |
| Courtyard · Fitness · Bike Lockers | ✓ | w/ passes | — | — | ✓ | — |
| Coffee + Tea Service | ✓ | w/ passes | — | — | ✓ | — |
| High Speed Wi-Fi | ✓ | w/ passes | — | — | ✓ | — |
| Virtual Mail Service | ✓ | — | ✓ core |
— | — | — |
| Content Status | ||||||
| Ideal For (persona line) | ✓ | ✓ | ✓ | ✓ | ✓ | ✗ |
| Short Description | ✓ | ✓ | ✓ | ✓ | ✓ | ✗ |
| Feature Image | ⚠ | ⚠ | ⚠ | ✗ | ⚠ | ✗ |
"Unlimited workspace access with all amenities included. For professionals who make Labour Temple their home base."
"Freelancers, remote workers, and entrepreneurs who want a consistent daily workspace and full community access."
"Flexible day access for remote workers who need occasional workspace. Drop in, connect, and work from Seattle's most inspiring building."
"Hybrid workers and visitors who occasionally want a professional workspace for a low monthly cost."
"Your business starts here with a premier mailing address at 2800 1st Avenue. Virtual mail service with letter scanning and package holds."
"Early-stage founders and solo operators who need a professional business address without a physical desk."
"Meeting room credits for professionals who need flexible workspace solutions. Access professional meeting spaces as needed."
FLAG:CMS price may be missing · No feature image · Credits amount not specified
"Monthly podcast studio access for content creators. Eight hours of Sonic studio time plus all Labour Temple coworking benefits."
"Podcasters and video creators who want consistent studio access with the benefits of a coworking community."
This plan exists in Worker PLAN_CONFIG but has no CMS Memberships item. No page, no copy, no image.
price_1TDukWB8vTeSXsVFcG9uiaeY