Commercial System of Record
billing
Billing on Creem (cards worldwide, merchant of record), plus WeChat Pay / Alipay for mainland China (or manual, for offline invoicing). Same Subscription / Invoice / Customer surface for every backend.
Subscriptions · billing
live
MRR
$12,400
+12%
Active subscribers
847
+34
MoM growth
+5.2%
vs last
Churn
1.2%
-0.3%
Revenue · last 7 days
- Mon42%
- Tue58%
- Wed51%
- Thu67%
- Fri73%
- Sat80%
- Sun92%
$12,400 this month
In code
billing.ts
1import { createCheckoutSession } from "@nebutra/billing";
2
3// Card checkout; WeChat Pay / Alipay have their own adapter for mainland China.
4const session = await createCheckoutSession({
5 customerId: org.stripeCustomerId,
6 priceId: "price_pro_monthly",
7 successUrl: `${origin}/billing/success`,
8 cancelUrl: `${origin}/billing`,
9});
10
11return Response.redirect(session.url);More in nebutra.com
- access-gatePre-launch access gate — invite-code redemption, position queue, drip-release windows. Layers on top of @nebutra/waitlist.
- blogFramework-agnostic blog rules shared by every content surface: PortableText types, reading time, related-post ranking, table-of-contents extraction.
- contractsCross-package event, identity, billing, and notification type contracts. The shared TypeScript boundary that lets commerce talk to iam, queue, webhooks.
- legalLegal entity primitives — corp filings, registered agents, jurisdiction-aware ToS/Privacy generation. Feeds the legal section of @nebutra/preset.
- licenseLicense key generation, validation, and revocation. Ed25519-signed, offline-verifiable, with seat-count and expiry enforcement.
- marketingShared marketing-site primitives — hero blocks, pricing tables, FAQ accordions — reused by landing and product marketing surfaces with the brand tokens already wired.