A middleware program provides an interface between an input channel and a business
transaction server. The middleware program receives data and commands from an interface
program that is coupled to an input channel. The middleware program validates the
data, orders the data, transforms the data into a form required by the server,
sends the data to the server, and the middleware program receives the results of
the business transaction from the server. The middleware program transforms the
results into a form required by the interface program and sends the results to
the interface program. The interface program displays the results. The middleware
program may reduce the time required to create an interface to a channel. The middleware
program moves business logic out of the server or legacy program and into a middle
layer that may be easily integrated with many different types of visual or non-visual
user interfaces. The architecture of the middleware program allows the middleware
program to be easily used with a variety of different types of channels.