Pull-based subscription billing on Arc
Recurring revenue, collected in USDC.
Levy pulls subscription payments in USDC every billing cycle. Your customers approve an allowance up front instead of paying each invoice. You collect on schedule, without chasing invoices or retrying cards by hand.
Get early access Read the whitepaper
Built for Arc. Settled in USDC. Open-source contracts at launch.
How it works
-
1
You create a plan
Set a price and a billing cycle (anything from a day to ten years) on-chain, with an optional free trial. The price is fixed at creation. To reprice, create a new plan.
-
2
Subscriber checks out
From your checkout link, the customer approves a USDC allowance for a number of cycles and subscribes: two wallet confirmations. Without a free trial, the first cycle is charged right away. No card on file, and no signature each cycle.
-
3
The keeper pulls every cycle
When a billing date arrives, the charge function accepts calls from any address. Levy's keeper calls it on schedule: the contract pulls the payment, sends 99% to you and 1% to the protocol, and advances the cycle.
Your customers stay in control
Pull payments ask customers for trust. The contract limits what can be pulled, and customers can stop paying on their own, without asking you.
They set the cap
The customer approves a USDC allowance for the number of cycles they choose. Levy can never pull more than that.
Only the price, only when due
Each cycle the contract can pull the plan's price once, only to that plan's merchant, and never before the billing date. Prices are fixed, so they can't be raised on an existing subscription.
Stop any time
Customers pause, resume or cancel in the customer portal with their own wallet. They can also revoke the allowance directly, and nothing more is pulled.
Every payment on record
Each charge is an on-chain transaction with an invoice reference, listed in the portal and visible on the block explorer.
The fee
1%
The protocol takes one percent of each collected payment. No monthly tiers. No per-seat pricing. No setup fee. If nothing is collected, nothing is owed.
What comes with it
Dunning
When a pull fails, Levy retries on a schedule instead of dropping the subscription. The contract tracks failures on-chain and pauses the subscription only after repeated failures.
Webhooks
Every billing event reaches your endpoint: subscription created or changed, charge succeeded or failed, dunning started, paused, resumed, cancelled, and an early warning when a customer's allowance is running low. Each delivery carries an Ed25519 signature for verification.
Invoicing
Every charge is an invoice record with a reference, transaction hash, and block number. Export the full history as CSV for your books.
Checkout and portal
A checkout link per plan, carrying your own customer reference. Customers see their subscriptions and pause, cancel or top up their allowance from their wallet.
Roadmap
- Built
- Subscription contracts, the keeper service, dunning engine, signed webhooks, API, merchant dashboard, customer portal and checkout. Live on Arc testnet since 26 September 2026.
- Now
- Testnet soak: a week of real billing cycles end to end, covering trials, failed payments, pauses, plan changes and Permit2, and clearing the pre-mainnet verification list.
- Next
- An external audit, then mainnet deployment with a multisig treasury.
Get early access
Levy is live on Arc testnet, running its week-long soak, and is looking for its first merchants. If you run subscriptions and want to collect them in USDC, get in touch.
- Arc testnet contracts
- SubscriptionManager 0x33c8e7e46583bdfd2e001f55ac1c58bd84eb739f
- FeeRouter 0xa6efee5f5a2eb2afae102f790b4889fcc01fe848
For developers: the contracts will be open source, with the keeper, API and dashboards in the same repository. It opens as Levy approaches mainnet, where the addresses will be published at deployment. The whitepaper (PDF) covers the design, security model and economics in full.