1. A computer system for delivering content to a communication device, the system comprising: a processor; a memory for storing instructions executable by the processor; an image database configured to store a plurality of images; a content repository configured to store content associated with the plurality of images stored in the image database; a database interface operable by the instructions executed on the processor to, at least: modify the content repository including at least one of creating a new content repository, adding new content to an existing content repository, and removing at least one content from the existing content repository; receive, from a content provider, at least one image, at least one piece of content and at least one rule mapping the at least one image to the at least one piece of content; and update the image database with the at least one image from the content provider, the content repository with the at least one piece of content from the content provider and a set of mapping rules with the at least one rule from the content provider; a transaction interface operable by the instructions executed on the processor at least to receive an image from a communication device and to send at least one content item corresponding to the image to the communication device; and a recognition component operable by the instructions executed on the processor to, at least: receive the image from the transaction interface; determine whether the received image matches any image of the plurality of images stored in the image database; if a matching image is found, retrieve at least one content item associated with the matching image from the content repository in accordance with the set of mapping roles including the at least one rule from the content provider; and cause the transaction interface to send the retrieved at least one content item to the communication device.