1. A method for communicating between a server, a gateway, and a host payment application, comprising the steps of: (a) establishing a communication link between the server and the gateway; (b) receiving encrypted payment information at the gateway; (c) decrypting the payment information into one or more request data elements; (d) formatting the one or more request data elements into a payment transaction request conforming to a protocol compatible with the host payment application; and (e) transmitting the payment transaction request to the host payment application.