Stablecoin subscription payments
What are stablecoin subscription payments?
Stablecoin subscription payments are recurring charges a customer pays in stablecoins, withdrawn from their wallet on each billing cycle much as a card is charged every month.
Payment providers and the subscription businesses they serve need each charge confirmed before the period is marked paid, and a missed charge caught before the service carries on unpaid.
Goldsky spots each charge arriving at your billing address and sends it to your backend, while the billing schedule, the customer’s authorization and the decision to mark a period paid stay with you.
Who accepts stablecoin subscription payments?
Payment service providers, stablecoin payment platforms and subscription businesses that bill customers in stablecoins.
How stablecoin subscription payments work
The diagram follows one subscription from the customer signing up to the billing period marked paid, and shows who does each step. Your setup may differ.
Sign the customer up
Each charge is checked against a plan, so the plan and the paying wallet have to be on file first.
Your billing system stores the plan, the amount, the billing date and the wallet the customer pays from. A charge from a wallet that isn’t on file can’t be matched to anyone.
Get the customer’s authorization to charge
A stablecoin can’t be pulled from a wallet unless the owner allows it, the way a card holder agrees to recurring billing.
The customer connects their wallet and signs a one-time permit, often on the payment provider’s hosted page, that lets your billing pull each future charge without another signature. If the customer revokes the permit or the wallet runs short, the next charge fails, and your billing has to notice.
Start each charge on the billing cycle
Nothing moves until your billing system asks for the money on the billing date.
Your billing system pulls each charge that’s due through the customer’s permit, so the customer doesn’t sign anything. A run that misses some subscriptions leaves those periods unpaid without anyone noticing.
Settle the charge on the chain
The charge is paid once the stablecoins leave the customer’s wallet on the chain.
The transfer is recorded in a block. For a short time the newest blocks can still be rewritten, so a charge seen once isn’t final yet.
Spot each charge at your billing address
Handled by Goldsky TurboYour billing system needs to know each charge arrived on the chain, since a withdrawal it started can still fail.
Every stablecoin transfer into the address your charges are pulled into has to be caught with the paying wallet, token, amount and transaction. Watching the token contract for transfers to that address is enough, and leaving out a token you accept means those charges never show.
In Turbo Pipelines, a SQL filter on the stablecoin transfers dataset keeps the transfers whose
Stream stablecoin transfers (opens in a new tab)recipientis your billing address, for every stablecoin contract you accept.Send each charge to your backend
Handled by Goldsky TurboYour billing system acts on a call it receives, so it doesn’t have to check the chain itself.
Each call has to carry a stable ID, because delivery can repeat and a repeated call must not mark a period paid twice. A reorg can also undo a charge after the call went out.
Goldsky’s webhook sink posts each charge to your endpoint and retries until it’s accepted. Reorg corrections reach the same endpoint, which applies them and ignores repeats by the row ID.
Set up the webhook sink (opens in a new tab)Mark the period paid and chase misses
The subscription stays active only while each period is paid.
Your billing system matches each charge to a subscription by paying wallet and amount, and marks the period paid once the charge is final by your rule. Charges that never arrived don’t produce a call, so your billing checks for unpaid periods after each run and retries or notifies the customer.
What you control
- Your team
- Sign the customer up
- Get the customer’s authorization to charge
- Start each charge on the billing cycle
- Mark the period paid and chase misses
Security and deployment
- SOC 2 Type IIIndependently audited security controls.
- Dedicated infrastructureSingle-tenant options for production workloads.
- Data residencyCloud, on-premises or co-located.
More use cases that detect deposits
- Deposit detectionSpot incoming stablecoin transfers to your customers’ wallets and credit them once confirmed.
- Stablecoin wallet top-upsCredit a user’s app balance when a stablecoin transfer to their embedded wallet confirms.
- Stablecoin deposits to business bank accountsDetect stablecoin deposits into business bank and fintech accounts and post them to the account alongside fiat.
- Crypto exchange deposit detectionDetect deposits to each exchange user’s addresses, wait for enough confirmations and credit the user once.
- Accept stablecoin paymentsConfirm stablecoin payments from shoppers and mark the order paid.
- Authorize and capture stablecoin paymentsHold a buyer’s stablecoins in an escrow contract at checkout, capture them to the merchant as orders ship, void what can’t be filled and refund after capture.
- Stablecoin off-rampsDetect the stablecoin a customer sends to cash out, so the provider can pay fiat to their bank account or card.
- Confirm x402 and agent stablecoin paymentsConfirm stablecoin payments that AI agents make, often per request, and keep each agent within its spending limits.
Use cases built the same way
Confirm stablecoin subscription payments with Goldsky
We’ll map it to your systems and show you what Goldsky runs, so your team builds the product, not the pipelines underneath it.