Automated USDC subscriptions with gasless payments using Circle Paymaster and Chainlink on Arbitrum.
SubCircle is a decentralized subscription payment protocol designed to transform recurring payments in Web3. Built on Arbitrum Sepolia, it leverages Account Abstraction (ERC-4337) and Circle’s Paymaster to enable seamless, gasless USDC subscriptions. SubCircle addresses three core challenges in Web3-based subscriptions:
Technical Implementation
Key Features
Benefits For Users:
Future Potential
Built at ETH Taipei Hackathon 2025, SubCircle aims to close the UX gap between traditional and Web3 subscription systems by delivering a secure, automated, and gasless recurring payment experience.
I built a USDC-based subscription system on Arbitrum Sepolia using smart wallets, Circle’s Paymaster, and viem. The goal was to enable gasless, recurring payments where users can subscribe to content creators and optionally send USDC tips—without needing ETH for gas.
I used Foundry to write and test the smart contracts, and handled all off-chain logic in Node.js using viem. This includes account abstraction via ERC-4337, EIP-2612 permit signing, and userOp construction. Each user gets their own deployed Subscription contract, which keeps the system modular and customizable.
For gas sponsorship, I integrated Circle’s Paymaster, constructed the paymasterData manually with permit signatures, and estimated postOpGas directly from the Paymaster contract. This allowed me to pack everything into a single userOp and submit it through Pimlico’s bundler.
One particularly hacky part was manually encoding the entire flow using low-level viem utilities—no abstractions, just raw permit + packed data + bundled ops.
I'm also integrating Chainlink Automation to periodically trigger performUpkeep() on each user’s Subscription contract, enabling fully automated, decentralized renewals.