An automated dispensing system comprising: a controller configured to receive a request for an article to be dispensed; a first storage module and a second storage module, wherein each of the first storage module and the second storage module comprise a plurality of trays movable between a storage position and a retrieval position, wherein each tray of the plurality of trays comprises a plurality of storage locations; a robot configured to access the plurality of storage locations of a tray in response to the tray being moved to the retrieval position; and an end-of-arm tool attached to the robot and configured to retrieve the article from a storage location of the tray in response to a request for said article received at said controller, characterised in that the end-of-arm tool comprises: a body; two or more vacuum cups (405, 410, 415) extending from the body, wherein the two or more vacuum cups are movable toward and away the body of the end-of-arm tool; and a vacuum source configured to provide suction to the two or more vacuum cups; and wherein the controller is configured to cause extension and retraction of each of the two or more vacuum cups independently, determined based on at least one of a size or a shape of the article, and wherein the controller is configured to selectively determine to which vacuum cups suction is provided. a controller configured to receive a request for an article to be dispensed; a first storage module and a second storage module, wherein each of the first storage module and the second storage module comprise a plurality of trays movable between a storage position and a retrieval position, wherein each tray of the plurality of trays comprises a plurality of storage locations; a robot configured to access the plurality of storage locations of a tray in response to the tray being moved to the retrieval position; and an end-of-arm tool attached to the robot and configured to retrieve the article from a storage location of the tray in response to a request for said article received at said controller, characterised in that the end-of-arm tool comprises: a body; two or more vacuum cups (405, 410, 415) extending from the body, wherein the two or more vacuum cups are movable toward and away the body of the end-of-arm tool; and a vacuum source configured to provide suction to the two or more vacuum cups; and wherein the controller is configured to cause extension and retraction of each of the two or more vacuum cups independently, determined based on at least one of a size or a shape of the article, and wherein the controller is configured to selectively determine to which vacuum cups suction is provided. a body; two or more vacuum cups (405, 410, 415) extending from the body, wherein the two or more vacuum cups are movable toward and away the body of the end-of-arm tool; and a vacuum source configured to provide suction to the two or more vacuum cups; and wherein the controller is configured to cause extension and retraction of each of the two or more vacuum cups independently, determined based on at least one of a size or a shape of the article, and wherein the controller is configured to selectively determine to which vacuum cups suction is provided.