# getpaykit/paykit

The billing framework for TypeScript. Products in code, handles Stripe, webhooks, and usage state, runs in your app.

Repository: https://github.com/getpaykit/paykit
Canonical: https://ross.abutalabs.com/products/paykit
Homepage: https://paykit.sh
Language: TypeScript
License: MIT
License Family: permissive
Topics: billing, creem, fintech, polar, pricing, saas, stripe, paykit, payments, sdk, typescript
Last push: 2026-07-22T14:42:11+00:00

## Health v2 (maintenance only)
Score: 74/100 (v2, computed 2026-09-03T02:20:16.233290+00:00)
- activity 93, release rhythm 83, longevity 14
- inputs: {"age_days": 206, "days_push": 42, "days_rel": 117, "gap_med": 2.5, "n_releases_24m": 5}
- flags: none
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1041, forks 44 (observed 2026-08-28T04:03:20.526134+00:00)

## What it is
PayKit is an open-source embedded billing framework for TypeScript applications that lets you define plans, features, and metered usage in code. It runs inside your app, keeps billing state in your own database, and handles the Stripe lifecycle including verified webhooks, subscriptions, and entitlement checks.

## Use cases
- add stripe subscription billing to a typescript saas app
- define pricing plans and features in code instead of dashboards
- implement usage-based metered billing with limits and resets
- handle stripe webhooks reliably with deduplication and database sync
- gate features behind subscription entitlements
- avoid vendor lock-in from hosted billing platforms

## When to choose
- you use Stripe and want a type-safe, code-first billing layer inside your own app
- you want billing state in your own Postgres database, joinable with your tables
- you need metered usage billing, entitlement checks, and webhook handling out of the box
- you prefer open-source over hosted billing platforms that own your data

## When to avoid
- you use a payment provider other than Stripe, since PayKit is built for Stripe
- you want a fully hosted billing solution with a managed dashboard and no code
- your stack is not TypeScript/Node.js

## Facets
- artifact type: library
- maturity: active
- function: sdk, webhook, middleware, cli, developer-tools
- domain: fintech, web-development, backend, e-commerce, developer-tools
- platform: cli
- tags: billing, stripe, subscriptions, usage-based-billing, entitlements, saas, payments, type-safe, nodejs, typescript, web-server

## Member repositories
- getpaykit/paykit (main) score 74

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:03:20.526134+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T07:02:56.718191+00:00, confidence not recorded.
  - readme: https://github.com/getpaykit/paykit (fetched 2026-08-28T04:03:20.526134+00:00, sha a981cc0763f6)
  - homepage: https://paykit.sh (fetched 2026-08-29T13:03:57.157344+00:00, sha f87b105e73f2)
  - site_page: https://paykit.sh/docs (fetched 2026-08-29T13:03:57.166211+00:00, sha 25e1b11d2f52)
- Data as of 2026-08-30T08:39:29.467469+00:00.
