Reconcile balances and payments

Reconcile Roots balances and payment outcomes using available funds and lifecycle status.

Reconcile Roots account balances and payment outcomes so your ledger reflects funds that are recorded, available, pending, settled, failed, or returned.

See API versions and Beta status before using this workflow in production.

Before you begin

  • Store Roots account, payment, counterparty, and person IDs with your internal records.
  • Store your external_id for each payment instruction.
  • Define an internal process for pending funds, payment failures, returns, RFIs, and holds.

Use current and available balance correctly

A current balance represents funds recorded in the account. An available balance represents the portion of those funds that Roots makes available for new activity after applicable holds, reviews, and pending payment locks.

Do not calculate spendable funds from current balance alone. Use the available balance before creating a payment.

Reconcile payment outcomes

For every payment, retain:

RecordWhy you need it
Roots payment ID and your external_idMatch Roots activity to your internal instruction.
Source and destination IDsIdentify the affected account and counterparty.
Amount, currency, purpose, and descriptionVerify that the settled or returned result matches the intended instruction.
Current payment statusDetermine whether the payment remains in progress or has a terminal outcome.
Relevant timestampsReconcile creation, submission, settlement, failure, and return events when Roots provides them.

A Settled payment represents completion. A Failed or Returned payment requires account reconciliation before you create a replacement.

Handle unavailable funds

Incoming funds can remain unavailable while Roots completes required screening or reviews an exception. Outgoing payments can lock funds while they are pending.

When Roots reports an RFI, hold, restriction, or non-terminal payment state:

  1. Keep the affected funds or workflow unavailable in your application.
  2. Route the case to the team responsible for supplying information or resolving the exception.
  3. Retrieve the latest account and payment state after Roots resolves the linked request.

Retrieve activity

Use the account endpoints to plan reconciliation retrieval:

  • GET /frontoffice/accounts/{account_id}
  • GET /frontoffice/accounts/{account_id}/transactions
  • GET /frontoffice/accounts/{account_id}/payments

Next steps


Did this page help you?