Code reading apparatus, sales registering apparatus, and sales registering method

According to one embodiment, a code reading apparatus includes a commodity-information reading unit, a commodity-information output unit, a benefit-information reading unit, and a benefit-information output unit. The commodity-information reading unit reads commodity information from a code symbol attached to a commodity. The commodity-information output unit outputs the commodity information read by the commodity-information reading unit. The benefit-information reading unit detects an image of benefit indication from an image imaged by an imaging unit and reads benefit information corresponding to the benefit indication from the detected image. The benefit-information output unit outputs the benefit information read by the benefit-information reading unit.

CROSS-REFERENCE TO RELATED APPLICATION

This application is based upon and claims the benefit of priority from the prior Japanese Patent Application No. 2010-086482, filed on Apr. 2, 2010; the entire contents of which are incorporated herein by reference.

FIELD

Embodiments described herein relate generally to a code reading apparatus, a sales registering apparatus, and a sales registering method.

BACKGROUND

In the past, in a retail store such as a supermarket,

when the closing time approaches, commodities are often sold at cut prices in order to reduce disposal losses of perishables. In this case, the store attaches price-cut labels that indicate price-cut amounts, discount rates, and the like to commodities to clearly inform customers that the commodities are price-cut commodities. If a price-cut label is attached to a commodity that a customer is about to purchase, an operator of a POS (Point of Sales) terminal reads a barcode of the commodity with a scanner and performs processing concerning a price cut from a keyboard, a touch panel, or the like. Therefore, it is likely that the operator sells a price-cut commodity at a normal price without noticing a price-cut label.

To cope with such a problem, JP-A-2008-33640 discloses a technique for simultaneously imaging a barcode and a price-cut label with a camera and outputting a commodity code and price-cut information read from an imaged image to a POS terminal to automatically perform price-cut processing in the POS terminal.

In the technique disclosed in JP-A-2008-33640, since the price-cut label and the barcode are imaged at a time, it is necessary to attach the price-cut label near the barcode. However, since the price-cut label is often manually attached by a store clerk, in some cases, the positions of the barcode and the price-cut label are apart from each other. In such a case, the camera cannot image the barcode and the price-cut label at a time. Therefore, the price-cut processing cannot be automatically performed. An operator performs the price-cut processing by manually inputting the commodity code and the price-cut information from a keyboard or the like.

The present invention has been devised in view of the above and provides a code reading apparatus, a sales registering apparatus, and a sales registering method that can automatically perform benefit granting processing such as price-cut processing or point granting processing without requiring processing operation by an operator.

DETAILED DESCRIPTION

In general, according to one embodiment, a code reading apparatus includes a commodity-information reading unit, a commodity-information output unit, a benefit-information reading unit, and a benefit-information output unit. The commodity-information reading unit reads commodity information from a code symbol attached to a commodity. The commodity-information output unit outputs the commodity information read by the commodity-information reading unit.

The benefit-information reading unit detects an image of benefit indication from an image imaged by an imaging unit and reads benefit information corresponding to the benefit indication from the detected image. The benefit-information output unit outputs the benefit information read by the benefit-information reading unit.

In general, according to another embodiment, a sales registering apparatus includes a receiving unit and a sales registering unit. The receiving unit receives commodity information read from a code symbol attached to a commodity and benefit information read from an image of benefit indication imaged by an imaging unit. The sales registering unit applies a benefit indicated by the benefit information to the commodity information received by the receiving unit and performs sales registration for the commodity.

In general, according to still another embodiment, a sales registering method is a sales registering method performed in a sales registering apparatus, the method including: receiving commodity information read from a code symbol attached to a commodity and benefit information read from an image of benefit indication imaged by an imaging unit; and applying a benefit indicated by the benefit information to the received commodity information and performing sales registration for the commodity.

First Embodiment

FIG. 1is a schematic external perspective view of the configuration of a checkout lane system1according to a first embodiment. As shown inFIG. 1, the checkout lane system1includes a sucker table4for placing a shopping basket including commodities and a code reading apparatus2vertically provided substantially in the center of the sucker table4. The checkout lane system1also includes a POS terminal3serving as a sales registering apparatus connected to the code reading apparatus2by a not-shown transmission line to be capable of communicating with each other.

The code reading apparatus2is an apparatus for reading a barcode attached to a commodity and outputting commodity information included in the barcode to the POS terminal3. As shown inFIG. 1, the code reading apparatus2mainly includes a reading window21, a keyboard22, a display23, a display LED24, and a buzzer25. The keyboard22receives an input by various keys if registration of a commodity unable to be registered by a barcode is performed. The display23displays a name, a price, and the like of a registered commodity to a customer. The display LED24is turned on if a barcode attached to a commodity is read and informs an operator that the barcode is read. The buzzer25sounds if a barcode or the like attached to a commodity is read and informs the operator that the barcode of the like is read. A CCD (Charge Coupled Device) camera20(seeFIG. 2) is incorporated on the inside of the code reading apparatus2including the reading window21.

The POS terminal3performs sales registration for a commodity to be purchased by a customer. As shown inFIG. 1, the POS terminal3includes a keyboard31, a store clerk display32, a customer display33, a printer34configured to perform printing of a receipt and the like, and a drawer35for storing cash and the like. A commodity registration screen for displaying a commodity name, a price, and the like to be subjected to the sales registration is displayed on the store clerk display32. A cash total key and the like for declaring closing processing for one transaction are disposed on the keyboard31.

The configuration of the code reading apparatus2is explained more in detail.FIG. 2is a block diagram of the configuration of the code reading apparatus2. The code reading apparatus2mainly includes a CPU50, a ROM42, a RAM43, a communication I/F44, an output port46, a keyboard controller47, a display controller48, a camera controller49, and a memory45. These devices are connected by a bus line41such as an address bus or a data bus.

The CPU50functions as a control unit configured to control the overall operation of the code reading apparatus2. The ROM42has stored therein various computer programs and the like executed by the CPU50. The RAM43functions as a work area when the various computer programs stored in the ROM42are expanded by the CPU50. The RAM43stores various data such as image data imaged by the camera20.

The communication I/F44controls data communication with the POS terminal3(seeFIG. 1) connected to the code reading apparatus2by a bus. The output port46outputs a driving signal to the buzzer25and the display LED24. The keyboard controller47captures a key signal from the keyboard22. The display controller48controls data display on the display23. The camera controller49controls an imaging operation of the camera20.

The camera20images, for example, a code symbol such as a barcode or a two-dimensional code attached to a commodity and a benefit indication label that indicates a benefit such as a price cut or point addition.

A relation between a commodity processed by the code reading apparatus2according to this embodiment and an imaging area of the camera20is explained below.FIG. 3is a diagram of an example of a relation between a commodity60and an imaging area of the camera20. An area surrounded by an alternate long and two short dashes line in the figure is an imaging area70athat is an area that the camera20can image in one frame. A price-cut label L1, which is an example of a benefit indication label, is attached to the commodity60shown inFIG. 3in addition to a barcode label61.

A commodity name “pork rib slice”, a commodity price “US$ 2”, a barcode62, and the like are indicated on the barcode label61. Information such as a commodity code is incorporated in the barcode62as commodity information necessary for subjecting sales data of the commodity60to registration processing in the POS terminal3. A commodity code “0201234567890” incorporated in the barcode62is indicated as a number under the barcode62. Character information “US$ 0.5 off from list price” that indicates a price-cut amount concerning the commodity60is indicated on the price-cut label L1.

The benefit indication label only has to be a label that is attached to the commodity60and indicates an image concerning a benefit granted when the commodity60is purchased (an image of benefit indication). Other examples of the benefit indication label include a discount label L2that indicates a discount rate of the commodity60as shown inFIG. 4and a point addition label L3that indicates the number of points granted to a customer, who purchases the commodity60, in addition to a normal number of granted points as shown inFIG. 5.

The nonvolatile memory45stores a label characteristic table T that associates characteristics of benefit indication labels and contents of benefits indicated by the benefit indication labels.

FIG. 6is a diagram for explaining the label characteristic table T. As shown inFIG. 6, the label characteristic table T stores label characteristic data, which indicates characteristics of characters and symbols included in benefit indication labels, and benefit information, which is given to commodities by the benefit indication labels, in association with each other.

More specifically, the label characteristic data refers to information extracted from the benefit indication label by character recognition processing by an OCR or the like. Concerning the price-cut label L1describing “US$ 0.5 off from list price” as shown inFIG. 3, information “0.5, US$, off” is extracted by the character recognition processing as indicated by label characteristic data of No.1in the label characteristic table T shown inFIG. 6.

Similarly, concerning the labels L2and L3shown inFIGS. 4 and 5, information concerning a discount and point granting “10, %, discount” and “10, point” is extracted as indicated by label characteristic data of No.2and No.3shown inFIG. 6.

The benefit information refers to information obtained by converting information concerning a benefit such as price-cut information and point granting information read from the benefit indication label into alphanumerical values such that the information can be used in sales registration processing of the POS terminal3. Specifically, as shown inFIG. 6, benefit information “−US$0.5” meaning a price cut of US$0.5 is stored in association with label characteristic data “0.5, US$, off”. Benefit information “−10%” meaning a discount of 10% is stored in association with label characteristic data “10, %, discount”. Benefit information “+10P” meaning point addition of 10 points is stored in association with label characteristic data “10, point”.

Characteristic functions of the code reading apparatus2according to this embodiment are explained below. The CPU50operates according to the computer programs stored in the ROM42and expanded in the RAM43to function as, as shown inFIG. 2, an image-data capturing unit51, a barcode reading unit52, a barcode-data output unit53, a label reading unit54, a benefit-code output unit55, and a notifying unit56.

The image-data capturing unit51outputs an imaging ON signal to the camera controller49and causes the camera20to start an imaging operation. The image-data capturing unit51captures image data in an imaging area70imaged by the camera20and stores the image data in an image work area of the RAM43. If the image-data capturing unit51receives an instruction of the label reading unit54, the image-data capturing unit51captures image data in the imaging area70imaged by the camera20and stores the image data in the image work area of the RAM43.

Image data D (Da, Db, and Dc) captured by the image-data capturing unit51are explained with reference toFIGS. 3 and 7to10.

As shown inFIG. 3, if the barcode62and the price-cut label L1are attached close to each other on the commodity60, the barcode62and the price-cut label L1fit in the imaging area70a. In this case, the camera20can image the barcode62and the price-cut label L1in one frame. The image-data capturing unit51stores the image data Da (seeFIG. 7) corresponding to the imaging area70ain the image work area of the RAM43.

On the other hand, as shown inFIG. 8, if the barcode62and the price-cut label L1are attached apart from each other on the commodity60, the barcode62and the price-cut label L1do not fit in the same imaging area70. In this case, the operator changes the position of the commodity60held over the reading window21and images the commodity60plural times in plural frames of an imaging area70bincluding the barcode62and an imaging area70cincluding the price-cut label L1. The imaging-data capturing unit51captures the image data Db (seeFIG. 9) and Dc (seeFIG. 10) respectively corresponding to the imaging areas70band70cand stores the image data Db and Dc in the image work area of the RAM43.

The barcode reading unit52detects an image of the barcode62from the image data D (Da to Dc) stored in the image work area of the RAM43by the image-data capturing unit51and performs barcode reading processing for reading commodity information of the commodity60from the detected barcode62.

More specifically, the barcode-reading unit52binarizes the image data D (Da to Dc, seeFIGS. 7,9, and10) of one frame stored in the image work area of the RAM43and detects whether a data area concerning the barcode62is present in the binarized data. If the barcode reading unit52detects the data area concerning the barcode62in the captured image data D, the barcode reading unit52decodes the barcode62and reads barcode data C1of J1to J13shown inFIG. 11as commodity information of the commodity60. The barcode data C1includes a manufacturer code, a commodity code as commodity information, and a check digit. The barcode reading unit52stores the read barcode data C1in a barcode work area of the RAM43.

The barcode-data output unit53outputs the barcode data C1read by the barcode reading unit52to the POS terminal3via the communication I/F44.

The label reading unit54detects a benefit indication label from the image data stored in the image work area of the RAM43by the image-data capturing unit51and performs label reading processing for reading benefit information (seeFIG. 6) indicated by the benefit indication label.

More specifically, the label reading unit54applies character recognition processing by an OCR (Optical Character Reader) or the like to the image data D (Da to Dc, seeFIGS. 7,9, and10) of one frame stored in the image work area of the RAM43. The label reading unit54collates characteristics of characters, a picture, a symbol, or the like included in the benefit indication label and label characteristic data (seeFIG. 6) of the label characteristic table T. If the label reading unit54detects label characteristic data having a high degree of coincidence, the label reading unit54determines that a benefit indication label is detected in the image data D. The label reading unit54reads benefit information corresponding to the detected label characteristic data from the label characteristic table T (seeFIG. 6), generates a benefit code C2(seeFIG. 12), and stores the benefit code C2in a benefit code work area of the RAM43.

FIG. 12is a diagram for explaining the benefit code C2. As shown inFIG. 12, the benefit code C2includes data P1to P13that indicate values of a benefit to be provided such as a price-cut amount, a discount rate, or the number of granted point. As an example, as shown inFIG. 3, if the price-cut label L1for US$0.5 off is attached to the commodity60, the label reading unit54reads “−US$0.5” as benefit information and generates the benefit code C2as “−US$0.5”.

The benefit-code output unit55outputs the benefit code C2generated by the label reading unit54to the POS terminal3via the communication I/F44.

If the benefit-code output unit55outputs the barcode data C1to the POS terminal3, the notifying unit56drives the buzzer25, sounds a first buzzer (e.g., “beep”) that indicates that the barcode label61is read, and turns on the display LED24.

If the benefit-code output unit55outputs the benefit code C2to the POS terminal3, the notifying unit56drives the buzzer25and sounds a second buzzer (e.g., “beep, beep”) that indicates that the benefit indication label is read.

The configuration and the functions of the POS terminal3according to this embodiment is explained more in detail with reference toFIG. 13.

FIG. 13is a block diagram of a hardware configuration of the POS terminal3. As shown inFIG. 13, the POS terminal3mainly includes a CPU60, a ROM66, a RAM67, a HDD68, a communication I/F69, a keyboard controller36, display controllers37and38, and a printer controller39. The devices are connected by a bus line30such as an address bus or a data bus.

The CPU60functions as a control unit configured to control the entire operation of the POS terminal3. The ROM66has stored therein a computer program according to this embodiment and other computer programs. The RAM67functions as a work area when the various computer programs stored in the ROM66are expanded by the CPU60. The HDD68stores various computer programs, sales data that indicates sales records of commodities, and various screen display data to be displayed on the store clerk display32and the customer display33.

In the above explanation, the computer program according to this embodiment is stored in the ROM66. However, a storage location of the computer program is not limited to this. The computer program may be stored in the HDD68or other storage devices.

The communication I/F69controls data communication with the code reading apparatus2(seeFIG. 1) connected to the POS terminal3via a bus. The keyboard controller36captures a key signal from the keyboard31. The display controllers37and38respectively control data display on the store clerk display32and the customer display33. The printer controller39controls the printer34to print a receipt and the like.

Characteristic functions of the POS terminal3according to this embodiment are explained below. The CPU60operates according to the computer programs stored in the ROM66and expanded in the RAM67to function as a code receiving unit61, a reception-code recording unit62, and a sales registering unit63as shown inFIG. 13.

The code receiving unit61receives the barcode data C1or the benefit code C2from the code reading apparatus2via the communication I/F69.

The reception-code recording unit62records the barcode data C1or the benefit code C2received by the code receiving unit61in the RAM67as a reception record R (seeFIG. 14) in association with reception time of the barcode data C1or the benefit code C2.

The reception record R is explained below with reference toFIG. 14. As an example, if the code receiving unit61receives “0201234567890”, which is the barcode data C1of a commodity, at 17:00:00, the reception-code recording unit62records a reception code “02012345678890” in the reception record R in association with reception time “17:00:00”. If the code receiving unit61receives “−US$0.5”, which is the benefit code C2of the commodity, the reception-code recording unit62records a reception code “−US$0.5” in the reception record R in association with reception time “17:00:01”.

The sales registering unit63performs sales registration for the commodity using the barcode data C1or the benefit code C2recorded in the reception record R. The sales registering unit63reads a commodity name, a price, and the like of the commodity corresponding to the barcode data C1from a commodity master (not shown) stored in the HDD68of the POS terminal3or a host terminal (not shown) in a store and displays the commodity name, the price, and the like on the commodity registration screen (not shown) of the store clerk display32. The sales registering unit63displays benefit information such as a price cut, point granting, or the like indicated by the benefit code C2on the commodity registration screen.

The sales registering unit63determines, on the basis of the reception time of the benefit code C2and the reception time of the barcode data C1, the barcode data C1to which a benefit indicated by the benefit code C2is applied and applies the benefit to the barcode data C1.

Specifically, the sales registering unit63determines that the barcode data C1read at a minimum time difference from the reception time of the benefit code C2by the code reading apparatus2is the barcode data C1to which the benefit is applied and applies the benefit indicated by the benefit code C2to the barcode data C1.

Processing performed by the sales registering unit63is more specifically explained below with reference to the reception record R shown inFIG. 14. In an example shown inFIG. 14, a time difference between the reception time 17:00:01 of the benefit code “−US$0.5” and the reception time 17:00:00 of the barcode data “0201234567890” received immediately before the benefit code “−US$0.5” is one second. On the other hand, a time difference between the reception time of benefit code “−US$0.5” and reception time 17:00:05 of barcode data “0101234567890” read immediately after the benefit code “−US$0.5” is four seconds. Therefore, the sales registering unit63applies the benefit code “−US$0.5” to the barcode data “0201234567890” having the smaller time difference. The sales registering unit63displays on the commodity registration screen that a price cut of US$0.5 is applied to a commodity having the barcode data “0201234567890”.

If the cash total key of the keyboard31is pressed, the sales registering unit63performs closing processing for one transaction, transmits sales data to a store server or the like, and clears the reception record R of the RAM67.

Code output processing performed by the code reading apparatus2is explained below with reference toFIG. 15.FIG. 15is a flowchart for explaining a procedure of the code output processing performed by the code reading apparatus2.

When a job start is instructed by a command from the POS terminal3, the CPU50of the code reading apparatus2starts the code output processing. The image-data capturing unit51outputs an imaging ON signal to the camera controller49and starts an imaging operation by the camera20(Act1). The image-data capturing unit51captures the image data D (Da, Db, and Dc) imaged by the camera20into the image work area of the RAM43(Act2). The barcode reading unit52starts the barcode reading processing (Act3).

The barcode reading unit52determines whether the barcode62is detected in the barcode reading processing in Act3(Act4). If the barcode62is not detected (No in Act4), the CPU50shifts to Act7.

If the barcode62is detected (Yes in Act4), the barcode-data output unit53outputs the barcode data C1(seeFIG. 11) stored in the barcode work area of the RAM43to the POS terminal3(Act5). The notifying unit56drives the buzzer25, sounds a first buzzer (e.g., “beep”) that indicates that the barcode label61is read, and turns on the display LED24only once (e.g., for one second once) (Act6).

Subsequently, the label reading unit54starts label reading processing for the image data captured into the image work area of the RAM43in Act2(Act7). The label reading unit54determines whether a benefit indication label is detected in the label reading processing in Act7(Act8). If a benefit indication label is not detected (No in Act8), the CPU50shifts to Act11.

On the other hand, if a benefit indication label is detected (Yes in Act8), the benefit-code output unit55outputs the benefit code C2(seeFIG. 12) stored in the benefit code work area of the RAM43to the POS terminal3(Act9). The notifying unit56drives the buzzer25and sounds a second buzzer (e.g., “beep, beep”) that indicates that the benefit indication label is read (Act10).

Thereafter, the CPU50determines whether a job end is instructed by a command from the POS terminal3(Act11). If the job end is not instructed (No in Act11), the CPU50returns to Act2and repeats Acts2to13until reading processing for all commodities ends. If the job end is instructed (Yes in Act11), the CPU50outputs an imaging OFF signal to the camera controller49(Act12) and ends the imaging operation by the camera20.

Sales registration processing for a commodity performed by the POS terminal3is explained below with reference to FIG.16.FIG. 16is a flowchart for explaining a procedure of the sales registration processing performed by the POS terminal3.

When the sales registration processing is started, the CPU60of the POS terminal3determines whether the code receiving unit61receives the barcode data C1or the benefit code C2from the code reading apparatus2. If the code receiving unit61does not receive the barcode data C1or the benefit code C2(No in Act21), the CPU60shifts to Act24. If the code receiving unit61receives the barcode data C1or the benefit code C2(Yes in Act21), the CPU60shifts to Act22. The reception-code recording unit62records the barcode data C1or the benefit code C2received by the code receiving unit61in the RAM67as the reception record R (seeFIG. 14) in association with reception time of the barcode data C1or the benefit code C2(Act22).

The sales registering unit63reads a commodity name and a price of a commodity corresponding to the barcode data C1from the commodity master and displays the commodity name and the price on the commodity registration screen of the store clerk display32(Act23). The sales registering unit63displays benefit information such as a price cut or point granting indicated by the benefit code C2on the commodity registration screen (Act23).

The sales registering unit63performs, with the reception of the benefit code C2as a trigger, determination of the barcode data C1to which the benefit code C2is applied. Specifically, the sales registering unit63receives the benefit code C2and determines whether the benefit code C2is recorded in the reception record R (seeFIG. 14) of the RAM67(Act24). If the benefit code C2is not received (No in Act24), the CPU60shifts to Act26.

On the other hand, if the benefit code C2is received and recorded in the reception record R (Yes in Act24), the CPU60shifts to Act25. The sales registering unit63applies a benefit indicated by the benefit code C2to the barcode data C1read at a minimum time difference from the reception time of the benefit code C2by the code reading apparatus2(Act25).

Subsequently, the sales registering unit63determines whether the cash total key of the keyboard31is pressed (Act26). If the cash total key is not pressed (No in Act26), the CPU60returns to Act21and continues the processing in Acts21to27. If the cash total key is pressed (Yes in Act26), the CPU60performs closing processing for one transaction and transmits sales data to the store server or the like (Act27). The sales registering unit63clears the reception record R of the RAM67(Act28) and ends the sales registration processing concerning the one transaction.

As explained above, the code reading apparatus2according to the first embodiment reads the barcode data C1from the image data D, reads benefit information, generates the benefit code C2, and outputs the codes to the POS terminal3. Consequently, the POS terminal3can perform benefit granting processing for the commodity according to the received barcode data C1and benefit code C2. Therefore, there is an effect that it is possible to automatically perform the benefit granting processing such as price-cut processing or point granting processing without requiring processing operation by the operator.

In the code reading apparatus2, in general, a time difference required for reading plural labels attached to the same commodity60is short compared with a time difference required for reading labels attached to other commodities. On the other hand, as explained above, the POS terminal3according to this embodiment determines, on the basis of a time difference of reception time, the barcode data C1to which a benefit is applied. Consequently, even if attached positions of the barcode62and a benefit indication label are apart from each other, it is possible to automatically perform the benefit granting processing with the barcode data C1and the benefit code C2appropriately associated.

As explained above, the notifying unit56notifies the operator by changing a tone and the number of times of a buzzer when the barcode label61is read and when the benefit indication label is read. Therefore, the operator can easily discriminate, according to the difference in the buzzer, whether the benefit indication label is read. When benefit granting such as price-cut processing or point addition is automatically performed by the POS terminal3, the operator can easily perform check work.

In the above explanation, after the barcode reading unit52reads the commodity information (the barcode data C1) from the barcode62, the label reading unit54reads the benefit information from the benefit indication label. However, the order of reading information is not limited to this. As another example, it is also possible that, after the label reading unit54reads the benefit information from the benefit indication label, the barcode reading unit52reads the commodity information from the barcode62. Consequently, when the operator images the barcode62and the price-cut label L1, the operator may image whichever of the barcode62and the price-cut label L1earlier. Therefore, the operator can more smoothly perform reading operation.

In the example explained above, one benefit indication label is attached to the commodity60. However, plural benefit indication labels may be attached to the commodity60. Specifically, if the POS terminal3receives plural benefit codes C2within a predetermined time difference (e.g., 0.5 seconds), the POS terminal3may handle the benefit codes C2as a set of benefit codes and apply benefits indicated by the benefit codes C2to the barcode data C1having a smaller time difference of the barcode data C1before and after the benefit code.

In the above explanation, the barcode reading unit52reads the barcode62attached to the commodity60. However, a code read by the barcode reading unit52is not limited to this. The barcode reading unit52may read a two-dimensional code such as a code symbol. In the above explanation, the barcode62is attached to the commodity60by the barcode label61. However, the barcode62may be directly printed on the commodity60.

In the above explanation, the label reading unit54reads the benefit information from the benefit indication label. However, information such as a price cut and a discount is not limited to a form of printing on a label. As another example, the label reading unit54may read benefit information directly described or printed on the commodity60or may read benefit information displayed on a coupon or the like. The label reading unit54is not limited to processing for identifying character information. The label reading unit54may identify a color, size, shape, or the like of a label, a figure, or the like and read benefit information associated with the characters.

In the above explanation, the barcode data C1is read from the image data D imaged by the camera20. However, a method of reading a barcode is not limited to this. As another example, the barcode62may be scanned by an optical scanner such as a hand scanner to read the barcode data C1.

The sales registering unit63determines that the benefit code C2is applied to the barcode data C1read at a minimum time difference from the reception time of the benefit code C2. However, a method of determining an application target is not limited to this. As another example, it is also possible that store clerks are made fully informed in advance to read a barcode earlier and the benefit code C2is applied to the barcode data C1read immediately before the benefit code C2by the sales registering unit63.

Alternatively, the sales registering unit63may apply the benefit code C2to the barcode data C1read by the code reading apparatus2immediately after the benefit code C2. In this case, it is advisable that the code reading apparatus2is configured to read a benefit indication label earlier. Specifically, it is advisable that, inFIG. 15, the code reading apparatus2is configured to perform the label reading processing in Act7prior to the barcode reading processing in Act3.

If the reception time of the benefit code C2and reception time of the barcode data C1before and after the benefit code C2exceed predetermined time set in advance, the sales registering unit63may perform processing for invalidating the benefit code C2. Consequently, if the benefit code C2is received at unnatural timing, it is possible to automatically exclude the benefit code C2.

Second Embodiment

In the past, in a store such as a supermarket, in some cases, as a complimentary benefit for a client, a coupon L4for enabling price cuts for all commodities purchased in one transaction is distributed. As shown inFIG. 17, the coupon L4shows benefit indication that, when the coupon L4is presented during checkout, “10% discount for all commodities” is applied to all commodities purchased in one checkout. In this embodiment, if such a coupon L4is read in the code reading apparatus2, the POS terminal3collectively applies the benefit to all commodities purchased in one transaction.

In the code reading apparatus2, when the coupon L4is scanned by the camera20, the label reading unit54reads the benefit indication from the coupon L4and generates the benefit code C2as “ALL −10%”. A code “ALL” included in the benefit code C2is a code that indicates that a 10% discount is applied to all commodities. The benefit-code output unit55outputs the generated benefit code C2to the POS terminal3. In this way, in this embodiment, the benefit code C2generated and output by the code reading apparatus2includes a code that indicates that a benefit is applied to plural commodities.

In the POS terminal3, if the code that indicates that a benefit is applied to plural commodities is included in the benefit code C2, the sales registering unit63collectively applies the benefit indicated by the benefit code C2to all the target commodities. For example, if the benefit code C2is “ALL −10%” and the code “ALL” that indicates that the 10% discount is applied to all commodities is included in the benefit code C2, the sales registering unit63applies 10% discount to all the commodities.

Sales registration processing for a commodity performed by the POS terminal3in this embodiment is explained below with reference toFIG. 18.FIG. 18is a flowchart for explaining a procedure of the sales registration processing performed by the POS terminal3. The procedure explained with reference toFIG. 16is not explained below.

The sales registering unit63discriminates whether “ALL” is included in the benefit code (Act30). If “ALL” is not included in the benefit code (No in Act30), the CPU60shifts to Act25. If “ALL” is included in the benefit code (Yes in Act30), the CPU60applies a benefit (e.g., −10% indicated after ALL) indicated by the benefit code C2to all commodities (Act31).

As explained above, according to the second embodiment, there is an effect that a store clerk can easily apply a benefit to plural commodities by holding a coupon or the like over the code reading apparatus2.

Third Embodiment

Examples of main commodities to be subjected to a price cut include perishables processed and sold in a store. For the commodities processed and sold in the store, in general, an in-store code starting with a specific numerical value (e.g., C2) is used as the barcode data C1. Specifically, as shown inFIG. 3, if a barcode is “0201234567890” that starts with “02”, it can be said that the barcode is an in-store code. The POS terminal3according to this embodiment applies the benefit code C2to only the barcode data C1that is the in-store code.

In the POS terminal3, the sales registering unit63applies the benefit code C2to only the barcode data C1, i.e., the in-store code, of a target commodity to which a benefit indicated by benefit indication can be applied.

As an example, referring to the reception record R shown inFIG. 14, the barcode data “0201234567890” read immediately before the benefit code “−U$0.5” is an in-store code because the barcode data starts with “02”. The barcode data “0101234567890” read immediately after the benefit code “−US$0.5” is not an in-store code because the barcode data does not start with “02”. In this way, if at least one of the barcode data C1read immediately before and after the benefit code C2is not an in-store code, the sales registering unit63applies a benefit indicated by the benefit code C2to the barcode data C1that is the in-store code.

If both the barcode data C1read immediately before and after the benefit code C2are not in-store codes, the sales registering unit63determines that both commodities having the barcode data C1are not benefit target commodities and does not apply the benefit indicated by the benefit code C2to both the barcode data C1.

If both the barcode data C1read immediately before and after the benefit code C2are in-store codes, as in the first embodiment, the sales registering unit63selects, on the basis of the time difference of reading time, the barcode data C1to which the benefit is applied.

Sale registration processing performed by the POS terminal3is explained with reference toFIG. 19.FIG. 19is a flowchart for explaining a procedure of the sales registration processing performed by the POS terminal3. The procedure explained with reference toFIG. 16is not explained below.

In Act32, the sales registering unit63applies a benefit indicated by the benefit code C2to the in-store code (the barcode data C1) read at a minimum time difference from the reception time of the benefit code C2.

As explained above, the POS terminal3according to the third embodiment applies the benefit indicated by the benefit code C2to only an in-store code. Therefore, it is possible to prevent the benefit from being applied to a commodity other than a benefit application target by mistake.

Computer programs executed in the POS terminal3and the code reading apparatus2according to this embodiment are respectively provided while being previously incorporated in the ROM66, the ROM42, and the like. The computer programs executed in the POS terminal3and the code reading apparatus2according to this embodiment may be provided while being recorded on a computer-readable recording medium such as a CD-ROM, a flexible disk (FD), a CD-R, or a DVD (Digital versatile Disk) as files of an installable format or an executable format.

Further, the computer programs executed in the POS terminal3and the code reading apparatus2according to this embodiment may be stored on a computer connected to a network such as the Internet and provided while being downloaded through the network.

As explained above, with the code reading apparatuses according to the first to third embodiments, benefit information corresponding to benefit indication is read from an image of the benefit indication and output together with commodity information. Therefore, the sales registering apparatus can perform the benefit granting processing for a commodity according to the received commodity information and benefit information. Therefore, it is possible to automatically perform the benefit granting processing without requiring additional operation by the operator.

With the sales registering apparatuses and the sales registering methods according to the first to third embodiments, it is possible to perform the benefit granting processing for a commodity according to the commodity information and the benefit information received from the code reading apparatus. Therefore, it is possible to automatically perform the benefit granting processing without requiring additional operation by the operator.

The present invention is not limited to the embodiments per se. In an implementation stage, the elements can be modified and embodied without departing from the spirit of the present invention. Various inventions can be formed by appropriate combinations of the plural elements disclosed in the embodiments. For example, several elements may be deleted from all the elements disclosed in the embodiments. Further, the elements disclosed in the different embodiments may be combined.