The Formance Platform exposes a unified REST API across all modules. All endpoints use JSON for request and response bodies, and authentication is handled via OAuth2 bearer tokens.
Set your base URL once and use it everywhere:
Bash
export FORMANCE_API_URL=https://<your-stack>.sandbox.formance.cloud
export FORMANCE_TOKEN=$(fctl cloud generate-personal-token)All Operations#
auth11
GET
v1/api/auth/_infoGet Server InfoGET
v1/api/auth/.well-known/openid-configurationGet OpenID ConfigurationClients7
GET
v1/api/auth/clientsList ClientsPOST
v1/api/auth/clientsCreate ClientDELETE
v1/api/auth/clients/{clientId}Delete ClientGET
v1/api/auth/clients/{clientId}Read ClientPUT
v1/api/auth/clients/{clientId}Update ClientPOST
v1/api/auth/clients/{clientId}/secretsCreate SecretDELETE
v1/api/auth/clients/{clientId}/secrets/{secretId}Delete SecretUsers2
GET
v1/api/auth/usersList UsersGET
v1/api/auth/users/{userId}Read Userledger65
Accounts5
GET
v2/api/ledger/v2/{ledger}/accountsList AccountsHEAD
v2/api/ledger/v2/{ledger}/accountsCount AccountsGET
v2/api/ledger/v2/{ledger}/accounts/{address}Get AccountPOST
v2/api/ledger/v2/{ledger}/accounts/{address}/metadataAdd Account MetadataDELETE
v2/api/ledger/v2/{ledger}/accounts/{address}/metadata/{key}Delete Account MetadataBalances & Volumes2
GET
v2/api/ledger/v2/{ledger}/aggregate/balancesGet Aggregate BalancesGET
v2/api/ledger/v2/{ledger}/volumesList VolumesBulk Operations1
POST
v2/api/ledger/v2/{ledger}/_bulkBulk OperationsExporters5
GET
v2/api/ledger/v2/_/exportersList ExportersPOST
v2/api/ledger/v2/_/exportersCreate ExporterDELETE
v2/api/ledger/v2/_/exporters/{exporterID}Delete ExporterGET
v2/api/ledger/v2/_/exporters/{exporterID}Get Exporter StatePUT
v2/api/ledger/v2/_/exporters/{exporterID}Update ExporterLedger Management12
GET
v2/api/ledger/v2List LedgersDELETE
v2/api/ledger/v2/_/buckets/{bucket}Delete bucketPOST
v2/api/ledger/v2/_/buckets/{bucket}/restoreRestore bucketGET
v2/api/ledger/v2/{ledger}Get LedgerPOST
v2/api/ledger/v2/{ledger}Create LedgerGET
v2/api/ledger/v2/{ledger}/_infoGet Ledger InfoPOST
v2/api/ledger/v2/{ledger}/queries/{id}/runRun a query templateGET
v2/api/ledger/v2/{ledger}/schemasList all schemas for a ledgerGET
v2/api/ledger/v2/{ledger}/schemas/{version}Get a schema for a ledger by versionPOST
v2/api/ledger/v2/{ledger}/schemas/{version}Insert a schema for a ledgerGET
/api/ledger/_/infoShow server informationGET
/api/ledger/_/metricsRead in memory metricsLogs3
GET
v2/api/ledger/v2/{ledger}/logsList LogsPOST
v2/api/ledger/v2/{ledger}/logs/exportExport LogsPOST
v2/api/ledger/v2/{ledger}/logs/importImport LogsMetadata2
PUT
v2/api/ledger/v2/{ledger}/metadataUpdate Ledger MetadataDELETE
v2/api/ledger/v2/{ledger}/metadata/{key}Delete Ledger MetadataPipelines7
GET
v2/api/ledger/v2/{ledger}/pipelinesList PipelinesPOST
v2/api/ledger/v2/{ledger}/pipelinesCreate PipelineDELETE
v2/api/ledger/v2/{ledger}/pipelines/{pipelineID}Delete PipelineGET
v2/api/ledger/v2/{ledger}/pipelines/{pipelineID}Get Pipeline StatePOST
v2/api/ledger/v2/{ledger}/pipelines/{pipelineID}/resetReset PipelinePOST
v2/api/ledger/v2/{ledger}/pipelines/{pipelineID}/startStart PipelinePOST
v2/api/ledger/v2/{ledger}/pipelines/{pipelineID}/stopStop PipelineStats1
GET
v2/api/ledger/v2/{ledger}/statsGet Ledger StatsTransactions7
GET
v2/api/ledger/v2/{ledger}/transactionsList TransactionsHEAD
v2/api/ledger/v2/{ledger}/transactionsCount TransactionsPOST
v2/api/ledger/v2/{ledger}/transactionsCreate TransactionGET
v2/api/ledger/v2/{ledger}/transactions/{id}Get TransactionPOST
v2/api/ledger/v2/{ledger}/transactions/{id}/metadataAdd Transaction MetadataDELETE
v2/api/ledger/v2/{ledger}/transactions/{id}/metadata/{key}Delete Transaction MetadataPOST
v2/api/ledger/v2/{ledger}/transactions/{id}/revertRevert Transactionv1 (deprecated)20
GET
v1/api/ledger/_infoShow server informationGET
v1/api/ledger/{ledger}/_infoGet information about a ledgerGET
v1/api/ledger/{ledger}/accountsList accounts from a ledgerHEAD
v1/api/ledger/{ledger}/accountsCount the accounts from a ledgerGET
v1/api/ledger/{ledger}/accounts/{address}Get account by its addressPOST
v1/api/ledger/{ledger}/accounts/{address}/metadataAdd metadata to an accountGET
v1/api/ledger/{ledger}/aggregate/balancesGet the aggregated balances from selected accountsGET
v1/api/ledger/{ledger}/balancesGet the balances from a ledger's accountGET
v1/api/ledger/{ledger}/logsList the logs from a ledgerGET
v1/api/ledger/{ledger}/mappingGet the mapping of a ledgerPUT
v1/api/ledger/{ledger}/mappingUpdate the mapping of a ledgerPOST
v1/api/ledger/{ledger}/scriptExecute a NumscriptGET
v1/api/ledger/{ledger}/statsGet statistics from a ledgerGET
v1/api/ledger/{ledger}/transactionsList transactions from a ledgerHEAD
v1/api/ledger/{ledger}/transactionsCount the transactions from a ledgerPOST
v1/api/ledger/{ledger}/transactionsCreate a new transaction to a ledgerGET
v1/api/ledger/{ledger}/transactions/{txid}Get transaction from a ledger by its IDPOST
v1/api/ledger/{ledger}/transactions/{txid}/metadataSet the metadata of a transaction by its IDPOST
v1/api/ledger/{ledger}/transactions/{txid}/revertRevert a ledger transaction by its IDPOST
v1/api/ledger/{ledger}/transactions/batchCreate a new batch of transactions to a ledgerorchestration35
GET
v2/api/orchestration/v2/_infoGet server infoInstances6
GET
v2/api/orchestration/v2/instancesList instancesGET
v2/api/orchestration/v2/instances/{instanceID}Get instancePUT
v2/api/orchestration/v2/instances/{instanceID}/abortAbort workflowPOST
v2/api/orchestration/v2/instances/{instanceID}/eventsSend eventGET
v2/api/orchestration/v2/instances/{instanceID}/historyGet instance historyGET
v2/api/orchestration/v2/instances/{instanceID}/stages/{number}/historyGet stage historyTriggers6
GET
v2/api/orchestration/v2/triggersList triggersPOST
v2/api/orchestration/v2/triggersCreate triggerDELETE
v2/api/orchestration/v2/triggers/{triggerID}Delete triggerGET
v2/api/orchestration/v2/triggers/{triggerID}Read triggerGET
v2/api/orchestration/v2/triggers/{triggerID}/occurrencesList trigger occurrencesPOST
v2/api/orchestration/v2/triggers/{triggerID}/testTest triggerv1 (deprecated)17
GET
v1/api/orchestration/_infoGet server infoGET
v1/api/orchestration/instancesList instances of a workflowGET
v1/api/orchestration/instances/{instanceID}Get a workflow instance by idPUT
v1/api/orchestration/instances/{instanceID}/abortCancel a running workflowPOST
v1/api/orchestration/instances/{instanceID}/eventsSend an event to a running workflowGET
v1/api/orchestration/instances/{instanceID}/historyGet a workflow instance history by idGET
v1/api/orchestration/instances/{instanceID}/stages/{number}/historyGet a workflow instance stage historyGET
v1/api/orchestration/triggersList triggersPOST
v1/api/orchestration/triggersCreate triggerDELETE
v1/api/orchestration/triggers/{triggerID}Delete triggerGET
v1/api/orchestration/triggers/{triggerID}Read triggerGET
v1/api/orchestration/triggers/{triggerID}/occurrencesList triggers occurrencesGET
v1/api/orchestration/workflowsList registered workflowsPOST
v1/api/orchestration/workflowsCreate workflowDELETE
v1/api/orchestration/workflows/{flowId}Delete a flow by idGET
v1/api/orchestration/workflows/{flowId}Get a flow by idPOST
v1/api/orchestration/workflows/{workflowID}/instancesRun workflowWorkflows5
GET
v2/api/orchestration/v2/workflowsList workflowsPOST
v2/api/orchestration/v2/workflowsCreate workflowDELETE
v2/api/orchestration/v2/workflows/{flowId}Delete workflowGET
v2/api/orchestration/v2/workflows/{flowId}Get workflowPOST
v2/api/orchestration/v2/workflows/{workflowID}/instancesRun workflowother1
GET
/versionsShow stack version informationpayments103
Accounts6
GET
v3/api/payments/v3/accountsList AccountsPOST
v3/api/payments/v3/accountsCreate AccountGET
v3/api/payments/v3/accounts/{accountID}Get AccountGET
v3/api/payments/v3/accounts/{accountID}/balancesGet Account BalancesDELETE
v3/api/payments/v3/pools/{poolID}/accounts/{accountID}Remove Account from PoolPOST
v3/api/payments/v3/pools/{poolID}/accounts/{accountID}Add an account to a poolBank Accounts7
GET
v3/api/payments/v3/bank-accountsList Bank AccountsPOST
v3/api/payments/v3/bank-accountsCreate Bank AccountGET
v3/api/payments/v3/bank-accounts/{bankAccountID}Get Bank AccountPOST
v3/api/payments/v3/bank-accounts/{bankAccountID}/forwardForward Bank AccountPATCH
v3/api/payments/v3/bank-accounts/{bankAccountID}/metadataUpdate Bank Account MetadataPOST
v3/api/payments/v3/payment-service-users/{paymentServiceUserID}/bank-accounts/{bankAccountID}Add a bank account to a payment service userPOST
v3/api/payments/v3/payment-service-users/{paymentServiceUserID}/bank-accounts/{bankAccountID}/forwardForward a payment service user's bank account to a connectorConnectors18
GET
v3/api/payments/v3/connectorsList ConnectorsDELETE
v3/api/payments/v3/connectors/{connectorID}Uninstall ConnectorGET
v3/api/payments/v3/connectors/{connectorID}/configGet Connector ConfigPATCH
v3/api/payments/v3/connectors/{connectorID}/configUpdate Connector ConfigPOST
v3/api/payments/v3/connectors/{connectorID}/resetReset ConnectorGET
v3/api/payments/v3/connectors/{connectorID}/schedulesList Connector SchedulesGET
v3/api/payments/v3/connectors/{connectorID}/schedules/{scheduleID}Get Connector ScheduleGET
v3/api/payments/v3/connectors/{connectorID}/schedules/{scheduleID}/instancesList Schedule InstancesGET
v3/api/payments/v3/connectors/configsList Connector ConfigsPOST
v3/api/payments/v3/connectors/install/{connector}Install ConnectorDELETE
v3/api/payments/v3/payment-service-users/{paymentServiceUserID}/connectors/{connectorID}Remove a payment service user from a connector, the PSU will still exist in FormanceGET
v3/api/payments/v3/payment-service-users/{paymentServiceUserID}/connectors/{connectorID}/connectionsList enabled connections for a payment service user on a connector (i.e. the various banks PSUser has enabled on the connector)DELETE
v3/api/payments/v3/payment-service-users/{paymentServiceUserID}/connectors/{connectorID}/connections/{connectionID}Delete a connection for a payment service user on a connectorPOST
v3/api/payments/v3/payment-service-users/{paymentServiceUserID}/connectors/{connectorID}/connections/{connectionID}/update-linkUpdate/Regenerate a link for a payment service user on a connectorPOST
v3/api/payments/v3/payment-service-users/{paymentServiceUserID}/connectors/{connectorID}/create-linkCreate an authentication link for a payment service user on a connector, for oauth flowPOST
v3/api/payments/v3/payment-service-users/{paymentServiceUserID}/connectors/{connectorID}/forwardRegister/forward a payment service user on/to a connectorGET
v3/api/payments/v3/payment-service-users/{paymentServiceUserID}/connectors/{connectorID}/link-attemptsList all link attempts for a payment service user on a connector.
Allows to check if users used the link and completed the oauth flow.
GET
v3/api/payments/v3/payment-service-users/{paymentServiceUserID}/connectors/{connectorID}/link-attempts/{attemptID}Get a link attempt for a payment service user on a connectorPayment Initiations10
GET
v3/api/payments/v3/payment-initiationsList Payment InitiationsPOST
v3/api/payments/v3/payment-initiationsInitiate PaymentDELETE
v3/api/payments/v3/payment-initiations/{paymentInitiationID}Delete Payment InitiationGET
v3/api/payments/v3/payment-initiations/{paymentInitiationID}Get Payment InitiationGET
v3/api/payments/v3/payment-initiations/{paymentInitiationID}/adjustmentsList Payment Initiation AdjustmentsPOST
v3/api/payments/v3/payment-initiations/{paymentInitiationID}/approveApprove Payment InitiationGET
v3/api/payments/v3/payment-initiations/{paymentInitiationID}/paymentsList Related PaymentsPOST
v3/api/payments/v3/payment-initiations/{paymentInitiationID}/rejectReject Payment InitiationPOST
v3/api/payments/v3/payment-initiations/{paymentInitiationID}/retryRetry Payment InitiationPOST
v3/api/payments/v3/payment-initiations/{paymentInitiationID}/reverseReverse Payment InitiationPayment Service Users5
GET
v3/api/payments/v3/payment-service-usersList Payment Service UsersPOST
v3/api/payments/v3/payment-service-usersCreate Payment Service UserDELETE
v3/api/payments/v3/payment-service-users/{paymentServiceUserID}Delete Payment Service UserGET
v3/api/payments/v3/payment-service-users/{paymentServiceUserID}Get Payment Service UserGET
v3/api/payments/v3/payment-service-users/{paymentServiceUserID}/connectionsList all connections for a payment service userPayments4
GET
v3/api/payments/v3/paymentsList PaymentsPOST
v3/api/payments/v3/paymentsCreate PaymentGET
v3/api/payments/v3/payments/{paymentID}Get PaymentPATCH
v3/api/payments/v3/payments/{paymentID}/metadataUpdate Payment MetadataPools7
GET
v3/api/payments/v3/poolsList PoolsPOST
v3/api/payments/v3/poolsCreate PoolDELETE
v3/api/payments/v3/pools/{poolID}Delete PoolGET
v3/api/payments/v3/pools/{poolID}Get PoolGET
v3/api/payments/v3/pools/{poolID}/balancesGet Pool BalancesGET
v3/api/payments/v3/pools/{poolID}/balances/latestGet Pool Balances (Latest)PATCH
v3/api/payments/v3/pools/{poolID}/queryUpdate the query of a poolTasks1
GET
v3/api/payments/v3/tasks/{taskID}Get Taskv1 (deprecated)45
GET
v1/api/payments/_infoGet server infoGET
v1/api/payments/accountsList accountsPOST
v1/api/payments/accountsCreate an accountGET
v1/api/payments/accounts/{accountId}Get an accountGET
v1/api/payments/accounts/{accountId}/balancesGet account balancesGET
v1/api/payments/bank-accountsList bank accounts created by user on FormancePOST
v1/api/payments/bank-accountsCreate a BankAccount in Payments and on the PSPGET
v1/api/payments/bank-accounts/{bankAccountId}Get a bank account created by user on FormancePOST
v1/api/payments/bank-accounts/{bankAccountId}/forwardForward a bank account to a connectorPATCH
v1/api/payments/bank-accounts/{bankAccountId}/metadataUpdate metadata of a bank accountGET
v1/api/payments/connectorsList all installed connectorsDELETE
v1/api/payments/connectors/{connector}Uninstall a connectorPOST
v1/api/payments/connectors/{connector}Install a connectorDELETE
v1/api/payments/connectors/{connector}/{connectorId}Uninstall a connectorGET
v1/api/payments/connectors/{connector}/{connectorId}/configRead the config of a connectorPOST
v1/api/payments/connectors/{connector}/{connectorId}/configUpdate the config of a connectorPOST
v1/api/payments/connectors/{connector}/{connectorId}/resetReset a connectorGET
v1/api/payments/connectors/{connector}/{connectorId}/tasksList tasks from a connectorGET
v1/api/payments/connectors/{connector}/{connectorId}/tasks/{taskId}Read a specific task of the connectorGET
v1/api/payments/connectors/{connector}/configRead the config of a connectorPOST
v1/api/payments/connectors/{connector}/resetReset a connectorGET
v1/api/payments/connectors/{connector}/tasksList tasks from a connectorGET
v1/api/payments/connectors/{connector}/tasks/{taskId}Read a specific task of the connectorPOST
v1/api/payments/connectors/{connector}/transfersTransfer funds between Connector accountsGET
v1/api/payments/connectors/configsList the configs of each available connectorGET
v1/api/payments/paymentsList paymentsPOST
v1/api/payments/paymentsCreate a paymentGET
v1/api/payments/payments/{paymentId}Get a paymentPATCH
v1/api/payments/payments/{paymentId}/metadataUpdate metadataGET
v1/api/payments/poolsList PoolsPOST
v1/api/payments/poolsCreate a PoolDELETE
v1/api/payments/pools/{poolId}Delete a PoolGET
v1/api/payments/pools/{poolId}Get a PoolPOST
v1/api/payments/pools/{poolId}/accountsAdd an account to a poolDELETE
v1/api/payments/pools/{poolId}/accounts/{accountId}Remove an account from a poolGET
v1/api/payments/pools/{poolId}/balancesGet historical pool balances at a particular point in timeGET
v1/api/payments/pools/{poolId}/balances/latestGet latest pool balancesPATCH
v1/api/payments/pools/{poolId}/queryUpdate the query of a poolGET
v1/api/payments/transfer-initiationsList Transfer InitiationsPOST
v1/api/payments/transfer-initiationsCreate a TransferInitiationDELETE
v1/api/payments/transfer-initiations/{transferId}Delete a transfer initiationGET
v1/api/payments/transfer-initiations/{transferId}Get a transfer initiationPOST
v1/api/payments/transfer-initiations/{transferId}/retryRetry a failed transfer initiationPOST
v1/api/payments/transfer-initiations/{transferId}/reverseReverse a transfer initiationPOST
v1/api/payments/transfer-initiations/{transferId}/statusUpdate the status of a transfer initiationreconciliation8
GET
v1/api/reconciliation/_infoGet server infoPolicies5
GET
v1/api/reconciliation/policiesList policiesPOST
v1/api/reconciliation/policiesCreate a policyDELETE
v1/api/reconciliation/policies/{policyID}Delete a policyGET
v1/api/reconciliation/policies/{policyID}Get a policyPOST
v1/api/reconciliation/policies/{policyID}/reconciliationReconcile using a policyReconciliations2
GET
v1/api/reconciliation/reconciliationsList reconciliationsGET
v1/api/reconciliation/reconciliations/{reconciliationID}Get a reconciliationsearch2
POST
v1/api/search/search.v1GET
v1/api/search/_infoGet server infowallets16
Holds4
GET
v1/api/wallets/holdsList HoldsPOST
v1/api/wallets/holds/{hold_id}/confirmConfirm HoldPOST
v1/api/wallets/holds/{hold_id}/voidVoid HoldGET
v1/api/wallets/holds/{holdID}Get HoldTransactions1
GET
v1/api/wallets/transactionsList Wallet TransactionsWallets11
GET
v1/api/wallets/_infoGet Server InfoGET
v1/api/wallets/walletsList WalletsPOST
v1/api/wallets/walletsCreate WalletGET
v1/api/wallets/wallets/{id}Get WalletPATCH
v1/api/wallets/wallets/{id}Update WalletGET
v1/api/wallets/wallets/{id}/balancesList Wallet BalancesPOST
v1/api/wallets/wallets/{id}/balancesCreate BalanceGET
v1/api/wallets/wallets/{id}/balances/{balanceName}Get BalancePOST
v1/api/wallets/wallets/{id}/creditCredit WalletPOST
v1/api/wallets/wallets/{id}/debitDebit WalletGET
v1/api/wallets/wallets/{id}/summaryGet Wallet Summarywebhooks8
Webhook Configs8
GET
v1/api/webhooks/configsList Webhook ConfigsPOST
v1/api/webhooks/configsCreate Webhook ConfigDELETE
v1/api/webhooks/configs/{id}Delete Webhook ConfigPUT
v1/api/webhooks/configs/{id}Update Webhook ConfigPUT
v1/api/webhooks/configs/{id}/activateActivate Webhook ConfigPUT
v1/api/webhooks/configs/{id}/deactivateDeactivate Webhook ConfigPUT
v1/api/webhooks/configs/{id}/secret/changeChange Webhook SecretGET
v1/api/webhooks/configs/{id}/testTest Webhook Config