Formance is a highly modular developer platform to build and operate complex money flows of any size and shapes. It comes with several components, that can be used as a whole as the Formance Stack or separately as standalone micro-services and libraries:
# macOS
brew tap formancehq/tap
brew install fctl
# login to formance cloud
fctl login
# create a sandbox stack deployment
# please note: sandbox are made available for testing and not made for production usage
# read more in the docs [1]
fctl stack create foobar
# commit your first ledger transaction
fctl ledger send world foo 100 EUR/2 --ledger=demo
# checkout the control dashboard
fctl ui
[1] https://docs.formance.com/guides/newSandbox
To start using Formance Stack, run the following commands in a shell:
# Get the code
git clone https://github.com/formancehq/stack.git
# Go to the cloned stack directory
cd stack
# Start the stack containers
docker compose up
The Stack's API is exposed at http://localhost/api.
You can run :
curl http://localhost/api/ledger/_info
The Formance Stack is distributed as a collection of binaries, with optional packaging as Docker images and configuration support through command line options and environment variables. The recommended, standard way to deploy the collection of services is to a Kubernetes cluster through our Formance official Helm charts, which repository is available at helm.formance.com.
The full documentation for the formance stack can be found at docs.formance.com
Formance is transitioning to a unified public facing monorepo (this one) that imports versioned services submodules and provides a common infrastructure layer. As we are finalizing this transition, this monorepo is structured as below
formancehq/stack/
|- components # Stack services in OSS
|- ee # Stack services in EE Licence
|- docs # Exhaustive documentation deployed at docs.formance.com
|- config # Boilerplate configuration for stack dependencies
The Formance Stack is built on open-source, battle tested technologies including: