(第1の形態)
以下、図1〜図9を参照して本発明の第1の形態を説明する。図1に示すように、第1の形態に係る決済システム1は、バックオフィスサーバ10、スクリプト管理サーバ20、及び決済実行サーバ30と、これらのサーバ10〜30に対するクライアントとして機能するサービス端末40、管理端末50及びユーザ端末60とをコンピュータの一例として含んでいる。また、決済システム1は、決済サービスに関連して口座管理サーバ70、品目管理サーバ80及びサービス管理サーバ90と連携する。サーバ10〜30、70〜90、及び端末40〜60のそれぞれは不図示のネットワーク、一例としてインターネットに適宜に接続されることにより、相互間で情報を送信又は受信することが可能である。したがって、サービス端末40、管理端末50及びユーザ端末60は、口座管理サーバ70、品目管理サーバ80、サービス管理サーバ90のクライアントとしても適宜に機能してよい。
サービス端末40は、ユーザに対して決済サービスを提供しようとする者(以下、これをサービス提供者と呼ぶ。)が商業施設等の管理領域SAに設置し、運用する端末装置である。サービス端末40は、決済サービスを提供するためにユーザ端末60に読み取らせるべき情報画像の一例としての二次元コード100を表示する機能を有している。決済システム1における決済サービスは、決済端末の一例としてのサービス端末40に表示された二次元コード100がユーザ端末60にて読み取られ、その二次元コード100に記録されている必須情報に所定の情報を付加した決済情報がユーザ端末60から決済実行サーバ30に送信されることによって進められる。決済処理の手順は後に詳しく説明する。
サービス端末40には、一例として、ゲーム機40A、店頭端末40B等の端末装置が含まれてよい。ゲーム機40Aは、所定の料金の支払いと引き換えにユーザにゲームをプレイさせる業務用のゲーム機の一例である。店頭端末40Bは、例えばコンビニエンスストア等の店舗内に設置され、チケット等の各種の商品の販売、あるいは料金の収受といった各種のサービスを提供する端末装置の一例である。ゲーム機40A、及び店頭端末40Bによってユーザに提供されるサービスは、決済システム1によって処理される決済サービスと関連付けてその適用が制御されるサービスであって、決済サービスとは区別されるべきものである。以下では、この種のサービスを関連サービスと称して決済サービスと区別することがある。
サービス端末40は関連サービスを提供する例に限らない。例えば、店舗等でユーザが購入した商品を売上登録し、ユーザが支払うべき料金を計算するレジスター端末のように、決済サービスそれ自体をユーザに利用させる目的で設置され、関連サービスを提供しない端末がサービス端末40として設けられてもよい。いわゆるPOS端末がサービス端末40として設けられてもよい。その他にもサービス端末40としては各種の端末装置が用いられてよい。ただし、サービス端末40は二次元コード100を表示するための表示装置を備えている必要がある。
管理端末50は、決済サービスの管理、あるいは決済サービスに関する各種の設定等を目的として管理領域SAに設けられる端末装置である。管理端末50は、決済サービスを実現するために必要な情報をバックオフィスサーバ10に提供する端末として利用可能である。管理端末50としては、例えばブック型のパーソナルコンピュータ等の各種の端末装置が用いられてよい。ゲーム機40A、あるいは店頭端末40B等のサービス端末40が管理端末50として兼用されてもよい。なお、管理領域SAはサービス提供者が管理する領域を示す概念であって、一つのまとまった場所を必ずしも意味しない。例えば、サービス端末40は店舗等に設置され、管理端末50はサービス端末40を運用するサービス提供者の事務所等に設置されてよい。
ユーザ端末60は、ユーザの個人的用途に利用されるべき端末である。一例として、ネットワーク接続機能を備えたスマートフォンがユーザ端末60として利用される。ユーザ端末60はサービス端末40上に表示された二次元コード100を読み取り、その二次元コード100に含まれた必須情報に対して所定の情報を付加して決済情報を生成し、得られた決済情報を決済実行サーバ30に送信する。ユーザ端末60としては、スマートフォンに限らず、ネットワーク接続機能を備え、かつサービス端末40上に表示される二次元コード100を読み取ることが可能であれば適宜の端末装置が用いられてよい。ユーザ端末60は、サービス端末40が設置された場所に携行して使用できる携行性を備えることが好ましい。
次に、各サーバについて順次説明する。バックオフィスサーバ10、スクリプト管理サーバ20及び決済実行サーバ30は、決済サービスを提供するために必要な決済処理を実行し、あるいはその実行に必要な付随的な処理を担当するサーバとして設けられている。バックオフィスサーバ10は、サービス端末40及び管理端末50とスクリプト管理サーバ20との間を仲介するサーバとして設けられている。例えば、バックオフィスサーバ10は、管理端末50から取得した情報に基づいて、ユーザがユーザ端末60を利用する際に支払うべき料金の支払条件を設定し、その支払条件の情報をスクリプト管理サーバ20に通知する。また、バックオフィスサーバ10は、スクリプト管理サーバ20から二次元コード100を発行するために必要な情報を取得してこれをサービス端末40に提供する。
スクリプト管理サーバ20は、バックオフィスサーバ10が設定した支払条件に従って決済実行サーバ30に決済処理を実行させるためのスクリプトを作成し、得られたスクリプトをスクリプトデータベースDB2に蓄積して管理する。スクリプト管理サーバ20が作成するスクリプトは、決済システム1にて行われるべき決済処理の内容を、決済実行サーバ30が実行可能なフォーマットで記述したコンピュータプログラムの一種であって、サービスを提供するために決済実行サーバ30が実行すべき処理を定めた処理プログラムの一例に相当する。また、スクリプトデータベースDB2はプログラム保持手段の一例に相当する。スクリプトについては後に一例を挙げて説明する。決済実行サーバ30は、ユーザ端末60から取得した決済情報に対応するスクリプトをスクリプト管理サーバ20から取得し、得られたスクリプトに従って決済処理を実行する。
決済実行サーバ30は、決済処理を実行するサーバである。決済実行サーバ30は、決済処理の内容に応じて、口座管理サーバ70等の他のサーバと適宜に連携して決済処理を実行する。連携相手の一例としての口座管理サーバ70は、口座データベースDB7を操作して特定種類の電子通貨を用いた料金の支払いを処理するサーバである。例えば、口座データベースDB7には、ユーザが所持する特定種類の電子通貨の残高の情報がユーザ認証コードと対応付けて記録されている。口座管理サーバ70は、ユーザ認証コードを手掛かりとしてユーザの残高を特定し、特定された残高からユーザが支払うべき料金に相当する量又は額の電子通貨を消費(減算)することにより、電子通貨による支払いを実現する。
決済実行サーバ30は、口座管理サーバ70が管理する電子通貨による料金の支払いが必要とされる場合、口座管理サーバ70に支払処理を依頼することにより、口座管理サーバ70と連携して決済処理を実行する。なお、図1では料金の支払いを実現する決済手段として口座管理サーバ70が管理する電子通貨による決済手段が利用される例を示したものである。決済手段として、ユーザの銀行口座(オンラインバンキング)からの引き落とし、あるいはクレジットカードを用いた決済等が必要とされる場合、決済実行サーバ30はそれらの決済手段による支払いを実現する他のサーバと適宜に連携して決済処理を実行する。つまり、口座管理サーバ70は決済実行サーバ30と連携して決済処理を実行するサーバの一例に過ぎない。電子通貨、銀行口座、あるいはクレジットカードといったようにネットワークを介した情報の交換を利用して支払いを処理する仕組みそれ自体は市場で広く実用に供されており、決済実行サーバ30は決済手段に応じて各種の仕組みを適宜に利用して決済処理を実行すればよい。いずれにしても、決済実行サーバ30は、ユーザ識別情報と関連付けてサーバに保持されている情報(上述した口座の残高の情報はその一例である。)を参照して決済処理を実行するように構成されてよい。
決済実行サーバ30は、決済処理に関連して、品目管理サーバ80及びサービス管理サーバ90とも適宜に連携する。品目管理サーバ80は、品目管理データベースDB8を適宜に参照しつつ、サービス端末40で提供される商品、あるいはサービスを品目として各品目の単価等の販売に関する事項を管理し、あるいはサービス端末40における品目ごとの料金の支払先といったように売上の処理に関する事項を管理するサーバである。例えば、ゲーム機40Aを対象とする場合、品目管理サーバ80は、ゲーム機40Aにて提供される各種のコンテンツを品目として、各品目の単価、支払先等を品目ごとにユニークな品目コードに対応付けて品目管理データベースDB8に記録する。その場合、品目管理サーバ80は、ゲーム機40Aや管理端末50の求めに応じてそれらの情報を提供する。あるいは、品目管理サーバ80は、ゲーム機40Aにおけるコンテンツの利用に対して支払われた料金を売上として記録し、得られた売上を関係する事業者間で分配するといった処理を担当する。店頭端末40Bの場合も同様であって、店頭端末40Bにて提供される商品やサービスを品目として管理するものである。決済実行サーバ30は、スクリプトに従って実行した決済処理にて料金が支払われた場合、その支払内容を品目管理サーバ80に通知する。品目管理サーバ80はその通知を受けて支払内容を把握し、売上の管理等に反映させることができる。
サービス管理サーバ90は、サービス端末40にてユーザに提供される関連サービス、又はその関連サービスとさらに関連付けられた他のサービスを管理するサーバである。以下では、サービス管理サーバ90が提供するサービスをユーザサービスと呼ぶことがある。例えば、サービス端末40としてゲーム機40Aが設けられている場合、サービス管理サーバ90はゲーム機40Aにてゲームをプレイするユーザを認証し、そのユーザがゲーム機40Aにてゲームをプレイした結果をプレイデータとしてユーザデータベースDB9に保存し、保存されたプレイデータをゲーム機40Aからの求めに応じて送信するサービスをユーザサービスとして提供する。あるいは、サービス管理サーバ90はユーザ端末60からの求めに応じてプレイデータに基づくユーザサービスを提供する。この場合のユーザサービスとしては、例えばユーザのプレイ履歴の閲覧、過去のプレイ映像の閲覧、ゲームにて使用するアイテムの購入といった各種のサービスが用意されてよい。サービス端末40として店頭端末40Bが設けられている場合も同様であって、サービス管理サーバ90は店頭端末40Bにおける関連サービスの提供に際してユーザを認証し、関連サービスの提供に必要な各種の情報を店頭端末40Bに適宜に提供するように構成されてよい。
サービス管理サーバ90におけるユーザの認証は、例えばユーザIDといったユーザごとにユニークなユーザ識別情報を用いて行われる。決済実行サーバ30、あるいは口座管理サーバ70にてユーザの識別に用いられるべきユーザ認証コードは、例えば、サービス管理サーバ90にて利用されるユーザ識別情報と共通化される。ただし、そのユーザ認証コードは、サービス管理サーバ90にて利用されるユーザ識別情報と1対1に対応付けられてもよい。いずれの場合でも、決済実行サーバ30はサービス管理サーバ90と連携することにより、例えば決済処理の結果をサービス管理サーバ90に提供して、サービス管理サーバ90が提供するユーザサービスに反映させる、といった処理を関連処理の一例として実行することができる。関連処理は、決済処理とは区別され、かつユーザ識別情報と関連付けられている限りにおいて適宜に変更されてよい。なお、サービス端末40が関連サービスを提供しない場合、決済実行サーバ30とサービス管理サーバ90との連携は不要である。
次に、図2を参照してスクリプトの一例を説明する。図2に示したスクリプトは、決済処理を実行するためのスクリプトの一例であって、ユーザ、支払先、支払方法、及び支払内容のそれぞれを特定する情報を含む。スクリプトに記述される情報は、決済処理に関して、「誰が」、「誰に」、「何で」、「何をするか」を特定するための情報の一例である。ユーザの情報は、支払いを「誰が」行うべきかを特定するためにスクリプトに記述される。ユーザの情報としては、例えばユーザごとにユニークに設定されるユーザ認証コードが用いられてよい。
支払先の情報は、「誰に」対して料金を支払うべきかを特定するためにスクリプトに記述される。支払先は、要するに料金が支払われるべき相手である。支払先は、一例として、サービス提供者としての事業者とされてよい。あるいは、サービス端末40を介して関連サービスを提供する他の事業者が支払先として設定されてもよい。そのような事業者としては、例えば、ゲーム機40Aにて利用されるコンテンツを提供する事業者、店頭端末40Bを介して販売されるチケット等の商品を提供する事業者、あるいは、それらの事業者から料金徴収の委託を受けた事業者等が支払先として設定されてよい。一例として、図1の品目管理サーバ80を運用する事業者、又は当該事業者が指定する収受機関、決済機関等が支払先としてスクリプトに記述されてよい。この場合は、決済実行サーバ30から品目管理サーバ80に対して料金の支払いが通知されることにより、支払先への支払いが実現される。
支払方法の情報は、「何で」決済をするか、すなわち料金の支払いに用いられるべき決済手段を特定するためにスクリプトに記述される。例えば、電子通貨による決済、銀行の預金口座からの引き落としによる決済、クレジットカードを用いた決済等のように、ネットワークを介した情報処理を用いて決済を完了させることが可能な決済手段が支払方法として設定される。電子通貨には発行主体あるいは管理主体に応じて種々の電子通貨が存在するが、支払方法の情報にて電子通貨による支払いが指定される場合には、いずれの電子通貨を利用して決済が行われるべきか、が特定できるように支払方法の情報が設定されてよい。例えば、図1の口座管理サーバ70にて管理されている電子通貨による支払いが決済手段としてスクリプトに記述されてよい。この場合は、スクリプトに従って決済実行サーバ30が口座管理サーバ70に決済を依頼することにより、料金の支払いが実現される。決済サービスに関連するスクリプトは、少なくとも決済手段の異同に応じて作り分けられる。換言すれば、決済サービスは決済手段の相違に応じて区分され、決済手段の種類に応じてスクリプトも異なる。さらに、スクリプトは、料金の支払先の相違に応じてさらに区分して作成されてよい。
支払内容の情報は、決済処理に関して、「何をするか」を特定するためにスクリプトに記述される。例えば、「品目Xの購入に対して〇〇円を支払う」といったように、決済処理の原因となったユーザの行為内容を特定する情報がスクリプトに記述されてよい。スクリプトに記述された支払方法及び支払先とともに、支払内容の情報が参照されることにより、決済処理にて実現されるべき支払いの詳細を確定することができる。支払内容の情報は最小限の情報として支払額の情報を含むものとされてよい。例えば、ユーザが購入した品目の情報が決済処理にて不要とされる場合、スクリプトの支払内容の情報は支払額を指定する情報として設定されてよい。支払内容には、品目の種類を特定する情報が含まれてもよい。例えばゲーム機40Aを対象とする場合、ゲームのプレイの対価として消費されるべき遊戯価値を計量する単位としての「クレジット」を品目の種類として特定し、これをスクリプトに記述するようにしてもよい。その場合、ユーザが購入する品目としてのクレジットの数量をユーザ端末60にて選択することにより最終的な支払内容を確定させるようにしてもよい。つまり、1クレジット、2クレジットといった数量をゲーム機40Aにて選択するのではなく、ユーザ端末60にてユーザに選択させることも可能である。これにより、サービス端末40におけるユーザインターフェースを簡素化することができる。
スクリプトは、さらにコメント、有効期限及びシリアル番号の情報を含む。コメントは、ユーザ端末60を介してユーザに決済の承認を求める際にユーザ端末60上に表示させるべきテキスト情報としてスクリプトに記述される。有効期限はスクリプトが決済処理にて通用する期限を示す情報としてスクリプトに記述される。有効期限が経過したスクリプトはスクリプトデータベースDB2から適宜に削除される。それにより、スクリプトデータベースDB2に記録されるデータ量を適切な範囲に抑えることが可能である。シリアル番号はスクリプトごとにユニークに設定されるコードであって、スクリプトに対してユニークに関連付けられる処理情報及び処理識別情報のそれぞれの一例に相当する。図2では、スクリプトとシリアル番号とを関連付ける手法として、スクリプトの一部としてシリアル番号をスクリプトに含めているが、シリアル番号はスクリプトに含めることなく、スクリプトとシリアル番号とを1対1で対応付けてスクリプトデータベースDB2に記録することにより、スクリプトとシリアル番号とが関連付けられてもよい。
以上のように、スクリプト管理サーバ20が作成するスクリプトは、決済実行サーバ30にて実行されるべき処理の内容を記述したコンピュータプログラムとしての処理プログラムの一例である。また、スクリプトに記述されるべき各種の情報の集合は、そのスクリプトに含まれる変数群の一例に相当する。スクリプトデータベースDB2に保持されたスクリプトに記述される情報には、確定した状態と未確定の状態とが存在する。それらの状態はスクリプトに含まれる変数の値が確定した状態、又は未確定の状態の一例に相当する。例えば、ユーザの情報を一つの変数とした場合、ユーザ認証コードが具体的に指定された状態は変数の値が確定した状態であって、ユーザ認証コードが指定されていない状態は変数の値が未指定の状態に相当する。スクリプトに記録される各種の情報の一部は管理端末50から与えられる情報に従って設定される。例えば、支払先といった情報は、管理端末50からバックオフィスサーバ10を介して与えられる情報に従って具体的な値が確定した変数としてスクリプトに記述されてよい。スクリプトが作成された時点では全ての情報が具体的に確定しているわけではなく、スクリプトデータベースDB2に保持されているスクリプトにおいては、少なくとも一部の変数の値が未確定な状態にある。その未確定な変数の値は、サービス端末40からユーザ端末60を経て決済実行サーバ30へと情報が順次伝達される過程で適宜に確定される。なお、上記ではスクリプトに記録すべき情報の種類を予め定めた上でスクリプト管理サーバ20がスクリプトを作成しているが、サービス端末40からユーザ端末60を経て決済実行サーバ30へと情報が伝達される過程で、スクリプトに対して追加されるべき新たな種類の情報が指定されてもよい。いずれにしても、スクリプト管理サーバ20がスクリプトを作成して記録する段階では、スクリプトが未完成であって、サービス端末40からユーザ端末60を経て決済実行サーバ30へと情報が伝達される過程でスクリプトがそこに含まれる変数の種類及び変数の値を適宜に確定させるようにしてスクリプトを完成させればよい。
次に、図3及び図4を参照して、決済システム1が決済サービスを提供するために実行する処理の概略的な手順の一例を説明する。ただし、以下に説明する手順は図1に例示した構成にて実行される処理の手順の一例である。図3及び図4のそれぞれにおいて、図中の手順に直接関係しないサーバ等はグレーにて示してある。
図3は二次元コード100を発行するための手順の一例を、図4は二次元コード100を起点として進められる手順の一例をそれぞれ示している。図3の例においては、まず品目管理サーバ80から管理端末50(サービス端末40にて代替されてもよい。)に対して支払条件等を設定するために必要な情報が提供される(F11)。提供される情報には、例えばサービス端末40にて提供される商品、サービスの品目コード、単価、支払先等を特定する情報を含めることができる。
次に、管理端末50にてスクリプトを作成するために必要な情報が入力され、入力された情報が管理端末50からバックオフィスサーバ10に提供される(F12)。管理端末50にて入力される情報は、スクリプト管理サーバ20にどのようなスクリプトを作成させるかを指定する情報である。例えば、図2のスクリプトを作成させる場合には、そのスクリプトに含めるべき情報(変数)の種類として、ユーザ、支払先、支払方法、支払内容、コメント及び有効期限が管理端末50を介してバックオフィスサーバ10に指定され、かつ一部の情報に関しては具体的な値(確定した値)がバックオフィスサーバ10に指定される。この場合、支払先、及び有効期限についてはその確定した値がバックオフィスサーバ10に対して与えられてよい。コメントはその全てが確定した状態で指定されてもよいし、一部が未確定な状態で与えられてもよい。また、支払方法として、サービス提供者が利用することを希望する決済手段に関する複数の候補がバックオフィスサーバ10に与えられてもよい。なお、有効期限は、管理端末50のオペレータにより適宜に設定されてもよいし、一定のルールに従って自動的に設定されてもよい。
必要な情報がバックオフィスサーバ10に与えられると、バックオフィスサーバ10にてスクリプトの作成条件が設定され、その条件がスクリプト管理サーバ20に提供される。これに応じてスクリプト管理サーバ20にて与えられた条件に応じたスクリプトが作成される(F13)。作成されたスクリプトにはシリアル番号が付加されてスクリプトデータベースDB2に記録される。そのシリアル番号がスクリプト管理サーバ20からバックオフィスサーバ10を介してサービス端末40に通知される(F14)。シリアル番号は管理端末50を経由してサービス端末40に通知されてもよい。なお、与えられたシリアル番号は、どの決済サービスに対応するものか、を判別するために、サービス端末40、管理端末50あるいはバックオフィスサーバ10にて決済サービスの種類と対応付けて適宜に保存されてよい。
サービス端末40では、特定の決済サービスの提供が要求されると、その決済サービスに対応するスクリプトのシリアル番号を含んだ必須情報が記録されるようにして二次元コード100が生成され、得られた二次元コード100がサービス端末40にて表示される(F15)。二次元コード100に含まれる必須情報には、スクリプトのシリアル番号に加えて、スクリプトにて未確定である支払内容の情報、すなわち、どのような品目を購入して幾ら支払うか、を特定する情報が付加されてよい。スクリプト管理サーバ20にてスクリプトが作成される段階では、サービス端末40を介してユーザが購入する品目やその購入数が未確定であって、それらの具体的な値はスクリプトに記述されない。一方、サービス端末40にてユーザが商品又はサービスを購入する時点では、どのような品目を購入して幾ら支払うか、が具体的に確定される。よって、サービス端末40では、ユーザが商品等を購入する時点で確定する情報を、確定情報の一例として、スクリプトのシリアル番号とともに二次元コード100に記録する。それにより、二次元コード100を介してユーザ端末60にシリアル番号及び支払内容の情報を伝達することが可能となる。なお、ユーザ端末60に対してシリアル番号が提供されるまでの処理と、ユーザ端末60が二次元コード100を表示させる処理とは時間的に連続していることを必ずしも要しない。すなわち、ユーザ端末60は予めシリアル番号をスクリプト管理サーバ20からバックオフィスサーバ10を介して取得し、ユーザが実際に支払いを行う時点で、先に取得したシリアル番号の情報と、その時点での支払内容に応じた情報とを参照して二次元コード100を生成し、表示すればよい。
次に、図4を参照して、サービス端末40にて二次元コード100が表示された後の処理手順を説明する。なお、図4の手順を開始するに先立って、ユーザ端末60ではサービス管理サーバ90にアクセスして関連サービスに関するユーザ認証が完了し(F20)、それにより、ユーザ認証に用いられるユーザID等のユーザ識別情報をユーザ端末60及びサービス管理サーバ90のそれぞれが保持しているものとする。また、サービス管理サーバ90におけるユーザ認証で用いられるユーザ識別情報は決済処理用のスクリプトにおけるユーザの情報の確定値であるユーザ認証コードの一例として通用するものとする。
図4の手順においては、まず、ユーザ端末60にて二次元コード100が撮影され、その二次元コード100に含まれている必須情報がユーザ端末60にて取得される(F21)。次に、ユーザ端末60にて、関連サービスのユーザ認証で用いられたユーザ認証コード(ユーザID)が、二次元コード100から読み取った必須情報に対して確定情報の一例として付加され、得られた情報が決済情報の一部である一次情報の一例として決済実行サーバ30に送信される(F22)。決済実行サーバ30が情報を受け取ると、その情報に含まれているシリアル番号、すなわち二次元コード100に含まれていたシリアル番号が決済実行サーバ30からスクリプト管理サーバ20に通知され、シリアル番号に対応するスクリプトの提供が要求される(F23)。
スクリプト管理サーバ20では、通知されたシリアル番号に対応するスクリプトがスクリプトデータベースDB2から抽出され、得られたスクリプトが決済実行サーバ30に提供される(F24)。この場合、スクリプトが有効期限内か否かが確認され、有効期限が経過したスクリプトは無効なものとして以降の処理が中止されてもよい。決済実行サーバ30にスクリプトが提供されると、決済実行サーバ30ではそのスクリプトで確定していない支払方法を確定する処理が開始される(F25)。その処理においては、決済実行サーバ30にて、料金の支払いに利用可能な決済手段のリストが生成され、その決済手段のリストが選択情報の一例としてユーザ端末60に提供される。この場合、スクリプトの支払方法に関する情報に関して決済手段の候補が指定されていれば、その候補が決済手段のリストに記述される。支払方法に関して指定がなければ、決済実行サーバ30が処理可能な決済手段がリストの記述される。一方、ユーザ端末60では、提供されたリストが表示され、料金の支払いに用いる決済手段をユーザに選択させる処理が行われる。その選択結果は決済情報IFbのさらなる一部である二次情報の一例としてユーザ端末60から決済実行サーバ30に送信される。この場合、選択結果を示す情報は決済手段識別情報の一例に相当する。なお、ユーザ端末60に対するリストの提供に併せて、スクリプトに記述されたテキストがユーザ端末60に送信され、ユーザ端末60にてそのテキストが表示されることにより、選択した決済手段を用いて決済を実行してもよいか否かをユーザに確認する処理が行われてもよい。
ユーザ端末60から決済手段の選択結果が送信されると、決済実行サーバ30では、ユーザ端末60からの選択結果に従ってスクリプトの支払方法に関する具体的な値が確定される。そして、決済実行サーバ30では、確定したスクリプトに従って決済処理が実行される。例えば、スクリプトに記述された支払方法に従って口座管理サーバ70に電子通貨を用いた決済、すなわちユーザ認証コードに対応した口座からの電子通貨の引き落とし(消費)が要求され(F26)、その処理に成功した場合には品目管理サーバ80に対して支払内容が通知され(F27)、サービス管理サーバ90に対しても支払完了が通知される(F28)。さらに、ユーザ端末60及びサービス端末40のそれぞれに対しても支払完了が通知される(F29、F30)。それにより、ユーザはユーザ端末60を介して支払いが完了したことを把握することができる。また、サービス端末40も支払いの完了を把握することができる。この場合、サービス端末40が支払完了を条件として関連サービスを提供する場合には、その通知をトリガーとして関連サービスの提供に必要な処理を開始することができる。なお、決済実行サーバ30からサービス端末40に支払完了を通知するためには、その通知先を判別する情報が決済実行サーバ30に提供される必要がある。そのためには、例えばスクリプトデータベースDB2に記録されるスクリプトに通知先の情報を予め記録し、あるいはサービス端末40にて通知先を示す情報を二次元コード100に必須情報の一部として含め、これをユーザ端末60から決済実行サーバ30に提供することにより、決済実行サーバ30が通知先を把握できるようにしてもよい。あるいは、バックオフィスサーバ10にて各サービス端末40における二次元コード100の発行状況を管理し、決済実行サーバ30からバックオフィスサーバ10を経由してサービス端末40に支払完了を通知してもよい。
図5は、図3及び図4に示した手順において、スクリプトに記述されるべき情報が確定する様子の一例を示している。図示の例では、まずサービス端末40(図では店頭端末40Bを示すが、他のサービス端末でもよい。)にて生成される二次元コード100には支払内容及びシリアル番号が必須情報IFaに含まれている。次に、二次元コード100を読み取ったユーザ端末60では、二次元コード100に含まれていた支払内容及びシリアル番号の情報に対してユーザ認証コード及び支払方法が確定情報として付加されて決済情報IFbが生成される。得られた決済情報IFbは決済実行サーバ30に送信される。ただし、決済情報IFbの送信は一度に行われることを必須とするものではない。例えば、図4の例では、支払方法を除く情報が決済実行サーバ30に先行して送信され、先行して送信された情報に基づいて決済実行サーバ30から決済手段のリストが提供され、そのリストに基づいてユーザに決済手段を選択させることにより支払方法の情報が確定され、その確定後に、支払方法を指定する情報がユーザ端末60から決済実行サーバ30に送信される。スクリプトに予め支払方法の候補を記述しない場合には、ユーザ認証コード、スクリプト等の送信に先行して決済実行サーバ30から決済手段のリストを取得し、そのリストに従って決済手段をユーザに選択させることによって決済情報IFbを確定させ、得られた決済情報IFbを決済実行サーバ30に一括して送信することも可能である。決済情報IFbに含まれているシリアル番号は決済実行サーバ30からスクリプト管理サーバ20に提供され、そのシリアル番号に対応するスクリプトがスクリプト管理サーバ20から決済実行サーバ30に提供される。スクリプト管理サーバ20から決済実行サーバ30に提供されるスクリプトにおいては、図中にグレーで示したように、ユーザの情報、支払方法の情報及び支払内容の情報が未確定の状態である。
決済実行サーバ30では、スクリプト管理サーバ20から取得したスクリプトにて未確定であるユーザ、支払方法及び支払内容の情報に対して、ユーザ端末60から取得した決済情報IFbのユーザ認証コード、支払方法及び支払内容の情報が引用される。それによりスクリプトの全ての情報が確定する。
以上の例によれば、決済処理に必要なスクリプトが管理端末50から提供される情報に従ってスクリプト管理サーバ20にて作成されてスクリプトデータベースDB2に保存され、そのスクリプトのシリアル番号がサービス端末40へと提供される。スクリプト管理サーバ20にて作成されるスクリプトには、サービス提供者側が設定した条件に従って確定した情報を予め記述しておくことができる。例えば、支払先の情報に関する具体的な値を管理端末50からバックオフィスサーバ10を介してスクリプト管理サーバ20に送信すれば、その情報の具体的な値(確定した情報)を予めスクリプトに記述しておくことができる。それらの情報を二次元コード100に含める必要はない。
一方、決済実行サーバ30側では、スクリプトに記述され得る支払方法に応じて決済処理の内容を変更する必要がある。例えば、支払先や支払方法に応じて連携相手となるサーバ(図1の例では口座管理サーバ70や品目管理サーバ80)を適宜に選択し、あるいはサービス端末40の種類に応じて連携相手となるサーバ(図1の例ではサービス管理サーバ90)を適宜に選択し、連携相手のサーバとの間では適宜に定められた手順に従って決済に関連した処理を進める必要がある。しかしながら、それらの処理を実現するためのプログラムの追加、修正、変更といった作業は決済実行サーバ30を運営する事業者側で行えば足り、サービス端末40側では負担が生じない。
また、二次元コード100に記録される必須情報IFaは、決済手段の種類を問わず決済処理を実行するために必要となる共通の情報である。すなわち、支払内容の情報は、決済手段の種類を問わず、決済処理を実行するために必要不可欠である。しかも、支払内容の情報に関する具体的な値は、個々の支払いが発生する度にサービス端末40にて確定されるものである。つまり、決済サービスがどのような決済手段を利用するかに関わりなく、支払額等の情報は、決済実行サーバ30が決済処理を実行するために共通して必要となる情報であって、しかもその具体的に確定した値が決済実行サーバ30に与えられることが必要である。したがって、決済サービスとして行われるべき決済処理の内容、例えば支払先、あるいは支払方法等が種々変化しても、サービス端末40では支払内容を示す情報を二次元コード100に共通して含めておく必要がある。また、シリアル番号は決済手段の種類に関わりなく、スクリプトを特定するために必要な情報として二次元コード100に共通して記録されているべき情報である。このように必須情報IFaは、決済手段の種類に関わりなく二次元コード100に記録されるべき共通の情報である。そして、決済手段の種類を問わず必要な情報としての共通性があるがゆえに、決済手段の種類に関わりなく一定のフォーマットで必須情報IFaを二次元コード100に記録することが可能である。
したがって、新たな決済サービスを導入する場合でもサービス端末40側では、その決済サービスに対応するフォーマットの二次元コードを新たに生成するためのプログラムを追加する必要がない。また、サービス端末40側に、新たな決済サービスに対応する専用のハードウエアを設ける、といった設備投資も不要である。一方、二次元コード100に記述されない情報は、スクリプトの作成時に予め具体的に確定した状態で記述し、あるいはユーザ端末60で適宜に付加することが可能である。したがって、決済処理を実行する際に必要な情報に関して決済サービス間で差があったとしても、二次元コード100に記録されるべき共通の必須情報以外の情報は予めスクリプトに確定した状態で記述し、あるいはユーザ端末60側で適宜に追加することにより対応可能である。
次に、図6を参照して、決済システム1の要部に関する具体的な構成の一例を説明する。なお、図6の構成は図1の決済システム1の具体例の一つであり、図1に対応する構成要素には図1と共通の参照符号が付されている。図6の例において、バックオフィスサーバ10には、そのコンピュータハードウエアとコンピュータプログラムPs1との組み合わせによって実現される論理的装置として、条件設定部11及びシリアル取得部12が設けられる。条件設定部11は、管理端末50からの入力に従ってスクリプトの作成に必要な条件を設定し、これをスクリプト管理サーバ20に提供する。シリアル取得部12はスクリプト管理サーバ20からスクリプトのシリアル番号を取得し、これをサービス端末40に提供する。シリアル番号の提供は、サービス端末40からの求めに応じて行われてよい。
スクリプト管理サーバ20には、そのコンピュータハードウエアとコンピュータプログラムPs2との組み合わせによって実現される論理的装置として、スクリプト作成部21及びスクリプト管理部22が設けられる。スクリプト作成部21は、バックオフィスサーバ10から送信される条件の情報に従って決済処理を実行するためのスクリプトを作成し、得られたスクリプトにシリアル番号を付してスクリプトデータベースDB2に保存する。スクリプト管理部22はバックオフィスサーバ10に対してシリアル番号を提供する。また、スクリプト管理部22は、決済実行サーバ30からの求めに応じてスクリプトデータベースDB2を検索して決済実行サーバ30に実行させるべきスクリプトを選択し、得られたスクリプトを決済実行サーバ30に提供する。スクリプト管理部22は、スクリプトの有効期限を適宜のタイミングでチェックし、有効期限を経過したスクリプトがスクリプトデータベースDB2から削除されるようにスクリプトデータベースDB2を管理してもよい。
決済実行サーバ30には、そのコンピュータハードウエアとコンピュータプログラムPs3との組み合わせによって実現される論理的装置として、決済実行部31及び決済通知部32が設けられる。決済実行部31は、ユーザ端末60から受け取った決済情報IFbに含まれているシリアル番号に対応するスクリプトをスクリプト管理サーバ20から取得し、あるいは決済手段のリストをユーザ端末60に提供するとともに、確定したスクリプトに従って口座管理サーバ70等と連携しつつ決済処理を実行する。決済通知部32は決済実行部31が実行した決済処理の結果の情報をサービス端末40及びユーザ端末60に、さらには必要に応じて品目管理サーバ80及びサービス管理サーバ90に通知する。
サービス端末40には、そのコンピュータハードウエアとコンピュータプログラムPt1との組み合わせによって実現される論理的装置として、支払制御部41及びコード制御部42が設けられる。支払制御部41は、サービス端末40における商品やサービスの購入に対応して二次元コード100に必須情報IFaの一部として含めるべき支払内容の情報を確定させる処理、例えばユーザが支払うべき支払額の計算等の処理を担当する。コード制御部42は二次元コード100に必須情報IFaの一部として含めるべきシリアル番号を取得し、支払制御部41が確定させた支払内容と合わせて必須情報IFaを生成し、得られた必須情報IFaに基づいて二次元コード100を生成し、サービス端末40に表示させる。
ユーザ端末60には、そのコンピュータハードウエアとコンピュータプログラムPt2との組み合わせによって実現される論理的装置として、コード取得部61及び支払制御部62が設けられる。コード取得部61はユーザ端末60のカメラ(不図示)等を制御して二次元コード100を撮影し、二次元コード100に含まれている必須情報IFaを取得する。支払制御部62は、コード取得部61が取得した必須情報IFaに対してユーザ認証コード、あるいは支払方法の情報等を付加して決済情報IFbを生成し、得られた決済情報IFbを決済実行サーバ30に送信するといった料金の支払いに必要な各種の処理を実行する。
なお、管理端末50にもそのコンピュータハードウエアとコンピュータプログラムとの組み合わせによって適宜の論理的装置が設けられるが、管理端末50はバックオフィスサーバ10に対してスクリプトの作成に必要な支払条件等の情報を入力する端末装置として機能すればよく、例えばバックオフィスサーバ10が提供するWebページにWebブラウザ等を介してアクセスして情報を入力するように設けられていればよい。この種の仕組みは周知であり、図6では詳細を省略する。
図7〜図9は、図6に示した決済システム1において決済サービスを提供するために実行される手順の一例を示すフローチャートである。図7は図3に例示した二次元コードの発行までの手順の具体例、図8及び図9は図4に例示した二次元コードの表示以降の手順の具体例である。図7の手順においては、まず品目管理サーバ80から管理端末50(又はサービス端末40であってもよい。)に対して品目コード等の情報が送信され(ステップS11)、管理端末50では受け取った情報に基づいてスクリプトを作成するために必要な条件を指定する情報が入力されてバックオフィスサーバ10に提供される(ステップS12)。この場合の情報は、例えば、バックオフィスサーバ10の条件設定部11の案内に従って管理端末50上で入力されてよい。
次に、バックオフィスサーバ10では、条件設定部11により管理端末50から取得した情報に基づいてスクリプトを作成するための条件が設定され、設定された条件に対応するスクリプトの作成が条件設定部11からスクリプト管理サーバ20に依頼される(ステップS13)。これを受けて、スクリプト管理サーバ20のスクリプト作成部21にて条件に合致したスクリプトが作成され(ステップS14)、そのスクリプトにシリアル番号が追加され(ステップS15)、得られたスクリプトがスクリプトデータベースDB2に記録される(ステップS16)。
スクリプトデータベースDB2に新たなスクリプトが記録されると、そのシリアル番号がスクリプト管理部22からバックオフィスサーバ10のシリアル取得部12に提供され(ステップS17)、そのシリアル番号はさらにサービス端末40に提供される(ステップS18)。シリアル番号は、一例として、スクリプトが作成されるごとにサービス端末40に提供されてそのサービス端末40上で保管される。ただし、バックオフィスサーバ10にてステップS13の作成依頼と対応付けてシリアル番号が保管され、サービス端末40からの求めに応じてサービス端末40にシリアル番号が提供されてもよい。なお、複数のスクリプトが適宜に使い分けられる場合には、サービス端末40にて発生する支払いに応じたスクリプトのシリアル番号を特定できるようにしてシリアル番号を保持しておく必要がある。例えば、バックオフィスサーバ10がスクリプト作成時に指定した条件に照らしてサービス端末40にて提供すべき決済サービスに対応するスクリプトのシリアル番号を特定し、得られたシリアル番号をサービス端末40に提供する、といった処理が行われてよい。
サービス端末40では、ユーザによる商品等の購入に対応して支払いが発生すると、その支払内容が支払制御部41にて決定され(ステップS21)、次いで、コード制御部42により、支払内容の情報と支払いを実現するためのスクリプトのシリアル番号とを含めるようにして二次元コード100が生成されて表示される(ステップS22)。なお、ステップS18の処理とステップS21の処理とは時間的に連続していることを要しない。例えば、複数回の決済に対して同一のスクリプトがその情報の確定値を置き換えつつ繰り返し利用される場合には、サービス端末40、あるいはバックオフィスサーバ10に保管されたシリアル番号と、決済の都度確定する支払内容とを組み合わせて決済ごとに二次元コード100が作成されてよい。サービス端末40にて発生する支払いに関して、支払先が異なるといった理由から複数のスクリプトが選択的に適用され得る場合には、例えばサービス端末40にてどの支払先を選択すべきかを指定し、その支払先に対応するシリアル番号が必須情報IFaに含まれるようにして二次元コード100が作成されてよい。
サービス端末40にて二次元コード100が表示されると、処理は図8の手順へと進められる。図8の手順においては、まずユーザ端末60のコード取得部61によりユーザ端末60のカメラ等が制御されて二次元コード100が撮影され、その二次元コード100に含まれている必須情報IFa、すなわち支払内容の情報とシリアル番号とがコード取得部61により取得される(ステップS31)。取得された必須情報IFaは支払制御部62に渡され、支払制御部62により必須情報IFaに対してユーザ認証コードが端末付加情報の一例として付加される(ステップS32)。この場合のユーザ認証コードは、一例として、ユーザがユーザ端末60を用いてサービス管理サーバ90のサービスを利用する際に用いるユーザ認証情報である。ユーザがユーザ端末60を用いてサービス管理サーバ90の認証を済ませており、そのユーザ認証情報がユーザ端末60に保持されていれば、支払制御部62はそのユーザ認証情報をユーザ認証コードとして付加すればよい。ただし、ステップS32の段階でユーザがユーザ認証コードを入力するものとしてもよいし、コンピュータプログラムPt2の機能によりユーザ端末60がユーザ認証コードを保持していれば、その保持されたユーザ認証コードがステップS32で付加されてもよい。
続いて、必須情報IFaにユーザ認証コードが付加された情報が決済情報IFbの一部である一次情報の一例として支払制御部62から決済実行サーバ30に送信されて決済処理が要求される(ステップS33)。その要求を受けた決済実行サーバ30では、決済実行部31によりユーザ端末60から取得した情報に含まれているシリアル番号が取り出されてスクリプト管理サーバ20に送信され、そのシリアル番号に対応するスクリプトが照会される(ステップS34)。スクリプト管理サーバ20では、スクリプト管理部22により、決済実行サーバ30から与えられたシリアル番号をキーとしてスクリプトデータベースDB2が検索されることにより、シリアル番号に対応するスクリプトが選択される(ステップS35)。選択されたスクリプトはスクリプト管理部22から決済実行サーバ30に提供される(ステップS36)。それにより、決済実行サーバ30の決済実行部31は、スクリプト管理サーバ20から提供されたスクリプトを、実行すべきスクリプトとして特定する。なお、ステップS35において、スクリプト管理部22にて選択されたスクリプトが有効期限内か否かが確認され、有効期限が経過している場合には該当するスクリプトが存在しないものとして決済処理が打ち切られてもよい。この場合は、決済実行サーバ30からサービス端末40及びユーザ端末60に対して決済不能が通知され、それぞれの端末40、60にて適宜のエラー処理が実行されてもよい。
決済実行サーバ30の決済実行部31に対してスクリプトが提供されると、そのスクリプトにて未確定である支払方法の情報に関して、今回の決済で利用可能な決済手段のリストが選択情報の一例として決済実行部31からユーザ端末60に提供される(ステップS37)。そのリストは、上述したように、スクリプトにて予め指定された決済手段の候補を記述することにより生成されてよい。スクリプトにて決済手段の候補が指定されていない場合には、決済実行サーバ30が処理可能な決済手段がリストに記述されてよい。決済実行サーバ30が利用可能な決済手段については、例えば新たな決済手段に対応した処理プログラムが決済実行サーバ30に追加されるごとに更新されるといった手法により、決済実行サーバ30に予め与えておくことができる。ユーザ端末60の支払制御部62では、提供されたリストからユーザに決済手段を選択させる処理が行われ、その選択結果が決済情報IFbのさらなる一部である二次情報の一例として決済実行サーバ30に送信される(ステップS38)。このとき、決済処理を実行してよいか否かをユーザに確認させる処理が併せて行われ、ユーザが決済実行を承認した場合に限って決済手段の選択結果が送信されるものとしてもよい。
決済手段の選択結果が決済実行サーバ30に送信されると、決済実行部31により決済情報IFbに含まれている情報、すなわち、ユーザ認証コード、支払方法(ユーザが選択した決済手段に相当する。)及び支払内容の確定値がスクリプトに代入されてスクリプトの全ての情報が確定され、その確定したスクリプトに従って決済実行部31により決済処理が実行される(ステップS39)。
決済処理は、一例として、決済実行部31から口座管理サーバ70に対してユーザ認証コード及び支払額が通知されて電子通貨による支払処理が口座管理サーバ70に要求され、これに応じて口座管理サーバ70がユーザ認証コードに対応する口座の電子通貨の残高を支払額に応じて減算することにより実現される(ステップS40)。その後、決済処理は図9の手順へと進められ、口座管理サーバ70から決済実行サーバ30に支払処理の結果が通知される(ステップS42)。支払いが正常に完了していれば、決済実行サーバ30の決済通知部32から品目管理サーバ80に対して支払完了が支払先、支払内容といった情報を添えて通知され(ステップS43)、品目管理サーバ80ではその通知を受けて支払実績が記録される(ステップS44)。また、支払結果は決済通知部32からサービス端末40、ユーザ端末60、サービス管理サーバ90にも通知される(ステップS45)。なお、サービス端末40に対する通知は、例えばバックオフィスサーバ10にてサービス端末40における二次元コード100の発行状況を管理し、決済実行サーバ30からバックオフィスサーバ10に支払結果を通知してバックオフィスサーバ10が通知先のサービス端末40を判別し、判別されたサービス端末40へと支払結果を転送することにより実現されてよい。あるいは、図2に示したスクリプトにおいて、支払結果の通知先を追加し、スクリプトの作成時に予め通知先の確定値を記録しておくか、又はサービス端末40が二次元コード100を生成する際に、その通知先の情報の確定値を含めることにより、決済実行サーバ30が通知先となるサービス端末40を特定できるようにしてもよい。通知先の情報をスクリプトに含める場合には、例えば、支払先と通知先とが異なる場合において、支払先への処理と通知先への処理とを区別して実行できる利点がある。
支払結果の通知を受けて、サービス端末40の支払制御部41では、料金の支払い完了を条件として許可されるべき所定の処理が後続処理として開始される(ステップS46)。例えば、ゲームのプレイの許可、チケットの発行といった処理が後続処理として開始されてよい。ユーザ端末60では支払いが完了した旨がユーザに対して通知される(ステップS47)。さらに、サービス管理サーバ90では、料金の支払い完了を条件として許可されるべき所定の処理が関連処理として実行される(ステップS48)。例えば、サービス管理サーバ90が提供するサービスに対してユーザに特典を付与するといったごとく、料金の支払いと関連付けた処理が関連処理としてサービス管理サーバ90にて実行されてよい。いずれにしても、サービス端末40は、決済実行サーバ30から通知される結果が決済完了を示す場合に、ゲームサービス、チケット発行サービスといった各種のサービスをユーザに提供するように構成されてよい。
以上の形態によれば、スクリプトデータベースDB2に保持されたスクリプトにおいて、決済が発生する都度に確定すべきユーザ、支払内容等の情報が未確定であり、決済が発生した時点で確定する情報をサービス端末40あるいはユーザ端末60にて適宜に付加することにより、スクリプトの情報が確定する。したがって、複数の決済間で共通して確定すべき情報を予めスクリプトに記述してスクリプトデータベースDB2に記録しておけば、スクリプトデータベースDB2に保持された一つのスクリプトを、その有効期限内に発生する複数の決済で繰り返し使用することが可能である。これにより、スクリプト作成に要するスクリプト管理サーバ20の負担を軽減し、あるいはスクリプトデータベースDB2に記録すべき情報量を削減できる、といった利点が得られる。
第1の形態においては、コード制御部42が図7のステップS22の処理を実行することにより情報画像表示手段の一例として機能し、コード取得部61が図8のステップS31の処理を実行することにより情報取得手段の一例として機能し、支払制御部62が図8のステップS32、S33及びS38の処理を実行することにより決済情報提供手段の一例として機能し、決済実行部31が図8のステップS39の処理を実行することにより決済実行手段の一例として機能し、決済通知部32が図9のステップS45の処理を実行することにより結果情報提供手段の一例として機能する。また、支払制御部62が図8のステップS32及びS33の処理を実行することにより一次情報提供手段の一例として機能し、支払制御部62が図8のステップS38の処理を実行することにより二次情報提供手段の一例として機能し、決済実行部31が図8のステップS37の処理を実行することにより選択情報提供手段の一例として機能する。さらに、サービス管理サーバ90は図9のステップS48の処理を実行することにより関連処理実行手段の一例として機能する。
なお、上記の形態では、サービス端末40にて二次元コード100に記録されるべき処理情報としてスクリプトのシリアル番号を例示したが、スクリプトそのものを処理情報として設定してもよい。その一例を図10に示す。図10の例では、図2に例示したスクリプトがスクリプト管理サーバ20からサービス端末40に提供され、サービス端末40では支払額等の情報が支払内容に関する確定した情報として付加されて必須情報IFaが生成され、その必須情報IFaが二次元コード100に記録される。つまり、二次元コード100にはスクリプトそれ自体が処理情報として記録される。二次元コード100を読み取ったユーザ端末60ではユーザに関する確定した情報としてユーザ認証コードが付加されて決済情報IFbの一部である一次情報が生成され、その一次情報が決済実行サーバ30に提供される。また、決済実行サーバ30から送信される決済手段のリストに基づいてユーザ端末60にて決済手段が選択されることにより、決済情報IFbのさらなる一部である二次情報が生成され、その二次情報が決済実行サーバ30に提供される。したがって、決済実行サーバ30は、スクリプト管理サーバ20に照会することなく、実行すべきスクリプトを特定してこれに応じた処理を実行することができる。なお、二次元コード100に記録されるスクリプトは、復元可能な方法で圧縮され、あるいは暗号化された状態であってもよい。
上記の形態では、サービス提供者が管理端末50を利用してスクリプトの作成を要求できるものとしたが、これに代えて、又は加えてスクリプト管理サーバ20の管理者が管理端末50を利用してスクリプトの作成を指示してもよい。あるいは、サービス端末40がスクリプトの作成を指示するものとしてもよい。その場合、管理端末50を省略することも可能である。
(第2の形態)
上述した第1の形態では、サービス端末40における決済の発生に先行して、管理端末50からの情報に従ってスクリプトを作成し、これをスクリプトデータベースDB2に予め保存しているが、スクリプトを作成する時期はそのような例に限られない。例えば、サービス端末40にて決済が発生する時点でスクリプトを作成することも可能である。以下、図11〜図13を参照してそのような変更を施した第2の形態に係る決済システムの一例を説明する。なお、以下に説明する例は図1に示した決済システム1における処理を部分的に変更したものである。図11〜図13において、図1〜図9と共通する部分には同一の参照符号を付し、以下では相違点を中心に説明する。
図11の決済システム1Aでは、スクリプトの作成から二次元コード100の発行に至るまでの処理の手順が異なる。図11のサービスシステム1Aでは、ユーザが購入する商品又はサービスを選択するとスクリプトの作成に関する処理が開示される。ただし、その処理に先行して、管理端末50からバックオフィスサーバ10に対して、あるいはバックオフィスサーバ10を経由してスクリプト管理サーバ20に対してスクリプトの作成に関連した情報が提供されてもよい(F50)。この時点で提供される情報は、例えばサービス端末40が設置された店舗等の施設、あるいはサービス提供者といった適宜の範囲内で共通して用いられるべき情報とされてよい。サービス提供者がユーザに利用させることを希望する決済手段の種類を指定する情報が管理端末50からバックオフィスサーバ10に提供されてもよい。ただし、それらの情報を後述するサービス端末40からの情報の提供時に併せて提供するものとし、それにより、管理端末50からの情報提供を省略してもよい。また、スクリプトを作成するために必要な品目コード、単価等が品目管理サーバ80からサービス端末40あるいは管理端末50に提供されてもよい(F51)。それらの情報が品目管理サーバ80からの提供以外の手段にてサービス端末40、あるいは管理端末50に与えられていれば、品目管理サーバ80からの提供は不要である。
ユーザがサービス端末40を操作して購入したい商品又はサービスを選択すると、その商品又はサービスの料金を決済するためのスクリプトの作成に必要な情報がサービス端末40からバックオフィスサーバ10に提供される(F52)。例えば、支払先、支払方法、有効期限、あるいはコメントの情報がバックオフィスサーバ10に提供されてよい。支払方法として、複数の決済手段が指定されてもよい。バックオフィスサーバ10では、得られた情報がデフォルト設定情報として一時的に記憶される。ただし、これらの情報の一部、例えば支払先、支払方法等に関して、サービス端末40が設置された店舗、あるいはサービス端末40を運用するサービス提供者が個々の決済に関わりなく共通した値を設定する場合には、それらの情報が管理端末50からバックオフィスサーバ10に先行して与えられてもよい。
次に、ユーザがサービス端末40に対して購入を要求すると、支払品目、単価、個数といった支払内容の情報と、サービス端末40を識別するための端末識別情報とがバックオフィスサーバ10に提供される(F53)。それにより、図2に示したスクリプトのうち、ユーザ、シリアル番号及び支払方法の情報を除く情報がその値を確定させた状態でバックオフィスサーバ10上に揃う。支払方法として複数種類の決済手段が指定されている場合、その支払方法は未確定な状態である。この後、バックオフィスサーバ10からスクリプト管理サーバ20に対し、デフォルト設定情報とその後にサービス端末40から提供された情報とを添えてスクリプトの作成が要求される(F54)。スクリプト管理サーバ20では、バックオフィスサーバ10から得られた情報に従ってスクリプトが作成され、そのスクリプトに対してシリアル番号が付加された上でスクリプトデータベースDB2に記録される。この段階で保存されるスクリプトは、ユーザ及び支払方法の情報以外の情報が全て確定した状態で記録されたものとなる。そして、作成されたスクリプトのシリアル番号がサービス端末40に提供される(F55)。サービス端末40では、得られたシリアル番号のみが必須情報として含まれるようにして二次元コード100が表示される(F56)。
二次元コード100に含まれる必須情報がユーザ端末60にて読み取られた後の手順は図4と同様であるために詳細を省略する。ただし、この例では、図12に示すように、二次元コード100を読み取ったユーザ端末60にて、必須情報IFaとしてのシリアル番号に対してユーザ認証コードが付加されて決済情報IFbが生成され、その決済情報IFbが決済実行サーバ30に送信される。スクリプトデータベースDB2に記録されたスクリプトでは、ユーザ認証コード及び支払方法以外の情報は全て確定した状態で記録されているので、決済実行サーバ30はスクリプト管理サーバ20から提供されたスクリプトに基づいてユーザ端末60に決済手段のリストを提供してユーザに決済手段を選択させ、選択された決済手段の情報とユーザ認証コードとをユーザ端末60から取得してそれらの値をスクリプトに代入することによりスクリプトの全ての情報を確定させる。それにより、決済処理を実行することが可能である。
図13は、図11の決済システム1Aにおける二次元コード100の発行までの手順の具体例を図7に対応させて示している。なお、図13の各処理を実行するための決済システム1Aの具体的な構成は図6と同様でよく、以下では図6に示した構成に基づいて図13の各処理が実行されるものとして処理手順を説明する。図13の手順においては、まず管理端末50からバックオフィスサーバ10への先行情報の送信(ステップS10)、及び品目管理サーバ80からサービス端末40(又は管理端末50であってもよい。)に対する品目コード等の送信が実行される(ステップS11)。ただし、これらの処理が適宜に省略されてよいことは上述した通りである。
サービス端末40にてユーザが商品又はサービスを選択すると、支払先等の一定の情報がサービス端末40の支払制御部41からバックオフィスサーバ10に提供される(ステップS12A)。この段階で、支払方法に関して一又は複数種類の決済手段を指定する情報が提供されてもよい。その情報はステップS10で先行して提供されてもよい。バックオフィスサーバ10の条件設定部11は、得られた情報をデフォルト設定情報としてバックオフィスサーバ10の記憶装置(不図示)に記憶する(ステップS12B)。この後、サービス端末40に対してユーザが購入を確定する操作を行うと、サービス端末40の支払制御部41により、その時点で確定した支払品目、単価、個数といった支払内容の情報と、支払方法に関する選択肢を示す情報と、サービス端末40を識別するための端末識別情報とがバックオフィスサーバ10に提供される(ステップS12C)。バックオフィスサーバ10では、条件設定部11により、ステップS12Bで記憶した情報とステップS12Cによって送信された情報とをスクリプト作成条件として指定しつつ、スクリプト管理サーバ20に対してスクリプトの作成が要求される(ステップS13A)。
スクリプトの作成が要求されると、スクリプト管理サーバ20のスクリプト作成部21にて作成条件に合致したスクリプトが作成され(ステップS14)、そのスクリプトにシリアル番号が追加され(ステップS15)、得られたスクリプトがスクリプトデータベースDB2に記録される(ステップS16)。この場合に記録されるスクリプトは、上記の通り、ユーザ及び支払方法の情報が未確定で、それ以外の情報は全て確定した状態である。ただし、支払方法として一種類の決済手段が指定された場合には、支払方法の情報はこの時点で実質的に確定している。
スクリプトデータベースDB2に新たなスクリプトが記録されると、そのシリアル番号がスクリプト管理部22からバックオフィスサーバ10のシリアル取得部12に提供され(ステップS17)、そのシリアル番号はさらにサービス端末40に提供される(ステップS18)。その提供を受けて、サービス端末40では、コード制御部42によりバックオフィスサーバ10を経由して与えられたシリアル番号のみを含んだ必須情報IFaが記録されるようにして二次元コード100が生成されて表示される(ステップS22)。
サービス端末40にて二次元コード100が表示されると、以降はユーザ端末60から決済実行サーバ30への決済情報IFbの提供といった処理が行われるが、それらの処理は図8及び図9と同様でよく、その詳細は説明を省略する。ただし、ユーザ端末60にて追加される情報はユーザ認証コードとユーザが選択した決済手段を支払方法として指定する情報のみで足りる。また、決済処理が完了した場合、それに用いられたスクリプトを、有効期限内であっても削除する処理が追加されてもよい。
第2の形態によれば、サービス端末40にて支払いが発生する都度に新たなスクリプトが作成される。したがって、スクリプト作成時には、第1の形態と比較して、より多くの情報を確定させた状態でスクリプトを作成することが可能である。そのため、二次元コード100に記録すべき情報を削減して二次元コード100を簡素化し、複数種類の決済サービス間にて二次元コード100を共通化するに有利である。なお、第2の形態に係る決済システム1Aにおけるサービス端末40のコード制御部42、ユーザ端末60のコード取得部61及び支払制御部62、決済実行サーバ30の決済実行部31、決済通知部32が第1の形態と同様の手段の一例として機能する。
第2の形態では、サービス端末40から先行して送信される情報(ステップS12A)をバックオフィスサーバ10に記憶し、その後に送信される情報(ステップS12C)と合わせることにより、スクリプトのユーザ認証コード以外の情報を揃えた上でスクリプト管理サーバ20にスクリプトの作成を依頼したが、それらの情報をユーザの購入操作に従ってサービス端末40上で一時的に保持し、ユーザ認証コード以外の情報が揃った時点でサービス端末40からスクリプト作成をスクリプト管理サーバ20に依頼するようにしてもよい。この場合、バックオフィスサーバ10は省略されてもよい。また、管理端末50も、バックオフィスサーバ10への情報の提供等が不要であれば、適宜に省略されてよい。さらに、第2の形態においても、二次元コード100に記録されるべき必須情報IFaとして、シリアル番号に代えて、図10と同様にスクリプトそれ自体が記録されてもよい。
上述した第1及び第2の形態では、バックオフィスサーバ10、スクリプト管理サーバ20及び決済実行サーバ30を互いに区分して設けているが、その構成はあくまで一例であり、これらは適宜に統合されてもよい。バックオフィスサーバ10を省略し、サービス端末40、あるいは管理端末50がスクリプト管理サーバ20に直接的にアクセスするものとしてもよい。サービス端末40は単一の端末装置として構成されることを必ずしも要しない。例えば、複数の端末装置を協働させることにより、それらの端末装置の集合を一つのサービス端末として機能させてもよい。
必須情報に含まれるべき情報には、決済手段の種類に関わりなく共通してサーバが必要とする情報である限りは適宜の情報が選択されてよい。例えば、第1の形態において、支払先の情報は、決済手段の種類に関わりなくサーバが共通して必要とする情報であるが、第1の形態ではこれを確定する情報がスクリプトデータベースDB2に保持されたスクリプトに予め記述されているために、サービス端末40側では二次元コード100に支払先の情報を記録する必要がない。しかしながら、支払先の情報をサービス端末40側で二次元コード100に記録するように第1の形態が変形されてもよい。この場合には、支払先の異同の観点でスクリプトを区別して作成する必要がなく、異なる支払先間で共通のスクリプトを利用できる可能性がある。第2の形態においても、スクリプトに記述される情報の一部の確定値を二次元コード100に含めるようにしてもよい。例えば、シリアル番号に加えて支払額の確定値が二次元コード100に記録されるようにしてもよい。このように、サービス端末にて表示すべき情報画像に対してどのような情報を必須情報として記録すべきか、は、サービスの異同に関わりなく情報画像に記録すべき情報の種類を共通化できる限りにおいて適宜に変更されてよい。
上記の形態では情報画像の一例として二次元コード100が利用されているが、情報画像は必須情報をユーザ端末60が取得可能な態様で記録できる限りにおいて、二次元コードに限らず種々のフォーマットで情報を記録するように設けられてよい。
上記の形態では、決済実行サーバ30が口座管理サーバ70と連携して決済処理を実行し、かつ決済処理の結果を品目管理サーバ80及びサービス管理サーバ90に通知してこれらのサーバ80、90で関連した処理を実行するものとしたが、例えばサーバ80、90は、決済サービスを提供するための処理を実行する上で必須なものではなく、決済端末にて提供されるべき決済サービスで利用されるべき決済手段の種類、その決済手段による決済処理を実現するためにサーバが実行すべき処理の内容に応じて適宜に追加、変更又は削除されてよい。また、決済実行サーバ30は口座管理サーバ70として例示した他のサーバと連携して決済処理を実行するように構成されることを必ずしも要しない。例えば、決済実行サーバ30自身がユーザの電子通貨の残高を管理するといったように決済処理を自ら実行可能であってもよい。
(第3の形態)
次に、図14〜図17を参照して本発明の第3の形態を説明する。なお、各図において、第1の形態と共通する部分には同一の参照符号を付し、以下では相違点を中心として説明する。図14は第3の形態に係る決済システム1Bの概略構成を示している。本形態の決済システム1Bは、第1又は第2の形態におけるスクリプトを利用することなく複数種類の決済サービスからいずれか一つの決済サービスを選択して決済処理を進めるように構成されている。
図14に示すように、決済システム1Bは、サービス提供者が運用するサービス端末40にて二次元コード100を表示し、ユーザの個人的用途に利用されるユーザ端末60にて二次元コード100に記録された必須情報を読み取って決済処理を実行する点では第1及び第2の形態の決済システム1と共通する。ただし、第1及び第2の形態におけるバックオフィスサーバ10及びスクリプト管理サーバ20は省略されている。管理端末50は、例えばサービス端末40の管理や設定、あるいは決済実行サーバ30Aとの情報交換の必要に応じて適宜に設けられてよい。また、図14では図示を省略したが、図1の品目管理サーバ80も例えばサービス端末40側への情報提供の必要等に応じて適宜に設けられてよい。口座管理サーバ70及びサービス管理サーバ90は第1及び第2の形態と同様である。口座管理サーバ70は、第1及び第2の形態のそれと同様に、特定種類の電子通貨の口座の残高をユーザ識別情報と関連付けて管理するサーバであって、決済実行サーバ30Aと連携して電子通貨による料金の支払いを処理するサーバの一例である。決済実行サーバ30Aが決済処理において連携するサーバは、図示の口座管理サーバ70に限らず、他の種類の電子通貨を管理するサーバ、銀行口座からの料金の引き落としを処理するサーバ、クレジットカードによる支払いを処理するサーバ等が適宜に使い分けられてよい。決済実行サーバ30Aには、連携相手となるサーバとの間で決済を処理するための手順を記述したコンピュータプログラム群が予め実装され、それらのコンピュータプログラムが料金の支払いに用いられるべき決済手段の選択に応じて適宜に実行される。また、決済実行サーバ30Aには、処理可能な支払方法、つまり料金の支払いに利用可能な決済手段を特定するための情報が予め与えられている。その情報は、例えば第1及び第2の形態においてユーザ端末60に提供される決済手段のリストの情報として与えられてよい。
図15は、決済システム1Bにおけるサービス端末40からユーザ端末60を経由して決済実行サーバ30Aへと情報が伝達される様子の一例を示している。図示の例においては、まずサービス端末40(図では店頭端末40Bを示すが、他のサービス端末でもよい。)にて生成される二次元コード100には支払先及び支払内容の情報が必須情報IFaAに含まれている。支払先が含まれているのは、サービス端末40にて支払いが発生するごとに、サービス提供者の都合、あるいは販売される商品、サービスの種類等に応じて支払先が適宜に変更される可能性があり、個々の支払いにおける事情に対応するためにはサービス端末40側で支払先を指定することが好都合だからである。ただし、例えば決済手段に応じて支払先が固定的に定まるといったように、サービス端末40間での支払先の相違を考慮する必要がない場合には、決済実行サーバ30Aに対して予め支払先の情報を与えておくことにより必須情報IFaAから支払先の情報が省略されてもよい。
二次元コード100を読み取ったユーザ端末60では、二次元コード100に含まれていた支払先及び支払内容の情報に対してユーザ認証コード及び決済が確定情報として付加されて決済情報IFbAが生成され、得られた決済情報IFbAが決済実行サーバ30Aに送信される。ただし、決済情報IFbAの送信は一度に行われることを必須とするものではない。例えば、支払方法を除く情報、例えばユーザ認証コードが一次情報の一例として決済実行サーバ30Aに先行して送信され、支払方法の情報が決済実行サーバ30Aから提供される決済手段リストに基づいてユーザに決済手段を選択させることにより確定され、その確定後に、未送信の情報がユーザ端末60から決済実行サーバ30Aに送信されてよい。ユーザ認証コード等の送信に先行して、決済実行サーバ30Aから決済手段のリストを取得し、そのリストに従って決済手段をユーザに選択させることによって決済情報IFbAを確定させ、得られた決済情報IFbAを決済実行サーバ30Aに一括して送信してもよい。決済実行サーバ30Aでは、ユーザ端末60から取得した決済情報IFbAに従って決済処理が実行される。
図16は、決済システム1Bの要部に関する具体的な構成の一例を示している。図16の例において、決済実行サーバ30Aには、そのコンピュータハードウエアとコンピュータプログラムPs3Aとの組み合わせによって実現される論理的装置として、決済実行部31A及び決済通知部32が設けられる。決済実行部31Aは、決済手段のリストをユーザ端末60に提供し、あるいはユーザ端末60から受け取った決済情報に従って口座管理サーバ70等と連携しつつ決済処理を実行する。決済通知部32は決済実行部31Aが実行した決済処理の結果の情報をサービス端末40等に通知する点で第1及び第2の形態のそれと同様である。
サービス端末40には、そのコンピュータハードウエアとコンピュータプログラムPt1Aとの組み合わせによって実現される論理的装置として、支払制御部41及びコード制御部42Aが設けられる。支払制御部41は第1の形態のそれと同様である。コード制御部42Aは二次元コード100に必須情報IFaAの一部として含めるべき支払内容を支払制御部41から取得し、得られた情報とサービス端末40に予め与えられている支払先の情報とを合わせて必須情報IFaAを生成し、得られた必須情報IFaAに基づいて二次元コード100を生成し、サービス端末40に表示させる。
ユーザ端末60には、そのコンピュータハードウエアとコンピュータプログラムPt2Aとの組み合わせによって実現される論理的装置として、コード取得部61及び支払制御部62Aが設けられる。コード取得部61は第1の形態のそれと同様である。支払制御部62Aは、コード取得部61が取得した必須情報IFaAに対してユーザ認証コード、あるいは支払方法の情報等を付加して決済情報IFbAを生成し、得られた決済情報IFbAを決済実行サーバ30に送信するといった料金の支払いに必要な各種の処理を実行する。
図17は、図16に示した決済システム1Bにおいて決済サービスを提供するために実行される処理の手順の一例を示すフローチャートである。図17の手順においては、まずサービス端末40の支払制御部41にてユーザの支払内容が決定され(ステップS21)、コード制御部42Aにて二次元コード100が生成されて表示される(ステップS22)。これらの手順は図8のステップS21、S22の処理と同様であるが、二次元コード100に記録される必須情報IFaAは、図15に例示したように支払先及び支払内容の情報を含むものである。
サービス端末40における処理と並行して、ユーザ端末60の支払制御部62Aではユーザ認証処理が行われる(ステップS30)。この処理は、ユーザ端末60にてユーザ認証コードを入力させてユーザ端末60がユーザを識別するローカル処理であってもよいし、ユーザ端末60とサービス管理サーバ90とが連携してユーザを認証する処理であってもよい。ユーザ認証処理が完了すると、ユーザ端末60では、コード取得部61により二次元コード100に含まれている必須情報IFaAが取得され(ステップS31)、支払制御部62AによりステップS30のユーザ認証処理で得られているユーザ認証コードが端末付加情報の一例として必須情報IFaに付加され(ステップS32)、得られた情報が決済情報IFbAの一部である一次情報の一例として支払制御部62から決済実行サーバ30Aに送信されて決済処理が要求される(ステップS33)。
決済実行サーバ30Aでは、今回の決済処理で利用することが可能な決済手段のリストが選択情報の一例として決済実行部31からユーザ端末60に提供される(ステップS37A)。このリストは基本的には第1の形態と同様にステップS33で送信される情報に基づいて決定されてよい。ただし、第3の形態では第1の形態におけるスクリプトが用いられていないため、スクリプトに決済手段の候補を予め記述し、それらの候補をリストとして提供することはできない。しかしながら、例えば支払先、あるいは支払方法と関連付けて利用可能な決済手段を指定する情報を予め決済実行サーバ30Aに与えておけば、ステップS33で送信される情報に基づいて今回の決済処理で利用可能な決済手段を判別し、その判別結果に従って決済手段のリストを生成してユーザ端末60に提供することが可能である。一方、ステップS33にて送信される情報に関わりなく、決済実行サーバ30Aが処理可能な決済手段のリストをユーザ端末60に提供するようにしてもよい。
リストを受け取ったユーザ端末60の支払制御部62Aでは、提供されたリストからユーザに決済手段を選択させる処理が行われ、その選択結果が決済情報IFbAのさらなる一部である二次情報の一例として決済実行サーバ30Aに送信される(ステップS38)。これらの処理も第1及び第2の形態と同様である。決済処理を実行してよいか否かをユーザに確認させる処理が併せて行われ、ユーザが決済実行を承認した場合に限って決済手段の選択結果が送信されるものとしてもよい。
決済手段の選択結果が決済実行サーバ30Aに送信されると、決済実行部31Aにより決済情報IFbAに含まれている情報、すなわち、ユーザ認証コード、支払方法及び支払内容を参照しつつ決済実行部31Aにより決済処理が実行される(ステップS39)。決済処理は、第1の形態と同様に、決済情報IFbAに含まれている支払方法に従って口座管理サーバ70等と連携して行われてよい(ステップS40)。決済処理が実行されると、口座管理サーバ70から決済実行サーバ30Aに支払処理の結果が通知され(ステップS42)、決済実行サーバ30Aの決済通知部32からサービス端末40、ユーザ端末60、サービス管理サーバ90に支払結果が通知される(ステップS45)。支払いが正常に完了していれば、サービス端末40の支払制御部41Aでは、料金の支払い完了を条件として許可されるべき所定の処理が後続処理として開始され(ステップS46)、ユーザ端末60では支払いが完了した旨をユーザに通知する処理が後続処理の一例として実行される(ステップS47)。さらに、サービス管理サーバ90では、料金の支払い完了を条件として許可されるべき所定の処理が関連処理として実行される(ステップS48)。これらの後続処理、あるいは関連処理は第1及び第2の形態と同様にして実施されてよい。
図16及び図17に示した形態では、コード制御部42Aが図17のステップS22の処理を実行することにより情報画像表示手段の一例として機能し、コード取得部61が図17のステップS31の処理を実行することにより情報取得手段の一例として機能し、支払制御部62Aが図17のステップS32、S33及びS38の処理を実行することにより決済情報提供手段の一例として機能し、決済実行部31Aが図17のステップS39の処理を実行することにより決済実行手段の一例として機能し、決済通知部32が図17のステップS45の処理を実行することにより結果情報提供手段の一例として機能する。また、支払制御部62Aが図17のステップS32及びS33の処理を実行することにより一次情報提供手段の一例として機能し、支払制御部62Aが図17のステップS38の処理を実行することにより二次情報提供手段の一例として機能し、決済実行部31Aが図17のステップS37Aの処理を実行することにより選択情報提供手段の一例として機能する。さらに、サービス管理サーバ90は図17のステップS48の処理を実行することにより関連処理実行手段の一例として機能する。
上述した第3の形態においても、適宜の変形又は変更を施すことが可能である。例えば、第3の形態でも、情報画像は二次元コード100に限らず種々のフォーマットの画像が情報画像として利用されてよい。サービス管理サーバ90も適宜に追加、変更又は削除されてよい。
さらに、第1〜第3の形態のいずれに対しても適用可能な変形例を以下に例示する。
各形態では、サービス端末40を決済端末としても機能させたが、サービス端末と決済端末とは互いに異なる端末装置として設けられてもよい。その場合、決済端末が受け取る決済処理の結果に応じてサービス端末におけるサービスの提供が制御されるといったように、サービス端末と決済端末とを連動させてもよい。要するに、サービス端末は決済端末と関連付けて動作するものであれば足り、両端末は同一装置によって実現されてもよいし、互いに関連付けて動作する別装置として設けられてもよい。
各形態では決済が発生する都度に予め決済実行サーバ30、30Aからユーザ端末60に決済手段のリストを選択情報の一例として提供するものとしたが、選択情報を提供する時期は必ずしも個々の決済が発生した時点であることを要しない。例えば決済実行サーバ30、30A側で選択情報が更新されるごとに、あるいは定期的に決済実行サーバ30、30A側からユーザ端末60に選択情報を配信し、個々の決済時にはユーザ端末60が自らの記憶装置に保存された選択情報を参照してユーザに決済手段を選択させるようにしてもよい。例えば、ユーザ端末60に実装されるべきコンピュータプログラムPt2、Pt2Aのアップデートモジュールを決済実行サーバ30、30Aあるいは他のサーバから適宜に配信する仕組みが設けられる場合、そのアップデートモジュールの配信を利用して選択情報をユーザ端末60に予め与えておくことができる。要するに、選択情報を決済処理が発生する都度にユーザ端末60に提供する処理は必須ではなく、決済の発生時点でユーザ端末60が決済手段を選択できる限りにおいて、選択情報は適宜の態様でユーザ端末60に与えられてよい。したがって、上述したように、ユーザ端末60からの決済情報IFb、IFbAの送信も一次情報及び二次情報に分けて行われることを必須とせず、ユーザ端末60に既に選択情報が存在する場合には決済情報IFb、IFbAを一括して送信することも可能である。
一方、各形態では、ユーザ端末60からの決済情報IFb、IFbAの送信を、一次情報及び二次情報に分けて行うことと関連して、決済実行サーバ30、30Aが一次情報に基づいて利用可能な決済手段の種類を判別し、その判別結果に従って選択情報としての決済手段のリストをユーザ端末60に提供する可能性について説明した。例えば、第1及び第2の形態では、シリアル番号に従ってスクリプトを特定し、そのスクリプトに記述された決済手段の候補に基づいてリストを生成することが可能である。第3の形態では、支払先、支払内容等に基づいて決済手段のリストを生成することが可能である。これに代えて、あるいは加えて、ユーザ認証コード等のユーザ識別情報を利用して決済手段の候補を判別し、選択情報を提供することも可能である。そのような処理は、例えば、ユーザ識別情報と選択情報とを対応付けて決済実行サーバ30、30Aに保持させ、ユーザ端末60から取得したユーザ識別情報に対応する選択情報をユーザ端末60に提供することによって実現することができる。その場合、ユーザが利用を希望する決済手段の候補を予めユーザからユーザ端末60を介して決済実行サーバ30、30Aに指定させ、その指定内容をユーザ認証コード等のユーザ識別情報と対応付けて決済実行サーバ30、30Aに保持しておくようにしてもよい。さらにユーザ識別情報と関連付けて決済手段の種類に対するデフォルト値を設定し、あるいは優先順位を設定することも可能である。この場合には決済手段の選択に関するユーザの利便性を高めることが可能である。デフォルト設定等は、ユーザからの指示に基づいて処理されてもよいし、ユーザの利用履歴等に基づいて自動的に処理されてもよい。
あるいは、サービス端末40を適宜の単位でグループに区別し、グループに応じて選択情報が差別化されてもよい。そのようなグループは個々のサービス端末40ごとに区別されてもよいし、サービス提供者の異同に応じて区別されてもよい。一例として、サービス提供者が運営する店舗などを単位としてサービス端末40をグループに区別し、店舗ごとに選択情報が差別化されてもよい。この場合には、グループ別に決済手段として利用可能な決済手段の候補をサービス提供者等に指定させ、その指定内容をグループの識別情報と対応付けて決済実行サーバ30、30Aに保持しておけばよい。ただし、ユーザ端末60から選択情報の提供が求められた場合には、いずれのグループに対応する選択情報を提供すべきかを判別する必要があるため、二次元コード100には、グループの識別情報を必須情報の一部として含めておき、これをユーザ端末60から決済実行サーバ30、30Aに提供することを要する。
上記の各形態では、関連処理の一例として、例えば、サービス管理サーバ90が提供するサービスに対してユーザに特典を付与する例を挙げたが、関連処理はこれに限られない。例えば、第3の形態において、図17のステップS30のユーザ認証処理がローカル処理である場合、そのユーザはサービス管理サーバ90に関してはユーザ認証を済ませていないことがある。一方、決済実行サーバ30AはステップS31の処理でユーザ認証コードを取得している。したがって、ステップS48の関連処理として、決済実行サーバ30Aからサービス管理サーバ90にユーザ認証コードを提供し、関連処理の一種としてサービス管理サーバ90にてユーザ認証処理を実行することも可能である。この場合、サービス端末40の利用に関して決済システム1Aにて料金の支払いを済ませると、それと連動してサービス管理サーバ90におけるユーザ認証が完了することになる。したがって、ユーザは、サービス管理サーバ90に対して別途ユーザ認証を求めることなく、料金の支払いを契機としてサービス管理サーバ90が提供するサービスを利用しつつサービス端末40を利用することが可能となり、ユーザの利便性が向上する。例えばゲーム機40Aに対するプレイデータの送信といったサービスをサービス管理サーバ90がユーザ認証を条件として提供する場合、ユーザは料金の支払い完了後、別途のユーザ認証を必要とせずにサービス管理サーバ90のサービスを利用しつつゲーム機40Aを利用することが可能である。このような変形例は、第1及び第2の形態の決済システム1、1Aにおいても同様に適用することが可能である。
また、サービス端末40にて提供されるサービスを識別するためのサービス識別情報を二次元コード100に必須情報の一部として含めておき、これをユーザ端末60から決済情報の一部として決済実行サーバ30、30Aに提供するようにしてもよい。あるいは、ユーザ端末60にてサービス識別情報を決済情報の一部として付加し、これを決済実行サーバ30、30Aに提供するようにしてもよい。その場合、決済実行サーバ30、30Aは、決済処理がどのようなサービスに対するものか、をサービス識別情報に従って判別することが可能である。よって、サービス識別情報と関連付けられた処理を関連処理の一種として自ら実行し、あるいはサービス管理サーバ90等の連携相手のサーバに実行させることができる。例えば、サービス端末40にて提供されるサービスがゲーム機40Aにおけるゲームサービスと判別された場合、そのゲームサービスに固有の関連処理を実行するといった処理が可能となる。
各形態の決済システム1、1A、1Bでは決済実行サーバ30、30Aにて決済処理が行われるために、決済実行サーバ30、30A側で各サービス端末40の売上を把握する情報を生成することができる。一方、サービス端末40には、例えば現金による料金の徴収を可能とする仕組みが実装されることがあり、決済実行サーバ30、30Aではそうしたサービス端末40側で完結する決済、すなわち決済システム1、1A、1Bを経由しない決済に基づく売上を把握することができない。このような状況で、例えば、決済システム1、1A、1Bを介した決済による売上と、サービス端末40にて完結する決済による売上とを合算して管理する必要がある場合には、例えば図18に示すように、サーバ側で売上を合算して集計できる仕組みが設けられてもよい。図18の例では、サービス端末40の一例としてのゲーム機40Aに現金による料金支払いを処理する料金徴収装置43が料金徴収手段の一例として設けられ、品目管理サーバ80が売上を管理する集計手段の一例として機能する。この場合、ゲーム機40Aでは料金徴収装置43を介して徴収した料金の額が店舗売上情報として生成され、得られた情報が品目管理サーバ80に適時に提供される。一方、決済実行サーバ30では、決済処理が行われるごとに、品目管理サーバ80に対してシステム売上情報が提供される。システム売上情報は例えば図9のステップS43にて通知される情報としてよい。品目管理サーバ80では、得られた店舗売上情報及びシステム売上情報とに基づいて、ゲーム機40Aが自ら徴収した料金と、決済システム1を介して徴収された料金とが合算されて集計情報が生成される。集計情報の生成あるいは更新は、例えば一月ごとといった適宜の周期で行われてよい。また、売上の集計は、サービス端末40が設置された店舗等、適宜の集合を単位として行われてよい。なお、売上を集計するサーバは品目管理サーバ80に限らず、適宜のサーバが担当してよい。図18は第1の形態を例に挙げているが、このような変形は第2及び第3の形態でも同様に適用可能である。
上述した実施の形態及び変形例のそれぞれから導き出される本発明の各種の態様を以下に記載する。なお、以下の説明では、本発明の各態様の理解を容易にするために添付図面に図示された対応する構成要素を括弧書きにて付記するが、それにより本発明が図示の形態に限定されるものではない。
本発明の一態様に係る決済システム(1;1A;1B)は、サーバ(30;30A)及び当該サーバに対するクライアントとして機能するユーザ端末(60)及び決済端末(40)を含んだクライアントサーバシステムとして構築され、前記決済端末にて提示される情報画像(100)に含まれている決済処理に必要な情報が前記ユーザ端末を介して前記サーバに提供されることにより、ユーザが支払うべき料金を決済するための決済処理が前記サーバにて実行される決済システムであって、決済に用いられるべき決済手段の種類を問わず共通に定められた必須情報(IFa;IFaA)が前記決済処理に必要な情報として含まれるようにして前記情報画像を前記決済端末に表示させる情報画像表示手段(42、S22;42A、S22)と、前記情報画像に含まれている前記必須情報を前記ユーザ端末に取得させる情報取得手段(61、S31)と、複数種類の決済手段から決済に用いられるべき決済手段を、前記ユーザ端末を介して前記ユーザに選択させ、選択された決済手段を識別するための決済手段識別情報(一例として支払方法の情報)と前記情報取得手段が取得した前記必須情報とを含む決済情報(IFb;IFbA)を前記ユーザ端末から前記サーバに送信させる決済情報提供手段(62、S32、S33、S38;62A、S32、S33、S38)と、前記サーバに、前記決済情報に含まれている前記決済手段識別情報に基づいて決済手段を識別させ、前記決済情報に含まれている前記必須情報に応じた決済が、識別された決済手段に従って行われるように前記決済処理を実行させる決済実行手段(30、S39;30A、S39)と、前記決済処理が実行された結果を示す結果情報を前記サーバから前記決済端末に送信させる結果情報提供手段(32、S45)と、を備えたものである。
本発明の一態様に係るコンピュータプログラム(Ps1〜Ps3、Pt1、Pt2;Ps3A、Pt1A、Pt2A)は、サーバ(30;30A)及び当該サーバに対するクライアントとして機能するユーザ端末(60)及び決済端末(40)を含んだクライアントサーバシステムとして構築され、前記決済端末にて提示される情報画像(100)に含まれている決済処理に必要な情報が前記ユーザ端末を介して前記サーバに提供されることにより、ユーザが支払うべき料金を決済するための決済処理が前記サーバにて実行される決済システム(1;1A;1B)に適用されるコンピュータプログラムであって、前記決済システムに含まれたコンピュータを、決済に用いられるべき決済手段の種類を問わず共通に定められた必須情報(IFa;IFaA)が前記決済処理に必要な情報として含まれるようにして前記情報画像を前記決済端末に表示させる情報画像表示手段(42、S22;42A、S22)、前記情報画像に含まれている前記必須情報を前記ユーザ端末に取得させる情報取得手段(61、S31)、複数種類の決済手段から決済に用いられるべき決済手段を、前記ユーザ端末を介して前記ユーザに選択させ、選択された決済手段を識別するための決済手段識別情報(一例として支払方法の情報)と前記情報取得手段が取得した前記必須情報とを含む決済情報(IFb;IFbA)を前記ユーザ端末から前記サーバに送信させる決済情報提供手段(62、S32、S33、S38;62A、S32、S33、S38)、前記サーバに、前記決済情報に含まれている前記決済手段識別情報に基づいて決済手段を識別させ、前記決済情報に含まれている前記必須情報に応じた決済が、識別された決済手段に従って行われるように前記決済処理を実行させる決済実行手段(30、S39;30A、S39)、及び前記決済処理が実行された結果を示す結果情報を前記サーバから前記決済端末に送信させる結果情報提供手段(32、S45)、として機能させるように構成されたものである。
上記態様によれば、決済端末では、決済に用いられるべき決済手段の種類を問わず共通に定められた必須情報が決済処理に必要な情報として含まれるようにして情報画像を表示させる一方で、いずれの種類の決済手段を決済に用いるかに関してはユーザ端末を介してユーザに選択させ、その選択結果と情報画像に含まれている情報とが含まれた決済情報がユーザ端末からサーバへと送信される。したがって、決済端末側にて情報画像に記録されるべき必須情報は、いずれの種類の決済手段が用いられるかに関わりなく共通のフォーマットで情報画像に記録することが可能である。したがって、新たな決済サービスを導入する場合でも決済端末側では、その決済サービスに対応する独自の情報を含んだ情報画像を表示させるプログラムを追加する必要がなく、新たな決済サービスに対応する専用のハードウエアを設ける、といった設備投資も不要である。一方、新たな決済サービスへの対応は、ユーザ端末側にて新たな決済サービスに対応する決済手段を選択肢として追加し、かつサーバ側でその新たな決済サービスに対応する決済手段に従って決済処理を実行するためにプログラムを追加するといった措置によって実現できる。それにより、決済端末側で要する負担を軽減しつつ種々の決済サービスに対応することが可能である。
なお、本発明の一態様に係るコンピュータプログラムは、記憶媒体に記憶された状態で提供されてもよい。この記憶媒体を用いれば、例えばコンピュータに本発明に係るコンピュータプログラムをインストールして実行することにより、そのコンピュータを利用して本発明のシステムを実現することができる。コンピュータプログラムを記憶した記憶媒体は、CDROM等の非一過性の記憶媒体であってもよい。
上記の態様において、前記必須情報は、前記ユーザが支払うべき料金及び当該料金が支払われるべき相手の少なくともいずれか一方を指定する情報を含むようにしてもよい。ユーザが支払うべき料金、あるいは料金が支払われるべき相手に関する情報は、決済を処理するにあたって、決済手段の種類を問わず共通して必要となる情報である。また、料金が固定されていない場合には、支払いが発生する都度に料金が変動するため、その料金を決済端末側から指定する必要がある。支払いの相手が固定されていない場合も、同様に支払いが発生する都度にその相手を決済端末側から指定する必要がある。このような場合、料金又は支払いの相手に関する情報は、決済手段の種類を問わず共通して定めるべき情報であって、その種の情報を情報画像に含めても決済手段の種類を問わず情報画像のフォーマットを共通化することが可能であり、決済端末側の負担の軽減を図ることができる。
前記決済情報提供手段には、前記必須情報を含む一次情報を前記決済情報の一部として前記ユーザ端末から前記サーバに送信させる一次情報提供手段(62、S32、S33;62A、S32、S33)と、前記決済手段識別情報を含む二次情報を前記決済情報の一部として前記ユーザ端末から前記サーバに送信させる二次情報提供手段(62、S38;62A;S38)とが設けられ、前記サーバには、前記一次情報に基づいて、前記必須情報に応じた決済にて用いることが可能な決済手段を判別し、判別された決済手段を、前記決済に用いるべき決済手段として選択可能な決済手段として示した選択情報を前記ユーザ端末に送信する選択情報提供手段(31、S37;31A、S37A)が設けられ、前記二次情報提供手段は、前記サーバから送信された前記選択情報に基づいて、前記必須情報に応じた決済にて用いることが可能な決済手段を前記ユーザに提示して前記決済に用いるべきいずれか一つの決済手段を前記ユーザに選択させ、選択された決済手段が前記決済手段識別情報にて識別されるようにして前記二次情報を前記ユーザ端末から前記サーバに送信させてもよい。この形態によれば、ユーザ端末から提供される一次情報に従って選択情報を適宜に変化させることができる。したがって、決済が発生する都度に、その決済に適した決済手段の候補をユーザに提示してユーザにいずれかの決済手段を選択させることができる。
前記決済情報提供手段は、前記ユーザ端末のユーザを識別するためのユーザ識別情報が含まれるようにして前記決済情報を前記ユーザ端末から前記サーバに送信させ、前記決済実行手段は、前記ユーザ識別情報と関連付けて前記サーバに保持されている情報を参照して前記決済処理を実行してもよい。これによれば、ユーザを識別して決済を処理する各種の仕組みを利用して決済処理を実行することができる。
上記態様において、前記決済端末と関連付けて動作するように設けられ、かつ前記ユーザに所定のサービスを提供するサービス端末(40)を決済システムが備え、前記サービス端末は、前記結果情報提供手段によって送信される前記結果情報が、前記料金の決済が完了したことを示す場合に前記サービスを前記ユーザに提供してもよい。これによれば、サービス端末によるサービスの提供を決済システムによる決済の完了と関連付けて制御することができる。
前記決済情報提供手段は、前記ユーザ端末のユーザを識別するためのユーザ識別情報が含まれるようにして前記決済情報を前記ユーザ端末から前記サーバに送信させ、前記決済情報に含まれているユーザ識別情報に関連付けられた処理を前記決済処理とは異なる関連処理として前記サーバに実行させる関連処理実行手段(90、S48)を決済システムがさらに備えてもよい。これによれば、決済のためにサーバ側に提供されるユーザ識別情報を利用して、決済処理とは別の関連処理を並行して実行することができる。したがって、関連処理の実行のためにユーザ識別情報をユーザ端末からサーバ側に別途提供する処理を省略することが可能となり、ユーザの利便性を高めることができる。
前記関連処理実行手段は、前記サービス端末の前記サービスに関して前記ユーザを認証する処理を前記関連処理として実行してもよい。あるいは、前記関連処理実行手段は、前記決済情報に含まれた前記ユーザ識別情報に基づいてユーザを識別し、識別されたユーザに対して特典を付与する処理を前記関連処理として実行してもよい。これらの形態によれば、ユーザ認証、あるいはユーザに対する特典の付与を決済処理と連動して処理することができるので、決済システムの付加価値を高めることが可能である。
前記決済情報提供手段は、前記サービス端末にて提供されるサービスを識別するためのサービス識別情報が含まれるようにして前記決済情報を前記ユーザ端末から前記サーバに送信させ、前記決済情報に含まれているサービス識別情報に関連付けられた処理を前記決済処理とは異なる関連処理として前記サーバに実行させる関連処理実行手段(90)をさらに備えてもよい。これによれば、決済処理と並行して、サービス端末にて提供されるサービスに固有の処理を関連処理として実行することにより、決済システムの付加価値を高めることが可能である。
前記サービス端末には、前記料金を前記決済実行手段による決済処理を用いることなく前記ユーザから徴収する料金徴収手段(43)が設けられ、前記サーバには、前記料金徴収手段が徴収した料金の額を前記サービス端末から取得し、得られた料金の額と前記決済処理にて決済された料金の額とを所定の集計単位ごとに集計する集計手段(80)が設けられてもよい。これによれば、サービス端末それ自体が料金を徴収する仕組みを有している場合でも、決済システムを利用して徴収した料金とサービス端末が徴収した料金とを集計し、得られた売上を一括して処理することが可能である。