Skip to main content
Version: v2.0

Architecture

The Formance Platform embraces a cloud native architecture, enabling seamless deployments in various environments such as Formance Cloud, on-prem, or hybrid approaches.

info

Formance Cloud offers minimal effort deployments with sane defaults and rolled-in support. Alternatively, on-prem and hybrid options provide a great level of flexibility — which has proven to be beneficial for deployments existing within the infrastructure of regulated financial institutions and platforms.

Planes

The Formance Platform is composed of two main planes: the control plane, and the data plane. The control plane is responsible for managing the platform and provisioning its components, while the data plane is responsible for delivering the actual core functions of the platform.

trivia

One non-intuitive thing to note is: data in the control plane / data plane terminology, does not only refer to data storage — but to the data storage and compute of services providing core functionality of the platform.

Control plane

The control plane server is responsible for managing the platform and its components, while the control plane client is responsible for provisioning the data plane according to the desired state, and facilitate communication between the data plane and the control plane server.

Components

ComponentDescriptionLicenseSource AvailableGroup
ConsoleAdministration user interfaceProprietaryNot availableServer
ServerInternal Formance Cloud APIProprietaryNot availableServer
AgentAgent queuing request from the control plane serverProprietaryYesClient
OperatorKubernetes operator provisioning the data plane componentsMITYesClient

Data plane

The data plane is composed of a number of components that work together to provide the core functionality of the platform. These components are either considered core services that deliver a specific piece of functionnality to the platform (identified below as group "product"), or support services that provide horizontal support to the platform (identified below as group "system").

Components

NameLicenseSource availableGroupRepository
LedgerMITYesProductGithub
PaymentsMITYesProductGithub
OrchestrationEEYesProductGithub
WalletsEEYesProductGithub
SearchEEYesSystemGithub
AuthEEYesSystemGithub
GatewayEEYesSystemGithub
WebhooksEEYesSystemGithub
StargateEEYesSystemGithub

Dependencies