When to use it
Use Stablecoin Subscriptions when you have an ongoing commercial relationship with the customer. Common fit examples include:- Monthly or annual SaaS plans.
- Memberships, subscriptions, and paid communities.
- Premium access to software, content, games, or services.
- Retainers, recurring support plans, or account-managed service packages.
- Usage models where access should continue only while billing remains active.
Try the demo
You can try a demo subscription storefront here:Subscription demo storefront
Open the demo storefront to see the initial StablePay Subscriptions Checkout authorization flow.
Product model
The subscription model is built around initial authorization, billing-cycle invoices, automatic renewal, and webhook-driven entitlement.How it works
- Your backend creates a subscription for a customer and plan, with amount, billing interval, start mode, and redirect context.
- StablePay returns a hosted checkout URL for the first authorization or first payment.
- The customer opens StablePay Hosted Checkout, chooses a wallet, confirms details, signs the authorization, and pays the first invoice if required.
- StablePay saves the reusable authorization / payment method for future billing cycles.
- When each billing cycle arrives, StablePay creates an invoice and attempts an off-session renewal charge.
- StablePay sends webhooks for subscription, invoice, and payment outcomes.
- Your system grants, extends, restricts, or ends customer access based on webhook events.
Billing start modes
Retry and dunning
Automatic recovery after a failed renewal is called dunning. Renewal payments can fail because of wallet balance, authorization, network, or compliance conditions. When the latest amount due cannot be charged, StablePay can move the subscription topast_due, send webhooks, and apply the default retry strategy.
Default retry timing:
If any retry succeeds, the invoice becomes paid, the subscription can return to
active, and the next billing cycle continues. If all retries fail, the subscription automatically becomes canceled and no new billing cycles are generated.
Merchants should avoid notifying customers on every retry failure. A better pattern is to send one balance or wallet reminder after the first failure, then apply your product policy for grace periods, feature restrictions, or temporary continued access.
Cancellation
StablePay supports two cancellation patterns:
Cancel-at-period-end usually updates cancellation fields first, such as
cancel_at_period_end=true. The subscription is not actually ended until subscription.canceled is received. Merchants should not treat subscription.updated as final cancellation.
Webhook events
Webhooks are the source of truth for subscription integrations. Usesubscription.id and event_id for idempotency, and apply the latest object from the webhook payload to avoid state rollback from out-of-order events.
Subscription events
Invoice and refund events
State model
Key subscription state transitions:
Do not rely only on frontend redirect results to determine subscription state. Business state should be webhook-driven.
Launch guidance
New merchants launching subscriptions
Start with “start now and charge immediately” to validate conversion, customer support load, webhook processing, and reconciliation. Add trial after activation and renewal handling are stable. Add “start now and charge later” only when the business needs aligned billing dates or future first-charge behavior.Merchants adding stablecoin billing to existing card subscriptions
Offer StablePay as a parallel subscription payment option instead of replacing existing card subscriptions directly. When a customer chooses to switch, create a new StablePay subscription and set the original card subscription to cancel at period end to avoid charging twice for the same entitlement.Payment methods, currency, and networks
Stablecoin Subscriptions currently support creating subscriptions in USD, with stablecoin charging and settlement in USDT / USDC. Subscription flows can support wallets such as MetaMask, Binance Wallet, OKX Wallet, and WalletConnect, and networks such as Ethereum, BNB Smart Chain, and Solana. StablePay Subscriptions Checkout does not support scan-to-address or copy-address transfer payment. Recurring billing requires the customer to authorize future charges through a supported connected-wallet flow. Actual availability can vary by merchant configuration, environment, and compliance requirements. For complete coverage, see Supported Wallets, Supported Networks, and Currencies & Auto Currency Conversion.Important notes
- Initial wallet authorization is required before automatic renewal charges can occur.
- Subscriptions Checkout supports connected-wallet authorization only and does not support QR/address transfer payment.
subscription.createddoes not mean the customer has authorized or paid. Grant final paid access from webhook outcomes.subscription.activemeans the subscription is in a renewable state, butinvoice.paidis the more direct signal that money was received for a billing period.- Refunds happen against payments, not directly against subscription objects.
- Webhooks should be treated as the source of truth for entitlement, service access, and internal billing state.
