crxpay

One-time unlocks

Charge once. Unlock forever.

Lifetime deals, feature unlocks, and pay-what-you-want — with the same signed entitlements as subscriptions. No renewals, no dunning, no “but I already paid” tickets.

Lifetime
entitlements
Feature-level
unlocks
Refund
aware
crxpay · demo
Feature
Export to PDF
Locked
$49 · paid once · unlocks forever
Unlock forever
Live preview · auto-plays

Why one-time works

Some users hate subscriptions. Charge them once and move on.

A one-time purchase has no renewal, no dunning, no grace period — just a signed entitlement that never expires. Perfect for feature unlocks, pro upgrades, and founder-day lifetime offers.

Checkout → activate
Subscription41%
One-time86%
Higher one-shot conversion.
Checkout-to-activate is 2.1× a subscription — no trial friction, no renewal fear.
Churn
0.00%
Zero churn by construction.
There is no subscription to cancel. The entitlement lives in the signed cache forever.
Monthly
$9
Annual
$89
Lifetime
$299
Mix with subs in the same store.
A single extension can sell monthly, annual, and a $299 lifetime deal — all from one SDK.
receipt · chrome.storage.local
Lifetime
{
  "type": "one_time",
  "entitlements": ["lifetime", "pro"],
  "purchasedAt": "2026-04-14",
  "expiresAt": null,
  "sig": "v1.hmac-sha256:9f3c…"
}
Signature valid · unlocked forever
Web Crypto · 0.3ms · no network
EXPIRES NEVER

Signed forever-receipt

A purchase is a signed entitlement — not a database lookup.

When a one-time payment clears, crxpay writes an HMAC-signed receipt to chrome.storage.local. Your SDK reads it synchronously for the rest of the user’s life — no server roundtrip, no “I paid but the extension locked me out” tickets.

  • Forever-valid
    No expiry — the signature itself is the proof
  • Device-portable
    Chrome Sync carries it to every installed profile
  • Refund-aware
    Refunds invalidate the receipt instantly via webhook
  • Tamper-proof
    Any edit breaks the signature; SDK rejects it

Pricing levers

Feature unlocks, pay-what-you-want, bundles — all one-time.

Configure any pricing model from the dashboard. The SDK returns the same typed entitlement regardless of how the user paid.

PDF export
Unlocked
AI rewrite
Unlocked
Team workspace
$9
Per-feature unlocks.
Sell the PDF export for $5, the AI rewrite for $12, and the bundle for $14. Each unlock is its own entitlement.
Pay what feels fair
$18· suggested $15
Min $5Max $50
Pay-what-you-want.
Let users pick their own price, with a floor and a suggested amount. Great for indie and open-source extensions.
PDF
AI
Team
Bundle
$26$19
Bundles & cross-sells.
Group multiple one-time SKUs into a bundle and price them together. Discount applied automatically at checkout.
PDF export unlocked
One-time · $5
Upgrade offer
Unlock everything for $9/mo — save 30%
Subscription upsell.
After a one-time unlock, offer a subscription for deeper features. crxpay remembers and hides the offer after success.

SDK, same shape

One-time purchases look exactly like subscriptions in code.

Check hasEntitlement() regardless of how the user paid. Trigger a purchase, handle refunds server-side, and the signed cache stays in sync — automatically.

  • Unified entitlements
    Same check for subs and one-time
  • One-line checkout
    crxpay.purchase("sku") opens Stripe
  • Instant refund handling
    Receipt invalidates in < 1s
popup.ts
import { crxpay } from '@crxpay/sdk';

// triggered when the user clicks "Unlock forever"
const result = await crxpay.purchase({
  sku: 'lifetime-pro',
  onSuccess: () => toast('Unlocked — enjoy!'),
});

if (result.ok) {
  // signed receipt is already in chrome.storage.local
  window.location.reload();
}

Receipts

One-time isn’t a side-bet. For many extensions, it’s the main act.

Telemetry from production extensions selling one-time unlocks, lifetime deals, and feature SKUs — sampled across 90 days.

0.0×
One-time vs sub conversion
median across 9,200+ stores
0%
Churn on lifetime deals
there is nothing to cancel
0%
Revenue from one-time SKUs
in the average crxpay store
0 days
Avg time to breakeven
on a $49 lifetime unlock

Ready to grow?

Our entire suite of features comes standard — and your first $2,500 in tracked revenue is free.