Language selection

Search

Patent 1234631 Summary

Third-party information liability

Some of the information on this Web page has been provided by external sources. The Government of Canada is not responsible for the accuracy, reliability or currency of the information supplied by external sources. Users wishing to rely upon this information should consult directly with the source of the information. Content provided by external sources is not subject to official languages, privacy and accessibility requirements.

Claims and Abstract availability

Any discrepancies in the text and image of the Claims and Abstract are due to differing posting times. Text of the Claims and Abstract are posted:

  • At the time the application is open to public inspection;
  • At the time of issue of the patent (grant).
(12) Patent: (11) CA 1234631
(21) Application Number: 490267
(54) English Title: METHOD AND APPARATUS FOR DISPENSING DISCOUNT COUPONS
(54) French Title: METHODE ET MECANISME DE DEBITAGE DE COUPONS-RABAIS
Status: Expired
Bibliographic Data
(52) Canadian Patent Classification (CPC):
  • 354/34
  • 354/40
(51) International Patent Classification (IPC):
  • G07G 1/14 (2006.01)
  • G07B 1/06 (2006.01)
  • G06F 15/21 (1985.01)
(72) Inventors :
  • MINDRUM, THOMAS L. (United States of America)
  • OFF, GEORGE (United States of America)
  • SCROGGIE, MICHAEL C. (United States of America)
  • O'BRIEN, MICHAEL R. (United States of America)
(73) Owners :
  • CATALINA MARKETING CORP. (Not Available)
(71) Applicants :
(74) Agent: GOWLING LAFLEUR HENDERSON LLP
(74) Associate agent:
(45) Issued: 1988-03-29
(22) Filed Date: 1985-09-09
Availability of licence: N/A
(25) Language of filing: English

Patent Cooperation Treaty (PCT): No

(30) Application Priority Data: None

Abstracts

English Abstract



ABSTRACT OF THE DISCLOSURE


METHOD AND APPARATUS FOR
DISPENSING DISCOUNT COUPONS


Apparatus, and a corresponding method, for
creating a discount coupon in response to the pur-
chase of a product other than the one to which the
coupon applies. A record pertaining to each item
purchased is examined to determine whether the item
is intended to trigger the creation of a coupon. If
it is, at least one associated coupon deal record is
retrieved, and a coupon becomes a candidate for
printing, subject to a maximum number of coupons per
transaction. The apparatus also validates coupons
presented for redemption, scanning a list of pur-
chased products to determine whether any falls into
the same product group specified on the coupon, and
also determining whether the coupon date is valid.


Claims

Note: Claims are shown in the official language in which they were submitted.



-29-

CLAIMS

1. A system for printing a redeemable coupon
in a retail store, solely in response to the purchase
of a competitive item, the system comprising:
a plurality of terminals at customer checkout
locations, each having means for reading product codes
on purchased items in a customer order;
a store controller with which the terminals
can communicate, the store controller having access to
an item record file containing price and other informa-
tion for each product item;
means for storing the terms of at least one
coupon deal in which the printing of a discount coupon
for a selected product will be triggered by the purchase
of a triggering competitive product;
means for identifying the triggering product
in the customer order;
means for associating the triggering product
with the coupon deal; and
means for automatically printing at least one
discount coupon for a product other than the triggering
product, based on the details of the coupon deal and
without the intervention or participation of the customer
other than in purchasing the triggering product.
2. A system as set forth in claim 1,
wherein:
the means for identifying the triggering
product includes a trigger field in each record of
the item record file.

3. A system as set forth in claim 2,
wherein the means for associating the triggering
product with the coupon deal includes:
a coupon look-up file located with the store
controller and accessible by item number, wherein

-30-

each record of the coupon look-up file contains
details of a coupon discount deal.

4. A system as set forth in claim 3,
wherein:
the coupon look-up file includes coupon
index records and coupon deal records, the coupon
index records being accessible by item number and
containing at least one coupon look-up number
providing access to a coupon deal record; and
each coupon deal record contains details of
a corresponding coupon deal.

5. A system as set forth in claim 4,
wherein:
each coupon deal record provides means for
identifying a manufacturer and a product family
group to which the deal applies, means for specifying
an expiration date, means for recording activity
counts with respect to the deal, and means for
recording an offer description to be printed on the
coupon.

6. A system as set forth in claim 5,
wherein the coupon deal record also includes:
means for recording a coupon look-up number
relating to a different coupon deal to be activiated
in response to the redemption of a coupon for the
original coupon deal.

7. A system as set forth in claim 1,
wherein:
the means for automatically printing in-
cludes means for printing in optically scannable bar-
code form.

-31-

8. A system as set forth in claim 1,
wherein the means for automatically printing in-
cludes:
means for printing high-priority coupons
during a sales transaction; and
means for printing low-priority coupons only
after a preselected point is reached in the sales
transaction.

9. A system as set forth in claim 1,
wherein the means for automatically printing
includes:
means for printing on the coupon a code
identifying the triggering product.

10. A system as set forth in claim 1, and
further including:
means for inhibiting coupon printing based
on the occurrence of any of a number of preselectable
conditions.

11. A system as set forth in claim 10,
wherein the means for inhibiting printing includes:
means for inhibiting printing at selected
terminals and by selected products.

12. A system as set forth in claim 10,
wherein the means for inhibiting printing includes:
means for inhibiting printing of a minimum
purchase total is not reached.

13. A system as set forth in claim 10,
wherein the means for inhibiting printing includes:
means for inhibiting printing of a maximum
coupon count is reached.

-32-

14. A system as set forth in claim 1, and
further including:
means for initiating printing of a default
coupon if no other coupons are created in the trans-
action.

15. A system as set forth in claim 1,
wherein:
each triggering product can generate a plur-
ality of coupon deals; and
each coupon deal can be triggered by any of
a plurality of triggering products.

16. A system as set forth in claim 1, and
further including:
means for creating a log record of each
triggered printing of a coupon.

17. A system for printing a redeemable
coupon in a retail store, solely in response to the pur-
chase of a competitive item, the system comprising:
a plurality of terminals at customer
checkout locations, each having mean for reading
product codes on purchased items in a customer order;
a store controller with which the terminals
can communicate, the store controller having access
to an item record file containing price and other
information for each product item;
means for storing the terms of at least one
coupon deal in which the printing of a discount coupon
for a selected product will be triggered by the purchase
of a triggering competitive product;
means for identifying the triggering product
in the customer order;
means for automatically printing at least one
discount coupon for a product other than the triggering
product, based on the details of the coupon deal and

-33-

without the intervention or participation of the
customer other than in purchasing the triggering product;
and
means for redeeming a coupon printed by the
means for automatically printing.

18. A system as set forth in claim 17, and
further including:
means for creating a log record of each
redemption and misredemption.

19. A system as set forth in claim 18, and
further including:
means for crediting a log record of each
triggered printing of a coupon.

20. A system as set forth in claim 17,
wherein the means for redeeming the coupon includes:
validation means, for validating the coupon
with respect to its date and the item to which it
pertains; and
means for automatically applying a discount
to the customer order.

21. A system as set forth in claim 20
wherein the validation means includes:
means for comparing the date of coupon
presentation with an expiration date to determine the
date validity of the coupon;
means for retrieving a coupon deal record
specified by a coupon look-up number on the coupon;
and
means for comparing the manufacturer's code
and product family group code in the retrieved coupon
deal record, with corresponding fields associated
with each purchased item, to find a match required to
validate the coupon.

-34-

22. A system as set forth in claim 21,
wherein the means for comparing the coupon date
includes:
means for storing an absolute coupon
expiration date in the coupon deal record, for
comparison with the date of presentation of the
coupon; and
alternative expiration date means, for
storing a coupon validity period in the coupon deal
record, for use in deriving the coupon expiration
date from the date of coupon printing.

23. A system as et forth in claim 17, and
further including:
means for optionally initiating printing of
another coupon different from the one presented for
redemption.

24. For use in a retail store point-of-sale
system having a plurality of terminals at customer
checkout locations, each with means for reading
product codes on purchased items in a customer order,
and a store controller with which the terminals an
communicate, the store controller having access to an
item record file containing price and other
information for each product item, a method for
printing a redeemable coupon solely in response to the
purchase of a competitive item, the method comprising
the steps of:
preselecting a discountable product for which
a discount coupon is to be printed;
preselecting at least one competitive
triggering product, the purchase of which is intended
to initiate printing of the discount coupon;
storing the terms of at least one coupon deal
relating to the discount coupon to be printed;

-35-
identifying the triggering product in the
customer order;
associating the triggering product with the
previously stored terms of the coupon deal; and
automatically printing at least one discount
coupon for the discountable product, based on the details
of the coupon deal and without the intervention or
participatlon of the customer other than in purchasing
the triggering product.

25. A method as set forth in claim 24,
wherein:
the step of identifying the triggering
product includes retrieving a trigger field in each
record of the item record file.

26. A method as set forth in claim 25,
wherein the step of associating the triggering
product with the coupon deal includes:
accessing a coupon look-up file located with
the store controller by means of an item number
access key, wherein each record of the coupon look-up
file contains details of a coupon discount deal.

-36-

27. A method as set forth in claim 26,
wherein the step of accessing the coupon look-up file
includes:
first retrieving a coupon index record in
the file, by means of an item number access key, the
coupon index record containing at least one coupon
look-up number providing access to a coupon deal
record; and
then accessing a coupon deal record by means
of the coupon look-up number obtained form the coupon
index record, wherein each coupon deal record
contains details of a corresponding coupon deal.

28. A method as set forth in claim 27,
wherein the step of automatically printing a coupon
includes:
extracting from the coupon deal record the
coupon deal information, including expiration date,
discount amount, and a customer message;
printing this coupon deal information on the
coupon; and
updating an activity count stored in the
coupon deal record.

29. A method as set forth in claim 24, and
further including:
redeeming a coupon printed by the step of
automatically printing.

30. A method as set forth in claim 29,
wherein the step of redeeming the coupon includes:
validating the coupon with respect to its
date and the item to which it pertains; and
automatically applying a discount to the
customer order.

-37-

31. A method as set forth in claim 30,
wherein the validating step includes:
comparing the date of coupon presentation
with an expiration date to determine the date
validity of the coupon;
retrieving a coupon deal record specified by
a coupon look-up number on the coupon; and
comparing the manufacturer's code and
product family group code in the retrieved coupon
deal record, with corresponding fields associated
with each purchased item, to find a match required to
validate the coupon.

32. A method as set forth in claim 31,
wherein the step of comparing the coupon date
includes:
storing an absolute coupon expiration date
in the coupon deal record, for comparison with the
date of presentation of the coupon; and
optionally storing a coupon validity period
in the coupon deal record, for use in deriving the
coupon expiration date from the date of coupon print-
ing.

33. A method as set forth in claim 31, and
further including:
detecting a continuity coupon identifier in
the coupon deal record of a validated coupon
presented for redemption; and
in response to the detection of a continuity
coupon identifier, printing coupon for another
product.

34. A method as set forth in claim 29, and
further including:

-38-

creating a log record of each printing step
and each redeeming step.

35. A method as set forth in claim 24,
wherein:
the step of automatically printing includes
printing a portion of the coupon in optically scan-
nable bar-code form.

36. A method as set forth in claim 24,
wherein the step of automatically printing includes:
printing high-priority coupons during a
sales transaction; and
printing low-priority coupons only after a
preselected point is reached in the sales transac-
tion.

37. A method as set forth in claim 24,
wherein the step of automatically printing includes:
printing a code identifying the triggering
product.

38. A method as set forth in claim 24, and
further including:
inhibiting coupon printing based on the
occurrence of any of a number of preselectable condi-
tions.

39. A method as set forth in claim 38,
wherein the inhibiting step includes:
inhibiting coupon printing at selected
terminals and by selected products.

40. A method as set forth in claim 38,
wherein the inhibiting step includes:

-39-

inhibiting coupon printing if a minimum pur-
chase total is not reached.

41. A method as set forth in claim 38,
wherein the inhibiting step includes:
inhibiting printing if a maximum coupon
count is reached.

42. A method as set forth in claim 24, and
further including:
initiating printing of a default coupon if
no other coupons are created in the transaction.

Description

Note: Descriptions are shown in the official language in which they were submitted.



3A~


METHOD AND APPARATUS FOR
DISPEMSING pISCOUNT_COUPONS

BACKGRO~ND OF THE INVENTION

This invention relates generally to point-
5 of-sale computer system~ of the type used ~n retail
stores to record sales tran6action~. ~qore particu-
lar~y, the invention relates to point-of-6ale systems
capable o~ handl~ng discount coupons. ~ost point-
of-sale sy~tems hava termina~ that ara capable of
10 readi.ng a code printed on each product package, and
thereby determining the prics ~rom an internal file
~tored at a store controller. Products are ~oded by
means o~ a ~eries of parallel lines, in accordance
with ~ convention known as the Univ~rsal Product
Code.
As every grocery shopper knows, many manu-
~acturers di6tribut~ discount coupons for their
products, either through the ~a~, or by printing
them in newspaper~ or magazinasl or enclosing them in
~ sim~lar or related product packages. When a customer
presenl:~ a di6count coupon at the time of purchase o~
an appropriate product, the grocery checker operating
the termlnal will typically key in the coupon amount,
and the discount will be substracted ~rom the cus-
25 tomer'~; bill.
This procedure o~ten ha~ ths disadvantagethat the ou~tomer ~ay not have actually purchased the



.~.v.

~; ~
-2- ~23~

discountable product, and the coupon will then be
improperly redeemed. There is, however, a more
important disadvantag~ associated with the usual
system of discount coupon distribution. The coupons
for a particular product are distributed either to a
person who has previously bought the same or a
related product. ~rom a marketing standpoint, this
is contrary to the usual goal in any marketing
campaign: to increase the number of customers who buy
a particular product, by adding new customers.
People who have already bought the product are
clearly not new customers. And people who collect
coupons from newspapers and mailings typically fall
into a very narrow group. First they are part of a
group of people who are motivated to collect coupons
of any kind, usually for economic reasons. More
importantlyt customers who collect and redeem a
particular coupon will usually have had some prior
knowledge of the product, i.e~ they are probably not
"new" customers.
Various other strategies are sometimes used
to reach new customers. These include mass mailings
of free samples of the product, together with
discount coupons, and mass media advertising. Free
samples of some types of products cannot be
conveniently mailed, however~ and many potential new
customers may still ignore the mailing. Likewise,
mass media advertising may fail to reach a potential
new customer, or convince him to try a new product,
especially if he is already relatively satisfied with
a competitive product.
Ideally, what is needed from a marketing
standpoint is some way of putting a discount coupon
for a selected product in the hands of a customer who
35 uses some other product. The present invention
satisfies this need.

-3- ~ ~3~1L6:31

SUMMA}'cY OF THE INVENTION

The present invention resides in apparatus,
and a related method, for printing a redeemable dis-
count coupon at a point-of-sale terminal, in response
to the purchase of a product other than the one to
which the discount applies. Briefly, and in general
terms, the apparatus of the invention comprises means
for identifying a triggering product in a customer
order, means for associating the triggering product
with a coupon deal, and means for automatically
printing at least one discount coupon for a product
other than the triggering product r The apparatus
also preferably includes means for validating a dis-
count coupon presented for redemption, and means for
automatically applying a discount to the price of a
product to which the coupon applies.
More specifically, the means for identifying
a triggering product includes an item file with a
triggering field contained within each product re-
cord, and means for checking the ~riggering field aseach product purchase is processed. The means for
associating the triggering product with at least one
coupon deal includes a file of coupon index records
to which access is obtained by item code, and which
25 contains for each triggering product at least one
link to a coupon deal file. Each record of the
coupon deal file contains details of a coupon deal,
including its value, period of validity, and a code
identifying a family of products to which the coupon
30 deal applies. The means for printing the c~upon in-
cludes means for determining a printing priority, and
a printing device capable of reproducing a bar-type
code in Uniform Product Code format.
The apparatus also includes means for

3~631
--4--

producing a log of all printing and redemption trans-
actions. In the disclosed embodiment of the inven-
tion, this means includes a log file, and means for
storing a new record in the log file at the time of
each printing transaction or redemption transaction.
The means for validating a coupon include
means for reading the bar code on the coupon, which
includes a date of printing and a coupon look-up
number, means for accessing an associated coupon deal
record, means for comparing the date on the coupon
with the coupon deal validity date, and means for
comparing the product family code and manufacturer's
code in the coupon deal racord with corresponding
codes in the items purchased by the customer. The
coupon is declared to be valid only if the date is
within the validity period of the coupon deal, and
the manufacturer's code and product family group code
on tbe coupon match similar codes in a product that
was purchased.
The means for automatically applying a dis-
count to the customer order is responsive to the
means for validating the coupon. The apparatus in
addition may include means for limiting the number of
coupons printed per coupon deal or per customer
order, means for maintaining counts of the numbers of
coupon creations and redemptions, means for printing
a default coupon if the total amount of the customer
order e~ceeds a preselected value, and means for
selectively turning on and off triggering or print-
ing, by store, lane, coupon or product item. The
system may also include means for triggering the
creation of a coupon in response to the redemp~ion of
another coupon that was previously printed by the
apparatus of the invention.
In terms of a novel method, the invention

_5_ ~3~63~

comprises the steps of identifying a triggering pro-
duct from among a sequence of products purchased by a
customer, associating the triggering product with at
least one coupon deal involving a discount on a pro-
5 duct different from the triggering product, and auto-
matically printing a machine-readable coupon for the
customer. More specifically, the step of associating
the triggering product with a coupon deal includes
the steps of accessing a coupon index record by means
of a product item code of the triggering product, the
product index record containing one or more coupon
look-up numbers; then accessing a coupon deal record
by means of each of the coupon look-up numbers in the
coupon index record. Each coupon deal record con-
tains all of the information necessary to print acoupon, and the only remainin~ steps in coupon cre-
ation are extracting the coupon information from the
coupon deal record and printing the couponu
The method further includes the steps of
updating a count in the coupon deal record after each
coupon creation, and after each coupon redemption or
misredemption. The steps of coupon validation and
redemption include reading a previously created dis-
count coupon, extracting a coupon look-up number from
the coupon information, retrieving a coupon deal re-
cord corresponding to the coupon presented for vali-
dation, comparing a date read from the coupon with an
expiration date in the coupon deal record, comparing
a manufacturer~s code and a product family code in
the coupon deal record with corresponding codes in
each product purchased by the customer, and indicat-
ing whether the coupon is a valid one. If the coupon
is valid, the redemption process also includes apply-
ing a discount to the customer's transaction total.
35 Optionally, the validation process may also include

3~i3~
the step of initiating creation of a preselected
coupon in response to the redemption of another
couponO
It will be appreciated from the foregoing
that the present invention represents a significant
advance in the field of retail point-of-sale sys-
tems. In particular, the invention provides a tech-
nique for creating discount coupons at the point of
sale and in response to the sale of products other
than the ones to which the discount applies. The
invention also provides a coupon validation and
redemption procedure that permits the coupons pre-
viously created by this invention to be inspected by
machine and the discount automatically applied if the
coupons are valid. Other aspects and advantages of
the invention will become apparent from the following
more detailed description, taken in conjunction with
the accompanying drawings.

BRIEF DE~CRIP~'IO~i OF THE DRAWINGS
_

FIGURE 1 is a simplified block diagram show-
ing the apparatus of a point-of-sale computer system
for use in a retail store;
FIG. 2 is a block diagram illustrating in-
terrelationships between the pr incipal f iles used in
the apparatus of the invention;
FIG. 3 is a simplified flow chart showing
the functions performed in a general wait loop o the
terminal proyram;
FIG. 4a is a simplified flow chart showing
the functions performed at a checkout terminal during
coupon creation;
FIG. 4b is a simplified flow chart showin3
the functions performed in processing queued coupon

` ~3~i3~
--7--

printing requests during coupon creation;
FIG. 5 is a simplified Elow chart ~howing
the functions performed by the store controller and a
terminal during coupon redemption;
5FI~. 6 is a simplified flow chart showing
date validation functions of ~IG. 5, and
FIG. 7 is a simplified flow chart showing
item validation functions of FIG. 5.

DESCRIPTION OF THE PREFERRED EMBODIMENT

Overview:
As shown in the drawings for purposes of
illustration, the present invention is concerned with
point-of-sale systems for recording sales transac-
tiOIIS involving discount coupvns. FIG 1 shows in
broad sutline the components of such a system. In
each store in which the invention is to be used,
there is a store point-of-sale controller, indicated
by reference numeral 10, and a plurality of checkout
terminals ~2, each having an associated optical
scanner 13. Associated with the store controller 10
are a number of files, indicated at 14, which are
used by the controller to provide information to the
terminals 12. In a typical point-of-sale system, the
-files 14 contain a record for each product in the
store, and are used to access price and other infor-
mation concerning th~ product.
The store controller 10 is coupled to a
retailer host computer 16, as indicated by line 18S
which may be a telephone line or some other communi-
cation link. The retailer host computer 16 controlscommunications with all store controllers in the
retailer's various stores, and is responsible for
generating various accounting reports, as indicated

-8- ~3~;3~

at 20. The retailer host computer 16 has an asso-
ciated data base 22 of various files relating to the
retailer's entire store operations.
Point-of-sale systems of the general type
described are not normally equipped to handle dis~
count coupons, except in the sense that a checker at
one of terminals 12 can key in coupon values to be
discounted from a customer's bill. In accordance
with the pres~nt invention, at least one of the
checkout terminals 12 has associated with it a coupon
printer 24, and the system includes means, to be
described, for identifying a triggering product among
the items listed in the customer's bill. A trigger-
ing produc~ is one that has been selected by a manu-
facturer to trigger the printing of a coupon for oneof the manufacturer's products.
The files 14 associated with the store con-
troller lO include an item record file 3~, a coupon
look-up file 32, and a coupon log file 34. The item
record file 30 is a standard price file used in
point-of-sale systems, except that it includes a
trigger flag, which is an additional one-bit field.
There is also room in the item record for two fields
known as family group codes. A family group code is
25 a three-digit number assigned by the product manufac-
turer to identify the product as belonging to a par-
ticular group of products. A single product may
belong to two such groups, or more if an extended
record format is used. As will be discussed in more
detail, the family group codes ~re used in the coupon
validation process, in which a coupon presented for
redemption is examined for validity in relation to a
particular customer bill. For example, a particular
coupon may be valid for a ~amily group csmprising all
35 different si~es of a product package.

;3~
_9_

In the process o coupon creation, the files
14 are used as illustrated in simplified form in FIG.
2. The coupon look-up file 32 includes records of
two types, coupon inde~ records, indicated at 40, and
coupon deal records, indicated at 42. When a product
in the customer's purchase transaction is detected as
a triggering item, by detection of the trigger flag
43 in the item record 44 for that product, the system
is able to locate a coupon index record corresponding
to the triggering product, as indicated by the arrow
45. The coupon index record 40 contains an item
code, i.e. there is a unique coupon index record for
every triggering product, and also contains at least
one coupon look-up number (CLU)o The CLU provides a
link to at least one coupon deal record 42, as indi-
cated by the arrows 46. This structure allows a par-
ticular trigyering product to trigger the printing of
one or more coupons, which may pertain to different
groups of products, and allows diferent triggering
products to trigger the printing of a coupon for a
single product group. Each coupon deal record 42
contains the details of a particular coupon deal,
including the value of the discount, the dates of
validity of the deal, a message to be printed on the
25 coupon, and various counts recording the activity of
the coupon deal.
Validation of a coupon presented for redem-
ption involves first reading a coupon look-up number
from the coupon. This number relates the coupon to a
30 specific coupon deal record, which has as one of its
data fields a manufacturer's number and a family
code. If the manufacturer's number and the family
code match with similar fields for an item in the
customer's order, the coupon is valid, and an appro-
35 priate discount is applied to the order.

File Formats:
The coupon look-up file includes two types
of record: the coupon index record (CIR) and the
coupon deal record (CDR~. Both types of record begin
5 with a si~-byte key in the following format:

1 2 3 4 5 6
<~ -data-~ <-X->

The X field indicates the record type. If
X=00 the record is a coupon index record, and if X
=01 the record is a coupon deal record. The
five-byte data field is different for each of the two
record types, as will be apparent from the following
formats. The coupon index record format is as
follows:

1 2 3 4 5 6 7 8 9
<--Item code ~UPC no.)-->< 00 --CLU#--><flags>

The item code contains the Uniform Product
Code for the product, in binary form. The sixth byte
identifies the rerord as a coupon index record. And
20 the CLU# provides a link between a triggering product
and a particular coupon deal record. To allow the
purchase of one product to trigger more than one
coupon deal, a coupon index record may contain up to
two additional CLU# fields and flag fields, following
25 the format illustrated above. Accordingly, the
purchase of one product can trigger the pri~ting of
up to three coupons.
The individual bits in the flag field of the
coupon index record have the following meanings,
30 where bit 7 is the most-significant bit and bit 0 is
the least-significant bit:

9 ~3~631

Bit 7 - Log only (peint inhibited),
Bit 6 - ~ligh priority coupon,
Bit 5 - Minimum balance due applies,
~it 4 - Trigger bit,
Bits 3-0 - Trigger item sequence no. 11-9).
The trigger bit is a copy of the trigger bit
contained in the item record. ~owever, the item
record may have its trigger bit reset during routine
maintenance, and the trigger bit in the coupon index
record are copied back into the item records on a
regular, such as daily, basis. The log-only flag is
used to inhibit printing, and may be used tn monitor
the number of coupons that would have been created by
the use of a particular triggering product. The
high-priority flag enables coupon printing
immediately upon detection of the triggering product
in a customer's order. For a low priority coupon,
printincl is deferred until the entire order has been
processed. The flag relating minimum balance due
permits printing to be inhibited unless a minimum
balance due is reached in the customer order.
Finally, the trigger item se~uence number is a digit
that can be used to identify the triggering product
in cases where the same coupon deal is triggered by
the purchase of different products. The trigger item
sequence number is printed on the coupon that is
created, and may therefore be used upon redemption of
the coupon, to create an appropriate log record
permitting analysis of which triggering items
resulted in coupon-discounted sales.
It will be noted that the coupon index
record has a length of from nine to fifteen bytes.
The trigger flag in the first flag byte of the record
is the only one usedO i.e., the triggPr bits in flag
35 bytes for any additional CLU's are not used. The

-12- ~2~4~3p

CLU# field may be zeroed out to denote that the
triggering product is no longer linked to a particu-
lar coupo~ dealO
Each coupon deal record contains the details
of a coupon to be printed. The format is as follows:

CLU# 00 00 00 01 value expn. date manuf #
<--- 6~byte key ---><- 2 -><- 2 -><- 3 ->

fam. code flags cont. CLU start date end date
~-- 3 --><- 1 -><-- 2 -->~-- 2 --><-- 2 -->

counts lengths offer descn. advert. msg.
<-- 8 --><-- 4 --><-- 2x30 --><-- 2x30 --~

The value field contains the coupon discount
amount, and the manufacturer's code is a number that
uniquely identifies the manufacturer of the products
for which the coupon provides a discount. Each
coupon deal relates to a discount on any of a family
of products, the family codes being assigned by the
manufacturer. A discount could apply, for example,
to all sizes of a product, or to any group of related
20 products.
The expiration date contains a number
indicative of the date of expiration of the coupon.
This can be a validity period in days from the coupon
printing date, or the number o days from some fixed
25 time reference, such as January 1, 1983. The start
and end dates are also measured in numbers of days
from the same reference, modulo 1000, and indicate
the period during which the coupon deal extends, i.e.
the period during which coupons will be printed.
The continuity CLU field defines another
coupon deal that is linked to this one. This can be

-13- ~ 3~ 3 ~

used to trigger the printing of another coupon when
the original one is redeemed. The field is zero if
there is no SUC;l linked coupon deal. The "lengths"
fields are four one-byte ields, each defining the
length of one line of text in the offer description
and the advertising message that follow.
The "counts" fields are four separate
two-byte fields to record counts of the total number
of coupon triggered, the total number oP coupons
printed, the total number of coupons redeemed, and
the total number of coupons misredeemed. The counts
are used for purposes of analysis of coupon usage,
both in the coupon creation and coupon redemption
phases.
The flag field of the coupon deal record
contains only three meaningful bits of information.
Specifically, the flag bits have the following
meanings when set to a one state:
Bit 7 - log only tprint inhibited),
Bit 6 - free coupon (no charge for item)~
Bit 5 - expiration date is a validity period.
When bit 5 is setr the expiration date
indicates the number of days beyond the printing date
that the coupon is to remain valid. If bit 5 is not
25 set, the expiration date indicates the number of days
beyond a preselected reference date that the coupon
is to remain valid.
~ rhe coupon log file is a sequential file
into which a new record is written whenever a coupon
30 is printed or a coupon is redeemed. The format of
the log file record is as follows:

Store terminal operator fun. code flags trans.~
<- 1 -><-- 1 -->c-- ~ -->~ <- 1 -><- 2 ->

; ~23~;3~
-14-

UPC# CPN# item price date/time
~- 5 -><- 5 -><-- 2 --><-- 3 --~

The store number field contain~ a relative
store number. A value 01 indicates a local store and
a value 02 indicates a backup store~ Thi5 code i8
not critical to the invention, and relates to the use
of a back-up store controller (at another store) to
control check-out operations. The terminal number
indicates the check stand at which the transaction
took place. The function code field has the
following possible meanings:
Fl (hexadecimal) - coupon creation,
F2 - redemption,
F3 - store support procedure
entry.
The flags field has the following meanings:

80 ~hexadecimal) - free coupon,
- no-sale redemption,
- continuity linked (if
creation), or
- coupon value entered
manually (if redemption),
- voided redemption,
OF - reason code.
The low four bits of the flag field are used
to record a reason for non-printing or misredemption
of a coupon. The various reasons are as follows,
where the four-digit value represents the binary
state of the field.
30 Coupon printing:
0000 - printed,
1000 - print inhibited store-wide,
1001 - print inhibited at this lane,

3~;3~
-15--

1010 - print inhibited for this CLU~,
1011 - print inhibited for this item,
0100 - unable to access coupon index record,
0101 - unable to access coupon deal record,
0010 - transaction below threshold~
0001 - duplicate CLU#,
1100 - printing disabled by operator. B.
Misredemption:
0000 - normal redemption,
0001 item not in order,
0010 - expiration date exceeded,
0100 match only in manufacturer number,
1000 - accepted (validation disabled).
The date/time of the transaction are
recorded in the form MMDDHH, where MM is the month,
DD the day of the month, and HH the hour of the day~
~'he CPNt field is used to record the entire set of
da~a read from a prin~ed coupon, and the UPC# field
records the triggering product code in the case of
coupon creations, and the purchased product code in
the case of redemptions.

~axdware and Software Overview:
~ he hardware used in this invention is
conventional for point-of-lsale ~ystems. Various
25 manufacturers supply point-of-sale equipment, and the
invention is not limited to any particular configura-
tion. By way of example, the invention is presently
implemented using the International Business Machines
Corporation (IBM) Programma~le Store System, referred
30 to as the IB~ *3680. The store controller 10 is an
IBM 3650 and the terminals 12 are IB~*3~B3 termin-
alsO The IBM *3683 Model 3 terminal incorporates a
third printer station in addition to a customer re-
ceipt printer station~ and a ~ournal printer station

* trade mark.

-16~ 4~

for maintaining a log of transactions.
IBM supplie6 a ~o~tware operating ~y~tem for
USQ ln controlling operationa in th~ hardware des-
cribed. The operating 8y tem i8 referred to ~8 the
IB~ progxammable tore system MICROCODE, sometimes
referred to as the general control program. IBM alæo
supplies a program product to enable users to write
program for execution in the controller and the
terminal~. The program product i8 referred to as
SPPS II (Subsystem Program Preparation Support II),
and includes languages, macro instructions, and a
terminal display language. Communication between th~
terminal~ and the ctore controller is aocomplished
using a store communications loop and a program of
instructiona wrltten ~n IBM 3650 Progr2mmable Store
SyRtem Microcode. Other application program~ that
typically form part of the envirnnment o~ the inven-
tion are SD~ ~Store Data Management) and HCP (Host
Communication Program), both sold by IB~.
2Q ~11 of these aspects of the invent$on hard-
ware and software are well known ~nd well de~ined in
trade literature and IB~ tecllnical li~erature. For
further information, ~ useful 6tarting po~nt i~ the
publi~ation ~IBM 3680 Programmable Store SyEtem Intro-
duction," (GA27-3199-3) publlshed by IBPS, Dept. E02,
P.O. Box 12195, Research Triangle Park, Noxth Caro
~n~ 27709.
An appl~cation program product written to
run in the SPPS II environment provides various
30 checkout and administrative functions ~or the 6tore.
This product is referred to as ISIS (In Store Infor-
mation System), produced by Data Connection ~imi~ed,
Enfield, ~iddlesex EN2 6UE, England.

: ~L23~;3~
-17-

CouPon Creatlon:
The coupon creation function~ pergormed by
the terminals 12 and the controller 10 are shown in
FIGs. 3, 4a and 4b. FIG. 3 illustrate~ a "general
wait 6tate" of the terminal, wherein the terminal
software cyclicly checks to determine whether any
proc ssing is required. OncP processing is inltiated
to a certain stage, a return is made to tAe general
wait state, a~ will be further explained.
The first ~llustrated block of the general
wait state poses the question whether there i6 any
input data to process, as indic:ated at 50. The input
data typically take~; the form of bar code scanner
input, but may also ~nclude keyboard input ~rom the
terminal operator. If there is input data to pro-
cess, the terminal departs from the general wait
state and enters an input program ~equence, ~s
indicated at 51. If there is currently no input data
to process, the next test, posed in block 52, ~s
whether a requested response has been received from
the controller 10. As will be describ~d, each of the
terminals 12 ~requently makes requests to the con-
troller 10 ~or file access. ~he reguesting program
r~turns control to the general wait state, to await
25 arrival of teh response. I:E a response has been
received, control i~ transferr~d to a response return
point, as indicated at 53. The respon~e re~urn point
~equentially follows the point in the program ~rom
which the file access request was mad~- to the con-
~roller.
If no response has ~een received from thecontroller 10, the next guestion posed in the general
wait state $s ~hether a presele~ted time-out is com-


-18- ~23~

plete, as indicated at 54. As will be described, a
time-out is initiated after each coupon printing re-
quest, to ensure that the coupon printing function
does not totally occupy the time of the terminal
printer. In the equipment presently employed to
implement the invention~ coupons are printed at a
separate station of the printer, but employing a
print head shar~d by other print stations. In this
manner, separate printed documents can be generated
at the separate stations, but the single print head
behaves in effect like a single printer. Printing of
too many coupons can preclud~ or limit printing of a
customer receipt. When the time-out is completed,
return is made to the program that initiated the
time-out, as indicated at 55. If the time-out is not
yet complete, control is transferred back to the
beginning of the general wait state loop.
In the input processing steps, shown in FIG.
4a, only the purchase and coupon creation functions
are shown. If the input involves coupon redemption,
as determined in block 58, control is transferred to
the redemption processing functions illustrated in
FIGo 5. Otherwise, the first step o input process-
ing is to obtain the product code input to the ter-
25 minal, as indicated in block 60. Then a request ismade to the controller 10 for the item record corres-
ponding to the input product code. The request for
this record, indicated at 61, is one of a number of
such requests made to the controller during the input
30 process. In each case, after the request is trans-
mitted to the controller 10, a return is made to the
general wait state shown in FIGo 3, to await the re-
turn of the response from the controller. When the
response is received, the wait state loop of FIG. 3
35 transfers control back to the input sequence, at a

-19- ~3~fi3~

point immediately following block 61.
Next, as shown at 62, a print request is is-
sued to initiate printing of a line on the customer
receipt. The print request results in the storing of
printable data in a print queue. One function of the
system software associated with the terminal is to
take printable information from the print queue on a
first-in-first-out basis, and to print it using the
terminal printer.
Up to this point in the input processing,
~he functions performed are conventional ones that
take place regardless of whether any coupon creation
is to occur. In the next step, shown at 63, a check
is made to determine whether the trigger flag is set
in the item record being processed. If ~he trigger
flag is setf a request is made to the controller 10
fox the corresponding coupon index record, as indi-
cated at 64 t and the coupon look-up number, or num-
bers, stored in the coupon index record are placed as
20 a coupon request in a coupon queue, as indicated at
65, together~ with the flags associated with ~ach
coupon look-up number in the coupon index record.
One of the flags is, of course, the printing priority
flag, and this determines the position in which the
25 coupon request will be placed in the coupon queue.
High priority coupons are entered behind any already
queued high priority coupons and ahead of any low-
priority items, while low-priority items are entered
at the bottom or end of the coupon queue. After en-
30 try of a coupon request in the coupon queue, returnis made to the general wait state, as indicated at
66.
If a product being processed has no coupon
trigger flag, as determined in block 63, there is
35 still a possibility that a coupon should be printed

~3~Ç~3~1L
during the current transaction. The store has the
option of printing a default coupon if no other cou-
pons are printed in a transaction, and provided an
optional minimum purchase requirement i8 met. To
determine whether this should be done, a check is
made, in block 67, to determine whether the transac-
tion has advanced to the point whexe the balance due
has been registered on the terminal, i.e., all items
have been inpu~ and processed. If the balance-due
io point has not been reached, control is transferred to
block 66, to return to the general wait state. If
the balance-due point has been reached, the next
question posed, in block 68, whether any coupons at
all have been printed during the entire transaction.
If not, a store default coupon is stored in the cou-
pon queue~ as indicated at block 6~, before a return
is ~lade to the general wait state.
Input processing proceeds in the manner
shown in EIG. 4a, with coupon requests being placed
in the coupon queue as corresponding triggering items
are detected in the transaction. The process by
which coupon requests are r~moved from the coupon
queue is shown in FIG. 4b.
After a return from a time-out, from the
25 general wait state, the coupon queue is first
checked, as shown at 7~, to determine whether there
are any coupon requests waiting to be processed. If
there are, the next question posed, in block 73, is
whether the balance-due point has been reached in the
30 transaction. If it has not, the only coupons eli-
gible for printing are high priority coupons. This
is determined in block 74. If there are no items in
the coupon queue, or if there are only low-priority
items and the balance-due point has not been reached,
35 control is transferred to block 75, which selects a

~23~3~L
-21-

zero or near-zero time-out period. Then, in block
76, the time-out is initiated and a return i8 made to
the general wait state. Control will very soon pass
back again from the general wait state, to check the
condition of the coupon queue once more.
If the balance-due point has been reached,
as determined in block 73, the next test, in block
77, is to determine whether the end of the transac-
tion has been reached, that is whether the terminal
operator has received payment for the sale and has
closed out the transaction in preparation for begin-
ning a new one. If this has not occurred, control is
passed to the next step, at block 78, to ~elect the
next unprocessed item in the coupon ~ueue. If the
end of the transaction has been reached, however, a
log-only flag is set, in block 79, before passing to
block 78. Control also passes to block 78 if a high-
priority coupon creation request is detected in blo~k
74.
At this point, a coupon creation candidate
has been selected from the coupon queue, but it is
still subject to a number of further tests before an
actual print request is made to print the coupon.
First, in block 80, a check is made to determine if
25 the same coupon has already been printed in this
transaction. Only one coupon of the same coupon
look-up number is normally permitted for each transac-
tion. ~ext, if there have been no previous coupons
of the same kind, a check is made in block 81 to
30 determine whether a minimum purchase threshold has
been reached. For each coupon deal, there is an
option to prevent printing of the coupon if a desig-
nated (store-wide) total purchase minimum is not
reached. If the answer obtained from block 81 is
35 negative, control is transferred to block 75, to exit

-22~ 3 ~

to ths general wait state, but without removing the
coupon request from the coupon queue. The next time
the coupon is processed t the total purchase amount is
again checked. If the coupon is never printed, be
cause the threshold purchase amount is not reached by
the end of the transaction, a log record is created
for the coupon
In block 82, a check is made on the total
count of coupon~ print~d for this transaction. If
the number exceeds a maximum set for this particular
checkout terminal, no further printing of coupons is
permitted. In addition, printing is permitted if a
print inhibit flag has been set, as determined in
block 83~ If printing is inhibited, or if the maxi-
15 mum coupon count is reached, or if the coupon hasbeen printed already, then the log-only flag is set,
as indicated in block 84, before advancing to the
step shown in block 85, in which the complete coupon
deal record, corresponding to the currently processed
20 coupon queue entry, is requested from the controller
10 .
Next, if the log-only flag is not set, as
determined in block 86, the coupon is formatted for
printing, as indicated in block 87, using the infor-
25 mation obtained from the coupon deal record. Then aprint reguest is issued, as indicated in block ~8, to
place in the print queue the printable data that is
to appear on the coupon. This data will include bar
code data that will result in the printing o a cou-
30 pon with pertinent information encoded in bar-code
form.
The next step, shown at block 89, is to
prepare a log record of the coupon creation, or in
the case of log-only situations, ~o create a log
35 record of a coupon request that did not result in

`~ 23~3~
-23-

printing of a coupon. The log-only flag is checked
again in blvck 90, after the logging step of block
89. If the log-only flag is set, control is trans-
ferred to block 75, to set a zero time-out and then
to return to the general wait state. If the log-only
flag is not set, i.e., a coupon is to be printed, a
six-second delay or time-ou} is selected, in block
92, before returning to the general wait state
through block 76. The time-out ensures that the
10 printer will not be totally occupied with the coupon
printing function, but will be free for at least the
next six seconds to print other material, such as
portions of the customer receiptO
An important aspect of coupon creation is
lS that one of the fields printed on the coupon in bar
code form is a trigger item sequence number, obtained
from the coupon index record flags. This number
identifies the triggering product or item, and can be
used to compile statistics relating the printed cou~
20 pon to the items that triggered its printing. The
other fields of data printed on the coupon in bar
code form include the coupon value, the expiration
date, the manufacturer's code, and the product family
code to which the coupon deal applies. Printed on
25 the coupon in human-readable form are the offer des-
cription and the advertising message, as well as some
of the information also printed in bar code form.
Coupon Validation and Redemption:
When a store-printed coupon is presented for
30 redemption, it must first be validated both with res-
pect both to the date of its presentation and the
product for which it is presented~ FIG. 5 shows the
functions that are performed during the validation
phase. First, at block 120, coupon data is input at
35 a terminal. The coupon may be one that was created

-24- ~..2,~

at the store in accordance with the procedures des-
cribed, or it may be a conventional coupon. this
determination is made in block 122. Conventional
coupons, which may be identified as a Number System 5
coupon in accordance with Uniform Product Code guide-
lines, are handled by first determining whether an
item with the same family group code and manufacturer
code has been sold in this transaction, as indicated
in block 124. If no match is found, an error message
is transmitted to the controller, as indicated in
block 126. If a match is found; the appropriate
discount is applied to the customer transaction, as
shown in block 128.
Of more significance to the invention is the
treatment of coupons that were printed in the store
as described above. Such coupons are identified as
num1~er System 4 coupons in block 122. The terminal
makes a request to the controller for a coupon deal
record, based on the coupon look-up number encoded on
the coupon. This is indicated in block 130 and
broken line~ 131. The controller then reads the
appropriate coupon deal record from its coupon
look-up ile, updates the counts in the record, as
indicated in block 132, ancl transmits it to the
terminal, as indicated by brsken line 133. If the
requested coupon deal record cloes not exist, an error
message is returned to the terminal and ~he coupon is
rejected as invalid.
~ext, the terminal validates the date of
30 presentation of the coupon, as indicated in block
134. This logic being expanded in FIG. 6. Then, the
terminal validates the c~upon with respect to the
item for which a discount is requested, as shown in
block 136 and FIG. 7, and applies the discount to the
35 customer's transaction, as shown in block 138.

- ` ~ 2~ E;3~
-25-

An important step in validation processing
is to check coupon deal record to determine if a
"continuation~ coupon is associated with this par-
ticular deal. A continuation coupon is one generated
as a result of the redemption of another coupon.
This process step is indicated in b}ock 139. If a
continuation coupon is to be created, a coupon re-
quest is entered in the coupon queue at this point.
The coupon is generated in its turn by the program
sequence shown in FIG. 4b. Finally, the terminal
creates a log record, in block 140, and transmits it
to the controller, as indicated by broken line 142.
The details of date validation are shown in
FIG. 6. The first question posed in this logic is
15 whether the coupon date is equal to the current day's
date, as shown in block 144. If the dates are equal,
an invalid date is indicated, as shown at 146.
Although not critical to the invention, this aspect
of the date validation is usually desirable, to en-
courage the customer to return to the store to redeemthe coupon.
The next test in the date validation
sequence is to determine whether the expiration date
is a Pixed one or is determined from the date of
25 coup~n printing. This is shown in block 14B. If a
fixed expiration date is used, the expiration date is
obtained from the coupon deal record, as indicated at
150. On the other hand, i the expiration date is
coupon-dependent, the expiration date is determined
from the coupon date and the validity period stored
in the coupon deal record, as indicated in block
152. Finally, in block 154 the current date is
subtracted from the expiration date and the validity
of the coupon is determined. Return to the calling
35 program sequence is made with an accept or reject

-26- ~3~3.~

flag to indicate the validity of the coupon date, as
indicated at 156 and 158
Item validity of a coupon is determined as
shown in FIG. 7 by first scanning a transaction
buffer in the terminal, as indicated at 160. The
transaction buffer contains a record of all purchased
items in the transaction. ~or each item purchased, a
comparison is made between the manufacturer's code,
as indicated at 162, and family group code, as
indicated at lS4 in the coupon deal record and the
corresponding fields in the transaction buffer. If a
match is found, the item validation results in accep-
tance of the coupon, as indicated at 166, and if no
match results the coupon is rejected, as indicated at
168.

File Maintenance:
Maintenance of the controller files used in
coupon creation and redemption is effected by means
of a sequential maintenance file, which may be
20 prepared at a site remote from the store, and then
processed at thP store controller to effert the
desired changes in the files. The maintenance
functions include adding, deleting or replacing
coupon deal records and coupon index records,
25 enabling and disabling coupon triggering by item,
enabling and disabling coupon printing by item,
copying the coupon by file, and retrieving the coupon
counts. Other functions include reorganizing the
coupon-look-up file, clearing the file before a
30 reload, and adding or replacing system configuration
data. The latter function includes enabling or
disabling coupon creation by coupon deal, enabling or
disabling printing by store or checkout lane,
enabling or disabling txiggering by store or checkout

-27~ 3~

lane, enabling or disabling coupon validation but
continuing to log redemptions and ml~redemptions,
updating a per-transaction coupon maxi~um, by check-
out lanet and updating a traneaction threshold.
The format of the ma~ntenance ~le is as
followa:
Command 1 ~one byte)
Data
...
Data
Data
End of-data record
Command 2
Data
...
...
End-o~-data record
--

End-of-document record

Four commands do nDt require accompanying
data. These are command6 to reorganiza the coupon
look-up file, create a report log, report all coupon
counts, and clear the coupon look-up file ~or a
reload.
The ~peci~ic ~ormat~ for effec~ing these
maintenance commands ls not ~ritical to the present
invention. Any desired progr~mming approach may be
employed to make chang~s to the controller files as
desired.
It will be appre~iated from th~ ~oregoing
that the present invention represents a significant
advance in the field of retail point-of-~ale sys-
tems. In particular, the invention provides a newapproach for distributing diecount COUpQn~; to retail

~L~3~;3~
--2~

customers, based on the purchase o~ products other
~han the ones to which the discount coupone apply.
Th~ invention al60 provides means ror validating
coupons printed in this n~analer, both Ior date
S validity and ~tem valid1ty, and automatically apply-
ing a discount to the ~usto~er sales transactlo~.
I~ w;1l al~o be appr~ciated that~ al~hough a
speci~ic embodiment of the invention has been
described ln detail for purposes og` illustration,
10 various modificationE; may be made without departing
from the ~pirit and scope o~ the invention. Accord-
ingly, the invention is not to be limited except a~
by the appended cla~ms.

Representative Drawing

Sorry, the representative drawing for patent document number 1234631 was not found.

Administrative Status

For a clearer understanding of the status of the application/patent presented on this page, the site Disclaimer , as well as the definitions for Patent , Administrative Status , Maintenance Fee  and Payment History  should be consulted.

Administrative Status

Title Date
Forecasted Issue Date 1988-03-29
(22) Filed 1985-09-09
(45) Issued 1988-03-29
Expired 2005-09-09

Abandonment History

There is no abandonment history.

Payment History

Fee Type Anniversary Year Due Date Amount Paid Paid Date
Application Fee $0.00 1985-09-09
Owners on Record

Note: Records showing the ownership history in alphabetical order.

Current Owners on Record
CATALINA MARKETING CORP.
Past Owners on Record
None
Past Owners that do not appear in the "Owners on Record" listing will appear in other documentation within the application.
Documents

To view selected files, please enter reCAPTCHA code :



To view images, click a link in the Document Description column. To download the documents, select one or more checkboxes in the first column and then click the "Download Selected in PDF format (Zip Archive)" or the "Download Selected as Single PDF" button.

List of published and non-published patent-specific documents on the CPD .

If you have any difficulty accessing content, you can call the Client Service Centre at 1-866-997-1936 or send them an e-mail at CIPO Client Service Centre.


Document
Description 
Date
(yyyy-mm-dd) 
Number of pages   Size of Image (KB) 
Drawings 1993-09-29 5 152
Claims 1993-09-29 11 323
Abstract 1993-09-29 1 22
Cover Page 1993-09-29 1 15
Description 1993-09-29 28 1,119