Cash pooling workflow testing is the validation of the end-to-end processes that gather balances from participating bank accounts, calculate or execute pool movements, and report the resulting positions. It checks that configured rules, account data, approvals and connected systems produce the expected cash position, with a traceable outcome when processing succeeds or fails.
What the workflow covers
A cash pool groups accounts so a corporate treasury team can manage liquidity across entities or currencies. In a physical pool, the bank transfers funds between participant accounts and a header account. In a notional pool, balances are offset for calculation purposes, with no corresponding movement of cash between accounts. The pool structure and bank agreement determine the actual rules.
A typical workflow receives account balances, identifies eligible pool members, applies cut-off times and limits, calculates a sweep or notional position, processes any required approvals, and sends instructions to the banking or payment systems. It then receives statuses and updated balances for reporting and reconciliation. Testing needs to follow these stages across the systems involved, such as a treasury platform, bank connectivity service, payment system and general ledger.
What to validate
Start with the pool configuration and test data. Confirm that each account has the intended pool membership, currency, entity, sweep rule and effective date. Check that excluded or inactive accounts stay out of calculations. Use controlled balances that exercise the agreed rules, including zero balances, debit and credit positions, limits, cut-off boundaries and rejected instructions.
For each run, verify the inputs and calculated position against an independent expected result. For physical pooling, check the generated movements, account-level debits and credits, value dates, updated balances and any fees or limits that apply. For notional pooling, check the offset calculation and resulting reports without expecting transfer entries. Validate that downstream systems receive the correct status and data, and that reconciliation identifies missing, duplicated or mismatched movements.
Failure handling needs explicit scenarios. Examples include a stale balance feed, an unavailable bank connection, a rejected transfer, a timeout after an instruction was accepted, or a partial sweep where some account movements succeed and others fail. Check how the workflow records the state, whether a retry can create duplicate movements, and how operators identify and resolve items requiring repair. A rerun should not silently change a completed outcome.
A practical test example
Assume a physical pool has two participant accounts and a header account. At the run time, one participant has a credit balance of £80,000 and the other has a debit balance of £30,000. The configured rule sweeps eligible balances to bring participant accounts to zero, subject to the bank's processing rules.
The test should verify that the surplus account is debited by £80,000, the header account receives the applicable net amount after funding the deficit account, and the deficit account receives £30,000. It should then check the resulting balances and the bank's returned statuses. The expected net header movement is £50,000 if the instructions settle as specified and no fees or other adjustments apply. Add a failure case in which the deficit funding instruction is rejected. Confirm that the system records the incomplete pool run, preserves accurate balances and reports the unresolved movement for action.
Run this scenario with isolated test accounts and a bank test service or controlled simulator. Where interfaces are available, assert both the instruction payload and the returned status; also verify persisted account and ledger data. A successful screen message alone does not establish that the complete workflow produced consistent results.
How to define completion
Set acceptance criteria for each stage: eligible accounts were selected, calculations match the approved pool rules, required approvals were applied, instructions were processed safely, and final positions reconcile to source and downstream records. Keep the expected results tied to the pool configuration and test data used for each run. This makes failures easier to distinguish between a rule defect, an integration problem and an environment or data issue.
Frequently asked questions
How should a change to cash pool membership be tested?
Test the membership change at its effective date, including runs immediately before and after that date. Confirm that prior pool results remain unchanged and that later calculations include or exclude the account as configured.
How does testing a multi-currency cash pool differ?
Verify the rules for each currency separately, including any permitted conversion, exchange-rate source, rate timestamp, rounding and reporting currency. Check that the workflow does not net balances across currencies unless the configured arrangement explicitly allows it.
What evidence should be retained for a cash pooling test?
Retain the pool configuration version, input balances, expected calculations, generated instructions, approval and processing statuses, resulting balances, reconciliation results and any failure or recovery records. This evidence helps reproduce the run and trace discrepancies to a workflow stage.
