Overview
Vatly uses Stripe for subscription billing. You can upgrade to a paid tier (Business or Scale), manage your subscription, and view billing details through the admin API.Tiers & Pricing
| Tier | Monthly Requests | Burst Limit (per min) | Consultation Number |
|---|---|---|---|
| Free | 500 | 20 | No |
| Business | 10,000 | 60 | Yes |
| Scale | 50,000 | 120 | Yes |
Checkout
Create a Stripe Checkout session to subscribe to a paid tier.url to complete payment.
Billing Portal
Let users manage their subscription (change plan, update payment method, cancel) through the Stripe Customer Portal.Subscription Status
Check the current subscription status for your account.Subscription Statuses
| Status | Meaning |
|---|---|
active | Subscription is active and paid |
trialing | Subscription is in trial period |
past_due | Payment failed, retrying — tier remains unchanged |
unpaid | Payment failed after retries — tier remains unchanged |
canceled | Subscription canceled — tier downgraded to Free |
Webhooks
Vatly automatically processes Stripe webhook events to keep your tier in sync:subscription.created— Tier is set based on the subscribed pricesubscription.updated— Tier is updated onactive/trialingstatus; kept unchanged onpast_due/unpaidsubscription.deleted— Account is downgraded to Free
Billing Endpoints
| Method | Path | Auth | Description |
|---|---|---|---|
| POST | /admin/billing/checkout | Clerk JWT | Create checkout session |
| POST | /admin/billing/portal | Clerk JWT | Create billing portal session |
| GET | /admin/billing/subscription | Clerk JWT | Get subscription status |
| POST | /webhooks/stripe | Stripe signature | Stripe webhook receiver |