There was a need to automate orders to replace the manual keying methods that were being used at the time. The system had to be able to load or create customers on the fly and incorporate business-specific logic to properly log the orders and payments.