Test scenarios

Plan UAT coverage for Roots onboarding, payments, RFIs, holds, and lifecycle states.

Design your UAT test plan around Roots onboarding, account, counterparty, payment, RFI, and funds-availability lifecycles.

See API availability for current UAT behavior and planned test-contract gaps.

Test the happy path

Validate that your integration can create and reconcile each record type available to your UAT program.

ScenarioValidate
Front-office accessA valid user can sign in and retrieve the current session.
API keyAn authorized user can create a labeled key and store its one-time secret securely.
Business end customerYour system stores Roots and internal IDs for the business and its associated people.
AssociationYour system records UBO, director, control-person, and authorized-signatory relationships.
AccountYour system handles a newly created account as non-final until its current status permits activity.
CounterpartyYour system prevents payment creation when a counterparty is pending or blocked.
PaymentYour system records the Roots payment ID, your external_id, and the payment lifecycle state.
RFI or holdYour system stops the affected automation and routes the case to a human workflow.

Test state handling

Your application should handle every documented current payment state.

Payment stateExpected application behavior
PendingShow the payment as in progress. Do not report delivery.
SubmittedContinue monitoring for a terminal result.
SettledReconcile the completed payment.
FailedInvestigate before creating a replacement instruction.
ReturnedReconcile returned funds before creating a replacement instruction.

Target schema — confirm in API reference

Roots has not published deterministic UAT personas, values, or triggers for RFI_REQUIRED, EDD_REQUIRED, rejected onboarding, blocked counterparties, returned payments, or post-funding holds.

Confirm the test data and trigger behavior before you make automated assertions for these outcomes. Until then, test your application with representative state fixtures in your own environment and verify the released Roots behavior manually.

Next steps


Did this page help you?