1. Field of the Invention
The present invention relates to providing inventory replenishment status in a retail setting, and more specifically, to communicating to a computing device information associated with the replenishment status of a retail item.
2. Description of Related Art
In retail environments, such as grocery stores and other “brick and mortar” stores, successful management of product inventory is important for customer satisfaction. These stores will typically try to manage inventory so that a particular retail item is never out of stock, however, in certain instances a customer may request an item that is either out of stock or not typically carried in inventory by a given store. Stores have traditionally offered a customer the option of purchasing an out of stock item for pickup at a later date, a process generally referred to as issuing a rain check. If the store does not issue rain checks or if the customer does not want to be involved in the rain check process, the customer may have to return frequently to the store in order to determine if the particular out of stock item has been replenished in inventory. The customer may decide to visit another store to determine if that store carried the particular out of stock item. Store personnel could call or otherwise communicate with the shopper when an item has been replenished, however, doing so utilizes valuable store resources and is inefficient. For at least these reasons, it is desired to develop a new system and method of providing replenishment status of an out of stock item to a customer.
Systems and methods for communicating to a computing device information associated with the replenishment status of a retail item are disclosed herein. According to an aspect, a method may include, at a first computing device, receiving, from a second computing device, a request for notification of replenishment of an item at a retail environment. The method may include determining replenishment status of the item at the retail environment. The method may also include communicating, to the second computing device, information associated with the replenishment status of the item.
According to another aspect, a method may include, at a first computing device, receiving an identifier of an item. The method may include receiving user input for requesting notification of replenishment of the item at a retail environment. The method may include communicating or transmitting, to a second computing device, a request for notification of replenishment of the item at the retail environment.
According to another aspect, a system may include an inventory management module configured to receive, from a computing device, a request for notification of replenishment of an item at a retail environment. The inventory management module may be further configured to determine replenishment status of the item at the retail environment. The inventory management module may be configured to communicate, to the computing device, information associated with the replenishment status of the item.
Systems and methods for communicating to a computing device information associated with the replenishment status of a retail item are disclosed herein. According to an aspect, a method may include, at a first computing device, receiving, from a second computing device, a request for notification of replenishment of an item at a retail environment. The method may include determining replenishment status of the item at the retail environment. The method may also include communicating, to the second computing device, information associated with the replenishment status of the item.
As referred to herein, the term “computing device” should be broadly construed. It can include any type of device including hardware, software, firmware, the like, and combinations thereof. A computing device may include one or more processors and memory or other suitable non-transitory, computer readable storage medium having computer readable program code for implementing methods in accordance with embodiments of the present invention. A computing device may be, for example, a server or other computer located within a retail environment and communicatively connected to other computing devices (e.g., point-of-sale (POS) equipment or computers) for managing accounting, purchase transactions, and other processes within the retail environment. In another example, a computing device may be a mobile computing device such as, for example, but not limited to, a smart phone, a cell phone, a pager, a personal digital assistant (PDA), a mobile computer with a smart phone client, or the like. A computing device can also include any type of conventional computer, for example, a laptop computer or a tablet computer. A typical mobile computing device is a wireless data access-enabled device (e.g., an iPHONE® smart phone, a BLACKBERRY® smart phone, a NEXUS ONE™ smart phone, an iPAD® device, or the like) that is capable of sending and receiving data in a wireless manner using protocols like the Internet Protocol, or IP, and the wireless application protocol, or WAP. This allows users to access information via wireless devices, such as smart phones, mobile phones, pagers, two-way radios, communicators, and the like. Wireless data access is supported by many wireless networks, including, but not limited to, CDPD, CDMA, GSM, PDC, PHS, TDMA, FLEX, ReFLEX, iDEN, TETRA, DECT, DataTAC, Mobitex, EDGE and other 2G, 3G, 4G and LTE technologies, and it operates with many handheld device operating systems, such as PalmOS, EPOC, Windows CE, FLEXOS, OS/9, JavaOS, iOS and Android. Typically, these devices use graphical displays and can access the Internet (or other communications network) on so-called mini- or micro-browsers, which are web browsers with small file sizes that can accommodate the reduced memory constraints of wireless networks. In a representative embodiment, the mobile device is a cellular telephone or smart phone that operates over GPRS (General Packet Radio Services), which is a data technology for GSM networks. In addition to a conventional voice communication, a given mobile device can communicate with another such device via many different types of message transfer techniques, including SMS (short message service), enhanced SMS (EMS), multi-media message (MMS), email WAP, paging, or other known or later-developed wireless data formats. Although many of the examples provided herein are implemented on smart phone, the examples may similarly be implemented on any suitable computing device, such as a computer.
As referred to herein, the term “user interface” is generally a system by which users interact with a computing device. A user interface can include an input for allowing users to manipulate a computing device, and can include an output for allowing the computing device to present information and/or data, indicate the effects of the user's manipulation, etc. An example of a user interface on a computing device includes a graphical user interface (GUI) that allows users to interact with programs or applications in more ways than typing. A GUI typically can offer display objects, and visual indicators, as opposed to text-based interfaces, typed command labels or text navigation to represent information and actions available to a user. For example, a user interface can be a display window or display object, which is selectable by a user of a computing device for interaction. The display object can be displayed on a display screen of a computing device and can be selected by and interacted with by a user using the user interface. In an example, the display of the computing device can be a touch screen, which can display the display icon. The user can depress the area of the display screen where the display icon is displayed for selecting the display icon. In another example, the user can use any other suitable user interface of a computing device, such as a keypad, to select the display icon or display object. For example, the user can use a track ball or arrow keys for moving a cursor to highlight and select the display object.
The presently disclosed invention is now described in more detail. For example,
The system 100 may further include a server 104. The server 104 may include an inventory management module 106, communications module 108, and memory 110. The server 104 may be configured to communicate via networks 112 and 114. Network 112 may be a wireless local area network (WLAN) managed by the retailer. Network 114 may be the Internet, a mobile network, and/or the like. The inventory management module 106 and memory 110 may include information related to store inventory, identifying information or indicia for a particular product, store location information, customer identification information such as “loyalty program” information, and the like. The inventory management module 106 may be implemented by hardware, software, firmware, or combinations thereof. For example, the module 106 may be implemented by one or more processors and memory.
The server 104 may be communicatively connected to a mobile computing device 116 via network 112 and network 114. The mobile computing device 116 may include a communications module 118, an item notification module 120, a user interface 122, an item identification reader 124, and a memory 126. The module 120 may be implemented by hardware, software, firmware, or combinations thereof. For example, the module 120 may be implemented by one or more processors and memory. In an example, the module 120 may be an application (often referred to as an “app”) residing on the computing device 116. The communications module 118 may include, for example, cellular, wireless, or wired communications capabilities and may be configured to communicate with the server 104 via network 112 and network 114. The communications module 118 may be configured for sending and receiving communications to and from other computing devices. Communication may be implemented by, for example, near field communication techniques.
The item identification reader 124 may be configured to identify an item tag 102 associated with a given product. For example, the item identification reader 124 may be an image capturing device such as a digital camera that is configured to capture an image of the item tag 102 for use in identifying the item or product corresponding to the item tag 102. Alternatively, the item identification reader 124 may be a bar code reader that is configured to scan a UPC/EAN bar code, QR code, and the like. Additionally, the item identification reader 124 may be a reader configured for reading one of an item number, SKU number, serial number, RFID tags, and the like from the item tag 102. As an example, an RFID tag may be read by a suitable NFC technique. Additionally, a user may interact with the user interface 122 to manually enter information from the item tag 102, such as an item number, SKU number, serial number, item name, and the like. The user may also be able to enter a number of the quantity of a particular out-of-stock item that he or she would like to purchase. The user may enter this information through the user interface 122, which may be, for example, a keyboard, touch screen display, or the like for entering information.
Subsequent to entering the item identifier, the mobile computing device 116 may communicate the item identifier to the server 104 via network 112 or network 114. The mobile computing device 116 may also communicate the quantity of the item that the user would like to purchase and an identifier of the user or device 116. The user or device identifier may be used for performing a lookup for stored information about the user or device for, for example, communicating with the user or device. In response to receipt of the information, the item notification module 120 may provide notification of replenishment of an item to a user by a variety of methods. For example, the item notification module 120 may provide a text message, a multimedia service message, a phone call (e.g., an automated phone call), email, or other notification to the operator when an out-of-stock item has been replenished. The module 120 may check the status of the item within a database containing data about the inventory of the store.
The mobile computing device 116 is configured to communicate with server 104 via network 112. In accordance with an aspect of the invention, network 112 may be, for example, a WLAN provided by the retail establishment. The mobile computing device 116 is configured to communicate an item identification message 128 to the server 104 via network 112 and communications module 108. The item identification message 128 may include, for example, the item tag 102 information of a given out-of-stock product and identifying information about the mobile computing device 116. For example, the identifying information about the mobile computing device 116 may be a user's cellular number, home telephone number, email address, fax address, mailing address, or a user name assigned by the retail establishment. Upon receipt of the item identification message 128, the inventory management module 106 may be further configured to verify that a given item is out-of-stock or if additional quantities of an item are available at the retail establishment but are not displayed to areas accessed by a customer.
The inventory management module 106 may continuously or periodically check the status of items identified as out-of-stock by a customer to determine the replenishment status of an item. As used herein, replenishment status may mean, for example, when a given item has replenished inventory within any portion of a retail establishment, when a given item is restocked in areas into which customers have access to, such as, for example, product shelving, or when an inventory level meets a predetermined amount, such as, for example, when the quantity of a given item matches or exceeds the number of users who have identified a particular item as out-of-stock. In the event that the inventory management module 106 determines that an out-of-stock item has been replenished, the server 104 is configured to communicate a replenishment status message 130 via network 114 to the mobile computing device 116 where the item notification module 120 displays or otherwise communicates the information to the user. The replenishment status message 130 may identify, for example, which item has been replenished, the number of items in inventory, the retail establishment location, and any other relevant information. Network 114 may be a cellular network when, for example, the replenishment status message 130 is a text message, phone call, or email. Additionally, network 114 may be a wireless internet-based network WI-FI® if, for example, a given user is still within the retail establishment and communicating with the retail establishment's WI-FI® network.
The inventory management module 106 may be configured to communicate with a computing device of a user to notify the user of a replenishment of an out-of-stock item. As an example,
Referring to
The method of
The method of
In an example, upon determining the replenishment status of an item by the inventory management module 106, the communications module 108 may communicate information such as, that a given item has been replenished, the quantity of that replenish item in inventory, the retail establishment location where the quantity of replenished items is located, and any other relevant information. Communicating 204 information associated with the replenishment status of the item may be via text message, phone call, email, and the like. The inventory management module 106 may be configured such that communicating 204 information associated with the replenishment status of the item may be performed at a predetermined time or interval. In an example, it may be desirable for the retailer to communicate replenishment status of an item at a desired time of day in order to moderate retail environment traffic. Additionally, it may be desirable for the inventory management module 106 to determine that multiple items identified by a user as out-of-stock have been replenished such that the communications module 108 communicates a replenishment status message 130 to a given user only once.
In accordance with embodiments of the present invention,
Referring to
The method of
The method of
In accordance with embodiments of the present invention,
Referring to
The method of
The method of
The method of
The method of
In an example, upon determining the replenishment status of an item by the inventory management module 106, the communications module 108 may communicate information such as, that a given item has been replenished, the quantity of that replenish item in inventory, the retail establishment location where the quantity of replenished items is located, and any other relevant information. Communicating 408 information associated with the replenishment status of the item may be via text message, phone call, email, and the like. The inventory management module 106 may be configured such that communicating 408 information associated with the replenishment status of the item may be performed at a predetermined time or interval. In an example, it may be desirable for the retailer to communicate replenishment status of an item at a desired time of day in order to moderate retail environment traffic. Additionally, it may be desirable for the inventory management module 106 to determine that multiple items identified by a user as out-of-stock have been replenished such that the communications module 108 communicates a replenishment status message 130 to a given user only once.
As will be appreciated by one skilled in the art, aspects of the present invention may be embodied as a system, method or computer program product. Accordingly, aspects of the present invention may take the form of an entirely hardware embodiment, an entirely software embodiment (including firmware, resident software, micro-code, etc.) or an embodiment combining software and hardware aspects that may all generally be referred to herein as a “circuit,” “module” or “system.” Furthermore, aspects of the present invention may take the form of a computer program product embodied in one or more computer readable medium(s) having computer readable program code embodied thereon.
Any combination of one or more computer readable medium(s) may be utilized. The computer readable medium may be a computer readable signal medium or a computer readable storage medium (including, but not limited to, non-transitory computer readable storage media). A computer readable storage medium may be, for example, but not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, apparatus, or device, or any suitable combination of the foregoing. More specific examples (a non-exhaustive list) of the computer readable storage medium would include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or Flash memory), an optical fiber, a portable compact disc read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of this document, a computer readable storage medium may be any tangible medium that can contain, or store a program for use by or in connection with an instruction execution system, apparatus, or device.
A computer readable signal medium may include a propagated data signal with computer readable program code embodied therein, for example, in baseband or as part of a carrier wave. Such a propagated signal may take any of a variety of forms, including, but not limited to, electro-magnetic, optical, or any suitable combination thereof. A computer readable signal medium may be any computer readable medium that is not a computer readable storage medium and that can communicate, propagate, or transport a program for use by or in connection with an instruction execution system, apparatus, or device.
Program code embodied on a computer readable medium may be transmitted using any appropriate medium, including but not limited to wireless, wireline, optical fiber cable, RF, etc., or any suitable combination of the foregoing.
Computer program code for carrying out operations for aspects of the present invention may be written in any combination of one or more programming languages, including an object oriented programming language such as Java, Smalltalk, C++ or the like and conventional procedural programming languages, such as the “C” programming language or similar programming languages. The program code may execute entirely on the user's computer, partly on the user's computer, as a stand-alone software package, partly on the user's computer and partly on a remote computer or entirely on the remote computer or server. In the latter situation scenario, the remote computer may be connected to the user's computer through any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, through the Internet using an Internet Service Provider).
Aspects of the present invention are described herein with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems) and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and/or block diagrams, and combinations of blocks in the flowchart illustrations and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer readable medium that can direct a computer, other programmable data processing apparatus, or other devices to function in a particular manner, such that the instructions stored in the computer readable medium produce an article of manufacture including instructions which implement the function/act specified in the flowchart and/or block diagram block or blocks.
The computer program instructions may also be loaded onto a computer, other programmable data processing apparatus, or other devices to cause a series of operational steps to be performed on the computer, other programmable apparatus or other devices to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide processes for implementing the functions/acts specified in the flowchart and/or block diagram block or blocks.
The flowcharts and block diagrams in the figures illustrate the architecture, functionality, and operation of possible implementations of systems, methods and computer program products according to various embodiments of the present invention. In this regard, each block in the flowchart or block diagrams may represent a module, segment, or portion of code, which comprises one or more executable instructions for implementing the specified logical function(s). It should also be noted, in some alternative implementations, the functions noted in the block may occur out of the order noted in the figures. For example, two blocks shown in succession may, in fact, be executed substantially concurrently, or the blocks may sometimes be executed in the reverse order, depending upon the functionality involved. It will also be noted that each block of the block diagrams and/or flowchart illustration, and combinations of blocks in the block diagrams and/or flowchart illustration, can be implemented by special purpose hardware-based systems that perform the specified functions or acts, or combinations of special purpose hardware and computer instructions.
The terminology used herein is for the purpose of describing particular embodiments only and is not intended to be limiting of the invention. As used herein, the singular forms “a,” “an” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises” and/or “comprising,” when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
The corresponding structures, materials, acts, and equivalents of all means or step plus function elements in the claims below are intended to include any structure, material, or act for performing the function in combination with other claimed elements as specifically claimed. The description of the present invention has been presented for purposes of illustration and description, but is not intended to be exhaustive or limited to the invention in the form disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the invention. The embodiment was chosen and described in order to best explain the principles of the invention and the practical application, and to enable others of ordinary skill in the art to understand the invention for various embodiments with various modifications as are suited to the particular use contemplated.
The descriptions of the various embodiments of the present invention have been presented for purposes of illustration, but are not intended to be exhaustive or limited to the embodiments disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art without departing from the scope and spirit of the described embodiments. The terminology used herein was chosen to best explain the principles of the embodiments, the practical application or technical improvement over technologies found in the marketplace, or to enable others of ordinary skill in the art to understand the embodiments disclosed herein.