(57)【要約】  既存のシステムに対しても容易に導入可能な簡素な構成により、印刷物の偽造を防止するために、ＰＯＳ端末２から送信される印刷データに基づいてレシートを印刷するプリンター３は、印刷データに基づいてレシート毎に固有の固有コードを生成するコード生成部３３と、印刷データに基づいてレシートを印刷するとともに、レシートに固有コードを印刷する印刷制御部３１および印刷ユニット４５と、固有コードをレシート履歴サーバー６に出力するコード送信部３４と、を備える。
2014091709.tif 000002
【特許請求の範囲】
【請求項１】
ホスト装置から送信される印刷データに基づいて帳票を印刷する印刷装置であって、
前記印刷データに基づいて、前記帳票毎に固有の帳票情報を生成する情報生成手段と、
前記印刷データに基づいて前記帳票を印刷するとともに、前記帳票に前記帳票情報を印刷する印刷手段と、
前記帳票情報を外部の装置に出力する出力手段と、
を備えたことを特徴とする印刷装置。
【請求項２】
前記出力手段は、前記ホスト装置から送信された前記印刷データを前記外部の装置に送信する機能を備え、１帳票分の前記印刷データの区切り毎に、前記帳票情報を生成して送信することを特徴とする請求項１記載の印刷装置。
【請求項３】
前記帳票情報の前記帳票への印刷、または、前記印刷データの送信の少なくともいずれかの動作に関する設定を記憶する設定記憶手段と、
前記ホスト装置から送信されるコマンドに基づいて前記設定記憶手段に記憶される設定を変更する設定変更手段と、を備え、
前記印刷手段は、前記設定記憶手段が記憶した設定に従って、前記帳票に前記帳票情報を印刷し、
前記出力手段は、前記設定記憶手段が記憶した設定に従って、前記帳票情報を外部の装置に出力すること、
を特徴とする請求項１または２記載の印刷装置。
【請求項４】
前記出力手段は、前記印刷手段による１帳票の印刷が完了する毎に、印刷完了の通知を前記外部の装置に出力する機能を備えることを特徴とする請求項１から３のいずれかに記載の印刷装置。
【請求項５】
前記印刷手段により印刷された前記帳票をカットするオートカッターを備え、
前記出力手段は、前記ホスト装置から送信された前記オートカッターの動作を指示するコマンドを実行した後に前記オートカッターのエラーを検出しない場合に、印刷完了と判定して前記印刷完了の通知を出力することを特徴とする請求項４記載の印刷装置。
【請求項６】
前記出力手段は、前記ホスト装置から送信された前記オートカッターの動作を指示するコマンドを実行した後、前記オートカッターの一連の動作が完了するまでの間にエラーを検出しなかった場合に、印刷完了と判定することを特徴とする請求項５記載の印刷装置。
【請求項７】
請求項１から６のいずれかに記載の印刷装置と、
前記印刷装置から出力される帳票情報を記憶するデータベース、判定対象の帳票に印刷された帳票情報を読み取る読取手段、および、前記読取手段の読取結果を前記データベースに記憶された前記帳票情報と比較することにより、前記読取結果の判定を行う判定手段を有するサーバー装置と、
を備えたことを特徴とする印刷システム。
【請求項８】
前記サーバー装置は、
前記印刷装置から出力される前記帳票情報を取得する帳票情報取得手段と、
前記印刷装置から印刷完了の通知が出力された場合に、前記帳票情報取得手段により取得された前記帳票情報を前記データベースに記憶させるデータベース制御手段と、を備えることを特徴とする請求項７記載の印刷システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、印刷装置、および、印刷システムに関する。
【背景技術】
【０００２】
従来、印刷物に偽造防止用の情報を印刷する装置が知られている（例えば、特許文献１参照）。特許文献１記載の装置は、ＰＯＳ端末に接続されたレシート印刷装置によってレシートを印刷する際に、印刷される会計情報の一部を暗号化した暗号化情報を不可視のインクにより印刷する。この暗号化情報は、専用のスキャナーにより読み取られて復号され、復号された会計情報の内容が適正であるか否かに基づき、レシートの真贋が判定される。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１１−２０４３９号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１記載の構成では、偽造防止用に暗号化情報を用い、真贋の判定を行う際に復号を必要としていた。このため、処理の負荷が大きいため高性能の装置が必要であった。また、暗号化と復号を異なる装置で行うため鍵情報の管理が必要であり、例えば既存のＰＯＳ端末を備えたシステムに後付けで導入することは容易ではなかった。このように、より簡素で導入容易な構成により、印刷物の偽造防止を図ることが望まれていた。
本発明は、上述した事情に鑑みてなされたものであり、既存のシステムに対しても容易に導入可能な簡素な構成により、印刷物の偽造を防止することを目的とする。
【課題を解決するための手段】
【０００５】
上記目的を達成するために、本発明は、ホスト装置から送信される印刷データに基づいて帳票を印刷する印刷装置であって、前記印刷データに基づいて、前記帳票毎に固有の帳票情報を生成する情報生成手段と、前記印刷データに基づいて前記帳票を印刷するとともに、前記帳票に前記帳票情報を印刷する印刷手段と、前記帳票情報を外部の装置に出力する出力手段と、を備えたことを特徴とする。
本発明によれば、ホスト装置から送信された印刷データに基づいて帳票毎に固有の帳票情報を生成し、この帳票情報を外部の装置に出力するので、ホスト装置の構成に影響を与えることなく、外部の装置において帳票情報に基づき帳票が真正か否かを判定できる。これにより、既存のホスト装置に本発明の印刷装置を接続することで、印刷装置が印刷する帳票が真正か否かを容易に判定可能となり、印刷物の偽造に対する抑止効果が期待できる。【０００６】
上記構成において、前記出力手段は、前記ホスト装置から送信された前記印刷データを前記外部の装置に送信する機能を備え、１帳票分の前記印刷データの区切り毎に、前記帳票情報を生成して送信するものとしてもよい。
この場合、外部の装置に対して印刷データと帳票情報とを送信するので、ホスト装置の構成に影響を与えることなく、外部の装置において、帳票情報に基づいて帳票が真正か否かを判定でき、かつ、帳票に印刷された内容に基づいて真贋を判定できる。【０００７】
また、上記構成において、前記帳票情報の前記帳票への印刷、または、前記印刷データの送信の少なくともいずれかの動作に関する設定を記憶する設定記憶手段と、前記ホスト装置から送信されるコマンドに基づいて前記設定記憶手段に記憶される設定を変更する設定変更手段と、を備え、前記印刷手段は、前記設定記憶手段が記憶した設定に従って、前記帳票に前記帳票情報を印刷し、前記出力手段は、前記設定記憶手段が記憶した設定に従って、前記帳票情報を外部の装置に出力する構成としてもよい。
この場合、帳票情報を帳票に印刷する動作、および、印刷データの送信の動作を、事前の設定に従って実行させることができる。また、帳票情報を帳票に印刷する動作の要否、印刷データの送信の要否について、ホスト装置からコマンドを送信することにより、容易に設定を行うことができる。【０００８】
また、上記構成において、前記出力手段は、前記印刷手段による１帳票の印刷が完了する毎に、印刷完了の通知を前記外部の装置に出力する機能を備える構成としてもよい。
この場合、外部の装置に対して印刷が完了したことを通知するので、印刷に失敗したり印刷がされなかったりした帳票に関する帳票情報を、外部の装置において適切に処理できる。例えば、外部の装置において印刷が完了した帳票の帳票情報のみを真贋の判定に用いることにより、印刷されなかった帳票の偽造を防止できる。これにより、真贋の判定の精度をより一層高めることができる。【０００９】
また、上記構成において、前記印刷手段により印刷された前記帳票をカットするオートカッターを備え、前記出力手段は、前記ホスト装置から送信された前記オートカッターの動作を指示するコマンドを実行した後に前記オートカッターのエラーを検出しない場合に、印刷完了と判定して前記印刷完了の通知を出力する構成としてもよい。
この場合、オートカッターの動作に基づいて帳票の印刷が完了したか否かを適切に判断できるので、印刷の完了に関する正確な通知を外部の装置に出力できる。これにより、外部の装置において、より高精度で帳票が真正か否かを判定できる。【００１０】
また、上記構成において、前記出力手段は、前記ホスト装置から送信された前記オートカッターの動作を指示するコマンドを実行した後、前記オートカッターの一連の動作が完了するまでの間にエラーを検出しなかった場合に、印刷完了と判定してもよい。
この場合、オートカッターの動作に基づいて帳票の印刷が完了したか否かを適切に判断できるので、印刷の完了に関する正確な通知を外部の装置に出力できる。これにより、外部の装置において、より高精度で帳票が真正か否かを判定できる。【００１１】
また、上記目的を達成するために、本発明は、上記のいずれかに記載の印刷装置と、前記印刷装置から出力される帳票情報を記憶するデータベース、判定対象の帳票に印刷された帳票情報を読み取る読取手段、および、前記読取手段の読取結果を前記データベースに記憶された前記帳票情報と比較することにより、前記読取結果の判定を行う判定手段を有するサーバー装置と、を備えたことを特徴とする。
本発明によれば、ホスト装置から送信された印刷データに基づいて帳票毎に固有の帳票情報を生成し、この帳票情報をサーバー装置が記憶し、ホスト装置の構成に影響を与えることなく、サーバー装置が帳票情報に基づいて帳票が真正か否かを判定することができる。これにより、既存のホスト装置に本発明の印刷システムを接続することで、印刷装置が印刷する帳票が真正か否かを容易に判定可能となり、印刷物の偽造に対する抑止効果が期待できる。【００１２】
上記構成において、前記サーバー装置は、前記印刷装置から出力される前記帳票情報を取得する帳票情報取得手段と、前記印刷装置から印刷完了の通知が出力された場合に、前記帳票情報取得手段により取得された前記帳票情報を前記データベースに記憶させるデータベース制御手段と、を備える構成としてもよい。
この場合、サーバー装置が、印刷が完了した帳票に関する帳票情報をデータベースに記憶するので、印刷が完了しなかった帳票に関する帳票情報が記憶されない。このため、印刷が完了した帳票の帳票情報が判定に用いられるので、印刷が完了しなかった帳票の偽造を防止できる。これにより、真贋の判定の精度をより一層高めることができる。
【発明の効果】
【００１３】
本発明によれば、既存のホスト装置の構成を変更することなく、印刷される帳票が真正か否かを容易に判定可能となり、印刷物の偽造に対する抑止効果が期待できる。
【図面の簡単な説明】
【００１４】
【図１】本発明の実施形態に係る印刷システムの機能ブロック図である。
【図２】レシートデータベースに記憶される情報の構成例を模式的に示す図である。
【図３】プリンターが出力するレシートの一例を示す図である。
【図４】印刷システムの動作を示すフローチャートである。
【図５】レシート履歴サーバーの動作を示すフローチャートである。
【発明を実施するための形態】
【００１５】
（実施形態１）
以下、図面を参照して本発明の実施形態について説明する。
図１は、本発明を適用した実施形態に係る印刷システム１の構成を示す図である。印刷システム１は、小売店舗等の各種店舗において使用される、いわゆるＰＯＳシステムの一態様を構成する。印刷システム１は、例えば店舗のレジカウンターに設置されるＰＯＳ端末２、ＰＯＳ端末２に接続されてレシート（帳票）を印刷するプリンター３（印刷装置）、および、レシート履歴サーバー６（外部の装置、サーバー装置）を備えている。通信ネットワーク１０は、プリンター３とレシート履歴サーバー６を相互にデータ通信可能に接続する通信回線であり、例えば店舗内に敷設されたＬＡＮである。通信ネットワーク１０は、インターネット等の広域に設置された通信ネットワークであってもよく、この場合は、遠隔地を含む複数の店舗に設置されたプリンター３とレシート履歴サーバー６とを接続できる。
本実施形態の印刷システム１は複数のＰＯＳ端末２およびプリンター３を備え、一つのＰＯＳ端末２と一つのプリンター３とが組み合わされて、一つのレジカウンターに設置される。複数のＰＯＳ端末２は同様に構成され、複数のプリンター３は同様に構成されているため、図１には１つのＰＯＳ端末２およびプリンター３について機能的構成を図示している。
【００１６】
印刷システム１は、ＰＯＳ端末２に対し、本発明の印刷システムを構成するプリンター３およびレシート履歴サーバー６を接続した構成である。この印刷システム１は、例えば、ＰＯＳ端末２を含めて全体として新規に構築してもよいが、既存のＰＯＳ端末２にプリンター３を接続し、通信ネットワーク１０を敷設してレシート履歴サーバー６を接続することで実現できる。この場合、ＰＯＳ端末２に接続されていた旧来のプリンター（図示略）が取り外され、プリンター３が置き換えられる。プリンター３が、ＰＯＳ端末２が旧来のプリンターに対して出力していたコマンドやデータに基づいて動作可能であれば、ＰＯＳ端末２のソフトウェアおよびハードウェアを何も変更しないで、印刷システム１を構築できる。この場合、ＰＯＳ端末２は、商品販売に関する会計処理と、会計処理の結果を含むレシートを印刷するための印刷データを出力する処理とを行うだけで、プリンター３およびレシート履歴サーバー６が本発明を適用した印刷システム１として機能する。
【００１７】
印刷システム１は、ＰＯＳ端末２が出力（送信）する印刷データに基づいて、プリンター３がレシートを印刷出力する。また、プリンター３は、レシート１枚毎に固有コードを生成して、生成した固有コードをレシートに印刷し、かつ、通信ネットワーク１０を介してレシート履歴サーバー６へ出力（送信）する。プリンター３が生成する固有コードは、印刷システム１を構成するプリンター３が発行したレシートと、それ以外の印刷物とを区別（識別）するための情報である。例えば、ある顧客が、印刷システム１が設置された店舗で買い物をした記録としてレシートを提示した場合に、そのレシートが当該店舗で発行されたものか否かを判定できる。また、例えば、提示されたレシートが偽造されたレシートか、真正のレシートかを判定する用途にも利用できる。つまり、印刷システム１は、印刷システム１で発行したレシートと他の印刷物との識別を行う機能を有し、この機能の一つの利用方法として、レシートが真正か否かの判定を行うことができる。以下の説明では、印刷システム１を利用してレシートが真正か否かを判定する場合を例に挙げて説明する。
以下の説明で、「真正のレシート」は、印刷システム１を構成するプリンター３により印刷出力されたレシートを指す。「真贋の判定」とは、印刷システム１のプリンター３で印刷されたレシートと、それ以外の印刷物とを区別する処理を指す。また、「偽のレシート」は、印刷システム１のプリンター３で印刷したものではない印刷物を指す言葉であり、悪意により作成または偽造されたレシートに限定する意図はない。
【００１８】
プリンター３が生成する固有コードは、各レシートに固有の情報である。プリンター３は、生成した固有コードをバーコード化してレシートに印刷する。レシート履歴サーバー６は、プリンター３から送信された固有コードを受信して、後述するレシートデータベース（ＤＢ）６５に記憶する。この動作は印刷システム１の複数のプリンター３がそれぞれ実行するので、レシート履歴サーバー６には、複数のプリンター３が発行したレシートに関する固有コードが送信され、レシートデータベース６５に蓄積される。
レシート履歴サーバー６は、レシートの真贋を判定する動作を行う。レシート履歴サーバー６はバーコードスキャナー７を備えていて、真贋を判定する対象のレシートに印刷されたバーコードを読み取ることにより、このレシートに印刷された固有コードを取得する。レシート履歴サーバー６は、読み取った固有コードに一致する固有コードが、レシートデータベース６５に記憶されているか否かを判定する。レシート履歴サーバー６は、ロール紙に文字および／又は画像を印刷する印刷ユニット６９を備えているので、判定結果を印刷出力する。例えば、レシート履歴サーバー６は、印刷システム１を構成するプリンター３が印刷したレシートであると判定した場合は記号「○」を印刷し、プリンター３が印刷したレシートではないと判定した場合には「−」等の記号を印刷する。
【００１９】
ＰＯＳ端末２は、販売する商品を登録するためのバーコードリーダー、キー操作部、顧客向けに金額を表示するカスタマーディスプレイ、現金を収納するキャッシュドロワー、及び、クレジットカード等の磁気カードを読み取るカードリーダー等の図示しない構成を備えている。ＰＯＳ端末２の主な機能は、例えば、店舗に設けられたレジカウンターにおいて商品販売時に顧客が購入する商品代金の集計、合計代金の表示、預かり金に対する釣り銭の計算、クレジットカードによる精算処理、現金やクレジットカードによる支払い完了後に取引内容を示すレシートを印刷するための取引情報の出力等である。ここで、取引情報とは、商品を販売した店舗名等の店舗情報、販売した商品名、商品のカテゴリーや商品の単価等の商品情報、合計金額、預かり金額、釣り銭金額等の金額情報等を含み、これらはＰＯＳ端末２からプリンター３に対し、印刷データとして出力される。プリンター３は、ＰＯＳ端末２から入力される印刷データに基づき、内蔵するロール紙（図示略）に印刷を行ってレシートを発行する。
【００２０】
ＰＯＳ端末２は、図示しないＣＰＵ、ＲＯＭ、ＲＡＭ、フラッシュメモリーまたはハードディスク装置を有する記憶装置を内蔵し、ＣＰＵによりＯＳ（オペレーティングシステム）２０を実行してＰＯＳ端末２の各部を制御する。また、ＰＯＳ端末２は、ＯＳ２０上でＰＯＳアプリケーションプログラム２１をＣＰＵにより実行して、上記のＰＯＳ端末としての機能を実現する。
ＰＯＳ端末２には、ＯＳ２０の一部を構成するプリンタードライバー２３がインストールされている。プリンタードライバー２３は、プリンター３により印刷を実行するためのデバイスドライバープログラムである。プリンタードライバー２３は、ＰＯＳアプリケーションプログラム２１が生成した取引情報を所定の形態で印刷するための印刷データをプリンター３に出力する。
プリンタードライバー２３が出力する印刷データは、レシートに印刷されるデータと、このデータを印刷するための各種コマンドを含んでいる。具体的には、印刷データは、ＰＯＳ端末２が設置された店舗のロゴ等の定型情報と、ＰＯＳアプリケーションプログラム２１が生成した取引情報とを印刷するための文字データや画像データを含む。また、印刷データは、印刷実行を指示する印刷コマンド、印刷形態を指定するコマンド、後述するオートカッターユニットによる切断を指示するオートカッターコマンド等のコマンドを含む。
【００２１】
プリンター３は、図示しないＣＰＵ、ＲＯＭ、ＲＡＭ等を備えた制御部３０を有し、この制御部３０により各部を制御する。プリンター３は、通信ネットワーク１０に接続され、この通信ネットワーク１０を介してレシート履歴サーバー６との間で各種データを送受信する通信インターフェイス（Ｉ／Ｆ）４１を備えている。また、プリンター３は、ＰＯＳ端末２や、その他の装置に接続される外部インターフェイス（Ｉ／Ｆ）４２、印刷ヘッドや搬送ローラー等を備えている。さらに、プリンター３は、ロール紙（図示略）に文字や画像を印刷する印刷ユニット４５、および、印刷ユニット４５により印刷されたロール紙を切断するオートカッターユニット４６（オートカッター）を備えている。
また、プリンター３は、フラッシュメモリーまたはハードディスク装置を有する記憶装置を内蔵し、この記憶装置の記憶領域に、ＰＯＳ端末２から入力された印刷データ等を記憶するレシートデータ記憶部４３、および、プリンター３の動作に係る設定状態を記憶する設定記憶部４４（設定記憶手段）が設けられている。設定記憶部４４は、各種の設定値を不揮発的に記憶する、いわゆるメモリースイッチである。
設定記憶部４４に記憶される設定値は、ＰＯＳ端末２からプリンター３に設定コマンドを送信することで、設定可能である。具体的には、ＰＯＳ端末２からプリンター３に対し、設定値の設定を指示するコマンドに、設定対象の設定値の種類を示すパラメーター、及び、設定する設定値を示すパラメーターを送信する。制御部３０は、ＰＯＳ端末２から送信されたコマンド及びパラメーターを受信して、設定記憶部４４に記憶している設定値を書き換える。これにより、レシートの固有コードに関するプリンター３の動作を、ＰＯＳ端末２によって設定できる。この処理は、ＰＯＳ端末２に、該当する設定コマンドをプリンター３に送信する機能を持たせることで実現可能である。ＰＯＳ端末２は通常、印刷コマンドを含む各種コマンドをプリンター３に送信する機能を有する。このため、ＰＯＳ端末２に設定コマンドを送信する機能を持たせるためには、ＰＯＳ端末２が送信可能なコマンドの種類を増やす（拡張する）だけでよい。このような拡張は、ＰＯＳ端末２が備えるＰＯＳアプリケーションプログラム２１やプリンタードライバー２３の仕様を変更することなく、容易に実行できる。このため、既存のＰＯＳ端末２を使用する場合であっても、大幅なシステム変更等を伴わず、容易に実現できる。
【００２２】
制御部３０は、ＰＯＳ端末２から入力される印刷コマンド及び印刷データに基づいて印刷ユニット４５を制御し、レシートを印刷する印刷制御部３１を備えている。印刷制御部３１は印刷ユニット４５とともに本発明の印刷手段を構成する。
また、制御部３０は、通信インターフェイス４１を制御して、レシート履歴サーバー６との間で各種データを送受信する通信制御部３２を備えている。通信制御部３２は、外部インターフェイス４２を介して、ＰＯＳ端末２との間で各種の信号やデータを送受信（入出力）することも可能である。
また、制御部３０は、ＰＯＳ端末２から入力された印刷データに基づいて固有コードを生成するコード生成部３３（情報生成手段）、および、コード生成部３３により生成された固有コードを、通信インターフェイス４１によりレシート履歴サーバー６に送信するコード送信部３４（出力手段）を備えている。
【００２３】
コード生成部３３は、例えば、ＰＯＳ端末２が送信した印刷データだけでなく、ＰＯＳ端末２が設置された店舗の店名や店番号等の情報、ＰＯＳ端末２が会計処理を行った日時やＰＯＳ端末２が印刷データを出力した日時に関する情報、通信インターフェイス４１に事前に付与されているネットワークアドレスを含めた情報をもとに、固有コードを生成してもよい。また、これらの情報の中から情報を適宜選択して、固有コードの生成に用いてもよい。固有コードを生成する方法は、例えば、もとになる情報のハッシュ値を求める方法を採用できるが、その他、元のデータを要約する様々な既知の方法を用いることができ、レシート毎に固有の値を得られる方法であれば特に制限はない。
コード送信部３４は、コード生成部３３が生成した固有コードをレシート履歴サーバー６に送信する。ここで、コード送信部３４は、コード生成部３３が生成した固有コードとともに、コード生成部３３が固有コードを生成するもととなった印刷データをレシート履歴サーバー６に送信してもよい。さらに、コード送信部３４は、印刷データおよび固有コードとともに、印刷システム１においてプリンター３を特定可能な情報を、レシート履歴サーバー６に送信してもよい。
また、プリンター３は、オペレーターに対して動作状態を報知するブザーやインジケーターランプ、オペレーターが操作する操作パネル等の図示しない構成を備えていても良い。
【００２４】
レシート履歴サーバー６は、図示しないＣＰＵ、ＲＯＭ、ＲＡＭ等を備えた制御部６０を有し、この制御部６０により各部を制御する。レシート履歴サーバー６は、バーコードスキャナー７に接続された外部インターフェイス６７、通信ネットワーク１０に接続され、この通信ネットワーク１０を介してプリンター３との間で各種データを送受信する通信インターフェイス（Ｉ／Ｆ）６８、および、印刷ヘッドや搬送ローラー等を備え、ロール紙（図示略）に文字や画像を印刷する印刷ユニット６９を備えている。
また、レシート履歴サーバー６は、フラッシュメモリーまたはハードディスク装置を有する記憶装置を内蔵し、この記憶装置の記憶領域に、プリンター３から受信した固有コードや印刷データ等を記憶するレシートデータベース６５が設けられている。
【００２５】
制御部６０は、レシート情報受付部６１と、データベース（ＤＢ）制御部６２（データベース制御手段）と、判定部６３（判定手段）とを備えている。レシート情報受付部６１は、プリンター３が送信したレシートの印刷データおよび固有コードを、通信インターフェイス６８を介して受信する。データベース制御部６２は、レシート情報受付部６１が受信した情報に基づいてレシートデータベース６５に記憶させるレコードを生成し、レシートデータベース６５に記憶させる。判定部６３は、レシートデータベース６５に記憶された情報に基づいてレシートの真贋の判定を行う。
【００２６】
図２は、レシートデータベース６５に記憶される情報の構成例を示す図である。
この図２に示すように、レシートデータベース６５に記憶される情報は、取引情報１５と、固有コード１６と、プリンター識別情報１７とが対応づけられて一つのレコードを構成する。取引情報１５は、ＰＯＳ端末２がプリンター３に送信した印刷データから抽出されたデータである。取引情報１５には、ＰＯＳ端末２が設置された店舗を示す店情報、レシートに印刷される会計情報、ＰＯＳ端末２がレシートの印刷を指示した日時または会計処理を行った日時を示す日時情報等が含まれる。また、取引情報１５は、ＰＯＳ端末２が出力した印刷コマンド等が含まれていてもよい。
固有コード１６は、プリンター３が生成してレシート履歴サーバー６に送信した固有コードである。この固有コードは、プリンター３により印刷データとともに送信される。
レシート履歴サーバー６は、プリンター３が送信した印刷データと固有コードとをレシート情報受付部６１により受信し、データベース制御部６２によって印刷データから取引情報１５を生成し、取引情報１５と固有コード１６とを対応づけてレシートデータベース６５に記憶させる。また、プリンター識別情報１７は、取引情報１５のもとになった印刷データと固有コード１６とを送信したプリンター３を特定する情報である。プリンター識別情報１７は、予めプリンター３が記憶しているＩＤ等、印刷システム１の複数のプリンター３の中から一つのプリンター３を特定または識別できる情報である。通信ネットワーク１０におけるプリンター３のネットワークアドレス（ＩＰアドレスやＭＡＣアドレス等）をプリンター識別情報１７として用いることができる。レシート履歴サーバー６は、レシート情報受付部６１により印刷データと固有コードを受信する際に、送信元のプリンター３を特定する情報を取得または受信する。データベース制御部６２は、レシート情報受付部６１が取得した、送信元のプリンター３を特定する情報をプリンター識別情報１７としてレシートデータベース６５に記憶させる。
【００２７】
判定部６３は、外部インターフェイス６７を介して接続されたバーコードスキャナー７（読取手段）を制御し、バーコードスキャナー７が読み取ったバーコードを復号して判定対象の固有コードを得る。判定部６３は、レシートデータベース６５に記憶されている多数の固有コード１６を参照して判定を行う。判定部６３は、判定対象の固有コードと一致する固有コード１６がある場合は、判定結果を「該当あり（真）」とし、一致する固有コード１６が無い場合は、判定結果を「該当なし（偽）」とする。判定部６３は、印刷ユニット６９を制御して、判定結果を示すメッセージや記号、図形等を印刷出力する。
また、判定部６３は、判定結果が「該当あり」であった場合、一致した固有コード１６に対応する取引情報１５をレシートデータベース６５から取得して、この取引情報１５の内容も印刷ユニット６９によって印刷する。この場合、判定部６３は、判定対象のレシートと比較しやすいように、レシートと同様のレイアウトで取引情報１５を印刷してもよい。
レシート履歴サーバー６を操作するオペレーターは、印刷ユニット６９により印刷された判定結果を見て、レシートが真正か否かを判断できる。判定結果が「該当なし」であった場合、バーコードスキャナー７で読み取った印刷物は、印刷システム１で印刷されたレシートではないことが明らかである。
また、判定結果が「該当あり」であった場合には、印刷システム１で発行されたレシートである可能性が高い。この場合に、判定結果とともに取引情報１５が印刷されていると、オペレーターは、印刷された取引情報１５と、バーコードスキャナー７で読み取ったレシートに印刷されている会計情報等とを目視で比較できる。これらの情報のうち、金額、品名、品数等が一致しない場合には、バーコードスキャナー７で読み取った固有コードが真正の固有コードであったとしても、そのレシートは印刷システム１で発行されたレシートではないことが明らかである。この場合には、より正確かつ厳密に、レシートが真正か否かを判定できる。
【００２８】
図３は、印刷システム１のプリンター３が出力するレシートＲの一例を示す図である。
この例のレシートＲには、一般的なレシートと同様、ＰＯＳ端末２が設置された店舗のロゴ１０１及び会計情報１０２が印刷されている。
さらに、レシートＲには、プリンター３が生成した固有コードをバーコード化したバーコード１０３が印刷されている。固有コードは通常、数値や文字列であるため、バーコード１０３は、一次元バーコードであっても、ＱＲコード（登録商標）等の二次元バーコードであってもよい。バーコード１０３は、ＰＯＳ端末２が送信した印刷データに基づいて印刷される内容、すなわちロゴ１０１および会計情報１０２が印刷された後、その末尾に印刷される。プリンター３は、ＰＯＳ端末２がバーコード１０３の印刷に関して何も制御を行わなくても、バーコード１０３を印刷できる。このため、ＰＯＳ端末２は通常のレシートを印刷させる機能を持っていればよく、汎用の、或いは既設のＰＯＳ端末２を利用できる。
【００２９】
図４は、印刷システム１の動作を示すフローチャートであり、特に、レシートを印刷する動作を示す。図４において（Ａ）はプリンター３の動作を示し、（Ｂ）はレシート履歴サーバー６の動作を示す。
まず、ＰＯＳ端末２が商品販売に係る会計処理を実行し、印刷コマンドとデータを含む印刷データをプリンター３に送信する。印刷制御部３１は、ＰＯＳ端末２が送信する印刷データを受信して、レシートデータ記憶部４３に一時的に記憶する（ステップＳ１１）。コード生成部３３は、設定記憶部４４の設定値を参照し（ステップＳ１２）、固有コード印刷設定の設定値が「有効」となっているか否かを判別する（ステップＳ１３）。固有コード印刷設定の設定値は、コード生成部３３により固有コードを生成してバーコード１０３（図３）を印刷するか、通常のレシートを印刷するかを設定する値である。また、本実施形態では、固有コード印刷設定の設定値は、印刷データをレシート履歴サーバー６に送信するか否かを設定する値としても機能する。
固有コード印刷設定の設定値が「有効」となっていない場合（ステップＳ１３；Ｎｏ）、コード生成部３３は固有コードの生成を行わず、印刷制御部３１が印刷データに基づいてレシートを印刷し（ステップＳ１４）、本処理を終了する。
【００３０】
これに対し、固有コード印刷設定の設定値が「有効」となっている場合（ステップＳ１３；Ｙｅｓ）、制御部３０は、固有コードをレシートに印刷する動作、及び、印刷データをレシート履歴サーバーへ送信する動作を実行する。すなわち、コード生成部３３は、印刷制御部３１が受信した印刷データ等に基づいて固有コードを生成し、レシートデータ記憶部４３に一時的に記憶させる（ステップＳ１５）。
コード送信部３４は、レシートデータ記憶部４３に記憶された固有コードおよび印刷データを取得して、通信制御部３２および通信インターフェイス４１を動作させて、レシート履歴サーバー６に送信する（ステップＳ１７）。
レシート履歴サーバー６においては、プリンター３から送信された印刷データおよび固有コードをレシート情報受付部６１が受信して、図示しない一時記憶領域に記憶する（ステップＳ３１）。
【００３１】
印刷制御部３１は、印刷ユニット４５を制御して、ステップＳ１１で受信した印刷データに基づき、ロゴ１０１（図３）や会計情報１０２（図３）を印刷する（ステップＳ１７）。その後、印刷制御部３１は、ＰＯＳ端末２からオートカッターコマンドを受信するまで待機する（ステップＳ１８）。印刷制御部３１は、オートカッターコマンドを受信した場合に（ステップＳ１８；Ｙｅｓ）、レシートデータ記憶部４３に記憶した固有コードを会計情報１０２の末尾にバーコード１０３を印刷する（ステップＳ１９）。ここで、固有コードをバーコード化する処理は、コード生成部３３が行っても印刷制御部３１が行ってもよい。
バーコード１０３を印刷した後、印刷制御部３１は、オートカッターコマンドに従ってオートカッターユニット４６を動作させ、印刷したロール紙をカットさせる（ステップＳ２０）。コード送信部３４は、印刷制御部３１がオートカッターユニット４６を動作させてから、オートカッターユニット４６の一連の動作が完了するまでに要する時間、待機して、その時間内にオートカッターユニット４６のエラーが発生しなかった場合に、レシート履歴サーバー６に印刷完了を通知する（ステップＳ２１）。
【００３２】
コード送信部３４は、オートカッターユニット４６の一連の動作に要する時間、または、オートカッターユニット４６の一連の動作が確実に終了する時間に関する情報を有する。オートカッターユニット４６の一連の動作とは、具体的には、オートカッターユニット４６の可動刃を駆動するカッターが動作を開始し、可動刃がカットを完了する位置または移動可能な終端位置まで移動する動作である。また、オートカッターユニット４６の可動刃が、カットが完了してからカット実行前の位置（初期位置）に戻るまでを、オートカッターユニット４６の一連の動作としてもよい。
【００３３】
レシート履歴サーバー６において、レシート情報受付部６１はプリンター３から送信された印刷完了の通知を受信し（ステップＳ３２）、データベース制御部６２が、一時的に記憶されていた印刷データおよび固有コードから一つのレコードを生成して、レシートデータベース６５に登録する（ステップＳ３３）。
【００３４】
この図４の動作では、プリンター３が、ＰＯＳ端末２からレシートの印刷データの全体を受信して、その後に印刷動作を開始する例を説明した。この他にも、ＰＯＳ端末２が印刷データを先頭から逐次送信し、プリンター３が、印刷データを逐次受信して、受信した分の印刷データに基づいて動作を実行することも可能である。この場合、プリンター３は、印刷データの一部しか受信していない状態であっても、受信が済んでいる印刷データ中のコマンド及びデータに従って、動作を実行する。この場合、プリンター３の制御部３０は、ステップＳ１１において印刷データの一部を受信してから、ステップＳ１２以後の動作を実行する。そして、ステップＳ１２以後の動作の実行中に、ＰＯＳ端末２が逐次送信する印刷データに対して待機し、印刷データが送信される毎に、受信を行う。
また、図４の動作では、ステップＳ１６において、コード生成部３３が固有コードを生成する毎に、固有コードと印刷データをコード送信部３４が送信する例を説明した。この他にも、例えば、コード生成部３３が生成したコードと印刷データとをレシートデータ記憶部４３に一時的に記憶しておき、まとめて送信することもできる。すなわち、コード送信部３４が、１枚のレシートの印刷が完了してから、１レシート分の印刷データと固有コードとをレシート履歴サーバー６に送信してもよい。この場合には、印刷が完了しているため、ステップＳ２１で印刷完了を通知する必要はない。
【００３５】
図５は、レシート履歴サーバー６の動作を示すフローチャートであり、特に、レシートの真贋を判定する動作を示す。
まず、オペレーターの操作により、判定対象のレシートに印刷されたバーコードがバーコードスキャナー７により読み取られる。判定部６３は、外部インターフェイス６７によりバーコードスキャナー７を駆動して読み取りを実行させ、バーコードスキャナー７の読み取り信号を取得して復号し、読み取り信号を固有コード化する（ステップＳ４１）。
判定部６３は、読み取り信号から得た固有コードと、レシートデータベース６５に記憶されている固有コードとを比較し、照合する（ステップＳ４２）。具体的には、判定部６３は、レシートデータベース６５において、読み取り信号から得た固有コードと一致する固有コードを検索する。判定部６３は、該当する固有コード、すなわち読み取り信号から得た固有コードと一致する固有コードがあるか否かを判定する（ステップＳ４３）。
【００３６】
該当する固有コードがある場合（ステップＳ４３；Ｙｅｓ）、判定部６３は、該当する固有コードと同じレコードとしてレシートデータベース６５に記憶された取引情報を取得する（ステップＳ４４）。判定部６３は、判定結果を示すメッセージや画像等と、レシートデータベース６５から取得した取引情報とを印刷する（ステップＳ４５）。
また、レシートデータベース６５に該当する固有コードが無い場合（ステップＳ４３；Ｎｏ）、判定部６３は判定結果を示すメッセージや画像等を印刷して（ステップＳ４６）、本処理を終了する。
【００３７】
以上説明したように、本発明を適用した実施形態に係る印刷システム１は、ＰＯＳ端末２から送信される印刷データに基づいてレシートを印刷するプリンター３を備えている。このプリンター３は、コード生成部３３により、印刷データに基づいてレシート毎に固有の固有コードを生成する。また、印刷制御部３１および印刷ユニット４５により、印刷データに基づいてレシートを印刷する。さらに、コード送信部３４により、固有コードをレシート履歴サーバー６に出力する。そして、プリンター３は、ＰＯＳ端末２の構成に影響を与えることなく、レシート履歴サーバー６において固有コードに基づきレシートが真正か否かを判定できる。これにより、既存のＰＯＳ端末２に本発明のプリンター３を接続することで、プリンター３が印刷するレシートが真正か否かを容易に判定可能となり、印刷物の偽造に対する抑止効果が期待できる。
また、印刷システム１は、レシートデータベース６５に、プリンター３から出力される固有コードを記憶する。そして、バーコードスキャナー７により判定対象のレシートに印刷された固有コードを読み取り、判定部６３により、バーコードスキャナー７の読取結果をデータベースに記憶された固有コードと比較することにより読取結果の判定を行う。そして、ＰＯＳ端末２の構成に影響を与えることなく、レシート履歴サーバー６が固有コードに基づいてレシートが真正か否かを判定することができる。これにより、既存のＰＯＳ端末２に印刷システム１を接続することで、プリンター３が印刷するレシートが真正か否かを容易に判定可能となり、印刷物の偽造に対する抑止効果が期待できる。
【００３８】
また、コード送信部３４は、ＰＯＳ端末２から送信された印刷データをレシート履歴サーバー６に送信する機能を備え、１レシート分の印刷データの区切り毎に、コード生成部３３により固有コードを生成して送信する。このため、ＰＯＳ端末２の構成に影響を与えることなく、レシート履歴サーバー６において、固有コードに基づいてレシートが真正か否かを判定でき、かつ、レシートに印刷された内容に基づいて真贋を判定できる。例えば、ＰＯＳ端末２が複数枚のレシートの印刷データをまとめて、或いは順次送信する際に、各レシートのデータの区切りを示す印刷データ区切りコマンドを送信する。この場合、コード生成部３３は、ＰＯＳ端末２から送信される印刷データの中に、印刷データ区切りコマンドを検出した場合に、この印刷データ区切りコマンドに基づいて１レシート分の印刷データの区切りを特定する。そして、コード生成部３３が、１レシート分の印刷データの区切り毎に、固有コードを生成すればよい。また、例えば、コード生成部３３は、印刷制御部３１が受信した印刷データに含まれる特定の印刷データ（例えば、レシートの末端を示すデータ、レシートの先端または末端に挿入されるロゴ等を示すデータ、カットを示すコマンド等）を検出して、このデータを１レシート分の印刷データの区切りとして特定してもよい。
さらに、コード送信部３４は、印刷手段による１レシートの印刷が完了する毎に、印刷完了の通知をレシート履歴サーバー６に出力する。このため、印刷に失敗したり印刷がされなかったりしたレシートに関する固有コードを、レシート履歴サーバー６において適切に処理できる。例えば、レシート履歴サーバー６において印刷が完了したレシートの固有コードのみを真贋の判定に用いることにより、印刷されなかったレシートの偽造を防止できる。これにより、真贋の判定の精度をより一層高めることができる。
また、プリンター３は、印刷されたレシートをカットするオートカッターユニット４６を備えている。そして、コード送信部３４は、ＰＯＳ端末２から送信されたオートカッターコマンドを実行した後に、オートカッターユニット４６のエラーを検出しない場合に、印刷完了と判定して印刷完了の通知を出力する。このため、オートカッターの動作に基づいてレシートの印刷が完了したか否かを適切に判断できる。これにより、印刷の完了に関する正確な通知をレシート履歴サーバー６に出力でき、より高い精度でレシートが真正か否かを判定できる。
【００３９】
また、コード送信部３４は、ＰＯＳ端末２から送信されたオートカッターの動作を指示するコマンドを実行した後、オートカッターの一連の動作が完了するまでの間にエラーを検出しなかった場合に、印刷完了と判定する。このため、印刷が完了したか否かを適切に判断でき、印刷の完了に関する正確な通知をレシート履歴サーバー６に出力できる。
【００４０】
（実施形態２）
なお、上述した実施形態は本発明を適用した一例を示すものであり、本発明はこれらの実施形態に限定されない。例えば、上記実施形態では、プリンター３が一つのレシートを印刷する毎に、レシート履歴サーバー６に印刷データと固有コードとを送信する構成を例に挙げて説明したが、本発明はこれに限定されるものではなく、複数のレシートを印刷した後にまとめて、印刷データと固有コードとを送信してもよい。この場合、印刷データと固有コードがレシート毎に対応づけられていれば何ら問題がない。また、レシート履歴サーバー６に送信した印刷データと固有コードとをレシートデータ記憶部４３に所定時間、記憶しておいてもよい。さらに、プリンター３がレシート履歴サーバー６に送信する際に、固有コードを暗号化して送信してもよい。また、コード生成部３３が、生成する固有コードを暗号化する処理を行ってもよい。この場合、レシート履歴サーバー６が、暗号化された固有コードをそのままレシートデータベース６５に格納してもよいし、暗号化された固有コードを復号する構成としてもよい。
また、上記実施形態では、メモリースイッチとしての設定記憶部４４に記憶される固有コード印刷設定の設定値が、固有コードの印刷の要否を設定する値と、印刷データをレシート履歴サーバー６に送信するか否かを設定する値として機能する例を説明した。本発明はこれに限定されず、固有コードの印刷の要否と、印刷データをレシート履歴サーバー６に送信するか否かと、をそれぞれ別の設定値として設定記憶部４４に記憶することも勿論可能である。この場合、例えばＰＯＳ端末２からプリンター３にコマンドを送信することで、各々の設定値を個別に設定できる。
また、上記実施形態では、ホスト装置の一例としてＰＯＳ端末２を備え、帳票の一例としてレシートを印刷する印刷システム１を例に挙げて説明したが、本発明はこれに限定されるものではなく、チケット類や金券に類する物など、印刷物として印刷出力される有価物を印刷する印刷装置または印刷システムに適用すれば、偽造の抑止力として有効に機能する。
さらに、プリンター３が備える印刷ユニット４５の印刷方式等の細部構成についても、任意に変更可能であることは勿論である。
【符号の説明】
【００４１】
１…印刷システム、２…ＰＯＳ端末（ホスト装置）、３…プリンター（印刷装置）、６…レシート履歴サーバー（外部の装置、サーバー装置）、７…バーコードスキャナー（読取手段）、１６…固有コード（帳票情報）、３０…制御部（設定変更手段）、３１…印刷制御部、３２…通信制御部、３３…コード生成部（情報生成手段）、３４…コード送信部（出力手段）、４３…レシートデータ記憶部、４４…設定記憶部（設定記憶手段）、４５…印刷ユニット、４６…オートカッターユニット（オートカッター）、６０…制御部、６１…レシート情報受付部、６２…データベース制御部（データベース制御手段）、６３…判定部（判定手段）、６５…レシートデータベース（データベース）、６９…印刷ユニット、１０３…バーコード、Ｒ…レシート。
【図１】
2014091709.tif 000003
【図２】
2014091709.tif 000004
【図３】
2014091709.tif 000005
【図４】
2014091709.tif 000006
【図５】
2014091709.tif 000007
【国際調査報告】
2014091709.tif 000008
2014091709.tif 000009
2014091709.tif 000010
2014091709.tif 000011