以下、電子レシートシステムと電子スタンプカードシステムとを効率よく連携できるデータ処理装置の実施形態について、図面を用いて説明する。因みに、本実施形態において、電子レシートシステムは、店舗のPOS端末から発行されるレシートの情報を電子化してセンタサーバに保管し、このセンタサーバに保管された電子レシートデータを購買者がスマートフォン等の情報端末を利用して閲覧できるようにしたシステムである。また、電子スタンプカードシステムは、店舗での会計毎に電子的にスタンプが付与される電子スタンプカードをセンタサーバで保管し、このセンタサーバに保管された電子スタンプカードの情報を購買者がスマートフォン等の情報端末を利用して閲覧できるようにしたものである。なお、所定数のスタンプが付与された電子スタンプカードは、例えば商品券等の特典と交換することができる。
図1は、電子レシートシステムと電子スタンプカードシステムとを連携するためのシステム構成を簡略的に示す模式図である。本システムは、センタサーバ1と、各店舗STにそれぞれ設置されるPOS端末2と、インターネット等のネットワーク3とを含む。センタサーバ1は、電子レシートシステムと電子スタンプカードシステムとを連携するためのデータ処理装置として機能する。POS端末2は、電子レシートデータを生成し、センタサーバ1へと送信する機能を有する。ネットワーク3は、センタサーバ1と各POS端末2とを接続する。センタサーバ1と各POS端末2とは、ネットワーク3を介してデータ通信を行う。
また本システムは、購買者(消費者、会員)が所有するスマートフォン等の情報端末5を必要とする。情報端末5は、無線LAN(Local Area Network)又はモバイル通信の技術を利用して、無線通信を行うことができる。ネットワーク3には、情報端末5と無線通信が可能なアクセスポイント4が複数接続されている。アクセスポイント4は、無線通信領域が凡そ重ならないように各所に点在して配置されている。いずれかのアクセスポイント4の無線通信領域内に存在する情報端末5は、そのアクセスポイント4との間で無線通信を行うことが可能である。この無線通信により、情報端末5は、センタサーバ1へのリクエストを行い、センタサーバ1から提供される画像を表示デバイスに表示する。
図2は、情報端末5の要部回路構成を示すブロック図である。情報端末5は、プロセッサ51、メインメモリ52、補助記憶デバイス53、無線ユニット54、タッチパネル55及びシステムバス56を備える。そして情報端末5は、システムバス56に、プロセッサ51、メインメモリ52、補助記憶デバイス53及び無線ユニット54を直接または信号入出力回路を介して接続する。かくして情報端末5は、プロセッサ51、メインメモリ52及び補助記憶デバイス53と、これらを接続するシステムバス56とによってコンピュータを構成する。
プロセッサ51は、上記コンピュータの中枢部分に相当する。プロセッサ51は、オペレーティングシステムやアプリケーションプログラムに従って、情報端末5としての各種の機能を実現するべく各部を制御する。
メインメモリ52は、上記コンピュータの主記憶部分に相当する。メインメモリ52は、不揮発性のメモリ領域と揮発性のメモリ領域とを含む。メインメモリ52は、不揮発性のメモリ領域ではオペレーティングシステムやアプリケーションプログラムを記憶する。またメインメモリ52は、プロセッサ51が各部を制御するための処理を実行する上で必要なデータを不揮発性または揮発性のメモリ領域で記憶する場合もある。メインメモリ52は、揮発性のメモリ領域を、プロセッサ51によってデータが適宜書き換えられるワークエリアとして使用する。
補助記憶デバイス53は、上記コンピュータの補助記憶部分に相当する。例えばEEPROM(Electric Erasable Programmable Read-Only Memory)、HDD(Hard Disc Drive)、あるいはSSD(Solid State Drive)等が補助記憶デバイス53として使用される。補助記憶デバイス53は、プロセッサ51が各種の処理を行う上で使用するデータや、プロセッサ51での処理によって生成されたデータを保存する。補助記憶デバイス53は、上記のアプリケーションプログラムを記憶する場合もある。
無線ユニット54は、アクセスポイント4との間で所定の無線通信プロトコルに従い無線によるデータの送信または受信を行う。
タッチパネル55は、情報端末5の入力デバイスと表示デバイスとを兼ね備えた機器である。
かかる構成の情報端末5には、電子レシートシステムと電子スタンプカードシステムとを連携して使用する会員専用のアプリケーションプログラム(以下会員プログラムと称する)がダウンロードされる。会員プログラムは、例えば補助記憶デバイス53に記憶される。この会員プログラムを情報端末5にダウンロードすることによって、情報端末5のユーザである購買者は、会員登録を行うことができる。会員登録を行うことにより、当該購買者を特定するための購買者特定情報として、電子レシートシステムと電子スタンプカードシステムとで共通の一意の会員IDが発番される。この会員IDのデータも、例えば補助記憶デバイス53に記憶される。
会員プログラムが起動すると、タッチパネル55に、例えば図3に示すレイアウトのホーム画面SC1が表示される。図示するようにホーム画面SC1には、バーコードBCが表示される。バーコードBCは、会員IDをバーコード化したものである。また、ホームアイコンIC1、レシートアイコンIC2及びその他アイコンIC3がホーム画面SC1に表示される。そしてホームアイコンIC1が選択状態となり、レシートアイコンIC2とその他アイコンIC3とが非選択状態となる。
図4は、POS端末2の要部回路構成を示すブロック図である。POS端末2は、プロセッサ21、メインメモリ22、補助記憶デバイス23、時計24、通信インターフェース25、入力デバイス26、表示デバイス27、読取デバイス28、プリンタ29、自動釣銭機210及びシステムバス211を備える。そしてPOS端末2は、システムバス211に、プロセッサ21、メインメモリ22、補助記憶デバイス23、時計24、通信インターフェース25、入力デバイス26、表示デバイス27、読取デバイス28、プリンタ29及び自動釣銭機210を直接または信号入出力回路を介して接続する。かくしてPOS端末2は、プロセッサ21、メインメモリ22及び補助記憶デバイス23と、これらを接続するシステムバス211とによってコンピュータを構成する。
プロセッサ21は、上記コンピュータの中枢部分に相当する。プロセッサ21は、オペレーティングシステムやアプリケーションプログラムに従って、POS端末2としての各種の機能を実現するべく各部を制御する。
メインメモリ22は、上記コンピュータの主記憶部分に相当する。メインメモリ22は、不揮発性のメモリ領域と揮発性のメモリ領域とを含む。メインメモリ22は、不揮発性のメモリ領域ではオペレーティングシステムやアプリケーションプログラムを記憶する。またメインメモリ22は、プロセッサ21が各部を制御するための処理を実行する上で必要なデータを不揮発性または揮発性のメモリ領域で記憶する場合もある。メインメモリ22は、揮発性のメモリ領域を、プロセッサ21によってデータが適宜書き換えられるワークエリアとして使用する。
補助記憶デバイス23は、上記コンピュータの補助記憶部分に相当する。例えばEEPROM、HDD、あるいはSSD等が補助記憶デバイス23として使用される。補助記憶デバイス23は、プロセッサ21が各種の処理を行う上で使用するデータや、プロセッサ21での処理によって生成されたデータを保存する。補助記憶デバイス23は、上記のアプリケーションプログラムを記憶する場合もある。
時計24は、POS端末2の時刻情報源として機能する。プロセッサ21は、時計24によって計時される時刻情報を基に、現在の日付及び時刻を計時する。
通信インターフェース25は、ネットワーク3に接続されており、所定の通信プロトコルに従い、ネットワーク3を介してセンタサーバ1とデータ通信を行う。
入力デバイス26は、操作者による各種指示の入力を受け付ける。入力デバイス26としては、タッチセンサ又はキーボードなどの周知のデバイスを、単独又は組み合わせて適用できる。
表示デバイス27は、操作者に対して各種の情報を通知するための各種画面を表示する。表示デバイス27としては、例えば液晶表示デバイスなどの周知のデバイスを適用できる。
読取デバイス28は、商品に付されたバーコード、二次元データコード等を読み取る。また読取デバイス28は、情報端末5のタッチパネル55に表示された会員IDのバーコードBCを読み取る。読取デバイス28としては、バーコードスキャナ又は二次元スキャナなどの周知のデバイスを、単独又は組み合わせて適用できる。
プリンタ29は、レシート用紙に対してレシート画像をプリントしてレシートを発行する。
自動釣銭機210は、紙幣及び硬貨の投入口を有し、投入された紙幣又は硬貨の金額を算出する。そして自動釣銭機は、この投入金額から取引金額を減じた差額を釣銭額として釣銭額相当の紙幣又は硬貨を払出口に払い出すものである。
かかる構成のPOS端末2は、例えば店舗STのチェックアウトコーナに設置される。なお、1つの店舗STに設置されるPOS端末2の台数は1台に限定されるものではない。典型的には、1つの店舗STに複数台のPOS端末2が設置される。ただし本実施形態では、便宜上、1店舗に設置されるPOS端末2を1台として説明を続ける。
POS端末2のプロセッサ21は、入力デバイス26又は読取デバイス28を介して購買者が買い上げる商品のデータが入力されると、その商品の販売データを売上処理する。そして買上商品のデータ入力終了を指令する操作が入力デバイス26を介して行われると、プロセッサ21は、買上商品の代金を基に算出される取引金額を表示デバイス27に表示させる。その後、自動釣銭機210に取引金額以上の現金が投入されると、プロセッサ21は、レシートデータを生成する。レシートデータは、購買の明細を示すものであり、買上商品の品名、単価、点数、金額、取引金額、預り金額、釣銭額等を含む。またレシートデータは、取引日時及びレシートIDを含む。取引日時は、例えば取引日時が生成された時点の時計24の日付と時刻である。取引日時は、例えば購買者が買い上げる商品の1点目のデータが入力された時点の時計24の日付と時刻でもよい。レシートIDは、レシートデータが生成される毎に発行される一意のコードである。レシートIDは、例えば取引日時の後に、レシートデータが生成される毎にカウントアップし、日付が更新されるとリセットされるカウンタの値を付加したものである。
レシートデータを生成し終えると、プロセッサ21は、電子レシート処理を行うか否かを判定する。すなわちプロセッサ21は、購買者が所持する情報端末5のタッチパネル55に表示されたホーム画面SC1のバーコードBCが読取デバイス28を介して読み取られている場合、電子レシート処理を行うと判定する。上記バーコードBCが読み取られていない場合には、プロセッサ21は、電子レシート処理を行わないと判定する。電子レシート処理を行わない場合、プロセッサ21は、プリンタ29を制御してレシートデータが印刷されたレシートの発行を制御する。電子レシート処理を行うと判定した場合には、プロセッサ21は、図5に示すように、レシートデータに会員IDと店舗IDとを付加した電子レシートデータERDを生成する。会員IDは、バーコードBCを解析して得たコードである。店舗IDは、予め設定された店舗固有のIDであり、例えば補助記憶デバイス23に記憶されている。プロセッサ21は、通信インターフェース25を介してセンタサーバ1に電子レシートデータERDを送信する。
このような動作を行うPOS端末2は、既存の電子レシートシステムに対応したものをそのまま適用できる。
図6は、センタサーバ1の要部回路構成を示すブロック図である。センタサーバ1は、プロセッサ11、メインメモリ12、補助記憶デバイス13、通信インターフェース14及びシステムバス15を備える。そしてセンタサーバ1は、システムバス15に、プロセッサ11、メインメモリ12、補助記憶デバイス13及び通信インターフェース14を直接または信号入出力回路を介して接続する。かくしてセンタサーバ1は、プロセッサ11、メインメモリ12及び補助記憶デバイス13と、これらを接続するシステムバス15とによってコンピュータを構成する。
プロセッサ11は、上記コンピュータの中枢部分に相当する。プロセッサ11は、オペレーティングシステムやアプリケーションプログラムに従って、センタサーバ1としての各種の機能を実現するべく各部を制御する。
メインメモリ12は、上記コンピュータの主記憶部分に相当する。メインメモリ12は、不揮発性のメモリ領域と揮発性のメモリ領域とを含む。メインメモリ12は、不揮発性のメモリ領域ではオペレーティングシステムやアプリケーションプログラムを記憶する。またメインメモリ12は、プロセッサ11が各部を制御するための処理を実行する上で必要なデータを不揮発性または揮発性のメモリ領域で記憶する場合もある。メインメモリ12は、揮発性のメモリ領域を、プロセッサ11によってデータが適宜書き換えられるワークエリアとして使用する。
補助記憶デバイス13は、上記コンピュータの補助記憶部分に相当する。例えばEEPROM、HDD、あるいはSSD等が補助記憶デバイス13として使用される。補助記憶デバイス13は、プロセッサ11が各種の処理を行う上で使用するデータや、プロセッサ11での処理によって生成されたデータを保存する。補助記憶デバイス13は、上記のアプリケーションプログラムを記憶する場合もある。
ここで、メインメモリ12又は補助記憶デバイス13に記憶されるアプリケーションプログラムの1つに、電子レシートシステムと電子スタンプカードシステムとを連携させるための連携プログラムがある。
通信インターフェース14は、ネットワーク3に接続されており、所定の通信プロトコルに従い、ネットワーク3を介して各POS端末2とデータ通信を行う。また通信インターフェース14は、ネットワーク3さらにはアクセスポイント4を介して情報端末5とデータ通信を行う。
かかる構成のセンタサーバ1は、補助記憶デバイス13の領域の一部をレシートデータベース61、スタンプカードデータベース62及び管理データベース63として使用する。
レシートデータベース61は、各POS端末2からネットワーク3を介して受信した電子レシートデータERDを含むレコード(以下、レシートレコードと称する)61Rを一定期間保存するための領域である。レシートレコード61Rは、図7に示すように会員ID、店舗ID、レシートID、取引日時、レシートデータ、スタンプ対象フラグ、カードIDを含む。なお、レシートレコード61Rは、上記以外の項目を含んでいてもよい。
会員ID、店舗ID及びレシートデータは、電子レシートデータERDに含まれているものである。レシートID及び取引日時は、レシートデータから抽出される。スタンプ対象フラグは、対応するレシートIDで特定されるレシートデータが、収集した数によって特典が得られるスタンプの発行条件を満足するか否かを識別する1ビット情報である。スタンプの発行条件については後述する。スタンプ対象フラグは、例えばスタンプの発行条件を満足するとき“1”となり、発行条件を満足しないとき“0”となる。カードIDは、レシートデータがスタンプの発行条件を満足する場合に、そのスタンプを収集するための電子レシートカードを特定するための情報である。ここに、レシートデータベース61は、購買者特定情報(会員ID)とレシートデータとを関連付けて記憶する第1の記憶部として機能する。
スタンプカードデータベース62は、電子スタンプカードの種類毎に生成されるレコード(以下、カードレコード62Rと称する)を保存するための領域である。電子スタンプカードは、スタンプカードを電子化したものであり、同じく電子化されたスタンプデータを一定の数まで収集可能である。カードレコード62Rは、図8に示すように、カードID、収集期間、単位金額、最大スタンプ数N、対象店舗数S、対象店舗ID、カードイメージデータ、スタンプデータを含む。なお、カードレコード62Rは、上記以外の項目を含んでいてもよい。
カードIDは、電子スタンプカードの種類を識別するためにその種類毎に発行される一意のコードである。収集期間は、カードIDで特定される種類の電子スタンプカード(以下、当該カードと称する)に対してスタンプを収集可能な期間である。取引日時が有効期間内の取引はスタンプの付与対象となる。単位金額は、1つのスタンプの付与に必要な金額である。取引金額を単位金額で除算し、その商の整数がスタンプの付与数となる。したがって、カードIDで特定される電子スタンプカードのスタンプ発行条件は、収集期間内の取引でその取引金額が単位金額以上である場合に満足し、それ以外は満足しない。
最大スタンプ数Nは、当該カードで収集可能なスタンプの最大数である。対象店舗数Sは、当該カードを使用する店舗STの総数であり、対象店舗IDは、当該カードを使用する店舗STの店舗IDである。カードレコード62Rには、対象店舗数Sと等しい数の店舗IDが対象店舗IDとして記憶される。なお、同じ店舗IDが異なるカードレコード62Rの対象店舗IDとなることを禁止する。すなわち、1つの店舗が対象となる電子スタンプカードは1種類とする。1つの店舗が複数種類の電子スタンプカードを発行することはない。カードイメージデータは、当該カードのイメージデータであり、スタンプデータは、当該カードに付与されるスタンプのイメージデータである。
管理データベース63は、購買者に対して発行された電子スタンプカードと、その電子スタンプカードで収集したスタンプとを管理するためのレコード(以下、管理レコードと称する)63Rを保存するための領域である。管理レコード63Rは、図9に示すように、前述した会員ID、カードID、有効期間、単位金額及び最大スタンプ数Nに加えて、カード数及び収集スタンプ数nと、1から最大スタンプ数Nまでのスタンプ番号がそれぞれ設定された複数の番号エリアと、各スタンプ番号に対応付けられたID記述エリアと、満了フラグとを含む。
カード数は、対応する会員ID及びカードIDが共通の電子スタンプカードの枚数である。カードIDで特定される電子スタンプカードで収集したスタンプ数が最大スタンプ数Nに達すると、その購買者に対して新たな電子スタンプカードが発行される。その際、カード数は、1枚目の電子レシートカードについては“1”となり、2枚目の電子レシートカードについては“2”となる。収集スタンプ数nは、対応するカードIDで特定される電子レシートカードで収集したスタンプの数である。
一連のスタンプ番号がそれぞれ設定された各番号エリアは、収集したスタンプの記述エリアとなる。そして、各番号エリアにそれぞれ対応するID記述エリアは、対応する番号エリアに記述されたスタンプが発行されたレシートデータに含まれる店舗IDとレシートIDとを記述するエリアである。
満了フラグは、カードIDで特定される電子スタンプカードで収集したスタンプ数が最大スタンプ数Nに達したか否かを識別する1ビット情報である。満了フラグは、例えば、最大スタンプ数Nに達していない場合は“0”であり、最大スタンプ数Nに達すると“1”となる。
ここに、管理データベース63は、購買者特定情報(会員ID)とスタンプカードのデータとを関連付けて記憶する第2の記憶部として機能する。
図10〜図13は、センタサーバ1のプロセッサ11が連携プログラムに従って実行する主要な情報処理の手順を示す流れ図である。また、図14〜図16は、上記の情報処理により情報端末5のタッチパネル55に表示される種々の画面の一例である。以下、これらの図を用いて、センタサーバ1の動作について説明する。なお、以下に説明する動作は一例であり、同様な結果を得ることが可能であればその手順は特に限定されるものではない。
プロセッサ11が連携プログラムに従って実行する情報処理は、保存処理と閲覧処理とに区分される。保存処理は、主として、POS端末2からネットワーク3を経由して受信したレシートデータをレシートデータベース61に保存する処理である。閲覧処理は、主として、情報端末5からのリクエストにより、要求のあった電子レシートを当該情報端末5で閲覧できるように該当するレシートデータを当該情報端末5にダウンロードする処理である。なお、連携プログラムに従って実行する情報処理は、他の処理を含んでいてもよい。
始めに、保存処理について、図10及び図11を用いて説明する。
図10に示すようにプロセッサ11は、Act1として電子レシートデータERDを待ち受ける。前述したように電子レシートデータERDは、購買者が所持する情報端末5のタッチパネル55に表示されたホーム画面SC1のバーコードBCが、POS端末2の読取デバイス28で読み取られた場合にPOS端末2で生成され、センタサーバ1へと送信される。この電子レシートデータERDには、購買者を特定する購買者特定情報(会員ID)と当該購買者による購買の明細を示すレシートデータとを含む。
プロセッサ11は、通信インターフェース14を介していずれかのPOS端末2から送信された電子レシートデータERDを受信すると(Act1、YES)、Act2としてその電子レシートデータERDから新規のレシートレコード61Rxを生成してレシートデータベース61に保存する。すなわちプロセッサ11は、電子レシートデータERDから会員ID、店舗ID及びレシートデータを取得する。またプロセッサ11は、レシートデータを解析して、当該データに含まれるレシートID、取引日時及び取引金額を抽出する。そしてプロセッサ11は、会員ID、店舗ID、レシートID、取引日時、取引金額及びレシートデータでレシートレコード61Rxを生成し、レシートデータベース61に保存する。このときプロセッサ11は、Act3としてレシートレコード61Rxのスタンプ対象フラグを“0”とし、カードIDは未設定とする。
ここに、プロセッサ11を主体とするコンピュータは、連携プログラムに従ってAct1及びAct2の処理を実行することにより、取得手段及び追加手段として機能する。
プロセッサ11は、Act4としてスタンプカードデータベース62を検索する。そしてプロセッサ11は、Act5としてレシートレコード61Rxの店舗IDを対象店舗IDとし、かつ取引日時が収集期間内のカードレコード62Rxの有無を判定する。スタンプカードデータベース62から該当するカードレコード62Rxを検出できなかった場合(Act5、NO)、プロセッサ11は、保存処理を終了する。
プロセッサ11は、スタンプカードデータベース62から該当するカードレコード62Rxを検出できた場合には(Act5、YES)、Act6としてそのカードレコード62Rxから単位金額を検出し、ワークエリアAに格納する。またプロセッサ11は、Act7としてレシートレコード61Rxから取引金額を検出し、ワークエリアBに格納する。そしてプロセッサ11は、Act8としてワークエリアBに格納した取引金額がワークエリアAに格納した単位金額以上であるか否かを判定する。取引金額が単位金額に満たない場合(Act8、NO)、プロセッサ11は、保存処理を終了する。
プロセッサ11は、取引金額が単位金額以上であることを確認した場合(Act8、YES)、Act9として取引金額と単位金額とからスタンプ数を算出し、ワークエリアCに格納する。例えばプロセッサ11は、取引金額を単位金額で除算し、その商の整数をスタンプ数とする。なお、スタンプ数の算出方法は、これに限定されるものではない。例えば、レシートデータに含まれる買上商品の中に特定の商品が含まれている場合、スタンプ数を2倍としてもよい。
ここに、プロセッサ11を主体とするコンピュータは、連携プログラムに従ってAct4乃至Act9の処理を実行することにより、発行手段として機能する。
スタンプ数を算出し終えると、プロセッサ11は、Act10として管理データベース63を検索する。そしてプロセッサ11は、Act11としてレシートレコード61Rxに含まれる会員IDとカードレコード62Rxに含まれるカードIDとを含み、尚且つ満了フラグが“0”にリセットされている管理レコード63Rx1の有無を判定する。
プロセッサ11は、該当する管理レコード63Rx1を検出できなかった場合(Act11、NO)、Act12として新規スタンプカードの発行処理を行う。具体的にはプロセッサ11は、レシートレコード61Rxに含まれる会員IDと、カードレコード62Rxに含まれるカードID、収集期間、単位金額及び最大スタンプ数とで、新規のカードレコード62Rx2を作成する。このとき、カードレコード62Rx2において、カード数は“1”、収集スタンプ数nは“0”、満了フラグは“0”とする。また、各スタンプ番号に対応付けられたID記述エリアは空白とする。一方、該当する管理レコード63Rx1を検出できた場合には(Act11、YES)、プロセッサ11は、Act12の処理を実行しない。
Act12の処理により新規の管理レコード63Rx2を作成するか、Act11において該当する管理レコード63Rx1を検出できた場合、プロセッサ11は、図11のAct13として管理レコード63Rx1又は管理レコード63Rx2(以後、総称して管理レコード63Rxとする)から最大スタンプ数Nと収集スタンプ数nとを検出する。またプロセッサ11は、Act14としてワークエリアに格納したカウンタpを“0”にリセットする。
プロセッサ11は、Act15としてカウンタpを“1”だけカウントアップし、Act16としてこのカウンタpがワークエリアCのスタンプ数を超えたか否かを判断する。カウンタpがスタンプ数を超えていない場合(Act16、NO)、電子スタンプカードにスタンプが付与される。すなわちプロセッサ11は、Act17として収集スタンプ数nを“1”だけカウントアップする。そしてプロセッサ11は、Act18として収集スタンプ数nが最大スタンプ数Nを超えたか否かを確認する。収集スタンプ数nが最大スタンプ数Nを超えていない場合(Act18、NO)、プロセッサ11は、後述するAct19乃至Act21の処理を行わずに、Act22の処理へと進む。
Act22では、プロセッサ11は、管理レコード63Rxのスタンプ番号n(番号nは、収集スタンプ数nと同じ値)が設定されたエリアに、カードレコード62Rxのスタンプデータを記述する。またプロセッサ11は、Act23として管理レコード63Rxのスタンプ番号nに対応したID記述エリアに、レシートレコード61Rxの店舗IDとレシートIDとを記述する。
その後、プロセッサ11は、Act15の処理に戻る。すなわちプロセッサ11は、カウンタpを“1”だけカウントアップする。そしてカウンタpがスタンプ数以下の場合(Act16、NO)、プロセッサ11は、Act17乃至Act23の処理を実行する。
ここで、カウンタpがスタンプ数に達する前に、収集スタンプ数nが最大スタンプ数Nを超えた場合には(Act18、YES)、管理レコード63Rxで管理される電子スタンプカードは最大スタンプ数Nのスタンプが付与されたため、それ以上スタンプを付与できない。プロセッサ11は、Act19として管理レコード63Rxの満了フラグを“1”に更新する。またプロセッサ11は、追加スタンプカードの発行処理を行う。具体的にはプロセッサ11は、管理レコード63Rxに含まれる会員ID、カードID、収集期間、単位金額及び最大スタンプ数をコピーした新たな管理レコード63Ryを作成する。このとき、管理レコード63Ryのカード数は管理レコード63Rxのカード数に“1”を加算した値とする。収集スタンプ数nは“0”、満了フラグは“0”とする。また、各スタンプ番号に対応付けられたID記述エリアは空白とする。
プロセッサ11は、Act21として管理レコード63Ryの収集スタンプ数nを“1”とする。そしてプロセッサ11は、Act22及びAct23の処理を実行する。すなわちプロセッサ11は、管理レコード63Ryのスタンプ番号n(番号nは、収集スタンプ数nと同じ値)が設定されたエリアに、カードレコード62Rxのスタンプデータを記述する。またプロセッサ11は、管理レコード63Ryのスタンプ番号nに対応したID記述エリアに、レシートレコード61Rxの店舗IDとレシートIDとを記述する。その後、プロセッサ11は、Act15の処理に戻る。
ここにプロセッサ11を主体とするコンピュータは、連携プログラムに従ってAct15乃至Act23の処理を実行することにより、更新手段として機能する。
Act16において、カウンタpがスタンプ数を超えた場合(Act16、YES)、Act9の処理で算出されたスタンプ数のスタンプがスタンプカードに付与されるように管理レコード63Rx又は管理レコード63Ryが更新された。そこでプロセッサ11は、図10のAct24として管理レコード63Rx又は管理レコード63RyからカードIDを検出する。そしてプロセッサ11は、Act25としてレシートレコード61RxにそのカードIDを格納する。またプロセッサ11は、Act26としてレシートレコード61Rxのスタンプ対象フラグを“1”とする。以上で、プロセッサ11は、保存処理を終了する。
ここにプロセッサ11を主体とするコンピュータは、連携プログラムに従ってAct24及びAct25の処理を実行することにより、関連付け手段として機能する。
次に、閲覧処理について、図12〜図13を用いて説明する。
図12に示すようにプロセッサ11は、Act31としてレシートの一覧要求コマンドを待ち受ける。一覧要求コマンドは、情報端末5から出力される。すなわち情報端末5のユーザである購買者は、会員プログラムを起動する。会員プログラムが起動すると、タッチパネル55にホーム画面SC1が表示されるので、購買者は、レシートアイコンIC2にタッチする。レシートアイコンIC2がタッチされると、当該情報端末5からセンタサーバ1に、一覧要求コマンドが送信される。一覧要求コマンドには、情報端末5に記憶されている会員IDが含まれる。
一覧要求コマンドを受信したセンタサーバ1のプロセッサ11は、Act32としてレシート一覧画像を生成する。すなわちプロセッサ11は、レシートデータベース61を検索して、一覧要求コマンドに含まれる会員IDを含むレシートレコード61Raを全て検出する。そしてプロセッサ11は、各レシートレコード61Raの店舗ID又はその店舗IDから特定される店舗名と、レシートIDと、取引日時とを一覧にしたレシート一覧画像を作成する。プロセッサ11は、Act33としてレシート一覧画像のデータを一覧要求コマンド送信元の情報端末5へと送信するように通信インターフェース14を制御する。この制御により、一覧要求コマンドを送信した情報端末5においては、タッチパネル55にレシート一覧画像が表示される。
レシート一覧画像を確認した購買者は、そのレシート一覧の中から取引明細を確認したいレシートの表示行をタッチして選択操作を行う。レシートの表示行がタッチされると、当該情報端末5からセンタサーバ1に、レシートの閲覧要求コマンドが送信される。閲覧要求コマンドには、選択されたレシートの店舗ID及びレシートIDと、当該情報端末5に記憶されている会員IDとが含まれる。なお、レシート一覧画像を確認した購買者が終了操作を行った場合には、当該情報端末5からセンタサーバ1に、終了要求コマンドが送信される。
Act33において、レシート一覧画像の送信を制御したセンタサーバ1のプロセッサ11は、Act34として閲覧要求コマンドを受信したか否かを確認する。閲覧要求コマンドを受信していない場合(Act34、NO)、プロセッサ11は、Act35として終了要求コマンドを受信したか否かを確認する。終了要求コマンドを受信していない場合(Act35、NO)、プロセッサ11は、Act34に戻る。ここに、プロセッサ11は、Act34及びAct35の処理において、閲覧要求コマンドを受信するか終了要求コマンドを受信するのを待ち受ける。
Act34及びAct35の待ち受け状態において、閲覧要求コマンドを受信した場合(Act34、YES)、プロセッサ11は、Act36としてレシートデータベース61から閲覧要求のあったレシートデータを検出する。すなわちプロセッサ11は、閲覧要求コマンドに含まれる会員ID、店舗ID及びレシートIDが一致するレシートレコード61Rbを取得し、そのレシートレコード61Rbからレシートデータを検出する。
次いでプロセッサ11は、Act37としてレシートレコード61Rbのスタンプ対象フラグを調べる。ここで、スタンプ対象フラグが“1”、すなわち当該レシートデータがスタンプの発行条件を満足する場合には(Act37、YES)、プロセッサ11は、Act38としてレシートデータにスタンプ済ボタンの画像データを挿入する。これに対し、スタンプ対象フラグが“0”、すなわち当該レシートデータがスタンプの発行条件を満足しない場合には(Act37、NO)、プロセッサ11は、Act38の処理を実行しない。
Act38の処理を終えるか、Act37においてスタンプ発行条件を満足しないと判定された場合、プロセッサ11は、Act39としてレシート画像を作成する。すなわちプロセッサ11は、Act36の処理で検出したレシートデータを基に、紙レシートと同様のレシートを表す画像を作成する。プロセッサ11は、Act40としてレシート画像のデータを閲覧要求コマンド送信元の情報端末5へと送信するように通信インターフェース14を制御する。この制御により、閲覧要求コマンドを送信した情報端末5においては、タッチパネル55にレシート画像が表示される。
図14は、レシート画像IM1が表示されたタッチパネル55の画面SC2の一例である。画面SC2には、スタンプの発行条件を満足したレシートデータに対するレシート画像IM1が表示されている。また、この例は、スタンプの発行条件を満足しているため、レシート画像IM1とともに、スタンプ済ボタンBT1の画像も画面SC2に表示されている。
レシート画像IM1を確認した購買者は、このレシートデータで発行されたスタンプを収集している電子スタンプカードを確認することが可能である。確認する場合、購買者は、スタンプ済ボタンBT1をタッチする。確認しない場合には、購買者は、図示しない終了ボタンにタッチする。スタンプ済ボタンBT1がタッチされた場合、情報端末5からセンタサーバ1に対してスタンプ要求コマンドが送信される。終了ボタンがタッチされた場合には、情報端末5からセンタサーバ1に対して終了要求コマンドが送信される。
Act40において、レシート画像の送信を制御したセンタサーバ1のプロセッサ11は、Act41としてスタンプ要求コマンドを受信したか否かを確認する。スタンプ要求コマンドを受信していない場合(Act41、NO)、プロセッサ11は、Act42として終了要求コマンドを受信したか否かを確認する。終了要求コマンドを受信していない場合(Act42、NO)、プロセッサ11は、Act41に戻る。ここに、プロセッサ11は、Act41及びAct42の処理において、スタンプ要求コマンドを受信するか終了要求コマンドを受信するのを待ち受ける。
Act41及びAct42の待ち受け状態において、スタンプ要求コマンドを受信した場合(Act41、YES)、プロセッサ11は、図13のAct43として、Act39の処理でレシート画像の作成に用いたレシートデータを含むレシートレコード61Rbから会員ID、店舗ID、レシートID及びカードIDを検出する。そしてプロセッサ11は、Act44として管理データベース63を検索して、会員ID及びカードIDがAct43の処理で検出したものと一致し、尚且つ、Act43の処理で検出した店舗IDとレシートIDとがいずれかのID記述エリアに記憶された管理レコード63Rbを検出する。またプロセッサ11は、Act45としてスタンプカードデータベース62を検索し、管理レコード63RbのカードIDを含むカードレコード62Rbを検出する。
プロセッサ11は、Act46としてカードレコード62Rbのカードイメージデータで電子スタンプカードの画像を生成する。そしてプロセッサ11は、Act47としてその電子スタンプカードの画像に、当該カードで収集したスタンプデータを付与する。具体的には、電子スタンプカードの画像には、最大スタンプ数N個のスタンプ枠が形成されており、各スタンプ枠には一連の枠番号が割り当てられている。プロセッサ11は先ず、管理レコード63Rbのスタンプ番号が“1”のエリアにスタンプデータが記述されている場合、そのスタンプデータに基づくスタンプ画像を、第1の色で、枠番号“1”が割り当てられたスタンプ枠内に表示させる。次いでプロセッサ11は、管理レコード63Rbのスタンプ番号が“2”のエリアにスタンプデータが記述されている場合、そのスタンプデータに基づくスタンプ画像を、枠番号“2”が割り当てられたスタンプ枠内に表示させる。このときプロセッサ11は、スタンプ番号が“1”のエリアに対応するID記述エリアに記述されている店舗ID及びレシートIDと、スタンプ番号が“2”のエリアに対応するID記述エリアに記述されている店舗ID及びレシートIDとが一致するか否かを判定する。そして一致する場合、プロセッサ11は、枠番号“2”が割り当てられたスタンプ枠内のスタンプ画像を第1の色で表示する。一致しない場合には、プロセッサ11は、枠番号“2”が割り当てられたスタンプ枠内のスタンプ画像を第2の色で表示する。第2の色は、第1の色と異なる。以後、プロセッサ11は、管理レコード63Rbのスタンプ番号が“3”、“4”、“5”…の各エリアに記述されているスタンプデータについて、同様の処理を実行する。そしてその場合も、直前の番号エリアに対応するID記述エリアに記述されている店舗ID及びレシートIDと一致しない場合にはスタンプ画像の色を変える。
こうして、プロセッサ11は、スタンプデータが付与された電子スタンプカード画像を作成したならば、Act48として電子スタンプカード画像のデータをスタンプ要求コマンド送信元の情報端末5へと送信するように通信インターフェース14を制御する。この制御により、スタンプ要求コマンドを送信した情報端末5においては、タッチパネル55に電子スタンプカード画像が表示される。
図15は、電子スタンプカード画像IM2が表示されたタッチパネル55の画面SC3の一例である。画面SC3には、15個のスタンプ枠SFを有するスタンプカードにおいて、合計6個のスタンプが付与された電子スタンプカード画像IM2が表示されている。スタンプ枠SFは、左上を枠番号“1”とし、その右隣を枠番号“2”とする。そして枠番号“1”から“3”までのスタンプ枠には第1の色のスタンプが表示され、枠番号“4”と“5”のスタンプ枠には第2の色のスタンプが表示され、枠番号“6”のスタンプ枠には第3の色のスタンプが表示されている場合を示している。また、画面SC3には、電子スタンプカード画像IM2とともにスタンプ履歴ボタンBT2の画像も表示されている。また、スタンプを最大スタンプ数まで収集したときに得られる特典を示すメッセージMSも表示されている。なお、スタンプは、説明の便宜上、円の枠内に文字「済」を表示させたものとしている。そして、枠内のハッチングの有無、又はハッチングの向きにより色の違いを表わしている。
電子スタンプカード画像IM2を確認した購買者は、いずれかのスタンプの発行対象となった取引の購買記録であるレシートを確認することが可能である。また、電子スタンプカードに発行されたスタンプの履歴を確認することも可能である。レシートを確認する場合、購買者は、そのスタンプにタッチする。履歴を確認する場合、購買者は、スタンプ履歴ボタンBT2にタッチする。スタンプがタッチされた場合、情報端末5からセンタサーバ1に対してスタンプ選択コマンドが送信される。スタンプ選択コマンドには、タッチされたスタンプが付与されているスタンプ枠の枠番号が含まれる。一方、スタンプ履歴ボタンBT2がタッチされた場合には、情報端末5からセンタサーバ1に対してスタンプ履歴要求コマンドが送信される。
Act48において、スタンプカード画像の送信を制御したセンタサーバ1のプロセッサ11は、Act49としてスタンプ選択コマンドを受信したか否かを確認する。スタンプ選択コマンドを受信していない場合(Act49、NO)、プロセッサ11は、Act50としてスタンプ履歴要求コマンドを受信したか否かを確認する。スタンプ履歴要求コマンドを受信していない場合(Act50、NO)、プロセッサ11は、Act49に戻る。ここに、プロセッサ11は、Act49及びAct50の処理において、スタンプ選択コマンドを受信するかスタンプ履歴要求コマンドを受信するのを待ち受ける。
Act49及びAct50の待ち受け状態において、スタンプ履歴コマンドを受信した場合(Act50、YES)、プロセッサ11は、Act51として管理レコード63Rbのデータを基にスタンプ履歴画像を生成する。具体的にはプロセッサ11は、管理レコード63Rbから会員IDを取得する。またプロセッサ11は、スタンプ番号の順番に、その番号エリアに対応するID記述エリアに記述されている店舗IDとレシートIDとを取得する。そしてプロセッサ11は、レシートデータベース61を検索して、当該会員ID、店舗ID及びレシートIDを含むレシートレコード61cを検出する。そしてプロセッサ11は、そのレシートレコード61cの取引日時と、店舗IDで識別される店舗名と、スタンプの個数とを一覧としたスタンプ履歴画像を生成する。スタンプの個数は、スタンプ番号の順番に連続して同一の店舗IDとレシートIDとが記述されているID記述エリアの数である。
こうしてプロセッサ11は、スタンプ履歴画像を生成したならば、Act52としてスタンプ履歴画像のデータを履歴要求コマンド送信元の情報端末5へと送信するように通信インターフェース14を制御する。この制御により、履歴要求コマンドを送信した情報端末5においては、タッチパネル55にスタンプ履歴画像が表示される。
図16は、スタンプ履歴画像IM3が表示されたタッチパネル55の画面SC4の一例である。画面SC4には、スタンプ履歴画像IM3が表示されている。スタンプ履歴画像IM3は、例えばXX店での買物によって3個のスタンプが付与され、YY店での買物によって2個のスタンプが付与され、さらにXX店での別の買物によって1個のスタンプが付与されたことを示している。また、画面SC4には、スタンプ履歴画像IM3とともに確認ボタンBT3の画像も表示されている。
スタンプ履歴画像IM3を確認した購買者は、確認ボタンBT3にタッチする。確認ボタンBT3がタッチされると、情報端末5からセンタサーバ1に対して確認コマンドが送信される。
Act52において、スタンプ履歴画像の送信を制御したセンタサーバ1のプロセッサ11は、Act53として確認コマンドを待ち受ける。そして情報端末5から確認コマンドを受信すると(Act53、YES)、プロセッサ11は、Act54として、Act48の処理で送信したスタンプカード画像を情報端末5へと再度送信するように通信インターフェース14を制御する。この制御により、確認ボタンBT3がタッチされた情報端末5においては、タッチパネル55に電子スタンプカード画像が再び表示される。
Act54において、スタンプカード画像の再送信を制御したセンタサーバ1のプロセッサ11は、Act49及びAct50の待ち受け状態に戻る。
Act49及びAct50の待ち受け状態において、スタンプ選択コマンドを受信した場合には(Act49、YES)、プロセッサ11は、Act55として管理レコード63Rbから会員IDを検出する。またプロセッサ11は、管理レコード63Rbにおいて、スタンプ選択コマンドに含まれる枠番号のスタンプ番号エリアに対応したID記述エリアに記述されている店舗IDとレシートIDとを検出する。
プロセッサ11は、Act56としてレシートデータベース61を検索し、当該会員ID、店舗ID及びレシートIDが一致するレシートレコード61Rcを取得する。そしてプロセッサ11は、そのレシートレコード61Rbからレシートデータを検出する。さらにプロセッサ11は、Act57としてレシート画像を作成する。そしてプロセッサ11は、Act58としてレシート画像のデータをスタンプ選択コマンド送信元の情報端末5へと送信するように通信インターフェース14を制御する。この制御により、スタンプ選択コマンドを送信した情報端末5においては、タッチパネル55に、選択操作されたスタンプが発行されたときのレシート画像が表示される。
Act58において、レシート画像の送信を制御したセンタサーバ1のプロセッサ11は、Act41及びAct42の待ち受け状態に戻る。
なお、Act34及びAct35の待ち受け状態、あるいはAct41及びAct42の待ち受け状態において、終了要求コマンドを受信した場合には(Act35又はAct42、YES)、プロセッサ11は、この閲覧処理を終了する。また、Act49及びAct50の待ち受け状態において、終了要求コマンドを受信した場合にも、プロセッサ11は、この閲覧処理を終了するようにしてもよい。
ここにプロセッサ11を主体とするコンピュータは、連携プログラムに従ってAct34乃至Act58の処理を実行することにより、制御手段として機能する。
このように本実施形態によれば、購買者は、情報端末5を用いることで、電子レシートの画像IM1を閲覧できるとともに、その電子レシートに関連付けられた電子スタンプカードの画像IM2を閲覧することができる。電子レシートに関連付けられた電子スタンプカードとは、当該電子レシートが発行された取引の内容から付与されたスタンプを収集している電子スタンプカードを示す。購買者は、電子レシート画像IM1に表示されたスタンプ済ボタンBT1をタッチするだけで、電子スタンプカードの画像IM2を閲覧することができる。したがって、電子レシートシステムと電子スタンプカードシステムとを効率よく連携することができる。
また、上述したように、スタンプが発行された取引に係る電子レシートの画像IM1には、スタンプ済ボタンBT1が表示される。したがって購買者は、スタンプ済ボタンBT1が表示されるか否かによって、スタンプが発行された取引に係る電子レシートであるか否かを容易に識別することができる。
電子スタンプカードの画像IM2は、スタンプカードのスタンプ枠SF内にスタンプが銘々押印された状態を示す画像となっている。そして、本実施形態によれば、いずれかのスタンプをタッチ操作することによって、そのスタンプが発行された取引の電子レシートの画像が情報端末5のタッチパネル55に表示されるようになっている。したがって、購買者は、電子スタンプカードの画像IM2から、スタンプが発行された取引のレシートの画像IM1を容易に確認できるメリットもある。
その上、スタンプ枠SF内に表示されるスタンプの画像は、同一取引で発行された複数のスタンプは同一色となり、別の取引で発行されたスタンプは別の色となるようにコントロールされている。したがって購買者は、同一取引で発行されたスタンプなのか、別の取引で発行されたスタンプなのかを容易に識別できるメリットもある。
以下、前記実施形態の変形例について説明する。
前記実施形態では、センタサーバ1がレシートデータからレシートID及び取引日時を抽出するものとした。この点に関しては、各POS端末2において、プロセッサ21が電子レシートデータERDを生成する際にレシートデータからレシートID及び取引日時を抽出する。そしてプロセッサ21が、このレシートID及び取引日時と、会員ID、店舗ID及びレシートデータとから電子レシートデータERDを生成して、センタサーバ1に送信してもよい。
前記実施形態では、スタンプカードを複数の店舗が共用する場合を例示した。この点に関しては、店舗毎に異なるスタンプカードを使用するものとしてもよい。その場合、カードレコード62Rから対象店舗数Sを省略できる。
前記実施形態では、センタサーバ1のプロセッサ11は、Act8として取引金額が単位金額以上であるか否かを判断した。この点に関しては、取引金額が単位金額よりも大きいか否かを判断してもよい。この場合、取引金額が単位金額よりも大きい場合にAct9の処理に進み、取引金額が単位金額以下の場合には、保存処理を終了することとなる。
前記実施形態では、スタンプの発行条件を取引の期間と金額とした。発行条件はこれに限定されるものではない。例えば特定の商品が購入されたか否かを発行条件としてもよい。
前記実施形態では、POS端末2のプロセッサ21は、ホーム画面SC1のバーコードBCが読取デバイス28を介して読み取られている場合、電子レシート処理を行うと判定した。別の実施形態としては、バーコードBCによって表されている会員IDと関連付けられたポイントカード等のカード番号がカードリーダで読み取られることによって、電子レシート処理を行うと判定してもよい。
なお、データ処理装置であるセンタサーバ1の譲渡は一般に、連携プログラム等のプログラムがメインメモリ12または補助記憶デバイス13の記憶部に記憶された状態にて行われる。しかしこれに限らず、連携プログラムが記憶部に記憶されていない状態で譲渡されてもよい。そしてこの場合は、センタサーバ1が備える書き込み可能な記憶デバイスに、このセンタサーバ1とは個別に譲渡された連携プログラム等がユーザなどの操作に応じて書き込まれてもよい。連携プログラム等の譲渡は、リムーバブルな記録媒体に記録して、あるいはネットワークを介した通信により行うことができる。記録媒体は、CD−ROM,メモリカード等のようにプログラムを記憶でき、かつ装置が読み取り可能であれば、その形態は問わない。また、プログラムのインストールやダウンロードにより得る機能は、装置内部のOS(オペレーティング・システム)等と協働してその機能を実現させるものであってもよい。
この他、本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。