Billing & Subscriptions
experimentalRecurring plans and subscription state on top of Stripe: a complete status state machine, idempotent webhook application, plan changes, metered usage, and dunning hooks.
Billing & Subscriptions is source-visible, contract-first code — your agent reads the whole interface before it composes, never a black box.
Every hook has typed I/O and required tests, and the composition is pinned in
microservices.lock.json — what you inspect here is exactly what
pnpm microservices check verifies and deploys.
Typed hooks
Extension points with typed input/output and required tests — customize behavior without forking the module.
- beforeSubscriptionChange
- onSubscriptionActivated
- onSubscriptionPastDue
Events emitted
A stable, documented event surface other modules can subscribe to.
- subscription.started
- subscription.activated
- subscription.past_due
- subscription.canceled
- subscription.plan_changed
Permissions
Scoped capabilities the module declares; the gateway enforces them at the boundary.
- billing.read
- billing.write
- billing.admin
Experimental listing. Generated from the canonical module manifest via `registry build`.