以下、本発明の一実施の形態に係るクーポン発券システムの詳細を図面の記載に基づいて説明する。本実施の形態に係るクーポン発券システムは、クーポン発券機能を有しないPOSシステムに、クーポン発券機能を追加するシステムであり、特に、スーパーマーケットなどの販売店に既に構築されているクーポン発券機能を有しないPOSシステムに、クーポン発券機能を追加する際に好適なシステムである。
図1は、本発明の一実施の形態に係るクーポン発券システムが適用されるPOS(Point of Sales)システムのネットワークの構成図である。
本実施の形態に係るクーポン発券システムが適用されるPOSシステムは、商品の識別情報としての商品コード(PLU(Price Look Up)コード)を含むバーコードを読み取るスキャナを備える複数台のPOS端末としてのPOSターミナル1a〜1cと、これらのPOSターミナル1a〜1cを集中管理する管理装置としてのストアコントローラ(以下、「コントローラ」という)2とが、LAN3を介して接続されて構成されている。
各POSターミナル1は、商品コードを読み取った商品の精算が完了した際に当該取引に関するレシート4を発行するプリンタ5を備えている。プリンタ5は、レシート用紙に印字を行なうことでレシート4を発行する。所定の場合にレシート4には、クーポン券(以下、「クーポン」という)が含まれる。プリンタ5は、このようなクーポンを発券する際にも用いられる。
また、各POSターミナル1は、予め会員登録した顧客に対して配布される会員カードを読み取るためのカードリーダ(不図示)を備えている。会員カードは、当該カードを所有する顧客を識別するための顧客識別情報等が記録されるものであり、例えば、磁気カード又はICカードを利用して作成されている。
さらに、各POSターミナル1は、上述のクーポンに含まれるバーコードをスキャナで読み取ると、購入商品に値引き対象の商品が含まれる場合にクーポンに表示される金額を商品代金の合計金額から値引く機能を有する。このため、顧客は、先に発券されたクーポンを提示することで、商品値引きなどの特典を受けることが可能となる。
コントローラ2は、LAN3を介して各POSターミナル1を接続する一方、公衆回線又は専用回線を介してホストコンピュータ(以下、「ホスト」という)を接続している。コントローラ2は、商品コードと、商品名及び価格とを対応させたPLU(Price look up)ファイルを備えている。商品コードを含む問合せメッセージをPOSターミナル1から受け取ると、PLUファイルから当該商品コードに対応する商品名及び価格を検索し、問合せメッセージを送ってきたPOSターミナル1にこれらを応答する。
このように構成されるPOSシステムのネットワーク上に、クーポン発券制御装置としてのクーポンサーバ6が接続されて本クーポン発券システムが構成される。クーポンサーバ6は、後述するように、POSターミナル1からコントローラ2に送信される問合せメッセージの内容を解析し、その解析結果に応じてPOSターミナル1にクーポンを発券させる機能を有する。
図2は、POSターミナル1の要部構成を示すブロック図である。POSターミナル1は、装置全体の制御を行うCPU(Central Processing Unit)101を備えている。このCPU101に、CPU101が実行するプログラム等を格納するROM(Read Only Memory)102、CPU101が処理するデータやCPU101によって処理されたデータ等の可変データを格納するRAM(Random Access Memory)103、現在の日付及び時刻を計時する時計部104、LAN3を介して行なうデータ通信を制御するLANコントローラ105、POSターミナル1の操作者(キャッシャ)用に設けられた正面表示器106の画面表示を制御する表示コントローラ107及び顧客用に設けられた客面表示器108の画面表示を制御する表示コントローラ109がバス110を介して接続されている。
また、CPU101に、キーボードインタフェース111、スキャナインタフェース112、プリンタインタフェース113、カードリーダインタフェース114、ドロワインタフェース115等の各入出力機器用インタフェースがバス110を介して接続されている。キーボードインタフェース111には小計キーや預/現計キー等が配設されたキーボード116が接続され、スキャナインタフェース112には各商品に付されるバーコード等を光学的に読み取るスキャナ117が接続されている。プリンタインタフェース113には上述のプリンタ5が接続され、カードリーダインタフェース114には会員カード内の顧客識別情報(後述する顧客ID番号)を読み取るカードリーダ118が接続され、ドロワインタフェース115には現金等を収容するためのドロワ119が接続されている。
図3は、コントローラ2の要部構成を示すブロック図である。図3に示すように、コントローラ2も、装置全体の制御を行うCPU201を備えている。このCPU201に、CPU201が実行するプログラム等を格納するROM202、CPU201が処理するデータ等の可変データを格納するRAM203、現在の日付及び時刻を計時する時計部204、LAN3を介して行なうデータ通信を制御するLANコントローラ205、FDD(Floppy(登録商標) Disk
Drive)装置206の駆動を制御するFDDコントローラ207、HDD(Hard Disk Drive)装置208の駆動を制御するHDDコントローラ209及びホストとのデータ通信を司るMODEM(modulator-demodulator:変復調装置)210等がバス211を介して接続されている。なお、上述の商品コードと、商品名及び価格とを対応させたPLUファイルは、HDD装置208に格納されている。
上述のように、本クーポン発券システムは、従来のクーポン発券システムを有していないPOSシステムのクーポン発券機能を追加するものであり、POSターミナル1及びコントローラ2自体の構成及び機能としては、基本的に従来のものと同様であるため、その詳細な説明は省略することとする。
図4は、クーポンサーバ6の要部構成を示すブロック図である。図4に示すように、クーポンサーバ6は、MODEM210を除き、コントローラ2と同様の構成を有している。すなわち、クーポンサーバ6は、装置全体の制御を行うCPU601を備えている。このCPU601に、CPU601が実行するプログラム等を格納するROM602、CPU601が処理するデータ等の可変データを格納するRAM603、現在の日付及び時刻を計時する時計部604、LAN3を介して行なうデータ通信を制御するLANコントローラ605、FDD装置606の駆動を制御するFDDコントローラ607及びHDD装置608の駆動を制御するHDDコントローラ609等がバス610を介して接続されている。
このような構成を有するクーポンサーバ6の主な機能は、主としてCPU601がROM602及びRAM603に格納されるプログラムやデータ等を用いて実行する処理によって実現される。以下、本実施の形態に係るクーポンサーバ6の機能について説明する。図5は、クーポンサーバ6の機能ブロック図である。
クーポンサーバ6は、上述のように、POSターミナル1からコントローラ2に送信される問合せメッセージの内容を解析し、その解析結果に応じてPOSターミナル1にクーポンを発券させる。POSターミナル1に対してクーポンを発券させる際、クーポンサーバ6は、POSターミナル1にクーポンの発券を指示する発券指示メッセージを送信する。以下においては、クーポンサーバ6を含むPOSシステムの間で交換されるメッセージ(上述の問合せメッセージや指示メッセージなど)を総称して「POSメッセージ」と呼ぶものとする。
ここで、POSターミナル1からコントローラ2に送信されるPOSメッセージ(問合せメッセージを含む)の内容について説明する。POSターミナル1からコントローラ2に送信されるPOSメッセージには、「取引開始」、「商品コード(PLUコード)」、「小計金額」、「合計金額」、「テンダーキータイプ」、「顧客ID」及び「取引終了」をそれぞれ内容に含むPOSメッセージが存在する。各メッセージは、POSシステムで行われた取引毎に付与される取引番号により識別される。なお、上述の問合せメッセージは、「商品コード」を内容に含むメッセージで構成される。クーポンサーバ6は、このようなPOSメッセージの内容を解析することで、クーポンの発券の有無を決定するように構成されている。
図5に示すように、クーポンサーバ6は、POSメッセージ受信部611と、POSメッセージ解析部612と、クーポン発券条件解析部613と、クーポン券面画像作成部614と、POSメッセージ作成部615と、POSメッセージ送信部616と、発券記録部617と、回収記録部618とを有している。なお、各部611〜618は、CPU601によって実行されるプログラムの一部、例えばサブルーチン、関数、プロシージャなどに相当し、これら各部に対応するハードウエアが存在するわけではない。
POSメッセージ受信部611は、POSターミナル1からコントローラ2に送信されるPOSメッセージを受信する。なお、この際、POSメッセージ受信部611は、POSメッセージの内容は問わず、全てのPOSメッセージを受信する。
POSメッセージ解析部612は、POSメッセージ受信部611が受信したPOSメッセージの内容を解析する。具体的には、POSメッセージの内容が、クーポン発券の条件となる内容(例えば、商品コードや顧客IDなど)を含むものであるか、回収したクーポンを示す内容(例えば、クーポンコードなど)を含むものであるかを解析する。また、POSメッセージ解析部612は、解析したPOSメッセージの内容に応じて取引明細ログファイル619を更新する。
ここで、取引明細ログファイル619で管理される内容について説明する。取引明細ログファイル619は、POSシステムで行われた取引明細を記憶、保存するものである。具体的には、図6に示すように、POSシステムで行われた取引毎に、「POSレジ番号」、「ステーション番号」、「取引番号」及び「POS取引明細情報」の4つのエレメントを管理する。
このような取引明細ログファイル619において、「POSレジ番号」には、各POSターミナル1に予め割り当てられた識別番号が登録され、「ステーション番号」には、2人で商品代金の精算を行うPOSターミナル1において、商品に付されたバーコードの読取りを行うチェッカー端末であるか、商品代金の精算を行うキャッシャー端末であるかを示す識別番号が登録される。「取引番号」には、POSシステムで行われた取引毎に付与される取引の識別番号が登録され、「POS取引明細情報」には、その取引番号で特定される取引明細(例えば、購入した商品コード、合計金額等)が登録される。
クーポン発券条件解析部613は、POSメッセージの内容が、クーポン発券の条件となる内容(例えば、商品コードや顧客IDなど)である場合にこれがクーポンを発券する条件(以下、「クーポン発券条件」という)を満たしているかを解析する。この際、クーポン発券条件解析部613は、クーポン企画情報データベース(DB)620、発券対象商品データベース(DB)621及び顧客IDデータベース(DB)622に登録された内容に基づいてクーポン発券条件を満たしているか解析する。
ここで、クーポン企画情報DB620、発券対象商品DB621及び顧客IDDB622に登録される内容についてそれぞれ説明する。
クーポン企画情報DB620は、クーポンを発券する際の根本的な取決め、例えば、クーポンの発券する際の企画やその企画に伴う値引き・割引金額などを登録するものである。以下に示す発券対象商品DB621及び顧客IDDB622などに登録される内容は、このクーポン企画情報DB620の内容が反映されることとなる。
具体的には、クーポン企画情報DB620は、図7に示すように、「企画(クーポン)番号」、「値引き・割引金額」、「発券制御情報」、「企画(クーポン)タイプ」、「企画(クーポン)開始日時」、「企画(クーポン)終了日時」、「有効期間制御情報」、「企画(クーポン)値引き・割引対象商品制御情報」及び「トリガー制御情報」の9つのエレメントを登録している。
このようなクーポン企画情報DB620において、「企画(クーポン)番号」には、各種クーポンを発券する企画に割り当てられた番号が登録される。この「企画番号」により各種クーポンを発券する際の取決めが識別されることとなる。「値引き・割引金額」には、各企画に対応して値引き又は割引される金額が登録される。「発券制御情報」には、各企画に対応して発券が許容されるクーポンの枚数(許容発券枚数)が登録される。
また、「企画(クーポン)タイプ」には、各種クーポンの企画の種別が登録される。「企画(クーポン)開始日時」及び「企画(クーポン)終了日時」には、それぞれ企画の開始日時及び終了日時が登録される。「有効期間制御情報」には、各企画に対応して発券されるクーポンの有効期間が登録される。
さらに、「企画(クーポン)値引き・割引対象商品制御情報」には、各企画に対応して値引き又は割引対象となる商品情報の有無(より詳しくは商品情報の有無を示すフラグ)が登録される。この「企画値引き・割引対象商品制御情報」を予め登録しておくことにより販売店に陳列される商品と発券されるクーポンの整合させることが可能となる。「トリガー制御情報」には、各企画に対応してクーポン発券の契機(トリガー)となる情報が登録される。例えば、特定の単一の商品の購入に応じてクーポンを発券するか、合計金額に応じてクーポンを発券するかなどの情報が登録される。
発券対象商品DB621は、POSメッセージに含まれる場合にクーポン発券の対象となる商品や合計金額などを登録するものである。具体的には、図8に示すように、「商品(PLU)コード・クーポンコード」、「企画(クーポン)番号」、「企画(クーポン)タイプ」、「企画(クーポン)開始日時」、「企画(クーポン)終了日時」、「発券制御情報」、「複数購入制御情報」、「合計金額制御情報」及び「テンダーメディア制御情報」の9つのエレメントを登録している。
このような発券対象商品DB621において、「企画(クーポン)番号」、「企画(クーポン)タイプ」、「企画(クーポン)開始日時」、「企画(クーポン)終了日時」及び「発券制御情報」には、「企画番号」に対応してクーポン企画情報DB620に登録された該当する情報が登録される。
また、「商品コード・クーポンコード」には、商品に割り当てられたコード(商品コード)及びクーポンに割り当てられたコード(クーポンコード)が登録される。「複数購入制御情報」には、複数の商品が購入された場合にクーポンを発券する際の制御情報が登録される。例えば、同一商品を所定数購入した場合にクーポンを発券するか、異なる商品を所定数購入した場合にクーポンを発券するかなどの制御情報が登録される。
さらに、「合計金額制御情報」には、合計金額によりクーポンを発券する際の制御情報が登録される。例えば、商品購入の合計金額が2000円を超越した場合にクーポンを発券するなどの制御情報が登録される。「テンダーメディア制御情報」には、支払い方法の対象によりクーポンを発券する際の制御情報が登録される。例えば、現金及び商品券で支払われた場合にクーポンを発券するなどの制御情報が登録される。
顧客IDDB622は、顧客を識別する際の顧客の識別番号(ID番号)や更新情報などを登録するものである。具体的には、図9に示すように、「顧客ID番号(以下、適宜「顧客ID」という)」、「企画(クーポン)番号」、「企画(クーポン)タイプ」、「発券制御情報」及び「更新情報」の5つのエレメントを登録している。
このような顧客IDDB622において、「企画(クーポン)番号」、「企画(クーポン)タイプ」及び「発券制御情報」には、「企画番号」に対応してクーポン企画情報DB620に登録された該当する情報が登録される。
「顧客ID番号」には、顧客毎に割り当てられた識別番号が登録される。具体的には、配布された会員カードに割り当てられた会員番号が顧客ID番号として登録される。「更新情報」には、顧客毎に会員登録当初に登録された情報から更新された情報が登録される。
クーポン券面画像作成部614は、クーポン発券条件解析部613の解析結果に応じてクーポンの券面画像(以下、「クーポン券面画像」という)を作成する。具体的には、クーポン発券条件解析部613によりクーポン発券条件が満たされていると判断された場合にクーポン券面画像を作成する。この際、クーポン券面画像作成部614は、クーポン画像データベース(DB)623に登録された内容に基づいてクーポン券面画像を作成する。
ここで、クーポン画像DB623に登録される内容について説明する。クーポン画像DB623は、クーポン券面画像を作成するための券面レイアウト情報などを登録するものである。具体的には、図10に示すように、「企画(クーポン)番号」、「券面レイアウト情報」及び「券面印刷情報」の3つのエレメントを登録している。
なお、このようなクーポン画像DB623において、「企画(クーポン)番号」には、クーポン企画情報DB620と同様の内容が登録される。クーポン企画情報DB620に登録された内容がクーポン画像DB623の「企画(クーポン)番号」に反映されることとなる。
「券面レイアウト情報」には、クーポンの企画に対応してクーポン券面上に印刷される要素のレイアウトを示す情報が登録される。「券面印刷情報」には、クーポン券面上に印刷される印刷対象情報(例えば、値引き対象商品のバーコードデータ)が登録される。
POSメッセージ作成部615は、クーポン発券条件解析部613の解析結果に応じてPOSターミナル1にクーポンの発券指示を内容とするPOSメッセージ(上述の発券指示メッセージ)を作成する。具体的には、クーポン発券条件解析部613によりクーポン発券条件が満たされていると判断された場合にクーポンの発券指示を内容とするPOSメッセージを作成する。また、POSメッセージ作成部615は、クーポン券面画像作成部614で作成されたクーポン券面画像の画像データ(以下、「クーポン券面画像データ」という)を受け取る。
POSメッセージ送信部616は、POSメッセージ作成部615から渡されるPOSメッセージ及びクーポン券面画像データをPOSターミナル1に送信する。この際、POSメッセージ送信部616は、POSメッセージに含まれる取引番号に応じて送信対象のPOSターミナル1を特定してPOSメッセージ等を送信する。
発券記録部617は、POSメッセージ作成部615から渡されるPOSメッセージ及びクーポン券面画像データの内容に応じて発券ログファイル624を更新する。
ここで、発券ログファイル624で管理される内容について説明する。発券ログファイル624は、発券指示が行われたクーポンの内容を記憶、保存するものである。具体的には、図11に示すように、発券指示が行われたクーポン毎に、「企画(クーポン)番号」、「トリガー日時」、「発券日時」及び「発券プリンタ情報」の4つのエレメントを管理する。
このような発券ログファイル624において、「トリガー日時」には、当該クーポンの発券のトリガーが発生した日時が管理され、「発券日時」には、当該クーポンを発券する日時が管理され、「発券プリンタ情報」には、当該クーポンを発券するPOSターミナル1のプリンタの情報が管理される。
回収記録部618は、POSメッセージの内容が、回収したクーポンを示すものである場合に、そのPOSメッセージの内容に応じて回収ログファイル625を更新する。
ここで、回収ログファイル625で管理される内容について説明する。回収ログファイル625は、回収されたクーポンの内容を記憶、保存するものである。具体的には、図12に示すように、回収されたクーポン毎に、「企画(クーポン)番号」、「回収日時」及び「回収POS情報」の3つのエレメントを管理する。
このような回収ログファイル625において、「回収日時」には、当該クーポンを回収した日時が管理され、「回収POS情報」には、回収したクーポンに対応するPOSメッセージの内容が管理される。
ここで、このようなクーポンサーバ6の機能ブロックによりクーポンの発券が指示されたPOSターミナル1において、発券されたクーポン(より詳しくはクーポンを含むレシート4)の具体例について説明する。図13は、クーポンサーバ6から発券が指示されたPOSターミナル1で発券されたクーポンの一例について示す図である。
図13に示すように、クーポンの発券指示を受けたPOSターミナル1で発券されるクーポンは、レシート4の下方部分に印刷される。レシート4とクーポンとの間には、ミシン線による切り取り線が設けられ、クーポン使用時の便宜を図っている。クーポンには、商品名、製造メーカ、値引き金額、有効期限、これらの内容をバーコード情報としたクーポンバーコードが含まれる。図13においては、「平成17年5月11日」までに「○○食品」の「××ラーメン」を2個購入した場合に100円引きである内容及びその内容に対応するバーコードが印刷された場合について示している。
ここで、クーポンに含まれるバーコードの一例について説明する。クーポンに含まれるバーコードには、業界標準のフォーマットに準拠したバーコードを用いている。例えば、製造メーカを指定するクーポン(メーカクーポン)や、販売店で自由に設定可能なクーポン(インストアクーポン)などを含む。メーカクーポン、インストアクーポンの内容について以下に示す。
メーカクーポンは、例えば、「99MMMMMPPVVVC」で構成される。このうち、「99」は、メーカクーポンであること示すフラグであり、「MMMMM」は、クリアランス事業者、すなわち製造メーカコードを示すものである。また、「PP」は、クーポン識別コード、すなわち、製造メーカが使用する企画コードを示すものであり、「VVV」は、クーポンによる割引額を10円単位で指定するものであり、「C」は、チェックディジットを示すものである。図13に示すバーコードは、メーカクーポンを示している。
インストアクーポンは、例えば、「981RRRRRSVVVC」で構成される。このうち、「981」は、インストアクーポンであること示すフラグであり、「RRRRR」は、販売店が自由に使用でき、クーポン識別コードを示すものである。また、「S」は、区分コードを示すものであり、“0”は割引額、“1”は割引率を指定するものであり、「VVV」は、クーポンによる割引額又は割引率を指定するものであり、「C」は、チェックディジットを示すものである。
以下、上記構成を有するクーポンサーバ6が適用されるPOSシステムにおいて、POSターミナル1でクーポンを発券する場合の動作について図14を用いて説明する。図14は、本実施の形態に係るクーポンサーバ6が適用されるPOSシステムにおいて、POSターミナル1でクーポンを発券する場合の動作について説明するためのフロー図である。なお、上記動作を説明する際の前提として、クーポン画像DB623にはクーポンを発券するための印刷対象情報などのデータが既に登録されているものとする。
POSターミナル1によりクーポンを発券しようとする場合、まず、クーポンサーバ6における発券対象商品DB621、クーポン企画情報DB620及び顧客IDDB622に登録されるデータを指定することでクーポン発券条件が設定される。なお、クーポン発券条件の設定は、例えば、ネットワーク管理者によりクーポンサーバ6に直接入力される。
そして、このようにクーポン発券条件が設定された状態において、POSターミナル1からコントローラ2に送信されるPOSメッセージを受信するか監視する(ステップ(以下、「ST」と略す)1)。POSメッセージを受信するまでは、クーポンサーバ6において、この監視動作が継続される。
このような監視動作において、POSメッセージを受信したならば、このPOSメッセージの内容を解析する(ST2)。このようにPOSメッセージの内容を解析することで、POSメッセージがどのような種別のものかが判定される。POSメッセージの内容を解析した後、その内容に応じて取引明細ログファイル619を更新する(ST3)。これにより、受信したPOSメッセージの内容が取引明細ログファイル619に登録されることとなる。
そして、ST2により解析したPOSメッセージの内容が回収したクーポンを示す内容であるか判定する(ST4)。ここで、POSメッセージの内容が回収したクーポンを示す内容である場合には、そのPOSメッセージの内容に応じて回収ログファイル625を更新する(ST5)。これにより、以前に発券したクーポンであって実際に使用されたクーポンの内容が回収ログファイル625に登録されることとなる。
ST5において回収ログファイル625を更新した後、或いは、ST4においてPOSメッセージの内容が回収したクーポンを示す内容でなかった場合には、POSメッセージの内容が、クーポン発券条件を満たしているかを解析する処理(以下、「クーポン発券条件解析処理」という)を行う(ST6)。なお、このクーポン発券条件解析処理については後述する。
クーポン発券条件解析処理において、POSメッセージの内容が、クーポン発券条件を満たしているか否かを解析した後、クーポン発券の有無を判定する(ST7)。ここで、クーポンを発券しないと判定した場合には、このPOSメッセージにおける処理を終了し、再び、POSターミナル1からコントローラ2に送信されるPOSメッセージを受信するか監視する。
一方、クーポンを発券すると判定した場合には、POSメッセージの内容から発券対象と解析されたクーポン券面画像を作成する(ST8)。このとき、クーポン画像DB623から必要なレイアウト情報及び印刷対象情報を呼び出し、対象となるクーポン券面画像(クーポン券面画像データ)を作成する。
クーポン券面画像を作成した後、クーポンの発券指示を内容とするPOSメッセージを作成する(ST9)。そして、このPOSメッセージを作成した後、このPOSメッセージと共にクーポン券面画像データを、クーポンを発券させるPOSターミナル1に送信する(ST10)。
ST10でPOSメッセージと共にクーポン券面画像データを送信したならば、当該POSメッセージ及びクーポン券面画像データの内容に応じて発券ログファイル624を更新する(ST11)。これにより、発券指示が行われたクーポンの内容が発券ログファイル624に登録されることとなる。このように発券ログファイル624の更新まで完了したならば、このPOSメッセージにおける処理を終了し、再び、POSターミナル1からコントローラ2に送信されるPOSメッセージを受信するか監視する。
ST10により送信されたPOSメッセージと共にクーポン券面画像データがPOSターミナル1で受信されると、このPOSターミナル1において、上記クーポン券面画像データが下方部分に印刷されたレシート4が発行される。このようにしてクーポンサーバ6が適用されるPOSシステムにおいて、POSターミナル1でクーポンを発券する場合の一連の動作が終了する。そして、発券されたクーポンが、POSターミナル1が備えるスキャナで読み込まれると、商品代金の精算の際、所定の場合(購入する商品に値引き等の対象商品が含まれる場合など)に商品代金からそのクーポンが示す値引き額が差し引かれることとなる。
ここで、上述のクーポン発券条件解析処理について説明する。図15は、上述のクーポン発券条件解析処理について説明するためのフロー図である。クーポン発券条件解析処理においては、ST2により解析したPOSメッセージの内容がどのような内容を含むPOSメッセージであるか判定した後、そのPOSメッセージの内容に応じたクーポン発券条件がクーポンサーバ6に設定されているか判定し、皿に当該POSメッセージの内容が、設定されたクーポン発券条件を満たしているか(クリアしているか)を判定し、クーポン発券指示の有無を決定する。
具体的には、まず、ST2により解析したPOSメッセージが、合計金額を内容に含むPOSメッセージ(以下、「合計金額メッセージ」という)であるか判定する(ST12)。POSメッセージが合計金額メッセージである場合には、合計金額を用いたクーポン発券条件が設定されているか判定する(ST13)。ここで、合計金額を用いたクーポン発券条件が設定されている場合には、ST2により解析したPOSメッセージの内容が、この設定条件を満たしているか判定する(ST14)。
例えば、合計金額が2000円を超越した場合にクーポンを発券するといったクーポン発券条件が設定されている場合には、POSメッセージに含まれる合計金額が2000円以上であるかが判定されることとなる。そして、この設定条件を満たしている場合には、クーポン発券指示を行った後(ST15)、クーポン発券条件解析処理を終了する。
ST12においてPOSメッセージが合計金額メッセージでないと判定した場合には、今度は、ST2により解析したPOSメッセージが、商品コード・クーポンコード(商品/クーポンコード)を内容に含むPOSメッセージ(以下、「商品/クーポンコードメッセージ」という)であるか判定する(ST16)。POSメッセージが商品/クーポンコードメッセージである場合には、商品/クーポンコードを用いたクーポン発券条件が設定されているか判定すると共に、その設定条件を満たしているか判定する商品/クーポン条件判定処理を行う(ST17)。そして、この商品/クーポン条件判定処理を行った後、クーポン発券条件解析処理を終了する。なお、商品/クーポン条件判定処理については後述する。
ST16においてPOSメッセージが商品/クーポンコードメッセージでないと判定した場合には、今度は、ST2により解析したPOSメッセージが、顧客IDを内容に含むPOSメッセージ(以下、「顧客IDメッセージ」という)であるか判定する(ST18)。POSメッセージが顧客IDメッセージである場合には、顧客IDを用いたクーポン発券条件が設定されているか判定する(ST19)。ここで、顧客IDを用いたクーポン発券条件が設定されている場合には、ST2により解析したPOSメッセージの内容が、この設定条件を満たしているか判定する(ST20)。
例えば、顧客IDが「0001」〜「1000」の場合にクーポンを発券するといったクーポン発券条件が設定されている場合には、POSメッセージに含まれる顧客IDが「0001」〜「1000」に該当するかが判定されることとなる。そして、この設定条件を満たしている場合には、クーポン発券指示を行った後(ST21)、クーポン発券条件解析処理を終了する。
ST18においてPOSメッセージが顧客IDメッセージでないと判定した場合には、今度は、ST2により解析したPOSメッセージが、テンダーメディア(テンダーキータイプ)を内容に含むPOSメッセージ(以下、「テンダーメディアメッセージ」という)であるか判定する(ST22)。POSメッセージがテンダーメディアメッセージである場合には、テンダーメディアを用いたクーポン発券条件が設定されているか判定する(ST23)。ここで、テンダーメディアを用いたクーポン発券条件が設定されている場合には、ST2により解析したPOSメッセージの内容が、この設定条件を満たしているか判定する(ST24)。
例えば、商品代金が現金で支払われた場合にクーポンを発券するといったクーポン発券条件が設定されている場合には、POSメッセージに含まれるテンダーメディアが現金であるかが判定されることとなる。そして、この設定条件を満たしている場合には、クーポン発券指示を行った後(ST25)、クーポン発券条件解析処理を終了する。
なお、ST22においてPOSメッセージがテンダーメディアメッセージでないと判定した場合、ST15、ST21及びST25においてクーポン発券指示を行った場合、ST13、ST19及びST23において各種のクーポン発券条件が設定されていないと判定した場合、ST14、ST20及びST24において各種のクーポン発券条件が満たされていないと判定した場合、並びに、ST17において商品/クーポン条件判定処理を行った場合には、クーポン発券条件解析処理を終了する。
このようにして、ST15、ST21及びST25においてクーポン発券指示が行われた場合には、図14に示すクーポン券面画像の作成(ST8)以降の処理を行いPOSターミナル1にクーポンの発券を行わせる。一方、いずれのクーポン発券指示も行われない場合には、クーポン発券動作を終了する。
なお、図15に示すクーポン発券条件解析処理においては、説明の便宜上、POSメッセージが、各種メッセージ(例えば、合計金額メッセージや商品/クーポンメッセージなど)であるか個別に判定し、いずれかのメッセージに該当する場合には設定条件のクリアを条件としてクーポン発券指示を行う場合について示している。しかし、クーポン発券指示については、これに限定されず、複数のPOSメッセージの内容を判定して行うようにしても良い。これにより、合計金額を用いたクーポン発券条件と、顧客IDを用いたクーポン発券条件とを組み合わせてクーポン発券指示の有無を決定することも可能である。
ここで、上述の商品/クーポン条件判定処理について説明する。図16は、上述の商品/クーポン条件判定処理について説明するためのフロー図である。商品/クーポン条件判定処理においては、クーポンサーバ6に設定された、商品コード又はクーポンコードを用いたクーポン発券条件を判定した後、ST2により解析したPOSメッセージの内容が、設定されたクーポン発券条件を満たしているか(クリアしているか)を判定し、クーポン発券指示の有無を決定する。
具体的には、まず、単一の商品コード(以下、「単品コード」という)を用いたクーポン発券条件が設定されているか判定する(ST26)。単品コードを用いたクーポン発券条件が設定されている場合には、ST2により解析したPOSメッセージの内容が、この設定条件を満たしているか判定する(ST27)。
例えば、単品コード「0001」の商品が購入された場合にクーポンを発券するといったクーポン発券条件が設定されている場合には、POSメッセージに含まれる商品コードに「0001」の商品が含まれるかが判定されることとなる。そして、この設定条件を満たしている場合には、クーポン発券指示を行った後(ST28)、処理をST29に進める。
ST29においては、ST26において単品コードを用いたクーポン発券条件が設定されていないと判定された場合、並びに、ST27において設定条件を満たしていないと判定された場合には、今度は、同一の商品の複数購入を条件とするクーポン発券条件が設定されているか判定する(ST29)。同一の商品の複数購入を条件とするクーポン発券条件が設定されている場合には、ST2により解析したPOSメッセージの内容が、この設定条件を満たしているか判定する(ST30)。
例えば、商品コード「0002」の商品が3個購入された場合にクーポンを発券するといったクーポン発券条件が設定されている場合には、POSメッセージに含まれる商品コードに「0002」の商品が3個含まれるかが判定されることとなる。そして、この設定条件を満たしている場合には、クーポン発券指示を行った後(ST31)、処理をST32に進める。
ST32においては、ST29において同一の商品の複数購入を条件とするクーポン発券条件が設定されていないと判定された場合、並びに、ST30において設定条件を満たしていないと判定された場合には、今度は異なる商品の複数購入を条件とするクーポン発券条件が設定されているか判定する(ST32)。異なる商品の複数購入を条件とするクーポン発券条件が設定されている場合には、ST2により解析したPOSメッセージの内容が、この設定条件を満たしているか判定する(ST33)。
例えば、商品コード「0001」、「0002」及び「0003」の商品がそれぞれ1個ずつ購入された場合にクーポンを発券するといったクーポン発券条件が設定されている場合には、POSメッセージに含まれる商品コードに「0001」、0002」及び「0003」の商品が1個ずつ含まれるかが判定されることとなる。そして、この設定条件を満たしている場合には、クーポン発券指示を行った後(ST34)、商品/クーポン条件判定処理を終了する。
ST32において異なる商品の複数購入を条件とするクーポン発券条件が設定されていないと判定された場合、並びに、ST33において設定条件を満たしていないと判定された場合には、今度は、回収したクーポンのクーポンコード(以下、「回収クーポンコード」という)を用いたクーポン発券条件が設定されているか判定する(ST35)。回収クーポンコードを用いたクーポン発券条件が設定されている場合には、ST2により解析したPOSメッセージの内容が、この設定条件を満たしているか判定する(ST36)。
例えば、回収クーポンコードが「1001」の場合にクーポンを発券するといったクーポン発券条件が設定されている場合には、POSメッセージに含まれるクーポンコードが「1001」であるかが判定されることとなる。そして、この設定条件を満たしている場合には、クーポン発券指示を行った後(ST37)、商品/クーポン条件判定処理を終了する。
なお、ST34又はST37においてクーポン発券指示を行った場合、ST35において回収クーポンコードを用いたクーポン発券条件が設定されていないと判定された場合、並びに、ST36において設定条件を満たしていないと判定された場合には、商品/クーポン条件判定処理を終了する。
このようにして、ST28、ST31、ST34及びST37においてクーポン発券指示が行われた場合には、図15に示すST17の処理を経て、図14に示すクーポン券面画像の作成(ST8)以降の処理を行いPOSターミナル1にクーポンの発券を行わせる。一方、いずれのクーポン発券指示も行われない場合には、クーポン発券動作を終了する。
以下、本実施の形態に係るクーポン発券システムにおいて、クーポンサーバ6がクーポンの発券指示を行う場合の制御について具体例を用いて説明する。ここでは、クーポンサーバ6に合計金額を用いたクーポン発券条件が設定されているものとし、このクーポン発券条件に対応する企画番号(図7参照)は、「S0001」であるものとする。
このような前提の下、POSターミナル1からコントローラ2に送信されるPOSメッセージが、合計金額を内容に含むもの(上述の「合計金額メッセージ」)である場合、クーポンサーバ6は、図14に示すクーポン発券条件解析処理に移行し、図15に示すST12において合計金額メッセージと判定する。そして、ST13において、合計金額を用いたクーポン発券条件を内容とする企画番号が存在するか判定する。ここでは、上述の企画番号「S0001」が検索されるものとする。
企画番号「S0001」を検索すると、ST14において、企画番号「S0001」に対応してクーポン企画情報DB620内に登録された各種情報を判定する。具体的には、クーポン企画情報DB620内の企画開始日時や企画終了日時に設定された内容や、特に、トリガー制御情報に登録された内容を判定する。
ここで、トリガー制御情報には、発券対象商品DB621の企画番号「S0001」に対応して登録された合計金額制御情報に応じてクーポン発券指示の有無を決定する内容が登録されている。このため、ST14においては、発券対象商品DB621の企画番号「S0001」に対応して登録された合計金額制御情報の内容を満たすかを判定し、これを満たす場合には、ST15において、クーポン発券指示を行う。
このように、クーポンサーバ6がクーポンの発券指示を行う場合、企画番号を検索し、クーポン企画情報DB620内で検索した企画番号に応じて登録された内容(特に、トリガー制御情報)を判定し、これに応じて発券対象商品DB621や顧客IDDB622の内容を判定することで、クーポン発券指示を行うように構成されている。
以上説明したように、本実施の形態に係るクーポン発券システムによれば、クーポン発券機能を有しない既存のPOSシステムのネットワーク上にクーポンサーバ6を接続し、このクーポンサーバ6において、POSターミナル1からコントローラ2に送信されるPOSメッセージ(問合せメッセージ)を解析し、その解析結果に応じてPOSターミナル1にクーポンを発券させる。これにより、クーポンサーバ6が、POSシステム上で通常にやりとりされるPOSメッセージを解析し、その解析結果に応じてPOSターミナル1にクーポンを発券させるので、クーポン発券機能を有しない既存のPOSシステムを大幅に改修又は変更することなく、当該POSシステムにクーポン発券機能を追加することが可能となる。
より具体的にいうと、本実施の形態に係るクーポンサーバ6においては、POSメッセージ受信部611がPOSターミナル1からコントローラ2に送信される問合せメッセージを受信し、POSメッセージ解析部612及びクーポン発券条件解析部613がその問合せメッセージの内容を解析する。そして、その解析結果に応じてクーポン券面画像作成部614がクーポン券面画像を生成すると共に、POSメッセージ作成部615がクーポンの発券指示メッセージを作成し、POSメッセージ送信部616でこれらを該当するPOSターミナル1に送信する。これにより、POSシステム上で通常にやりとりされるPOSメッセージをPOSメッセージ受信部で受信し、その内容を解析した上でクーポン発券指示メッセージをPOSターミナル1に送信することから、POSシステムにおける通常制御を利用してクーポンサーバ6がPOSターミナル6にクーポンを発券させることができるので、クーポン発券機能を有しない既存のPOSシステムを大幅に改修又は変更することなく、当該POSシステムにクーポン発券機能を追加することが可能となる。
また、本実施の形態に係るクーポンサーバ6は、クーポン発券条件を記憶する発券対象商品DB621、クーポン企画情報DB620及び顧客IDDB622を有しており、クーポン発券条件解析部613は、これらのデータベースに登録されたクーポン発券条件に基づいて問合せメッセージを解析してクーポン発券の有無を決定する。これにより、データベースに登録されたクーポン発券条件に基づいてクーポン発券の有無を決定するため、迅速且つ確実にクーポンをPOSターミナル1に発券させることが可能となる。また、データベース内のクーポン発券条件を変更するだけで簡単にPOSターミナル1におけるクーポンの発券を制御することができるので、季節に応じた企画や、新商品の販売促進のための企画などに柔軟に対応してクーポンを発券させることが可能となる。
特に、本実施の形態に係るクーポン発券システムにおいては、クーポン発券条件を、少なくとも問合せメッセージに含まれる商品コード(PLUコード)、顧客ID又は商品代金の合計金額のいずれか又は組合せにより決定するようにしている。このため、問合せメッセージに含まれる商品コード、顧客ID又は商品代金の合計金額に応じて、多様な種類のクーポンをPOSターミナル1に発券させることが可能となる。
また、本実施の形態に係るクーポン発券システムにおいては、POSターミナル1がレシート4を発行する際に用いるプリンタ5を用いてクーポンを発券させるようにしている。このように通常の精算業務におけるレシート発行時に使用していたプリンタ5をクーポンの発券に使用することから、クーポンの発券に関しても既存のPOSターミナル1における設備を流用することができるので、クーポン発券機能を有しない既存のPOSシステムを大幅に改修又は変更することなく、当該POSシステムにクーポン発券機能を追加することが可能となる。
なお、本発明は上記実施の形態に限定されず、種々変更して実施することが可能である。上記実施の形態において、添付図面に図示されている大きさや形状などについては、これに限定されず、本発明の効果を発揮する範囲内で適宜変更することが可能である。その他、本発明の目的の範囲を逸脱しない限りにおいて適宜変更して実施することが可能である。
例えば、本実施の形態に係るクーポン発券システムにおいては、POSシステムのネットワーク上にクーポンサーバ6を接続し、このクーポンサーバ6でPOSターミナル1からコントローラ2に送信される問合せメッセージの解析結果に応じてPOSターミナル1にクーポンを発券させる場合について示している。しかし、かかるクーポンサーバ6が有する機能をコントローラ2に具備させるようにしても良い。この場合においては、コントローラ2が、POSシステム上で通常にやりとりされるPOSメッセージを解析し、その解析結果に応じてPOSターミナル1にクーポンを発券させるので、上記実施の形態と同様に、クーポン発券機能を有しない既存のPOSシステムを大幅に改修又は変更することなく、当該POSシステムにクーポン発券機能を追加することが可能となる。
また、近年、POSターミナル1において、PLUファイルを備え、一部コントローラ2の役割を兼ねながら商品代金の精算を行うPOSシステムが販売店などに導入されている。かかるPOSシステムにおいては、POSコントローラ1が一部コントローラ2の役割を兼ねるため、POSターミナル1からコントローラ2に問合せメッセージを送信する処理が省略される。このような構成を有するPOSシステムに対しても、POSターミナル1の制御に一部変更を加えることで、本発明に係るクーポン発券システムを適用することが可能である。
例えば、POSターミナル1に問合せメッセージをクーポンサーバ6に送信する制御を追加することで、本発明に係るクーポン発券システムを適用することが可能となる。この場合においては、上述の制御を追加するだけで、クーポンサーバ6が、この問合せメッセージを解析し、その解析結果に応じてPOSターミナル1にクーポンを発券させるので、上記実施の形態と同様に、クーポン発券機能を有しない既存のPOSシステムを大幅に改修又は変更することなく、当該POSシステムにクーポン発券機能を追加することが可能となる。
さらに、本実施の形態に係るクーポン発券システムにおいては、図15に示すように、商品代金の合計金額、商品/クーポンコード、顧客ID及びテンダーメディア種別を用いたクーポン発券条件を例にそのクーポン発券動作を説明しているが、かかるクーポン発券条件に限定されるものではない。販売促進を目的として、商品販売に関するどのような情報をクーポン発券条件に用いるようにしても良い。