A computer readable storage medium storing a program element for execution by a processor, said program element implementing a graphical user interface on a customer computer to allow a customer to order from a railway transportation company the shipping of a commodity, the graphical user interface being configured for:
- a. displaying on the customer computer information input components allowing the customer to input a set of shipping parameters, said set of shipping parameters including a type of commodity to be shipped and a type of railcar for use in shipping the commodity;
- b. transmitting to a network server information conveying the set of shipping parameters input by the customer;
- c. receiving information from the network server conveying a suggested change to at least one of the type of commodity to be shipped and the type of railcar to use for shipping the commodity, the suggested change being derived at least in part based on a search performed on the network server to determine if the set of shipping parameters input by the customer match a promotional event in a promotional event database;
- d. displaying on the customer computer information display components to display the suggested change to at least one of the type of commodity to be shipped and the type of railcar to use for shipping the commodity, whereby the suggested change if accepted would entitle the customer to a promotion selected in the group consisting of discount and award of merchandise;
- e. displaying on the customer computer a control component operable by the customer and presenting the customer with an option to order from the railway transportation company a transportation service for shipping the commodity according to the shipping parameters including the suggested change.