Title: Primer Pay
Author: primersystems
Published: <strong>Gulan 6, 2026</strong>
Last modified: Gulan 6, 2026

---

Search plugins

![](https://ps.w.org/primer-pay/assets/banner-772x250.png?rev=3524579)

![](https://ps.w.org/primer-pay/assets/icon-256x256.png?rev=3524596)

# Primer Pay

 By [primersystems](https://profiles.wordpress.org/primersystems/)

[Download](https://downloads.wordpress.org/plugin/primer-pay.0.3.1.zip)

 * [Details](https://kmr.wordpress.org/plugins/primer-pay/#description)
 * [Reviews](https://kmr.wordpress.org/plugins/primer-pay/#reviews)
 *  [Installation](https://kmr.wordpress.org/plugins/primer-pay/#installation)
 * [Development](https://kmr.wordpress.org/plugins/primer-pay/#developers)

 [Support](https://wordpress.org/support/plugin/primer-pay/)

## Description

Primer Pay lets you put any post or page behind a micropayment wall using the x402
protocol. Visitors with the Primer Pay browser extension pay seamlessly and see 
your content instantly. No user accounts, no subscriptions, no payment forms.

**How it works:**

 1. You enter your wallet address in Settings > Primer Pay.
 2. You check “Enable x402 Paywall” on any post and set a price (e.g., $0.01 USDC).
 3. Visitors with the Primer Pay Chrome extension pay automatically and see your content.
 4. Visitors without the extension see a teaser and a prompt to install Primer Pay.
 5. Payments settle on Base (Ethereum L2) via USDC — low fees, instant finality.

**Features:**

 * Gutenberg Content Gate block — visual divider between free teaser and paid content
   with inline settings
 * Classic editor support — `[primer_pay_x402]` shortcode plus sidebar meta box
 * Per-post price override (defaults to your site-wide price)
 * Per-post wallet override — route payments to a different wallet per post (multi-
   author support)
 * Multi-network: accept payments on Base, SKALE Base, or both — with configurable
   priority
 * Theme-matching paywall banner — inherits your site’s fonts, colors, and border
   radius
 * Configurable access duration: 30 minutes to “never expires”
 * `.well-known/x402` discovery endpoint — JSON index for AI agents and crawlers
   to find purchasable content
 * Works with any theme that renders the_content() normally
 * No user accounts or login required
 * Non-custodial — payments go directly to your wallet

**Requirements:**

 * A wallet address on Base or SKALE Base (e.g., from MetaMask, Coinbase Wallet,
   or Primer Pay itself — same address works on all supported networks)
 * HTTPS recommended (cookies are marked Secure on HTTPS; HTTP still works for local
   dev)

### External services

This plugin relies on the Primer x402 facilitator service to verify and settle payments.
When a visitor attempts to pay for content, the plugin sends the signed payment 
authorization to the facilitator, which validates the signature and executes the
on-chain USDC transfer on the Base network.

 * Service: Primer x402 Facilitator
 * Endpoint: https://x402.primer.systems/settle
 * When: Whenever a visitor submits a valid X-PAYMENT header to the plugin’s unlock
   endpoint
 * Data sent: The base64-encoded signed payment authorization (EIP-712 typed data)
   from the visitor, plus the payment requirements (amount, asset address, recipient
   wallet address, network). No personally identifiable information about the visitor
   is sent — the only identifier is the wallet address they signed with.
 * Terms of service: https://primer.systems
 * Privacy policy: https://primer.systems

This is the standard x402 protocol flow. If you prefer to run your own facilitator,
you can configure a custom facilitator URL in the plugin settings.

## Screenshots

 * [[
 * Settings page — configure your wallet address, default price, access duration,
   and accepted networks.
 * [[
 * Adding the Content Gate block — search for “Primer Pay” in the Gutenberg block
   inserter.
 * [[
 * Content Gate in the editor — the block splits free teaser (above) from paid content(
   below), with per-post settings in the sidebar.
 * [[
 * Front-end paywall banner — visitors without the extension see the price and a
   link to get started.

## Blocks

This plugin provides 1 block.

 *   Primer Pay Content Gate

## Installation

**From WordPress.org (recommended):**

 1. In your WordPress admin, go to Plugins > Add New.
 2. Search for “Primer Pay”.
 3. Click Install Now, then Activate.

**Manual upload:**

 1. Download the plugin zip file.
 2. In your WordPress admin, go to Plugins > Add New > Upload Plugin.
 3. Select the zip file and click Install Now, then Activate.

**Setup:**

 1. Go to Settings > Primer Pay and enter your wallet address.
 2. Edit any post, check “Enable x402 Paywall” in the Primer Pay sidebar box, and publish.

## FAQ

### What is x402?

x402 is a protocol for web payments using HTTP status code 402 (Payment Required).
When a server returns 402, the Primer Pay browser extension automatically handles
the payment and retries the request.

### Do my visitors need crypto?

Visitors need the Primer Pay browser extension with a small USDC balance. The extension
manages a simple wallet — no MetaMask or crypto experience required.

### What are the fees?

Primer does not charge fees. Base network gas fees are typically less than $0.001
per transaction.

### What happens if a visitor doesn’t have the extension?

They see a free teaser of your content plus a styled banner explaining the price
and linking to the Primer Pay extension.

### Is this custodial?

No. Payments go directly from the visitor’s extension wallet to your wallet address.
Primer never holds funds.

## Reviews

![](https://secure.gravatar.com/avatar/7cc529ffc9823ef61a76b7987780b6c5e1d53ae3ef768e8fc51781e9115cf17f?
s=60&d=retro&r=g)

### 󠀁[Perfect for true pay per content](https://wordpress.org/support/topic/perfect-for-true-pay-per-content/)󠁿

 [noanoanoa9](https://profiles.wordpress.org/noanoanoa9/) Gulan 6, 2026

Primer pay is an innovative and niche plugin with a compelling concept – micropayments
without subscriptions. Perfect for true pay per content and no personal data collection.
Definitely worth experimenting with and the Primer Pay browser extension is simple
to use, especially if you’re already familiar with browser extensions such as metamask
etc.

 [ Read all 1 review ](https://wordpress.org/support/plugin/primer-pay/reviews/)

## Contributors & Developers

“Primer Pay” is open source software. The following people have contributed to this
plugin.

Contributors

 *   [ primersystems ](https://profiles.wordpress.org/primersystems/)

[Translate “Primer Pay” into your language.](https://translate.wordpress.org/projects/wp-plugins/primer-pay)

### Interested in development?

[Browse the code](https://plugins.trac.wordpress.org/browser/primer-pay/), check
out the [SVN repository](https://plugins.svn.wordpress.org/primer-pay/), or subscribe
to the [development log](https://plugins.trac.wordpress.org/log/primer-pay/) by 
[RSS](https://plugins.trac.wordpress.org/log/primer-pay/?limit=100&mode=stop_on_copy&format=rss).

## Changelog

#### 0.3.1

 * Fixed: Paywall banner now correctly hidden when no wallet is configured (was 
   showing unstyled)

#### 0.3.0

 * Gutenberg block: “Primer Pay Content Gate” — visual editor block for splitting
   free and paid content
 * Theme-matching paywall banner: inherits site fonts, colors, and border radius
   via CSS custom properties
 * Per-post wallet override: route payments to a different wallet per post
 * .well-known/x402 discovery endpoint: JSON index for AI agents and crawlers

#### 0.2.1

 * Removed front-end “Powered by x402” attribution (guideline 10 compliance)

#### 0.2.0

 * Multi-network support: Base and SKALE Base
 * Network selection UI with preferred network
 * Automatic USDC contract lookup per network

#### 0.1.0

 * Initial release
 * Global settings: wallet address, default price, facilitator URL, access duration
 * Per-post paywall toggle with price and access-duration overrides
 * [primer_pay_x402] shortcode for teaser/content splitting (registered so the marker
   never appears in output)
 * REST unlock endpoint at /wp-json/primer-pay/v1/unlock/<post_id>
 * HMAC-signed session cookies so refreshing doesn’t re-charge readers
 * Archive-safe teaser rendering (no content leaks on blog index, categories, feeds,
   excerpts)
 * Non-extension visitor fallback with install CTA
 * Declined-payment handling with retry button

## Meta

 *  Version **0.3.1**
 *  Last updated **2 roj ago**
 *  Active installations **Fewer than 10**
 *  WordPress version ** 5.8 or higher **
 *  Tested up to **6.9.4**
 *  PHP version ** 7.4 or higher **
 *  Language
 * [English (US)](https://wordpress.org/plugins/primer-pay/)
 * Tags
 * [micropayments](https://kmr.wordpress.org/plugins/tags/micropayments/)[monetization](https://kmr.wordpress.org/plugins/tags/monetization/)
   [paywall](https://kmr.wordpress.org/plugins/tags/paywall/)[usdc](https://kmr.wordpress.org/plugins/tags/usdc/)
   [x402](https://kmr.wordpress.org/plugins/tags/x402/)
 *  [Advanced View](https://kmr.wordpress.org/plugins/primer-pay/advanced/)

## Ratings

 5 out of 5 stars.

 *  [  1 5-star review     ](https://wordpress.org/support/plugin/primer-pay/reviews/?filter=5)
 *  [  0 4-star reviews     ](https://wordpress.org/support/plugin/primer-pay/reviews/?filter=4)
 *  [  0 3-star reviews     ](https://wordpress.org/support/plugin/primer-pay/reviews/?filter=3)
 *  [  0 2-star reviews     ](https://wordpress.org/support/plugin/primer-pay/reviews/?filter=2)
 *  [  0 1-star reviews     ](https://wordpress.org/support/plugin/primer-pay/reviews/?filter=1)

[Your review](https://wordpress.org/support/plugin/primer-pay/reviews/#new-post)

[See all reviews](https://wordpress.org/support/plugin/primer-pay/reviews/)

## Contributors

 *   [ primersystems ](https://profiles.wordpress.org/primersystems/)

## Support

Got something to say? Need help?

 [View support forum](https://wordpress.org/support/plugin/primer-pay/)