Record one bank transaction as a leg of a PENDING transfer, on the side its
type names, and complete the transfer once both sides total its amount.
Attaching a row this transfer already holds is a no-op.
Record a COMPLETED internal transfer for bank rows that already posted.
Fail a PENDING internal transfer.
The transfer that holds this bank transaction as a leg, read under the bank transaction's row lock, so an attach in flight is waited out rather than missed.
Reconcile a PENDING internal transfer to COMPLETED against its legs.
The process service: the shared database, the internal bus, transfers and bank transactions.