Billing
Recurring revenue, billed exactly right.
Subscriptions, seats and usage-based pricing with trials, proration and retries built in. Change your pricing without changing your code.
Change the pricing, watch the invoice.
Switch between flat plans, seats and usage to see how the next invoice is built, including proration for mid-cycle changes.
- Flat, seat and usage pricing
- Trials, renewals and retries
- Prorated invoices
Next invoice
Renews Oct 1
- Team plan × 8 seats$12.00 per seat$96.00
- 3 seats added Sep 16Prorated for 15 of 30 days$18.00
Tax is added for each customer's location at checkout.
Subscription lifecycle
One subscription over a year
Follow one customer through a year. Trials, upgrades, failed payments, pauses and cancellations each produce the right invoice and a webhook your app can act on.
What happened
TrialingTrial started
Maria signs up for Pro with a 14-day trial. Her card is saved but not charged.
Invoice
- No invoice for this event
Webhook
POST /webhooks/pandabase { "type": "subscription.created", "data": { "status": "trialing", "plan": "pro_monthly", "trial_end": "2026-09-15" } }
Prorations use the days left in the billing period.
Customer portal
A billing portal for your customers
A hosted portal for plan changes, cards, invoices and cancellations. Link to it from your app with one API call.
- Plan changes with prorationCustomers upgrade or downgrade and see exactly what they'll pay today.
- Offers before they cancelShow a discount or a pause based on why they want to leave.
- Your brand, your domainUse your logo and colors, and serve it from your own subdomain.
Current plan: Pro · $49.00/month
- Days left this period
- 12
- Due today
- $60.00
Visa •••• 4242
Expires 12 / 29
Future renewals use this card. Customers can replace it any time, and past-due invoices are retried on the new card right away.
- Sep 15, 2026INV-0418$49.00Paid
- Aug 15, 2026INV-0377$49.00Paid
- Jul 15, 2026INV-0331$49.00Paid
- Jun 15, 2026INV-0290$49.00Paid
Developers
The Billing API
Subscriptions, usage and the customer portal in a few calls, with SDKs for Node.js, Python and Go.
- Trials with or without a card
- Monthly, yearly or custom intervals
- Proration on every plan change
import Pandabase from "@pandabase/node";const pandabase = new Pandabase(process.env.PANDABASE_SECRET_KEY);const subscription = await pandabase.subscriptions.create({ customer: "cus_M42x", items: [{ price: "price_pro_monthly" }], trial_period_days: 14, metadata: { workspace: "ws_orbitnote" },});console.log(subscription.status); // "trialing"Start a subscription
Create a subscription with a trial. Pandabase charges the saved payment method when the trial ends and on every renewal.
FAQ
Frequently asked questions
Answers about subscriptions, proration and the customer portal. Ask us anything else.
Flat plans, per-seat pricing, usage-based pricing with included amounts and tiers, or a mix, like a platform fee plus usage. Plans can renew monthly, yearly or on a custom interval, with or without a trial.
