{"adoption": {"forks": 116, "observed_at": "2026-08-28T04:03:29.813544+00:00", "stars": 1078}, "canonical_url": "https://ross.abutalabs.com/products/stripe-sync-engine", "card": {"archived": false, "artifact_type": "service", "description": "Sync your Stripe account to you Postgres database.", "domain": ["fintech", "databases", "backend", "self-hosted"], "enriched": true, "function": ["etl", "database", "http-server", "webhook"], "health_score": 97, "homepage": "https://supabase.github.io/stripe-sync-engine", "language": "TypeScript", "license": "Apache-2.0", "license_family": "permissive", "maturity": "active", "member_repos": ["stripe/sync-engine"], "name": "stripe/sync-engine", "platform": ["self-hosted"], "pushed_at": "2026-08-20T22:25:51+00:00", "repo": "stripe/sync-engine", "stars": 1078, "tags": ["stripe", "postgres", "sync", "subscriptions", "fastify", "nodejs", "docker", "typescript"], "topics": ["typescript", "postgres", "postgresql", "stripe", "stripe-subscriptions", "stripe-api", "stripe-payments", "fastify"], "urls": [], "use_cases": ["sync stripe data to postgres", "query stripe subscriptions with sql", "keep local database mirror of stripe customers", "avoid stripe api rate limits by syncing data locally", "run analytics on stripe payment data", "self-host stripe to database sync service"], "what_it_is": "A self-hosted service that syncs your Stripe account data (customers, subscriptions, payments) into a Postgres database. Built in TypeScript with Fastify, it keeps a local relational mirror of Stripe state for querying.", "when_to_avoid": ["you need tight access controls or public-facing deployment - it lacks strong access controls", "you only need occasional Stripe API calls rather than continuous sync", "you want a fully supported production service with security guarantees"], "when_to_choose": ["you need to query Stripe data with SQL or join it with your own tables", "you want a self-hosted, open-source sync instead of vendor solutions", "you use Postgres and TypeScript/Node infrastructure"]}, "data_as_of": "2026-08-30T08:39:29.467469+00:00", "members": [{"path": "/products/stripe-sync-engine", "repo": "stripe/sync-engine", "role": "main", "score": 91}], "provenance": {"archived": {"kind": "observed", "observed_at": "2026-08-28T04:03:29.813544+00:00", "source": "github"}, "artifact_type": {"confidence": null, "enriched_at": "2026-08-30T06:53:12.401886+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0484f727100c239bedb737fd2d745496b07713ddb2fa6de04e3fef3d6d587b1a", "fetched_at": "2026-08-28T04:03:29.813544+00:00", "kind": "readme", "missing": false, "url": "https://github.com/stripe/sync-engine"}], "taxonomy_version": 1}, "description": {"kind": "observed", "observed_at": "2026-08-28T04:03:29.813544+00:00", "source": "github"}, "domain": {"confidence": null, "enriched_at": "2026-08-30T06:53:12.401886+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0484f727100c239bedb737fd2d745496b07713ddb2fa6de04e3fef3d6d587b1a", "fetched_at": "2026-08-28T04:03:29.813544+00:00", "kind": "readme", "missing": false, "url": "https://github.com/stripe/sync-engine"}], "taxonomy_version": 1}, "enriched": {"inputs": [], "kind": "computed", "method": "enrichment_status"}, "function": {"confidence": null, "enriched_at": "2026-08-30T06:53:12.401886+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0484f727100c239bedb737fd2d745496b07713ddb2fa6de04e3fef3d6d587b1a", "fetched_at": "2026-08-28T04:03:29.813544+00:00", "kind": "readme", "missing": false, "url": "https://github.com/stripe/sync-engine"}], "taxonomy_version": 1}, "health_score": {"inputs": ["days_since_push", "days_since_release", "archived"], "kind": "computed", "method": "health_v1"}, "homepage": {"kind": "observed", "observed_at": "2026-08-28T04:03:29.813544+00:00", "source": "github"}, "language": {"kind": "observed", "observed_at": "2026-08-28T04:03:29.813544+00:00", "source": "github"}, "license": {"kind": "observed", "observed_at": "2026-08-28T04:03:29.813544+00:00", "source": "github"}, "license_family": {"inputs": ["license"], "kind": "computed", "method": "license_family"}, "maturity": {"confidence": null, "enriched_at": "2026-08-30T06:53:12.401886+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0484f727100c239bedb737fd2d745496b07713ddb2fa6de04e3fef3d6d587b1a", "fetched_at": "2026-08-28T04:03:29.813544+00:00", "kind": "readme", "missing": false, "url": "https://github.com/stripe/sync-engine"}], "taxonomy_version": 1}, "member_repos": {"kind": "observed", "observed_at": "2026-08-28T04:03:29.813544+00:00", "source": "github"}, "name": {"kind": "observed", "observed_at": "2026-08-28T04:03:29.813544+00:00", "source": "github"}, "platform": {"confidence": null, "enriched_at": "2026-08-30T06:53:12.401886+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0484f727100c239bedb737fd2d745496b07713ddb2fa6de04e3fef3d6d587b1a", "fetched_at": "2026-08-28T04:03:29.813544+00:00", "kind": "readme", "missing": false, "url": "https://github.com/stripe/sync-engine"}], "taxonomy_version": 1}, "pushed_at": {"kind": "observed", "observed_at": "2026-08-28T04:03:29.813544+00:00", "source": "github"}, "repo": {"kind": "observed", "observed_at": "2026-08-28T04:03:29.813544+00:00", "source": "github"}, "stars": {"kind": "observed", "observed_at": "2026-08-28T04:03:29.813544+00:00", "source": "github"}, "tags": {"confidence": null, "enriched_at": "2026-08-30T06:53:12.401886+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0484f727100c239bedb737fd2d745496b07713ddb2fa6de04e3fef3d6d587b1a", "fetched_at": "2026-08-28T04:03:29.813544+00:00", "kind": "readme", "missing": false, "url": "https://github.com/stripe/sync-engine"}], "taxonomy_version": 1}, "topics": {"kind": "observed", "observed_at": "2026-08-28T04:03:29.813544+00:00", "source": "github"}, "urls": {"kind": "observed", "observed_at": "2026-08-28T04:03:29.813544+00:00", "source": "github"}, "use_cases": {"confidence": null, "enriched_at": "2026-08-30T06:53:12.401886+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0484f727100c239bedb737fd2d745496b07713ddb2fa6de04e3fef3d6d587b1a", "fetched_at": "2026-08-28T04:03:29.813544+00:00", "kind": "readme", "missing": false, "url": "https://github.com/stripe/sync-engine"}], "taxonomy_version": 1}, "what_it_is": {"confidence": null, "enriched_at": "2026-08-30T06:53:12.401886+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0484f727100c239bedb737fd2d745496b07713ddb2fa6de04e3fef3d6d587b1a", "fetched_at": "2026-08-28T04:03:29.813544+00:00", "kind": "readme", "missing": false, "url": "https://github.com/stripe/sync-engine"}], "taxonomy_version": 1}, "when_to_avoid": {"confidence": null, "enriched_at": "2026-08-30T06:53:12.401886+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0484f727100c239bedb737fd2d745496b07713ddb2fa6de04e3fef3d6d587b1a", "fetched_at": "2026-08-28T04:03:29.813544+00:00", "kind": "readme", "missing": false, "url": "https://github.com/stripe/sync-engine"}], "taxonomy_version": 1}, "when_to_choose": {"confidence": null, "enriched_at": "2026-08-30T06:53:12.401886+00:00", "kind": "inferred", "prompt_version": 1, "sources": [{"content_hash": "0484f727100c239bedb737fd2d745496b07713ddb2fa6de04e3fef3d6d587b1a", "fetched_at": "2026-08-28T04:03:29.813544+00:00", "kind": "readme", "missing": false, "url": "https://github.com/stripe/sync-engine"}], "taxonomy_version": 1}}, "score": {"components": {"activity": 98, "longevity": 100, "rhythm": 76}, "computed_at": "2026-09-03T02:20:16.233290+00:00", "flags": [], "formula": "round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)", "inputs": {"age_days": 1952, "days_push": 13, "days_rel": 160, "gap_med": 4.0, "n_releases_24m": 39}, "score": 91, "version": 2}, "staleness": {"enrichment_outdated": false, "low_confidence": false, "scrape_days": 9, "stale_scrape": false}}