(57)【特許請求の範囲】
【請求項１】
コード画像による決済を行うための第１情報に基づいて前記決済に関する処理を実行する端末によって実行されるプログラムであって、
複数の前記第１情報を、前記端末の通信部を介してサーバから受信することと、
受信された複数の前記第１情報を、前記端末の制御部によって前記端末の記憶部に記憶する制御を行うことと、
前記第１情報に基づく第１コード画像と、複数の前記第１情報のうち、前記決済に利用可能な前記第１情報が前記記憶部に記憶されている数に関する情報とを前記端末の表示領域に表示することと、
前記第１コード画像の前記表示領域への表示に基づき、前記決済に関する処理を前記制御部によって行うこととが前記端末によって実行される。
【請求項２】
請求項１に記載のプログラムであって、
前記数に関する情報は、前記決済に利用可能な前記第１情報の数に基づいて表示態様を異ならせて表示される。
【請求項３】
請求項２に記載のプログラムであって、
前記第１コード画像を前記表示領域に表示することに基づき、前記数に関する情報の表示態様を変更する制御を前記制御部によって行うことが前記端末によって実行される。
【請求項４】
請求項３に記載のプログラムであって、
前記表示領域の第１領域に前記第１コード画像を表示することと、
前記第１領域に前記第１コード画像が表示された後、前記数に関する情報が前記表示領域に表示された位置から前記第１領域よりも遠い第２領域に前記第１コード画像を表示することとが前記端末によって実行される。
【請求項５】
請求項１から請求項４のいずれか一項に記載のプログラムであって、
前記通信部を介した前記第１情報の受信に基づいて、前記数に関する情報の表示態様を変更することが前記端末によって実行される。
【請求項６】
請求項１から請求項５のいずれか一項に記載のプログラムであって、
前記通信部を介した前記第１情報の受信に基づいて、前記第１情報を受信したことを示す通知を前記端末のユーザに前記制御部によって行うことが前記端末によって実行される。
【請求項７】
請求項１から請求項６のいずれか一項に記載のプログラムであって、
前記決済に関する処理の後、複数の前記第１情報のうち、前記決済に利用可能な前記第１情報が前記記憶部に記憶されている場合、前記数に関する情報と前記第１コード画像とを前記表示領域に表示し、前記決済に利用可能な前記第１情報が前記記憶部に記憶されていない場合、前記決済に利用可能な前記第１情報が前記記憶部に記憶されていないことに関する第２情報を前記表示領域に表示することが前記端末によって実行される。
【請求項８】
請求項７に記載のプログラムであって、
前記第２情報の表示に基づき、前記第１情報の送信に関するリクエストを、前記通信部を介して前記サーバに送信することが前記端末によって実行される。
【請求項９】
請求項１から請求項８のいずれか一項に記載のプログラムであって、
前記端末による通信ができないことを示す情報を前記表示領域に表示することと、
前記通信できないことを示す情報に対する前記端末のユーザの入力に基づいて、前記端末の通信の設定に関する情報を前記表示領域に表示することとが前記端末によって実行される。
【請求項１０】
請求項１から請求項９のいずれか一項に記載のプログラムであって、
前記決済に関する処理に基づき、前記表示領域に表示された前記第１コード画像に基づく前記第１情報を利用不可にする制御を前記制御部によって行うことが前記端末によって実行される。
【請求項１１】
請求項１から請求項１０のいずれか一項に記載のプログラムであって、
複数の前記第１情報は、前記端末のユーザによる、前記端末に対する１回の操作に基づいて、前記サーバから送信される。
【請求項１２】
請求項１から請求項１１のいずれか一項に記載のプログラムであって、
複数の前記第１情報は、互いに異なる決済用情報を含む。
【請求項１３】
コード画像による決済を行うための第１情報に基づいて前記決済に関する処理を実行する端末の情報処理方法であって、
複数の前記第１情報を、前記端末の通信部を介してサーバから受信することと、
受信された複数の前記第１情報を、前記端末の制御部によって前記端末の記憶部に記憶する制御を行うことと、
前記第１情報に基づく第１コード画像と、複数の前記第１情報のうち、前記決済に利用可能な前記第１情報が前記記憶部に記憶されている数に関する情報とを前記端末の表示領域に表示することと、
前記第１コード画像の前記表示領域への表示に基づき、前記決済に関する処理を前記制御部によって行うこととが前記端末によって実行される。
【請求項１４】
コード画像による決済を行うための第１情報に基づいて前記決済に関する処理を実行する端末であって、
複数の前記第１情報をサーバから受信する通信部と、
受信された複数の前記第１情報を前記端末の記憶部に記憶する制御を行う制御部と、
前記第１情報に基づく第１コード画像と、複数の前記第１情報のうち、前記決済に利用可能な前記第１情報が前記記憶部に記憶されている数に関する情報とを表示する表示部とを備え、
前記制御部は、前記第１コード画像の前記表示部への表示に基づき、前記決済に関する処理を行う。
【請求項１５】
コード画像による決済を行うための第１情報に基づいて前記決済に関する処理を実行する端末であって、
プログラムを記憶するメモリから前記プログラムを読み出し、前記プログラムに基づく処理を実行するプロセッサーを備え、
前記プロセッサーは、
複数の前記第１情報を、前記端末の通信部を介してサーバから受信することと、
受信された複数の前記第１情報を、前記端末の記憶部に記憶することと、
前記第１情報に基づく第１コード画像と、複数の前記第１情報のうち、前記決済に利用可能な前記第１情報が前記記憶部に記憶されている数に関する情報とを前記端末の表示領域に表示することと、
前記第１コード画像の前記表示領域への表示に基づき、前記決済に関する処理を実行することとを実行する。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、プログラム、情報処理方法、端末に関する。
【背景技術】
【０００２】
昨今、スマートフォン等の端末で実行可能なアプリケーションによって、端末、または端末のユーザの電子貨幣（電子マネー）の管理や、電子貨幣による決済等を実現するサービスが普及しつつある。例えば特許文献１には、商品の購買金額の決済を行う技術が開示されている。しかしながら、電子貨幣による決済に関して、例えばユーザインターフェイス（ＵＩ）の面で改善の余地がある。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００２−１７６６７１号公報
【発明の概要】
【０００４】
本発明の第１の態様によると、コード画像による決済を行うための第１情報に基づいて決済に関する処理を実行する端末によって実行されるプログラムは、複数の第１情報を、端末の通信部を介してサーバから受信することと、受信された複数の第１情報を、端末の制御部によって端末の記憶部に記憶する制御を行うことと、第１情報に基づく第１コード画像と、複数の第１情報のうち、決済に利用可能な第１情報が記憶部に記憶されている数に関する情報とを端末の表示領域に表示することと、第１コード画像の表示領域への表示に基づき、決済に関する処理を制御部によって行うこととが端末によって実行される。
本発明の第２の態様によると、コード画像による決済を行うための第１情報に基づいて決済に関する処理を実行する端末の情報処理方法は、複数の第１情報を、端末の通信部を介してサーバから受信することと、受信された複数の第１情報を、端末の制御部によって端末の記憶部に記憶する制御を行うことと、第１情報に基づく第１コード画像と、複数の第１情報のうち、決済に利用可能な第１情報が記憶部に記憶されている数に関する情報とを端末の表示領域に表示することと、第１コード画像の表示領域への表示に基づき、決済に関する処理を制御部によって行うこととが端末によって実行される。
本発明の第３の態様によると、コード画像による決済を行うための第１情報に基づいて決済に関する処理を実行する端末は、複数の第１情報をサーバから受信する通信部と、受信された複数の第１情報を端末の記憶部に記憶する制御を行う制御部と、第１情報に基づく第１コード画像と、複数の第１情報のうち、決済に利用可能な第１情報が記憶部に記憶されている数に関する情報とを表示する表示部とを備え、制御部は、第１コード画像の表示部への表示に基づき、決済に関する処理を行う。
本発明の第４の態様によると、コード画像による決済を行うための第１情報に基づいて決済に関する処理を実行する端末は、プログラムを記憶するメモリからプログラムを読み出し、プログラムに基づく処理を実行するプロセッサーを備え、プロセッサーは、複数の第１情報を、端末の通信部を介してサーバから受信することと、受信された複数の第１情報を、端末の記憶部に記憶することと、第１情報に基づく第１コード画像と、複数の第１情報のうち、決済に利用可能な第１情報が記憶部に記憶されている数に関する情報とを端末の表示領域に表示することと、第１コード画像の表示領域への表示に基づき、決済に関する処理を実行することとを実行する。
【図面の簡単な説明】
【０００５】
【図１】実施形態の一態様における通信システムの構成の一例を示す図。
【図２】実施形態の一態様における店舗ＰＯＳシステムのシステム構成の一例を示す図。
【図３−１】実施形態の一態様における各種の装置が実行する処理の流れの一例を示すフローチャート。
【図３−２】実施形態の一態様における端末の表示画面の一例を示す図。
【図３−３】実施形態の一態様における端末の表示画面の一例を示す図。
【図３−４】実施形態の一態様における各種の装置が実行する処理の流れの一例を示すフローチャート。
【図４−１】第１実施例に係るサーバの制御部により実現される機能の一例を示す図。
【図４−２】第１実施例に係るサーバの記憶部に記憶される情報の一例を示す図。
【図４−３】第１実施例に係るユーザ登録データの一例を示す図。
【図４−４】第１実施例に係る店舗登録データの一例を示す図。
【図４−５】第１実施例に係る決済管理データベースの一例を示す図。
【図４−６】第１実施例に係るコード管理データベースの一例を示す図。
【図４−７】第１実施例に係る端末の制御部により実現される機能の一例を示す図。
【図４−８】第１実施例に係る端末の記憶部に記憶される情報の一例を示す図。
【図４−９】第１実施例に係る第１の端末表示用コードストックデータの一例を示す図。
【図４−１０】第１実施例に係る第２の端末表示用コードストックデータの一例を示す図。
【図４−１１】第１実施例に係る決済用データの一例を示す図。
【図４−１２】第１実施例に係る端末の表示画面の一例を示す図。
【図４−１３】第１実施例に係る端末の表示画面の一例を示す図。
【図４−１４】第１実施例に係る第１のコード表示処理の流れの一例を示すフローチャート。
【図４−１５】第１変形例に係る端末の表示画面の一例を示す図。
【図５−１】第２実施例に係る端末の表示画面の一例を示す図。
【図５−２】第２実施例に係る端末の表示画面の一例を示す図。
【図５−３】第２実施例に係る端末の表示画面の一例を示す図。
【図５−４】第２実施例に係る端末の表示画面の一例を示す図。
【図５−５】第２実施例に係る端末の表示画面の一例を示す図。
【図５−６】第２実施例に係る端末の表示画面の一例を示す図。
【図５−７】第２実施例に係る第２のコード表示処理の流れの一例を示すフローチャート。
【図５−８】第２変形例に係る第３のコード表示処理の流れの一例を示すフローチャート。
【図５−９】第２変形例に係る各種の装置が実行する処理の流れの一例を示すフローチャート。
【図５−１０】第２変形例に係る端末の表示画面の一例を示す図。
【図６−１】第３実施例に係る端末の表示画面の一例を示す図。
【図６−２】第３実施例に係る端末の表示画面の一例を示す図。
【図６−３】第３実施例に係る端末の表示画面の一例を示す図。
【図６−４】第３実施例に係る端末の表示画面の一例を示す図。
【図７−１】第４実施例に係る第１の端末側コード補充処理及び第１のサーバ側コード補充処理の流れの一例を示すフローチャート。
【図７−２】第４実施例に係る端末の表示画面の一例を示す図。
【図７−３】第４実施例に係る端末の表示画面の一例を示す図。
【図７−４】第４実施例に係る端末の表示画面の一例を示す図。
【図７−５】第４実施例に係る端末の表示画面の一例を示す図。
【図７−６】第４実施例に係る端末の表示画面の一例を示す図。
【図７−７】第４実施例に係る端末の表示画面の一例を示す図。
【図７−８】第４実施例に係る端末の表示画面の一例を示す図。
【図７−９】第４実施例に係る端末の表示画面の一例を示す図。
【図７−１０】第４実施例に係る端末の表示画面の一例を示す図。
【図８−１】第５実施例に係る第２の端末側コード補充処理の流れの一例を示すフローチャート。
【図８−２】第５実施例に係る第２の端末側コード補充処理の流れの一例を示すフローチャート。
【図８−３】第５実施例に係る端末の表示画面の一例を示す図。
【図８−４】第５実施例に係る端末の表示画面の一例を示す図。
【図８−５】第５実施例に係る端末の表示画面の一例を示す図。
【図８−６】第５実施例に係る端末の表示画面の一例を示す図。
【図８−７】第５実施例に係る端末の表示画面の一例を示す図。
【発明を実施するための形態】
【０００６】
＜法的事項の遵守＞
本明細書に記載の開示は、通信の秘密など、本開示の実施に必要な実施国の法的事項遵守を前提とすることに留意されたい。
【０００７】
本開示に係る情報処理方法等を実施するための実施形態について、図面を参照して説明する。
【０００８】
［システム構成］
図１は、本開示の一実施形態に係る通信システム１の構成の一例を示す図である。
図１に開示されるように、通信システム１では、ネットワーク３０を介してサーバ１０と、端末２０（端末２０Ａ，端末２０Ｂ，端末２０Ｃ，・・・）と、店舗ＰＯＳシステム４０とが接続される。
【０００９】
サーバ１０は、ネットワーク３０を介してユーザが所有する端末２０に、端末２０間でのメッセージ等を含むコンテンツの送受信を実現するサービスを提供する。また、サーバ１０は、端末２０と通信を行って電子決済（限定ではなく、決済の一例）を実現するサービス（以下、「決済サービス」と称する。）を提供する。なお、ネットワーク３０に接続される端末２０の数は限定されない。
【００１０】
ネットワーク３０は、１以上の端末２０と、１以上のサーバ１０と、１以上の店舗ＰＯＳシステム４０とを接続する役割を担う。すなわち、ネットワーク３０は、上記の各種の装置が接続した後、データを送受信することができるように接続経路を提供する通信網を意味する。
【００１１】
ネットワーク３０のうちの１つまたは複数の部分は、有線ネットワークや無線ネットワークであってもよいし、そうでなくてもよい。ネットワーク３０は、限定ではなく例として、アドホック・ネットワーク（ad hoc network）、イントラネット、エクストラネット、仮想プライベート・ネットワーク（virtual private network：ＶＰＮ）、ローカル・エリア・ネットワーク（local area network：ＬＡＮ）、ワイヤレスＬＡＮ（wireless LAN：ＷＬＡＮ）、広域ネットワーク（wide area network：ＷＡＮ）、ワイヤレスＷＡＮ（wireless WAN：ＷＷＡＮ）、大都市圏ネットワーク（metropolitan area network：ＭＡＮ）、インターネットの一部、公衆交換電話網（Public Switched Telephone Network：ＰＳＴＮ）の一部、携帯電話網、ＩＳＤＮ（integrated service digital networks）、無線ＬＡＮ、ＬＴＥ（long term evolution）、ＣＤＭＡ（code division multiple access）、ブルートゥース（Bluetooth（登録商標））、衛星通信など、または、これらの２つ以上の組合せを含むことができる。ネットワーク３０は、１つまたは複数のネットワーク３０を含むことができる。
【００１２】
端末２０（端末２０Ａ，端末２０Ｂ，端末２０Ｃ，・・・）（限定ではなく、端末、情報処理装置の一例）は、各実施形態において記載する機能を実現できる情報処理端末であればどのような端末であってもよい。端末２０は、限定ではなく例として、スマートフォン、携帯電話（フィーチャーフォン）、コンピュータ（限定ではなく例として、デスクトップ、ラップトップ、タブレットなど）、メディアコンピュータプラットホーム（限定ではなく例として、ケーブル、衛星セットトップボックス、デジタルビデオレコーダ）、ハンドヘルドコンピュータデバイス（限定ではなく例として、ＰＤＡ・（personal digital assistant）、電子メールクライアントなど）、ウェアラブル端末（メガネ型デバイス、時計型デバイスなど）、または他種のコンピュータ、またはコミュニケーションプラットホームを含む。また、端末２０は情報処理端末と表現されてもよい。
【００１３】
端末２０Ａ、端末２０Ｂおよび端末２０Ｃの構成は基本的には同一であるため、以下の説明においては、端末２０について説明する。また、必要に応じて、ユーザＸが利用する端末を端末２０Ｘと表現し、ユーザＸまたは端末２０Ｘに対応付けられた、所定のサービスにおけるユーザ情報をユーザ情報Ｘと表現する。なお、ユーザ情報とは、所定のサービスにおいてユーザが利用するアカウントに対応付けられたユーザの情報である。ユーザ情報は、限定ではなく例として、ユーザにより入力される、または、所定のサービスにより付与される、ユーザの名前、ユーザのアイコン画像、ユーザの年齢、ユーザの性別、ユーザの住所、ユーザの趣味趣向、ユーザの識別子などのユーザに対応付けられた情報を含み、これらのいずれか一つまたは、組み合わせであってもよいし、そうでなくてもよい。
【００１４】
サーバ１０（限定ではなく、サーバ、情報処理装置、情報管理装置の一例）は、端末２０に対して、所定のサービスを提供する機能を備える。サーバ１０は、各実施形態において記載する機能を実現できる情報処理装置であればどのような装置であってもよい。サーバ１０は、限定ではなく例として、サーバ装置、コンピュータ（限定ではなく例として、デスクトップ、ラップトップ、タブレットなど）、メディアコンピュータプラットホーム（限定ではなく例として、ケーブル、衛星セットトップボックス、デジタルビデオレコーダ）、ハンドヘルドコンピュータデバイス（限定ではなく例として、ＰＤＡ、電子メールクライアントなど）、あるいは他種のコンピュータ、またはコミュニケーションプラットホームを含む。また、サーバ１０は情報処理装置と表現されてもよい。サーバ１０と端末２０とを区別する必要がない場合は、サーバ１０と端末２０とは、それぞれ情報処理装置と表現されてもよいし、されなくてもよい。
【００１５】
以下説明する実施形態では、サーバ１０は、決済アプリケーションによる決済サービスを提供する機能を有していることとして説明する。
【００１６】
店舗ＰＯＳシステム４０は、サーバ１０を運用する事業者と提携している店舗に導入されて使用されるＰＯＳシステムである。
この店舗ＰＯＳシステム４０には、限定ではなく例として、店舗コードリーダ装置５０と、コードレジ６０と、店舗サーバ７０とが含まれる。
【００１７】
［各装置のハードウェア（ＨＷ）構成］
通信システム１に含まれる各装置のＨＷ構成について説明する。
【００１８】
（１）端末のＨＷ構成
図１には、端末２０のＨＷ構成の一例を示している。
端末２０は、制御部２１（ＣＰＵ：central processing unit（中央処理装置））、記憶部２８、通信Ｉ／Ｆ２２（インタフェース）、入出力部２３、表示部２４、マイク２５、スピーカ２６、カメラ２７、時計部２９Ａ、位置算出用情報検出部２９Ｂを備える。端末２０のＨＷの各構成要素は、限定ではなく例として、バスＢを介して相互に接続される。なお、端末２０のＨＷ構成として、すべての構成要素を含むことは必須ではない。限定ではなく例として、端末２０は、マイク２５、カメラ２７等、個々の構成要素、または複数の構成要素を取り外すような構成であってもよいし、そうでなくてもよい。
【００１９】
通信Ｉ／Ｆ２２は、ネットワーク３０を介して各種データの送受信を行う。通信は、有線、無線のいずれで実行されてもよく、互いの通信が実行できるのであれば、どのような通信プロトコルを用いてもよい。通信Ｉ／Ｆ２２は、ネットワーク３０を介して、サーバ１０等の各種装置との通信を実行する機能を有する。通信Ｉ／Ｆ２２は、各種データを制御部２１からの指示に従って、サーバ１０等の各種装置に送信する。また、通信Ｉ／Ｆ２２は、サーバ１０等の各種装置から送信された各種データを受信し、制御部２１に伝達する。また、通信Ｉ／Ｆ２２を単に通信部と表現する場合もある。また、通信Ｉ／Ｆ２２が物理的に構造化された回路で構成される場合には、通信回路と表現する場合もある。
【００２０】
入出力部２３は、端末２０に対する各種操作を入力する装置、および、端末２０で処理された処理結果を出力する装置を含む。入出力部２３は、入力部と出力部が一体化していてもよいし、入力部と出力部に分離していてもよいし、そうでなくてもよい。
【００２１】
入力部は、ユーザからの入力を受け付けて、入力に係る情報を制御部２１に伝達できる全ての種類の装置のいずれかまたはその組み合わせにより実現される。入力部は、限定ではなく例として、タッチパネル、タッチディスプレイ、キーボード等のハードウェアキーや、マウス等のポインティングデバイス、カメラ（動画像を介した操作入力）、マイク（音声による操作入力）を含む。
【００２２】
出力部は、制御部２１で処理された処理結果を出力することができる全ての種類の装置のいずれかまたはその組み合わせにより実現される。出力部は、限定ではなく例として、 タッチパネル、タッチディスプレイ、スピーカ（音声出力）、レンズ（限定ではなく例として３Ｄ（three dimensions）出力や、ホログラム出力）、プリンターなどを含む。
【００２３】
表示部２４は、フレームバッファに書き込まれた表示データに従って、表示することができる全ての種類の装置のいずれかまたはその組み合わせにより実現される。表示部２４は、限定ではなく例として、タッチパネル、タッチディスプレイ、モニタ（限定ではなく例として、液晶ディスプレイやOELD（organic electroluminescence display））、ヘッドマウントディスプレイ（ＨＤＭ：Head Mounted Display）、プロジェクションマッピング、ホログラム、空気中など（真空であってもよいし、そうでなくてもよい）に画像やテキスト情報等を表示可能な装置を含む。なお、これらの表示部２４は、３Ｄで表示データを表示可能であってもよいし、そうでなくてもよい。
【００２４】
入出力部２３がタッチパネルの場合、入出力部２３と表示部２４とは、略同一の大きさおよび形状で対向して配置されていてもよい。
【００２５】
時計部２９Ａは、端末２０の内蔵時計であり、時刻情報（計時情報）を出力する。時計部２９Ａは、限定ではなく例として、水晶発振器を利用したクロック等を有して構成される。時計部２９Ａは、限定ではなく例として、計時部や時刻情報検出部と表現することもできる。
【００２６】
なお、時計部２９Ａは、ＮＩＴＺ（Network Identity and Time Zone）規格等を適用したクロックを有していてもよいし、有していなくてもよい。
【００２７】
位置算出用情報検出部２９Ｂは、制御部２１が自己の端末２０の位置を算出（測定）するために必要な情報（以下、「位置算出用情報」と称する。）を検出（計測）する機能部である。位置算出用情報検出部２９Ｂは、限定ではなく例として、位置算出用センサ部と表現することもできる。
なお、位置算出用情報検出部２９Ｂは必須ではなく、端末２０の構成要件から除外してもよい。
【００２８】
位置算出用情報検出部２９Ｂは、限定ではなく例として、ＧＰＳ（Global Positioning System）等の衛星測位システムを利用して端末２０の位置を算出するためのセンサやユニットである衛星測位センサ（衛星測位ユニット）や、慣性航法システムを利用して端末２０の位置を算出するためのセンサやユニットである慣性計測センサ（慣性計測ユニット（ＩＭＵ（Inertial Measurement Unit）））等を含む。
【００２９】
衛星測位ユニットは、限定ではなく例として、不図示のアンテナで受信される測位用衛星から発信されている測位用衛星信号を含むＲＦ（Radio Frequency）信号をデジタル信号に変換するＲＦ受信回路や、ＲＦ受信回路から出力されるデジタル信号に対して相関演算処理等を行って測位用衛星信号を捕捉し、測位用衛星信号から取り出した衛星軌道データや時刻データ等の情報を、位置算出用情報として出力するベースバンド処理回路等を有する。
【００３０】
慣性計測ユニットは、慣性航法演算によって端末２０の位置を算出するために必要な情報を検出するセンサである慣性センサを有する。慣性センサには、限定ではなく例として、３軸の加速度センサや３軸のジャイロセンサが含まれ、加速度センサによって検出された加速度と、ジャイロセンサによって検出された角速度とを、位置算出用情報として出力する。
【００３１】
制御部２１は、プログラム内に含まれたコードまたは命令によって実現する機能を実行するために物理的に構造化された回路を有し、限定ではなく例として、ハードウェアに内蔵されたデータ処理装置により実現される。そのため、制御部２１は、制御回路と表現されてもよいし、されなくてもよい。
【００３２】
制御部２１は、限定ではなく例として、中央処理装置（ＣＰＵ）、マイクロプロセッサ（microprocessor）、プロセッサコア（processor core）、マルチプロセッサ（multiprocessor）、ＡＳＩＣ（application-specific integrated circuit）、ＦＰＧＡ（field programmable gate array）を含む。
【００３３】
記憶部２８は、端末２０が動作するうえで必要とする各種プログラムや各種データを記憶する機能を有する。記憶部２８は、限定ではなく例として、ＨＤＤ（hard disk drive）、ＳＳＤ（solid state drive）、フラッシュメモリ、ＲＡＭ（random access memory）、ＲＯＭ（read only memory）など各種の記憶媒体を含む。また、記憶部２８は、メモリ(memory)と表現されてもよいし、されなくてもよい。
【００３４】
端末２０は、プログラムＰを記憶部２８に記憶し、このプログラムＰを実行することで、制御部２１が、制御部２１に含まれる各部としての処理を実行する。つまり、記憶部２８に記憶されるプログラムＰは、端末２０に、制御部２１が実行する各機能を実現させる。また、このプログラムＰは、プログラムモジュールと表現されてもよいし、されなくてもよい。
【００３５】
マイク２５は、音声データの入力に利用される。スピーカ２６は、音声データの出力に利用される。カメラ２７は、動画像データの取得に利用される。
【００３６】
（２）サーバのＨＷ構成
図１には、サーバ１０のＨＷ構成の一例を示している。
サーバ１０は、制御部１１（ＣＰＵ）、記憶部１５、通信Ｉ／Ｆ１４（インタフェース）、入出力部１２、ディスプレイ１３、時計部１９を備える。サーバ１０のＨＷの各構成要素は、限定ではなく例として、バスＢを介して相互に接続される。なお、サーバ１０のＨＷは、サーバ１０のＨＷの構成として、全ての構成要素を含むことは必須ではない。限定ではなく例として、サーバ１０のＨＷは、ディスプレイ１３を取り外すような構成であってもよいし、そうでなくてもよい。
【００３７】
制御部１１は、プログラム内に含まれたコードまたは命令によって実現する機能を実行するために物理的に構造化された回路を有し、限定ではなく例として、ハードウェアに内蔵されたデータ処理装置により実現される。
【００３８】
制御部１１は、代表的には中央処理装置（ＣＰＵ）、であり、その他にマイクロプロセッサ、プロセッサコア、マルチプロセッサ、ＡＳＩＣ、ＦＰＧＡであってもよいし、そうでなくてもよい。本開示において、制御部１１は、これらに限定されない。
【００３９】
記憶部１５は、サーバ１０が動作するうえで必要とする各種プログラムや各種データを記憶する機能を有する。記憶部１５は、ＨＤＤ、ＳＳＤ、フラッシュメモリなど各種の記憶媒体により実現される。ただし、本開示において、記憶部１５は、これらに限定されない。また、記憶部１５は、メモリ(memory)と表現されてもよいし、されなくてもよい。
【００４０】
通信Ｉ／Ｆ１４は、ネットワーク３０を介して各種データの送受信を行う。通信は、有線、無線のいずれで実行されてもよく、互いの通信が実行できるのであれば、どのような通信プロトコルを用いてもよい。通信Ｉ／Ｆ１４は、ネットワーク３０を介して、端末２０等の各種装置との通信を実行する機能を有する。通信Ｉ／Ｆ１４は、各種データを制御部１１からの指示に従って、端末２０等の各種装置に送信する。また、通信Ｉ／Ｆ１４は、端末２０等の各種装置から送信された各種データを受信し、制御部１１に伝達する。また、通信Ｉ／Ｆ１４を単に通信部と表現する場合もある。また、通信Ｉ／Ｆ１４が物理的に構造化された回路で構成される場合には、通信回路と表現する場合もある。
【００４１】
入出力部１２は、サーバ１０に対する各種操作を入力する装置により実現される。入出力部１２は、ユーザからの入力を受け付けて、入力に係る情報を制御部１１に伝達できる全ての種類の装置のいずれかまたはその組み合わせにより実現される。入出力部１２は、代表的にはキーボード等に代表されるハードウェアキーや、マウス等のポインティングデバイスで実現される。なお、入出力部１２、限定ではなく例として、タッチパネルやカメラ（動画像を介した操作入力）、マイク（音声による操作入力）を含んでいてもよいし、そうでなくてもよい。ただし、本開示において、入出力部１２は、これらに限定されない。
【００４２】
ディスプレイ１３は、代表的にはモニタ（限定ではなく例として、液晶ディスプレイやＯＥＬＤ（organic electroluminescence display））で実現される。なお、ディスプレイ１３は、ヘッドマウントディスプレイ（ＨＤＭ）などであってもよいし、そうでなくてもよい。なお、これらのディスプレイ１３は、３Ｄで表示データを表示可能であってもよいし、そうでなくてもよい。本開示において、ディスプレイ１３は、これらに限定されない。
【００４３】
時計部１９は、サーバ１０の内蔵時計であり、時刻情報（計時情報）を出力する。時計部１９は、限定ではなく例として、ハードウェアクロックとしてのＲＴＣ（Real Time Clock）やシステムクロック等を有して構成される。時計部１９は、限定ではなく例として、計時部や時刻情報検出部と表現することもできる。
【００４４】
（３）店舗ＰＯＳのシステム構成
図２には、店舗ＰＯＳシステム４０のシステム構成の一例を示している。
店舗ＰＯＳシステム４０は、サーバ１０を運用する事業者と提携している店舗に導入されて使用されるＰＯＳシステムであり、限定ではなく例として、店舗コードリーダ装置５０と、コードレジ６０と、店舗サーバ７０とを含む。
【００４５】
店舗コードリーダ装置５０は、ＰＯＳ通信Ｉ／Ｆ５７（限定ではなく例として、店舗内の有線通信Ｉ／Ｆや無線通信Ｉ／Ｆ）によってコードレジ６０や店舗サーバ７０と通信接続され、コードレジ６０での会計の際に、端末２０の表示部２４に表示される端末表示用コード画像を読み取る。そして、端末表示用コード画像を読み取ったことに基づいて、決済要求情報を通信Ｉ／Ｆ５４によってサーバ１０に送信し、サーバ１０で決済が行われた後、決済結果に関する情報（例えば、後述する店舗用決済完了通知）を通信Ｉ／Ｆ５４によってサーバ１０から受信する。
【００４６】
店舗コードリーダ装置５０は、限定ではなく例として、制御部５１と、入出力部５２と、表示部５３と、通信Ｉ／Ｆ５４と、記憶部５５と、音出力部５６と、ＰＯＳ通信Ｉ／Ｆ５７と、コードリーダ５８、時計部５９とを有する。
【００４７】
コードリーダ５８は、二次元コードを読み取るためのコードリーダであり、本明細書では、端末２０の表示部２４に表示され、端末２０のユーザによって提示される二次元コード（例えばＱＲコード（登録商標））としての端末表示用コードを読み取るための二次元コードリーダ（例えばＱＲコードリーダ）を含む。
【００４８】
コードレジ６０は、限定ではなく例として、ＰＯＳ通信Ｉ／Ｆ５７によって店舗コードリーダ装置５０や店舗サーバ７０と通信接続され、店舗コードリーダ装置５０がサーバ１０から受信した店舗用決済完了通知に基づいて、販売した商品の総額や、端末２０のユーザの電子貨幣の残高等の情報を印字したレシートを発行する。また、限定ではなく例として、コードレジ６０と一体として、またはコードレジ６０と別体として設けられ、客側に表示面が向けられたディスプレイを構成するようにしてもよい。コードレジ６０は、決済アプリケーションに対応可能に構成されたレジであり、決済アプリケーション対応の据置端末と言うこともできる。
【００４９】
店舗サーバ７０は、限定ではなく例として、自店舗に関する店舗情報や、自店舗で販売される商品に関する情報や自店舗で提供されるサービスに関する情報、自店舗での商品の販売やサービスの提供に伴う売上げに関する情報等の各種の情報を管理する。店舗サーバ７０は、ＰＯＳ通信Ｉ／Ｆ５７によって店舗コードリーダ装置５０やコードレジ６０と通信可能に構成されているとともに、ネットワーク３０を介してサーバ１０等の外部装置と通信可能に構成されている。
【００５０】
なお、店舗サーバ７０は、必ずしも店舗コードリーダ装置５０と直接的に通信可能に構成されている必要はなく、コードレジ６０を介して店舗コードリーダ装置５０と通信可能に構成されていてもよい。例えば、店舗コードリーダ装置５０がサーバ１０から受信した店舗用決済完了通知はコードレジ６０に送られ、その後、コードレジ６０から店舗サーバ７０に送られるようにするなどすることもできる。
【００５１】
（４）その他
サーバ１０は、プログラムＰを記憶部１５に記憶し、このプログラムＰを実行することで、制御部１１が、制御部１１に含まれる各部としての処理を実行する。つまり、記憶部１５に記憶されるプログラムＰは、サーバ１０に、制御部１１が実行する各機能を実現させる。このプログラムＰは、プログラムモジュールと表現されてもよいし、されなくてもよい。
他の装置についても同様である。
【００５２】
本開示の各実施形態においては、端末２０および／またはサーバ１０のＣＰＵがプログラムＰを実行することにより、実現するものとして説明する。
他の装置についても同様である。
【００５３】
なお、端末２０の制御部２１、および／または、サーバ１０の制御部１１は、制御回路を有するＣＰＵだけでなく、集積回路（ＩＣ（Integrated Circuit）チップ、ＬＳＩ（Large Scale Integration））等に形成された論理回路（ハードウェア）や専用回路によって各処理を実現してもよいし、そうでなくてもよい。また、これらの回路は、１または複数の集積回路により実現されてよく、各実施形態に示す複数の処理を１つの集積回路により実現されることとしてもよいし、そうでなくてもよい。また、ＬＳＩは、集積度の違いにより、ＶＬＳＩ、スーパーＬＳＩ、ウルトラＬＳＩなどと呼称されることもある。そのため、制御部２１は、制御回路と表現されてもよいし、されなくてもよい。
他の装置についても同様である。
【００５４】
また、本開示の各実施形態のプログラムＰ(限定ではなく例として、ソフトウェアプログラム、コンピュータプログラム、またはプログラムモジュール)は、コンピュータに読み取り可能な記憶媒体に記憶された状態で提供されてもよいし、されなくてもよい。 記憶媒体は、「一時的でない有形の媒体」に、プログラムＰを記憶可能である。また、プログラムＰは、本開示の各実施形態の機能の一部を実現するためのものであってもよいし、そうでなくてもよい。さらに、本開示の各実施形態の機能を記憶媒体にすでに記録されているプログラムＰとの組み合わせで実現できるもの、いわゆる差分ファイル（差分プログラム）であってもよいし、そうでなくてもよい。
【００５５】
記憶媒体は、１つまたは複数の半導体ベースの、または他の集積回路（ＩＣ）（限定ではなく例として、フィールド・プログラマブル・ゲート・アレイ（ＦＰＧＡ）または特定用途向けＩＣ（ＡＳＩＣ）など）、ハード・ディスク・ドライブ（ＨＤＤ）、ハイブリッド・ハード・ドライブ（ＨＨＤ）、光ディスク、光ディスクドライブ（ＯＤＤ）、光磁気ディスク、光磁気ドライブ、フロッピィ・ディスケット、フロッピィ・ディスク・ドライブ（ＦＤＤ）、磁気テープ、固体ドライブ（ＳＳＤ）、ＲＡＭドライブ、セキュア・デジタル・カード、またはドライブ、任意の他の適切な記憶媒体、またはこれらの２つ以上の適切な組合せを含むことができる。記憶媒体は、適切な場合、揮発性、不揮発性、または揮発性と不揮発性の組合せでよい。なお、記憶媒体はこれらの例に限られず、プログラムＰを記憶可能であれば、どのようなデバイスまたは媒体であってもよい。また、記憶媒体をメモリ（memory）と表現されてもよいし、されなくてもよい。
【００５６】
サーバ１０および／または端末２０は、記憶媒体に記憶されたプログラムＰを読み出し、読み出したプログラムＰを実行することによって、各実施形態に示す複数の機能部の機能を実現することができる。
他の装置についても同様である。
【００５７】
また、本開示のプログラムＰは、プログラムを伝送可能な任意の伝送媒体(通信ネットワークや放送波等)を介して、サーバ１０および／または端末２０に提供されてもよいし、されなくてもよい。サーバ１０および／または端末２０は、限定ではなく例として、インターネット等を介してダウンロードしたプログラムＰを実行することにより、各実施形態に示す複数の機能部の機能を実現する。
他の装置についても同様である。
【００５８】
また、本開示の各実施形態は、プログラムＰが電子的な伝送によって具現化されたデータ信号の形態でも実現され得る。
サーバ１０および／または端末２０における処理の少なくとも一部は、１以上のコンピュータにより構成されるクラウドコンピューティングにより実現されていてもよいし、そうでなくてもよい。
端末２０における処理の少なくとも一部を、サーバ１０により行う構成としてもよいし、そうでなくてもよい。この場合、端末２０の制御部２１の各機能部の処理のうち少なくとも一部の処理を、サーバ１０で行う構成としてもよいし、そうでなくてもよい。
サーバ１０における処理の少なくとも一部を、端末２０により行う構成としてもよいし、そうでなくてもよい。この場合、サーバ１０の制御部１１の各機能部の処理のうち少なくとも一部の処理を、端末２０で行う構成としてもよいし、そうでなくてもよい。
明示的な言及のない限り、本開示の実施形態における判定の構成は必須でなく、判定条件を満たした場合に所定の処理が動作されたり、判定条件を満たさない場合に所定の処理がされたりしてもよいし、そうでなくてもよい。
【００５９】
なお、本開示のプログラムは、限定ではなく例として、ActionScript、JavaScript(登録商標)などのスクリプト言語、Objective-C、Java(登録商標)などのコンパイラ言語、HTML5などのマークアップ言語などを用いて実装される。
【００６０】
また、本明細書では、適宜「通信Ｉ／Ｆによって」という表現を使用する。これは、装置が、限定ではなく例として、制御部（プロセッサー等）の制御に基づいて、通信Ｉ／Ｆを介して（通信部を介して）、各種の情報やデータを送受信することを示す。
【００６１】
また、本明細書では、「期限」の用語は、一定の期間を示すものとして説明する。ただし、「期限」の用語に代えて、「期間」の用語を用いるようにしてもよい。
また、「期限」の用語を、期間が終了する時刻や日時（一定の時刻や一定の日時）の意味で用いるようにしてもよい。
【００６２】
＜第１実施例＞
近年、ネットワークサービスに関連するアプリケーション（アプリケーションソフトウェア）として、電子貨幣による電子決済用のアプリケーション（決済アプリケーション）、電子貨幣の送金用のアプリケーション（送金アプリケーション）といったアプリケーションや、これらのアプリケーションの一部の機能または全部の機能を集約した決済アプリケーションが普及しつつあり、端末２０のユーザが、これらのアプリケーションを用いて、電子貨幣に関する各種のサービスを受けることが可能になってきている。
【００６３】
以下説明する実施例は、限定ではなく例として、端末２０のユーザが、端末２０に記憶されて実行される決済アプリケーションを利用して、決済を行う実施例である。具体的には、オンライン状態と、オフライン状態とにおいて、共通に決済を行うための手法を提案する。
【００６４】
以下では、決済アプリケーションによる決済サービスを提供する事業者のことを「決済サービスの事業者」と称する。なお、決済サービスの事業者は、決済アプリケーションを提供する事業者や、サーバ１０の事業者と表現してもよいし、しなくてもよい。
【００６５】
また、以下では、決済サービスの事業者によって、サーバ１０が運用・管理されることとして説明する。また、以下では、決済アプリケーションの名称を、適宜「Ｐａｙｍｅｎｔ  Ａｐｐ」と称して図示・説明する。
【００６６】
また、決済アプリケーションは、いわゆるメッセージングサービス（ＭＳ：Messaging Service）の機能を有さない単体のアプリケーションとしてサーバ１０によって提供されるようにしてもよいし、ＭＳの機能を有する複合的なアプリケーションとしてサーバ１０によって提供されるようにしてもよい。また、メッセージングサービスには、端末２０間での簡単なメッセージ等のコンテンツの送受信を可能とするインスタントメッセージングサービス（ＩＭＳ：Instant Messaging Service）を含めてもよいし、含めなくてもよい。
【００６７】
また、決済アプリケーションは、いわゆるソーシャルネットワーキングサービス（ＳＮＳ：Social Networking Service）の機能を有さない単体のアプリケーションとしてサーバ１０によって提供されるようにしてもよいし、ＳＮＳの機能を有する複合的なアプリケーションとしてサーバ１０によって提供されるようにしてもよい。
【００６８】
なお、ＭＳ（ＩＭＳを含む。）は、ＳＮＳの１つの形態（一形態）と考えることもできる。このため、ＭＳとＳＮＳとは区別してもよいし、区別しなくてもよい。
【００６９】
また、決済サービスの事業者と提携している店舗を「加盟店（加盟店舗）」と称し、図１では「加盟店Ｓ１」、「加盟店Ｓ２」、・・・、のように示している。
【００７０】
また、「電子貨幣」とは、物理的貨幣と区別される電子的な貨幣であって、決済アプリケーションにおいて管理される端末２０または端末２０のユーザが所有する電子的な貨幣を意味し、「決済」とは、この電子貨幣を利用した電子決済を意味する。
【００７１】
なお、電子貨幣は、「電子マネー」や「デジタル通貨（デジタル貨幣）」と表現してもよいし、そのようにしなくてもよい。
また、「電子貨幣（電子マネー）」や「デジタル通貨（デジタル貨幣）」として、法定通貨を用いてもよいし、仮想通貨を用いてもよい。
また、「電子貨幣（電子マネー）」や「デジタル通貨（デジタル貨幣）」には、暗号通貨（暗号資産）を含めてもよい。
また、仮想通貨には、クーポンなどの物的貨幣を含めてもよい。
【００７２】
＜決済方法＞
（１）オンライン決済
まず、一態様として、オンライン決済の手法についてフローチャートを参照して説明する。
【００７３】
以下では、「オンライン」とは、端末２０がサーバ１０と通信可能であることを示し、「オンライン状態」とは、このオンラインの状態を示すものとする。また、「オンライン決済」とは、オンライン状態でサーバ１０によって決済が行われることを示すものとする。
【００７４】
なお、以下では、端末２０とサーバ１０との通信は、限定ではなく例として、通信会社（通信キャリア）が設置する基地局等を介在して実現される、無線ＬＡＮ通信とは異なる周波数帯を用いた第１通信方式によって実現されることとする。第１通信方式には、限定ではなく例として、パケット通信（いわゆる端末２０におけるモバイルデータ通信）が含まれる。
【００７５】
また、通信方式として、第１通信方式とは異なる第２通信方式を用いてもよいし、そのようにしなくてもよい。第２通信方式には、限定ではなく例として、無線ＬＡＮ（例えばＷｉＦｉ（登録商標））が含まれる。
【００７６】
また、第１通信方式と第２通信方式とのうちの少なくともいずれか一方の通信方式により端末２０とサーバ１０とが通信可能であることを「オンライン状態」と定義してもよいし、しなくてもよい。
【００７７】
図３−１は、この場合における各装置が実行する処理の流れの一例を示すフローチャートである。左側から順に、端末２０の制御部２１が実行する処理、店舗コードリーダ装置５０の制御部５１が実行する処理、サーバ１０の制御部１１が実行する処理の一例をそれぞれ示している。
【００７８】
各処理における各ステップをアルファベットの大文字と数字の組み合わせで示し、本明細書では「ステップ」の用語は省略する。
また、以下説明するフローチャートは、あくまでも本実施例における処理を例示するものであり、以下説明するフローチャートにおいて、一部のステップを実行しなくてもよいし、追加のステップを挿入してもよい。
これらは、本明細書における他のフローチャートについても同様である。
【００７９】
まず、制御部２１は、端末表示用コードの生成を依頼するためのコード生成依頼情報を、通信Ｉ／Ｆ２２によって（通信Ｉ／Ｆ２２を介して）サーバ１０に送信する（Ａ１１０）。
【００８０】
以下では、限定ではなく例として、「コード情報」とは、符号化（エンコード）等によってコード画像に格納される情報やコード画像に格納されている情報（以下、元の情報という意味で「元情報」と称する。）と、元情報が格納された「コード画像」とを含む概念として説明する。つまり、「コード情報」には、「元情報」と「コード画像」とが含まれる。
「元情報」は、「エンコード情報」や「格納情報」等のように表現してもよいし、そのように表現しなくてもよい。
【００８１】
また、以下では、限定ではなく例として、「コード」といった場合、「コード情報」と実質的に同じ意味合いであるものとする。
【００８２】
ただし、これらの定義はあくまでも一例に過ぎず、これらに限定されるものではない。
例えば、「コード情報」の用語を「元情報」の意味で用いるようにしてもよいし、そのようにしなくてもよい。
また、例えば、「コード」の用語を「コード画像」の意味で用いるようにしてもよいし、そのようにしなくてもよい。
【００８３】
本実施例では、上記の元情報の一例として、サーバ１０によってコード生成依頼情報の送信元の端末２０毎、または端末２０のユーザ毎にユニークに生成される番号であって、所定の桁数のランダムな番号である「決済用番号」を例示する。決済用番号は、端末２０、または端末２０のユーザと関連付けられた情報であって、サーバ１０による決済に用いられる情報とも言える。
【００８４】
以下では、コード生成依頼情報に基づきサーバ１０によって生成される決済用のコードを「端末表示用コード」と称し、この端末表示用コードのコード画像を「端末表示用コード画像」と称する。
【００８５】
詳細は後述するが、端末表示用コード画像には、上記の決済用番号が格納される。
端末表示用コード画像や決済用番号は、コード画像による決済を行うための「第１情報」の一例であり、サーバ１０から送信される。
【００８６】
以下では、上記の端末表示用コード画像の生成をサーバ１０に依頼する情報をコード生成依頼情報とする場合を例示する。つまり、本処理では、限定ではなく例として、端末表示用コード画像の生成を端末２０からサーバ１０に依頼することとし、Ａ１１０では、端末表示用コード画像の生成を依頼するコード生成依頼情報をサーバ１０に送信する。
【００８７】
また、本明細書において、「端末表示用コード」とは、決済種別「端末コード表示」での決済に使用されるコードとして説明する。
決済種別「端末コード表示」では、端末２０のユーザが店舗等で支払いを行う際に、端末２０に記憶されている決済アプリケーションを用いて、端末２０で表示される端末表示用コード画像を店舗のコードレジ６０で店員に提示する。そして、この端末表示用コード画像を店舗コードリーダ装置５０等で読み取ってもらうことで決済を実現する。
端末表示用コードは、端末２０のユーザによって店舗等の店員に提示されるコード（コード画像）であるため、「提示用コード」や「ユーザ提示用コード」と表現することもできる。
【００８８】
Ａ１１０で送信するコード生成依頼情報には、限定ではなく例として、端末２０、または端末２０のユーザを識別するための識別情報を含めることができる。例えば、自己の端末２０を識別するための端末識別情報（例えば端末ＩＤ）、自己の端末２０のユーザを識別するためのユーザ識別情報（例えばユーザＩＤ）、決済アプリケーションのアカウント情報（例えばアプリケーションＩＤ）等の情報がこれに含まれる。
【００８９】
通信Ｉ／Ｆ１４によって端末２０からコード生成依頼情報を受信すると（Ｃ１１０）、制御部１１は、端末表示用コード生成処理を行う（Ｃ１２０）。
【００９０】
具体的には、限定ではなく例として、所定の桁数（例えば１０桁〜１２桁程度の桁数）のランダムな数字を発生させる手法（アルゴリズム）を用いて、所定の桁数のランダムな数字を決済用番号として発生させる。そして、限定ではなく例として、少なくとも決済用番号を元情報として含む端末表示用コード画像を生成する。より具体的には、少なくとも決済用番号をエンコード（符号化）し、図形化（画像化）して、二次元コード（例えばＱＲコード）の画像で表される端末表示用コード画像を生成する。また、受信したコード生成依頼情報に含まれる端末２０または端末２０のユーザの識別情報と、発生させた決済用番号とを関連付けて記憶部１５に記憶させる。
【００９１】
次いで、制御部１１は、生成された端末表示用コード（この例では端末表示用コード画像）を、通信Ｉ／Ｆ１４によって端末２０に送信する（Ｃ１３０）。端末２０は、通信Ｉ／Ｆ２２によってサーバ１０から端末表示用コード（この例では端末表示用コード画像）を受信する（Ａ１３０）。この場合、制御部２１は、限定ではなく例として、受信された端末表示用コード画像を表示部２４に表示させる。
【００９２】
その後、表示部２４に表示された端末表示用コード画像が、端末２０のユーザによって店舗の店員等に提示されると、制御部５１は、端末２０の表示部２４に表示された端末表示用コード画像をコードリーダ５８に読み取らせる制御を行う（Ｂ１５０）。
【００９３】
その後、制御部５１は、決済サービスの事業者によって提供（配布）される、決済アプリケーションと関連付けられたアプリケーションインターフェイス（ＡＰＩ）等を用いて通信Ｉ／Ｆ５４によってサーバ１０にアクセスし、少なくとも、読み取った端末表示用コード画像からデコードによって取得した決済用番号と、店舗または店舗コードリーダ装置５０を識別するための識別情報（以下、「店舗識別情報」と称する。）と、決済予定の金額（以下、「決済予定金額」と称する。）とを含む決済要求情報を、通信Ｉ／Ｆ５４によってサーバ１０に送信する（Ｂ１６０）。
【００９４】
通信Ｉ／Ｆ１４によって店舗コードリーダ装置５０から決済要求情報を受信すると（Ｃ１６０）、制御部１１は、決済処理を行う（Ｃ１７０）。具体的には、受信した決済要求情報に含まれる決済用番号が、端末２０または端末２０のユーザの識別情報と関連付けて記憶部１５に記憶されているか否かを判定する。そして、記憶されている場合は「決済可能」と判定し、その決済用番号と関連付けて記憶されている識別情報から識別される端末２０または端末２０のユーザの電子貨幣の残高（決済アプリケーションのアプリケーションＩＤに関連付けられた電子貨幣の残高）（以下、単に「残高」と称する。）から決済予定金額を減算して決済する。
【００９５】
その後、制御部１１は、店舗用の決済完了通知（以下、「店舗用決済完了通知」と称する。）を、通信Ｉ／Ｆ１４によって店舗コードリーダ装置５０に送信する（Ｃ１８０）。店舗用決済完了通知には、限定ではなく例として、決済が完了（成功）した旨と、決済した日時（決済日時）と、決済した金額（決済金額）等の店舗用決済情報とが含まれる。
【００９６】
また、制御部１１は、端末用の決済完了通知（以下、「端末用決済完了通知」と称する。）を、通信Ｉ／Ｆ１４によって端末２０に送信する（Ｃ１９０）。端末用決済完了通知には、限定ではなく例として、決済が完了（成功）した旨と、決済した日時（決済日時）、決済した店舗の店舗識別情報（決済店舗識別情報）、決済した金額（決済金額）等の端末用決済情報とが含まれる。そして、制御部１１は、処理を終了する。
【００９７】
なお、ここでは、サーバ１０による決済が成功した場合に、店舗用決済完了通知と端末用決済完了通知とがサーバ１０から送信されることとするが、残高の不足等により、サーバ１０が決済を行うことができない場合がある。この場合は、決済を行うことができなかった旨の通知（例えば決済エラー通知、決済ＮＧ通知）を、店舗コードリーダ装置５０と端末２０とに送信するようにすればよい。
他の処理においても同様である。
【００９８】
通信Ｉ／Ｆ５４によってサーバ１０から店舗用決済完了通知を受信すると（Ｂ１８０）、制御部５１は、処理を終了する。
【００９９】
また、通信Ｉ／Ｆ２２によって端末用決済完了通知をサーバ１０から受信すると、制御部２１は、受信された端末用決済完了通知に基づき、決済アプリケーションのデータとして端末２０で記憶している残高を更新する。また、制御部２１は、決済結果を表示部２４に表示させる（Ａ１９０）。そして、制御部２１は、処理を終了する。
【０１００】
図３−２は、端末２０で実行される決済アプリケーションで表示されるトップ画面の一例を示す図である。
このトップ画面は、決済アプリケーションを起動した際に表示される表示画面であり、画面上部に、決済アプリケーションの名称である「Ｐａｙｍｅｎｔ  ＡＰＰ」が表示されている。その下の枠内には、残高（ここでは「３０００円」）が表示されており、その横には、電子貨幣をチャージ（追加）するためのチャージボタンが表示されている。また、その下には、決済アプリケーションの各種の機能に対応する複数の機能アイコンが表示されている。
【０１０１】
これらの機能アイコンのうち、「コード」と示されたアイコンは、限定ではなく例として、表示部２４にコード表示画面を表示させるための「コードアイコン」である。このコードアイコンが端末２０のユーザによりタッチ操作されると、限定ではなく例として、端末２０からサーバ１０にコード生成依頼情報が送信され、サーバ１０によって端末表示用コードが生成される。そして、生成された端末表示用コードがサーバ１０から端末２０に送信されて、図３−３に示すコード表示画面が端末２０の表示部２４に表示される。
【０１０２】
図３−３は、コード表示画面の一例を示す図である。
このコード表示画面には、画面上部に「コード」の文字が表示され、その下に、決済方法と、ユーザが所有しているポイントと、そのポイントを利用して決済を行うか否かを設定するためのポイントタブとが表示されている。
【０１０３】
また、その下には、サーバ１０から取得した端末表示用コードのコード画像として、バーコードで表される一次元の端末表示用コード画像と、ＱＲコードで表される二次元の端末表示用コード画像ＱＣ０とが、表示画面内の異なる領域にそれぞれ表示されている。また、限定ではなく例として、一次元の端末表示用コード画像の下には、１２桁の決済用番号が表示されている。
【０１０４】
また、この例では、コード表示画面に表示される端末表示用コードには、そのコードを表示する期限（以下、「コード表示期限」と称する。）がある。
【０１０５】
コード表示期限は、限定ではなく例として、端末２０で端末表示用コードが表示される期間である。コード表示期限は、限定ではなく例として、「端末で端末表示用コードが表示された（表示が開始された）時刻（日時）からコード表示時間が経過するまでの期間」とすることができる。コード表示時間は、適宜設定変更可能であるが、限定ではなく例として「５分」とすることができる。
【０１０６】
なお、コード表示期限を、端末２０で端末表示用コードが表示される期間と定義するのではなく、端末２０で端末表示用コードが表示される期間が終了（満了）する時刻（日時）と定義するようにしてもよいし、そのようにしなくてもよい。
【０１０７】
そして、二次元の端末表示用コード画像ＱＣ０の下には、更新のマークおよび更新の文字とともに、コード表示期限の残り時間がカウントダウン形式で表示されている。この残り時間は、端末２０の時計部２９Ａによって計時される情報に基づき表示される。
残り時間が「０」になると、コード表示画面は閉じられ、端末表示用コードは非表示とされる。その後に端末２０のユーザが決済を行いたい場合は、サーバ１０から端末表示用コードを再取得することが必要となる。
【０１０８】
端末２０のユーザは、コード表示期限内に、図３−３のコード表示画面をコードレジ６０で店舗の店員に提示し、店舗コードリーダ装置５０で端末表示用コード画像を読み取ってもらうことで決済を行う。この場合、店舗コードリーダ装置５０は、前述したＡＰＩ等を用いて通信Ｉ／Ｆ５４によってサーバ１０にアクセスして、決済に必要な情報をサーバ１０に送信する。これにより、サーバ１０によって決済処理が行われる。
【０１０９】
ここまで、オンライン決済を実現するための処理を例示した。この処理では、サーバ１０によって生成されて端末２０に送信された端末表示用コードが、限定ではなく例として、すぐに決済に利用される。
【０１１０】
しかしながら、ユーザによっては、サーバ１０から受信された端末表示用コードをすぐに利用して決済を行うのではなく、後から利用して決済を行うことを希望するような場合もある。
【０１１１】
また、上記の処理を適用するためには、端末２０とサーバ１０とが通信可能な状態（オンライン状態）であることが必要となる。勿論、店舗コードリーダ装置５０とサーバ１０とが通信可能な状態であることも必要である。
【０１１２】
しかしながら、地下などの電波状況が悪い場所で決済を行う場合や、イベント会場などの回線が混雑している状況で決済を行う場合、端末２０の一定期間（例えばひと月）における通信量が一定量を超えるなどして通信制限や通信の速度制限かかけられている場合等において、端末２０とサーバ１０とが通信不能（または通信困難）となった結果、決済を行うのが困難になる場合が想定される。
【０１１３】
そこで、以下では、これらの場合であっても決済を実現するための手法を例示する。
なお、以下説明する決済の手法は、オンライン状態と、オフライン状態とのいずれについても同様に適用可能であるが、ここでは、オフライン状態における決済を実現するための手法として説明する。
【０１１４】
（２）オフライン決済
本開示の手法の一態様としてのオフライン決済の手法について、フローチャートを参照して説明する。
以下では、「オフライン」とは、端末２０がサーバ１０と通信することができないことをを示し、「オフライン状態」とは、このオフラインの状態を示すものとする。また、「オフライン決済」とは、オフライン状態においてサーバ１０によって決済が行われることを示すものとする。また、前提として、店舗コードリーダ装置５０はサーバ１０と通信することができるものとする。
【０１１５】
図３−４は、この場合における各装置が実行する処理の流れの一例を示すフローチャートである。図の見方は、前述したフローチャートと同様である。
【０１１６】
図３−４のフローチャートは、図３−１のフローチャートをオフライン仕様に書き換えたものである。図３−１のフローチャートとは、限定ではなく例として、オンライン状態での処理ステップ（例えばＡ２４０）、オフライン状態での処理ステップ（例えばＡ２５０、Ｂ２５０、Ｂ２８０）、オフライン状態からオンライン状態に復帰した場合の処理ステップ（例えばＡ２９０、Ｃ２９０）が異なる。
【０１１７】
Ａ１３０の後、制御部２１は、受信された端末表示用コード（この例では端末表示用コード画像）を記憶部２８にストックする（Ａ２４０）。
【０１１８】
ここで、「ストック」とは、受信された端末表示用コードを後で利用可能とするために、記憶部２８に記憶させることを意味する。
なお、本明細書では、「ストック」のことを、単に「記憶」と表現することもある。また、端末表示用コードをストックすることを、「端末表示用コードを端末表示用コードストックデータに記憶させる」と表現することもある。
【０１１９】
この処理では、オフライン決済を可能とするために、オンライン状態においてサーバ１０から取得した端末表示用コード（この例では端末表示用コード画像）を端末２０の記憶部２８にストック（記憶）させておく。そして、オフライン状態での決済が必要となった場合に、ストックされた端末表示用コードを用いて、サーバ１０と通信する必要なく決済ができるようにする。
【０１２０】
具体的に説明する。Ａ２４０の後、オフライン状態になったとする。
ここで、端末２０は、限定ではなく例として、以下のいずれかの手法によってオフライン状態となったことを検出する。
【０１２１】
（Ａ）端末２０での決済アプリケーションの実行中、定期的なタイミングや特定のタイミングで、サーバ１０から接続確認要求が端末２０に送信され、端末２０からは、その接続確認要求に対して、識別情報（例えばアプリケーションＩＤ）を含む接続応答がサーバ１０に送信されるようにする。この場合、端末２０の制御部２１は、サーバ１０から接続確認要求を受信しなくなった場合に、オフライン状態になったと判定する。
【０１２２】
（Ｂ）端末２０での決済アプリケーションの実行中、定期的なタイミングや特定のタイミングで、端末２０から識別情報（例えばアプリケーションＩＤ）を含む接続通知がサーバ１０に送信され、サーバ１０からは、その接続通知に対して、接続確認が端末２０に送信されるようにする。オフライン状態では、端末２０からサーバ１０に接続通知を送信することができない。このため、限定ではなく例として、端末２０の制御部２１は、接続通知の送信エラーの発生を検知した場合に、オフライン状態となったと判定する。
【０１２３】
なお、端末２０が、限定ではなく例として、ネットワークの接続状況を取得するライブラリやアプリケーション等を用いて、自己の端末２０の通信状況に関する情報を取得して、オフライン状態となったか否かを判定するようにしてもよいし、そのようにしなくてもよい。
【０１２４】
オフライン状態において、限定ではなく例として、端末２０のユーザによってコード表示操作がなされると、制御部２１は、コード表示処理を行う（Ａ２５０）。具体的には、Ａ２４０でストックされた端末表示用コード画像を表示部２４に表示させる。そして、表示された端末表示用コード画像が端末２０のユーザによって店舗の店員等に提示されると、制御部５１は、端末２０の表示部２４に表示された端末表示用コード画像を、コードリーダ５８に読み取らせる制御を行う（Ｂ２５０）。そして、制御部５１は、Ｂ１６０へと処理を移す。
【０１２５】
Ｂ１６０の後、通信Ｉ／Ｆ５４によってサーバ１０から店舗用決済完了通知を受信すると（Ｂ２８０）、受信された店舗用決済完了通知に基づき、店舗の店員等はオフライン決済が完了（成功）したことを端末２０のユーザに口頭で通知する。
【０１２６】
Ｃ１８０の後、制御部１１は、端末用決済完了通知を端末２０に送信する（Ｃ２９０）。しかし、オフライン状態では、端末２０は端末用決済完了通知を受信できない。端末２０がオンライン状態に復帰すると、サーバ１０から送信された端末用決済完了通知が端末２０で受信される。そして、通信Ｉ／Ｆ２２によって端末用決済完了通知をサーバ１０から受信すると、制御部２１は、受信された端末用決済完了通知に基づき、決済結果を表示部２４に表示させる（Ａ２９０）。
【０１２７】
以上説明した処理が、オフライン決済を行うための処理の一例である。
【０１２８】
なお、コード生成依頼情報は、１個の端末表示用コードの生成を依頼する情報としてもよいが、複数（２以上）の端末表示用コードの生成を依頼する情報としてもよい。具体的には、限定ではなく例として、端末表示用コードを１つ１つ追加するようにするのではなく、端末２０側またはサーバ１０側で、端末２０が一度に生成を依頼するコードの数（サーバ１０が一度に生成するコードの数）の上限を設定しておく。そして、この上限の数の端末表示用コードを、端末２０のユーザが１回の操作で一気に取得するようにしてもよい。この場合、サーバ１０によって複数の端末表示用コードが生成され、生成された複数の端末表示用コードが端末２０に送信されて、受信された複数の端末表示用コードを端末２０でストックするようにすればよい。
【０１２９】
上記の処理は、オンライン状態においても同様に適用可能である。つまり、
（１）オンライン状態において後から端末表示用コードを利用して決済を行う場合
（２）オフライン決済を行う場合
のいずれかの場合に、上記のように、オンライン状態においてサーバ１０によって生成されて送信された端末表示用コードを端末２０でストックしておく。そして、端末２０でストックしておいた端末表示用コードを用いて決済を行う。
【０１３０】
しかしながら、ユーザによっては、端末表示用コードを端末２０にストックさせたことを忘れてしまう場合がある。
また、例えば複数の端末表示用コードを端末２０にストックさせるような場合、既に決済に利用された端末表示用コードの数や、未だ決済に利用されていない端末表示用コードの数を、ユーザが把握することが困難な場合がある。
【０１３１】
＜機能構成＞
（１）サーバの機能構成
図４−１は、本実施例におけるサーバ１０の制御部１１により実現される機能の一例を示す図である。
【０１３２】
以下では、端末２０のユーザが、端末２０に記憶されている決済アプリケーションを用いて、限定ではなく例として、前述した決済種別「端末コード表示」による決済を行う場合を例示する。
【０１３３】
サーバ１０は、制御部１１により実現される機能として、決済管理処理部１１１を有する。
【０１３４】
決済管理処理部１１１は、記憶部１５に記憶されている決済管理処理プログラム１５１に従って、端末２０で実行される決済アプリケーションに関する各種の情報やデータの管理や、端末２０または端末２０のユーザの電子貨幣による決済を管理するための決済管理処理を実行する機能を有している。
【０１３５】
本実施例において、決済管理処理部１１１は、記憶部１５に記憶されている決済管理処理プログラム１５１に従って、例えば図３−４に示した処理を決済管理処理として実行する。
【０１３６】
決済管理処理部１１１は、限定ではなく例として、端末表示用コード生成処理によって端末表示用コードを生成する端末表示用コード生成処理部１１１１と、決済処理によって決済を実行する決済処理部１１１３とを機能部として含む。
【０１３７】
端末表示用コード生成処理部１１１１は、限定ではなく例として、二次元コードで表される端末表示用コード画像を生成する。二次元コードとは、水平方向と垂直方向とに情報を持つ表示方式のコードであり、小さな正方形を上下左右に配列させたマトリックス式のコード（以下、「マトリックスコード」と称す。）や、一次元コード（限定ではなく例としてバーコード）を上下に複数重ねたスタック式のコード（以下、「スタックコード」と称す。）等がある。
【０１３８】
本実施例では、説明の簡明化のため、広く用いられているマトリックスコードの一例であるＱＲコード（登録商標）を、端末表示用コードの一例として説明する。
【０１３９】
なお、本実施例とは異なり、ＱＲコード以外のマトリックスコードとして、ＳＰコードやベリコード、マキシコード、ＣＰコード、カメレオンコード等のコードを用いてもよいし、用いなくてもよい。また、マトリックスコードではなく、各種のスタックコードを用いてもよいし、用いなくてもよい。
【０１４０】
また、端末表示用コード生成処理部１１１１が、端末表示用コードとして、二次元コード（限定ではなく例として、ＱＲコード）に加えて、一次元コード（限定ではなく例として、バーコード）を生成するようにしてもよいし、そのようにしなくてもよい。これは、店舗によっては、二次元コードの読み取りには対応していないが、一次元コードの読み取りには対応可能な場合があるためである。
【０１４１】
決済処理部１１１３は、限定ではなく例として、店舗ＰＯＳシステム４０から送信される情報や、端末２０から送信される情報に基づいて、決済処理を行う機能を有している。
【０１４２】
図４−２は、本実施例におけるサーバ１０の記憶部１５に記憶される情報の一例を示す図である。
記憶部１５には、限定ではなく例として、プログラムとして、制御部１１により読み出され、決済管理処理として実行される決済管理処理プログラム１５１が記憶される。
【０１４３】
また、記憶部１５には、限定ではなく例として、データとして、ユーザ登録データ１５３と、店舗登録データ１５５と、決済管理データベース１５７と、コード管理データベース１５９とが記憶される。
【０１４４】
ユーザ登録データ１５３は、決済サービスを利用する端末２０および端末２０のユーザの登録データであり、そのデータ構成の一例を図４−３に示す。
ユーザ登録データ１５３には、限定ではなく例として、ユーザ名と、端末電話番号と、端末メールアドレスと、アプリケーションＩＤと、認証パスワードと、その他登録情報とが関連付けて記憶される。
【０１４５】
ユーザ名は、決済サービスを利用する端末２０のユーザの名称であり、端末２０のユーザが決済サービスを利用する際に登録する名称が記憶される。
【０１４６】
端末電話番号は、このユーザ名のユーザの端末２０の電話番号であり、端末２０のユーザが決済アプリケーションを利用する際に登録する端末２０の電話番号が記憶される。
端末メールアドレスは、このユーザ名のユーザの端末２０のメールアドレスであり、端末２０のユーザが決済アプリケーションを利用する際に登録する端末２０のメールアドレスが記憶される。
端末電話番号や端末メールアドレスは、端末２０を識別するための識別情報（以下、「端末識別情報」と称す。）の一例である。
【０１４７】
アプリケーションＩＤは、決済アプリケーションのアカウント（アカウント情報）であって、端末２０、または端末２０のユーザを識別可能とするＩＤである。このアプリケーションＩＤは、限定ではなく例として、サーバ１０によって固有のＩＤが設定されて記憶される。
【０１４８】
認証パスワードは、このユーザ名のユーザの端末２０において、決済用の認証処理（以下、単に「認証処理」と称す。）を行う際にユーザに入力を要求する認証用のパスワードであり、ユーザによって設定されたパスワードが記憶される。
【０１４９】
なお、決済用の認証処理は、必ずしも行わなければならないわけではなく、行わないようにすることも可能である。この場合は、認証パスワードをユーザ登録データ１５３に記憶させておく必要はない。
【０１５０】
その他登録情報は、このユーザ名のユーザのその他の登録情報であり、限定ではなく例として、決済アプリケーションにおいてユーザが使用するアイコンの画像データであるユーザアイコン画像やユーザのプロフィール等がこれに含まれる。
【０１５１】
店舗登録データ１５５は、決済アプリケーションを提供する事業者（サーバ１０の事業者）と提携している店舗の登録データである。この店舗登録データ１５５の一例である店舗登録データ１５５Ａのデータ構成例を、図４−４に示す。
店舗登録データ１５５Ａには、限定ではなく例として、業種と、店舗名と、店舗位置情報と、店舗ＰＯＳシステム情報と、店舗ＩＤとが店舗情報として関連付けて記憶される。
【０１５２】
業種には、店舗の業種が記憶される。この業種には、限定ではなく例として、「コンビニエンスストア」、「スーパーマーケット」、「薬局」、「居酒屋」、「百貨店」、「レストラン」、「本屋」、「時計店」といった各種の業種が含まれる。
【０１５３】
店舗名には、各業種それぞれについて、その業種に含まれる（属する）店舗の店舗名が記憶される。
【０１５４】
店舗位置情報には、この店舗名の店舗の所在地の位置情報（以下、「店舗位置情報」と称す。）が記憶される。この店舗位置情報は、店舗の所在地を２次元または３次元の位置座標で表したものとしてもよいし、店舗の所在地を経緯度（緯度、経度、場合によっては高度）で表したものとしてもよい。
【０１５５】
店舗ＰＯＳシステム情報には、この店舗で使用される店舗ＰＯＳシステム４０に関する情報が記憶される。この店舗ＰＯＳシステム情報には、限定ではなく例として、サーバ１０が、店舗コードリーダ装置５０や店舗サーバ７０と通信を行うために必要な情報が含まれる。
【０１５６】
店舗ＰＯＳシステム４０は、サーバ１０と連携して処理を行うため、限定ではなく例として、サーバ１０から提供（配布）される決済アプリケーション用のソフトウェアパッケージをあらかじめ取得して店舗コードリーダ装置５０や店舗サーバ７０に記憶させておき、このソフトウェアパッケージを、店舗での決済処理用のプログラムから呼び出して使用するようにすることができる。アプリケーションプログラミングインターフェース（ＡＰＩ）が一例であり、店舗コードリーダ装置５０は、例えばＡＰＩを起動して、サーバ１０への情報の送信と、サーバ１０からの情報の受信とを実現する。
【０１５７】
また、サーバ１０は、限定ではなく例として、店舗の業種、店舗名、店舗位置情報、店舗ＰＯＳシステム情報等の情報を、その店舗の店舗サーバ７０から受信して、店舗登録データ１５５に記憶させておくようにすることができる。
【０１５８】
店舗ＩＤは、この店舗名の店舗を識別するための識別情報として機能するＩＤである。この店舗ＩＤは、限定ではなく例として、サーバ１０によって店舗ごとに固有のＩＤが設定されて記憶される。
店舗ＩＤは、店舗識別情報の一例である。
【０１５９】
決済管理データベース１５７は、各端末２０のユーザの決済に関する情報を管理するためのデータを蓄積的に記憶したデータベースであり、その一例である決済管理データベース１５７Ａの構成例を図４−５に示す。
決済管理データベース１５７Ａには、端末２０毎、または端末２０のユーザ毎に生成される決済管理データが記憶される。
【０１６０】
各決済管理データには、限定ではなく例として、アプリケーションＩＤと、残高と、ポイントと、１日上限設定金額と、オートチャージ設定と、決済履歴データとが記憶される。
【０１６１】
アプリケーションＩＤには、ユーザ登録データ１５３に記憶されているアプリケーションＩＤが記憶される。
残高には、このアプリケーションＩＤに関連付けられている残高が記憶される。
【０１６２】
ポイントには、決済アプリケーションと関連付けられた各種のサービスや、決済アプリケーションの事業者と提携している加盟店舗で貯めることのできるポイントが記憶される。ポイントは、限定ではなく例として、１ポイントあたり１円相当の価値を有し、ギフト券や商品等に交換することができる他、決済アプリケーションにおいて現金化して決済に利用することもできる。
【０１６３】
１日上限設定金額には、このアプリケーションＩＤを所有する端末２０、または端末２０のユーザが決済に使用可能な金額の１日あたりの上限金額が記憶される。
【０１６４】
オートチャージ設定は、残高が残り少ない金額（例えば「５００円」）や「０円」となった場合に、電子貨幣を自動的に補充（オートチャージ）するか否かの設定であり、端末２０のユーザによってオートチャージの設定がなされた場合は「ＯＮ」が記憶され、それ以外の場合は「ＯＦＦ」が記憶される。オートチャージは、限定ではなく例として、端末２０のユーザが登録している銀行口座等から行われるようにすることができる。
【０１６５】
決済履歴データは、このアプリケーションＩＤのユーザの決済の履歴に関するデータであり、限定ではなく例として、このアプリケーションＩＤについて、サーバ１０によって決済が行われた日時である決済日時と、決済した店舗のＩＤである店舗ＩＤと、その店舗ＩＤの店舗の名称である決済店舗名と、決済した金額である決済金額とが関連付けて時系列に記憶される。
【０１６６】
なお、上記の決済管理データには、必ずしも上記の全ての情報を記憶させるようにする必要はない。限定ではなく例として、ポイント、１日上限設定金額、オートチャージ設定のうちの一部または全部は、決済管理データに記憶させないようにしてもよい。
また、決済を行う度に、決済履歴の情報を端末２０に送信して端末２０に記憶させるようにして、サーバ１０には決済履歴データを記憶させないようにしてもよい。
【０１６７】
コード管理データベース１５９は、コード（本実施例では端末表示用コード）を管理するためのデータベースであり、そのデータ構成の一例を図４−６に示す。
コード管理データベース１５９には、限定ではなく例として、決済アプリケーションのアプリケーションＩＤごとに生成されるデータとして、アプリケーションＩＤとともに、コード生成日時と、コードＮｏと、決済用番号とが関連付けて時系列に記憶されたコード管理データが含まれる。
【０１６８】
コード生成日時には、時計部１９によって計時される情報に基づいて、その端末表示用コードを生成した日時が記憶される。
コードＮｏには、そのコードを識別するための番号が記憶される。例えば、古い順に通し番号が設定されて記憶される。
決済用番号には、その端末表示用コードを生成する際に発行した決済用番号が記憶される。
【０１６９】
コード管理データに記憶される端末表示用コードのデータは、限定ではなく例として、その端末表示用コードを利用して決済処理を行った後、コード管理データから削除するようにすることができる。
【０１７０】
なお、上記のように、利用不可となった端末表示用コードのデータをコード管理データから削除するのではなく、限定ではなく例として、端末表示用コードのデータと関連付けて、その端末表示用コードの利用可否を示すフラグ「利用可能／利用不可」を設定する。そして、利用不可となった端末表示用コードについては、フラグを「利用不可」に設定するようにしてもよいし、そのようにしなくてもよい。
【０１７１】
また、上記のうち、例えばコード生成日時は、コード管理データに記憶させないようにしてもよい。
また、アプリケーションＩＤに代えて、または、これに加えて、ユーザ登録データ１５３に記憶されている端末電話番号等の端末識別情報を、コード管理データに記憶させるようにしてもよいし、しなくてもよい。
【０１７２】
（２）端末の機能構成
図４−７は、本実施例において端末２０の制御部２１により実現される機能の一例を示す図である。
端末２０は、制御部２１により実現される機能として、決済アプリケーション処理部２１１を有する。
【０１７３】
決済アプリケーション処理部２１１は、記憶部２８に記憶されている決済アプリケーションソフトウェア２８１に基づいて、決済に関する処理を行うための処理の一例である決済アプリケーション処理を実行する機能を有している。
【０１７４】
本実施例において、決済アプリケーション処理部２１１は、記憶部２８に記憶された決済アプリケーションプログラム２８２に従って、例えば図３−４に示した処理を決済アプリケーション処理として実行する。
【０１７５】
本実施例において、決済に関する処理とは、限定ではなく例として、端末表示用コードをサーバ１０から取得する処理（端末表示用コードの生成をサーバ１０に依頼する処理や、生成された端末表示用コードをサーバ１０から受信する処理を含む。）、サーバ１０から取得した端末表示用コードをストックする処理、ストックした端末表示用コード画像を表示する処理（コード表示処理）、表示した端末表示用コード画像を店舗コードリーダ装置５０に読み取らせるようにユーザに指示（案内）する処理、サーバ１０によって決済が行われた後に端末用決済完了通知をサーバ１０から受信（取得）する処理などの、決済を行う上で何らかの関連のある処理、より具体的には、決済を行う上で関連のある処理として端末２０で実行される処理全般を含む概念である。
【０１７６】
決済アプリケーション処理部２１１は、限定ではなく例として、コード表示処理を実行するコード表示処理部２１１３を機能部として含む。
【０１７７】
本実施例において、コード表示処理部２１１３は、端末表示用コード画像を含むコード表示画面を表示させる処理を行う他、端末表示用コードストックデータ２８３１に記憶されている端末表示用コードの数によって特定される「コード残数」に関する情報（以下、「コード残数関連情報」と称する。）を表示させる処理を行う。コード残数関連情報には、種々の情報が含まれるが、これについては詳細に後述する。
【０１７８】
本実施例では、端末表示用コードストックデータ２８３１に記憶されている端末表示用コードの総数を「コード残数」としてカウントすることとして説明する。端末表示用コードストックデータ２８３１に端末表示用コードが１個も記憶されていない場合は「コード残数＝０」となる。
【０１７９】
なお、コード残数は、ストックされているコードの数という意味で「ストックコード数」や「ストック数」と表現することもできる。
【０１８０】
図４−８は、本実施例における端末２０の記憶部２８に記憶される情報の一例を示す図である。
記憶部２８には、限定ではなく例として、サーバ１０からあらかじめダウンロードするなどして取得されるアプリケーションソフトウェアとして、決済アプリケーションソフトウェア２８１が記憶される。
【０１８１】
決済アプリケーションソフトウェア２８１には、限定ではなく例として、決済アプリケーションプログラム２８２と、決済アプリケーションデータ２８３とが含まれる。
【０１８２】
決済アプリケーションプログラム２８２は、制御部２１によって読み出され、決済アプリケーション処理として実行されるプログラムであり、限定ではなく例として、コード表示処理として実行されるコード表示処理プログラム２８２３をサブルーチンプログラムとして含む。
【０１８３】
決済アプリケーションデータ２８３には、決済アプリケーションソフトウェアで用いられる各種のデータが記憶される。この決済アプリケーションデータ２８３には、限定ではなく例として、端末表示用コードストックデータ２８３１と、決済用データ２８３２と、店舗データ２８３３と、コード残数関連情報表示設定データ２８３５とが記憶される。
【０１８４】
端末表示用コードストックデータ２８３１には、オンライン状態においてサーバ１０から取得した端末表示用コードがストックされたデータであり、そのデータの一例である第１の端末表示用コードストックデータ２８３１Ａのデータ構成例を図４−９に示す。
第１の端末表示用コードストックデータ２８３１Ａには、限定ではなく例として、コード受信日時と、コードＮｏと、コードデータとが関連付けて時系列に記憶される。
【０１８５】
コード受信日時には、限定ではなく例として、端末２０がその端末表示用コードをサーバ１０から受信した日時が記憶される。
コードＮｏには、端末２０がその端末表示用コードとともにサーバ１０から受信したコードＮｏが記憶される。
コードデータには、限定ではなく例として、端末２０がサーバ１０から受信した端末表示用コードのコード画像のデータが記憶される。
【０１８６】
第１の端末表示用コードストックデータ２８３１Ａに記憶される端末表示用コードのデータは、限定ではなく例として、その端末表示用コードを利用してサーバ１０によって決済処理が行われ、サーバ１０から端末用決済完了通知を受信した後（オフライン決済を行った場合は、オンライン状態に復帰してサーバ１０から端末用決済完了通知を受信した後）、第１の端末表示用コードストックデータ２８３１Ａから削除するようにすることができる。
【０１８７】
なお、上記のように、利用不可となった端末表示用コードのデータを端末表示用コードストックデータ２８３１から削除するのではなく、例えば図４−１０の第２の端末表示用コードストックデータ２８３１Ｂのように、限定ではなく例として、端末表示用コードのデータと関連付けて、その端末表示用コードの使用状況の情報を関連付けて記憶しておくようにすることもできる。そして、未だ使用していない端末表示用コードには「未使用」を、使用済みの端末表示用コードには「使用済み」をそれぞれ関連付けて記憶させるようにしてもよいし、そのようにしなくてもよい。
【０１８８】
また、上記のうち、例えばコード受信日時は、端末表示用コードストックデータ２８３１（第１の端末表示用コードストックデータ２８３１Ａや第２の端末表示用コードストックデータ２８３１Ｂ）に記憶させないようにしてもよい。
【０１８９】
また、コード受信日時に代えて、または、これに加えて、限定ではなく例として、サーバ１０から受信した端末表示用コードを端末表示用コードストックデータ２８３１（第１の端末表示用コードストックデータ２８３１Ａや第２の端末表示用コードストックデータ２８３１Ｂ）に記憶させた日時（以下、「コード記憶日時」と称する。）を記憶させるようにしてもよいし、そのようにしなくてもよい。
【０１９０】
また、詳細は後述するが、コードデータには、必ずしも端末表示用コードのコード画像のデータを記憶させなければならないわけではなく、これに代えて、または、これに加えて、端末表示用コードの元情報（本実施例では決済用番号）を記憶させるようにしてもよいし、そのようにしなくてもよい。
また、端末表示用コードストックデータ２８３１に、オンライン状態においてサーバ１０から取得した１個のコードを記憶させることとしてもよいし、そのようにしなくてもよい。
【０１９１】
決済用データ２８３２は、端末２０で記憶される決済用のデータであり、その一例である決済用データ２８３２Ａの構成を図４−１１に示す。
決済用データ２８３２Ａには、限定ではなく例として、アプリケーションＩＤと、ポイントと、残高と、１日上限設定金額と、オートチャージ設定と、決済履歴データとが記憶される。
【０１９２】
制御部２１は、オンライン状態に復帰した後にサーバ１０から受信した端末用決済完了通知に基づき、限定ではなく例として、サーバ１０によって決済された日時である決済日時と、サーバ１０によって決済された店舗のＩＤである店舗ＩＤと、その店舗ＩＤの店舗の名称である決済店舗名と、サーバ１０によって決済された金額である決済金額とを関連付けて決済履歴データに時系列に記憶させる。
【０１９３】
店舗データ２８３３には、限定でなく例として、サーバ１０の店舗登録データ１５５Ａに記憶されている各種の店舗情報が記憶される。
【０１９４】
店舗データ２８３３は、限定ではなく例として、決済アプリケーションソフトウェア２８１のアップデートのタイミングで、サーバ１０から最新の店舗情報が端末２０に配信されて更新されるようにすることができる。
【０１９５】
コード残数関連情報表示設定データ２８３５は、コード残数関連情報の表示に関する設定（以下、「表示設定」と称する。）の情報が記憶されたデータである。
表示設定には、限定ではなく例として、表示態様の設定が含まれる。また、表示態様には、表示形式や表示位置、表示色といった、各種の表示態様が含まれる。
【０１９６】
本実施例では、コード表示処理部２１１３が、コード残数関連情報の一例として、コード残数（ストック数）がゼロであることを示す「コード残数ゼロ情報」を表示させる。
コード残数ゼロ情報は、コード残数がゼロであることを示す情報、またはコード残数がゼロであることを示唆する情報である。このコード残数ゼロ情報には、限定ではなく例として、端末表示用コードが端末表示用コードストックデータ２８３１に記憶されていないことを示すメッセージや画像等が含まれる。コード残数関連情報表示設定データ２８３５には、コード残数ゼロ情報の表示設定の情報が記憶されている。
【０１９７】
コード残数ゼロ情報は、第１情報が記憶部に記憶されていないことに関する第２情報の一例であるとともに、第１情報が記憶部に記憶されていないことを端末のユーザに通知する情報の一例である。
また、コード残数ゼロ情報は、ストック数がゼロであるという意味で「ストック数ゼロ情報」と表現することもできる。
【０１９８】
また、記憶部２８には、限定ではなく例として、端末データ２８９が記憶される。
端末データ２８９は、この端末２０に関するデータであり、限定ではなく例として、端末電話番号や端末メールアドレス等の端末識別情報や、端末２０側での各種の設定情報等がこれに含まれる。
【０１９９】
＜表示画面例＞
図４−１２は、本実施例において端末２０の表示部２４に表示される決済アプリケーションのトップ画面の一例を示す図である。
このトップ画面の構成は、図３−２と同様であり、ここでは、端末２０のユーザによって「コードアイコン」がタッチ操作された状態が示されている。
【０２００】
図４−１３は、本実施例において端末２０の表示部２４に表示されるコード表示画面の一例を示す図である。このコード表示画面は、限定ではなく例として、図４−１２のように「コードアイコン」がタッチ操作されることで表示される画面であって、端末表示用コードストックデータ２８３１に端末表示用コードが１個も記憶されていない場合に表示されるコード表示画面の一例である。
【０２０１】
このコード表示画面では、限定ではなく例として、コード残数ゼロ情報の一例として、「コード残数がありません  現在利用可能なコードがストックされていません」というメッセージが、「ＯＫ」のアイコンとともに表示されている。「ＯＫ」のアイコンは、端末２０のユーザが、コード残数ゼロ情報を承認する場合に操作するためのアイコンであり、「ＯＫ」のアイコンがタッチ操作されると、コード残数ゼロ情報の表示は消去される。
【０２０２】
一方、図４−１２の決済アプリケーションのトップ画面において「コードアイコン」がタッチ操作された場合であって、端末表示用コードストックデータ２８３１に端末表示用コードが少なくとも１個記憶されている場合は、限定ではなく例として、図３−３と同様の端末表示用コード画像を含むコード表示画面が表示される。
【０２０３】
オフライン決済を行う場合、端末２０のユーザは、上記の端末表示用コード画像を含むコード表示画面をコードレジ６０で店舗の店員に提示し、端末表示用コード画像を店舗コードリーダ装置５０で読み取ってもらうことで決済を行う。この場合、店舗コードリーダ装置５０は、限定ではなく例として、読み取った端末表示用コード画像からデコードによって取得した情報（この例では決済用番号）や、端末表示用コード画像を読み取った時刻の情報等を含む決済要求情報をサーバ１０に送信して、サーバ１０に決済を行わせる。
【０２０４】
上記の表示画面例では、端末２０のユーザが、オンライン状態／オフライン状態のいずれであるかを意識することなく、例えばコードアイコンをタッチすることでコード表示画面を表示させることができるため、ユーザの利便性を向上させることができる。
【０２０５】
なお、端末２０でストックされる端末表示用コードは、オフライン決済のみならず、オンライン決済にも使用可能とすることができる。つまり、端末２０側でオフライン状態であるか否かを判定（検出）することは必須ではなく、オンライン状態／オフライン状態を問わず、端末２０でストックされる端末表示用コードを用いて決済を行うようにすることが可能である。
【０２０６】
＜処理＞
図４−１４は、本実施例において、端末２０のコード表示処理部２１１３が、コード表示処理プログラム２８２３の一例である第１のコード表示処理プログラムに従って実行する第１のコード表示処理の流れの一例を示すフローチャートである。この第１のコード表示処理は、限定ではなく例として、図３−４の処理のＡ２５０のステップで実行される。
【０２０７】
ここで、図３−４の処理では、Ａ２９０の後、処理が終了するように示しているが、実際には、処理はループされる。
【０２０８】
具体的には、限定ではなく例として、Ａ２９０の後、端末２０のユーザによるコード取得操作を検出した場合、制御部２１は、Ａ１１０に処理を戻す。一方、Ａ２９０の後、端末２０のユーザによるコード表示操作を検出した場合、制御部２１は、Ａ２５０に処理を戻す。
【０２０９】
前述したように、端末表示用コードストックデータ２８３１に記憶される端末表示用コードのデータは、限定ではなく例として、その端末表示用コードを利用してサーバ１０によって決済処理が行われ（Ｃ１７０）、Ａ２９０においてサーバ１０から端末用決済完了通知を受信した後（オフライン決済を行った場合は、オンライン状態に復帰してサーバ１０から端末用決済完了通知を受信した後）、端末表示用コードストックデータ２８３１から削除される。従って、Ａ２９０の後にＡ２５０に処理を戻した場合、ストックされている端末表示用コードを使い切ってしまっており、コード残数がゼロとなっている場合がある。
【０２１０】
第１のコード表示処理では、コード表示処理部２１１３は、コード残数をカウントする（Ｄ１１０）。そして、コード表示処理部２１１３は、カウントしたコード残数がゼロであるか否かを判定する（Ｄ１２０）。
【０２１１】
コード残数がゼロであると判定した場合（Ｄ１２０：ＹＥＳ）、コード表示処理部２１１３は、コード残数関連情報表示設定データ２８３５に記憶されているコード残数ゼロ情報の表示設定を取得する（Ｄ１３０）。
【０２１２】
その後、コード表示処理部２１１３は、Ｄ１３０で取得した表示設定（例えば、表示態様の設定を含む。）に基づいて、コード残数ゼロ情報を含むコード表示画面を表示部２４に表示させる（Ｄ１４０）。
【０２１３】
その後、コード表示処理部２１１３は、第１表示終了条件が成立したか否かを判定する（Ｄ１８０）。第１表示終了条件は、例えば、端末２０のユーザによるコード残数ゼロ情報の承認操作を検出したことや、端末２０のユーザによるコード表示画面の非表示操作を検出したこと等であってもよいし、そうでなくてもよい。
【０２１４】
第１表示終了条件が成立しないと判定した場合（Ｄ１８０：ＮＯ）、コード表示処理部２１１３は、そのまま待機する。一方、第１表示終了条件が成立したと判定した場合（Ｄ１８０：ＹＥＳ）、コード表示処理部２１１３は、第１のコード表示処理を終了する。
【０２１５】
一方、コード残数がゼロではないと判定した場合（Ｄ１２０：ＮＯ）、コード表示処理部２１１３は、端末表示用コードストックデータ２８３１に記憶されている端末表示用コードのコード画像（例えば、取得が最も古い端末表示用コードのコード画像）を含むコード表示画面を表示部２４に表示させる（Ｄ１５０）。
【０２１６】
その後、コード表示処理部２１１３は、第２表示終了条件が成立したか否かを判定する（Ｄ１９０）。第２表示終了条件は、例えば、端末２０のユーザによるコード表示画面の非表示操作を検出したことや、前述したコード表示期限が経過したこと等であってもよいし、そうでなくてもよい。
【０２１７】
第２表示終了条件が成立しないと判定した場合（Ｄ１９０：ＮＯ）、コード表示処理部２１１３は、そのまま待機する。一方、第２表示終了条件が成立したと判定した場合（Ｄ１９０：ＹＥＳ）、コード表示処理部２１１３は、第１のコード表示処理を終了する。
【０２１８】
なお、前述したように、本開示の手法は、端末２０で端末表示用コードがストックされていれば適用可能である。このため、上記の第１のコード表示処理は、オンライン状態／オフライン状態を問わず、同様に適用することができる。
【０２１９】
＜コード＞
上記の処理では、端末２０が、端末表示用コード画像の生成をサーバ１０に依頼することとし、サーバ１０によって生成された端末表示用コード画像が、端末２０に送信される例を示したが、これに限定されない。例えば、端末２０が、元情報（この例では決済用番号）の生成をサーバ１０に依頼することとし、サーバ１０によって生成された元情報が、端末２０に送信されるようにしてもよいし、そのようにしなくてもよい。
【０２２０】
具体的には、図３−１の処理では、Ａ１１０において、制御部２１は、元情報（この例では決済用番号）の生成をサーバ１０に依頼するコード生成依頼情報を送信する。そして、このコード生成依頼情報に基づき、Ｃ１２０において、制御部１１は元情報を生成し、Ｃ１３０において、生成した元情報を端末２０に送信する。Ａ１３０において元情報をサーバ１０から受信すると、制御部２１は、受信された元情報（この例では決済用番号）に基づいて端末表示用コード画像を生成する。そして、制御部２１は、生成した端末表示用コード画像を表示部２４に表示させる。
【０２２１】
同様に、図３−４の処理では、Ａ１３０において元情報（この例では決済用番号）をサーバ１０から受信すると、Ａ２４０において、制御部２１は、受信された元情報（この例では決済用番号）を端末表示用コードストックデータ２８３１に記憶させる。そして、制御部２１は、ストックされている元情報を端末表示用コードストックデータ２８３１から読み出し、読み出した元情報に基づいて端末表示用コード画像を生成する。そして、Ａ２５０において、制御部２１は、生成した端末表示用コード画像を表示部２４に表示させる。
【０２２２】
また、上記とは異なり、端末２０が、端末表示用コード画像の生成をサーバ１０に依頼し、サーバ１０によって生成された端末表示用コード画像が端末２０に送信されるが、端末２０側では、サーバ１０から受信した端末表示用コード画像をストックするのではなく、サーバ１０から受信した端末表示用コード画像からデコードによって取得した元情報をストックするようにしてもよいし、そのようにしなくてもよい。
【０２２３】
＜第１実施例の効果＞
第１実施例は、端末２０が、サーバ１０から送信された端末表示用コードのコード画像や元情報（限定ではなく、第１情報の一例）を、通信Ｉ／Ｆ２２を介して受信する。そして、端末２０は、受信された端末表示用コードのコード画像や元情報を、制御部２１によって記憶部２８の端末表示用コードストックデータ２８３１に記憶する。
また、端末２０は、記憶された端末表示用コードのコード画像や元情報に基づく端末表示用コード画像（限定ではなく、第１コード画像の一例）を、コード表示画面（限定ではなく、端末の表示領域の一例）に表示する。
また、端末２０は、端末表示用コード画像のコード表示画面への表示に基づき、サーバ１０によって決済が行われた後に端末用決済完了通知をサーバ１０から受信（取得）する処理（限定ではなく、決済に関する処理の一例）を実行する。
そして、端末２０は、端末用決済完了通知を受信した後、端末表示用コードのコード画像や元情報が端末表示用コードストックデータ２８３１に記憶されていない場合に、コード残数ゼロ情報（限定ではなく、第２情報の一例）を表示する構成を示している。
このような構成により得られる効果の一例として、決済に関する処理に基づき、第１情報が記憶部に記憶されていないことに関する第２情報を端末の表示領域に表示することで、第１情報が記憶されていないことをユーザに報知することができ、ユーザの利便性を向上させることができる。
【０２２４】
また、第１実施例は、端末２０が、プログラムを記憶するメモリから決済アプリケーションプログラム２８２を読み出し、読み出した決済アプリケーションプログラム２８２に基づく決済アプリケーション処理を実行するプロセッサーを備える。そして、プロセッサーは、サーバ１０から送信された端末表示用コードのコード画像や元情報（限定ではなく、第１情報の一例）を、通信Ｉ／Ｆ２２を介して受信することと、受信された端末表示用コードのコード画像や元情報を、記憶部２８の端末表示用コードストックデータ２８３１に記憶することと、記憶された端末表示用コードのコード画像や元情報に基づく端末表示用コード画像（限定ではなく、第１コード画像の一例）を、コード表示画面（限定ではなく、端末の表示領域の一例）に表示することと、端末表示用コード画像のコード表示画面への表示に基づき、サーバ１０による決済完了後に、端末用決済完了通知をサーバ１０から受信する処理（限定ではなく、決済に関する処理の一例）を実行することと、端末用決済完了通知を受信した後、端末表示用コードのコード画像や元情報が端末表示用コードストックデータ２８３１に記憶されていない場合に、コード残数ゼロ情報（限定ではなく、第２情報の一例）を表示することとを実行する構成を示している。
このような構成によっても、上記と同様の効果を得ることができる。
【０２２５】
また、第１実施例は、端末表示用コードストックデータ２８３１には、複数の端末表示用コードのコード画像や元情報が記憶される。そして、コード残数ゼロ情報は、端末表示用コードストックデータ２８３１に記憶された複数の端末表示用コードのコード画像や元情報の数（コード残数）に対する条件の判定結果に基づいて、コード表示画面に表示される構成を示している。
このような構成により得られる効果の一例として、複数の第１情報を端末の記憶部に記憶させておくことができるため、ユーザの利便性を向上させることができる。また、記憶部に記憶された複数の第１情報に基づいて、適切なタイミングで第２情報が端末の表示領域に表示されるようにすることができる。
【０２２６】
また、第１実施例は、コード残数ゼロ情報（限定ではなく、第２情報の一例）は、端末表示用コードのコード画像や元情報が端末表示用コードストックデータ２８３１に記憶されていないことを端末２０のユーザに通知する情報である構成を示している。
このような構成により得られる効果の一例として、第１情報が記憶部に記憶されていないことを端末のユーザに通知することができるため、ユーザの利便性を向上させることができる。
【０２２７】
＜第１変形例（１）＞
第１実施例において、緊急時に利用可能な端末表示用コード画像として、少なくとも１個の端末表示用コード画像が端末表示用コードストックデータ２８３１に記憶されるようにすることもできる。この場合は、限定ではなく例として、端末表示用コードストックデータ２８３１において、緊急時用の端末表示用コードには、緊急時用であることを示すフラグを関連付けて設定しておくようにすることができる。
【０２２８】
また、この場合、緊急時用の端末表示用コードは、例えば端末２０のユーザが選択操作を行って、端末２０に設定させるようにすることができる。限定ではなく例として、決済アプリケーション内で、端末表示用コードストックデータ２８３１に記憶されている端末表示用コードの一覧を表示させる。そして、緊急時用としたい端末表示用コードをユーザに選択（例えばタッチ操作によって選択）させ、選択された端末表示用コードに関連付けて緊急時用であることを示すフラグを設定するようにすることができる。
【０２２９】
なお、複数（２以上）の端末表示用コードを、緊急時用の端末表示用コードとして設定可能としてもよいし、そのようにしなくてもよい。
また、この場合、複数（２以上）の端末表示用コードを緊急時用の端末表示用コードとしてユーザに選択させるようにしてもよいし、そのようにしなくてもよい。
【０２３０】
この場合、上記のＤ１１０のコード残数のカウントでは、緊急時用であることを示すフラグが設定された端末表示用コード画像をコード残数のカウントから除外して、コード残数（ストック数）がゼロであるか否かを判定するようにすることができる。
【０２３１】
本変形例は、端末表示用コードストックデータ２８３１に記憶される端末表示用コードのコード画像や元情報のうち、緊急時に利用可能なものを除き、端末表示用コードストックデータ２８３１に端末表示用コードのコード画像や元情報が記憶されていない場合、コード残数ゼロ情報がコード表示画面に表示される構成を示している。
このような構成により得られる効果の一例として、緊急時に利用可能な第１情報を確保しつつ、第１情報が記憶されていないことをユーザに報知することができ、ユーザの利便性を向上させることができる。
【０２３２】
＜第１変形例（２）＞
第１実施例において、コード表示画面に表示される端末表示用コードは、コード残数のカウントから除外するようにしてもよいし、そのようにしなくてもよい。
【０２３３】
具体的には、限定ではなく例として、端末表示用コードストックデータ２８３１に記憶されている端末表示用コードから１個の端末表示用コードを読み出して表示する際に、その端末表示用コードのデータを記憶部２８のアクティブな記憶領域（以下、「アクティブ記憶領域」と称する。）に保存して、端末表示用コードストックデータ２８３１からは削除する。その後、端末表示用コードストックデータ２８３１に記憶されている端末表示用コードの総数をコード残数としてカウントする。このようにすることで、コード表示画面に表示される端末表示用コードは、コード残数のカウントから除外される。
【０２３４】
図４−１５は、本変形例におけるコード表示画面の一例を示す図である。
このコード表示画面は、限定ではなく例として、図４−１２のように「コードアイコン」がタッチ操作されることで表示される画面であって、端末表示用コードストックデータ２８３１に端末表示用コードが１個記憶されている場合に表示されるコード表示画面の一例である。
【０２３５】
このコード表示画面には、アクティブ記憶領域に記憶された端末表示用コードのコード画像として、バーコードで表される一次元の端末表示用コード画像と、ＱＲコードで表される二次元の端末表示用コード画像ＱＣ１とが、表示画面内の異なる領域にそれぞれ表示されている。また、限定ではなく例として、一次元の端末表示用コード画像の下には、１２桁の決済用番号が表示されている。
【０２３６】
また、このコード表示画面の下部には、コード残数ゼロ情報の一例として、「表示中のコード以外に、利用可能なコードがありません。」というメッセージが表示されている
このような表示を行うことで、端末は、表示領域に表示している第１情報以外に第１情報が記憶部に記憶されていないことを、端末のユーザに報知することができる。
【０２３７】
＜第１変形例（３）＞
第１実施例では、本開示における「第１情報（コード情報）」を、決済用番号や、決済用番号を含む端末表示用コード画像としたが、これに限定されない。例えば、認証情報の一種であるトークンや、トークンを含む端末表示用コード画像を、本開示における「第１情報（コード情報）」とすることもできる。
【０２３８】
この場合、決済用番号を端末表示用コード画像に含めるのではなく、限定ではなく例として、ランダムなトークンを発生させる手法（アルゴリズム）を用いて発行したトークンを端末表示用コード画像に含めるようにしてもよいし、そのようにしなくてもよい。この場合は、サーバ１０側で、端末２０、または端末２０のユーザを識別するための識別情報と、発行したトークンとを関連付けて記憶部１５のコード管理データベース１５９のコード管理データに記憶させておくようにすればよい。
【０２３９】
「トークン」は、限定ではなく例として、サーバ１０が、端末２０、または端末２０のユーザが、正規の端末２０、または正規の端末２０のユーザであることを認証するための認証情報の一種である。「認証情報」は、認証局が発行する情報であり、上記のトークンは、サーバ１０が認証局となって、端末２０、または端末２０のユーザを認証するために発行する認証情報として機能する。
【０２４０】
なお、トークンは、例えば、「ランダムトークン」、「アクセストークン」、「決済用トークン」などのように表現することもできる。トークンは、上記のようにランダムに発行されるため、端末表示用コードが生成される毎に異なるトークンとなる。このため、トークンは、いわばワンタイムパスワードとして機能する。
【０２４１】
また、決済用番号やトークンの他に、端末表示用コード画像を読み取った店舗コードリーダ装置５０が、サーバ１０が提供するウェブサイトやウェブページにアクセスするためのアクセス情報の一例として、サーバ１０が提供するウェブページの一種である決済用ページにアクセスするためのＵＲＬ（Uniform Resource Locator）等の情報を含めるようにしてもよいし、そのようにしなくてもよい。
【０２４２】
＜第１変形例（４）＞
第１実施例において、端末２０が端末表示用コード画像を表示部２４に表示させる場合に、限定ではなく例として、制御部２１が、表示した端末表示用コード画像を店舗コードリーダ装置５０に読み取らせるようにユーザに指示（案内）する処理を行うようにしてもよいし、そのようにしなくてもよい。この処理は、決済に関する処理の一例である。
【０２４３】
具体的には、限定ではなく例として、端末表示用コード画像を表示するコード表示画面において、端末表示用コード画像を表示させる領域とは異なる領域に、「表示されているコード画像を店舗のコードリーダで読み取ってもらってください。」といったメッセージを表示させるようにすることができる。
【０２４４】
＜第１変形例（５）＞
第１実施例では、コード残数がゼロの場合に、コード残数ゼロ情報を表示させることとしたが、これに限定されない。例えば、コード残数が一定数（例えば「１個」〜「３個」のいずれかの数）以下または未満となった場合に、端末２０が、コード残数が不足していることを示す情報、またはコード残数が不足していることを示唆する情報を表示部２４に表示させるようにしてもよいし、そのようにしなくてもよい。
【０２４５】
＜第１変形例（６）＞
第１実施例で説明した決済アプリケーションの表示画面は、あくまでも一例に過ぎず、適宜設計変更可能である。例えば、決済アプリケーションのトップ画面に、前述した「コードアイコン」とは別に、「コード（オフライン）」と示された「コード（オフライン）アイコン」を表示させる。そして、端末２０がオンライン状態であると判定した場合は、「コードアイコン」が操作された場合に端末表示用コードを表示させるようにし、端末２０がオフライン状態であると判定した場合は、「コード（オフライン）アイコン」が操作された場合に端末表示用コードを表示させるようにしてもよいし、そのようにしなくてもよい。
【０２４６】
＜第１変形例（７）＞
図３−４の処理のＡ１３０において、端末２０がサーバ１０から端末表示用コードを受信したタイミングで、Ａ２４０およびＡ２５０の処理を行って、端末表示用コードを表示部２４に表示させるようにしてもよいし、そのようにしなくてもよい。
【０２４７】
この場合、限定ではなく例として、決済アプリケーションのトップ画面（例えば図３−２）においてコードアイコンがタッチ操作された後、そのまま端末表示用コードのコード表示画面に表示が切り替わるようにすることができる。
【０２４８】
＜第２実施例＞
第２実施例は、コード残数関連情報の別例として、コード残数を示す情報、またはコード残数を示唆する情報（以下、包括的に「コード残数情報」と称する。）を端末２０の表示部２４に表示させる実施例である。
【０２４９】
第２実施例に記載の内容は、他の各実施例や他の各変形例のいずれにも適用可能である。
また、既出の構成要素と同一の構成要素については同一の符号を付して、再度の説明を省略する。
【０２５０】
本実施例におけるコード残数情報には、限定ではなく例として、
・コード残数を数字で表したもの
・コード残数を色の違いで表したもの
・コード残数を色の濃さで表したもの
・コード残数を大きさで表したもの
・コード残数を画像で表したもの
の少なくとも一つ、またはこれらの組み合わせなどを含めることができる。
【０２５１】
また、コード残数を画像で表したものには、限定ではなく例として、
・コード残数をマークやアイコン、絵等で表したもの
・コード残数をゲージで表したもの（ゲージ形式）
・コード残数をカードで表したもの（カード形式）
・コード残数をグラフで表したもの（グラフ形式）
の少なくとも一つ、またはこれらの組み合わせなどを含めることができる。
【０２５２】
例えば、図４−１２の決済アプリケーションのトップ画面において「コードアイコン」がタッチ操作された場合であって、端末表示用コードストックデータ２８３１に端末表示用コードが少なくとも１個記憶されている場合、コード表示処理部２１１３は、限定ではなく例として、以下のようなコード表示画面を表示させるようにすることができる。
【０２５３】
＜表示画面例＞
図５−１は、本実施例におけるコード表示画面の一例を示す図である。
このコード表示画面では、一次元の端末表示用コードが表示される領域の上に、コード残数を画像で表したコード残数情報の一例として、カウントされたコード残数分の、例えば矩形で表されるコード残数画像が表示されている。この表示例では、コード残数が５個であるため、５個のコード残数画像が並べて表示されている。この表示例では、コード残数を端末２０のユーザが一見して把握することができる。
【０２５４】
図５−２は、本実施例におけるコード表示画面の別例を示す図である。
このコード表示画面では、一次元の端末表示用コードが表示される領域の上に、コード残数を画像と数字の組み合わせで表したコード残数情報の一例として、二次元コードの画像と、コード残数を示す数字「×１，×２，×３，・・・」とを組み合わせた情報が表示されている。この表示例でも、コード残数を端末２０のユーザが一見して把握することができる。
【０２５５】
図５−３は、本実施例におけるコード表示画面の別例を示す図である。
このコード表示画面では、一次元の端末表示用コードが表示される領域の上に、コード残数を画像で表したコード残数情報の一例として、横方向に構成されたゲージで表されるコード残数ゲージが表示されている。
【０２５６】
コード残数ゲージは、複数の領域に分割されており、コード残数に相当する数の領域に色が付されて表示されている。この表示例では、コード残数ゲージが５つの領域に分割されており、コード残数が「４個」とカウントされたことで、左から４つ分の領域に色が付されて表示されている。この表示例でも、コード残数を端末２０のユーザが一見して把握することができる。
【０２５７】
図５−４は、本実施例におけるコード表示画面の別例を示す図である。
このコード表示画面では、図５−３と同様に、一次元の端末表示用コードが表示される領域の上に、コード残数ゲージが表示されている。この表示例では、コード残数が「５個」とカウントされたことで、左から５つ分の領域（全ての領域）に色が付されて表示されている。また、コード残数ゲージの右側には、コード残数が満タンであることを示す「ＦＵＬＬ」の文字が表示されている。
【０２５８】
図５−５は、本実施例におけるコード表示画面の別例を示す図である。
このコード表示画面では、一次元の端末表示用コードが表示される領域の上に、コード残数を画像で表したコード残数情報の一例として、顔の画像で表されるコード残数マークが表示されている。この表示例では、コード残数に関わらず同じ表情（例えば笑顔）のコード残数マークが表示されるが、コード残数に応じてその色（顔の色）が異なるように表示される。具体的には、限定ではなく例として、コード残数が少ないほど色が濃くなり、逆に、コード残数が多いほど色が薄くなるように表示される。
【０２５９】
なお、コード残数マークの色の濃さを変えるのではなく、コード残数マークの色を変えるようにしてもよいし、そのようにしなくてもよい。
例えば、コード残数が最も少ない状態を「赤色」、コード残数が最も多い状態を「青色」とし、「赤色→橙色→黄色→緑色→青色」のようにコード残数マークの色を変化させて表示するようにしてもよいし、そのようにしなくてもよい。
【０２６０】
図５−６は、本実施例におけるコード表示画面の別例を示す図である。
このコード表示画面では、上記のコード表示画面と同様に、一次元の端末表示用コードが表示される領域の上に、顔の画像で表されるコード残数マークが表示されるが、この表示例では、コード残数に応じて異なる表情のコード残数マークが表示される。具体的には、限定ではなく例として、コード残数が多いほど表情が明るくなり、逆に、コード残数が少ないほど表情が暗くなるように表示される。
【０２６１】
なお、図５−５の態様と、図５−６の態様とを組み合わせた態様で、コード残数マークを表示させるようにすることもできる。つまり、コード残数に応じて異なる表情、かつ、異なる顔の色のコード残数マークが表示されるようにすることもできる。
【０２６２】
＜処理＞
図５−７は、本実施例において、端末２０のコード表示処理部２１１３が、コード表示処理プログラム２８２３の一例である第２のコード表示処理プログラムに従って実行する第２のコード表示処理の流れの一例を示すフローチャートである。この第２のコード表示処理は、限定ではなく例として、図３−４の処理のＡ２５０のステップで実行される。
なお、第１のコード表示処理（図４−１４）と同一のステップについては同一の符号を付して、再度の説明を省略する。
【０２６３】
図５−７の処理は、第１のコード表示処理（図４−１４）のＤ１１０の後の処理を書き換えたものである。
【０２６４】
Ｄ１１０の後、コード表示処理部２１１３は、コード残数関連情報表示設定データ２８３５に記憶されているコード残数情報の表示設定を取得する（Ｅ１３０）。その後、コード表示処理部２１１３は、Ｅ１３０で取得した表示設定（例えば表示態様の設定を含む。）に基づいて、コード残数情報と、端末表示用コード画像とを含むコード表示画面を表示部２４に表示させる（Ｅ１４０）。
【０２６５】
その後、コード表示処理部２１１３は、第３表示終了条件が成立したか否かを判定する（Ｅ１９０）。第３表示終了条件は、例えば、端末２０のユーザによるコード表示画面の非表示操作を検出したことや、前述したコード表示期限が経過したこと等であってもよいし、そうでなくてもよい。
【０２６６】
第３表示終了条件が成立しないと判定した場合（Ｅ１９０：ＮＯ）、コード表示処理部２１１３は、そのまま待機する。一方、第３表示終了条件が成立したと判定した場合（Ｅ１９０：ＹＥＳ）、コード表示処理部２１１３は、第２のコード表示処理を終了する。
【０２６７】
＜第２実施例の効果＞
第２実施例は、端末表示用コードのコード画像や元情報（限定ではなく、第１情報の一例）が端末表示用コードストックデータ２８３１に記憶されている数、つまりコード残数（ストック数）を示すコード残数情報（限定ではなく、第１情報が記憶部に記憶されている数に関する情報の一例）をコード表示画面に表示する構成を示している。
このような構成により得られる効果の一例として、端末は、第１情報が記憶部に記憶されている数に関する情報を表示領域に表示することで、第１情報が記憶部に記憶されている数をユーザに報知することができる。
【０２６８】
また、この場合、第１実施例で示したコード残数ゼロ情報は、コード残数情報のうち、端末表示用コードストックデータ２８３１に記憶された端末表示用コードのコード画像や元情報の数がゼロであることを示す情報である構成を示している。
このような構成により得られる効果の一例として、端末は、第１情報が記憶部に記憶されている数とともに、記憶部に記憶された第１情報の数がゼロであることをユーザに報知することができる。
【０２６９】
また、第２実施例は、コード残数情報は、端末表示用コードストックデータ２８３１に記憶された端末表示用コードのコード画像や元情報の数に基づいて表示態様を異ならせて表示される構成を示している。
このような構成により得られる効果の一例として、端末は、記憶部に記憶された第１情報の数をユーザが容易に把握可能（一見して把握可能）に表示することができる。
【０２７０】
また、第２実施例は、端末２０は、端末表示用コード画像をコード表示画面に表示することに基づき、コード残数情報の表示態様を変更する制御を制御部２１によって実行する構成を示している。
このような構成により得られる効果の一例として、端末は、第１コード画像を表示領域に表示することに基づき、数に関する情報の表示態様を変更する制御を行うことで、第１コード画像の表示に応じて、記憶部に記憶された第１情報の数を適切にユーザに報知することができる。
【０２７１】
＜第２変形例（１）＞
第２実施例において、コード残数が比較的多い場合、コード残数情報の表示方法によっては、コード残数情報を画面内に表示しきれなかったり、見栄えが悪くなる可能性がある。そこで、表示するコード残数情報の上限数を設定するようにしてもよいし、そのようにしなくてもよい。
【０２７２】
また、この場合、コード残数が上限数を超えている場合、コード残数が上限数と同数である場合と同じ態様で、コード残数情報を表示するようにしてもよいし、そのようにしなくてもよい。例えば、上限数を「５個」と設定するのであれば、コード残数が５個を超えている場合、コード残数が５個である場合と同じ態様で、コード残数情報を表示させるようにすることができる。
【０２７３】
例えば、前述した図５−４のコード表示画面は、コード残数が「５個」の場合であり、コード残数ゲージの５つの領域（全ての領域）に色が付されて表示されるとともに、コード残数ゲージの右側に「ＦＵＬＬ」の文字が表示されている。この場合、コード残数が５個を超える場合にも、図５−４のコード表示画面と同じ態様でコード残数情報を表示するようにしてもよいし、そのようにしなくてもよい。
【０２７４】
また、これとは異なり、コード残数が５個の場合は、コード残数ゲージの５つの領域（全ての領域）に色を付して表示するが「ＦＵＬＬ」の文字は表示させないようにし、コード残数が５個を超える場合に「ＦＵＬＬ」の文字を表示させるようにしてもよいし、そのようにしなくてもよい。
【０２７５】
また、ここでは、図５−３、図５−４のゲージ形式でコード残数情報を表示する場合を例示したが、他の方式でコード残数情報を表示する場合も同様である。
【０２７６】
具体的には、例えば、コード残数を数字で表すのであれば、コード残数が上限数を超えている場合の数字を、コード残数が上限数と同数である場合と同じ数字で表すようにすればよい。
また、例えば、コード残数を色の濃さで表すのであれば、コード残数が上限数を超えている場合の色の濃さを、コード残数が上限数と同数である場合と同じ色の濃さで表すようにすればよい。
【０２７７】
＜第２変形例（２）＞
第１変形例（２）で説明したように、コード表示画面に表示される端末表示用コードは、コード残数のカウントから除外するようにすることもできる。
【０２７８】
この場合は、前述したように、端末表示用コードストックデータ２８３１に記憶されている端末表示用コードから１個の端末表示用コードを読み出して表示する際に、その端末表示用コードのデータを記憶部２８のアクティブ記憶領域に移して、端末表示用コードストックデータ２８３１から削除する。
【０２７９】
その後、端末表示用コードストックデータ２８３１に記憶されている端末表示用コードの総数をコード残数としてカウントする。このようにすることで、コード表示画面に表示される端末表示用コードは、コード残数のカウントから除外される。そして、このようにしてカウントされたコード残数に基づき、例えば図５−１〜図５−６に示したような態様でコード残数情報が表示されるようにすることができる。
【０２８０】
＜第２変形例（３）＞
第１実施例で説明したコード残数ゼロ情報の表示と、第２実施例で説明したコード残数情報の表示とを組み合わせた処理を実行するようにしてもよいし、そのようにしなくてもよい。
【０２８１】
図５−８は、本変形例において、端末２０のコード表示処理部２１１３が、コード表示処理プログラム２８２３の一例である第３のコード表示処理プログラムに従って実行する第３のコード表示処理の流れの一例を示すフローチャートである。この第３のコード表示処理は、限定ではなく例として、図３−４の処理のＡ２５０のステップで実行される。
なお、既出の処理と同一のステップについては同一の符号を付して、再度の説明を省略する。
【０２８２】
図５−８の処理は、第１のコード表示処理（図４−１４）と、第２のコード表示処理（図５−７）とを組み合わせたものである。
【０２８３】
Ｄ１１０の後、カウントしたコード残数がゼロであると判定した場合（Ｄ１２０：ＹＥＳ）、コード表示処理部２１１３は、Ｄ１３０〜Ｄ１８０の処理を行った後、第３のコード表示処理を終了する。
【０２８４】
一方、カウントしたコード残数がゼロではないと判定した場合（Ｄ１２０：ＮＯ）、コード表示処理部２１１３は、Ｅ１３０〜Ｅ１９０の処理を行った後、第３のコード表示処理を終了する。
【０２８５】
＜第２変形例（４）＞
サーバ１０によって生成される端末表示用コードに、その端末表示用コードを利用して決済を行うことのできる期限（以下、「コード有効期限」と称する。）を設定しておき、このコード有効期限の情報を端末２０のユーザが認識可能な態様で表示させるようにすることもできる。
【０２８６】
コード有効期限は、生成した端末表示用コード毎にサーバ１０側で管理される期限とすることができる。例えば、サーバ１０が端末表示用コードを生成した日時を「コード生成日時」とし、サーバ１０によって設定されるコードの有効時間を「コード有効時間」とする。この場合、限定ではなく例として、「コード生成日時からコード有効時間が経過するまでの期間」がコード有効期限として設定される。
【０２８７】
図５−９は、本変形例において各装置が実行する処理の流れの一例を示すフローチャートである。左側から順に、端末２０の制御部２１が実行する処理、店舗コードリーダ装置５０の制御部５１が実行する処理、サーバ１０の制御部１１が実行する処理の一例をそれぞれ示している。
【０２８８】
図５−９のフローチャートは、図３−４のフローチャートを一部書き換えたものである。図３−４のフローチャートとは、限定ではなく例として、Ａ３３０〜Ａ３５０、Ｂ３５０、Ｂ３６０、Ｃ３２０、Ｃ３３０、Ｃ３７０等のステップが異なる。
【０２８９】
この処理では、一例として、端末２０、または端末２０のユーザを識別するための識別情報を、前述したアプリケーションＩＤとして説明する。
【０２９０】
Ｃ１１０の後、サーバ１０の制御部１１は、端末表示用コード生成処理を行う（Ｃ３２０）。具体的には、限定ではなく例として、所定の桁数（例えば１０桁〜１２桁程度の桁数）のランダムな数字を発生させる手法（アルゴリズム）を用いて、所定の桁数のランダムな数字を決済用番号として発生させる。そして、限定ではなく例として、少なくとも決済用番号を元情報として含む端末表示用コード画像を生成する。より具体的には、少なくとも決済用番号をエンコード（符号化）し、図形化（画像化）して、二次元コード（例えばＱＲコード）の画像で表される端末表示用コード画像を生成する。
【０２９１】
また、制御部１１は、コード管理データベース１５９のうち、受信されたコード生成依頼情報に含まれるアプリケーションＩＤのコード管理データに、限定ではなく例として、時計部１９の計時情報に基づくコード生成日時と、コードＮｏと、発生させた決済用番号と、生成した端末表示用コードについて設定したコード有効期限とを関連付けて記憶させる。
【０２９２】
次いで、制御部１１は、限定ではなく例として、コードＮｏとともに、生成した端末表示用コード（この例では端末表示用コード画像）と、その端末表示用コードについて設定したコード有効期限とを、通信Ｉ／Ｆ１４によって端末２０に送信する（Ｃ３３０）。
【０２９３】
通信Ｉ／Ｆ２２によってサーバ１０から端末表示用コード（この例では端末表示用コード画像）と、コード有効期限とを受信すると（Ａ３３０）、端末２０の制御部２１は、受信された端末表示用コード（この例では端末表示用コード画像）をストックする（Ａ３４０）。具体的には、受信された端末表示用コードのコードデータと、受信されたコード有効期限とを、コード受信日時やコードＮｏと関連付けて、端末表示用コードストックデータ２８３１に記憶させる。
【０２９４】
オフライン状態において、限定ではなく例として、端末２０のユーザによってコード表示操作がなされると、コード表示処理部２１１３が、コード表示処理を行う（Ａ３５０）。
【０２９５】
具体的には、コード表示処理部２１１３は、限定ではなく例として、端末表示用コードストックデータ２８３１に記憶されている端末表示用コードのコードデータを読み出して、端末表示用コード画像を含むコード表示画面を表示部２４に表示させる。この際、コード表示処理部２１１３は、限定ではなく例として、コード残数情報と、コード有効期限の情報とを関連付けてコード表示画面に表示させる。
【０２９６】
その後、表示部２４に表示された端末表示用コード画像が端末２０のユーザによって店舗の店員等に提示されると、制御部５１は、端末２０の表示部２４に表示された端末表示用コード画像を、コードリーダ５８に読み取らせる制御を行う（Ｂ３５０）。
【０２９７】
その後、制御部５１は、前述したアプリケーションインターフェイス（ＡＰＩ）等を用いて通信Ｉ／Ｆ５４によってサーバ１０にアクセスし、少なくとも、読み取った端末表示用コード画像からデコードによって取得した決済用番号と、店舗識別情報と、決済予定金額と、端末表示用コード画像を読み取った時刻（以下、「コード読み取り時刻」と称する。）とを含む決済要求情報を、通信Ｉ／Ｆ５４によってサーバ１０に送信する（Ｂ３６０）。
【０２９８】
店舗コードリーダ装置５０から通信Ｉ／Ｆ１４によって決済要求情報を受信すると（Ｃ１６０）、制御部１１は、決済処理を行う（Ｃ３７０）。
【０２９９】
具体的には、受信された決済要求情報に含まれる決済用番号が、アプリケーションＩＤと関連付けてコード管理データベース１５９に記憶されているか否かを判定する。そして、記憶されていると判定した場合、受信された決済要求情報に含まれるコード読み取り時刻が、そのアプリケーションＩＤのコード管理データにおける、その決済用番号と関連付けて記憶されているコード有効期限内であるか否かを判定する。そして、この条件を満たす場合は「決済可能」と判定し、決済管理データベース１５７Ａのうち、そのアプリケーションＩＤの決済管理データに記憶されている残高から決済予定金額を減算して決済する。
【０３００】
図５−１０は、本変形例におけるコード表示画面の一例を示す図である。このコード表示画面は、限定ではなく例として、図５−９の処理のＡ３５０で表示される。
このコード表示画面では、図５−１のコード表示画面と同様に、一次元の端末表示用コードが表示される領域の上に、カウントされたコード残数分の、例えば矩形で表されるコード残数画像が表示されている。ただし、図５−１のコード表示画面とは異なり、それぞれの端末表示用コードに対応するコード残数画像の色の濃さが、対応する端末表示用コードに関連付けられたコード有効期限に基づく濃さで表示されている。
【０３０１】
この場合、コード表示処理部２１１３は、限定ではなく例として、コード有効期限の残り時間が短い端末表示用コードに対応するコード残数画像ほど、色を薄くして表示させる。逆に、コード有効期限の残り時間が長い端末表示用コードに対応するコード残数画像ほど、色を濃くして表示させる。
【０３０２】
なお、コード有効期限に基づいてコード残数画像の色の濃さを変えるのではなく、コード有効期限に基づいてコード残数画像の色を変えるようにしてもよいし、そのようにしなくてもよい。例えば、コード有効期限の残り時間が短い順に「赤色→橙色→黄色→緑色→青色」のようにコード残数画像の色を変えるようにすることができる。
【０３０３】
このようにすることで、端末は、記憶部に記憶されている第１情報（コード情報）の数とともに、それぞれの第１情報（コード情報）に関連付けられている有効期限の情報（例えば有効期限の残り時間）を端末のユーザに報知することができる。
【０３０４】
この手法は、例えば、端末表示用コードを時間をずらしてサーバ１０から取得した場合や、端末表示用コードを時間をずらしてサーバ１０から補充したような場合に、それぞれの端末表示用コードの有効期限の情報を端末のユーザが一見して把握可能となるため、有用である。
【０３０５】
なお、上記の処理では、サーバ１０から、端末表示用コードと、コード有効期限（限定ではなく、有効期限に関する情報の一例）とが端末２０に送信され、これを端末２０で受信することとしたが、これに限定されない。
【０３０６】
具体的には、限定ではなく例として、端末２０の決済アプリケーションデータ２８３に、あらかじめコード有効時間を記憶させておく。そして、限定ではなく例として、コード生成日時（限定ではなく、有効期限に関する情報の一例）がサーバ１０から送信されるようにし、端末２０が、サーバ１０からコード生成日時を受信するようにしてもよいし、そのようにしなくてもよい。この場合、端末２０は、受信されたコード生成日時と、決済アプリケーションデータ２８３に記憶されているコード有効時間とに基づいて、コード有効期限を特定することができる。
【０３０７】
また、コード有効期限が開始する日時をコード生成日時とするのではなく、サーバ１０から端末２０に端末表示用コードが送信された日時（以下、「コード送信日時」と称する。）とすることもできる。この場合、端末２０は、限定ではなく例として、コード送信日時と、決済アプリケーションデータ２８３に記憶されているコード有効時間とに基づいて、コード有効期限を特定することができる。
【０３０８】
また、この他にも、限定ではなく例として、コード有効期限が終了する日時の情報が、有効期限に関する情報としてサーバ１０から端末２０に送信されるようにする。そして、端末２０が、コード有効時間と、受信されたコード有効期限が終了する日時とに基づいて、コード有効期限を特定するようにすることもできる。
【０３０９】
また、端末表示用コードに関連付けられたコード有効期限はサーバ１０から端末２０に送信されないようにし、端末２０側では、サーバ１０で設定されたコード有効期限が分からないようにしてもよい。この場合、端末表示用コードストックデータ２８３１には、コード有効期限を記憶させず、限定ではなく例として、コード受信日時と、コードＮｏと、コードデータとを関連付けて記憶させるようにすることができる。
【０３１０】
また、この場合、端末２０側で、仮のコード有効期限（以下、「仮コード有効期限」と称する。）を設定するようにしてもよいし、そのようにしなくてもよい。具体的には、限定ではなく例として、「コード受信日時（またはコード記憶日時）からコード有効時間が経過するまでの期間」を仮コード有効期限として設定するようにしてもよいし、そのようにしなくてもよい。
【０３１１】
＜第３実施例＞
第２実施例では、コード表示画面にコード残数情報を表示させたが、前述したように、コード残数のカウント方法には２通りがある。このため、ユーザにとっては、コード表示画面に表示されている端末表示用コードが、コード残数情報から認識されるコード残数に含まれているのか、それとも含まれていないのか、分かりにくいという問題がある。
【０３１２】
第３実施例に記載の内容は、他の各実施例や他の各変形例のいずれにも適用可能である。
また、既出の構成要素と同一の構成要素については同一の符号を付して、再度の説明を省略する。
【０３１３】
図６−１は、本実施例におけるコード表示画面の一例を示す図である。
このコード表示画面では、一次元の端末表示用コード画像が表示される領域の上に、カウントされたコード残数分の、例えば内部に数字が付された矩形で表される第１のガイド画像が表示されている。
【０３１４】
この表示例では、５個の第１のガイド画像が表示されており、限定ではなく例として、一番左に表示された第１のガイド画像の色が黒色に変化し、手前側に浮き上がった状態として強調表示されている。また、残りの４個の第１のガイド画像はデフォルトの状態で表示されている。残りの４個の第１のガイド画像のいずれかをタッチ操作すると、その第１のガイド画像に対応する端末表示用コード画像が画面中央に表示される。
【０３１５】
図６−２は、本実施例におけるコード表示画面の別例を示す図である。
このコード表示画面では、一次元の端末表示用コード画像が表示される領域の上に、カウントされたコード残数分の、例えば二次元コードを模式化（模擬）した第２のガイド画像が表示されている。
【０３１６】
この表示例では、５個の第２のガイド画像が表示されており、いずれかの第２のガイド画像がユーザによってタッチ操作されると、限定ではなく例として、タッチ操作された第２のガイド画像に対応する端末表示用コードのデータに基づき、アニメーションによって、端末表示用コード画像が画面中央に表示される。
【０３１７】
この表示例では、一番左の第２のガイド画像がタッチ操作されたことで、この一番左の第２のガイド画像の表示位置を基準として、端末表示用コード画像を含む画像全体が、表示部２４の表示画面のサイズに基づく規定サイズとなるように徐々に拡大処理されていき、最終的に、規定サイズとなった時点で拡大処理が終了して、図６−２の図面右に示した状態で表示される。また、拡大処理が終了すると、対応する第２のガイド画像の表示は消去された上で、残りの４個の第２のガイド画像が左に詰めて表示される。
【０３１８】
なお、この例のように、表示させた端末表示用コード画像に対応するガイド画像の表示を消去した上で、残りのガイド画像を詰めて表示させるのではなく、表示させた端末表示用コード画像に対応するガイド画像の表示は消去するが、残りのガイド画像は詰めずにそのまま同じ位置に表示させるようにしてもよいし、そのようにしなくてもよい。
【０３１９】
図６−３は、本実施例におけるコード表示画面の別例を示す図である。
このコード表示画面では、図６−２のコード表示画面と同様に、一次元の端末表示用コード画像が表示される領域の上に、カウントされたコード残数分の、例えば矩形で表される第３のガイド画像が表示されているが、この例では、タッチ操作された第３のガイド画像はそのままの状態（アクティブ状態）で表示され、残りの第３のガイド画像は非アクティブ状態に変化して表示される点が異なる。
【０３２０】
具体的には、この表示例では、５個の第３のガイド画像が表示されており、いずれかの第３のガイド画像がユーザによってタッチ操作されると、図６−２と同様に、タッチ操作された第３のガイド画像に対応する端末表示用コードのデータに基づき、アニメーションによって、端末表示用コード画像が画面中央に表示される。
【０３２１】
この表示例では、一番左の第３のガイド画像がタッチ操作されたことで、この一番左の第３のガイド画像の表示位置を基準として、端末表示用コード画像を含む画像全体が、表示部２４の表示画面のサイズに基づく規定サイズとなるように徐々に拡大処理されていき、最終的に、規定サイズとなった時点で拡大処理が終了して、図６−３の図面右に示した状態で表示される。また、タッチ操作された一番左の第３のガイド画像はそのままの状態（アクティブ状態）で表示され、残りの４個の第３のガイド画像は非アクティブ状態に変化して表示される。
【０３２２】
なお、上記の第２のガイド画像や第３のガイド画像は、あくまでも二次元のコード画像（例えばＱＲコードの画像）を模擬したアイコン（マーク）であって、本物のコード画像ではない。このため、当然ではあるが、これらのガイド画像をコードリーダで読み取ることはできず、決済に利用することはできない。
【０３２３】
図６−４は、本実施例におけるコード表示画面の別例を示す図である。
このコード表示画面では、端末表示用コードストックデータ２８３１に記憶されている複数の端末表示用コード（端末表示用コード画像）を、限定ではなく例として、端末２０のユーザがスワイプ操作を行うことによって、スライド式に切替表示可能に構成されている。
【０３２４】
具体的には、限定ではなく例として、一次元の端末表示用コード画像が表示される領域の上に、端末表示用コードストックデータ２８３１に記憶されている端末表示用コードと同数（つまりコード残数（ストック数）と同数）の、例えば丸（○）で表される第４のガイド画像が横方向に並べて表示されている。
【０３２５】
第４のガイド画像は、限定ではなく例として、左から順に、１番目の端末表示用コード、２番目の端末表示用コード、３番目の端末表示用コード、・・・、にそれぞれ対応しており、対応する端末表示用コードのコード画像が画面中央に表示された際に、白色で表されていた第４のガイド画像が黒色に変化して表示される。
【０３２６】
この表示例では、コード残数（ストック数）が５個であることにより、５個の端末表示用コードがスライド式に切替表示可能に構成されており、それぞれに対応する５個の丸で表される第４のガイド画像が表示されている。
【０３２７】
図面左は、二次元の端末表示用コード画像ＱＣ１を含む１個目のコード画像が表示された状態を示しており、左から１番目の第４のガイド画像が黒丸で表示され、その他の第４のガイド画像は白丸で表示されている。
図面中央は、端末２０のユーザが表示画面をタッチ操作した後、その位置から左方向にスワイプ操作した状態を示している。左方向にスワイプ操作することで、二次元の端末表示用コード画像ＱＣ１を含む１番目のコード画像の表示が、二次元の端末表示用コード画像ＱＣ２を含む２つ目の端末表示用コードの表示に切り替わる。
図面右は、このスワイプ操作によって二次元の端末表示用コード画像ＱＣ２を含む２つ目の端末表示用コードが表示された状態を示しており、左から２番目の第４のガイド画像が黒丸で表示され、その他の第４のガイド画像は白丸で表示されている。
【０３２８】
上記に例示した各種のガイド画像は、コード残数情報（限定ではなく、第１情報が記憶部に記憶されている数に関する情報の一例）であるとともに、表示される端末表示用コード画像や元情報（限定ではなく、第１情報の一例）との対応関係を端末２０のユーザに案内する（知らせる）ための案内情報（ガイド情報）の一例である。
【０３２９】
なお、上記の表示例におけるガイド画像・端末表示用コード画像の表示の順序は、限定ではなく例として、左から順に、端末表示用コードストックデータ２８３１に記憶されている端末表示用コードのうち、その取得が古い順とすることができる。
【０３３０】
ただし、表示の順序はこれに限定されるわけではなく、例えば、左から順に、端末表示用コードストックデータ２８３１に記憶されている端末表示用コードのうち、その取得が新しい順に表示させるようにしてもよいし、そのようにしなくてもよい。
また、完全にランダムな順序で表示させるようにしてもよいし、そのようにしなくてもよい。
【０３３１】
＜第３実施例の効果＞
第３実施例は、端末２０の表示部２４に表示されるコード表示画面において、コード残数に基づくガイド画像（限定ではなく、数に関する情報の一例）が表示され、このガイド画像の表示位置を基準として、端末表示用コード画像を含む全体的な画像が、表示部２４の表示画面いっぱいのサイズとなるように徐々に拡大され（限定ではなく、数に関する情報が表示領域に表示された位置に近い第１領域に第１コード画像を表示することの一例）、最終的に、表示部２４の表示画面いっぱいのサイズとなった時点で拡大が終了して端末表示用コード画像が表示される（限定ではなく、第１領域に第１コード画像が表示された後、数に関する情報が表示領域に表示された位置から第１領域よりも遠い第２領域に第１コード画像を表示することの一例）構成を示している。
このような構成により得られる効果の一例として、端末は、第１情報が記憶部に記憶されている数に関する情報と、表示される第１情報との対応関係を端末のユーザが容易に把握可能（認識可能）に表示することができる。
【０３３２】
＜第３変形例（１）＞
第３実施例では、コード表示画面に表示される端末表示用コードが、コード残数のカウントに含まれる場合の表示方法を例示したが、コード表示画面に表示される端末表示用コードをコード残数のカウントから除外する場合も同様である。
【０３３３】
第２変形例（２）で説明したように、コード表示画面に表示される端末表示用コードをコード残数のカウントから除外して、コード残数情報を表示させる手法も考えられる。
この場合、コード表示画面に表示されている端末表示用コード（コード画像）がコード残数に含まれていないことをユーザに報知する必要がある。そこで、限定ではなく例として、以下のような表示を行うようにすることができる。
【０３３４】
例えば図６−１のように、矩形のガイド画像を表示させる手法を適用するのであれば、制御部２１は、限定ではなく例として、ストックされている一の端末表示用コードのコード画像をコード表示画面の画面中央に表示させるとともに、表示させた一の端末表示用コードを除外してカウントしたコード残数分のガイド画像を表示させる。この際、制御部２１は、ガイド画像を、全てデフォルトの状態で表示させる（いずれのガイド画像も強調表示させない）。
【０３３５】
また、例えば図６−２や図６−３のように、二次元コードを模擬したガイド画像を表示させる手法を適用するのであれば、制御部２１は、限定ではなく例として、一の端末表示用コードのコード画像をコード表示画面の画面中央に表示させるとともに、表示させた一の端末表示用コードを除外してカウントしたコード残数分のガイド画像を表示させる。この際、制御部２１は、ガイド画像を、全て非アクティブ状態で表示させる（いずれのガイド画像もアクティブ状態で表示させない）。
【０３３６】
より具体的には、例えば、コード表示画面に表示させた端末表示用コードを除外してカウントしたコード残数が「５個」である場合、上記のような表示態様で「５個」のガイド画像をコード表示画面に表示させるようにする。
【０３３７】
このようにすることで、表示されている端末表示用コード画像がガイド画像とは対応していないこと（対応関係にないこと）をユーザが認識可能となり、その結果、表示中のコード（コード画像）はコード残数に含まれていないことをユーザは把握することができる。
【０３３８】
＜第３変形例（２）＞
本開示における端末表示用コードは、前述したように、オンライン状態ばかりでなく、オフライン状態でも利用することができる。オンライン状態であれば、端末２０は、サーバ１０によって決済が行われた後、すぐにサーバ１０から端末用決済完了通知を受信することができる。このため、端末２０は、限定ではなく例として、端末用決済完了通知を受信した後、決済に利用した端末表示用コードのデータを端末表示用コードストックデータ２８３１から削除することができる。
【０３３９】
しかしながら、オフライン状態では、端末２０は、オンライン状態に復帰するまでは、サーバ１０から端末用決済完了通知を受信することができないため、サーバ１０によって決済が行われたかどうかを知ることができない。このため、オフライン状態において、例えば端末２０のユーザが、コード表示画面に表示された一の端末表示用コードを決済に使用したとしても（店舗コードリーダ装置５０に読み取らせたとしても）、端末２０は、その端末表示用コードを削除することはできない。よって、例えば、端末２０のユーザが、一度決済に使用した端末表示用コードをコード表示画面に再表示させて、再び決済に使用しようとするおそれがある。
【０３４０】
そこで、例えば図６−４に示したコード表示画面において、端末２０の制御部２１が、ユーザのスワイプ操作を検知し、次の端末表示用コード画像に表示を切り替えた場合、切り替える前に表示していた端末表示用コードのデータを削除（破棄）するなどして、再表示することができないようにしてもよいし、そのようにしなくてもよい。
【０３４１】
なお、これは、他の表示方法（例えば図６−１〜図６−３の表示方法）についても同様である。つまり、一旦表示して非表示とした端末表示用コードについては、そのデータを削除するなどして、再表示することができない（つまり決済に使用することができない）ようにすることができる。
【０３４２】
また、他の手法として、次のようにすることもできる。
端末２０は、オンライン状態であることを検出した場合、一旦表示して非表示とした端末表示用コードは削除せずに再表示することを可能とする。
それに対し、端末２０は、オフライン状態であることを検出した場合、一旦表示して非表示とした端末表示用コードは削除して再表示することができないようにする。
【０３４３】
＜第３変形例（３）＞
前述した各種のコード残数情報の表示方法の他にも、限定ではなく例として、いわゆる日めくりカレンダーのように、一の端末表示用コードが表示されたページを端末２０のユーザがスワイプ操作（例えば下から上へのスワイプ操作）によってめくる操作を行うと、次の端末表示用コードが表示されたページが現れるような表示方法を適用することもできる。
【０３４４】
また、この場合、第３変形例（２）と同様に、一旦ページをめくると、前のページに表示させていた端末表示用コードのデータは削除するなどして再表示することができないようにしてもよいし、そのようにしなくてもよい。
【０３４５】
＜第３変形例（４）＞
第３実施例では、ガイド画像に対するタッチ操作をトリガーとして、端末表示用コード画像を表示させる例を示したが、これに限定されない。具体的には、前述した各種のガイド画像を、あくまでもコード残数（ストック数）を示す情報（コード残数情報）とし、ガイド画像に対するタッチ操作とは異なる操作をトリガーとして、端末表示用コード画像を表示させるようにしてもよいし、そのようにしなくてもよい。
【０３４６】
端末２０は、限定ではなく例として、決済アプリケーションのトップ画面に表示されるコードアイコンがタッチ操作されたことに基づいて、コード残数分のコード画像を含むコード表示画面を表示させる。この際、限定ではなく例として、コード情報（コード画像や元情報を含む。）の表示・切替を行うボタンや、ページの表示・切替を行うボタン等の操作用画像も、コード表示画面に表示させる。
【０３４７】
そして、端末２０は、上記の操作用画像に対する操作（例えばタッチ操作）を検知する度に、限定ではなく例として、ガイド画像に対応する端末表示用コードの中から、ランダムな順や取得が古い順に端末表示用コード画像を表示させるとともに、ガイド画像の表示態様を変更する。
【０３４８】
＜第４実施例＞
第４実施例は、端末２０でストックされた端末表示用コードのストックの補充、及び、そのユーザインターフェイスに関する実施例である。
【０３４９】
第４実施例に記載の内容は、他の各実施例や他の各変形例のいずれにも適用可能である。
また、既出の構成要素と同一の構成要素については同一の符号を付して、再度の説明を省略する。
【０３５０】
＜処理＞
図７−１は、本実施例における各装置が実行する処理の流れの一例を示すフローチャートである。左側に、端末２０の制御部２１が実行する第１の端末側コード補充処理を示し、右側に、サーバ１０の制御部１１が実行する第１のサーバ側コード補充処理を示す。
【０３５１】
これらの処理は、限定ではなく例として、前述した端末２０の決済アプリケーション処理と、前述したサーバ１０の決済管理処理とのそれぞれのサブ処理として実行される（例えばバックグラウンドで実行される）処理である。
【０３５２】
最初に、制御部２１は、コード補充条件判定処理を行う（Ｆ１１０）。コード補充条件としては、例えば以下のような条件を定めておくことができる。
（１）コード残数ゼロ情報を表示＆承認操作を検知したこと。
（２）コード補充操作を検知したこと。
（３）端末の電磁波環境（通信環境）が変化したこと。
（４）コードの更新タイミングや更新時刻となったこと。
【０３５３】
（１）の条件は、制御部２１がコード残数ゼロ情報を表示部２４に表示させた後、そのコード残数ゼロ情報に対する端末２０のユーザによる承認操作を検知した場合に、コードを補充することを示す条件である。
なお、承認操作の検知を条件に含めないようにしてもよい。具体的には、制御部２１がコード残数ゼロ情報を表示部２４に表示させた場合に、自動的にコードを補充するようにしてもよいし、そのようにしなくてもよい。
【０３５４】
（２）の条件は、端末２０のユーザによるコードを補充するための操作（以下、「コード補充操作」と称する。）を検知した場合に、コードを補充することを示す条件である。
【０３５５】
（３）の条件は、端末２０の電磁波環境（通信環境）が変化した場合に、コードを補充することを示す条件である。なお、一般的に通信には電波が使用されるため、電磁波環境の変化ではなく、電波環境の変化としてもよい。
【０３５６】
限定ではなく例として、電磁波の強さに基づき、端末２０の電磁波環境が「中電磁波環境」から「弱電磁波環境」に変化したことを検知した場合に、オフライン状態となる可能性があるため、端末表示用コードを補充するようにすることができる。
【０３５７】
（４）の条件は、例えば定期的なタイミング（例えば１２時間や２４時間に１回）や、特定の時刻（例えば深夜０時）となった場合に、コードを補充することを示す条件である。
【０３５８】
Ｆ１１０では、制御部２１は、限定ではなく例として、例えば上記の複数のコード補充条件のうちの少なくともいずれか１つの条件が成立したか否かを判定する。
【０３５９】
なお、上記のコード補充条件は、あくまでも一例を示したものに過ぎず、これら以外の条件を定めておくようにすることもできる。
また、限定ではなく例として、上記のコード補充条件のうちの２以上の条件を組み合わせた条件を、コード補充条件として定めておくようにすることもできる。
また、限定ではなく例として、上記のコード補充条件のうちのいずれの条件を適用するかを、端末２０のユーザに選択させるなどして設定しておくようにすることもできる。
【０３６０】
コード補充条件が成立したと判定したならば（Ｆ１２０：ＹＥＳ）、制御部２１は、オンライン状態であるか否かを判定する（Ｆ１３０）。そして、オンライン状態であると判定したならば（Ｆ１３０：ＹＥＳ）、制御部２１は、限定ではなく例として、少なくともアプリケーションＩＤを含むコード補充依頼情報を、通信Ｉ／Ｆ２２によってサーバ１０に送信する（Ｆ１４０）。
【０３６１】
なお、コード補充依頼情報に代えて、先に説明したコード生成依頼情報を端末２０からサーバ１０に送信するようにしてもよいし、そのようにしなくてもよい。
【０３６２】
サーバ１０の制御部１１は、端末２０からコード補充依頼情報を受信したか否かを判定する（Ｇ１１０）。そして、受信したと判定したならば（Ｇ１１０：ＹＥＳ）、端末表示用コード生成処理を行う（Ｇ１２０）。そして、制御部２１は、生成した端末表示用コードを、通信Ｉ／Ｆ１４によって端末２０に送信する（Ｇ１５０）。
【０３６３】
その後、制御部１１は、処理を終了するか否かを判定し（Ｇ１９０）、処理を継続すると判定したならば（Ｇ１９０：ＮＯ）、Ｇ１１０に処理を戻す。また、処理を終了すると判定したならば（Ｇ１９０：ＹＥＳ）、第１のサーバ側コード補充処理を終了する。
【０３６４】
また、端末２０からコード生成依頼情報を受信しなかった場合（Ｇ１１０：ＮＯ）、制御部１１は、Ｇ１９０へと処理を移す。
【０３６５】
通信Ｉ／Ｆ２２によってサーバ１０から端末表示用コードを受信すると（Ｆ１５０）、制御部２１は、受信された端末表示用コードを端末表示用コードストックデータ２８３１に追加・記憶させる（Ｆ１６０）。
【０３６６】
その後、制御部２１は、コード補充通知処理を行う（Ｆ１７０）。このコード補充通知処理では、端末表示用コードのストックが補充されたことを通知する情報（以下、「コード補充通知情報」と称する。）を表示部２４に表示させる処理を行う。
【０３６７】
具体的には、限定ではなく例として、決済アプリケーションを実行中ではない場合は、コード補充通知情報を、決済アプリケーションと関連付けられたプッシュ通知によって表示部２４に表示する。
一方、決済アプリケーションを実行中である場合は、コード補充通知情報を、決済アプリケーション内の画面（例えばコード表示画面）に表示させる。
【０３６８】
その後、制御部２１は、処理を終了するか否かを判定し（Ｆ１９０）、処理を継続すると判定したならば（Ｆ１９０：ＮＯ）、Ｆ１１０に処理を戻す。また、処理を終了すると判定したならば（Ｆ１９０：ＹＥＳ）、第１の端末側コード補充処理を終了する。
【０３６９】
また、コード補充条件が成立しないと判定された場合（Ｆ１２０：ＮＯ）、または、オンライン状態ではないと判定された場合（Ｆ１３０：ＮＯ）、制御部１１は、Ｆ１９０へと処理を移す。
【０３７０】
なお、コード補充依頼情報は、１個の端末表示用コードの補充を依頼する情報としてもよいが、複数（２以上）の端末表示用コードの補充を依頼する情報としてもよい。具体的には、限定ではなく例として、端末表示用コードを１つ１つ補充するようにするのではなく、端末２０側またはサーバ１０側で、端末２０が一度に補充を依頼するコードの数（サーバ１０が補充用に一度に生成するコードの数）の上限を設定しておく。そして、この上限の数の端末表示用コードを、端末２０のユーザが１回の操作で一気に補充するようにしてもよい。この場合、サーバ１０によって複数の端末表示用コードが生成され、生成された複数の端末表示用コードが端末２０に送信されて、受信された複数の端末表示用コードを端末２０で補充するようにすればよい。
【０３７１】
＜表示画面例＞
図７−２は、本実施例におけるコード表示画面の一例を示す図である。
このコード表示画面には、図６−３のコード表示画面と同様に、一次元の端末表示用コード画像が表示される領域の上に、コード残数情報の一例として、二次元コードを模式化したガイド画像が表示されている。また、ガイド画像が表示される領域の右には、端末２０のユーザがコード補充操作を行うための操作用画像の一例として、「＋」の文字が内部に描かれた丸で示されるコード補充アイコンが表示されている。このコード補充アイコンが端末２０のユーザによってタッチ操作されると、上記の処理によって、端末表示用コードのストックが補充される。
【０３７２】
図７−３は、本実施例におけるコード補充通知の一例を示す図である。
このコード表示画面では、コード補充通知の一例として、「コードストック追加  コードのストックが１個追加されました。」というメッセージが、ＯＫのアイコンとともに画面中央にポップアップ表示されている。
【０３７３】
図７−４は、図７−３においてＯＫのアイコンがタッチ操作された場合に表示される画面の一例を示す図である。
このコード表示画面では、端末表示用コードのストックが１個補充されたことで、図７−１のコード表示画面で表示されていたガイド画像の右側に、補充された１個の端末表示用コードに対応する１個のガイド画像が追加表示されている。また、追加表示された１個の端末表示用コードに対応するガイド画像は、非アクティブ状態で表示されている。
【０３７４】
これは、コード補充依頼情報として、１個の端末表示用コードの補充を依頼する情報が端末２０からサーバ１０に送信され、サーバ１０によって１個の端末表示用コードが生成され、生成された１個の端末表示用コードが端末２０に送信されて、受信された１個の端末表示用コードが端末２０で補充された場合の表示画面例である。
【０３７５】
図７−５は、本実施例におけるコード補充通知の一例を示す図である。
このコード表示画面では、コード補充通知の一例として、「コードストック追加  コードのストックが４個追加されました。」というメッセージが、ＯＫのアイコンとともに画面中央にポップアップ表示されている。
【０３７６】
図７−６は、図７−５においてＯＫのアイコンがタッチ操作された場合に表示される画面の一例を示す図である。
このコード表示画面では、端末表示用コードのストックが４個補充されたことで、図７−１のコード表示画面で表示されていたガイド画像の右側に、補充された４個の端末表示用コードに対応する４個のガイド画像が追加表示されている。また、追加表示された４個の端末表示用コードに対応するガイド画像は、非アクティブ状態で表示されている。
【０３７７】
これは、コード補充依頼情報として、４個の端末表示用コードの補充を依頼する情報が端末２０からサーバ１０に送信され、サーバ１０によって４個の端末表示用コードが生成され、生成された４個の端末表示用コードが端末２０に送信されて、受信された４個の端末表示用コードが端末２０で補充された場合の表示画面例である。
【０３７８】
なお、この他にも、例えば端末２０のユーザがコード補充操作を行ってコードを補充する場合に、補充するコード数を端末２０のユーザに選択させるようにすることもできる。
【０３７９】
図７−７は、この場合におけるコード表示画面の一例を示す図である。
このコード表示画面では、「コードストック追加  ストックするコード数を選択してください。」というメッセージとともに、補充するコード数を端末２０のユーザが選択するための「選択してください。」の文字が入力されたボックスとが表示されている。
【０３８０】
「選択してください。」の文字が入力されたボックスをタッチ操作すると、例えば図７−８に示すように、限定ではなく例として、補充するコード数をドラムロール式で選択可能とする、複数のコード数の候補を含むドラムロールが表示される。例えば、端末２０のユーザによって「２個」が選択されると、例えば図７−９に示すようにボックス内に「２個」が入力されて表示され、「ＯＫ」のアイコンがタッチ操作されることで、２個のコードが補充される。
【０３８１】
図７−１０は、図７−９においてＯＫのアイコンがタッチ操作された場合に表示される画面の一例を示す図である。
このコード表示画面では、端末表示用コードのストックが２個補充されたことで、図７−１のコード表示画面で表示されていたガイド画像の右側に、補充された２個の端末表示用コードに対応する２個のガイド画像が追加表示されている。また、追加表示された２個の端末表示用コードに対応するガイド画像は、非アクティブ状態で表示されている。
【０３８２】
＜第４実施例の効果＞
第４実施例は、端末２０が、通信Ｉ／Ｆ２２を介した端末表示用コードの受信に基づいて、コード残数情報の表示態様を制御部２１によって変更する構成を示している。
このような構成により得られる効果の一例として、端末は、第１情報が記憶部に記憶されている数に関する情報の表示態様を変更することで、例えば、通信部を介して第１情報が補充されたことを端末のユーザに報知することができる。
【０３８３】
また、第４実施例は、端末２０が、通信Ｉ／Ｆ２２を介した端末表示用コードの受信に基づいて、コード補充通知（限定ではなく、第１情報を受信したことを示す通知の一例）を端末２０のユーザに制御部２１によって行う構成を示している。
このような構成により得られる効果の一例として、端末は、第１情報を受信したことを端末のユーザに対して通知することができる。
【０３８４】
また、第４実施例は、端末２０が、コード残数関連情報（限定ではなく、第２情報の一例）の表示部２４への表示に基づき、コード生成依頼情報またはコード補充依頼情報（限定ではなく、第１情報の送信に関するリクエストの一例）を、通信Ｉ／Ｆ２２を介してサーバ１０に送信する構成を示している。
このような構成により得られる効果の一例として、端末は、第２情報の表示に基づき、第１情報の送信に関するリクエストをサーバに送信して、サーバから第１情報を取得することができる。
【０３８５】
＜第５実施例＞
第５実施例は、オフライン状態からの端末表示用コードのストックの補充を実現する実施例である。
【０３８６】
第５実施例に記載の内容は、他の各実施例や他の各変形例のいずれにも適用可能である。
また、既出の構成要素と同一の構成要素については同一の符号を付して、再度の説明を省略する。
【０３８７】
本実施例では、前述した第１通信方式により端末２０とサーバ１０とが通信不能であることを「オフライン状態」とする。また、前述した第２通信方式を利用することで、端末２０はサーバ１０と通信することができることとする。
【０３８８】
＜処理＞
図８−１、図８−２は、本実施例における各装置が実行する処理の流れの一例を示すフローチャートである。左側に、端末２０の制御部２１が実行する第２の端末側コード補充処理を示し、右側に、サーバ１０の制御部１１が実行する第１のサーバ側コード補充処理を示す。
これらの処理は、限定ではなく例として、前述した端末２０の決済アプリケーション処理と、前述したサーバ１０の決済管理処理とのそれぞれのサブ処理として実行される（例えばバックグラウンドで実行される）処理である。
【０３８９】
図８−１、図８−２のフローチャートは、図７−１のフローチャートに、Ｆ１３０：ＮＯの場合における処理（Ｆ２１０〜Ｆ２８０）を追加したものである。
【０３９０】
Ｆ１３０においてオンライン状態ではないと判定したならば（Ｆ１３０：ＮＯ）、制御部２１は、コード残数がゼロであるか否かを判定する（Ｆ２１０）。
【０３９１】
コード残数がゼロであると判定したならば（Ｆ２１０：ＹＥＳ）、制御部２１は、コード残数ゼロ通知と、オフライン通知とを行う（Ｆ２２０）。具体的には、限定ではなく例として、コード残数ゼロ情報とともに、第１通信方式によるサーバ１０との通信が不能（オフライン状態）であることを示す情報を表示部２４に表示させる。
【０３９２】
一方、コード残数がゼロではないと判定したならば（Ｆ２１０：ＮＯ）、制御部２１は、オフライン通知とを行う（Ｆ２３０）。具体的には、限定ではなく例として、第１通信方式によるサーバ１０との通信が不能（オフライン状態）であることを示す情報を表示部２４に表示させる。
【０３９３】
Ｆ２２０またはＦ２３０の後、制御部２１は、第２通信方式によるコード補充確認通知を行う（Ｆ２４０）。具体的には、限定ではなく例として、第２通信方式で通信を行って、端末表示用コードの補充を行うか否かを端末２０のユーザに意思確認するための情報を表示部２４に表示させる。
【０３９４】
次いで、制御部２１は、第２通信方式によるコード補充を行うことが端末２０のユーザによって選択されたか否かを判定し（Ｆ２５０）、選択されたと判定したならば（Ｆ２５０：ＹＥＳ）、第２通信方式による通信を試行する（Ｆ２６０）。
【０３９５】
第２通信方式による通信に成功したならば（Ｆ２７０：ＹＥＳ）、制御部２１は、コード補充処理を行う（Ｆ２８０）。具体的には、前述したコード補充依頼情報をサーバ１０に送信して、サーバ１０から端末表示用コードを取得して、端末表示用コードストックデータ２８３１に記憶させて補充する。そして、制御部２１は、Ｆ１９０へと処理を移す。
【０３９６】
なお、第２通信方式によるコード補充を行うために、限定ではなく例として、決済アプリケーションと連携可能なアプリケーションとして、例えば第２通信方式の一例である無線ＬＡＮ（例えばＷｉＦｉ（登録商標））を利用可能な店舗や施設等の場所（スポット）を検索するための検索アプリケーションを、あらかじめ端末２０でダウンロードして記憶部２８に記憶しておく。
【０３９７】
そして、例えば、Ｆ２４０の第２通信方式によるコード補充確認通知を行った結果、第２通信方式によるコード補充を行うことが端末２０のユーザによって選択された場合に、制御部２１が、端末２０に記憶されている検索アプリケーションを起動し、第２通信方式を利用可能なスポットを検索する処理を行うようにしてもよいし、そのようにしなくてもよい。
【０３９８】
＜表示画面例＞
図８−３は、本実施例におけるコード表示画面の一例を示す図である。このコード表示画面では、限定ではなく例として、図８−２のＦ２２０で表示される。
このコード表示画面では、コード残数ゼロ情報の一例として「コード残数がありません」というメッセージと、第１通信方式によるサーバ１０との通信が不能であることを示す情報の一例として「現在オフラインです。オンラインになるとストックが補充されます。」というメッセージとが、コード残数ゼロ通知及びオフライン通知として、画面中央にポップアップ表示されている。また、この通知内容に承認の意思を示すための「ＯＫ」のアイコンが表示されている。
【０３９９】
図８−４は、図８−３のコード表示画面において「ＯＫ」のアイコンがタッチ操作された場合に表示される画面の一例を示す図である。この画面は、限定ではなく例として、図８−２のＦ２４０で表示される。
この画面では、第２通信方式で通信を行って端末表示用コードの補充を行うか否かを端末２０のユーザに意思確認するための情報の一例として「ワイヤレスネットワークに接続してコードを取得しますか？」というメッセージが、第２通信方式によるコード補充確認通知として画面中央にポップアップ表示されている。また、この通知内容に承認の意思を示すための「ＯＫ」のアイコンと、この通信内容に今は承認しない意思を示すための「今はしない」のアイコンとが表示されている。
【０４００】
図８−４において「ＯＫ」のアイコンがタッチ操作されると、例えば図８−５に示すような画面が表示される。
この画面では、ワイヤレスネットワークを選択するための選択ボックスが画面中央に表示されており、端末２０のユーザは、この選択ボックス内に表示されたワイヤレスネットワークの候補の中から一の候補を選択する。
【０４０１】
図８−５においてワイヤレスネットワークが選択されると、選択されたワイヤレスネットワークによる通信が試行される。そして、通信ＯＫとなると、サーバ１０から端末表示用コードが取得され、例えば図８−６に示すような画面が表示される。
この表示例では、コード補充依頼情報として、５個の端末表示用コードの補充を依頼する情報が端末２０からサーバ１０に送信され、サーバ１０によって５個の端末表示用コードが生成され、生成された５個の端末表示用コードが端末２０に送信されて、受信された５個の端末表示用コードが端末２０で補充された場合を示しており、「コードストック追加  コードのストックが５個追加されました。」というメッセージが画面中央にポップアップ表示されている。
【０４０２】
図８−７は、図８−６においてＯＫのアイコンがタッチ操作された場合に表示される画面の一例を示す図である。
このコード表示画面では、端末表示用コードのストックが５個補充されたことで、補充された５個の端末表示用コードに対応する５個のガイド画像が表示されている。また、一番左のガイド画像に対応する端末表示用コード画像が画面中央に表示されており、一番左のガイド画像以外の４個のガイド画像は、非アクティブ状態で表示されている。
【０４０３】
＜第５実施例の効果＞
第５実施例は、端末２０が、オフライン状態であることを示す情報（限定ではなく、端末による通信ができないことを示す情報の一例）をコード表示画面に表示する。そして、端末２０は、このオフライン状態であることを示す情報に対する端末２０のユーザのタッチ操作（限定ではなく、端末のユーザの入力の一例）に基づいて、第２通信方式によってコード補充を行うための情報（限定ではなく、端末の通信の設定に関する情報）をコード表示画面に表示する構成を示している。
このような構成により得られる効果の一例として、端末による通信ができないことを端末のユーザに報知することができるとともに、端末のユーザの入力に基づいて、端末の通信の設定を行うことができる。これにより、例えば、第１通信方式による通信が不能な場合であっても、第２通信方式の設定を行って、第２通信方式によってサーバと通信を行うといったことが可能となる。
【符号の説明】
【０４０４】
１    通信システム
１０  サーバ
２０  端末
３０  ネットワーク
４０  店舗ＰＯＳシステム
５０  店舗コードリーダ装置
６０  コードレジ
７０  店舗サーバ
【図１】
0006825160.tif 000002
【図２】
0006825160.tif 000003
【図３−１】
0006825160.tif 000004
【図３−２】
0006825160.tif 000005
【図３−３】
0006825160.tif 000006
【図３−４】
0006825160.tif 000007
【図４−１】
0006825160.tif 000008
【図４−２】
0006825160.tif 000009
【図４−３】
0006825160.tif 000010
【図４−４】
0006825160.tif 000011
【図４−５】
0006825160.tif 000012
【図４−６】
0006825160.tif 000013
【図４−７】
0006825160.tif 000014
【図４−８】
0006825160.tif 000015
【図４−９】
0006825160.tif 000016
【図４−１０】
0006825160.tif 000017
【図４−１１】
0006825160.tif 000018
【図４−１２】
0006825160.tif 000019
【図４−１３】
0006825160.tif 000020
【図４−１４】
0006825160.tif 000021
【図４−１５】
0006825160.tif 000022
【図５−１】
0006825160.tif 000023
【図５−２】
0006825160.tif 000024
【図５−３】
0006825160.tif 000025
【図５−４】
0006825160.tif 000026
【図５−５】
0006825160.tif 000027
【図５−６】
0006825160.tif 000028
【図５−７】
0006825160.tif 000029
【図５−８】
0006825160.tif 000030
【図５−９】
0006825160.tif 000031
【図５−１０】
0006825160.tif 000032
【図６−１】
0006825160.tif 000033
【図６−２】
0006825160.tif 000034
【図６−３】
0006825160.tif 000035
【図６−４】
0006825160.tif 000036
【図７−１】
0006825160.tif 000037
【図７−２】
0006825160.tif 000038
【図７−３】
0006825160.tif 000039
【図７−４】
0006825160.tif 000040
【図７−５】
0006825160.tif 000041
【図７−６】
0006825160.tif 000042
【図７−７】
0006825160.tif 000043
【図７−８】
0006825160.tif 000044
【図７−９】
0006825160.tif 000045
【図７−１０】
0006825160.tif 000046
【図８−１】
0006825160.tif 000047
【図８−２】
0006825160.tif 000048
【図８−３】
0006825160.tif 000049
【図８−４】
0006825160.tif 000050
【図８−５】
0006825160.tif 000051
【図８−６】
0006825160.tif 000052
【図８−７】
0006825160.tif 000053