WebSoroban/PayLoop
Subscriptions that never take custody.
Sign one USDC policy: merchant, amount, interval, and a safety cap. The first charge settles atomically, the relayer charges on schedule, and you can pause or revoke from your wallet at any time.
- merchant
- GBWJ…XMKZ
- amount
- 9.99 USDC
- interval
- 30 days
- cap
- 119.88 USDC
- charged
- 3 of 12
Funds stay in the wallet until a charge is due. Pause, resume, or revoke from the wallet at any time.
Non-custodial
An allowance equal to what your policies may still charge. Nothing is pre-funded.
On schedule
Anyone may trigger a due charge, but only to your merchant, for your amount.
Yours to stop
Pause, resume, or revoke on-chain. Revoking shrinks the allowance.
Connect, fund, sign.
Every action is signed by your wallet. WebSoroban never holds a key, and funds stay in your wallet until a charge is due.
Accept PayLoop subscriptions in your app.
Read policies by merchant from the PayLoop API, grant access while a policy is active, and react to charges as they land. The contract and relayer do the rest.
Read the integration guideimport { createPayLoopClient, verifyWalletSignature } from '@web-soroban/payloop'
const payloop = createPayLoopClient({ network: 'mainnet' })
const plan = await payloop.activeSubscription({ subscriber, merchant, amount: '9.99', intervalSeconds: 2592000 })