Stripe Checkout, Payment Links and payment buttons collect money, but collecting payment does not on its own protect HTML that a browser has already received, and hiding content with CSS or JavaScript is not real access control. To enforce a paywall, host the page somewhere that checks the buyer's entitlement on the server before sending the protected content. Sentway can host a browser-ready standalone version of a compatible HTML page, take payment through your own connected Stripe account and serve protected pages after purchase; it cannot add a gate in place to a page hosted on another website, and it is not a general backend for complex apps.
Why a Stripe payment button is not a paywall
A checkout is the step where money changes hands. A paywall is the rule that decides who receives the content. They are related but separate.
If your page loads in full and a script hides the premium part until a button is clicked, the content is already in the visitor's browser. Anyone can open developer tools, disable the script or read the page source. Redirecting to a 'thank you' page after payment has the same weakness if that page's address can simply be shared or guessed.
Real protection happens before delivery: the server checks whether this visitor has paid, and only then sends the protected HTML. Stripe confirms the payment; something on your side still has to record the purchase and enforce it.
Yes, if the host enforces access on the server. The page itself can stay static: the host decides whether to serve it.
What will not work: a file opened from someone's computer with a file:// address, purely client-side checks such as a password compared in JavaScript, or a page that reads a private live database directly from the browser without a secure backend.
Also be realistic about what a paywall does. It controls who receives the page. After a buyer has access, nothing stops them taking screenshots or copying text they can see.
Ways to charge for HTML content
Selling a file: if the buyer should own a downloadable copy, such as a template or source file, a digital download store is the natural fit. The buyer gets the file, and you no longer control access.
Membership platforms and site plugins: if your site already runs on a builder or content system with a paywall or membership plugin, adding protection there keeps everything in one place. These tools are also where recurring subscriptions are usually handled.
Paid hosted access on Sentway: a fit when the page is a compatible standalone HTML or JSX page, often produced by an AI assistant such as Claude or ChatGPT or written by hand, and you want it published with one-time paid access, response forms and results your assistant can read back.
Sentway's three paywall scopes
Paid access in Sentway is configured per site, with one of three protection scopes. They do not behave identically.
entire_site: every page sits behind payment. This offer becomes the site's primary paid gate, shown before any content.
except_homepage: the homepage stays public, so visitors can read an introduction, and every other page requires purchase. This is also a site-wide primary paid gate.
selected_pages: only the paths you list are locked, and visitors meet a payment modal on those pages. This scope never becomes the primary site gate, so it can sit alongside a classic gate such as public access. The protected_paths list is a full replacement each time you set it: send every path that should stay protected, not just the new one.
A paid gate differs from a password or email gate. A password admits anyone who knows it and an email gate collects or verifies an address. Paid access admits buyers whose purchase is recorded, for the access length you chose.
Step by step: add a Sentway paywall to an HTML page
1. Create a Sentway account. Paid access requires Pro, which is your subscription to Sentway and separate from the price you charge buyers.
2. Connect a supported AI assistant through the Sentway connector. For Claude, use https://claude.ai/directory/sentway. Other MCP clients follow the connector documentation.
3. Give the assistant your HTML and ask it to check that the page runs standalone in a browser, then adapt anything that depends on local files, private keys or a server.
4. The assistant creates the site with create_site and saves the page with save_page.
5. The assistant checks your Stripe status with get_commerce_setup. You connect your own Stripe account through the onboarding link it provides; payments go to your account. For real-money sales to consumers, add your public name, support email and trading address with set_seller_details. Use your real details; the assistant should never invent them.
6. Choose a truthful buyer audience, then the assistant saves the offer with set_paid_access: price_minor in pence (prices are GBP only), protection_scope, protected_paths for selected pages, access_days (null means no expiry) and status.
7. The assistant runs publish_site. Access and price changes reach visitors only after publishing.
8. Rehearse in test mode. Each offer is pinned to one payment_environment. A test_ready status only proves test-card purchases work on a test-mode offer. Run a test purchase with Stripe's test cards, so no real money moves, and confirm the protected page appears afterwards in a private window.
9. Rehearsal does not switch anything to real payments. A successful test purchase does not make a live-mode offer ready, and an offer status of live is separate from Stripe's live or test mode. Before telling buyers they can pay, check the offer you actually intend to sell with get_commerce_setup and get_paid_access: real_payments_ready true, sales_active true, payment_environment set to live, and publish_required false. If you changed anything, run publish_site again, then re-check.
10. Share the link only after that live-mode check passes.
Stripe charges its own processing fees on your account. Check current Stripe and Sentway pricing rather than assuming figures.
Suppose you built a self-contained pricing calculator in HTML and want to charge a hypothetical £19 for it. The figure is an illustration, not a recommended price or forecast.
You publish two pages: an introduction at the homepage and the calculator on its own path. With except_homepage, the introduction stays free and the calculator requires purchase. A buyer clicks through to Stripe-hosted checkout and, after a successful payment, can open the calculator. You keep maintaining the page and republish when you change it.
If the calculator relied on Claude runtime features, a backend, saved storage, live model calls or private API keys, it needs a standalone rewrite first. This is an adaptation, not a one-click mirror.
One-time access is not a subscription
Each purchase grants access once. With access_days set to null the entitlement does not expire; with a number of days it ends that long after purchase and does not renew automatically. Sentway does not offer built-in recurring billing for buyers.
Sentway is also not the merchant of record, does not market your page or find buyers, and does not deliver downloadable files. You are the seller through your own Stripe account.
Security, access and practical limitations
Keep anything private inside the protected pages. Content on a public page, or secrets embedded anywhere in the HTML, are visible to whoever can open it.
Sentway withholds protected markup until access is confirmed, but cannot stop a buyer copying or capturing what they see. Changes to scope, price or pages take effect only after you republish, and with selected_pages, check the full path list each time.
Selling to consumers can bring obligations around terms, refunds and disclosures that depend on where you and your buyers are. Sentway records the details you provide; it does not make your sales legally compliant for you.
When Sentway is not right
Choose another tool if your content already lives in a WordPress, Shopify or membership ecosystem, if you need recurring subscriptions, if you are building a full SaaS product with its own backend and user accounts, or if you want to sell downloadable source files or templates.
A prompt you can paste
Pro: Paid Access
Here is my existing HTML page. Assess whether it runs as a standalone browser page and adapt it if needed, then tell me plainly anything that will not work without its original environment. Create a Sentway site with create_site and save the page with save_page. Before any paid setup, check get_commerce_setup and tell me what Stripe onboarding or seller details are missing; do not invent seller details. Before calling set_paid_access, ask me to confirm the actual price, currency (GBP only), protection scope (entire_site, except_homepage or selected_pages with the full protected_paths list) and buyer audience. £19 (price_minor 1900) is only an illustration; do not set it unless I confirm it. Run publish_site only after the paid configuration is saved. After publishing, check get_commerce_setup and get_paid_access and report test readiness and real-money readiness separately: real_payments_ready, the offer's payment_environment, sales_active and publish_required. Do not treat test_ready or an offer status of live as real-money readiness. Return the URL and manual test steps using Stripe test cards on a test-mode offer, and do not claim you ran a checkout yourself.
Produces: A standalone page saved and published on Sentway with a paid access offer, a readiness report, and manual test steps for you to run.
The assistant cannot create your Stripe account or complete a card checkout for you. You finish Stripe onboarding and run the test purchase yourself.
Needs Pro. On the free plan this prompt returns a permission error for Paid Access.
Can I add Stripe to an HTML page without a backend?
You can add a Payment Link or Checkout button, which collects money. Without a server checking who paid, though, the page content itself is not protected.
Can a visitor bypass a JavaScript paywall?
Usually, yes. If the content was sent to the browser and hidden by script, it can be read from the page source or by disabling the script. Server-side checks avoid this.
Do buyers need a Claude or Sentway account?
No. Buyers open the page in a browser and pay through Stripe-hosted checkout. You, the seller, need a Sentway account with Pro and your own Stripe account.
Can I keep the homepage free?
Yes. The except_homepage scope leaves the homepage public and protects the rest, or selected_pages locks only the paths you list.
Is recurring billing supported?
No. Purchases are one-time. You can limit how long access lasts with access_days, but access does not renew or charge again automatically.
Can I sell a page made with ChatGPT or Claude?
Yes, if it is a standalone HTML or JSX page that runs in a browser. Publishing goes through an assistant connected to Sentway, which can adapt the page first.