1. A computer implemented method comprising the steps of: receiving an image from an image capture device; executing the following first group of steps when the received image includes an optical code: processing the received image to recover information encoded within the optical code; and transmitting the recovered information; executing the following second group of steps when the image includes a portion of a document: storing the image; receiving a new image from the image capture device; repeating the storing and receiving steps in the second group of steps until the received image does not include a portion of the document and then executing the following third group of steps: processing each of the stored images to identify the image data that represents the portion of the document captured within each stored image; combining the identified portions of the document from each stored image to create a new single image of the entire document; and transmitting the new image of the document.