Embodiments described herein relate to a system and method for creating coupon offers and barcodes.
Coupons and other similar transactional instruments are generally structured and formatted in compliance with one of the industry or published standards for coupons. A typical coupon (print form) includes a barcode that can be scanned and validated by a retailer at point of sale. Among other challenges, manufacturers and other suppliers of coupons must generate coupons that are properly coded and formatted. Considerations involved in creating coupons include generating the coupon's barcode so that it can be machine-scanned at point of sale to identify the correct value and be associated with the desired product. To identify the correct products, coupons include a family code (often a 3-digit code set by a standard) that identifies a particular product or product group.
An improperly constructed barcode on a coupon is problematic for both the coupon manufacturer and the retailer. For example, if the barcode does not identify the same products represented on the coupon's image (in human readable form), the retailer may be forced to either honor an invalid coupon or turn the customer away. As another example, if the manufacturer creates a barcode that misidentifies the product, the manufacturer may unwillingly grant discounts to the wrong product(s).
As mentioned, the barcode on coupons is typically standardized. One standardized barcode format is UPC.Version A which has the following format:
In this format, the first digit(s) are either the number five (5) or the number ninety-nine (99). This number identifies the barcode as a coupon to the point-of-sale (POS) machine/logic. The second set of digits is comprised of a five-digit manufacturer identification number. In most cases, this number must match the manufacturer identification number of the item being discounted by the coupon. This is shown as MMMMM above. The next three (3) digits is a family code, summary code or super summary code. This number is determined by a manufacturer and is based on how the manufacturer is offering the coupon. The family code hierarchy of the coupon is predetermined by a manufacturer and used so that a coupon can only be redeemed for those items associated with the manufacturer ID and family code of the coupon. In the depicted format, the next two (2) digits are a value code. This is taken from a predetermined listing, published by GS1 (formerly the Uniform Code Council). The final digit is a check character that is calculated from the previous eleven (11) digits, shown as c above.
Another type of barcode is a UCC/EAN-128 Coupon Extended code. There are five formats available for use. These formats include application identifiers and data that may or may not include information such as Number System Character (NSC or the first digit of the manufacturer identification number), a five (5) digit offer code, a four (4) digit expiry date, and an eight (8) digit identification number.
Coupons carry family codes which match to the family code of products. In a typical transaction, the coupons are scanned at the end of the customer's transaction. For a UPC type coupon, point-of-sale machine/logic identifies the number five (5) or ninety-nine (99) at the beginning of the coupon barcode. The presence of this number enables the machine to determination that the scanned item is a coupon. The machine/logic reads the barcode on the coupon, and compares the information of the barcode with the stored information in the retailer's product file. Typically, the machine/logic checks the items purchased by the customer in order to identify an item with that same manufacturer ID number that is within the barcode symbol on the coupon. If product(s) with the same manufacturer ID exist in the purchase, the machine logic checks to see if the family code of the coupon accommodates the product identifier of the items purchased. If there is a match, the value of the coupon is deducted from the customer's order. If there is no match, the machine/logic generates an error code.
According to one or more embodiments, a system is provided to enable a manufacturer (or other user) to create and manage coupon offers and their respective barcodes. According to an embodiment, a system includes one or more modules that operate to enable the user (or the “manufacturer” or coupon supplier) to select a barcode type for a coupon offer. On selection of the barcode type, an interface is displayed to the user that is specific to the barcode type. The interface includes one or more fields that guide the user to provide one or more inputs. Data is generated to create a barcode of the selected barcode type, using information that is determined from the user.
According to another embodiment, a method is provided in which a user selects a barcode type from a plurality of barcode types. In response to the user's selection, the user is presented with an interface that is specific to the selected barcode type. The interface includes one or more fields that prompt (or notify) the user to provide information, in accordance with the structure and format of the selected barcode type. Data for the barcode is generated for the user's coupon offer. The data is generated to match the format of the selected barcode type. The barcode data is generated using information that is provided by the user interacting with the interface(s).
In general, consumers present coupon offers as ‘coupons’ to a retailer. Traditionally, coupons can be printed and/or distributed via free-standing-inserts (FSIs), magazines, newspapers, direct mail flyers, in-store advertisements, attached to or inserted into a package or any other number of vehicles. However, coupons can also be distributed via a network (e.g. Internet) to consumer devices, to enable consumers to redeem or otherwise use the coupons. More specifically, coupons (with barcode and images) may be distributed, or otherwise made available for printing or use by consumers on devices that are operated by the consumers (e.g. user computer and printer). Coupons may also be made available for print and/or use to consumers at other locations, such as at kiosks or other retail outlets.
One or more embodiments described herein provide that methods, techniques and actions performed by a computing device are performed programmatically, or as a computer-implemented method. Programmatically means through the use of code, or computer-executable instructions. A programmatically performed step may or may not be automatic.
Any of the embodiments described herein may be implemented using modules. A module may include a program, a subroutine, a portion of a program, or a software component or a hardware component capable of performing one or more stated tasks or functions. As used herein, a module can exist on a hardware component independently of other modules, or a module can be a shared element or process of other modules, programs or machines.
Furthermore, any embodiments described herein may be implemented through the use of instructions that are executable by one or more processors. These instructions may be carried on a computer-readable medium. Machines or modules shown in figures provided herein include examples of processing resources and computer-readable mediums on which instructions for implementing embodiments of the invention can be carried and/or executed. Examples of computer-readable mediums include permanent memory storage devices, such as hard drives on personal computers or servers. Other examples of computer storage mediums include portable storage units, such as CD or DVD units, flash memory (such as carried on many cell phones and personal digital assistants (PDAs)), and magnetic memory. Computers, terminals, network enabled devices (e.g. mobile devices such as cell phones) are all examples of machines and devices that utilize processors, memory, and instructions stored on computer-readable mediums.
System Description
In
The coupon and product information 105 of data store system 125 may originate from (i) suppliers or manufacturers, who use the data store system to create coupon offers, and (ii) third party sources that share coupon information from other manufacturers or suppliers. Thus, each coupon manufacturer who uses system 100 may supply some of the coupon/product information 105 that is in turn made available as part of the retail service 120. The coupon/product information 105 may include, for example, information about the manufacturer's products, brands, sub-brands, categories, existing coupons and offers, UPC's of products, and prior associated family codes. Other information, including lists of product items that are subject (or not subject) to coupon offers may also be made available as part of the retail service 120.
In one implementation, an upload process or component 116 enables the manufacturer users 101 of system 100 to enter their coupon and product information (for their account on system 100) in bulk, for subsequent use, modification and maintenance. While an embodiment of
Additionally, an embodiment provides that system 100 is web or network enabled, so that its users are able to access its features over the Internet. On the manufacturer side, the user 101 of the system 100 includes coupon manufacturers, such as manufacturers or enterprises in charge of coupon promotions. On the retail side, the user 111 of system 100 may correspond to retailers, although functionality provided for retail service 120 may be accessible to the manufacturer class of users as well.
In an embodiment, the manufacturer service 110 is comprised of modules and/or components that include coupon advisor 130, offer creation component 140, and verification 150. System 100 may be accessible to the user 101 via the secure website to enable the manufacturer to upload or enter product/coupon information 105. With an account, the manufacturer is able to use various user interfaces 118 to (i) maintain and manage its coupon/product information, (ii) create new coupon offers and update existing coupon offers.
The offer creation module 140 enables the manufacturer to generate new coupon offers, including barcode data that is of a particular type selected by that user. As described with an embodiment of
According to one or more embodiments, offer creation module 140 executes processes to assist the user in creating barcodes in anyone of many different possible formats. These formats include, for example, UPC-A, including the 99 Do Not Double, UCC/EAN-128, and GS1 DataBar. In an embodiment, the offer creation 140 includes interfaces that guide the user to enter values or parameters in accordance with the selected barcode standard. Additionally, the offer creation 140 is operable to enable the user to specify (with input parameters 142) the manner in which the coupon and/or the barcode is to be printed. For example, the user 101 (manufacturer) may specify through offer creation 140 that the coupon is to be printed in bitmap (typically having low resolution) or vector based formats (high resolution).
In addition to facilitating offer creation, manufacturer service 110 provides the advisor module 130 to aid the user in creating the family code for coupon offers. An embodiment of
In addition to coupon offers and family code recommendations, separate user interfaces 118 may be provided to enable the user to manage (view, edit, delete, create) the manufacturer's coupon related information 119. This information may include family codes that are actively or inactively in use. Among other features, the user may (i) view and maintain UPC information, including family codes assigned to UPC items, and (ii) view and manage brand/category designations, particularly in the context of family code assignments.
According to an embodiment, the verification component 150 enables the user 111 to check the values and transaction information of a coupon by inputting barcode data. In one implementation, the manufacturer user 101 enters the barcode data 142 (e.g. an actual barcode) and is returned coupon information 144 that displays the manufacturer ID, the family code, the value code and other information about the coupon. The user 101 is able to check coupon offers and related information before coupon campaigns are launched. This functionality may be shared in part by the retail service 120 (e.g. see analyzer 126).
As mentioned, system 100 may also include retail service 120. Retail service 120 may be network or web enabled to enable individual retail users to check or confirm information in coupons. In one embodiment, the retail service 120 includes analyzer 126 to (i) display and verify information that is presented with a coupon offer, and (ii) print a coupon use list 127 for a particular coupon offer (e.g. by family codes) or set or cluster of family codes. As an addition or alternative to the coupon use list 127, the retailer 111 may request from the system 100 a DO NOT use list 128. The do not use list 128 may be specific to individual family codes or coupon offers, to a given manufacturer, or to other classifications. Such DO NOT use list 128 may identify to the retailer products that are to be excluded from coupon offers, including from coupon offers from a specific manufacturer or other classification.
Structuring Coupon Offers and Corresponding Barcodes
In an embodiment, offer creation 140 operates to generate one or more presentations 232 that guide the user into entering information for specifying/defining the coupon offer and the barcode type. The user is enabled to specify information by selecting options and/or inputting natural language information. Thus, under an embodiment, user 101 (manufacturer) is not required to have advanced knowledge of coupon offer structuring. Information that is entered by the user may include, for example, (i) barcode type identification 244, (ii) print format identification 246, and (iii) coupon offer information 248. From this information, the coupon offer component 140 generates the barcode data 250, which may be used at a subsequent time to generate a coupon offer. The resulting barcode data 250 may be characterized by barcode structure 252 and print format 254.
In step 310, offer creation module 140 receives coupon offer information. The coupon offer information may include (i) a name of a coupon offer, (ii) a description of the coupon offer information, (iii) an offer code (which numerically identifies the offer for the manufacturer). Other information includes identification of the products or items that are to be made subject to the coupon offer. For example, this identification may be done by the user specifying products by UPC, by brand, sub-brand, category or other classification.
In step 320, offer creation 140 receives or determines selection by the user of a barcode type. Multiple types of barcode types exist, and each requires the user to enter some information that is specific to that type. Barcode types defined by industry standard include (i) UPC-A, (ii) UCC/EAN-128, or (iii) GS1 DataBar. Other barcode types include Canadian barcodes, or special format barcodes (these are often retailer specific).
In step 330, the user is provided an interface to enable the user to enter input for creating a barcode of the selected type. The interface may serve as a guide, in that it includes features for the user to select fields and parameters to define much of the information necessary for the barcode of the selected type.
Step 340 provides that data for generating barcodes in connection with the user's coupon offer is generated and stored (e.g. on the data store 150). This data may be generated and stored so that it can be printed (optionally in a format preselected by the user) with the barcode structured so that its use at a retailer site will be correctly and accurately processed.
In
In
Recommended Family Code Generation
As mentioned, embodiments described herein provide a programmatic mechanism to recommend or suggest a family code for use with a coupon offer that encompasses a group of products, where the individual products of the group have separate and existing associations with one or more other family codes.
In step 510, advisor module 510 identifies a group of products that are of interest to a manufacturer for use with a coupon offer. The identification made by advisor module may be made through user input or interaction with one or more presentations (such as rendered through the user-interface component 118). For example, the manufacturer may identify the products from a list using the UPC of the individual products. Alternatively, the manufacturer may select the products in the group by brand, sub-brand or category designation.
In step 520, the user (manufacturer) enters a parameter that indicates the acceptable minimum percentage of products in the identified group that are to be covered under a single family code. As an example, the percentage may be 80-95%, meaning that the user can select the parameter (so called “outlier parameter”) when it is acceptable for the family code to encompass (i) at least the percentage (corresponding to the outlier parameter) of products in the group of products of interest, (ii) but less than all of the products in the identified group of interest.
In step 530, a recommended family code is generated based on (i) the associated family codes of the products in the group, and (ii) the outlier parameter. A non-descript or generic family code is used to cover 100% of the products of interest (as well as all other products that have family codes for the manufacturer) if no other family code can be determined that satisfies the outlier parameter. Step 540 provides that a family code is generated for the coupon offer to encompass a sufficient number of products in the group to satisfy the outlier sensitivity parameter.
The following provides an example where five products comprise the group of interest, and where only 80% of the products in the group have associated family codes that can be encompassed by a suggested family code other than “000”. The family codes of the products of interest are:
In the example provided, if the outlier parameter is 80%, then a recommended family code for the set is 110, based on family code generation rules. The family code generation rules for a group of products may include:
(i) if acceptable percentage (as defined by outlier sensitivity parameter) of products in the group have the same family code, then that family code is the suggested family code for the items in the group, excluding the products outside of the outlier sensitivity;
(ii) else use “0” (which is a family code wildcard) as the right most numeral of each family code in the group;
(iii) if acceptable percentage (as defined by outlier sensitivity parameter) of products in the group now have the same family code (when the newly added wildcard is considered), then the recommended family code is “XY0” (excluding the products outside of the outlier sensitivity) where X and Y are the two digits that are the same for the acceptable number of products in the group;
(iv) else use “00” as the first two numerals (counting from right to left)of each family code in the group to make those two numbers wildcards;
(v) if acceptable percentage (as defined by outlier sensitivity parameter) of products in the group now have the same family code (when the two wildcards are considered), then the recommended family code of the group is (“X00”) (excluding the products outside of the outlier sensitivity) where X is the far left digit that is shared by the products in the group;
(vi) Otherwise the family code is “000”.
In the case where the recommended family code for the group is “000”, the user may be notified of that fact before the recommended family code is assigned. As more wildcards are included in the family code, the more likely unintended products from the group will also be encompassed in the family code.
Among other benefits, embodiments such as described with
Other Interfaces for Managing Offers and Related Information
With reference to
Retail Service
In one mode of operation, the retail user 111 enters a barcode value 828 from a coupon offer to, for example, validate a transaction in which the consumer attempts to use the coupon offer. The retailer may simply scan the barcode or enter its numerical information. The analyzer 126 may query the data store 125 (
In addition to information 822 about individual coupon offers, batch lists 826 may be sent to retailers from data store 125 to identify whether products are (or are not) to be subject to coupon offers. Such batch lists may be generated for the retailer based on a specified manufacturer, family code, brand, product class or other classification. An approved product list may enable the retailer to establish an onsite automated mechanism where the coupon offers that include a product from the product list are automatically or more readily approved. A DO NOT use list, conversely, may be provided from system 100 as a mechanism to ensure that the retailer's automation equipment does not accidently honor a coupon offer that is expired, incorrect, or recalled. The Do NOT use list may also clarify when products are to not be subject to coupon offers, such as in instances when the image on a coupon offer seems to encompass other than the product(s) identified from the barcode. As an alternative to the use/DO NOT use lists, one or more embodiments may list coupons that are “buy one, get one free”. The retailer can use such a list to notify the consumer that they can purchase another item for free. Any of the lists provided from system 100 may be provided to the retailer independent of the retailer supplying coupon information or requiring validation at the time a transaction is taking place.
Alternatives
While numerous embodiments described herein have particular applicability to coupon offers, concepts and functionality described herein may be equally applicable to other transactional instruments such as loyalty or gift cards. Such instruments may include (i) barcodes that are formatted or structured in one of the many formats described herein (or alternative formats), (ii) be designed and associated with products or items using interfaces such as described herein.
Although illustrative embodiments of the invention have been described in detail herein with reference to the accompanying drawings, it is to be understood that the invention is not limited to those precise embodiments. As such, many modifications and variations will be apparent to practitioners skilled in this art. Accordingly, it is intended that the scope of the invention be defined by the following claims and their equivalents. Furthermore, it is contemplated that a particular feature described either individually or as part of an embodiment can be combined with other individually described features, or parts of other embodiments, even if the other features and embodiments make no mentioned of the particular feature. Thus, the absence of describing combinations should not preclude the inventor from claiming rights to such combinations