Subscription billing for developer tools that start on a card and end on a contract
How developer tool and API companies run self-serve signup, plan upgrades, entitlements and provisioning in Bunny, then convert accounts to invoiced enterprise contracts without re-creating them.
What makes subscription billing different for developer tools and API companies
API-first and developer-focused products that start self-serve on a card and end up negotiating enterprise contracts with committed usage.
-
PLG first, SLG soon after
Developer products get adopted bottom-up and bought top-down. The billing stack chosen for the card-on-file phase rarely survives the first invoiced enterprise contract.
-
Entitlements drive the product
Which features, rate limits and environments a customer gets depends on their plan. If entitlements live in application config rather than billing, upgrades and downgrades drift out of sync.
-
Provisioning is part of signup
A new subscription usually has to create a tenant, workspace or API key. Billing needs to trigger provisioning and know when it succeeded.
-
Self-service must survive custom pricing
Once an enterprise customer has negotiated pricing, most portals stop working for them, and every seat change goes through a rep.
How Bunny handles subscription billing for developer tools and API companies
-
01
Self-service signup and plan changes
Customers sign up, upgrade, downgrade and manage payment methods through Bunny's hosted portal or the React components embedded in your product.
Self-service in Bunny -
02
Feature entitlements from the plan
Features and limits are defined on plans in the catalog; the product reads a customer's entitlements through the API so an upgrade takes effect without a config change.
Entitlements -
03
Tenant provisioning through webhooks and the API
Bunny fires platform webhooks on subscription events so your product can provision tenants and keys, and the GraphQL API and SDKs expose the subscription state.
Tenant provisioning -
04
One account from PLG to SLG
An enterprise quote changes the pricing, term and payment method on an existing account. History, usage and the subscription stay; the customer is not re-created.
PLG to SLG -
05
Self-service on custom-priced plans
Because Bunny handles PLG and SLG together, an enterprise customer on negotiated pricing can still add seats in the portal, priced at their contracted rate.
-
06
Card, bank and invoiced payment
Stripe and Plaid for card and bank collection on self-serve plans; invoiced terms with dunning for contracts; both on the same subscription model.
Dunning
Why the PLG-to-SLG transition is the billing decision
Most developer tool companies do not choose a billing platform at the point they need one. They choose it at signup-flow time, when the requirement is a card form, and they discover the requirement has changed when a customer’s procurement team asks for an annual invoice with net-30 terms and a negotiated rate.
The principle of not bifurcating PLG and SLG exists because running them on separate stacks means the customer who moves between them is the one who gets the worst experience. Bunny’s catalog, portal and quoting are the same objects, so the transition is a quote against an existing account rather than a migration.
More Bunny for developer tools and API companies
See everything on the Developer tools overview, or read about subscription billing in Bunny in general.
Subscription billing for other industries
The same workflow, written up for other kinds of B2B SaaS. Browse all industries.
The RevOps expert your team never had.
- Type "send upgrade quotes to all starter plan accounts" — done in seconds
- At-risk renewals flagged, chased, and closed — before you know there's a problem
- Overdue invoices collected automatically, without an awkward conversation
No credit card required. Cancel anytime.