Abstract:
A method, system, and computer usable program product for pre and post purchase identification of counterfeit products in a supply chain are provided in the illustrative embodiments. A customer reference number (CRN) associated with a unit of product is identified. The unit of product has associated therewith a unique set of identifiers including the CRN, a customer acknowledgment number (CAN), and a merchant acknowledgment number (MAN). The CRN is sent to a second application and a message is received from the second application in response to sending the CRN. If the message includes a second CAN that is not the same as the CAN associated with the unit, the unit is determined to be a counterfeit product.

Description:
RELATED APPLICATION 
     The present invention is related to similar subject matter of co-pending and commonly assigned U.S. patent application Ser. No. 12/791,933 entitled “MITIGATING DISTRIBUTION AND CONSUMPTION OF COUNTERFEIT PRODUCTS,” filed on Jun. 2, 2010, and U.S. patent application Ser. No. 12/791,938 entitled “IMPROVING MANUFACTURING AND DISTRIBUTION TO AVOID COUNTERFEIT PRODUCTS,” filed on Jun. 2, 2010, which are hereby incorporated by reference. 
     BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     The present invention relates generally to an improved data processing system, and in particular, to a computer implemented method for managing information about products in a supply chain. Still more particularly, the present invention relates to a computer implemented method, system, and computer usable program code for pre and post purchase identification of counterfeit products. 
     2. Description of the Related Art 
     Today, distribution and selling of counterfeit products has become a significant problem in the global marketplace. Almost every country, every region, every industry suffers some loss due to the presence of counterfeit products along with the original products. 
     An original product is a product distributed, sold, or consumed according to the instructions of the rightful manufacturer of the product. A counterfeit product is a product that is not an original product. For example, a product that is a copy or a replica of an original product, intended for distribution, sale, or consumption as the original product, without the authorization of the manufacturer of the original product, is a counterfeit product. As another example, an original product that is distributed, sold, or consumed outside a date range or time period suggested by the manufacturer of the original product may also be considered a counterfeit product. 
     Some anti-counterfeit solutions currently exist in the market. However, none of these solutions provide a robust enough method to reduce or eliminate the distribution and selling of counterfeit products. The adverse effects of counterfeit products are diverse and far-reaching. For example, the pharmaceutical industry is one of the most widely affected industries when it comes to counterfeit products. Both the developed and the developing countries are suffering from counterfeit drugs that harm the health of the people, infringe upon the rights of the pharmaceutical companies, and violate the laws of sovereign nations and states. 
     As another example, nearly forty percent of consumer package goods (CPG) sold around the world are regarded as counterfeit for one reason or another. As another example, the Automobile Manufacturers Association indicates that counterfeit auto parts are a twelve billion dollar problem globally, causing a loss of approximately three billion dollars in the United States alone. 
     The list of counterfeit products is ever growing. Some of the product types that are most susceptible to counterfeiting include pharmaceuticals, CPG, Apparels, automotive parts, electronics and electrical equipment, beverages and tobacco products, toys, baby food, construction materials, agricultural products, and food products. 
     The effects of counterfeiting can be direct or indirect. For example, health problems, harm to equipment, loss of goodwill, and loss of revenue are some of the direct problems associated with counterfeiting. Local and global economic crisis, child labor, and violation of human rights are some of the indirect consequences of counterfeiting. 
     SUMMARY OF THE INVENTION 
     The illustrative embodiments provide a method, system, and computer usable program product for pre and post purchase identification of counterfeit products. An embodiment identifies, using a first application executing in a first data processing system, a customer reference number (CRN) associated with a unit of product. The unit of product has associated therewith a unique set of identifiers including the CRN, a customer acknowledgment number (CAN), and a merchant acknowledgment number (MAN). The embodiment sends the CRN to a second application and receives from the second application a message in response to sending the CRN. If the message includes a second CAN that is not the same as the CAN associated with the unit, the embodiment determines that the unit is a counterfeit product. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       The novel features believed characteristic of the invention are set forth in the appended claims. The invention itself; however, as well as a preferred mode of use, further objectives and advantages thereof, will best be understood by reference to the following detailed description of an illustrative embodiment when read in conjunction with the accompanying drawings, wherein: 
         FIG. 1  depicts a pictorial representation of a network of data processing systems in which the illustrative embodiments may be implemented; 
         FIG. 2  depicts a block diagram of a data processing system in which the illustrative embodiments may be implemented; 
         FIG. 3  depicts a flowchart of an example process of pre purchase identification of counterfeit products in accordance with an illustrative embodiment; and 
         FIG. 4  depicts a flowchart of an example process of post purchase identification of a counterfeit product in accordance with an illustrative embodiment. 
     
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT 
     The invention recognizes that the introduction of counterfeit products can occur at any of the several points in a given supply chain. For example, shops, distributors, retail outlets, suppliers, brokers, export/import points, warehouses, or transportation between points can each potentially be a point where a counterfeit product may be introduced. Accordingly, the invention recognizes that tracking the movement of products from a producer to a consumer is not always easy, practicable, or even sufficient for reducing or eliminating counterfeits. 
     For example, the invention recognizes that a common supply chain may include hundreds if not thousands of manufacturers. Each manufacturer may produce several brands or types of products. Each brand or type of product may include thousands of product items. Each distributor, broker, or distribution point may receive products for several supply chains from several suppliers. Each supplier may stock several products of several brands or types from several manufacturers. A retailer may source from several suppliers and/or distribution points. 
     Thus, the invention recognizes that between the producer and the consumer of a specific product, the transactions become complex and intermingled with many other factors affecting the supply chain. Accordingly, simply tracking a product is insufficient for preventing the introduction, distribution, and consumption of counterfeit products in a supply chain. 
     The invention recognizes that in many cases, a producer cannot answer affirmatively and with confidence whether the product that is sold is the original product the producer manufactured. Similarly, in many cases, a consumer cannot answer affirmatively and with confidence whether the product that was purchased is the original product that was manufactured. 
     Preventing counterfeits from entering the market is not always possible for the producers due at least to the size of the global supply chain in general. Detecting a counterfeit is not always possible for a consumer due to the striking similarities between the counterfeit and the original products and many other reasons. 
     The illustrative embodiments used to describe the invention generally address and solve the above-described problems and other problems related to counterfeit products in a supply chain. The illustrative embodiments provide a method, computer usable program product, and data processing system for improved manufacturing and distribution to avoid counterfeit products. 
     With reference to the figures and in particular with reference to  FIGS. 1 and 2 , these figures are example diagrams of data processing environments in which illustrative embodiments may be implemented.  FIGS. 1 and 2  are only examples and are not intended to assert or imply any limitation with regard to the environments in which different embodiments may be implemented. A particular implementation may make many modifications to the depicted environments based on the following description. 
       FIG. 1  depicts a pictorial representation of a network of data processing systems in which illustrative embodiments may be implemented. Data processing environment  100  is a network of computers in which the illustrative embodiments may be implemented. Data processing environment  100  includes network  102 . Network  102  is the medium used to provide communications links between various devices and computers connected together within data processing environment  100 . Network  102  may include connections, such as wire, wireless communication links, or fiber optic cables. Server  104  and server  106  couple to network  102  along with storage unit  108 . Software applications may execute on any computer in data processing environment  100 . 
     In addition, clients  110 ,  112 , and  114  couple to network  102 . A data processing system, such as server  104  or  106 , or client  110 ,  112 , or  114  may contain data and may have software applications or software tools executing thereon. 
     Server  104  may include CDS  105 . Server  106  may include registration application  107  usable by a manufacturer in accordance with an illustrative embodiment. POS  113  may be a point of sale application usable by a merchant in accordance with an illustrative embodiment. Mobile device  116  may be any mobile device, such as a cellular phone, usable by a consumer in accordance with an illustrative embodiment. 
     Servers  104  and  106 , storage unit  108 , and clients  110 ,  112 , and  114  may couple to network  102  using wired connections, wireless communication protocols, or other suitable data connectivity. Clients  110 ,  112 , and  114  may be, for example, personal computers or network computers. 
     In the depicted example, server  104  may provide data, such as boot files, operating system images, and applications to clients  110 ,  112 , and  114 . Clients  110 ,  112 , and  114  may be clients to server  104  in this example. Clients  110 ,  112 ,  114 , or some combination thereof, may include their own data, boot files, operating system images, and applications. Data processing environment  100  may include additional servers, clients, and other devices that are not shown. 
     In the depicted example, data processing environment  100  may be the Internet. Network  102  may represent a collection of networks and gateways that use the Transmission Control Protocol/Internet Protocol (TCP/IP) and other protocols to communicate with one another. At the heart of the Internet is a backbone of data communication links between major nodes or host computers, including thousands of commercial, governmental, educational, and other computer systems that route data and messages. Of course, data processing environment  100  also may be implemented as a number of different types of networks, such as for example, an intranet, a local area network (LAN), or a wide area network (WAN).  FIG. 1  is intended as an example, and not as an architectural limitation for the different illustrative embodiments. 
     Among other uses, data processing environment  100  may be used for implementing a client server environment in which the illustrative embodiments may be implemented. A client server environment enables software applications and data to be distributed across a network such that an application functions by using the interactivity between a client data processing system and a server data processing system. Data processing environment  100  may also employ a service oriented architecture where interoperable software components distributed across a network may be packaged together as coherent business applications. 
     With reference to  FIG. 2 , this figure depicts a block diagram of a data processing system in which illustrative embodiments may be implemented. Data processing system  200  is an example of a computer, such as server  104  or client  110  in  FIG. 1 , in which computer usable program code or instructions implementing the processes may be located for the illustrative embodiments. 
     In the depicted example, data processing system  200  employs a hub architecture including North Bridge and memory controller hub (NB/MCH)  202  and south bridge and input/output (I/O) controller hub (SB/ICH)  204 . Processing unit  206 , main memory  208 , and graphics processor  210  are coupled to north bridge and memory controller hub (NB/MCH)  202 . Processing unit  206  may contain one or more processors and may be implemented using one or more heterogeneous processor systems. Graphics processor  210  may be coupled to the NB/MCH through an accelerated graphics port (AGP) in certain implementations. 
     In the depicted example, local area network (LAN) adapter  212  is coupled to south bridge and I/O controller hub (SB/ICH)  204 . Audio adapter  216 , keyboard and mouse adapter  220 , modem  222 , read only memory (ROM)  224 , universal serial bus (USB) and other ports  232 , and PCI/PCIe devices  234  are coupled to south bridge and I/O controller hub  204  through bus  238 . Hard disk drive (HDD)  226  and CD-ROM  230  are coupled to south bridge and I/O controller hub  204  through bus  240 . PCI/PCIe devices may include, for example, Ethernet adapters, add-in cards, and PC cards for notebook computers. PCI uses a card bus controller, while PCIe does not. ROM  224  may be, for example, a flash binary input/output system (BIOS). Hard disk drive  226  and CD-ROM  230  may use, for example, an integrated drive electronics (IDE) or serial advanced technology attachment (SATA) interface. A super I/O (SIO) device  236  may be coupled to south bridge and I/O controller hub (SB/ICH)  204 . 
     An operating system runs on processing unit  206 . The operating system coordinates and provides control of various components within data processing system  200  in  FIG. 2 . The operating system may be a commercially available operating system such as Microsoft® Windows® (Microsoft and Windows are trademarks of Microsoft Corporation in the United States and other countries), or Linux® (Linux is a trademark of Linus Torvalds in the United States and other countries). An object oriented programming system, such as the Java™ programming system, may run in conjunction with the operating system and provides calls to the operating system from Java™ programs or applications executing on data processing system  200  (Java is a trademark of Sun Microsystems, Inc., in the United States and other countries). 
     Instructions for the operating system, the object-oriented programming system, and applications or programs are located on storage devices, such as hard disk drive  226 , and may be loaded into main memory  208  for execution by processing unit  206 . The processes of the illustrative embodiments may be performed by processing unit  206  using computer implemented instructions, which may be located in a memory, such as, for example, main memory  208 , read only memory  224 , or in one or more peripheral devices. 
     The hardware in  FIGS. 1-2  may vary depending on the implementation. Other internal hardware or peripheral devices, such as flash memory, equivalent non-volatile memory, or optical disk drives and the like, may be used in addition to or in place of the hardware depicted in  FIGS. 1-2 . In addition, the processes of the illustrative embodiments may be applied to a multiprocessor data processing system. 
     In some illustrative examples, data processing system  200  may be a personal digital assistant (PDA), which is generally configured with flash memory to provide non-volatile memory for storing operating system files and/or user-generated data. A bus system may comprise one or more buses, such as a system bus, an I/O bus, and a PCI bus. Of course, the bus system may be implemented using any type of communications fabric or architecture that provides for a transfer of data between different components or devices attached to the fabric or architecture. 
     A communications unit may include one or more devices used to transmit and receive data, such as a modem or a network adapter. A memory may be, for example, main memory  208  or a cache, such as the cache found in north bridge and memory controller hub  202 . A processing unit may include one or more processors or CPUs. 
     The depicted examples in  FIGS. 1-2  and above-described examples are not meant to imply architectural limitations. For example, data processing system  200  also may be a tablet computer, laptop computer, or telephone device in addition to taking the form of a PDA. 
     With reference to  FIG. 3 , this figure depicts a flowchart of an example process of pre purchase identification of counterfeit products in accordance with an illustrative embodiment. Process  300  may be implemented in a consumer application, such as in an application on mobile device  116  in  FIG. 1 . Process  300  may also be implemented in a data processing system at a kiosk at a retailer as described elsewhere in the disclosure. 
     Process  300  begins by considering or selecting a unit of manufacture of a product for purchase (step  302 ). Process  300  identifies a CRN associated with the unit of the product, from the unit of the product (step  304 ). Process  300  sends the CRN (step  306 ). For example, process  300  may send the CRN to a CDS, such as CDS  105  in  FIG. 1 . 
     Process  300  may receive a CAN in response to sending the CRN (step  308 ). In one embodiment, instead of a CAN, process  300  may receive an error code or other information (not shown). 
     If no CAN is received (“No” path of step  308 ), process  300  deems the product a counterfeit or an expired product and proceeds to abort the purchase (step  310 ). Process  300  may end thereafter. In one embodiment, process  300  may take additional actions with respect to the unit of product deemed to be counterfeit or expired. For example, process  300  may notify a process at a manufacturer, such as a process executing in registration application  107  in  FIG. 1 , with the CRN of the unit. 
     If a CAN is received (“Yes” path of step  308 ), process  300  matches the received CAN with the CAN available from the unit of the product (step  312 ). For example, process  300  may scan a bar code representing a CAN that may be printed on the unit and compare the scanned CAN identifier with the received CAN. 
     Process  300  determines whether the received CAN matches the CAN from the unit of the product (step  314 ). If the two CANs do not match (“No” path of step  314 ), process  300  proceeds to step  310 . If the two CANs match (“Yes” path of step  314 ), process  300  may submit the unit of product for purchase (step  316 ). Process  300  may end thereafter. 
     With reference to  FIG. 4 , this figure depicts a flowchart of an example process of post purchase identification of a counterfeit product in accordance with an illustrative embodiment. Process  400  may be implemented in a consumer application, such as in an application on mobile device  116  in  FIG. 1 . 
     Process  400  begins by detecting a mismatch between a MAN associated with a purchased unit of a product and a MAN received for the unit of product from a record of sale of that unit (step  402 ). The mismatch of step  402  identifies a product as a counterfeit or expired product after the product has been purchased. 
     For example, a retailing process may print a MAN identifier on an invoice, receipt, statement, or a bill of sale associated with the unit. A consumer application may be able to scan a bar coded MAN, RFID coded MAN, or a MAN identifier in another form printed on or affixed to the unit. The consumer application may be able to perform a match between MAN identifiers presented in different forms on the record of sale and the unit of product. 
     Depending on a particular implementation, process  400  may notify a CDS about the mismatch for the unit&#39;s CRN (step  404 ). Process  400  may notify the retailer about the mismatch for the product CRN (step  406 ). Process  400  may notify a manufacturer about the mismatch for the product CRN (step  408 ). Process  400  may perform all or some of steps  404 ,  406 , and  408  in any combination. Process  400  may end thereafter. 
     The components in the block diagrams and the steps in the flowcharts described above are described only as examples. The components and the steps have been selected for the clarity of the description and are not limiting on the illustrative embodiments of the invention. For example, a particular implementation may combine, omit, further subdivide, modify, augment, reduce, or implement alternatively, any of the components or steps without departing from the scope of the illustrative embodiments. Furthermore, the steps of the processes described above may be performed in a different order within the scope of the invention. 
     Thus, a computer implemented method, apparatus, and computer program product are provided in the illustrative embodiments for pre and post purchase identification of counterfeit products. Using an embodiment of the invention, a consumer can take steps to identify counterfeit products before purchasing the product as well as after purchasing the product as needed. A manufacturer, a distributor, or a retailer can further use an embodiment to notify one or more entities about the distribution of counterfeit products. 
     The invention can take the form of an entirely software embodiment, or an embodiment containing both hardware and software elements. In a preferred embodiment, the invention is implemented in software or program code, which includes but is not limited to firmware, resident software, and microcode. 
     Furthermore, the invention can take the form of a computer program product accessible from a computer-usable or computer-readable medium providing program code for use by or in connection with a computer or any instruction execution system. For the purposes of this description, a computer-usable or computer-readable medium can be any tangible apparatus that can contain, store, communicate, propagate, or transport the program for use by or in connection with the instruction execution system, apparatus, or device. 
     The medium can be an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system (or apparatus or device) or a propagation medium. Examples of a computer-readable medium include a semiconductor or solid state memory, magnetic tape, a removable computer diskette, a random access memory (RAM), a read-only memory (ROM), a rigid magnetic disk, and an optical disk. Current examples of optical disks include compact disk—read only memory (CD-ROM), compact disk—read/write (CD-R/W) and DVD. 
     Further, a computer storage medium may contain or store a computer-readable program code such that when the computer-readable program code is executed on a computer, the execution of this computer-readable program code causes the computer to transmit another computer-readable program code over a communications link. This communications link may use a medium that is, for example without limitation, physical or wireless. 
     A data processing system suitable for storing and/or executing program code will include at least one processor coupled directly or indirectly to memory elements through a system bus. The memory elements can include local memory employed during actual execution of the program code, bulk storage media, and cache memories, which provide temporary storage of at least some program code in order to reduce the number of times code must be retrieved from bulk storage media during execution. 
     A data processing system may act as a server data processing system or a client data processing system. Server and client data processing systems may include data storage media that are computer usable, such as being computer readable. A data storage medium associated with a server data processing system may contain computer usable code. A client data processing system may download that computer usable code, such as for storing on a data storage medium associated with the client data processing system, or for using in the client data processing system. The server data processing system may similarly upload computer usable code from the client data processing system. The computer usable code resulting from a computer usable program product embodiment of the illustrative embodiments may be uploaded or downloaded using server and client data processing systems in this manner. 
     Input/output or I/O devices (including but not limited to keyboards, displays, pointing devices, etc.) can be coupled to the system either directly or through intervening I/O controllers. 
     Network adapters may also be coupled to the system to enable the data processing system to become coupled to other data processing systems or remote printers or storage devices through intervening private or public networks. Modems, cable modem and Ethernet cards are just a few of the currently available types of network adapters. 
     The description of the present invention has been presented for purposes of illustration and description, and 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. The embodiment was chosen and described in order to explain the principles of the invention, 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.