This Function shall be capable of providing the following facilities:<br/><br/>(1) The ability to collect payment from Drivers for the use of individual car park spaces.<br/>(2) The ability to initially show the Driver what the charges are and collect the payment for one of the specified time periods.<br/>(3) The ability to send details of the payment to the Financial Clearinghouse for verification and confirmation.<br/>(4) If confirmation of successful payment is not provided by the Financial Clearinghouse then the purchased time that is sent to the functionality that calculates the car park spaces occupancy shall be set to zero, otherwise it shall be the amount of time purchased.<br/>
(a) when the vehicle in car park space data flow is received, request payment be input using the appropriate data flow to the Driver;<br/>(b) if no response is received to the data flow in (a) send the payment result data flow containing a failure indication to the Calculate Occupancy for Individual Car Park Spaces function;<br/>(c) when the payment response is received from the driver, send the payment details to the Financial Clearinghouse using its output data flow;<br/>(d) when a successful response is received to the data flow in (c) send the payment result data flow containing a success indication to the Calculate Occupancy for Individual Car Park Spaces function, output the payment confirmed data flow to the Driver and store details of the transaction internally without the method of payment, or other personal driver data being included;<br/>(e) when a failure response is received to the data flow in (c) send the payment result data flow containing a failure indication to the Calculate Occupancy for Individual Car Park Spaces function, output the payment refused data flow to the Driver and enter retain an entry that payment failed internally;<br/>(f) if the request car park payment records data flow is received, collect the relevant data from the internal data store and use the requested car park payment records data flow to send it to the Operator Interface function.<br/>