Interact With Customer
This process handles all interactions with the customer and operates only when a card is
detected in the Card Reader.  Input is received initially from the Card Reader and then
directly from the customer via the Customer Keypad.  The customer receives output from
the Customer Display, the Printout Dispenser and the Cash Dispenser.  Customer interactions
may also involve sending reports to the Control System.  The initial step of all customer
interactions is to verify the customer's PIN number.  After this a menu of options is
presented on the display which the customer selects by pressing appropriate keys on the
keypad.  These options lead to other displays and requests for further input.  Some options
require account details which are retrieved from the Accounts Database and may also involve
updating the database.  During the final stage of all customer interactions the Card Reader
is instructed to either return or confiscate the card.
Prepare Command
This process handles communication with the Card Reader hardware.  The system requires that
the Card Reader is able to receive the following commands:
     ENABLE         Makes the Card Reader ready to receive a card
     DISABLE        Prevents the Card Reader from accepting a card
     RETURN         Ejects a card from the Card Reader
     RETAIN         Confiscates an unauthorized card
The Card Reader is enabled and disabled by commands from the system operator.  A card is
returned or retained in response to interactions with the customer.
Update Display
This process deals with the Customer Display screen.  When no card is in the Card Reader, the
Customer Display shows general information (such as 'Insert Card').  When a card is detected
the display is updated in response to customer interactions.  If the system is disabled by the
system operator, the display is updated to indicate the system status.
The following is a list of screens which are shown on the Customer Display.
      General Information - Insert Card and other messages
      PIN Verification    - Enter PIN message
      Main Options        - Some or all of the following; Display Balance,
                            Print Balance, Cash With Receipt, Cash Without Receipt,
                            Order Statement, Order Chequebook, Return Card
      Current Balance     - Customer's account balance and cleared funds
      Balance Printed     - Take Your Balance message
      Withdrawal Options  - Pre-defined cash amounts and Other Amount option
      Cash Amount         - Enter Amount for cash withdrawal
      Cash Dispensed      - Take Your Cash message
      Receipt Printed     - Take Your Receipt message
      Statement Ordered   - Statement Ordered message
      Chequebook Ordered  - Chequebook Ordered message
      Card Returned       - Take Your Card message
      Card Retained       - Card Retained message (for failed PIN verification)
Prepare Message
Prepare Printout
This process prepares and controls the use of the Printout Dispenser to produce balance reports
and receipts.  The customer's balance is retrieved from the Accounts Database (if required).  If
the printer-paper level becomes low options which involve printouts are disabled and a warning
message is sent to the Control System.
Manage Withdrawal
This process receives requests for withdrawals of specific amounts from a certain account and
operates the Cash Dispenser.  Before proceeding, the customer's details in the Accounts
Database are checked.  If the request exceeds the customer's balance (or agreed overdraft) the
withdrawal is denied.  The system uses a denomination selection algorithm based on the notes
available and the amount required.  The Accounts Database is updated after each withdrawal. 
If the cash level becomes low, options providing cash withdrawals are disabled and a warning
message is sent to the Control System.