Financial Database

Record real-time money movements on a programmable financial
ledger built for scalable asset tracking.

Ledger main features

  • Realtime balances

    Know at any point in time what is owed to whom and where the money is, with an unmatched granularity. Any money movement will result in balance being changed.

  • Virtual accounts

    Use virtual ledger accounts to model how money flows end-to-end throughout your system, choosing your own naming scheme. Accounts can represent anything, from a user wallet to an order-item to a pending withdrawal.

  • Hold and move any asset

    Formance Ledger doesn’t coerce you into a specific set of currencies and assets denominations. Build apps that hold and move ISO 4217 currencies, ETH and AAPL or even MADEUPONE.

  • Fine grained money states

    Use namespaced accounts to move and track money in your system. Model funds in flight, create and adapt to various payments schemes.

  • Payments agnostic

    Whatever the source of the transaction, you can use to it as a starting point to build your ledger flow as we abstract payment source’s specificities away.

  • Unlimited sub-ledgers

    Scale horizontally with unlimited sub-ledgers. Choose your sharding strategy from one unique ledger to a ledger per user.


Ledger Dashboard

Everything in one place.


Overview of all your ledger's data.


List of all your transactions.

Transaction Details

Your transaction with all your expected details.


Keep an eye on a specific ledger account.


Ledger features

Multi Source & Destination

Simplify intricate transactions with our atomic, single I/O posting model. Opt for single or multiple account sends.

Native Aggregations

Query ledger accounts for transactions volumes and multi-accounts balances, over time and by specific groups.

Hold and move any asset

Ledger supports any assets, from ISO 4217 and ETH to AAPL and even MADEUPONE. Build versatile apps without limitations.


Available with your favorite language

Start using the Ledger with our SDK.

import { Formance } from "@formance/formance-sdk";
import { CreateTransactionResponse } from "@formance/formance-sdk/dist/sdk/models/operations";
import { ErrorsEnum } from "@formance/formance-sdk/dist/sdk/models/shared";
const sdk = new Formance({
  security: {
    authorization: "Bearer YOUR_ACCESS_TOKEN_HERE",
  metadata: {
    "dolore": "iusto",
    "dicta": "harum",
  postings: [
      amount: 100,
      asset: "COIN",
      destination: "users:002",
      source: "users:001",
      amount: 100,
      asset: "COIN",
      destination: "users:002",
      source: "users:001",
  reference: "ref:001",
  script: {
    plain: "vars {
  account $user
  send [COIN 10] (
  	source = @world
  	destination = $user
    vars: {
      "commodi": "repudiandae",
      "quae": "ipsum",
      "quidem": "molestias",
      "excepturi": "pariatur",
  timestamp: new Date("2022-06-29T05:25:54.356Z"),
}, "ledger001", true).then((res: CreateTransactionResponse) => {
  if (res.statusCode == 200) {
    // handle response
In the works

Credit v1, Debit v2

Bitemporality, account-based locking and native sharding is coming to the ledger,
with out-of-the-box compatible with existing ledger deployments.

Use Cases

Explore our use cases

Model funds in flight on your ledger to enable deferred payouts and fund pending processing

Split a customer payment to multiple parties with templates

Use multi-destination to collect fees on your ledger transactions


Frequently asked questions

Social & Community Section

Join Formance Community Slack

Looking for best practices on how to use Formance? Connect with finance innovators from all over the world. The future of financial infrastructure is one-click away.

We are dedicated to Open Source

Keep ownership over your financial back-end with our Open Source products. Experience transparency, enhanced security, and community-driven innovation.


Start using our
Open Source Ledger

Get started and contact us if you have any question.

800+ finance innovators building on Formance and sharing best practises.