{
  "version": "2",
  "generatedAt": "2026-11-03T22:49:39.280Z",
  "listing": {
    "slug": "formancehq--ledger",
    "name": "Formance Ledger",
    "tagline": "Programmable core ledger for fintech: multi-posting transactions and Numscript over a REST API.",
    "shortTagline": "Programmable core ledger",
    "description": "Formance Ledger is a Postgres-backed financial ledger service for apps that hold or move money: user balances, marketplaces, payouts, loans. Transactions are atomic multi-postings, optionally written in the Numscript DSL, and every account, balance, volume and log is queryable over the v2 API with official SDKs. MIT standalone; Formance sells an enterprise platform on top.",
    "capabilities": [
      "adaptable",
      "operable"
    ],
    "vertical": "invoicing-finance",
    "alternativeTo": [
      "Modern Treasury"
    ],
    "shape": "internal-tool",
    "formFactor": "api",
    "executionModel": "deterministic",
    "provenance": "unknown",
    "codeStack": {
      "languages": [
        "Go"
      ],
      "frameworks": [],
      "packageManager": "go modules",
      "database": [
        "PostgreSQL"
      ],
      "hostingTarget": [
        "Docker",
        "Kubernetes (Formance operator)"
      ]
    },
    "modelStack": null,
    "repos": [
      {
        "url": "https://github.com/formancehq/ledger",
        "owner": "formancehq",
        "name": "ledger",
        "license": "MIT",
        "stars": 1373,
        "lastCommit": "2026-09-03"
      }
    ],
    "interface": {
      "kind": "api",
      "url": "https://docs.formance.com/ledger",
      "official": true,
      "hosted": "both"
    },
    "operability": "official",
    "recommendedWrapper": null,
    "reach": [
      {
        "job": "Create ledgers and buckets",
        "reachable": true,
        "evidence": "openapi.yaml paths /v2/{ledger}, /v2/_/buckets/{bucket}"
      },
      {
        "job": "Post multi-posting transactions",
        "reachable": true,
        "evidence": "POST /v2/{ledger}/transactions with postings; README quickstart"
      },
      {
        "job": "Run Numscript scripts",
        "reachable": true,
        "evidence": "transactions accept a script body; Numscript DSL documented at docs.formance.com/modules/numscript"
      },
      {
        "job": "Read accounts, balances and volumes",
        "reachable": true,
        "evidence": "openapi.yaml /v2/{ledger}/accounts, aggregate balances and volumes endpoints"
      },
      {
        "job": "Attach metadata to accounts and transactions",
        "reachable": true,
        "evidence": "openapi.yaml /v2/{ledger}/accounts/{address}/metadata"
      },
      {
        "job": "Revert transactions",
        "reachable": true,
        "evidence": "revert endpoint in v2 API"
      },
      {
        "job": "Bulk operations",
        "reachable": true,
        "evidence": "openapi.yaml /v2/{ledger}/_bulk"
      },
      {
        "job": "Audit logs",
        "reachable": true,
        "evidence": "logs endpoints; README mentions shipping logs to replica stores"
      },
      {
        "job": "Export to analytics stores",
        "reachable": true,
        "evidence": "openapi.yaml /v2/_/exporters, pipelines"
      },
      {
        "job": "Console UI",
        "reachable": false,
        "evidence": "the Console is a separate UI in the standalone compose, not part of the API"
      }
    ],
    "editions": [
      {
        "name": "Open Source",
        "price": null,
        "open": true,
        "distributions": [
          {
            "kind": "source",
            "url": "https://github.com/formancehq/ledger"
          },
          {
            "kind": "container",
            "url": "https://github.com/formancehq/ledger/pkgs/container/ledger",
            "command": "docker compose -f examples/standalone/docker-compose.yml up"
          },
          {
            "kind": "binary",
            "url": "https://github.com/formancehq/ledger/releases"
          }
        ]
      },
      {
        "name": "Enterprise",
        "price": null,
        "open": false,
        "distributions": [
          {
            "kind": "hosted",
            "url": "https://www.formance.com/pricing"
          }
        ]
      }
    ],
    "skills": {
      "kind": "none",
      "paths": [],
      "install": null,
      "note": "No SKILL.md, Claude Code plugin, or skills install target in the repo."
    },
    "customization": {
      "summary": "Run the standalone compose and set the Postgres URI, bind address, auto-upgrade and bulk parallelism as env vars or CLI flags; the chart of accounts is whatever account paths you post to. Business rules live in Numscript templates your app sends, which is the real customization surface.",
      "envVars": [
        "POSTGRES_URI",
        "POSTGRES_MAX_OPEN_CONNS",
        "POSTGRES_MAX_IDLE_CONNS",
        "AUTO_UPGRADE",
        "BULK_PARALLEL",
        "DEBUG",
        "EXPERIMENTAL_FEATURES",
        "EXPERIMENTAL_NUMSCRIPT_INTERPRETER"
      ],
      "configFiles": [
        "examples/standalone/docker-compose.yml"
      ],
      "promptFiles": [],
      "effort": "config-only",
      "editCount": 9
    },
    "useWhen": [
      "I am building a wallet, marketplace or lending product and need a ledger that will not let balances go wrong",
      "I want my agent to post and query money movements through a typed API instead of a spreadsheet"
    ],
    "accounts": [
      "Formance Cloud account (enterprise deployments only)"
    ],
    "active": true,
    "lastActivity": "2026-09-03",
    "gotchas": [
      "Production is only supported through the Formance Kubernetes operator; the compose file is for local use",
      "A ledger, not an accounting package: no invoices, tax or reporting UI",
      "Numscript is its own language to learn"
    ],
    "fit": {
      "adaptable": 3,
      "operable": 3
    },
    "evidence": {
      "formFactor": "HTTP service with OpenAPI (openapi.yaml in repo); no end-user UI beyond the Console",
      "executionModel": "no model at runtime",
      "operability": "docs.formance.com/ledger and SDKs published by Formance; openapi.yaml in repo",
      "effort": "examples/standalone/docker-compose.yml env keys; cmd/serve.go flags bind, auto-upgrade, bulk-parallel",
      "editions": "formance.com/pricing: Open Source MIT free, Enterprise annual subscription",
      "active": "GitHub pushedAt 2026-09-03"
    },
    "confidence": {
      "formFactor": 0.9,
      "executionModel": 0.95,
      "operability": 0.9,
      "effort": 0.8,
      "reach": 0.8,
      "editions": 0.85
    },
    "openQuestions": [
      "SDK language list (docs page is JS-rendered; not fetched)",
      "Auth configuration for the standalone service (AUTH_ENABLED or similar) was not confirmed"
    ],
    "sources": [
      {
        "url": "https://github.com/formancehq/ledger",
        "foundBy": "sourcing:invoicing-finance:curated"
      },
      {
        "url": "https://www.formance.com/pricing",
        "foundBy": "analysis:invoicing-finance"
      },
      {
        "url": "https://github.com/formancehq/ledger/blob/main/openapi.yaml",
        "foundBy": "analysis:invoicing-finance"
      }
    ],
    "research": {
      "stage": "verified",
      "verdict": "unverified",
      "reason": "MIT, env-configured, official API with complete Reach. Internal-tool shape: a component fintech builders adopt, not an SMB app.",
      "disputed": []
    },
    "url": "apps/formancehq--ledger.html",
    "coverage": "partial",
    "paid": false,
    "source": "research/verified/formancehq--ledger.json"
  }
}
