Low Level Function
5.14.3 Enable Driver to Make Payments
Overview
This Function shall be capable of providing the following facilities:
(1) The ability to take responsibility for enabling the Driver to make any required payments for the trip planning service and/or make any required advanced payments for services included in the accepted Vehicle Trip Plan.
(2) The ability to communicate directly with the Driver to obtain details of the payment mechanism that is to be used and to report on the success of failure of all of the payment transactions.
(3) The ability to repeat all failed transactions for a defined number of times before abandoning the payment process and providing a payment failure response to the Create and Revise Vehicle Trip Plan Function.
Functional Requirements
(a) continuously monitor for receipt of the vehicle trip plan for bookings data flow
(b) when the data flow in (a) is received, check its contents to see if any payment for the actual trip planning service is needed
(c) if the answer to the question is (b) is yes, request payment from the driver in the request vehicle trip planning payment data flow
(d) as a result of (c) continuously monitor for the receipt of the vehicle trip planning payment data flow
(e) when the data flow in (d) is received, check for payment information and if found, send this to the financial clearinghouse in the request payment for vehicle trip planning data flow
(f) as a result of (e), continuously monitor for receipt of the payment for vehicle trip planning response data flow from the financial clearinghouse
(g) when the data flow in (f) is received, check to see if it was successful and if not, send the vehicle trip planning booking mishap data flow to the driver and repeat (c) to (f), or if failure has occurred a defined number of times, send a message to the driver that the trip plan will be deleted in the request vehicle trip planning payment data flow and send a failure response to the Create and Revise Vehicle Trip Plan function in the trip plan with no zone or parking bookings data flow
(h) if in (b) no payment for the trip planning service is needed or the payment for the actual trip planning service in (c) to (g) has been successful, then check to see if any advanced payments are needed and if not send details of the vehicle trip plan to the Manage Freight Vehicle Rest Area Use function in the trip plan with zone of parking booking needed data flow
(i) if the check in (h) shows that advanced payment for some part of the vehicle trip plan is needed, send details to the driver in the advanced payment for vehicle trip plan data flow
(j) as a result of (i) continuously monitor for receipt of the vehicle trip plan booking approval data flow from the driver
(k) when the data flow in (j) is received, check for payment information and if found, send this to the financial clearinghouse in the vehicle trip planning service payment request data flow
(l) as a result of (k), continuously monitor for receipt of the vehicle trip planning service payment response data flow from the financial clearinghouse
(m) when the data flow in (l) is received, check to see if it was successful and if not, send the vehicle trip planning booking mishap data flow to the driver, wait for the revised vehicle trip plan booking choices data flow and repeat (i) to (l)
(n) if in (i) a negative or no response is received, or (i) to (l) have been repeated a defined number of times, send a message to the driver that the trip plan will be deleted in the request vehicle trip planning payment data flow and send a failure response to the Create and Revise Vehicle Trip Plan function in the trip plan with no zone or parking bookings data flow
(o) if the response found in (m) showed that payment has been successfully made, send details of the vehicle trip plan to the Manage Freight Vehicle Rest Zone Use function in the trip plan with zone of parking booking needed data flow.
Diagrams
Parent Higher Level Function
Input logical dataflows
Output logical dataflows
User needs