Introduction
Non-custodial recurring payments on Solana.
Recur Protocol
Recur is an open-source, non-custodial recurring payment protocol built on Solana. It enables merchants to accept subscription payments in USDC without ever taking custody of subscriber funds.
How it works
- Merchant creates a plan with amount and interval via the dashboard or API
- Subscriber approves a USDC token delegation to a Subscription PDA
- Subscriber subscribes by creating an on-chain Subscription PDA
- Keeper (off-chain bot) pulls payments at each billing interval
- Webhooks notify the merchant's backend of payment events
Subscribers retain full control. They can revoke the token delegation at any time, and the on-chain program enforces interval-based time locks — no early pulls, no double charges.
Key properties
| Property | Detail |
|---|---|
| Custody | Non-custodial — funds stay in the subscriber's wallet until payment is due |
| Token | USDC (SPL Token, 6 decimals) |
| Network | Solana devnet (mainnet ready) |
| Fee | $0.05 flat + 0.25% per payment, collected by the protocol treasury |
| Minimum | $1.00 per payment |
| Cancel | Subscriber or merchant can request_cancel (paid period honored), or subscriber can subscriber_cancel for an immediate exit |
Start here
- Getting Started — prerequisites, required vs optional steps, full setup flow
- Backend Integration — complete server-side guide (install → plans → payments → webhooks)
- Webhooks — event types, payload format, signature verification, retry handling
- API Keys — create, use, and secure server-to-server access
Reference
- SDK Quickstart — install and create your first subscription in 5 minutes
- Subscribe — build subscribe transactions and manage delegation
- Cancel — cancel flows (request, immediate, finalize)
- Plans — create and query plans
- Authentication — wallet-based auth flow
- Error handling — typed error classes
- API Reference — REST endpoint docs
- Protocol architecture — on-chain design and PDAs