Transfer Funds Use CaseThe Transfer Funds use case allows customers to transfer money between accounts.
Actors: Customer, System
Pre-Conditions: The customer must be authenticated. Anonymous requests are forbidden.
Actions:
1. The customer selects the Funds Transfer option in the Global Bank Web portal.
2. The customer enters the source account from a list containing all of his or her savings and checking accounts, the destination account, the amount of money to transfer and a comment for future reference. The listing of multiple configured accounts and multiple currencies is out of scope.
3. The system prompts the customer for transaction confirmation. This step ensures that the destination account is eligible for this transaction (account is active and exists).
4. The system displays a unique identifier of the operation for the customer's future reference and the transfer is complete.
Alternative FlowsTransfer limits: The amount of money that can be transferred in a single transaction is set across the system and can be configurable by Global Bank.
Alternative Flows (out of scope) Transfer limits: There will be a maximum amount of money that can be transferred in a month. The monthly limit applies to all transfers performed by the customer regardless of the account type. If the limit is exceeded, an error message is presented and the transfer is canceled.
Transfers between accounts of different currencies:
Limits are expressed in the debiting account currency. If the debit and credit currencies differ, a foreign currency exchange transaction is triggered. The system displays a foreign exchange transaction confirmation for the customer's approval. Upon confirmation, the system displays the exchange rate used to perform the transaction. The system will log one entry for the exchange and another entry for the transfer to the Auditing and Security System.
Third-party transfer limits:
If the destination account is not owned by the customer, a different system-wide limit applies to the maximum transfer amount. If the limit is exceeded, an error message is displayed and the transfer is canceled.
Scheduled transfers: By default, transfers take effect immediately after confirmation. The customer may defer the transfer by entering an effective date. The scheduled transaction is performed at the bank’s opening time on the selected date. The system logs one entry when the customer requests the transfer and another entry when the transfer occurs to the Auditing and Security System.
Transfers to any account can be scheduled. If the amount transferred exceeds the limit, an error message is displayed and the transfer is canceled.
Post-Conditions Available balances
Balances are updated after the operation is confirmed. If the customer requests a Consolidated Account Statement, the updated balances are displayed. The only exception is when the customer requests a scheduled transfer.
Business Rules A customer can transfer funds from only his or her savings or checking accounts.
The system will not allow duplicate transactions.
If the user confirms an operation twice, the operation should not produce two transactions.
Funds from the source account will be debited immediately after confirmation. If there are not enough funds to perform the transaction, the system will display an error message and return to the previous screen.
The source and destination accounts for the funds transfer must be different.
Business Rules (out of scope) The system will allow the maximum transfer amount to be set by the system administrator.
If the currencies of a debit and credit amount during a funds transfer differ, the system will trigger a foreign currency exchange transaction.
If the system triggers a foreign currency exchange during a transfer funds transaction, the system will display the exchange rate used to the customer during the confirmation process.
Scheduled transfers will be automatically executed by the system at the bank’s opening time on the scheduled date.
Comments: Data entered on the page is validated both on the client and in the service.
Back To:
UseCases