Getting Started
An overview of Paperwall and the three ways to add it to a site.
Paperwall is a pay-per-read paywall. A reader who does not want a subscription pays to unlock a single article and reads it immediately. The publisher is paid for each unlock.
How a page load works
Every integration follows the same sequence. Code on your article page checks whether the current URL is an article, asks the Paperwall API about it, and then either displays a paywall or leaves the page alone.
your article page
└─ loader script (or your own bundle)
└─ Paperwall API → which article is this, has it been paid for?
└─ the wall → shown, or not shown at all
└─ reader unlocks on paperwall.io, returns, reads
Two details affect how you configure this:
- Pages that match none of your
postUrlspatterns are ignored completely. The check runs in the browser, before any request to Paperwall. - The API returns a decision about the current reader and article. Displaying the default wall is one way to act on that decision. The SDK lets you act on it however you like.
The three integrations
All three use the same SDK. They differ in how much of the paywall you build.
| You install | You build the wall | Best for | |
|---|---|---|---|
| Standalone | One <script> tag |
No — you get the default wall | Most sites |
| Ghost | One <script> tag plus an admin key |
No | Ghost publishers |
| BYO Wall | The paperwall npm package |
Yes | Sites with their own design system, or an existing subscription offer to sit alongside |
Standalone and Ghost are prebuilt bundles that consume the public SDK. Anything those bundles do is available to you directly through the SDK.
Ghost requires one additional step. Ghost truncates members-only posts on the server, so the remainder of the text never reaches the browser and no paywall can reveal it. The Ghost integration retrieves the complete post from your Ghost installation using an admin key, then adds it to the page once a reader pays.
Setting up
- Add your site in the portal and copy your public site token.
- Install one of the three integrations.
- Verify the installation. Paperwall opens your site with a check parameter and
confirms the snippet is running. Your site moves from
VERIFYINGtoPREVIEW, which unlocks article management. - Add articles by URL, then set their pricing and thresholds.
- Connect Stripe for payouts, then publish the site to move it to
LIVE.
Steps 4 and 5 are covered under Admin. For the reader's side of the process, see Unlocking articles.
You can carry out all of this in the sandbox environment first, without involving real payments. See Sandbox and production.