Monetize a browser extension without a payment backend
Add the Payhook upgrade button to a Chrome, Firefox, or Safari extension, open hosted Stripe checkout, and gate Pro features without a custom license server.
#payhook#unlock-button#monetization#browser-extension#stripe-checkout
Payhook gives you a hosted unlock button, Stripe checkout, and entitlement checks so your Chrome, Firefox, or Safari extension never implements payment infrastructure.
This is the monetization layer for the beginner tutorials on this blog. Build the useful free version first, then use Payhook to unlock Pro without shipping card forms, webhooks, or license servers.
Prerequisites
- A working extension: Chrome, Firefox, or Safari
- Optional: Chrome extension MV3 starter if you want to inspect the files
- Stripe connected and a product configured in dashboard.payhook.link
- Optional: Payhook MCP for agent-driven setup
High-level flow
User clicks Upgrade → unlock.payhook.link (Stripe Checkout) → Payhook records payment → Extension checks entitlement → Pro features unlock
Integration outline
- Install
@payhook/extensionand@payhook/unlock-buttonfrom payhook/js (or CDN bundles documented in docs). - Add the UpgradeButton in your popup HTML.
- In the service worker, initialize PayhookClient with your account / hook identifiers from the dashboard.
- Gate Pro UI with entitlement helpers - do not ship a custom license API for the default flow.
Agent prompt (copy to your coding agent)
Integrate Payhook into this browser extension as the premium unlock and payment flow.
- Add the Payhook UpgradeButton in the extension popup for paid tiers
- Gate Pro features with Payhook entitlement checks (no custom license server)
- Open hosted Stripe checkout via unlock.payhook.link - do not build a custom Stripe backend
- Payhook: https://dashboard.payhook.link
- MCP: https://mcp.payhook.link
Verify locally
- Load the unpacked extension
- Click upgrade and complete test checkout (test mode in dashboard)
- Confirm Pro gates unlock after payment