(57)【要約】【課題】分散型台帳を用いて管理されるポイントを共有化することができる、ポイント管理方法及びポイント管理装置を提供すること。【解決手段】実施形態のポイント管理方法は、ポイント口座が保有する、各発行元によって発行されるポイントの残高が分かるデータを、分散型台帳に記録する。実施形態のポイント管理方法は、ポイント発行元とポイント使用先の組み合わせに応じて定まる関数に基づき、前記ポイント発行元で発行されたポイントから前記ポイント使用先で使用可能なポイントを求める。【選択図】図１
2020197993.tif 000002
【特許請求の範囲】
【請求項１】
ポイント口座が保有する、各発行元によって発行されるポイントの残高が分かるデータを、分散型台帳に記録し、
ポイント発行元とポイント使用先の組み合わせに応じて定まる関数に基づき、前記ポイント発行元で発行されたポイントから前記ポイント使用先で使用可能なポイントを求める、ポイント管理方法。
【請求項２】
前記ポイント発行元によって発行されたポイントを前記ポイント口座の保有分から減らし、減らすポイントから前記関数によって求められるポイント分の金額を前記ポイント使用先において決済する、請求項１に記載のポイント管理方法。
【請求項３】
前記ポイント使用先で使用可能なポイントを報知する、請求項１又は請求項２に記載のポイント管理方法。
【請求項４】
前記関数は、前記ポイント発行元で発行されたポイントに所定の係数をかけるものである、請求項１乃至請求項３のいずれか１項に記載のポイント管理方法。
【請求項５】
分散型台帳から、各発行元によって発行されるポイントの残高が分かるデータを取得する取得部と、
ポイント発行元とポイント使用先の組み合わせに応じて定まる関数に基づき、前記ポイント発行元で発行されたポイントから前記ポイント使用先で使用可能なポイントを求める処理部と、を備えるポイント管理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、ポイント管理方法及びポイント管理装置に関する。
【背景技術】
【０００２】
従来、企業通貨（ポイント）を異なる発行者間で使用可能にする、共有化（共通化）が行われている。例えば、複数の発行者間で共通のデータベースなどが、それぞれのポイント発行者で発行されたポイントを共通ポイントとして合算する。これにより、ポイントが共有化される。あるいは、ポイント発行者ごとのデータベースが、それぞれのデータベース上で管理されているポイントを他のポイントに変換する。これにより、ポイントが共有化される。
【０００３】
ところで、ブロックチェーンなどの分散型台帳を用いてポイントを管理することが提案されている。しかしながら、分散型台帳を用いてポイントを管理する場合には、ポイントを共有化する仕組みがない。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開2018-49428号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
本発明の実施形態が解決しようとする課題は、分散型台帳を用いて管理されるポイントを共有化することができる、ポイント管理方法及びポイント管理装置を提供することである。
【課題を解決するための手段】
【０００６】
実施形態のポイント管理方法は、ポイント口座が保有する、各発行元によって発行されるポイントの残高が分かるデータを、分散型台帳に記録する。実施形態のポイント管理方法は、ポイント発行元とポイント使用先の組み合わせに応じて定まる関数に基づき、前記ポイント発行元で発行されたポイントから前記ポイント使用先で使用可能なポイントを求める。
【図面の簡単な説明】
【０００７】
【図１】実施形態に係るポイントシステムの構成の一例を示すブロック図。
【図２】図１中のノードの要部回路構成の一例を示すブロック図。
【図３】図１中の本部サーバーの要部回路構成の一例を示すブロック図。
【図４】図１中の店舗サーバーの要部回路構成の一例を示すブロック図。
【図５】図１中のＰＯＳ端末の要部回路構成の一例を示すブロック図。
【図６】図１中の客端末の要部回路構成の一例を示すブロック図。
【図７】図５中のプロセッサーによる処理の一例を示すフローチャート。
【図８】図５中の補助記憶デバイスに記憶されるテーブルの一例を示す図。
【図９】図５中の表示デバイスが表示する画像の一例を示す図。
【図１０】図５中のＰＯＳ端末のプロセッサーによる処理の一例を示すフローチャート。
【図１１】図５中のＰＯＳ端末のプロセッサーによる処理の一例を示すフローチャート。
【図１２】図６中の客端末のプロセッサーによる処理の一例を示すフローチャート。
【発明を実施するための形態】
【０００８】
以下、実施形態に係るポイントシステムについて図面を用いて説明する。なお、以下の実施形態の説明に用いる各図面は、説明のため、構成を省略して示している場合がある。また、各図面及び以下の説明において、同一の符号は同様の要素を示す。
【０００９】
図１は、実施形態に係るポイントシステム１の構成の一例を示すブロック図である。ポイントシステム１は、企業通貨（ポイント）を、分散型台帳ＤＬ１を用いて管理する。また、ポイントシステム１は、発行者の異なるポイントを共有化して利用可能にする。なお、ポイントシステム１が管理するポイントは、例えば、商品又はサービスなどを購入した買物客などに対して一定の条件で計算されて付与されるものである。すなわち、ポイントシステム１が管理するポイントは、ポイントプログラムにおいて用いられるポイントである。なお、分散型台帳ＤＬ１は、例えば、スマートコントラクトを用いてポイントの発行及びポイントの利用の条件を管理する。
ポイントシステム１は、一例として、ノード１００、本部サーバー２００、店舗サーバー３００、ＰＯＳ端末４００及び客端末５００を含む。なお、図１は、ノード１００、本部サーバー２００、店舗サーバー３００、ＰＯＳ端末４００及び客端末５００それぞれの数を限定するものではない。
【００１０】
ノード１００は、ネットワークＮＷ１に接続するＰＣ（personal computer）又はサーバー装置などである。ネットワークＮＷ１は、典型的にはインターネットを含む通信網である。
ノード１００は、分散型台帳ＤＬ１に参加するノードである。多数のノード１００により、ネットワークＮＷ１上にＰ２Ｐネットワークが構築される。当該Ｐ２Ｐネットワークにより、分散型台帳ＤＬ１が動作する。分散型台帳ＤＬ１は、例えば、ブロックチェーン又はその他の分散型台帳である。
【００１１】
本部サーバー２００、店舗サーバー３００及びＰＯＳ端末４００は、商品の販売及び管理などを行うために、商品又はサービスなどを販売する業者などに設置される。本部サーバー２００、店舗サーバー３００及びＰＯＳ端末４００は、例えば、ＰＯＳシステムを構成する装置である。ＰＯＳ端末４００は、ポイント管理装置の一例である。
本部サーバー２００は、例えば、業者の本部などに設置される。本部サーバー２００は、例えば、複数の店舗に設置される店舗サーバー３００から送信される販売情報などを受信する。そして、本部サーバー２００は、当該販売情報などを記憶及び管理する。
店舗サーバー３００は、例えば、各店舗に設置される。店舗サーバー３００は、店舗の販売情報などを管理する。
【００１２】
ＰＯＳ端末４００は、各店舗のレジ台などに設置される。ＰＯＳ端末４００は、決済対象となる商品の登録、及び登録された商品についての決済などのレジ業務などのために、店舗などに設置される。ＰＯＳ端末４００は、例えば、店舗の店員などによって操作される。あるいは、ＰＯＳ端末４００は、店舗の買物客などによって操作されるセルフ方式の端末であっても良い。また、ＰＯＳ端末４００は、商品の登録を行う登録装置と、登録された商品についての決済を行う決済装置とを含んで成るセミセルフ方式であっても良い。セミセルフ方式の登録装置は、例えば、店舗の店員などによって操作される。セミセルフ方式の決済装置は、例えば、店舗の買物客などによって操作される。
【００１３】
本部サーバー２００、店舗サーバー３００及びＰＯＳ端末４００は、業者ごとに設置の形態が異なる。図１には、その例として業者Ｓ１〜業者Ｓ４を示している。
【００１４】
業者Ｓ１は、本部サーバー２００を設置する。当該本部サーバー２００は、ネットワークＮＷ１に接続する。業者Ｓ１は、店舗Ｓ１−１及び店舗Ｓ１−２などの複数の店舗を含む。店舗Ｓ１−１及び店舗Ｓ１−２は、店舗サーバー３００及び複数のＰＯＳ端末４００を設置する。当該店舗サーバー３００は、ネットワークＮＷ１に接続する。また、当該店舗サーバー３００は、同一店舗内のＰＯＳ端末４００と接続する。また、業者Ｓ１は、ノード１００を設置する。なお、図１では、業者Ｓ１のみノード１００を設置している。しかしながら、他の各業者又は各店舗も、ノード１００を設置していても良い。
【００１５】
業者Ｓ２は、例えば、単一の店舗である。業者Ｓ２は、単一の店舗であるなどの理由から、本部サーバー２００を設置しない。業者Ｓ２は、店舗サーバー３００及び複数のＰＯＳ端末４００を設置する。当該店舗サーバー３００は、ネットワークＮＷ１に接続する。当該店舗サーバー３００は、業者Ｓ２内のＰＯＳ端末４００と接続する。
【００１６】
業者Ｓ３は、例えば、単一の店舗である。業者Ｓ３は、本部サーバー２００及び店舗サーバー３００を設置しない。業者Ｓ３は、ＰＯＳ端末４００を設置する。当該ＰＯＳ端末４００は、ネットワークＮＷ１に接続する。業者Ｓ３では、例えば、ＰＯＳ端末４００が販売情報などを管理及び記憶する。
【００１７】
業者Ｓ４は、本部サーバー２００を設置する。当該本部サーバー２００は、ネットワークＮＷ１に接続する。業者Ｓ４は、店舗Ｓ４−１及び店舗Ｓ４−２などの複数の店舗を含む。店舗Ｓ４−１及び店舗Ｓ４−２は、１又は複数のＰＯＳ端末４００を設置する。店舗Ｓ４−１及び店舗Ｓ４−２は、店舗サーバー３００については設置しない。業者Ｓ４では、ＰＯＳ端末４００から店舗サーバー３００に直接販売情報などが送信される。
【００１８】
なお、業者に設置されている本部サーバー２００、店舗サーバー３００及びＰＯＳ端末４００のうちの少なくともいずれかは、当該業者の業者ＩＤ（identifier）を記憶する。業者ＩＤは、業者ごとにユニークに付与される識別符号である。
【００１９】
客端末５００は、買物客などが操作する端末装置である。客端末５００は、買物客などによって、ポイントの残高などを調べるために使用される。客端末５００は、例えば、買物客が使用するスマートフォンなどの情報端末である。あるいは、客端末５００は、店舗などに設置され、買物客による操作に基づき各種情報を表示する装置などである。客端末５００は、ポイント管理装置の一例である。
【００２０】
次に、ノード１００、本部サーバー２００、店舗サーバー３００、ＰＯＳ端末４００及び客端末５００のそれぞれの構成について、図２〜図６を用いて説明する。
【００２１】
図２は、ノード１００の要部回路構成の一例を示すブロック図である。
ノード１００は、一例として、プロセッサー１０１、ＲＯＭ（read-only memory）１０２、ＲＡＭ（random-access memory）１０３、補助記憶デバイス１０４及び通信インターフェース１０５を含む。そして、バス１０６などが、これら各部を接続する。
【００２２】
プロセッサー１０１は、ノード１００の動作に必要な演算及び制御などの処理を行うコンピューターの中枢部分に相当する。プロセッサー１０１は、ＲＯＭ１０２又は補助記憶デバイス１０４などに記憶されたファームウェア、システムソフトウェア及びアプリケーションソフトウェアなどのプログラムに基づいて、ノード１００の各種の機能を実現するべく各部を制御する。なお、当該プログラムの一部又は全部は、プロセッサー１０１の回路内に組み込まれていても良い。プロセッサー１０１は、例えば、ＣＰＵ（central processing unit）、ＭＰＵ（micro processing unit）、ＳｏＣ（system on a chip）、ＤＳＰ（digital signal processor）、ＧＰＵ（graphics processing unit）、ＡＳＩＣ（application specific integrated circuit）、ＰＬＤ（programmable logic device）又はＦＰＧＡ（field-programmable gate array）などである。あるいは、プロセッサー１０１は、これらのうちの複数を組み合わせたものである。
【００２３】
ＲＯＭ１０２は、プロセッサー１０１を中枢とするコンピューターの主記憶装置に相当する。ＲＯＭ１０２は、専らデータの読み出しに用いられる不揮発性メモリである。ＲＯＭ１０２は、上記のプログラムのうち、例えばファームウェアなどを記憶する。また、ＲＯＭ１０２は、プロセッサー１０１が各種の処理を行う上で使用するデータ又は各種の設定値などを記憶する。
【００２４】
ＲＡＭ１０３は、プロセッサー１０１を中枢とするコンピューターの主記憶装置に相当する。ＲＡＭ１０３は、データの読み書きに用いられるメモリである。ＲＡＭ１０３は、プロセッサー１０１が各種の処理を行う上で一時的に使用するデータを記憶しておく、いわゆるワークエリアなどとして利用される。ＲＡＭ１０３は、典型的には揮発性メモリである。
【００２５】
補助記憶デバイス１０４は、プロセッサー１０１を中枢とするコンピューターの補助記憶装置に相当する。補助記憶デバイス１０４は、例えばＥＥＰＲＯＭ（electric erasable programmable read-only memory）、ＨＤＤ（hard disk drive）又はフラッシュメモリなどである。補助記憶デバイス１０４は、上記のプログラムのうち、例えば、システムソフトウェア及びアプリケーションソフトウェアなどを記憶する。また、補助記憶デバイス１０４は、プロセッサー１０１が各種の処理を行う上で使用するデータ、プロセッサー１０１での処理によって生成されたデータ又は各種の設定値などを保存する。
【００２６】
ＲＯＭ１０２又は補助記憶デバイス１０４に記憶されるプログラムは、後述する処理を実行するためのプログラムを含む。一例として、ノード１００は、当該プログラムがＲＯＭ１０２又は補助記憶デバイス１０４に記憶されない状態でノード１００の管理者などへと譲渡される。そして、別途に当該管理者などへと譲渡された当該プログラムが、当該管理者などによる操作の下に補助記憶デバイス１０４へと書き込まれる。しかしながら、ノード１００は、当該プログラムがＲＯＭ１０２又は補助記憶デバイス１０４に記憶された状態で当該管理者などへと譲渡されても良い。上述のプログラムの譲渡は、例えば、磁気ディスク、光磁気ディスク、光ディスク又は半導体メモリなどのようなリムーバブルな記憶媒体に記録して、あるいはネットワークＮＷ１などを介したダウンロードにより実現できる。
【００２７】
通信インターフェース１０５は、ノード１００がネットワークＮＷ１などを介して通信するためのインターフェースである。
【００２８】
バス１０６は、コントロールバス、アドレスバス及びデータバスなどを含み、ノード１００の各部で授受される信号を伝送する。
【００２９】
図３は、本部サーバー２００の要部回路構成の一例を示すブロック図である。
本部サーバー２００は、一例として、プロセッサー２０１、ＲＯＭ２０２、ＲＡＭ２０３、補助記憶デバイス２０４及び通信インターフェース２０５を含む。そして、バス２０６などが、これら各部を接続する。
【００３０】
プロセッサー２０１は、本部サーバー２００の動作に必要な演算及び制御などの処理を行うコンピューターの中枢部分に相当する。プロセッサー２０１は、ＲＯＭ２０２又は補助記憶デバイス２０４などに記憶されたファームウェア、システムソフトウェア及びアプリケーションソフトウェアなどのプログラムに基づいて、本部サーバー２００の各種の機能を実現するべく各部を制御する。なお、当該プログラムの一部又は全部は、プロセッサー２０１の回路内に組み込まれていても良い。プロセッサー２０１は、例えば、ＣＰＵ、ＭＰＵ、ＳｏＣ、ＤＳＰ、ＧＰＵ、ＡＳＩＣ、ＰＬＤ又はＦＰＧＡなどである。あるいは、プロセッサー２０１は、これらのうちの複数を組み合わせたものである。
【００３１】
ＲＯＭ２０２は、プロセッサー２０１を中枢とするコンピューターの主記憶装置に相当する。ＲＯＭ２０２は、専らデータの読み出しに用いられる不揮発性メモリである。ＲＯＭ２０２は、上記のプログラムのうち、例えばファームウェアなどを記憶する。また、ＲＯＭ２０２は、プロセッサー２０１が各種の処理を行う上で使用するデータ又は各種の設定値などを記憶する。
【００３２】
ＲＡＭ２０３は、プロセッサー２０１を中枢とするコンピューターの主記憶装置に相当する。ＲＡＭ２０３は、データの読み書きに用いられるメモリである。ＲＡＭ２０３は、プロセッサー２０１が各種の処理を行う上で一時的に使用するデータを記憶しておく、いわゆるワークエリアなどとして利用される。ＲＡＭ２０３は、典型的には揮発性メモリである。
【００３３】
補助記憶デバイス２０４は、プロセッサー２０１を中枢とするコンピューターの補助記憶装置に相当する。補助記憶デバイス２０４は、例えばＥＥＰＲＯＭ、ＨＤＤ又はフラッシュメモリなどである。補助記憶デバイス２０４は、上記のプログラムのうち、例えば、システムソフトウェア及びアプリケーションソフトウェアなどを記憶する。また、補助記憶デバイス２０４は、プロセッサー２０１が各種の処理を行う上で使用するデータ、プロセッサー２０１での処理によって生成されたデータ又は各種の設定値などを保存する。
【００３４】
ＲＯＭ２０２又は補助記憶デバイス２０４に記憶されるプログラムは、後述する処理を実行するためのプログラムを含む。一例として、本部サーバー２００は、当該プログラムがＲＯＭ２０２又は補助記憶デバイス２０４に記憶されない状態で本部サーバー２００の管理者などへと譲渡される。そして、別途に当該管理者などへと譲渡された当該プログラムが、当該管理者などによる操作の下に補助記憶デバイス２０４へと書き込まれる。しかしながら、本部サーバー２００は、当該プログラムがＲＯＭ２０２又は補助記憶デバイス２０４に記憶された状態で当該管理者などへと譲渡されても良い。上述のプログラムの譲渡は、例えば、磁気ディスク、光磁気ディスク、光ディスク又は半導体メモリなどのようなリムーバブルな記憶媒体に記録して、あるいはネットワークＮＷ１などを介したダウンロードにより実現できる。
【００３５】
通信インターフェース２０５は、本部サーバー２００がネットワークＮＷ１などを介して通信するためのインターフェースである。
【００３６】
バス２０６は、コントロールバス、アドレスバス及びデータバスなどを含み、本部サーバー２００の各部で授受される信号を伝送する。
【００３７】
図４は、店舗サーバー３００の要部回路構成の一例を示すブロック図である。
店舗サーバー３００は、一例として、プロセッサー３０１、ＲＯＭ３０２、ＲＡＭ３０３、補助記憶デバイス３０４及び通信インターフェース３０５を含む。そして、バス３０６などが、これら各部を接続する。
【００３８】
プロセッサー３０１は、店舗サーバー３００の動作に必要な演算及び制御などの処理を行うコンピューターの中枢部分に相当する。プロセッサー３０１は、ＲＯＭ３０２又は補助記憶デバイス３０４などに記憶されたファームウェア、システムソフトウェア及びアプリケーションソフトウェアなどのプログラムに基づいて、店舗サーバー３００の各種の機能を実現するべく各部を制御する。なお、当該プログラムの一部又は全部は、プロセッサー３０１の回路内に組み込まれていても良い。プロセッサー３０１は、例えば、ＣＰＵ、ＭＰＵ、ＳｏＣ、ＤＳＰ、ＧＰＵ、ＡＳＩＣ、ＰＬＤ又はＦＰＧＡなどである。あるいは、プロセッサー３０１は、これらのうちの複数を組み合わせたものである。
【００３９】
ＲＯＭ３０２は、プロセッサー３０１を中枢とするコンピューターの主記憶装置に相当する。ＲＯＭ３０２は、専らデータの読み出しに用いられる不揮発性メモリである。ＲＯＭ３０２は、上記のプログラムのうち、例えばファームウェアなどを記憶する。また、ＲＯＭ３０２は、プロセッサー３０１が各種の処理を行う上で使用するデータ又は各種の設定値などを記憶する。
【００４０】
ＲＡＭ３０３は、プロセッサー３０１を中枢とするコンピューターの主記憶装置に相当する。ＲＡＭ３０３は、データの読み書きに用いられるメモリである。ＲＡＭ３０３は、プロセッサー３０１が各種の処理を行う上で一時的に使用するデータを記憶しておく、いわゆるワークエリアなどとして利用される。ＲＡＭ３０３は、典型的には揮発性メモリである。
【００４１】
補助記憶デバイス３０４は、プロセッサー３０１を中枢とするコンピューターの補助記憶装置に相当する。補助記憶デバイス３０４は、例えばＥＥＰＲＯＭ、ＨＤＤ又はフラッシュメモリなどである。補助記憶デバイス３０４は、上記のプログラムのうち、例えば、システムソフトウェア及びアプリケーションソフトウェアなどを記憶する。また、補助記憶デバイス３０４は、プロセッサー３０１が各種の処理を行う上で使用するデータ、プロセッサー３０１での処理によって生成されたデータ又は各種の設定値などを保存する。
【００４２】
ＲＯＭ３０２又は補助記憶デバイス３０４に記憶されるプログラムは、後述する処理を実行するためのプログラムを含む。一例として、店舗サーバー３００は、当該プログラムがＲＯＭ３０２又は補助記憶デバイス３０４に記憶されない状態で店舗サーバー３００の管理者などへと譲渡される。そして、別途に当該管理者などへと譲渡された当該プログラムが、当該管理者などによる操作の下に補助記憶デバイス３０４へと書き込まれる。しかしながら、店舗サーバー３００は、当該プログラムがＲＯＭ３０２又は補助記憶デバイス３０４に記憶された状態で当該管理者などへと譲渡されても良い。上述のプログラムの譲渡は、例えば、磁気ディスク、光磁気ディスク、光ディスク又は半導体メモリなどのようなリムーバブルな記憶媒体に記録して、あるいはネットワークＮＷ１などを介したダウンロードにより実現できる。
【００４３】
通信インターフェース３０５は、店舗サーバー３００がネットワークＮＷ１などを介して通信するためのインターフェースである。また、通信インターフェース３０５は、店舗サーバー３００がＰＯＳ端末４００などと通信するためのインターフェースである。
【００４４】
バス３０６は、コントロールバス、アドレスバス及びデータバスなどを含み、店舗サーバー３００の各部で授受される信号を伝送する。
【００４５】
図５は、ＰＯＳ端末４００の要部回路構成の一例を示すブロック図である。
ＰＯＳ端末４００は、一例として、プロセッサー４０１、ＲＯＭ４０２、ＲＡＭ４０３、補助記憶デバイス４０４、通信インターフェース４０５、リーダーライター４０６、生体センサー４０７、表示デバイス４０８、入力デバイス４０９及びスキャナー４１０を含む。そして、バス４１１などが、これら各部を接続する。
【００４６】
プロセッサー４０１は、ＰＯＳ端末４００の動作に必要な演算及び制御などの処理を行うコンピューターの中枢部分に相当する。プロセッサー４０１は、ＲＯＭ４０２又は補助記憶デバイス４０４などに記憶されたファームウェア、システムソフトウェア及びアプリケーションソフトウェアなどのプログラムに基づいて、ＰＯＳ端末４００の各種の機能を実現するべく各部を制御する。なお、当該プログラムの一部又は全部は、プロセッサー４０１の回路内に組み込まれていても良い。プロセッサー４０１は、例えば、ＣＰＵ、ＭＰＵ、ＳｏＣ、ＤＳＰ、ＧＰＵ、ＡＳＩＣ、ＰＬＤ又はＦＰＧＡなどである。あるいは、プロセッサー４０１は、これらのうちの複数を組み合わせたものである。
【００４７】
ＲＯＭ４０２は、プロセッサー４０１を中枢とするコンピューターの主記憶装置に相当する。ＲＯＭ４０２は、専らデータの読み出しに用いられる不揮発性メモリである。ＲＯＭ４０２は、上記のプログラムのうち、例えばファームウェアなどを記憶する。また、ＲＯＭ４０２は、プロセッサー４０１が各種の処理を行う上で使用するデータ又は各種の設定値などを記憶する。
【００４８】
ＲＡＭ４０３は、プロセッサー４０１を中枢とするコンピューターの主記憶装置に相当する。ＲＡＭ４０３は、データの読み書きに用いられるメモリである。ＲＡＭ４０３は、プロセッサー４０１が各種の処理を行う上で一時的に使用するデータを記憶しておく、いわゆるワークエリアなどとして利用される。ＲＡＭ４０３は、典型的には揮発性メモリである。
【００４９】
補助記憶デバイス４０４は、プロセッサー４０１を中枢とするコンピューターの補助記憶装置に相当する。補助記憶デバイス４０４は、例えばＥＥＰＲＯＭ、ＨＤＤ又はフラッシュメモリなどである。補助記憶デバイス４０４は、上記のプログラムのうち、例えば、システムソフトウェア及びアプリケーションソフトウェアなどを記憶する。また、補助記憶デバイス４０４は、プロセッサー４０１が各種の処理を行う上で使用するデータ、プロセッサー４０１での処理によって生成されたデータ又は各種の設定値などを保存する。また、補助記憶デバイス４０４は、購入対象として登録された商品及びサービスのリストである商品リストも記憶する。あるいは、ＲＡＭ４０３が、上記商品リストを記憶しても良い。さらに、補助記憶デバイス４０４は、店舗で販売されている商品についての商品コード、商品名及び金額などの各種情報を含む商品データベースも記憶する。
【００５０】
ＲＯＭ４０２又は補助記憶デバイス４０４に記憶されるプログラムは、後述する処理を実行するためのプログラムを含む。一例として、ＰＯＳ端末４００は、当該プログラムがＲＯＭ４０２又は補助記憶デバイス４０４に記憶された状態でＰＯＳ端末４００の管理者などへと譲渡される。しかしながら、ＰＯＳ端末４００は、当該プログラムがＲＯＭ４０２又は補助記憶デバイス４０４に記憶されない状態で当該管理者などに譲渡されても良い。また、ＰＯＳ端末４００は、当該プログラムとは別のプログラムがＲＯＭ４０２又は補助記憶デバイス４０４に記憶された状態で当該管理者などに譲渡されても良い。そして、後述する処理を実行するためのプログラムが別途に当該管理者などへと譲渡され、当該管理者又はサービスマンなどによる操作の下にＲＯＭ４０２又は補助記憶デバイス４０４へと書き込まれても良い。このときのプログラムの譲渡は、例えば、磁気ディスク、光磁気ディスク、光ディスク又は半導体メモリなどのようなリムーバブルな記憶媒体に記録して、あるいはネットワークＮＷ１などを介したダウンロードにより実現できる。
【００５１】
通信インターフェース４０５は、ＰＯＳ端末４００が店舗サーバー３００などと通信するためのインターフェースである。また、通信インターフェース４０５は、ＰＯＳ端末４００がネットワークＮＷ１などを介して通信するためのインターフェースである。
【００５２】
リーダーライター４０６は、磁気カード（磁気ストライプカード）、接触型ＩＣカード又は非接触型ＩＣカードなどと通信を行う。これにより、リーダーライター４０６は、ポイントカードに記憶された情報を読み取る。また、リーダーライター４０６は、ポイントカードに情報を書き込む。
また、ポイントカードはカードのような形態に限らない。例えば、リーダーライター４０６は、電子機器（例えば携帯電話、スマートフォン、タブレットＰＣ等）に搭載された非接触型ＩＣチップと通信を行う。これにより、リーダーライター４０６は、ポイントカードの機能を有する電子機器に記憶された情報を読み取る。また、リーダーライター４０６は、当該電子機器の記憶装置に情報を書き込む。
リーダーライター４０６は、ＰＯＳ端末４００に外付けされる周辺機器などであっても良いし、ＰＯＳ端末４００と一体となっているものであっても良い。
【００５３】
なお、ポイントカードは、例えば、ポイントＩＤを記憶する。ポイントＩＤは、例えば、ポイント口座ごとにユニークに付与される識別符号である。ポイント口座は、例えば、分散型台帳ＤＬ１で用いられるポイント用のウォレットである。ポイントＩＤは、例えば、ウォレットアドレスなどである。
【００５４】
生体センサー４０７は、生体認証を行うために、買物客などの人から、指紋、虹彩若しくは顔などの身体的特徴又は行動的特徴などの生体情報を読み取るセンサーなどである。なお、生体センサー４０７は、ＰＯＳ端末４００に外付けされる周辺機器などであっても良いし、ＰＯＳ端末４００と一体となっているものであっても良い。生体センサー４０７は、例えば、指紋センサー又はカメラなどである。
【００５５】
表示デバイス４０８は、ＰＯＳ端末４００の操作者に各種情報を通知するための画面を表示する。表示デバイス４０８は、例えば、液晶ディスプレイ又は有機ＥＬ（electro-luminescence）ディスプレイなどのディスプレイである。
【００５６】
入力デバイス４０９は、ＰＯＳ端末４００の操作者による操作を受け付ける。入力デバイス４０９は、例えば、キーボード、キーパッド、タッチパッド又はマウスなどである。また、表示デバイス４０８及び入力デバイス４０９としては、タッチパネルを用いることもできる。すなわち、タッチパネルが備える表示パネルを表示デバイス４０８として用いることができる。そして、タッチパネルが備える、タッチ入力によるポインティングデバイスを入力デバイス４０９として用いることができる。
【００５７】
スキャナー４１０は、商品などに表示されたバーコード又は二次元コードを読み取って、このバーコード又は二次元コードが表す商品コードなどを出力する。スキャナー４１０は、手で持って使用するタイプでも良いし、レジ台などに固定するタイプでも良い。また、スキャナー４１０は、ＰＯＳ端末４００に外付けされる周辺機器などであっても良いし、ＰＯＳ端末４００と一体となっているものであっても良い。
【００５８】
なお、ポイントカードは、ユーザーＩＤをバーコード又は二次元コードなどに記憶するものであっても良い。また、ポイントカードはカードのような形態に限らず、ポイントカードは、スマートフォンなどの電子機器の画面にバーコード又は二次元コードなどを表示するものであっても良い。当該バーコード又は二次元コードは、ユーザーＩＤなどを記憶する。当該ユーザーＩＤは、各電子機器又は各アプリケーションソフトごとに割り当てられる識別符号であっても良い。スキャナー４１０は、これらのバーコード又は二次元コードを読み取って、当該バーコード又は二次元コードなどが表すポイントＩＤを出力する。
【００５９】
バス４１１は、コントロールバス、アドレスバス及びデータバスなどを含み、ＰＯＳ端末４００の各部で授受される信号を伝送する。
【００６０】
図６は、客端末５００の要部回路構成の一例を示すブロック図である。
客端末５００は、一例として、プロセッサー５０１、ＲＯＭ５０２、ＲＡＭ５０３、補助記憶デバイス５０４、通信インターフェース５０５、リーダーライター５０６、生体センサー５０７、タッチパネル５０８及びスキャナー５０９を含む。そして、バス５１０などが、これら各部を接続する。
【００６１】
プロセッサー５０１は、客端末５００の動作に必要な演算及び制御などの処理を行うコンピューターの中枢部分に相当する。プロセッサー５０１は、ＲＯＭ５０２又は補助記憶デバイス５０４などに記憶されたファームウェア、システムソフトウェア及びアプリケーションソフトウェアなどのプログラムに基づいて、客端末５００の各種の機能を実現するべく各部を制御する。なお、当該プログラムの一部又は全部は、プロセッサー５０１の回路内に組み込まれていても良い。プロセッサー５０１は、例えば、ＣＰＵ、ＭＰＵ、ＳｏＣ、ＤＳＰ、ＧＰＵ、ＡＳＩＣ、ＰＬＤ又はＦＰＧＡなどである。あるいは、プロセッサー５０１は、これらのうちの複数を組み合わせたものである。
【００６２】
ＲＯＭ５０２は、プロセッサー５０１を中枢とするコンピューターの主記憶装置に相当する。ＲＯＭ５０２は、専らデータの読み出しに用いられる不揮発性メモリである。ＲＯＭ５０２は、上記のプログラムのうち、例えばファームウェアなどを記憶する。また、ＲＯＭ５０２は、プロセッサー５０１が各種の処理を行う上で使用するデータ又は各種の設定値などを記憶する。
【００６３】
ＲＡＭ５０３は、プロセッサー５０１を中枢とするコンピューターの主記憶装置に相当する。ＲＡＭ５０３は、データの読み書きに用いられるメモリである。ＲＡＭ５０３は、プロセッサー５０１が各種の処理を行う上で一時的に使用するデータを記憶しておく、いわゆるワークエリアなどとして利用される。ＲＡＭ５０３は、典型的には揮発性メモリである。
【００６４】
補助記憶デバイス５０４は、プロセッサー５０１を中枢とするコンピューターの補助記憶装置に相当する。補助記憶デバイス５０４は、例えばＥＥＰＲＯＭ、ＨＤＤ又はフラッシュメモリなどである。補助記憶デバイス５０４は、上記のプログラムのうち、例えば、システムソフトウェア及びアプリケーションソフトウェアなどを記憶する。また、補助記憶デバイス５０４は、プロセッサー５０１が各種の処理を行う上で使用するデータ、プロセッサー５０１での処理によって生成されたデータ又は各種の設定値などを保存する。
【００６５】
ＲＯＭ５０２又は補助記憶デバイス５０４に記憶されるプログラムは、後述する処理を実行するためのプログラムを含む。一例として、客端末５００は、当該プログラムがＲＯＭ５０２又は補助記憶デバイス５０４に記憶されない状態で客端末５００の管理者などへと譲渡される。そして、別途に当該管理者などへと譲渡された当該プログラムが、当該管理者などによる操作の下に補助記憶デバイス５０４へと書き込まれる。しかしながら、客端末５００は、当該プログラムがＲＯＭ５０２又は補助記憶デバイス５０４に記憶された状態で当該管理者などへと譲渡されても良い。上述のプログラムの譲渡は、例えば、磁気ディスク、光磁気ディスク、光ディスク又は半導体メモリなどのようなリムーバブルな記憶媒体に記録して、あるいはネットワークＮＷ１などを介したダウンロードにより実現できる。
【００６６】
通信インターフェース５０５は、客端末５００がネットワークＮＷ１などを介して通信するためのインターフェースである。
【００６７】
リーダーライター５０６は、磁気カード（磁気ストライプカード）、接触型ＩＣカード又は非接触型ＩＣカードなどと通信を行う。また、リーダーライター５０６は、電子機器（例えば携帯電話、スマートフォン、タブレットＰＣ等）に搭載された非接触型ＩＣチップと通信を行う。
【００６８】
生体センサー５０７は、生体認証を行うために、買物客などの人から、指紋、虹彩若しくは顔などの身体的特徴又は行動的特徴などの生体情報を読み取るセンサーなどである。生体センサー５０７は、例えば、指紋センサー又はカメラなどである。
【００６９】
タッチパネル５０８は、例えば、液晶ディスプレイ又は有機ＥＬディスプレイなどのディスプレイとタッチ入力によるポインティングデバイスとが積層されたものである。タッチパネル５０８が備えるディスプレイは、客端末５００の操作者に各種情報を通知するための画面を表示する表示デバイスとして機能する。また、タッチパネル５０８は、当該操作者によるタッチ操作を受け付ける入力デバイスとして機能する。
【００７０】
スキャナー５０９は、バーコード又は二次元コードなどを読み取って、このバーコード又は二次元コードなどが表す情報を出力する。なお、生体センサー５０７とスキャナー５０９は、共通のカメラであっても良い。
【００７１】
バス５１０は、コントロールバス、アドレスバス及びデータバスなどを含み、客端末５００の各部で授受される信号を伝送する。
【００７２】
以下、実施形態に係るポイントシステム１の動作を図に基づいて説明する。なお、以下の動作説明における処理の内容は一例であって、同様な結果を得ることが可能な様々な処理を適宜に利用できる。
【００７３】
なお、以下の説明では、法定通貨の例として日本円を用いて説明を行うが、ポイントシステム１は、米ドル又はユーロなどの円以外の法定通貨を用いるものであっても良い。また、企業通貨（ポイント）と法定通貨（円）とのレートは、以下の説明では、簡単のために１〔ポイント〕＝１円とする。なお、〔ポイント〕のようにポイントに括弧を付けている場合、単位であることを示す。
【００７４】
ＰＯＳ端末４００の処理について図７を用いて説明する。
図７は、ＰＯＳ端末４００のプロセッサー４０１による処理の一例を示すフローチャートである。プロセッサー４０１は、例えば、ＲＯＭ４０２又は補助記憶デバイス４０４などに記憶されたプログラムに基づいてこの処理を実行する。なお、プロセッサー４０１がＡＣＴｎ（ｎは、自然数。）の処理の後にＡＣＴ（ｎ＋１）へと進む場合、このことを説明する記載を省略する場合がある。
【００７５】
プロセッサー４０１は、例えば、ＰＯＳ端末４００が起動したことに応じて図７に示す処理を開始する。なお、プロセッサー４０１は、図７に示す処理を開始するとき、変数ＶＰ１を、ＲＡＭ４０３などに割り当てる。変数ＶＰ１は、ポイントＩＤを記憶するための変数である。
図７のＡＣＴ１１においてＰＯＳ端末４００のプロセッサー４０１は、商品リストをリセットする。すなわち、プロセッサー４０１は、商品リストを、商品が登録されていない状態にする。また、プロセッサー４０１は、変数ＶＰ１をリセットして、変数ＶＰ１にポイントＩＤが記憶されていない状態にする。
【００７６】
ＡＣＴ１２においてプロセッサー４０１は、商品コードが入力されたか否かを判定する。例えば、ＰＯＳ端末４００の操作者は、商品に付されたバーコードをスキャナー４１０に読み込ませる。これにより、当該バーコードに記録された商品コードがプロセッサー４０１に入力される。なお、商品コードは、公知のその他の方法によりプロセッサーに入力されても良い。プロセッサー４０１は、商品コードが入力されないならば、ＡＣＴ１２においてＮｏと判定してＡＣＴ１３へと進む。
【００７７】
ＡＣＴ１３においてプロセッサー４０１は、生体センサー４０７によって生体情報が読み取られたか否かを判定する。プロセッサー４０１は、生体センサー４０７によって生体情報が読み取られていないならば、ＡＣＴ１３においてＮｏと判定してＡＣＴ１４へと進む。
【００７８】
ＡＣＴ１４においてプロセッサー４０１は、ポイントＩＤが入力されたか否かを判定する。例えば、リーダーライター４０６又はスキャナー４１０によってポイントカードからポイントＩＤが読み取られることにより、リーダーライター４０６又はスキャナー４１０が出力するポイントＩＤがプロセッサー４０１に入力される。プロセッサー４０１は、ポイントＩＤが入力されていないならば、ＡＣＴ１４においてＮｏと判定してＡＣＴ１５へと進む。
【００７９】
ＡＣＴ１５においてプロセッサー４０１は、商品の登録を完了する完了操作が行われたか否かを判定する。すなわちプロセッサー４０１は、小計ボタンを操作するなどの予め定められた操作が行われたか否かを判定する。なお、商品が商品リストに登録されていない状態での完了操作がなされた場合のプロセッサー４０１の動作は、プロセッサー４０１のプログラムの設計者により定められて良い。例えば、プロセッサー４０１は、完了操作を無視する。あるいは、プロセッサー４０１は、商品が登録されていない状態では、完了操作自体ができないようにしても良い。プロセッサー４０１は、完了操作が行われないならば、ＡＣＴ１５においてＮｏと判定してＡＣＴ１２へと戻る。かくして、プロセッサー４０１は、商品コード又はポイントＩＤが入力されるか、生体情報が読み取られるか、完了操作が行われるまでＡＣＴ１２〜ＡＣＴ１５を繰り返す。
【００８０】
買物客は、例えば、購入したい商品をＰＯＳ端末４００に持って行く。そして、ＰＯＳ端末４００の操作者は、例えば、当該商品に付されたバーコードをスキャナー４１０により読み込むなどして、当該商品の商品コードをＰＯＳ端末４００に入力する。
プロセッサー４０１は、ＡＣＴ１２〜ＡＣＴ１５の待受状態にあるときに商品コードが入力されたならば、ＡＣＴ１２においてＹｅｓと判定してＡＣＴ１６へと進む。
【００８１】
ＡＣＴ１６においてプロセッサー４０１は、ＡＣＴ１５で入力された商品コードを、ＲＡＭ４０３又は補助記憶デバイス４０４などに記憶された商品リストに追加する。プロセッサー４０１は、ＡＣＴ１６の処理の後、ＡＣＴ１２へと戻る。
【００８２】
プロセッサー４０１は、ＡＣＴ１２〜ＡＣＴ１５の待受状態にあるときに生体センサー４０７によって生体情報が読み取られたならば、ＡＣＴ１３においてＹｅｓと判定してＡＣＴ１７へと進む。
【００８３】
ＡＣＴ１７においてプロセッサー４０１は、ＡＣＴ１３で読み取られた生体情報に基づき、生体情報とポイントＩＤとを関連付ける生体情報データベースを参照して、ポイントＩＤを取得する。なお、生体情報データベースは、例えば、本部サーバー２００の補助記憶デバイス２０４、店舗サーバー３００の補助記憶デバイス３０４、ＰＯＳ端末４００の補助記憶デバイス４０４、複数の業者間で共通のサーバー、分散型台帳ＤＬ１、Ｐ２Ｐ分散ストレージなどに記憶される。プロセッサー４０１は、上記のいずれかの場所から生体情報データベースを取得する。
【００８４】
プロセッサー４０１は、ＡＣＴ１７の処理の後、ＡＣＴ１８へと進む。また、プロセッサー４０１は、ＡＣＴ１２〜ＡＣＴ１５の待受状態にあるときにポイントＩＤが入力されたならば、ＡＣＴ１４においてＹｅｓと判定してＡＣＴ１８へと進む。
【００８５】
ＡＣＴ１８においてプロセッサー４０１は、ＡＣＴ１７で取得したポイントＩＤ又はＡＣＴ１４で入力されたポイントＩＤを記憶する。すなわち、プロセッサー４０１は、変数ＶＰ１に、ＡＣＴ１７で取得したポイントＩＤ又はＡＣＴ１４で入力されたポイントＩＤを代入する。なお変数ＶＰ１に記憶されたポイントＩＤを、以下「対象ポイントＩＤ」というものとする。
【００８６】
ＡＣＴ１９においてプロセッサー４０１は、分散型台帳ＤＬ１から、対象ポイントＩＤで特定されるポイント口座（以下「対象ポイント口座」という。）のポイント残高を、例えば以下のようにして取得する。
プロセッサー４０１は、分散型台帳ＤＬ１に記録されたトランザクション（取引情報）を取得する。そして、プロセッサー４０１は、トランザクションに記録されたポイントの取引履歴から、対象ポイント口座にかかわる取引履歴のみを抽出する。さらに、プロセッサー４０１は、抽出した取引履歴から、対象ポイント口座のポイント残高を計算によって求める。これにより、プロセッサー４０１は、当該ポイント残高を取得する。なお、プロセッサー４０１は、ポイント残高をポイントの発行元ごとに求める。例えば、プロセッサー４０１は、発行元がＳ１であるポイントの残高がＰ１〔ポイント〕、発行元がＳ２であるポイントの残高がＰ２〔ポイント〕、発行元がＳ３であるポイントの残高がＰ３〔ポイント〕、…のように発行元ごとにポイント残高を求める。
以上より、トランザクションは、ポイント残高が分かるデータの一例である。したがって、プロセッサー４０１は、トランザクションを取得することで、ポイント残高が分かるデータを取得する取得部として機能する。
【００８７】
ＡＣＴ２０においてプロセッサー４０１は、使用可能なポイントを求める。
なお、ポイントシステム１では、ポイントを使用する場合、ポイントの発行元とポイントの使用先で決定される一定の計算式で計算された量のポイントとして使用可能である。例えば、業者Ｓａで発行されたＰａ〔ポイント〕のポイントを業者Ｓｂで使用する場合、Ｐｂ〔ポイント〕のポイントとして使用可能であるとする。このとき、Ｐｂは、Ｐａの関数ｆ（Ｐａ）によって求めることができる。当該関数ｆは、例えば、以下の（１）式のようなものである。なお、Ｐｂ〔ポイント〕を以下「使用可能ポイント」という場合がある。
Ｐｂ＝ｆ（Ｐａ）＝α・Ｐａ―β        （１）
ここで、αは、ポイントの発行元とポイントの使用先の組み合わせで決定される係数である。また、βは、ポイントの発行元とポイントの使用先の組み合わせで決定される数である。ただし、βは、典型的には０である。関数ｆは、例えば、図８に示すようなテーブルＴ１によって規定される。図８は、補助記憶デバイス５０４に記憶されるテーブルＴ１の一例を示す図である。テーブルＴ１は、例えば、発行元がＳ３で使用先がＳ１の場合に、関数ｆが関数ｆ＿３１であることを示す。関数ｆ＿３１は、例えば、ｆ＿３１（Ｐａ）＝α＿３１・Ｐａ−β＿３１である。すなわち、発行元がＳ３で使用先がＳ１の場合、αの値がα＿３１でβの値がβ＿３１である。なお、関数ｆは、例えば、ポイント使用先などによって決定される。
プロセッサー４０１は、発行元ごとに、テーブルＴ１を参照して（１）式により、使用可能ポイントを求める。ここで、ポイントの使用先は、例えば、ＰＯＳ端末４００を設置している業者である。プロセッサー４０１は、関数ｆにより使用可能ポイントを求めることで、ポイント使用先で使用可能なポイントを求める処理部として機能する。
【００８８】
ＡＣＴ２１においてプロセッサー４０１は、ＡＣＴ２０で求めた使用可能ポイントをＰＯＳ端末４００の操作者及び買物客に報知する。例えば、プロセッサー４０１は、図９に示すような画像ＩＭ１を表示デバイス４０８に表示させる。図９は、表示デバイス４０８が表示する画像ＩＭ１の一例を示す図である。なお、図９は、画像ＩＭ１の一部を省略して示している。画像ＩＭ１は、図９に示すように、一例として、ポイントの発行元ごとのポイント残高、関数ｆ及び使用可能ポイントを示す表である。なお、画像ＩＭ１は、例えば、関数ｆを、αの値及びβの値により示す。画像ＩＭ１は、例えば、発行元がＳ２であるポイントの残高が８００〔ポイント〕であることなどを示す。また、画像ＩＭ１は、例えば、発行元がＳ２であるポイントの使用可能ポイントは、８００〔ポイント〕に、係数０．９５をかけた７６０〔ポイント〕であることなどを示す。また、画像ＩＭ１は、全ての発行元の使用可能ポイントを合計すると４１７０〔ポイント〕であることを示す。なお、全ての発行元の使用可能ポイントの合計を、以下「最大ポイント」というものとする。
なお、プロセッサー４０１は、各発行元のポイント残高、使用可能ポイント、及び関数ｆを、その他の方法により報知しても良い。例えば、プロセッサー４０１は、音声により報知する。
プロセッサー４０１は、ＡＣＴ２１の処理の後、ＡＣＴ１２へと戻る。
【００８９】
プロセッサー４０１は、ＡＣＴ１２〜ＡＣＴ１５の待受状態にあるときに完了操作が行われたならば、ＡＣＴ１５においてＹｅｓと判定してＡＣＴ２２へと進む。
ＡＣＴ２２においてプロセッサー４０１は、決済に使用するポイント数（以下「使用ポイント」という。）が入力されたか否かを判定する。なお、使用ポイントは、最大ポイント以下且つ商品リストに登録されている商品及びサービスの合計金額以下である必要がある。なお、合計金額は、税金及びサービス料などを含むものとする。プロセッサー４０１は、使用ポイントが入力されていないならば、ＡＣＴ２２においてＮｏと判定してＡＣＴ２３へと進む。
【００９０】
ＡＣＴ２３においてプロセッサー４０１は、決済処理を開始するか否かを判定する。プロセッサー４０１は、例えば、決済処理の開始を指示するためのボタンが操作されたことに応じて、決済処理を開始すると判定する。プロセッサー４０１は、決済処理を開始しないと判定するならば、ＡＣＴ２３においてＮｏと判定してＡＣＴ２２へと戻る。かくして、プロセッサー４０１は、使用ポイントが入力されるか、決済処理を開始すると判定するまでＡＣＴ２２及びＡＣＴ２３を繰り返す。
【００９１】
プロセッサー４０１は、ＡＣＴ２２及びＡＣＴ２３の待受状態にあるときに、使用ポイントが入力されたならば、ＡＣＴ２２においてＹｅｓと判定してＡＣＴ２４へと進む。
【００９２】
ＡＣＴ２４においてプロセッサー４０１は、合計金額から使用ポイントを引いた残りの金額を計算する。そして、プロセッサー４０１は、当該残りの金額を報知する。例えば、プロセッサー４０１は、当該残りの金額を表示デバイス４０８に表示させる。プロセッサー４０１は、ＡＣＴ２４の処理の後、ＡＣＴ２３へと進む。
【００９３】
プロセッサー４０１は、ＡＣＴ２２及びＡＣＴ２３の待受状態にあるときに決済処理を開始すると判定するならば、ＡＣＴ２３においてＹｅｓと判定してＡＣＴ２５へと進む。
ＡＣＴ２５においてプロセッサー４０１は、決済処理を行う。なお、現金又はクレジットカードなどのポイント以外の決済については、周知の方法を用いることができるので説明を省略する。ここでは、ポイントを用いる決済についてのみ図１０及び図１１を用いて説明する。図１０及び図１１は、ＰＯＳ端末４００のプロセッサー４０１による処理の一例を示すフローチャートである。プロセッサー４０１は、例えば、ＲＯＭ４０２又は補助記憶デバイス４０４などに記憶されたプログラムに基づいてこの処理を実行する。なお、プロセッサー５０１は、例えば、図１０及び図１１に示す処理を開始するときなどに、各変数を、ＲＡＭ５０３などに割り当てる。
【００９４】
ＡＣＴ３１においてプロセッサー４０１は、変数ｑ１に値ｐ１を代入する。なお、値ｐ１は、使用ポイントを示す。変数ｑ１は、使用ポイントのうちの、どの発行元のポイントを用いるか未確定である分を示す。
【００９５】
ＡＣＴ３２においてプロセッサー４０１は、変数ｊに０を代入する。変数ｊは、カウンターである。
【００９６】
ＡＣＴ３３においてプロセッサー４０１は、変数ｑ１の値が０を超えるか否かを判定する。プロセッサー４０１は、変数ｑ１の値が０を超えるならば、ＡＣＴ３３においてＹｅｓと判定してＡＣＴ３４へと進む。
ＡＣＴ３４においてプロセッサー４０１は、変数ｉに１を代入する。変数ｉは、カウンターである。
【００９７】
ＡＣＴ３５においてプロセッサー４０１は、変数ｑ１の値が値ｐ３＿ｉ以下であるか否かを判定する。なお、発行元がＳ１の使用可能ポイントをｐ３＿１、発行元がＳ２の使用可能ポイントをｐ３＿２、…とする。これを一般化し、値ｐ３＿ｋは、発行元がＳｋの使用可能ポイントを示す。ただし、ｋは、１以上ｋ＿ｍａｘ以下の整数である。ここで、ｋ＿ｍａｘは、発行元の総数である。プロセッサー４０１は、変数ｑ１の値が値ｐ３＿ｉ以下であるならば、ＡＣＴ３５においてＹｅｓと判定してＡＣＴ３６へと進む。
【００９８】
ＡＣＴ３６においてプロセッサー４０１は、変数ｑ２＿ｉに変数ｑ１の値を代入する。なお、変数ｑ２＿ｉは、発行元がＳｉのポイントを使用する場合に使用するポイントを示す。
ＡＣＴ３７においてプロセッサー４０１は、変数ｑ３＿ｉに、ｆ＿ｉ（ｑ１）の計算結果を代入する。なお、ｆ＿ｉは、発行元がＳｉであるポイントについての関数ｆである。例えば、ｆ＿ｉ（ｑ１）＝（α＿ｉ・ｑ１−β＿ｉ）である。なお、α＿ｉは、発行元がＳｉであるポイントについてのαの値である。また、β＿ｉは、発行元がＳｉであるポイントについてのβの値である。なお、変数ｑ３＿ｉは、発行元がＳｉのポイントをｑ２＿ｉ〔ポイント〕使用する場合の使用可能ポイントを示す。
【００９９】
対して、プロセッサー４０１は、変数ｑ１の値が値ｐ３＿ｉを超えるならば、ＡＣＴ３５においてＮｏと判定してＡＣＴ３８へと進む。
ＡＣＴ３８においてプロセッサー４０１は、変数ｑ２＿ｉに値ｐ２＿ｉを代入する。なお、発行元がＳ１のポイント残高をｐ２＿１、発行元がＳ２のポイント残高をｐ２＿２、…とする。これを一般化し、発行元がＳｋのポイント残高をｐ２＿ｋとする。
ＡＣＴ３９においてプロセッサー４０１は、変数ｑ３＿ｉに値ｐ３＿ｉを代入する。
【０１００】
プロセッサー４０１は、ＡＣＴ３７又はＡＣＴ３９の処理の後、ＡＣＴ４０へと進む。
ＡＣＴ４０においてプロセッサー４０１は、変数ｑ４＿ｉに、（ｑ３＿ｉ／ｑ２＿ｉ）の計算結果を代入する。なお、変数ｑ４＿ｉは、発行元がＳｉのポイントをｑ２＿ｉ〔ポイント〕使用する場合の使用可能ポイントがｑ２＿ｉ〔ポイント〕の何倍であるかを示す。
ＡＣＴ４１においてプロセッサー４０１は、変数ｉの値を１増加させる。
【０１０１】
ＡＣＴ４２においてプロセッサー４０１は、変数ｉの値が値ｋ＿ｍａｘ以下であるか否かを判定する。プロセッサー４０１は、変数ｉの値が値ｋ＿ｍａｘ以下であるならば、ＡＣＴ４２においてＹｅｓと判定してＡＣＴ３５へと戻る。対して、プロセッサー４０１は、変数ｉの値が値ｋ＿ｍａｘを超えるならば、ＡＣＴ４２においてＮｏと判定してＡＣＴ４３へと進む。
【０１０２】
ＡＣＴ４３においてプロセッサー４０１は、変数ｉに１を代入にする。
ＡＣＴ４４においてプロセッサー４０１は、変数ｑ４＿ｍａｘに０を代入する。
【０１０３】
ＡＣＴ４５においてプロセッサー４０１は、変数ｑ４＿ｍａｘの値が変数ｑ４＿ｉの値未満であるか否かを判定する。プロセッサー４０１は、変数ｑ４＿ｍａｘの値が変数ｑ４＿ｉの値未満であるならば、ＡＣＴ４５においてＹｅｓと判定してＡＣＴ４６へと進む。
ＡＣＴ４６においてプロセッサー４０１は、変数ｑ４＿ｍａｘに変数ｑ４＿ｉの値を代入する。
ＡＣＴ４７においてプロセッサー４０１は、変数ｉ＿ｍａｘに変数ｉの値を代入する。
【０１０４】
対して、プロセッサー４０１は、変数ｑ４＿ｍａｘの値が変数ｑ４＿ｉの値以上であるならば、ＡＣＴ４５においてＮｏと判定してＡＣＴ４７へと進む。また、プロセッサー４０１は、ＡＣＴ４７の処理の後もＡＣＴ４８へと進む。
【０１０５】
ＡＣＴ４８においてプロセッサー４０１は、変数ｉの値を１増加する
ＡＣＴ４９においてプロセッサー４０１は、変数ｉの値が値ｋ＿ｍａｘ以下であるか否かを判定する。プロセッサー４０１は、変数ｉの値が値ｋ＿ｍａｘ以下であるならば、ＡＣＴ４９においてＹｅｓと判定してＡＣＴ４５へと戻る。対して、プロセッサー４０１は、変数ｉの値が値ｋ＿ｍａｘを超えるならば、ＡＣＴ４９においてＮｏと判定してＡＣＴ５０へと進む。
プロセッサー４０１は、上記のようにＡＣＴ４５〜ＡＣＴ４９を繰り返すことで、どの発行元のポイントを使用する場合に、使用するポイントが最も少なくなるかを求める。プロセッサー４０１がＡＣＴ４９においてＮｏと判定したとき、変数ｑ４＿ｍａｘの値は、１≦ｉ≦ｋ＿ｍａｘの範囲におけるｑ４＿ｉの最大値である。また、プロセッサー４０１がＡＣＴ４９においてＮｏと判定したとき、変数ｉ＿ｍａｘは、発行元がＳｉ＿ｍａｘであるポイントを使用する場合に、使用するポイントが最も少なくなることを示す。
【０１０６】
ＡＣＴ５０においてプロセッサー４０１は、変数ｊの値を１増加させる。
ＡＣＴ５１においてプロセッサー４０１は、変数ｑ１に、（ｑ１−ｑ３＿（ｉ＿ｍａｘ））の計算結果を代入する。
ＡＣＴ５２においてプロセッサー４０１は、変数ｒ１＿ｊに、変数ｉ＿ｍａｘの値を代入する。なお、変数ｒ１＿ｊは、どの発行元のポイントを使用するかを示す。
ＡＣＴ５３においてプロセッサー４０１は、変数ｒ２＿ｊに、変数ｑ２＿（ｉ＿ｍａｘ）の値を代入する。なお、変数ｒ２＿ｊは、発行元がＳｒ１＿ｊのポイントをｒ２＿ｊ〔ポイント〕使用することを示す。プロセッサー４０１は、ＡＣＴ５３の処理の後、図１０のＡＣＴ３３へと戻る。
【０１０７】
プロセッサー４０１は、変数ｑ１の値が０以下であるならば、ＡＣＴ３２においてＮｏと判定してＡＣＴ５４へと進む。
ＡＣＴ５４においてプロセッサー４０１は、対象ポイント口座から、発行元がＳｒ１＿１であるポイントをｒ２＿１〔ポイント〕、発行元がＳｒ１＿２であるポイントをｒ２＿２〔ポイント〕、…、及び、発行元がＳｒ１＿ｊであるポイントをｒ２＿ｊ〔ポイント〕を使用するための処理を行う。例えば、プロセッサー４０１は、対象ポイント口座から発行元がＳｒ１＿１であるポイントをｒ２＿１〔ポイント〕減じるトランザクション、対象ポイント口座から発行元がＳｒ１＿２であるポイントをｒ２＿２〔ポイント〕減じるトランザクション、…、及び、対象ポイント口座から発行元がＳｒ１＿ｊ−１であるポイントをｒ２＿ｊ〔ポイント〕減じるトランザクションをそれぞれ分散型台帳ＤＬ１に投函する。これに応じて、分散型台帳ＤＬ１は、投函されたトランザクションを合意及び承認する。これにより、これらトランザクションは、分散型台帳ＤＬ１に記録される。なお、トランザクションの投函は、ＰＯＳ端末４００が直接行っても良いし、ＰＯＳ端末４００から送信される情報に基づいて本部サーバー２００又は店舗サーバー３００が行っても良い。
プロセッサー４０１は、ＡＣＴ５４の処理の後、図１０及び図１１に示す処理を終了する。
【０１０８】
図７の説明に戻る。
図７のＡＣＴ２６においてプロセッサー４０１は、変数ＶＰ１にポイントＩＤが記憶されているか否かを判定する。プロセッサー４０１は、変数ＶＰ１にポイントＩＤが記憶されているならば、ＡＣＴ２６においてＹｅｓと判定してＡＣＴ２７へと進む。
【０１０９】
ＡＣＴ２７においてプロセッサー４０１は、対象ポイント口座に、購入金額に応じたポイントを付与する。例えば、プロセッサー４０１は、Ｐｃ＝γ×（合計金額−使用ポイント）〔ポイント〕のポイントを付与する。なお、γは、発行元によって異なる１以下の値である。例えば、ＰＯＳ端末４００が業者Ｓｋによって設置されているものである場合、プロセッサー４０１は、対象ポイント口座に、発行元がＳｋであるポイントをＰｃ〔ポイント〕増加させるトランザクションを分散型台帳ＤＬ１に投函する。なお、トランザクションの投函は、前述したように、ＰＯＳ端末４００が直接行っても良いし、ＰＯＳ端末４００から送信される情報に基づいて本部サーバー２００又は店舗サーバー３００が行っても良い。
【０１１０】
プロセッサー４０１は、ＡＣＴ２７の処理の後、ＡＣＴ２８へと進む。また、プロセッサー４０１は、変数ＶＰ１にポイントＩＤが記憶されていないならば、ＡＣＴ２６においてＮｏと判定してＡＣＴ２８へと進む。
ＡＣＴ２８においてプロセッサー４０１は、決済を行った取引についての情報を本部サーバー２００又は店舗サーバー３００に送信する。これに応じて、本部サーバー２００又は店舗サーバー３００は、送信された取引の情報を記録する。なお、プロセッサー４０１は、業者Ｓ３のように店舗サーバー３００及び本部サーバー２００が設置されていない業者に設置されたＰＯＳ端末４００である場合にはＡＣＴ２８の処理を行うには及ばない。
【０１１１】
次に、客端末５００の処理について図１２を用いて説明する。
図１２は、客端末５００のプロセッサー５０１による処理の一例を示すフローチャートである。プロセッサー５０１は、例えば、ＲＯＭ５０２又は補助記憶デバイス５０４などに記憶されたプログラムに基づいてこの処理を実行する。なお、プロセッサー５０１がＡＣＴｎ（ｎは、自然数。）の処理の後にＡＣＴ（ｎ＋１）へと進む場合、このことを説明する記載を省略する場合がある。
【０１１２】
図１２のＡＣＴ６１において客端末５００のプロセッサー５０１は、変数ＶＰ２をリセットして、変数ＶＰ２にポイントＩＤが記憶されていない状態にする。
【０１１３】
ＡＣＴ６２においてプロセッサー５０１は、生体センサー５０７によって生体情報が読み取られたか否かを判定する。プロセッサー５０１は、生体センサー５０７によって生体情報が読み取られていないならば、ＡＣＴ６２においてＮｏと判定してＡＣＴ６３へと進む。
【０１１４】
ＡＣＴ６３においてプロセッサー５０１は、ポイントＩＤが入力されたか否かを判定する。例えば、リーダーライター５０６又はスキャナー５０９によってポイントカードからポイントＩＤが読み取られることにより、リーダーライター５０６又はスキャナー５０９が出力するポイントＩＤがプロセッサー５０１に入力される。プロセッサー５０１は、ポイントＩＤが入力されていないならば、ＡＣＴ６３においてＮｏと判定してＡＣＴ６２へと戻る。かくして、プロセッサー５０１は、生体センサー５０７によって生体情報が読み取られるか、ポイントＩＤが入力されるまでＡＣＴ６２及びＡＣＴ６３を繰り返す。
【０１１５】
プロセッサー５０１は、ＡＣＴ６２及びＡＣＴ６３の待受状態にあるときに生体センサー５０７によって生体情報が読み取られたならば、ＡＣＴ６２においてＹｅｓと判定してＡＣＴ６４へと進む。
【０１１６】
ＡＣＴ６４においてプロセッサー５０１は、ＡＣＴ６２で読み取られた生体情報に基づき、生体情報とポイントＩＤとを関連付ける生体情報データベースを参照して、ポイントＩＤを取得する。なお、生体情報データベースは、例えば、本部サーバー２００の補助記憶デバイス２０４、店舗サーバー３００の補助記憶デバイス３０４、ＰＯＳ端末４００の補助記憶デバイス４０４、客端末５００、又は複数の業者間で共通のサーバー、分散型台帳ＤＬ１、Ｐ２Ｐ分散ストレージなどに記憶される。プロセッサー５０１は、上記のいずれかの場所から生体情報データベースを取得する。
。
【０１１７】
プロセッサー５０１は、ＡＣＴ６２及びＡＣＴ６３の待受状態にあるときにポイントＩＤが入力されたならば、ＡＣＴ６３においてＹｅｓと判定してＡＣＴ６５へと進む。
ＡＣＴ６５においてプロセッサー５０１は、ＡＣＴ６４で取得したポイントＩＤ又はＡＣＴ６３で入力されたポイントＩＤを記憶する。すなわち、プロセッサー５０１は、変数ＶＰ２に、ＡＣＴ６４で取得したポイントＩＤ又はＡＣＴ６３で入力されたポイントＩＤを代入する。なお変数ＶＰ２に記憶されたポイントＩＤを、以下「対象ポイントＩＤ」というものとする。
【０１１８】
ＡＣＴ６６においてプロセッサー５０１は、ポイントの使用先が入力されるのを待ち受ける。客端末５００の操作者は、例えば、ポイントの使用先をＳ１〜Ｓｋ＿ｍａｘの中から選択して入力する。プロセッサー５０１は、ポイントの使用先が入力されたならば、ＡＣＴ６６においてＹｅｓと判定してＡＣＴ６７へと進む。
【０１１９】
ＡＣＴ６７においてプロセッサー５０１は、対象ポイント口座のポイント残高を取得する。なお、プロセッサー５０１は、例えば、ＡＣＴ１９と同様にしてポイント残高を取得する。
ＡＣＴ６８においてプロセッサー５０１は、ＡＣＴ２０と同様にして使用可能ポイントを求める。
【０１２０】
ＡＣＴ６９においてプロセッサー５０１は、ＡＣＴ６７で求めた使用可能ポイントを客端末５００の操作者に報知する。例えば、プロセッサー５０１は、図９に示すような画像ＩＭ１をタッチパネル５０８に表示させる。あるいは、プロセッサー５０１は、各発行元のポイント残高、使用可能ポイント、及び関数ｆを、その他の方法により報知しても良い。例えば、プロセッサー５０１は、音声により報知する。
【０１２１】
実施形態のポイントシステム１は、分散型台帳ＤＬ１を用いてポイントを管理するので、分散型台帳を用いない従来の方式に比べて、ポイントの管理にかかるコストを低く抑えることができる。また、実施形態のポイントシステム１は、分散型台帳を用いない場合に比べて、セキュリティ性及び耐障害性が高い。
【０１２２】
実施形態のポイントシステム１によれば、ＰＯＳ端末４００は、発行元と発行先との組み合わせによって決定される関数ｆに基づき、使用可能ポイントを求める。
このように、実施形態のポイントシステム１は、ポイント共有化のために必要な計算を分散型台帳ＤＬ１の外部で行うので、分散型台帳ＤＬ１に対する負荷を少なくすることができる。また、実施形態のポイントシステム１は、ポイントの共有化の計算を分散型台帳ＤＬ１の外部で行うので、分散型台帳ＤＬ１上のトランザクションのデータ量の増加を少なくすることができる。
【０１２３】
また、実施形態のポイントシステム１によれば、ＰＯＳ端末４００は、対象ポイント口座についての発行元ごとのポイント残高、使用可能ポイント、及び関数ｆを表示デバイス４０８に表示する。これにより、ＰＯＳ端末４００の操作者及び買物客は、会計時に、対象ポイント口座についての発行元ごとのポイント残高、使用可能ポイント、及び関数ｆを知ることができる。
また、実施形態のポイントシステム１によれば、客端末５００は、対象ポイント口座についての発行元ごとのポイント残高、使用可能ポイント、及び関数ｆをタッチパネル５０８に表示する。これにより、買物客などは、店の外にいる場合など、会計時以外でも、対象ポイント口座についての発行元ごとのポイント残高、使用可能ポイント、及び関数ｆを知ることができる。
【０１２４】
実施形態のポイントシステム１によれば、ＰＯＳ端末４００は、発行元と発行先との組み合わせによって決定される係数αに基づき、使用可能ポイントを求める。これにより、発行元と発行先が異なる場合のαを１より小さい数にすることで、発行元と発行先が異なる場合の使用可能ポイントを発行元と発行先とが同じである場合の使用可能ポイントより少なくすることができる。
【０１２５】
上記の実施形態は以下のような変形も可能である。
上記の実施形態でＰＯＳ端末４００が行う処理の一部を本部サーバー２００又は店舗サーバー３００が行っても良い。この場合、ＰＯＳ端末４００及び本部サーバー２００又は店舗サーバー３００が協働してポイント管理装置として動作する。あるいは、本部サーバー２００又は店舗サーバー３００がポイント管理装置として動作する。
上記の実施形態で客端末５００が行う処理の一部を本部サーバー２００又は店舗サーバー３００が行っても良い。この場合、客端末５００及び本部サーバー２００、又は客端末５００及び店舗サーバー３００が協働してポイント管理装置として動作する。あるいは、本部サーバー２００又は店舗サーバー３００がポイント管理装置として動作する。
【０１２６】
上記の実施形態では、各業者がポイントの発行元である。しかしながら、ポイントの発行元は、店舗単位であっても良い。あるいは、複数の業者又は店舗が共通の発行元であっても良い。
【０１２７】
上記の実施形態では、ＰＯＳ端末４００は、使用ポイントに応じて、どの発行元のポイントを使用するかを自動で決定した。しかしながら、ＰＯＳ端末４００は、どの発行元のポイントを何ポイント使用するかを個別に入力することができても良い。この場合、ＰＯＳ端末４００は、当該入力に応じてポイントを用いた決済を行う。
【０１２８】
上記の実施形態では、実店舗を有する業者を例に説明した。しかしながら、業者は、通信販売などを行う無店舗型の業者であっても良い。この場合、上記の実施形態においてＰＯＳ端末４００が行う処理は、例えば、本部サーバー２００などが行う。
【０１２９】
ポイントシステム１が管理するポイントは、法定通貨などを用いて購入可能なポイントであっても良い。すなわち、ポイントシステム１が管理するポイントは、プリペイド式の電子マネーであっても良い。さらに、ポイントシステム１は、その他の様々なポイントを管理することができる。
また、ポイントシステム１が管理するポイントは、企業通貨に限らず、地域通貨などであっても良い。
【０１３０】
本部サーバー２００は、ノード１００を兼ねていても良い。
店舗サーバー３００は、ノード１００を兼ねていても良い。
【０１３１】
ポイント残高は、Ｈｙｐｅｒｌｅｄｇｅｒ  ｆａｂｒｉｃにみられるようなｓｔａｔｅＤＢ（database）などに記録されていても良い。ｓｔａｔｅＤＢは、トランザクション実行後の最新の状態のトランザクションなどを記録している。この場合、ＰＯＳ端末４００は、ポイント残高を当該ｓｔａｔｅＤＢから取得しても良い。本部サーバー２００、店舗サーバー３００、ＰＯＳ端末４００及び客端末５００などの各装置は、ｓｔａｔｅＤＢからポイント残高を取得することで、トランザクションからポイント残高を計算する必要がなくなる。これにより、当該各装置は、処理にかかる時間が短くなる。なお、プロセッサー４０１は、ｓｔａｔｅＤＢからポイント残高を取得することで、ポイント残高が分かるデータを取得する取得部として機能する。
【０１３２】
プロセッサー１０１、プロセッサー２０１、プロセッサー３０１、プロセッサー４０１又はプロセッサー５０１は、上記実施形態においてプログラムによって実現する処理の一部又は全部を、回路のハードウェア構成によって実現するものであっても良い。
【０１３３】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【０１３４】
１……ポイントシステム、１００……ノード、１０１，２０１，３０１，４０１，５０１……プロセッサー、１０２，２０２，３０２，４０２，５０２……ＲＯＭ、１０３，２０３，３０３，４０３，５０３……ＲＡＭ、１０４，２０４，３０４，４０４，５０４……補助記憶デバイス、１０５，２０５，３０５，４０５，５０５……通信インターフェース、１０６，２０６，３０６，４１１，５１０……バス、２００……本部サーバー、３００……店舗サーバー、４００……ＰＯＳ端末、４０６，５０６……リーダーライター、４０７，５０７……生体センサー、４０８……表示デバイス、４０９……入力デバイス、４１０，５０９……スキャナー、５００……客端末、５０８……タッチパネル、ＤＬ１……分散型台帳
【図１】
2020197993.tif 000003
【図２】
2020197993.tif 000004
【図３】
2020197993.tif 000005
【図４】
2020197993.tif 000006
【図５】
2020197993.tif 000007
【図６】
2020197993.tif 000008
【図７】
2020197993.tif 000009
【図８】
2020197993.tif 000010
【図９】
2020197993.tif 000011
【図１０】
2020197993.tif 000012
【図１１】
2020197993.tif 000013
【図１２】
2020197993.tif 000014