One access gate
A single decision — “may this request see post N?” — powers every surface. New surfaces are thin adapters, never their own logic, so nothing forgets to strip.
Features
Mapped to real capabilities — no vaporware. USDC only, on Base and Solana. Items marked Pro need a Pro license; everything else is in the free plugin.
The gate is the product. Every surface routes through one server-side check, so paid content is never in the bytes you send.
A single decision — “may this request see post N?” — powers every surface. New surfaces are thin adapters, never their own logic, so nothing forgets to strip.
The locked body is removed from the response server-side. No display:none, no blur overlay, no JS gate. Inspect-element and reader mode see the teaser only.
Access is granted only after a facilitator confirms settlement — bound to the exact payment, replay-proof, and idempotent per payment.
Per-visitor paywalled responses send Cache-Control: private, no-store so a payer's unlocked page is never cached and re-served to someone else.
WordPress leaks paid content through more than just the post body. The gate covers them all.
Whole-post and whole-page paywall on the front-end render, including block content.
paywall_full_post Wrap a span in [x402_gate]…[/x402_gate] to lock the rest of an article mid-way. Removed at an early filter priority so it never reaches HTML.
paywall_shortcode_partial content.rendered and excerpt.rendered are blocked or blanked for the unpaid, including ?_embed subrequests.
protect_rest_api Feed and comment-feed content is stripped so subscribers can't read paid posts in a reader.
protect_feeds Excerpts, embeds, search snippets and (optionally) sitemap URLs respect the gate.
protect_oembed Choose block / allow-with-payment / allow for each surface individually.
surface_matrix The differentiator no membership plugin has — content that machines can pay for.
A maintained, filterable list (GPTBot, OAI-SearchBot, ChatGPT-User, ClaudeBot, anthropic-ai, CCBot, Google-Extended, PerplexityBot, Bytespider, Amazonbot and more) is blocked from paid content with a 403/402 and no body.
block_ai_agents Let a verified agent present a settled x402 v2 payment to pay for a page — per-surface opt-in, off by default. Because it follows the standard x402 payment headers, any x402-compatible agent or crawler can pay, not just our bundled JS.
agent_payment A Disallow hint for paid paths complements the hard server-side block.
USDC settling to your wallet — with WooCommerce when you sell products.
Base and Solana (plus Base Sepolia and Solana Devnet testnets). Atomic-unit amounts, no floats, no volatile coins.
all_networks_simultaneously Offer readers a choice of both chains simultaneously.
all_networks_simultaneously Accept USDC at checkout. Pro automates digital-product delivery on settlement.
woocommerce Authors and admins see settled payment counts and USDC totals for each post they own.
Make the paywall yours and keep an audit trail.
Override the teaser/pay UI with your own HTML + CSS (sanitized to a curated allowlist). The design is customizable; the gate is not — custom markup can never contain the paid body.
custom_design The bundled template inherits your theme's typography and colors out of the box on Free.
Extended, exportable log of payments and access grants.
audit_log_advanced Built-in rate limiter and idempotent grant handling protect settlement endpoints.
See it
Placeholder slots — the owner drops real screenshots here.
The pricing page lays out exactly what's Free vs Pro, row by row.