React paywall — Components

Reference for exported components, hooks, and utilities.

PaywallProvider

Wraps payment context and optional global appearance.

policy?: PaywallPolicy
rpc?: RpcConfig
privateKey?: string
fetch?: typeof fetch
appearance?: PaywallAppearance
debugWallets?: boolean

usePaywall()

inspect(url, init?) → InspectResult
unlock(url, init?) → UnlockResult
connectWallet(walletId?) → address
disconnectWallet()
wallets, walletAddress, connectedWalletName

Throws WalletSelectionRequiredError with a .wallets list when multiple extensions are installed and no id is passed.

PaywallGate

resourceUrl: string
title?, description?, priceLabel?
appearance?, agentDiscovery?, agentInstructions?
requestInit?, inspectOnMount?, onUnlocked?
renderLockedOverlay?(state)
className?, teaserClassName?, overlayClassName?, cardClassName?, unlockedClassName?

PaywallOverlay

Presentational card — wire onConnectWallet / onPay to usePaywall() for headless layouts.

WalletPicker

EIP-6963 + ethereum.providers list; supports appearance.

PaywallAgentDiscovery

Standalone agent instructions + JSON manifest + meta tags.

Utilities

formatRequirementPrice(req)
createSelectionResult(accepts, policy)
discoverWallets(opts?)
buildPaywallAgentManifest(opts)
usePaidFetch(url, init?)

Appearance exports

PaywallAppearanceProvider
usePaywallAppearance(override?)
defaultPaywallClassNames
mergePaywallAppearance
paywallThemeToCssProperties