Recuro

Security

Back to blog

Delegate approvals that stop at exactly one cycle

Apr 14, 2026 · 6 min read

Scoped token approval gate showing one cycle payment limit and safety boundaries

Most Solana protocols ask for an unlimited SPL token approval. Recuro scopes the delegate to exactly one cycle amount, so the blast radius of a compromised keeper is a single payment - not your entire wallet.

Recurring payments are convenient only when users feel safe leaving them on. The biggest security mistake in many crypto billing flows is requesting a very large token approval up front and treating that as “good UX.” It is easy for protocol operators, but it creates an unacceptable worst-case outcome for users: if execution keys are compromised, if monitoring fails, or if a contract path is abused, the effective loss ceiling can become the subscriber’s entire token balance.

Recuro takes the opposite approach. Delegate approvals are scoped to one cycle amount. The protocol reads the amount from the on-chain plan and approves exactly that number, not an arbitrary maximum. Execution consumes that allowance. A future cycle requires a new allowance event through the subscription flow. Security posture is therefore cycle-bounded by design.

This is important because it shifts risk from catastrophic to tolerable. Under unlimited approvals, one exploit can become account-level extraction. Under one-cycle approvals, the theoretical maximum loss is one cycle payment per affected subscription before controls engage. That difference is not academic. It materially changes incident response, customer trust recovery, and legal exposure.

Scoped approvals also align with user sovereignty. Subscribers can revoke at any time using standard wallet tooling such as Phantom’s token approval controls. They do not need protocol support intervention, cooldown windows, or opaque off-chain cancellation queues. Revocation is a native token-program operation that settles on-chain quickly and transparently.

From an engineering perspective, this model does require more careful lifecycle handling than “approve once forever.” You need robust renewal logic, clear expiration semantics, and state checks that avoid accidental over-pulls. But that complexity is where it belongs: inside protocol guarantees, not pushed onto end users.

The result is a recurring-payment system with explicit bounds. Every cycle is authorized, every pull is constrained, and every subscriber retains direct control over exit. In Web3 infrastructure, that is the right default. Convenience cannot justify unlimited authority over user funds, especially for long-lived payment relationships that may run for months or years.

If recurring payments are going to become mainstream in crypto, blast radius minimization must be a baseline requirement. Scoped delegate approvals are one of the simplest and strongest ways to enforce that principle.