(57)【要約】【課題】電子貨幣による決済に関して使い勝手が悪い場合があった。【解決手段】コード情報に基づく決済に関する処理を実行する端末の情報処理方法は、サーバによって第１有効期限が関連付けられた第１コード情報を、サーバから端末の通信部を介して受信することと、受信された第１コード情報を、端末の制御部によって端末の記憶部に記憶することと、第１コード情報に基づいて、決済に関する処理を制御部によって実行することとを含み、決済は、決済に関する処理に基づく時刻と、第１有効期限とに基づいてサーバによって実行される。【選択図】図１
2020204884.tif 000002
【特許請求の範囲】
【請求項１】
コード情報に基づく決済に関する処理を実行する端末の情報処理方法であって、
サーバによって第１有効期限が関連付けられた第１コード情報を、前記サーバから前記端末の通信部を介して受信することと、
受信された前記第１コード情報を、前記端末の制御部によって前記端末の記憶部に記憶することと、
前記第１コード情報に基づいて、前記決済に関する処理を前記制御部によって実行することとを含み、
前記決済は、前記決済に関する処理に基づく時刻と、前記第１有効期限とに基づいて前記サーバによって実行される。
【請求項２】
請求項１に記載の情報処理方法であって、
前記第１有効期限に関する情報に基づいて、前記第１コード情報とは異なる第２コード情報を前記サーバから前記通信部を介して受信することを含み、
前記第２コード情報は、前記第１有効期限とは異なる第２有効期限が前記サーバによって関連付けられる。
【請求項３】
請求項２に記載の情報処理方法であって、
前記第１有効期限に関する情報を、前記サーバから前記通信部を介して受信することと、
前記第１有効期限を、前記制御部によって前記第１コード情報に関連付けて前記記憶部に記憶することとを含む。
【請求項４】
請求項３に記載の情報処理方法であって、
前記第１有効期限に関する情報に基づいて、前記第２コード情報の送信を依頼する情報を前記サーバに前記通信部を介して送信することを含む。
【請求項５】
請求項２から請求項４のいずれか一項に記載の情報処理方法であって、
前記第２コード情報は、前記第１有効期限が経過する前に、前記サーバから前記通信部を介して受信される。
【請求項６】
請求項２から請求項５のいずれか一項に記載の情報処理方法であって、
前記第２コード情報の受信に基づいて、前記第１コード情報の利用を不可とする処理を前記制御部によって行うことを含む。
【請求項７】
請求項１に記載の情報処理方法であって、
前記第１有効期限の延長に関する情報を前記サーバに前記通信部を介して送信することを含む。
【請求項８】
請求項６に記載の情報処理方法であって、
前記端末のユーザの認証に関する処理の実行に基づいて、前記第１有効期限の延長に関する処理を前記端末の制御部によって行うことを含む。
【請求項９】
請求項６から請求項８のいずれか一項に記載の情報処理方法であって、
前記サーバから送信された、延長された前記第１有効期限に関する情報を、前記通信部を介して受信することと、
前記第１有効期限が延長されたことを示す情報を、前記端末の表示領域に表示することとを含む。
【請求項１０】
請求項１に記載の情報処理方法であって、
設定された時刻に基づき前記サーバから送信された、前記サーバによって第３有効期限が関連付いた第３コード情報を、前記通信部を介して受信することを含む。
【請求項１１】
請求項１に記載の情報処理方法であって、
前記端末のユーザの情報に基づいて前記サーバから送信された、前記サーバによって第４有効期限が関連付いた第４コード情報を、前記通信部を介して受信することを含む。
【請求項１２】
請求項１に記載の情報処理方法であって、
災害に関する情報に基づき前記サーバから送信された、前記サーバによって第５有効期限が関連付いた第５コード情報を、前記通信部を介して受信することを含む。
【請求項１３】
請求項１から請求項１２のいずれか一項に記載の情報処理方法であって、
前記第１有効期限は、前記端末のユーザの情報に基づき前記サーバによって設定される。
【請求項１４】
請求項１３に記載の情報処理方法であって、
前記端末のユーザの情報は、前記ユーザの信用スコアを含む。
【請求項１５】
請求項１３または請求項１４に記載の情報処理方法であって、
前記端末のユーザの情報は、前記ユーザの位置の情報、または前記端末の位置の情報を含む。
【請求項１６】
請求項１３から請求項１５のいずれか一項に記載の情報処理方法であって、
前記端末のユーザの情報は、前記ユーザのスケジュールの情報を含む。
【請求項１７】
請求項１３から請求項１６のいずれか一項に記載の情報処理方法であって、
前記端末のユーザの情報は、前記ユーザの前記コード情報に基づく決済の情報を含む。
【請求項１８】
請求項１から請求項１７のいずれか一項に記載の情報処理方法であって、
前記第１有効期限は、前記サーバによって取得されたイベントに関する情報に基づいて設定される。
【請求項１９】
請求項１に記載の情報処理方法であって、
前記第１有効期限の情報を前記端末の表示領域に表示することを含む。
【請求項２０】
請求項１８に記載の情報処理方法であって、
前記第１有効期限の情報と、前記第１コード情報とを前記表示領域に表示することを含む。
【請求項２１】
請求項１９または請求項２０に記載の情報処理方法であって、
前記第１有効期限の情報は、前記端末の通信の状態に基づいて、前記表示領域に表示される。
【請求項２２】
請求項２０に記載の情報処理方法であって、
前記第１コード情報と、前記第１有効期限とは異なる、前記第１コード情報が利用できる期限とを前記表示領域に表示することを含む。
【請求項２３】
請求項１９または請求項２０に記載の情報処理方法であって、
前記第１有効期限が前記表示領域に表示される場合、前記第１有効期限から設定された期限に変更して前記表示領域に表示することを含む。
【請求項２４】
請求項１に記載の情報処理方法であって、
前記端末から送信された前記コード情報の送信の依頼に関する情報に基づいて、前記サーバによって第６有効期限が関連付けられた第６コード情報と、前記サーバによって第７有効期限が関連付けられた第７コード情報とを前記通信部を介して受信することを含み、
前記第６有効期限の開始時刻は、前記第７有効期限の開始時刻と異なり、
前記第６有効期限の終了時刻は、前記第７有効期限の終了時刻と異なる。
【請求項２５】
コード情報に基づく決済に関する処理を実行する端末のコンピュータによって実行されるプログラムであって、
サーバによって第１有効期限が関連付けられた第１コード情報を、前記サーバから前記端末の通信部を介して受信することと、
受信された前記第１コード情報を前記端末の記憶部に記憶することと、
前記第１コード情報に基づいて、前記決済に関する処理を実行することとを含み、
前記決済は、前記決済に関する処理に基づく時刻と、前記第１有効期限とに基づいて前記サーバによって実行される。
【請求項２６】
コード情報に基づく決済に関する処理を実行する端末であって、
サーバによって第１有効期限が関連付けられた第１コード情報を、前記サーバから受信する通信部と、
受信された前記第１コード情報を前記端末の記憶部に記憶する制御を行う制御部とを備え、
前記制御部は、前記第１コード情報に基づいて、前記決済に関する処理を実行し、
前記決済は、前記決済に関する処理に基づく時刻と、前記第１有効期限とに基づいて前記サーバによって実行される。
【請求項２７】
コード情報に基づく決済に関する処理を実行する端末であって、
メモリに記憶されたプログラムを読み出し、前記プログラムに基づく処理を実行するプロセッサーを備え、
前記プロセッサーは、
サーバによって第１有効期限が関連付けられた第１コード情報を、前記サーバから前記端末の通信部を介して受信する処理と、
受信された前記第１コード情報を前記メモリに記憶する処理と、
前記第１コード情報に基づく前記決済に関する処理とを実行し、
前記決済は、前記決済に関する処理に基づく時刻と、前記第１有効期限とに基づいて前記サーバによって実行される。
【請求項２８】
コード情報に基づく決済を管理するサーバの情報処理方法であって、
第１コード情報と、第１有効期限とを関連付けて、前記サーバの制御部によって前記サーバの記憶部に記憶することと、
前記決済に関する処理を行う端末に前記第１コード情報を前記サーバの通信部を介して送信することと、
前記第１コード情報と、前記第１コード情報に基づいて行われた前記決済に関する処理に基づく時刻の情報とを前記通信部を介して受信することと、
受信された前記第１コード情報に関連付けられた前記第１有効期限と、受信された前記決済に関する処理に基づく時刻とに基づいて、前記決済の処理を前記制御部によって行うこととを含む。
【請求項２９】
コード情報に基づく決済を管理するサーバのコンピュータによって実行されるプログラムであって、
第１コード情報と、第１有効期限とを関連付けて、前記サーバの記憶部に記憶することと、
前記決済に関する処理を行う端末に前記第１コード情報を前記サーバの通信部を介して送信することと、
前記第１コード情報と、前記第１コード情報に基づいて行われた前記決済に関する処理に基づく時刻の情報とを前記通信部を介して受信することと、
受信された前記第１コード情報に関連付けられた前記第１有効期限と、受信された前記決済に関する処理に基づく時刻とに基づいて、前記決済の処理を行うこととを含む。
【請求項３０】
コード情報に基づく決済を管理するサーバであって、
第１コード情報と、第１有効期限とを関連付けて記憶する記憶部と、
前記決済に関する処理を行う端末に前記第１コード情報を送信し、前記第１コード情報と、前記第１コード情報に基づいて行われた前記決済に関する処理に基づく時刻の情報とを受信する通信部と、
受信された前記第１コード情報に関連付けられた前記第１有効期限と、受信された前記決済に関する処理に基づく時刻とに基づいて、前記決済の処理を行う制御部とを備える。
【請求項３１】
コード情報に基づく決済を管理するサーバであって、
メモリに記憶されたプログラムを読み出し、前記プログラムに基づく処理を実行するプロセッサーを備え、
前記プロセッサーは、
第１コード情報と、第１有効期限とを関連付けて前記メモリに記憶する処理と、
前記決済に関する処理を行う端末に前記第１コード情報を送信し、前記第１コード情報と、前記第１コード情報に基づいて行われた前記決済に関する処理に基づく時刻の情報とを受信する処理と、
受信された前記第１コード情報に関連付けられた前記第１有効期限と、受信された前記決済に関する処理に基づく時刻とに基づく前記決済の処理とを実行する。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、情報処理方法、プログラム、端末、サーバに関する。
【背景技術】
【０００２】
昨今、スマートフォン等の端末で実行可能なアプリケーションによって、端末、または端末のユーザの電子貨幣（電子マネー）の管理や、電子貨幣による決済等を実現するサービスが普及しつつある。例えば特許文献１には、商品の購買金額の決済を行う技術が開示されている。しかしながら、電子貨幣による決済は、例えば、端末の通信環境や通信状況によっては行うことができない場合もあるなど、使い勝手が悪い場合があった。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００２−１７６６７１号公報
【発明の概要】
【０００４】
本発明の第１の態様によると、コード情報に基づく決済に関する処理を実行する端末の情報処理方法は、サーバによって第１有効期限が関連付けられた第１コード情報を、サーバから端末の通信部を介して受信することと、受信された第１コード情報を、端末の制御部によって端末の記憶部に記憶することと、第１コード情報に基づいて、決済に関する処理を制御部によって実行することとを含み、決済は、決済に関する処理に基づく時刻と、第１有効期限とに基づいてサーバによって実行される。
本発明の第２の態様によると、コード情報に基づく決済に関する処理を実行する端末のコンピュータによって実行されるプログラムは、サーバによって第１有効期限が関連付けられた第１コード情報を、サーバから端末の通信部を介して受信することと、受信された第１コード情報を端末の記憶部に記憶することと、第１コード情報に基づいて、決済に関する処理を実行することとを含み、決済は、決済に関する処理に基づく時刻と、第１有効期限とに基づいてサーバによって実行される。
本発明の第３の態様によると、コード情報に基づく決済に関する処理を実行する端末は、サーバによって第１有効期限が関連付けられた第１コード情報を、サーバから受信する通信部と、受信された第１コード情報を端末の記憶部に記憶する制御を行う制御部とを備え、制御部は、第１コード情報に基づいて、決済に関する処理を実行し、決済は、決済に関する処理に基づく時刻と、第１有効期限とに基づいてサーバによって実行される。
本発明の第４の態様によると、コード情報に基づく決済に関する処理を実行する端末は、メモリに記憶されたプログラムを読み出し、プログラムに基づく処理を実行するプロセッサーを備え、プロセッサーは、サーバによって第１有効期限が関連付けられた第１コード情報を、サーバから端末の通信部を介して受信する処理と、受信された第１コード情報をメモリに記憶する処理と、第１コード情報に基づく決済に関する処理とを実行し、決済は、決済に関する処理に基づく時刻と、第１有効期限とに基づいてサーバによって実行される。
本発明の第５の態様によると、コード情報に基づく決済を管理するサーバの情報処理方法は、第１コード情報と、第１有効期限とを関連付けて、サーバの制御部によってサーバの記憶部に記憶することと、決済に関する処理を行う端末に第１コード情報をサーバの通信部を介して送信することと、第１コード情報と、第１コード情報に基づいて行われた決済に関する処理に基づく時刻の情報とを通信部を介して受信することと、受信された第１コード情報に関連付けられた第１有効期限と、受信された決済に関する処理に基づく時刻とに基づいて、決済の処理を制御部によって行うこととを含む。
本発明の第６の態様によると、コード情報に基づく決済を管理するサーバのコンピュータによって実行されるプログラムは、第１コード情報と、第１有効期限とを関連付けて、サーバの記憶部に記憶することと、決済に関する処理を行う端末に第１コード情報をサーバの通信部を介して送信することと、第１コード情報と、第１コード情報に基づいて行われた決済に関する処理に基づく時刻の情報とを通信部を介して受信することと、受信された第１コード情報に関連付けられた第１有効期限と、受信された決済に関する処理に基づく時刻とに基づいて、決済の処理を行うこととを含む。
本発明の第７の態様によると、コード情報に基づく決済を管理するサーバは、第１コード情報と、第１有効期限とを関連付けて記憶する記憶部と、決済に関する処理を行う端末に第１コード情報を送信し、第１コード情報と、第１コード情報に基づいて行われた決済に関する処理に基づく時刻の情報とを受信する通信部と、受信された第１コード情報に関連付けられた第１有効期限と、受信された決済に関する処理に基づく時刻とに基づいて、決済の処理を行う制御部とを備える。
本発明の第８の態様によると、コード情報に基づく決済を管理するサーバは、メモリに記憶されたプログラムを読み出し、プログラムに基づく処理を実行するプロセッサーを備え、プロセッサーは、第１コード情報と、第１有効期限とを関連付けてメモリに記憶する処理と、決済に関する処理を行う端末に第１コード情報を送信し、第１コード情報と、第１コード情報に基づいて行われた決済に関する処理に基づく時刻の情報とを受信する処理と、受信された第１コード情報に関連付けられた第１有効期限と、受信された決済に関する処理に基づく時刻とに基づく決済の処理とを実行する。
【図面の簡単な説明】
【０００５】
【図１】実施形態の一態様における通信システムの構成の一例を示す図。
【図２】実施形態の一態様における店舗ＰＯＳシステムのシステム構成の一例を示す図。
【図３−１】実施形態の一態様における各種の装置が実行する処理の流れの一例を示すフローチャート。
【図３−２】実施形態の一態様における端末の表示画面の一例を示す図。
【図３−３】実施形態の一態様における端末の表示画面の一例を示す図。
【図３−４】実施形態の一態様における各種の装置が実行する処理の流れの一例を示すフローチャート。
【図４−１】第１実施例に係るサーバの制御部により実現される機能の一例を示す図。
【図４−２】第１実施例に係るサーバの記憶部に記憶される情報の一例を示す図。
【図４−３】第１実施例に係るユーザ登録データの一例を示す図。
【図４−４】第１実施例に係る店舗登録データの一例を示す図。
【図４−５】第１実施例に係る決済管理データベースの一例を示す図。
【図４−６】第１実施例に係るコード管理データベースの一例を示す図。
【図４−７】第１実施例に係る端末の制御部により実現される機能の一例を示す図。
【図４−８】第１実施例に係る端末の記憶部に記憶される情報の一例を示す図。
【図４−９】第１実施例に係る第１の端末表示用コードストックデータの一例を示す図。
【図４−１０】第１実施例に係る決済用データの一例を示す図。
【図４−１１】第１実施例に係る端末の表示画面の一例を示す図。
【図４−１２】第１実施例に係る端末の表示画面の一例を示す図。
【図４−１３】第１実施例に係る端末の表示画面の一例を示す図。
【図４−１４】第１実施例に係る各種の装置が実行する処理の流れの一例を示すフローチャート。
【図４−１５】第１変形例に係る第２の端末表示用コードストックデータの一例を示す図。
【図４−１６】第１変形例に係る端末の表示画面の一例を示す図。
【図４−１７】第１変形例に係る端末の表示画面の一例を示す図。
【図４−１８】第１変形例に係る端末の表示画面の一例を示す図。
【図４−１９】第１変形例に係る端末の表示画面の一例を示す図。
【図４−２０】第１変形例に係る端末の表示画面の一例を示す図。
【図４−２１】第１変形例に係る端末の表示画面の一例を示す図。
【図４−２２】第１実施例に係る各種の装置が実行する処理の流れの一例を示すフローチャート。
【図５−１】第２実施例に係る端末の記憶部に記憶される情報の一例を示す図。
【図５−２】第２実施例に係る各種の装置が実行する処理の流れの一例を示すフローチャート。
【図５−３】第２変形例に係る端末の記憶部に記憶される情報の一例を示す図。
【図５−４】第２変形例に係るコード更新条件データの一例を示す図。
【図５−５】第２変形例に係る各種の装置が実行する処理の流れの一例を示すフローチャート。
【図６−１】第３実施例に係るサーバの記憶部に記憶される情報の一例を示す図。
【図６−２】第３実施例に係るアカウント別管理データベースの一例を示す図。
【図７−１】第４実施例に係る第１のコード表示処理の一例を示すフローチャート。
【図７−２】第４実施例に係る第２のコード表示処理の一例を示すフローチャート。
【図７−３】第４実施例に係る第３のコード表示処理の一例を示すフローチャート。
【図８】第５実施例に係るコード管理データベースの一例を示す図。
【発明を実施するための形態】
【０００６】
＜法的事項の遵守＞
本明細書に記載の開示は、通信の秘密など、本開示の実施に必要な実施国の法的事項遵守を前提とすることに留意されたい。
【０００７】
本開示に係る情報処理方法等を実施するための実施形態について、図面を参照して説明する。
【０００８】
［システム構成］
図１は、本開示の一実施形態に係る通信システム１の構成の一例を示す図である。
図１に開示されるように、通信システム１では、ネットワーク３０を介してサーバ１０と、端末２０（端末２０Ａ，端末２０Ｂ，端末２０Ｃ，・・・）と、店舗ＰＯＳシステム４０とが接続される。
【０００９】
サーバ１０は、ネットワーク３０を介してユーザが所有する端末２０に、端末２０間でのメッセージ等を含むコンテンツの送受信を実現するサービスを提供する。また、サーバ１０は、端末２０と通信を行って電子決済（限定ではなく、決済の一例）を実現するサービス（以下、「決済サービス」と称する。）を提供する。なお、ネットワーク３０に接続される端末２０の数は限定されない。
【００１０】
ネットワーク３０は、１以上の端末２０と、１以上のサーバ１０と、１以上の店舗ＰＯＳシステム４０とを接続する役割を担う。すなわち、ネットワーク３０は、上記の各種の装置が接続した後、データを送受信することができるように接続経路を提供する通信網を意味する。
【００１１】
ネットワーク３０のうちの１つまたは複数の部分は、有線ネットワークや無線ネットワークであってもよいし、そうでなくてもよい。ネットワーク３０は、限定ではなく例として、アドホック・ネットワーク（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）等の情報を含めるようにしてもよいし、そのようにしなくてもよい。
【０２４０】
＜第１変形例（６）＞
コード表示画面において、端末表示用コード画像が表示される領域とは異なる領域に、コード表示期限の情報や、コード有効期限の情報を表示させるようにしてもよいし、そのようにしなくてもよい。
【０２４１】
コード表示期限の情報には、限定ではなく例として、「コード表示期限」、「コード表示期限の残り時間」、「コード表示期限が終了する時刻や日時」、「コード表示時間」等の情報が含まれる。
なお、これらのコード表示期限の情報は、コード表示期限に関する情報と言ってもよい。
【０２４２】
また、コード有効期限の情報には、限定ではなく例として、「コード有効期限」、「コード有効期限の残り時間」、「コード有効期限が終了する時刻や日時」、「コード有効時間」等の情報が含まれる。
なお、これらのコード有効期限の情報は、コード有効期限に関する情報と言ってもよい。
【０２４３】
図４−１６は、本変形例におけるコード表示画面の一例を示す図である。
このコード表示画面では、限定ではなく例として、二次元の第１の端末表示用コード画像ＱＣ１の下に、コード表示期限の残り時間が表示されている。
コード表示期限の残り時間は、限定ではなく例として、コード表示画面が表示されたタイミング（表示が開始されたタイミング）を基準として、時計部２９Ａの計時時刻とに基づいて表示・更新される。
【０２４４】
なお、この表示例では、ユーザが分かり易いように、図３−３と同じ態様でコード表示期限の残り時間を表示しているが、これとは異なり、図３−３とは異なる態様でコード表示期限の残り時間を表示してもよいし、そのようにしなくてもよい。
【０２４５】
図４−１７は、本変形例におけるコード表示画面の一例を示す図である。
このコード表示画面では、限定ではなく例として、二次元の第１の端末表示用コード画像ＱＣ１の上に、砂時計のマーク（画像）とともに、第１の端末表示用コード画像に関連付けられた第１のコード有効期限の残り時間が表示されている。
【０２４６】
第１のコード有効期限の残り時間は、限定ではなく例として、端末表示用コードストックデータ２８３１に記憶されている端末表示用コードのうち、この端末表示用コードに関連付けて記憶されているコード有効期限と、時計部２９Ａの計時時刻とに基づいて表示・更新される。
【０２４７】
図４−１８は、本変形例におけるコード表示画面の一例を示す図である。
このコード表示画面は、図４−１６のコード表示画面と、図４−１７のコード表示画面とを組み合わせたコード表示画面である。
具体的には、限定ではなく例として、第１の端末表示用コード画像ＱＣ１の上下に、それぞれ第１のコード有効期限の残り時間と、第１のコード表示期限の残り時間とが表示されている。
【０２４８】
図４−１９は、本変形例におけるコード表示画面の一例を示す図である。
このコード表示画面は、図４−１８とほぼ同様であるが、コード有効期限の情報の表示が異なっている。
具体的には、コード有効期限の情報として、第１の端末表示用コードが、コード有効期限が開始する時刻からコード有効時間が経過するまで有効であることを示す表示として、限定ではなく例として、「２０１９／０６／１０  ９：００から１２時間有効」の文字が表示されている。
【０２４９】
図４−１６〜図４−１９のコード表示画面は、オフライン状態において表示されるコード表示画面とすることもできるし、オンライン状態において表示されるコード表示画面とすることもできる。
【０２５０】
なお、コード有効期限の情報を表示させるのに代えて、限定ではなく例として、前述した仮コード有効期限の情報を表示させるようにしてもよいし、そのようにしなくてもよい。
【０２５１】
＜第１変形例（６）の効果＞
本変形例は、端末２０が、コード有効期限やコード有効期限の残り時間等の情報（限定ではなく、第１有効期限の情報の一例）をコード表示画面内の領域（限定ではなく、端末の表示領域の一例）に表示する構成を示している。
このような構成により得られる効果の一例として、第１有効期限の情報を端末のユーザに報知することができる。
【０２５２】
また、本変形例は、端末２０が、コード有効期限やコード有効期限の残り時間等の情報（限定ではなく、第１有効期限の情報の一例）と、端末２０でストックされた端末表示用コード画像や決済用番号（限定ではなく、第１コード情報の一例）とをコード表示画面内の領域（限定ではなく、端末の表示領域の一例）に表示する構成を示している。
このような構成により得られる効果の一例として、第１有効期限の情報と、第１コード情報とを端末のユーザに報知することができ、ユーザの利便性を向上させることができる。
【０２５３】
また、本変形例は、端末２０が、オフライン状態において、コード有効期限やコード有効期限の残り時間等の情報（限定ではなく、第１有効期限の情報の一例）をコード表示画面内の領域（限定ではなく、端末の表示領域の一例）に表示する構成を示している。
このような構成により得られる効果の一例として、第１有効期限の情報を、端末の通信の状態に基づいて、端末の表示領域に表示することができる。例えば、端末の通信環境や通信状況が悪い場合や不安定な場合であっても、第１有効期限の情報を端末の表示領域に表示することができるため、ユーザの利便性を向上させることができる。
【０２５４】
また、本変形例は、端末２０が、端末２０でストックされた端末表示用コード画像や決済用番号（限定ではなく、第１コード情報の一例）と、コード表示期限やコード表示期限の残り時間等の情報（限定ではなく、第１有効期限とは異なる、第１コード情報が利用できる期限の一例）とをコード表示画面内の領域に表示する構成を示している。
このような構成により得られる効果の一例として、第１コード情報と、第１有効期限とは異なる、第１コード情報が利用できる期限とを端末のユーザに報知することができる。
【０２５５】
＜第１変形例（７）＞
第１実施例で説明した決済アプリケーションの表示画面は、あくまでも一例に過ぎず、適宜設計変更可能である。
【０２５６】
図４−２０は、本変形例において端末２０の表示部２４に表示される決済アプリケーションのトップ画面の一例を示す図である。
このトップ画面には、前述した「コードアイコン」とは別に、「コード（オフライン）」と示された「コード（オフライン）アイコン」が表示されている。
【０２５７】
本変形例において、「コードアイコン」は、オンライン状態においてコード表示画面を表示させるためのアイコンであり、「コード（オフライン）アイコン」は、オフライン状態においてコード表示画面を表示させるためのアイコンである。
【０２５８】
図４−２１は、本変形例において端末２０の表示部２４に表示されるコード表示画面の一例を示す図である。このコード表示画面は、上記のトップ画面においてコード（オフライン）アイコンがタッチされることで表示される。
このコード表示画面は、画面上部に「コード（オフライン）」と表示され、その下に、図４−１０のコード表示画面と同様の情報が表示されている。
【０２５９】
この表示画面例では、端末２０が、オフライン状態であることを検出した場合に、ユーザ操作に従って、ストックされている端末表示用コードをコード表示画面に表示させる。そして、この端末表示用コードを用いてオフライン決済を行わせることができる。
【０２６０】
＜第１変形例（８）＞
図３−４の処理のＡ１３０において、端末２０がサーバ１０から端末表示用コードを受信したタイミングで、Ａ２４０およびＡ２５０の処理を行って、端末表示用コードを表示部２４に表示させるようにしてもよいし、そのようにしなくてもよい。
【０２６１】
また、図４−１４の処理のＡ３３０において、端末２０がサーバ１０から端末表示用コードと、コード有効期限とを受信したタイミングで、Ａ３４０およびＡ３５０の処理を行って、端末表示用コードを表示部２４に表示させるようにしてもよいし、そのようにしなくてもよい。
【０２６２】
この場合、限定ではなく例として、決済アプリケーションのトップ画面（例えば図３−２）においてコードアイコンがタッチされた場合、端末表示用コードのコード表示画面に表示が切り替わるようにすることができる。
【０２６３】
＜第１変形例（９）＞
第１実施例では、「決済に関する処理に基づく時刻」をコード読み取り時刻とする場合を例に挙げて説明したが、これに限定されない。
【０２６４】
まず、コード読み取り時刻ではなく、日付の情報も含めたコード読み取り日時を「決済に関する処理に基づく時刻」としてもよいし、そのようにしなくてもよい。
【０２６５】
また、端末２０でストックされた端末表示用コードが端末２０で表示された時刻（以下、「コード表示時刻」と称する。）や日時（以下、「コード表示日時」と称する。）を「決済に関する処理に基づく時刻」としてもよいし、そのようにしなくてもよい。
【０２６６】
ただし、オンライン状態ではサーバ１０は端末２０と通信しており、端末２０で端末表示用コードが表示されたことを認識可能であるため、サーバ１０は、時計部１９の計時情報に基づいて、コード表示時刻やコード表示日時を特定することができる。
しかしながら、オフライン状態では、サーバ１０は端末２０と通信できないため、サーバ１０は、端末２０で端末表示用コードが表示されたか否かが分からず、コード表示時刻やコード表示日時を特定することができない。
そこで、限定ではなく例として、以下の処理を行うようにする。
【０２６７】
図４−２２は、本変形例における各装置が実行する処理の流れの一例を示すフローチャートである。左側から順に、端末２０の制御部２１が実行する決済アプリケーション処理の一例である第２の決済アプリケーション処理、店舗コードリーダ装置５０の制御部５１が実行する店舗決済処理の一例である第２の店舗決済処理、サーバ１０の制御部１１が実行する決済管理処理の一例である第２の決済管理処理をそれぞれ示している。
【０２６８】
図４−２２のフローチャートは、図３−４のフローチャートを一部書き換えたものである。図３−４のフローチャートとは、限定ではなく例として、オフライン状態での処理ステップ（例えば、Ａ４５０、Ｂ４５０、Ｂ４６０、Ｃ４７０）が異なる。
【０２６９】
この処理では、一例として、端末２０、または端末２０のユーザを識別するための識別情報を、前述したアプリケーションＩＤとして説明する。
【０２７０】
Ａ２４０の後、オフライン状態において、限定ではなく例として、端末２０のユーザによってコード表示操作がなされると、制御部２１が、拡張端末表示用コード生成処理を行うとともに、コード表示処理部２１１３が、コード表示処理を行う（Ａ４５０）。
【０２７１】
ここで、Ａ２４０でストックされた端末表示用コードに基づき端末２０側で処理（加工・生成、表示等の処理を含む。）される決済用のコードを「拡張端末表示用コード」と称し、この拡張端末表示用コードのコード画像を「拡張端末表示用コード画像」と称する。
【０２７２】
拡張端末表示用コードは、端末表示用コードと同様に、決済種別「端末コード表示」での決済に使用されるコードであるが、オンライン決済に限らず、オフライン決済にも使用可能なコードである。
【０２７３】
なお、拡張端末表示用コードは、オフライン決済のみならず、オンライン決済にも使用可能とすることができる。つまり、端末２０側でオフライン状態であるか否かを判定（検出）することは必須ではなく、オンライン状態／オフライン状態を問わず、拡張端末表示用コードを用いて決済を行うようにすることが可能である。
【０２７４】
拡張端末表示用コード生成処理では、限定ではなく例として、拡張端末表示用コード画像を生成する。具体的には、端末表示用コードストックデータ２８３１にストックされている端末表示用コード画像からデコードによって取得した決済用番号、または端末表示用コードストックデータ２８３１にストックされている決済用番号と、制御部２１が生成したタイムスタンプ情報とをエンコード（符号化）し、図形化（画像化）して、拡張端末表示用コード画像を生成する。
【０２７５】
ここで、タイムスタンプ情報とは、特定の事象（特定のイベント）が発生した日時、日付、時刻などを示す情報であるとともに、そのタイムスタンプ情報に関連付けられた情報やデータ（ここでは拡張端末表示用コード）が、ある時刻に確実に存在していたことを証明するための電子的な時刻証明書として機能するものである。
【０２７６】
この例では、「拡張端末表示用コード画像が端末２０の表示部２４に表示されること」を特定の事象とし、端末２０の制御部２１は、拡張端末表示用コード画像が表示された（表示が開始された）時刻であるコード表示時刻を含むタイムスタンプ情報を生成する。コード表示時刻やタイムスタンプ情報は、「時刻情報」の一例であり、端末２０の時計部２９Ａによって計時される情報に基づき生成される。
【０２７７】
なお、店舗によっては、二次元コードの読み取りには対応していないが、一次元コードの読み取りには対応可能な場合がある。そこで、二次元コード（限定ではなく例としてＱＲコード）に加えて、一次元コード（限定ではなく例としてバーコード）で表される拡張端末表示用コード画像を生成するようにしてもよいし、そのようにしなくてもよい。
【０２７８】
また、コード表示時刻に代えて、時刻に加えて日付の情報も含む「コード表示日時」を含むタイムスタンプ情報を生成するようにしてもよいし、そのようにしなくてもよい。
【０２７９】
また、第三者が元情報を解読することができないようにするために、決済用番号やタイムスタンプ情報を暗号化した情報をエンコードするようにしてもよいし、そのようにしなくてもよい。
【０２８０】
また、タイムスタンプ情報をエンコードするのではなく、コード表示時刻やコード表示日時そのものをエンコードするようにしてもよいし、そのようにしなくてもよい。
【０２８１】
コード表示処理では、限定ではなく例として、少なくとも、拡張端末表示用コード画像を含むコード表示画面を表示部２４に表示させる。
【０２８２】
なお、上記のように、拡張端末表示用コード生成処理において二次元の拡張端末表示用コード画像を生成した場合は、限定ではなく例として、二次元の拡張端末表示用コード画像を表示させるようにすることができる。
【０２８３】
また、拡張端末表示用コード生成処理において、一次元の拡張端末表示用コード画像も生成した場合は、限定ではなく例として、二次元の拡張端末表示用コード画像の他に、一次元の拡張端末表示用コード画像を表示させるようにすることができる。この場合、一次元の拡張端末表示用コード画像の近傍に、決済用番号を併せて表示させてもよいし、そのようにしなくてもよい。
【０２８４】
その後、表示部２４に表示された拡張端末表示用コード画像が端末２０のユーザによって店舗の店員等に提示されると、制御部５１は、端末２０の表示部２４に表示された拡張端末表示用コード画像を、コードリーダ５８に読み取らせる制御を行う（Ｂ４５０）。
【０２８５】
制御部５１は、通信Ｉ／Ｆ５４によってサーバ１０にアクセスする。そして、制御部５１は、少なくとも、デコードによって取得した決済用番号およびタイムスタンプ情報と、店舗識別情報と、決済予定金額とを含む決済要求情報を、通信Ｉ／Ｆ５４によってサーバ１０に送信する（Ｂ４６０）。
【０２８６】
店舗コードリーダ装置５０から通信Ｉ／Ｆ１４によって決済要求情報を受信すると（Ｃ１６０）、制御部１１は、決済処理を行う（Ｃ４７０）。
【０２８７】
具体的には、受信された決済要求情報に含まれる決済用番号が、アプリケーションＩＤと関連付けてコード管理データベース１５９に記憶されているか否かを判定する。そして、記憶されていると判定した場合、受信された決済要求情報に含まれるタイムスタンプ情報から特定されるコード表示時刻が、そのアプリケーションＩＤのコード管理データにおける、その決済用番号と関連付けて記憶されているコード有効期限内であるか否かを判定する。そして、この条件を満たす場合は「決済可能」と判定し、決済管理データベース１５７Ａのうち、そのアプリケーションＩＤの決済管理データに記憶されている残高から決済予定金額を減算して決済する。
【０２８８】
なお、前述したコード表示期限内の決済であるか否かも判定するのであれば、限定ではなく例として、サーバ１０の時計部１９の計時時刻と、受信された決済要求情報に含まれるタイムスタンプ情報から特定されるコード表示時刻との差の時間をコード表示時間と比較して、コード表示期限内であるか否かも併せて判定するようにすればよい。
【０２８９】
＜第２実施例＞
第１実施例では、コード有効期限に基づいて、サーバ１０に決済を行わせた。しかしながら、端末２０のユーザが、必ずしもコード有効期限内にサーバ１０に決済を行わせるための手続きを行うことができるとは限らない。
また、コード有効期限が経過してしまった場合は、端末表示用コードをサーバ１０から再度取得する必要があるが、ユーザによっては、この作業が面倒な場合がある。
【０２９０】
第２実施例に記載の内容は、他の各実施例や他の各変形例のいずれにも適用可能である。
また、既出の構成要素と同一の構成要素については同一の符号を付して、再度の説明を省略する。
【０２９１】
図５−１は、本実施例において端末２０の記憶部２８に記憶される情報の一例を示す図である。
本実施例において、決済アプリケーションプログラム２８２は、限定ではなく例として、端末側コード更新処理として実行される端末側コード更新処理プログラム２８２１をサブルーチンプログラムとして含む。
【０２９２】
＜処理＞
図５−２は、本実施例における各装置が実行する処理の流れの一例を示すフローチャートである。左側に、端末２０の制御部２１が実行する端末側コード更新処理を示し、右側に、サーバ１０の制御部１１が実行するサーバ側コード更新処理を示す。これらの処理は、限定ではなく例として、前述した端末２０の決済アプリケーション処理と、前述したサーバ１０の決済管理処理とのそれぞれのサブ処理として実行される（例えばバックグラウンドで実行される）処理である。
【０２９３】
最初に、制御部２１は、コード更新条件判定処理を行う（Ｄ１１０）。具体的には、限定ではなく例として、端末２０の時計部２９Ａで計時されている時刻（以下、「端末計時時刻」と称する。）が、端末表示用コードストックデータ２８３１に記憶されている端末表示用コードに関連付けられたコード有効期限が終了する時刻（日時）から設定時間前の時刻となったか否かを判定する。
【０２９４】
設定時間は、限定ではなく例として、コード有効時間に基づいて設定することができる。
例えば、コード有効時間が「１２時間」であれば、この半分の「６時間」を設定時間として設定し、コード有効時間が「２４時間」であれば、この半分の「１２時間」を設定時間として設定するなどすることができる。端末表示用コードを更新するため、ある程度余裕を持たせた時間とすることが望ましい。
【０２９５】
なお、コード有効期限が終了する時刻から設定時間前の時刻となったか否かを判定するようにするのではなく、限定ではなく例として、コード受信時刻（コード日時）やコード記憶時刻（コード記憶日時）から設定時間が経過したか否かを判定するようにしてもよいし、そのようにしなくてもよい。
つまり、コード更新条件の判定の基準とする時刻（基準時刻）は、コード有効期限が終了する時刻としてもよいし、コード受信時刻やコード記憶時刻としてもよい。
【０２９６】
なお、第１の端末表示用コードストックデータ２８３１Ａを適用する場合は、１つの端末表示用コードが記憶されているため、この端末表示用コードを対象とし、この端末表示用コードに関連付けられたコード有効期限に基づいて、Ｄ１１０の判定を行えばよい。
【０２９７】
一方、第２の端末表示用コードストックデータ２８３１Ｂを適用する場合は、複数の端末表示用コードが記憶されているため、これら複数の端末表示用コードそれぞれを対象とし、それぞれの端末表示用コードに関連付けられたコード有効期限に基づいて、Ｄ１１０の判定を行えばよい。
【０２９８】
設定時間前の時刻となっている場合、制御部２１は、コード更新条件が成立したと判定する。
【０２９９】
コード更新条件が成立したと判定したならば（Ｄ１２０：ＹＥＳ）、制御部２１は、オンライン状態であるか否かを判定する（Ｄ１３０）。そして、オンライン状態であると判定したならば（Ｄ１３０：ＹＥＳ）、制御部２１は、限定ではなく例として、アプリケーションＩＤと、更新を依頼する端末表示用コードのコードＮｏとを含むコード更新依頼情報を、通信Ｉ／Ｆ２２によってサーバ１０に送信する（Ｄ１６０）。
【０３００】
ここで、「コード更新依頼情報」は、端末２０でストックされている端末表示用コードの更新（再取得と言ってもよい。）を依頼（申請と言ってもよい。）するための情報であり、コード情報の更新に関するリクエストとも言える。
また、「コード更新依頼情報」は、更新された端末表示用コード（新しい端末表示用コード）の送信を依頼する情報とも言える。
【０３０１】
サーバ１０の制御部１１は、端末２０からコード更新依頼情報を受信したか否かを判定する（Ｅ１１０）。そして、受信したと判定したならば（Ｅ１１０：ＹＥＳ）、端末表示用コード更新処理を行う（Ｅ１２０）。
【０３０２】
具体的には、限定ではなく例として、記憶部１５のコード管理データベース１５９のうち、受信されたコード更新依頼情報に含まれるアプリケーションＩＤのコード管理データを参照する。そして、そのコード管理データに、受信されたコード更新依頼情報に含まれるコードＮｏが存在するか否かを判定し、存在すると判定したならば、前述した端末表示用コード生成処理と同様の処理を行って、更新用の端末表示用コードを生成する。そして、そのコードＮｏと関連付けてコード管理データに記憶されているコード生成日時と、決済用番号と、コード有効期限とを更新する。このようにして更新された端末表示用コードを、以下、「更新端末表示用コード」と称する。
【０３０３】
次いで、制御部２１は、更新端末表示用コードと、そのコード有効期限とを、通信Ｉ／Ｆ１４によって端末２０に送信する（Ｅ１７０）。
【０３０４】
その後、制御部１１は、処理を終了するか否かを判定し（Ｅ１９０）、処理を継続すると判定したならば（Ｅ１９０：ＮＯ）、Ｅ１１０に処理を戻す。また、処理を終了すると判定したならば（Ｅ１９０：ＹＥＳ）、サーバ側コード更新処理を終了する。
【０３０５】
また、端末２０からコード更新依頼情報を受信しなかった場合（Ｅ１１０：ＮＯ）、制御部１１は、Ｅ１９０へと処理を移す。
【０３０６】
通信Ｉ／Ｆ２２によってサーバ１０から更新端末表示用コードと、そのコード有効期限とを受信すると（Ｄ１７０）、制御部２１は、対応するコードＮｏと関連付けて端末表示用コードストックデータ２８３１に記憶されているコード受信日時と、コードデータと、コード有効期限とを更新する（Ｄ１８０）。この更新処理を行うことで、更新対象とした端末表示用コード（古い端末表示用コード）は利用不可（使用不可）となる。
【０３０７】
なお、Ｄ１８０において、受信された更新端末表示用コードと、そのコード有効期限とを、端末表示用コードストックデータ２８３１に別のデータ（新たなデータ）として記憶させるようにし、更新対象とした端末表示用コードには「利用不可」のフラグを設定する処理を行うなどして、更新対象とした端末表示用コード（古い端末表示用コード）が利用できなくなるようにしてもよいし、そのようにしなくてもよい。
【０３０８】
その後、制御部２１は、処理を終了するか否かを判定し（Ｄ１９０）、処理を継続すると判定したならば（Ｄ１９０：ＮＯ）、Ｄ１１０に処理を戻す。また、処理を終了すると判定したならば（Ｄ１９０：ＹＥＳ）、端末側コード更新処理を終了する。
【０３０９】
また、コード更新条件が成立しないと判定された場合（Ｄ１２０：ＮＯ）、または、オンライン状態ではないと判定された場合（Ｄ１３０：ＮＯ）、制御部１１は、Ｄ１９０へと処理を移す。
【０３１０】
なお、この処理において、端末表示用コードが更新された場合に、端末２０が、端末表示用コードが更新されたことを示す情報（例えば、端末表示用コードが更新された旨のメッセージや、端末表示用コードが更新されたことを示す画像）を、プッシュ通知によって表示部２４に表示したり、決済アプリケーションを実行中である場合は、表示部２４の決済アプリケーション画面に表示させるようにしてもよい。
【０３１１】
＜第２実施例の効果＞
第２実施例は、端末２０が、あらかじめ端末２０でストックされた端末表示用コード（限定ではなく、第１コード情報の一例）に関連付けられたコード有効期限（限定ではなく、第１有効期限の一例）に基づき、この端末表示用コードとは異なる更新端末表示用コード（限定ではなく、第２コード情報の一例）を、サーバ１０から通信Ｉ／Ｆ２２によって受信する。そして、更新端末表示用コードは、端末表示用コードに関連付けられたコード有効期限とは異なるコード有効期限（限定ではなく、第２有効期限の一例）がサーバ１０によって関連付けられる構成を示している。
このような構成により得られる効果の一例として、第１有効期限に関する情報に基づいて、第１有効期限とは異なる第２有効期限がサーバによって関連付けられた第２コード情報をサーバから受信するため、例えば、第１有効期限が経過する前に第２コード情報をサーバから取得するといったことが可能となり、ユーザの利便性を向上させることができる。
【０３１２】
また、第２実施例は、端末２０が、端末表示用コードとともに、そのコード有効期限（限定ではなく、第１有効期限に関する情報の一例）を、サーバ１０から通信Ｉ／Ｆ２２によって受信する。そして、受信されたコード有効期限を、制御部２１によって端末表示用コードに関連付けて端末表示用コードストックデータ２８３１に記憶させる構成を示している。
このような構成により得られる効果の一例として、サーバによって第１コード情報に関連付けられた第１有効期限を、端末側で把握することが可能となる。
【０３１３】
また、第２実施例は、端末２０が、あらかじめ端末２０でストックされた端末表示用コードに関連付けられたコード有効期限に基づいて、コード更新依頼情報（限定ではなく、第２コード情報の送信を依頼する情報の一例）をサーバ１０に通信Ｉ／Ｆ２２によって送信する構成を示している。
このような構成により得られる効果の一例として、第１有効期限に関する情報に基づいて、適切なタイミングで、第２コード情報を送信するようにサーバに依頼することができる。
【０３１４】
また、第２実施例は、更新端末表示用コード（限定ではなく、第２コード情報の一例）は、あらかじめ端末２０でストックされた端末表示用コード（限定ではなく、第１コード情報の一例）に関連付けられたコード有効期限（限定ではなく、第１有効期限の一例）が経過する前に、サーバ１０から通信Ｉ／Ｆ２２を介して受信される構成を示している。
このような構成により得られる効果の一例として、第１有効期限が経過する前に、サーバから第２コード情報を受信することができる。
【０３１５】
また、第２実施例は、端末２０は、更新端末表示用コードの受信に基づいて、受信された更新端末表示用コードと、そのコード有効期限とで、更新対象とした端末表示用コードと、そのコード有効期限とをそれぞれ更新する処理（限定ではなく、第１コード情報の利用を不可とする処理の一例）や、更新対象とした端末表示用コードに「利用不可」のフラグを設定する処理（限定ではなく、第１コード情報の利用を不可とする処理の一例）を制御部２１によって行う構成を示している。
このような構成により得られる効果の一例として、第２コード情報の受信に基づいて、第１コード情報の利用を不可とするため、あらかじめ記憶部に記憶されていた古い第１コード情報が決済に利用されないようにすることができる。
【０３１６】
＜第２変形例（１）＞
第２実施例では、あらかじめ端末２０でストックされた端末表示用コードのコード有効期限に基づいてコード更新条件の成否を判定したが、これに限定されない。コード更新条件は、適宜設定変更可能である。
【０３１７】
図５−３は、本変形例において端末２０の記憶部２８に記憶される情報の一例を示す図である。
本変形例において、決済アプリケーションデータ２８３には、限定ではなく例として、ユーザスケジュールデータ２８３４と、コード更新条件データ２８３５とが含まれる。
【０３１８】
ユーザスケジュールデータ２８３４は、端末２０のユーザのスケジュールの情報（以下、「ユーザスケジュール情報」と称する。）が記憶されたデータである。ユーザスケジュール情報は、端末２０のユーザの操作に従って、設定・更新される。
【０３１９】
コード更新条件データ２８３５は、コード更新条件が設定されたデータであり、そのデータ構成の一例を図５−４に示す。
コード更新条件データ２８３５には、限定ではなく例として、条件種別と、条件Ｎｏと、コード更新条件とが関連付けて設定されている。
【０３２０】
＜条件種別「ＣＫ１」＞
条件種別「ＣＫ１」は、「時間」のカテゴリであり、限定ではなく例として、条件Ｎｏ「ＣＫ１−１」〜「ＣＫ１−３」のコード更新条件が含まれる。
【０３２１】
条件Ｎｏ「ＣＫ１−１」のコード更新条件として、「端末計時時刻がコード有効期限が終了する時刻から第１設定時間前の時刻となった」が定められている。
これは、第２実施例で判定したコード更新条件と同様の条件である。
ただし、第１設定時間は、必ずしもコード有効時間の半分の時間とする必要はなく、適宜設定変更可能である。
【０３２２】
条件Ｎｏ「ＣＫ１−２」のコード更新条件として、「端末計時時刻が設定時刻（設定時間帯）となった」が定められている。
これは、端末計時時刻が設定時刻となった場合、または端末計時時刻が設定時間帯に含まれる時刻となった場合に、コード更新条件が成立したと判定することを示している。
設定時刻や設定時間帯は適宜設定変更可能である。例えば、「深夜０時」や「早朝６時」等の時刻を設定時刻として設定したり、深夜帯等の時間帯を設定時間帯として設定しておくことができる。
【０３２３】
条件Ｎｏ「ＣＫ１−３」のコード更新条件として、「コードを前回更新してから第２設定時間が経過」が定められている。
これは、端末２０でストックされている端末表示用コードを前回更新してから第２設定時間が経過した場合に、コード更新条件が成立したと判定することを示している。
第２設定時間は適宜設定変更可能であるが、コード有効時間よりも短い時間を設定する必要がある。
【０３２４】
＜条件種別「ＣＫ２」＞
条件種別「ＣＫ２」は、「ユーザ」のカテゴリであり、限定ではなく例として、条件Ｎｏ「ＣＫ２−１」〜「ＣＫ２−２」のコード更新条件が含まれる。
【０３２５】
条件Ｎｏ「ＣＫ２−１」のコード更新条件として、「ユーザによるコード更新要求操作あり」が定められている。これは、端末２０のユーザによって端末表示用コードの更新を要求する操作（以下、「コード更新要求操作」と称する。）がなされた場合に、コード更新条件が成立したと判定することを示している。
この条件は、「ユーザアクション」の種別の条件と言うこともできる。
【０３２６】
条件Ｎｏ「ＣＫ２−２」のコード更新条件として、「ユーザスケジュール情報（または決済情報）に基づく更新推奨タイミングとなった」が定められている。これは、ユーザスケジュールデータ２８３４に記憶されているユーザスケジュール情報に基づく更新推奨タイミングとなった場合に、コード更新条件が成立したと判定することを示している。
【０３２７】
例えば、端末２０のユーザが定期的なタイミング（例えば、毎週何曜日、毎月何日）で、通信状況が不安定となる場所に位置する店舗で買い物を行って決済を行うような場合（特売日等）や、定期的に地下のバーに通ってお酒を飲んで決済を行うような場合は、その次のタイミングでも、端末２０のユーザは同じ店舗を利用して決済を行う可能性が高いと考えられる。
【０３２８】
そこで、端末２０は、ユーザのスケジュール情報の履歴（例えば、ユーザスケジュールデータ２８３４に含まれるユーザスケジュール情報の履歴）に基づいて、次に決済が行われるであろうタイミング（時刻や日時）を推定する。そして、そのタイミングよりも前のタイミング（例えば、出発前のタイミングや出発時のタイミング、目的地に到着する前のタイミング）を更新推奨タイミングとして設定しておくなどして、そのタイミングで端末表示用コードを更新するようにすることができる。
【０３２９】
なお、ユーザのスケジュール情報の履歴に基づいて、次に決済が行われるであろうタイミングを推定するのに代えて、またはこれに加えて、ユーザの決済情報（例えば、決済用データ２８３２に含まれる決済履歴データ）に基づいて、次に決済が行われるであろうタイミングを推定するようにしてもよい。
この条件は、「スケジュール」や「決済」、「履歴」の種別の条件と言うこともできる。
【０３３０】
＜条件種別「ＣＫ３」＞
条件種別「ＣＫ３」は、「位置」のカテゴリであり、限定ではなく例として、条件Ｎｏ「ＣＫ３−１」〜「ＣＫ３−２」のコード更新条件が含まれる。これらの条件は、「端末位置」や「ユーザ位置」、「場所」の種別の条件と言うこともできる。
【０３３１】
条件Ｎｏ「ＣＫ３−１」のコード更新条件として、「算出端末位置が設定店舗近傍の位置」が定められている。これは、位置算出用情報検出部２９Ｂによって検出された位置算出用情報に基づいて算出された端末２０の位置（以下、「算出端末位置」と称する。）が設定店舗近傍の位置である場合に、コード更新条件が成立したと判定することを示している。
【０３３２】
なお、算出端末位置は、算出された端末２０の位置であるが、ユーザが端末２０を携行していれば、算出された端末２０の位置は、端末２０のユーザの位置と同じである。つまり、ユーザが端末２０を携行していることを前提とすれば、端末２０の位置と、端末２０のユーザの位置とは、実質的に同義と言える。
【０３３３】
設定店舗は、限定ではなく例として、端末２０側、またはサーバ１０側であらかじめ設定しておくことができる。例えば、地下などの通信環境が悪い場所に位置する店舗を、端末２０のユーザの操作に従って端末２０側で設定店舗として設定したり、サーバ１０側で設定するようにすることができる。この場合、端末位置が設定店舗に近づいたタイミングで、端末表示用コードを更新させることができる。
【０３３４】
条件Ｎｏ「ＣＫ３−２」のコード更新条件として、「算出端末位置が設定範囲内の位置」が定められている。これは、算出端末位置が設定範囲内の位置である場合に、コード更新条件が成立したと判定することを示している。
【０３３５】
例えば、決済アプリケーションによる決済に対応可能な店舗が出店するイベントが開催される場合がある。このようなイベントが開催されるイベント会場には、多くの人が足を運び、会場内で端末２０を利用するため、通信状況が悪くなる可能性がある。
また、イベントが地下等で開催されるような場合には、通信を行うことができない可能性がある。
【０３３６】
そこで、あらかじめ、端末２０側、またはサーバ１０側で、限定ではなく例として、イベントが開催されるイベント会場を中心とする所定範囲（例えば半径１ｋｍ以内）を設定範囲として設定しておく。この場合、端末位置が所定範囲に入ったタイミング（端末２０のユーザがイベント会場に近づいたタイミング）で、端末表示用コードが更新されるようにすることができる。
【０３３７】
＜条件種別「ＣＫ４」＞
条件種別「ＣＫ４」は、「緊急」のカテゴリであり、限定ではなく例として、条件Ｎｏ「ＣＫ４−１」のコード更新条件が含まれる。この条件は、「世の中の状況」の種別の条件と言うこともできる。
【０３３８】
条件Ｎｏ「ＣＫ４−１」のコード更新条件として、「災害情報・防災情報受信」が定められている。これは、端末２０が、地震災害情報、気象災害情報、水害情報、土砂災害情報等の災害情報・防災情報を受信した場合に、コード更新条件が成立したと判定することを示している。
【０３３９】
災害が発生すると、通信インフラが機能しなくなり、端末２０がオフライン状態となることが想定される。そこで、端末２０が災害情報・防災情報を受信した場合に、端末表示用コードを更新しておく。
【０３４０】
本実施例では、端末２０の制御部２１は、図５−２の端末側コード更新処理のＤ１１０において、コード更新条件データ２８３５に基づいて、コード更新条件が成立したか否かを判定する。そして、限定ではなく例として、少なくとも１つのコード更新条件が成立した場合に、コード更新条件が成立したと判定する。
【０３４１】
なお、コード更新条件データ２８３５において、それぞれのコード更新条件に関連付けて優先度を設定しておくようにする。そして、所定の優先度（閾値となる優先度）よりも高い優先度が関連付けて設定されているコード更新条件のうちの少なくとも１つのコード更新条件が成立した場合に、コード更新条件が成立したと判定するようにしてもよいし、そのようにしなくてもよい。
【０３４２】
また、コード更新条件データ２８３５に定められたコード更新条件のうち、いずれのコード更新条件を適用するかを、端末２０側またはサーバ１０側であらかじめ設定しておくようにしてもよい。この場合は、適用する設定が行われたコード更新条件のうちの少なくとも１つのコード更新条件が成立した場合に、コード更新条件が成立したと判定するようにしてもよいし、そのようにしなくてもよい。
【０３４３】
＜第２変形例（１）の効果＞
本変形例は、端末２０が、設定時刻に基づきサーバ１０から送信された、サーバ１０によって新たなコード有効期限（限定ではなく、第３有効期限の一例）が関連付いた更新端末表示用コード（限定ではなく、第３コード情報の一例）を、通信Ｉ／Ｆ２２によって受信する構成を示している。
このような構成により得られる効果の一例として、端末は、設定された時刻に基づきサーバから送信された、サーバによって第３有効期限が関連付いた第３コード情報を、通信部によって受信することができる。
【０３４４】
また、本変形例は、端末２０が、端末２０のユーザの情報（例えば、ユーザスケジュール情報、ユーザの決済履歴、端末２０（端末２０のユーザ）の位置等）に基づきサーバ１０から送信された、サーバ１０によって新たなコード有効期限（限定ではなく、第４有効期限の一例）が関連付いた更新端末表示用コード（限定ではなく、第４コード情報の一例）を、通信Ｉ／Ｆ２２によって受信する構成を示している。
このような構成により得られる効果の一例として、端末のユーザの情報に基づいてサーバから送信された、サーバによって第４有効期限が関連付いた第４コード情報を、通信部によって受信することができる。
【０３４５】
また、本変形例は、端末２０が、災害情報に基づきサーバ１０から送信された、サーバ１０によって新たなコード有効期限（限定ではなく、第５有効期限の一例）が関連付いた更新端末表示用コード（限定ではなく、第５コード情報の一例）を、通信Ｉ／Ｆ２２によって受信する構成を示している。
このような構成により得られる効果の一例として、端末は、サーバによって取得された災害に関する情報に基づきサーバから送信された、サーバによって第５有効期限が関連付いた第５コード情報を、通信部によって受信することができる。
【０３４６】
＜第２変形例（２）＞
第２実施例では、端末表示用コードの更新を端末２０からサーバ１０に依頼することとしたが、これに限定されない。端末表示用コードの更新を依頼するのではなく、ストックしている端末表示用コードに関連付けられたコード有効期限の延長を端末２０からサーバ１０に依頼するようにしてもよい。
【０３４７】
図５−５は、本変形例における各装置が実行する処理の流れの一例を示すフローチャートである。左側に、端末２０の制御部２１が実行する端末側コード有効期限延長処理を示し、右側に、サーバ１０の制御部１１が実行するサーバ側コード有効期限延長処理を示す。これらの処理は、限定ではなく例として、前述した端末２０の決済アプリケーション処理と、前述したサーバ１０の決済管理処理とのそれぞれにおいてバックグラウンドで実行される処理である。
【０３４８】
最初に、制御部２１は、コード有効期限延長条件判定処理を行う（Ｄ２１０）。コード有効期限延長条件は、限定ではなく例として、図５−４に示したコード更新条件と同様の条件とすることができる。
【０３４９】
なお、第１の端末表示用コードストックデータ２８３１Ａを適用する場合は、１つの端末表示用コードが記憶されているため、この端末表示用コードを対象とし、この端末表示用コードに関連付けられたコード有効期限に基づいて、Ｄ２１０の判定を行えばよい。
【０３５０】
一方、第２の端末表示用コードストックデータ２８３１Ｂを適用する場合は、複数の端末表示用コードが記憶されているため、これら複数の端末表示用コードそれぞれを対象とし、それぞれの端末表示用コードに関連付けられたコード有効期限に基づいて、Ｄ２１０の判定を行えばよい。
【０３５１】
コード有効期限延長条件が成立したと判定したならば（Ｄ２２０：ＹＥＳ）、制御部２１は、オンライン状態であるか否かを判定する（Ｄ２３０）。そして、オンライン状態であると判定したならば（Ｄ２３０：ＹＥＳ）、制御部２１は、認証処理を行う（Ｄ２４０）。
【０３５２】
具体的には、限定ではなく例として、認証画面を表示部２４に表示させ、ユーザに認証パスワードを入力させる。そして、入力された認証パスワードが、あらかじめ決済アプリケーションデータ２８３に登録・記憶されている認証パスワードと一致するか否かを判定する。そして、一致する場合は、認証結果を「ＯＫ」とし、一致しない場合は、認証結果を「ＮＧ」とする。
【０３５３】
認証結果が「ＯＫ」であったならば（Ｄ２５０：ＹＥＳ）、制御部２１は、限定ではなく例として、アプリケーションＩＤと、コード有効期限の延長を依頼する端末表示用コードのコードＮｏとを含むコード有効期限延長依頼情報を、通信Ｉ／Ｆ２２によってサーバ１０に送信する（Ｄ２６０）。
【０３５４】
ここで、「コード有効期限延長依頼情報」は、端末２０でストックされている端末表示用コードに関連付けられたコード有効期限の延長を依頼（申請）する情報であり、コード有効期限の延長に関するリクエストとも言える。
また、「コード有効期限延長依頼情報」は、延長されたコード有効期限の送信を依頼する情報とも言える。
【０３５５】
サーバ１０の制御部１１は、端末２０からコード有効期限延長依頼情報を受信したか否かを判定する（Ｅ２１０）。そして、受信したと判定したならば（Ｅ２１０：ＹＥＳ）、コード有効期限延長処理を行う（Ｅ２２０）。
【０３５６】
具体的には、限定ではなく例として、記憶部１５のコード管理データベース１５９のうち、受信されたコード有効期限延長依頼情報に含まれるアプリケーションＩＤのコード管理データを参照する。そして、そのコード管理データに、受信されたコード有効期限延長依頼情報に含まれるコードＮｏが記憶されているか否かを判定し、記憶されていると判定したならば、そのコードＮｏと関連付けて記憶されているコード有効期限を延長して更新する。このようにして延長されたコード有効期限を、以下、「延長コード有効期限」と称する。
【０３５７】
次いで、制御部２１は、延長コード有効期限を、通信Ｉ／Ｆ１４によって端末２０に送信する（Ｅ２７０）。
【０３５８】
その後、制御部１１は、処理を終了するか否かを判定し（Ｅ２９０）、処理を継続すると判定したならば（Ｅ２９０：ＮＯ）、Ｅ２１０に処理を戻す。また、処理を終了すると判定したならば（Ｅ２９０：ＹＥＳ）、サーバ側コード有効期限延長処理を終了する。
【０３５９】
また、端末２０からコード有効期限延長依頼情報を受信しなかった場合（Ｅ２１０：ＮＯ）、制御部１１は、Ｅ２９０へと処理を移す。
【０３６０】
通信Ｉ／Ｆ２２によってサーバ１０から延長コード有効期限を受信すると（Ｄ２７０）、制御部２１は、対応するコードＮｏと関連付けて端末表示用コードストックデータ２８３１に記憶されているコード有効期限を、受信された延長コード有効期限で更新する（Ｄ２８０）。
【０３６１】
その後、制御部２１は、処理を終了するか否かを判定し（Ｄ２９０）、処理を継続すると判定したならば（Ｄ２９０：ＮＯ）、Ｄ２１０に処理を戻す。また、処理を終了すると判定したならば（Ｄ２９０：ＹＥＳ）、端末側コード有効期限延長処理を終了する。
【０３６２】
また、コード有効期限延長条件が成立しないと判定された場合（Ｄ２２０：ＮＯ）、オンライン状態ではないと判定された場合（Ｄ２３０：ＮＯ）、または、認証結果が「ＮＧ」であると判定された場合（Ｄ２５０：ＮＯ）、制御部１１は、Ｄ２９０へと処理を移す。
【０３６３】
なお、この処理において、延長コード有効期限をサーバ１０から受信した場合に、端末２０が、コード有効期限が延長されたことを示す情報（例えば、コード有効期限が延長された旨のメッセージや、コード有効期限が延長されたことを示す画像）を、プッシュ通知によって表示部２４に表示したり、決済アプリケーションを実行中である場合は、表示部２４の決済アプリケーション画面に表示させるようにしてもよい。
【０３６４】
また、この処理において、認証処理は必ずしも行う必要はなく、認証処理を省略するようにしてもよい。
【０３６５】
＜第２変形例（２）の効果＞
本変形例は、端末２０が、コード有効期限延長依頼情報（限定ではなく、第１有効期限の延長をサーバに依頼する情報の一例）を、サーバ１０に通信Ｉ／Ｆ２２によって送信する構成を示している。
このような構成により得られる効果の一例として、第１有効期限の延長をサーバに依頼することができる。
【０３６６】
また、本変形例は、端末２０が、認証処理（限定ではなく、端末のユーザの認証に関する処理の一例）の実行に基づいて、延長コード有効期限をサーバ１０から取得する処理（限定ではなく、第１有効期限の延長に関する処理の一例）を制御部２１によって行う構成を示している。
このような構成により得られる効果の一例として、端末のユーザの認証に関する処理の実行に基づいて、第１有効期限の延長に関する処理を端末の制御部によって行うことで、第１有効期限を延長するに際して、セキュリティを高めることができる。
【０３６７】
また、本変形例は、端末２０が、サーバ１０から送信された、延長コード有効期限を、通信Ｉ／Ｆ２２によって受信する。そして、コード有効期限が延長されたことを示す情報を、端末２０の表示領域に表示する構成を示している。
このような構成により得られる効果の一例として、第１有効期限が延長されたことを端末のユーザに報知することができるため、ユーザの利便性を向上させることができる。
【０３６８】
＜第２変形例（３）＞
第２実施例において、端末２０からのリクエストに応じてサーバ１０が端末表示用コードを更新して端末２０に送信するのではなく、端末２０からのリクエストなしに、サーバ１０が端末表示用コードを更新して端末２０に送信するようにしてもよいし、そのようにしなくてもよい。
【０３６９】
本明細書では、端末２０からのリクエストなしにサーバ１０が情報やデータを端末２０に送信すること（サーバ１０が自発的に情報やデータを送信すること）を「プッシュ送信」と称する。
【０３７０】
この場合は、限定ではなく例として、サーバ１０が、定期的なタイミングや特定のタイミングで、端末表示用コード更新処理を行う。
または、サーバ１０が、前述したコード更新条件と同様の条件に基づいて、随時、コード更新条件の成否を判定するようにし、コード更新条件が成立すると判定した場合、端末表示用コード更新処理を行う。
そして、サーバ１０は、更新端末表示用コードと、そのコード有効期限とを端末２０にプッシュ送信する。
【０３７１】
また、第２変形例（２）において、端末２０からのリクエストに応じてサーバ１０がコード有効期限を延長するのではなく、端末２０からのリクエストなしに、サーバ１０がコード有効期限を延長して端末２０に送信するようにしてもよいし、そのようにしなくてもよい。
【０３７２】
この場合は、限定ではなく例として、サーバ１０が、定期的なタイミングや特定のタイミングで、コード有効期限延長処理を行う。
または、サーバ１０が、前述したコード有効期限延長条件と同様の条件に基づいて、随時、コード有効期限延長条件の成否を判定するようにし、コード有効期限延長条件が成立すると判定した場合、コード有効期限延長処理を行う。
そして、サーバ１０は、延長コード有効期限を端末２０にプッシュ送信する。
【０３７３】
＜第２変形例（４）＞
第２実施例では、端末表示用コードを更新する処理を説明したが、これに限定されない。端末表示用コードを更新する処理ではなく、新たな端末表示用コードを生成する処理としてもよいし、そのようにしなくてもよい。
【０３７４】
具体的には、限定ではなく例として、新たな端末表示用コードの生成を依頼する新コード生成依頼情報を、端末２０からサーバ１０に送信する。サーバ１０は、端末２０から新コード生成依頼情報を受信したことに基づいて、前述した端末表示用コード生成処理と同様の処理を行って新たな端末表示用コードを生成し、コード生成日時、決済用番号、コード有効期限等の情報とともにコード管理データに記憶させる。そして、サーバ１０は、生成した新たな端末表示用コードや、そのコード有効期限に関する情報を、端末２０に送信するようにすることもできる。
【０３７５】
＜第３実施例＞
第３実施例は、コード有効期限の設定方法（コード有効期限をどのように設定するか）に関する実施例である。
第３実施例に記載の内容は、他の各実施例や他の各変形例のいずれにも適用可能である。
また、既出の構成要素と同一の構成要素については同一の符号を付して、再度の説明を省略する。
【０３７６】
図６−１は、本実施例においてサーバ１０の記憶部１５に記憶される情報の一例を示す図である。
本実施例において、記憶部１５には、限定ではなく例として、アカウント別管理データベース１５２と、開催イベントデータ１５４と、コード有効期限設定用データ１５６とが記憶される。
【０３７７】
アカウント別管理データベース１５２は、決済アプリケーションのアカウント別の管理データであり、そのデータ構成の一例を図６−２に示す。
アカウント別管理データベース１５２には、アカウント別に、アカウント管理データが記憶される。
【０３７８】
各アカウント別管理データには、限定ではなく例として、アプリケーションＩＤと、信用スコアと、端末位置履歴データと、ユーザスケジュールデータと、決済履歴データと、オフライン傾向データとが記憶される。
【０３７９】
アプリケーションＩＤには、ユーザ登録データ１５３に記憶されているアプリケーションＩＤが記憶される。
【０３８０】
信用スコアは、端末２０のユーザの社会的な信用を数値やランク等で表したものである。
信用スコアは、限定ではなく例として、端末２０のユーザの支払い実績、年齢、勤務形態、年収等をもとに算出され、随時更新される。
【０３８１】
限定ではなく例として、信用スコアを「０点」〜「１００点」の点数方式で数値化し、信用スコア「１００点」がユーザの社会的な信用が最も高く、信用スコア「０点」がユーザの社会的な信用が最も低いことを示すようにすることができる。
【０３８２】
端末位置履歴データは、端末の位置（以下、「端末位置」と称する。）の履歴が記憶される。限定ではなく例として、端末２０が位置算出処理を行って算出した端末位置（以下、「算出端末位置」と称する。）が、端末位置が算出される毎のタイミングや、定期的なタイミングで端末２０からサーバ１０に送信され、この算出端末位置が端末位置として端末位置履歴データに随時記憶されるようにすることができる。
【０３８３】
なお、これとは異なり、前述したコード生成依頼情報やコード更新依頼情報、コード有効期限延長情報等を端末２０からサーバ１０に送信する際に、最新の端末位置を端末２０からサーバ１０に送信するようにしてもよいし、そのようにしなくてもよい。
【０３８４】
ユーザスケジュールデータは、このアプリケーションＩＤの端末２０のユーザスケジュール情報が記憶されたデータである。このユーザスケジュールデータは、端末２０の記憶部２８に記憶されるユーザスケジュールデータ２８３４（図５−３参照）と同期して随時更新されるようにすることができる。
【０３８５】
決済履歴データは、決済管理データベース１５７に記憶されている決済管理データのうち、このアプリケーションＩＤの決済管理データに含まれる決済履歴データである。
【０３８６】
オフライン傾向データは、このアプリケーションＩＤの端末２０がオフライン状態となる傾向を分析したデータである。限定ではなく例として、サーバ１０は、過去に端末２０と通信不可となった期間を、オフライン傾向データに履歴として記憶させておくようにすることができる。
【０３８７】
開催イベントデータ１５４は、端末表示用コードを利用した決済が行われ得るイベントに関するデータであり、限定ではなく例として、イベントの開催日時や、イベントの開催場所、イベントに出店する店舗等の情報が記憶される。これらの情報は、サーバ１０によってイベントの主催団体等からあらかじめ取得されて、開催イベントデータ１５４に記憶される。
【０３８８】
コード有効期限設定用データ１５６は、コード有効期限を設定するために用いられるデータである。このコード有効期限設定用データ１５６には、限定ではなく例として、上記のアカウント別管理データに含まれるデータから特定される信用スコア、位置（端末位置、ユーザ位置）、ユーザスケジュール、決済履歴、オフライン傾向等を判定項目とし、これらの判定項目に基づきコード有効時間を設定するための方法が定められている。
【０３８９】
限定ではなく例として、コード生成日時とコード有効時間とによってコード有効期限が定まるため、コード有効時間を設定することは、コード有効期限を設定することと実質的に同義である。
【０３９０】
（１）信用スコア
信用スコアが高いほど、ユーザの社会的な信用は高いと言える。
このため、限定ではなく例として、信用スコアが高いほど、コード有効時間としてより長い時間を設定することを定めておくことができる。例えば、信用スコアに対する閾値（段階的な閾値）に基づく複数の閾値条件を定めておき、信用スコアがいずれの閾値条件を満たすかによって、異なるコード有効時間を設定するようにすることができる。
【０３９１】
例えば、信用スコアが「８０点以上」であればコード有効時間を「基準コード有効時間×１．２」とし、信用スコアが「６０点以上８０点未満」であればコード有効時間を「基準コード有効時間×１．０」とし、信用スコアが「６０点未満」であればコード有効時間を「基準コード有効時間×０．８」とすることなどを定めておくことができる。
【０３９２】
「基準コード有効時間」とは、限定ではなく例として、サーバ１０によってデフォルトとして設定される有効時間である。
限定ではなく例として、第１実施例で説明した「６時間」、「１２時間」、「１８時間」、「２４時間」等のコード有効時間を、基準コード有効時間として設定しておくことができる。
【０３９３】
（２）端末位置（ユーザ位置）
コード有効期限設定用データ１５６には、限定ではなく例として、端末位置に基づきコード有効時間を設定するための条件が定められている。
例えば、サーバ１０側で、安全性の高い場所（ピンポイントの位置や一定範囲の地域等）と、安全性の低い場所とを設定しておく。
ここで言う「安全性」とは、コード有効時間を長くすることにリスクが生じにくいことを意味する。
【０３９４】
安全性の高い場所としては、限定ではなく例として、端末２０が他人に盗まれる可能性が低い場所（ユーザが端末２０を置き忘れる可能性が低い場所等）、例えば、端末２０のユーザの自宅の位置やその付近の地域等が考えられる。
安全性の低い場所としては、限定ではなく例として、端末２０が他人に盗まれる可能性が低い場所（ユーザが端末２０を置き忘れる可能性が低い場所等）、例えば、居酒屋等の飲食店の位置やその付近の地域等が考えられる。
【０３９５】
この場合、限定ではなく例として、端末位置が安全性の高い場所に含まれる場合は、端末位置が安全性の低い場所に含まれる場合よりも、コード有効時間としてより長い時間を設定することを定めておくようにすることができる。
【０３９６】
例えば、端末位置が安全性の高い場所に含まれる場合はコード有効時間を「基準コード有効時間×１．２」とし、端末位置が安全性の低い場所に含まれる場合はコード有効時間を「基準コード有効時間×０．８」とすることなどを定めておくことができる。
【０３９７】
（３）ユーザスケジュール
コード有効期限設定用データ１５６には、限定ではなく例として、ユーザスケジュールに基づきコード有効時間を設定するための条件が定められている。
例えば、所定時間以内や所定日数以内にユーザが特定のイベントに行くことが予定されている場合、端末表示用コードを用いて決済が行われる可能性が高い。
【０３９８】
このため、限定ではなく例として、所定時間以内や所定日数以内に端末２０のユーザが特定のイベントに行くことが予定されている場合、コード有効時間として基準コード有効時間よりも長い時間を設定するなどすればよい。
【０３９９】
（４）決済履歴
コード有効期限設定用データ１５６には、限定ではなく例として、端末２０のユーザの決済履歴に基づきコード有効時間を設定するための条件が定められている。
決済履歴から、端末２０のユーザが定期的なタイミング（例えば、毎週何曜日、毎月何日）で同じ店舗を利用して決済を行う傾向があることが分かる場合、その次のタイミングでも、端末２０のユーザは同じ店舗を利用して決済を行う可能性が高い。
【０４００】
このため、限定ではなく例として、端末２０のユーザが定期的なタイミングで同じ店舗を利用して決済を行う傾向がある場合、コード有効時間として基準コード有効時間よりも長い時間を設定するなどすればよい。
【０４０１】
また、端末２０のユーザが決済を行う頻度や回数に基づいて、コード有効時間を設定するようにすることもできる。
具体的には、そのアプリケーションＩＤに関連付けられた決済履歴データに基づいて、単位期間における決済が行われた頻度（以下、「決済頻度」と称する。）や回数（以下、「決済回数」と称する。）を算出する。そして、決済頻度が高いほど、または、決済回数が多いほど、コード有効時間としてより長い時間を設定するように定めておくことができる。
【０４０２】
（５）オフライン傾向
コード有効期限設定用データ１５６には、限定ではなく例として、オフライン傾向に基づきコード有効時間を設定するための条件が定められている。
端末２０が頻繁にオフライン状態となるのであれば、コード有効時間を長く設定しておおかなければ、いざという時に決済を行うことができなくなる可能性がある。
【０４０３】
そこで、限定ではなく例として、単位期間における端末２０がオフライン状態となる頻度（以下、「オフライン頻度」と称する。）や回数（以下、「オフライン回数」と称する。）を算出する。そして、オフライン頻度が高いほど、または、オフライン回数が多いほど、コード有効時間としてより長い時間を設定するように定めておくことができる。
【０４０４】
なお、上記の判定項目は一例に過ぎず、適宜設定変更可能である。
例えば、端末２０側で、複数のコード有効時間の候補の中から、一のコード有効時間をユーザに選択させる。そして、選択されたコード有効時間を端末２０からサーバ１０に送信するようにして、サーバ１０側で、端末２０のアプリケーションＩＤと関連付けて、端末２０から受信されたコード有効時間を設定するようにしてもよいし、そのようにしなくてもよい。
【０４０５】
本実施例では、サーバ１０の制御部１１は、限定ではなく例として、端末表示用コード生成処理（図４−１４のＣ３２０）、端末表示用コード更新処理（図５−２のＥ１２０）、コード有効期限延長処理（図５−５のＥ２２０）を行う前に、コード有効期限設定処理を行う。
【０４０６】
コード有効期限設定処理では、制御部１１は、限定ではなく例として、コード有効期限設定用データ１５６を参照し、限定ではなく例として、上記の複数の判定項目のうち、少なくともいずれか１つの判定項目に基づいて、コード有効期限を設定してもよいし、その組み合わせによって、コードの有効期限を設定してもよい。例えば、信用スコアが高く、オフライン頻度や、オフライン回数が多いユーザは、同じ信用スコアのユーザよりも、有効期限を長く設定してもよいし、しなくてもよい。
【０４０７】
＜第３実施例の効果＞
第３実施例は、コード有効期限は、端末２０のユーザの情報に基づサーバ１０によって設定される構成を示している。
このような構成により得られる効果の一例として、端末は、端末のユーザの情報に基づいて適切に設定された第１有効期限に基づいて、サーバに決済を行わせることができる。
【０４０８】
また、第３実施例は、端末２０のユーザの情報は、ユーザの信用スコアを含む構成を示している。
このような構成により得られる効果の一例として、端末は、端末のユーザの信用スコアに基づいて適切に設定された第１有効期限に基づいて、サーバに決済を行わせることができる。
【０４０９】
また、第３実施例は、端末２０のユーザの情報は、ユーザの位置の情報、または端末の位置の情報を含む構成を示している。
このような構成により得られる効果の一例として、端末は、端末のユーザの位置の情報、または端末の位置の情報に基づいて適切に設定された第１有効期限に基づいて、サーバに決済を行わせることができる。
【０４１０】
また、第３実施例は、端末２０のユーザの情報は、ユーザスケジュール情報を含む構成を示している。
このような構成により得られる効果の一例として、端末は、端末のユーザのスケジュールの情報に基づいて適切に設定された第１有効期限に基づいて、サーバに決済を行わせることができる。
【０４１１】
また、第３実施例は、端末２０のユーザの情報は、ユーザの端末表示用コードに基づく決済履歴や決済頻度（または決済回数）（限定ではなく、ユーザのコード情報に基づく決済の情報の一例）を含む構成を示している。
このような構成により得られる効果の一例として、端末は、端末のユーザのコード情報に基づく決済の情報に基づいて適切に設定された第１有効期限に基づいて、サーバに決済を行わせることができる。
【０４１２】
また、第３実施例は、コード有効期限は、サーバ１０によって取得された開催イベント情報（限定ではなく、イベントに関する情報の一例）に基づいて設定される構成を示している。
このような構成により得られる効果の一例として、端末は、サーバによって取得されたイベントに関する情報に基づいて適切に設定された第１有効期限に基づいて、サーバに決済を行わせることができる。
【０４１３】
＜第４実施例＞
第４実施例は、コード表示期限よりもコード有効期限の方が先に経過する場合の対策に関する実施例である。この場合、コード表示期限よりもコード有効期限の方が先に経過するため、コード表示画面に表示される端末表示用コードが使用できない場合が生ずる。
【０４１４】
第４実施例に記載の内容は、他の各実施例や他の各変形例のいずれにも適用可能である。
また、既出の構成要素と同一の構成要素については同一の符号を付して、再度の説明を省略する。
【０４１５】
図７−１は、本実施例において端末２０のコード表示処理部２１１３が実行するコード表示処理の一例である第１のコード表示処理の流れの一例を示す図である。
最初に、コード表示処理部２１１３は、端末表示用コードストックデータ２８３１に記憶されている端末表示用コードのうち、表示対象とする端末表示用コードを決定する（Ｆ１１０）。
【０４１６】
オンライン状態においてサーバ１０から取得した１つのコードを端末２０でストックする場合は、第１の端末表示用コードストックデータ２８３１Ａ（図４−９参照）に記憶されている端末表示用コードを、表示対象とする端末表示用コードに決定する。
【０４１７】
一方、オンライン状態においてサーバ１０から取得した複数（２以上）のコードを端末２０でストックする場合は、第２の端末表示用コードストックデータ２８３１（図４−１５参照）に記憶されている端末表示用コードのうち、限定ではなく例として、最も古い端末表示用コード（コード有効期限が最も近い端末表示用コード）を、表示対象とする端末表示用コードに決定する。
【０４１８】
その後、コード表示処理部２１１３は、Ｆ１１０で決定した端末表示用コードに関連付けて記憶されているコード有効期限と、時計部２９Ａの計時時刻とに基づき、コード有効期限の残り時間が、前述したコード表示時間よりも短いか否かを判定する（Ｆ１２０）。
【０４１９】
コード有効期限の残り時間がコード表示時間よりも短いと判定したならば（Ｆ１２０：ＹＥＳ）、コード表示処理部２１１３は、Ｆ１１０で決定した端末表示用コードを端末表示用コードストックデータ２８３１から削除する（Ｆ１３０）。そして、コード表示処理部２１１３は、限定ではなく例として、端末表示用コードを表示させることができない旨のメッセージ等を含むエラー画面を表示部２４に表示させた後（Ｆ１４０）、第１のコード表示処理を終了する。
【０４２０】
一方、コード有効期限の残り時間がコード表示時間よりも短いないと判定したならば（Ｆ１２０：ＮＯ）、コード表示処理部２１１３は、Ｆ１１０で決定した端末表示用コードのコード画像を含む第１のコード表示画面を表示部２４に表示させる（Ｆ１５０）。この場合、前述したように、コード有効期限に関する情報や、コード表示期限に関する情報を、第１のコード表示画面に表示させるようにしてもよいし、表示させなくてもよい。そして、コード表示処理部２１１３は、第１のコード表示処理を終了する。
【０４２１】
この処理では、コード有効期限の残り時間がコード表示時間よりも短い場合は、端末表示用コードを削除し、その端末表示用コードが表示部２４に表示されないようにすることができる。
【０４２２】
なお、この処理では、コード有効期限の残り時間がコード表示時間よりも短い場合は、端末表示用コードを削除し、その端末表示用コードが表示部２４に表示されないようにしたが、これに限定されない。
【０４２３】
具体的には、一時的に情報を記憶する記憶領域として、限定ではなく例として、コード表示時間分の時間を確保するバッファを端末２０の記憶部２８に設ける。例えば、コード表示時間を「５分」とするのであれば、「５分」分の時間を確保するバッファを設ける。
【０４２４】
この場合、コード表示時間分の時間がバッファに確保されていることで、端末２０の制御部２１は、「実際のコード表示期限の残り時間＋コード表示時間」をコード表示期限の残り時間として処理を行う。このため、実際のコード有効期限の残り時間はコード表示時間よりも短いにも関わらず、制御部２１は、コード有効期限の残り時間はコード表示時間以上であると判定するため、表示対象とする端末表示用コードを含むコード表示画面が表示部２４に表示されることになる。
【０４２５】
図７−２は、本実施例において端末２０のコード表示処理部２１１３が実行するコード表示処理の別例である第２のコード表示処理の流れの一例を示す図である。
なお、前述した処理と同一のステップについては同一の符号を付して、再度の説明を省略する。
【０４２６】
この処理は、図７−１の処理のＦ１３０、Ｆ１４０のステップを、それぞれＦ２３０、Ｆ２４０のステップに変更したものである。
【０４２７】
Ｆ１１０の後、コード有効期限の残り時間がコード表示時間よりも短いと判定したならば（Ｆ１２０：ＹＥＳ）、コード表示処理部２１１３は、コード表示期限変更処理を行う（Ｆ２３０）。具体的には、限定ではなく例として、コード有効期限の残り時間と同じ時間をコード表示時間として設定する。つまり、コード有効期限とコード表示期限とが同じとなるように、コード表示期限を短縮する。
【０４２８】
その後、コード表示処理部２１１３は、Ｆ１１０で決定した端末表示用コードのコード画像を含む第２のコード表示画面を表示部２４に表示させる（Ｆ２４０）。この場合、前述したように、コード有効期限に関する情報や、変更したコード表示期限に関する情報を、第２のコード表示画面に表示させるようにしてもよいし、表示させなくてもよい。そして、コード表示処理部２１１３は、第２のコード表示処理を終了する。
【０４２９】
この処理では、コード有効期限の残り時間がコード表示時間よりも短い場合は、コード有効期限とコード表示期限とが同じとなるようにコード表示期限を短縮した上で、コード表示画面を表示部２４に表示する。
【０４３０】
図７−３は、本実施例において端末２０のコード表示処理部２１１３が実行するコード表示処理の別例である第３のコード表示処理の流れの一例を示す図である。
なお、前述した処理と同一のステップについては同一の符号を付して、再度の説明を省略する。
【０４３１】
この処理は、図７−１の処理のＦ１１０、Ｆ１３０、Ｆ１４０のステップを、それぞれＦ３１０、Ｆ３３０、Ｆ３４０のステップに変更したものである。
【０４３２】
この処理では、オンライン状態においてサーバ１０から取得した複数（２以上）のコードが端末２０でストックされる、つまり、複数の端末表示用コードのデータが第２の端末表示用コードストックデータ２８３１Ｂに記憶されていることとして説明する。
【０４３３】
最初に、コード表示処理部２１１３は、第２の端末表示用コードストックデータ２８３１Ｂに記憶されている端末表示用コードのうち、限定ではなく例として、最も古い端末表示用コード（コード有効期限が最も近い端末表示用コード）を、表示対象とする端末表示用コードに決定する（Ｆ３１０）。
【０４３４】
その後、コード有効期限の残り時間がコード表示時間よりも短いと判定したならば（Ｆ１２０：ＹＥＳ）、コード表示処理部２１１３は、端末表示用コード変更処理を行う（Ｆ３３０）。具体的には、限定ではなく例として、第２の端末表示用コードストックデータ２８３１Ｂに記憶されている端末表示用コードのうち、限定ではなく例として、コード有効期限の残り時間がコード表示時間以上である端末表示用コードであって最も古い端末表示用コード（コード有効期限が最も近い端末表示用コード）を、表示対象とする端末表示用コードに変更する。
【０４３５】
その後、コード表示処理部２１１３は、Ｆ３３０で変更した端末表示用コードのコード画像を含む第３のコード表示画面を表示部２４に表示させる（Ｆ３４０）。この場合、前述したように、コード有効期限に関する情報や、コード表示期限に関する情報を、第３のコード表示画面に表示させるようにしてもよいし、表示させなくてもよい。そして、コード表示処理部２１１３は、第３のコード表示処理を終了する。
【０４３６】
この処理では、コード有効期限の残り時間がコード表示時間よりも短い場合は、コード有効期限の残り時間がコード表示時間以上である端末表示用コードを表示対象に変更した上で、コード表示画面を表示部２４に表示する。
【０４３７】
なお、この処理では、コード表示画面を表示させる前に、表示対象とする端末表示用コードに変更したが、これに限定されない。
具体的には、コード表示処理部２１１３が、表示対象とする端末表示用コードを含むコード表示画面に表示した後、コード有効期限の残り時間がコード表示時間よりも短いか否かを判定する。そして、この条件を満たす場合は、端末表示用コード変更処理を行って、表示中の端末表示用コードを、コード有効期限の残り時間がコード表示時間以上である端末表示用コードに変更して、表示中のコード表示画面に反映させるようにすることもできる。つまり、コード表示画面の表示途中で、端末表示用コードを変更するようにしてもよいし、そのようにしなくてもよい。
【０４３８】
また、上記の各種の処理の他にも、限定ではなく例として、コード有効期限の残り時間がコード表示時間よりも短いと判定した場合、表示対象とする端末表示用コードに関連付けて設定されたコード有効期限を延長するようにすることもできる。
【０４３９】
具体的には、限定ではなく例として、コード有効期限の残り時間がコード表示時間よりも短いと判定した場合、制御部２１は、コード有効期限が終了する時刻（日時）が、コード表示期限が終了する時刻（日時）と同じとなるように、コード有効期限を延長する。
【０４４０】
オンライン状態であれば端末２０はサーバ１０と通信することができるため、前述した端末側コード有効期限延長処理（図５−５参照）と同様の処理によってサーバ１０と通信を行って、表示対象とする端末表示用コードに関連付けられたコード有効期限をサーバ１０に延長させることができる。
【０４４１】
しかしながら、オフライン状態では端末２０はサーバ１０と通信することができない。このため、オフライン状態では、上記の処理は、あくまでも端末２０側でコード有効期限を延長する処理となる。
【０４４２】
また、限定ではなく例として、例えば図４−１７や図４−１８、図４−１９に示したように、端末２０の表示部２４に表示させるコード表示画面には、端末表示用コード画像や決済用番号の他に、コード有効期限の情報を表示させることができる。
しかしながら、例えば図４−１６に示したように、コード表示画面に、コード表示期限の情報は表示させるが、コード有効期限の情報は表示させないようにすることができる。
【０４４３】
この場合、前述したように、限定ではなく例として、コード有効期限とコード表示期限とが同じとなるようにコード表示期限を短縮した上で、コード表示画面に、コード有効期限の情報は表示させずに、コード表示期限の情報を表示させるようにすることができる。
つまり、コード有効期限をコード表示期限に統合することとして、コード有効期限の情報は表示させずに、コード表示期限の情報を表示させるようにすることもできる。この場合、コード有効期限は、実質的にコード表示期限と同じになる。
【０４４４】
＜第４実施例の効果＞
第４実施例は、コード有効期限やコード有効期限の残り時間の情報がコード表示画面に表示される場合、これらの情報を、コード有効期限から設定された期限に変更して、コード表示画面に表示する構成を示している。
このような構成により得られる効果の一例として、第１有効期限が端末の表示領域に表示される場合、第１有効期限から設定された期限に変更して表示領域に表示することで、例えば端末におけるコード情報の表示期限よりも前に第１有効期限が経過するようなケースにも対応可能となり、ユーザの利便性を向上させることができる。
【０４４５】
＜第５実施例＞
端末表示用コードに関連付けるコード有効期限としてサーバ１０によって長い期間が設定された場合、セキュリティが低く、端末２０でストックされた端末表示用コードが他人に盗まれるなどのリスクが高まる。
【０４４６】
本実施例では、端末２０は、複数（２以上）の端末表示用コードの生成を依頼するコード生成依頼情報を、通信Ｉ／Ｆ２２によってサーバ１０に送信する。コード生成依頼情報を受信すると、サーバ１０は、端末表示用コード生成処理を行う。
【０４４７】
本実施例では、端末表示用コード生成処理において、サーバ１０の制御部１１は、コード有効期限の開始時刻（または開始日時）と終了時刻（または終了日時）とが異なる複数の端末表示用コードを生成する。そして、生成した複数の端末表示用コードのデータを、コード管理データベース１５９に記憶させる。
【０４４８】
図８は、本実施例においてサーバ１０の記憶部１５に記憶されるコード管理データベース１５９の一例である。
このコード管理データベース１５９は、図４−６に示したコード管理データベース１５９と同様であるが、各コード管理データにアプリケーションＩＤとともに記憶される端末表示用コードのデータが一部異なっている。
【０４４９】
具体的には、コード管理データには、アプリケーションＩＤとともに、限定ではなく例として、２個の端末表示用コードを１組とする、コード生成日時は同じであるが、コード有効期限の開始日時が異なる２組（計４個）の端末表示用コードが記憶されている。
【０４５０】
この表示例では、アプリケーションＩＤ「Ｕ０００１」の端末２０、または端末２０のユーザについて、コード生成日時を「２０１９年６月１０日９時００分」とする端末表示用コードのデータとして、コードＮｏ「Ｃ−ｎ１」〜「Ｃ−ｎ４」の４つのデータが記憶されている。
【０４５１】
コードＮｏ「Ｃ−ｎ１」、「Ｃ−ｎ２」の２つの端末表示用コードは、コード有効期限を「２０１９年６月１０日  ９時００分００秒〜２０１９年６月１０日  １４時間５９分５９秒」とするコードである。つまり、この２つの端末表示用コードは、コード有効期限の開始時刻をコード生成時刻である「９時００分」とし、コード有効時間を「６時間」とするコードである。
一方、コードＮｏ「Ｃ−ｎ３」、「Ｃ−ｎ４」の２つの端末表示用コードは、コード有効期限を「２０１９年６月１０日  １５時００分００秒〜２０１９年６月１０日  ２０時５９分５９秒」とするコードである。つまり、この２つの端末表示用コードは、コード有効期限の開始時刻をコード生成時刻から６時間経過後の「１５時００分」とし、コード有効時間を「６時間」とするコードである。
【０４５２】
このように、コードＮｏ「Ｃ−ｎ１」、「Ｃ−ｎ２」の２つの端末表示用コードと、コードＮｏ「Ｃ−ｎ３」、「Ｃ−ｎ４」の２つの端末表示用コードとは、コード有効時間は同じであるが、コード有効期限の開始時刻が異なっており、結果的に、コード有効期限が異なっている。
【０４５３】
本実施例では、サーバ１０は、端末２０から受信されたコード生成依頼情報に基づき、上記のような複数の端末表示用コードを生成する。そして、限定ではなく例として、生成した複数の端末表示用コードを、それぞれのコードＮｏと、それぞれのコード有効期限とともに、端末２０に送信する。
【０４５４】
端末２０は、サーバ１０から送信された複数の端末表示用コードを、それぞれのコードＮｏと、それぞれのコード有効期限とともに受信する。そして、受信された情報を、記憶部２８の端末表示用コードストックデータ２８３１に記憶させる。
【０４５５】
＜第５実施例の効果＞
第５実施例は、端末２０から送信されたコード生成依頼情報（限定ではなく、コード情報の送信の依頼に関する情報の一例）に基づいて、端末２０が、サーバ１０によって第１のコード有効期限が関連付けられた第１の端末表示用コード画像や第１の決済用番号（限定ではなく、第６コード情報の一例）と、サーバ１０によって第２のコード有効期限が関連付けられた第２の端末表示用コード画像や第２の決済用番号（限定ではなく、第７コード情報の一例）とを通信Ｉ／Ｆ２２によって受信する。そして、第１のコード有効期限の開始時刻は、第２のコード有効期限の開始時刻と異なり、第１のコード有効期限の終了時刻は、第２のコード有効期限の終了時刻と異なる構成を示している。
このような構成により得られる効果の一例として、端末は、有効期限の開始時刻と終了時刻とが異なる複数のコード情報を受信して記憶することで、セキュリティを高め、端末の記憶部に記憶された端末表示用コードが他人に盗まれるなどのリスクを低減することができる。
【０４５６】
＜第５変形例＞
第５実施例では、サーバ１０が、端末表示用コード生成処理において、コード有効期限の開始時刻（または開始日時）と終了時刻（または終了日時）とが異なる複数の端末表示用コードを生成して端末２０に送信したが、これに限定されない。
【０４５７】
限定ではなく例として、サーバ１０が、コード有効期限の開始時刻（または開始日時）は異なるが、コード有効期限の終了時刻（終了日時）は同じである複数の端末表示用コードを生成して端末２０に送信するようにしてもよいし、そのようにしなくてもよい。この場合は、コード有効期限の終了時刻（終了日時）が同じとなるように、コード有効時間を変えて端末表示用コードを生成するようにすればよい。
【０４５８】
また、限定ではなく例として、サーバ１０が、コード有効期限の終了時刻（または終了日時）は異なるが、コード有効期限の開始時刻（開始日時）は同じである複数の端末表示用コードを生成して端末２０に送信するようにしてもよいし、そのようにしなくてもよい。
【０４５９】
また、コード有効期限を同じとする端末表示用コードの数（１組（１セット）とする端末表示用コードの数）や、コード有効期限を異ならせる端末表示用コードの数（組の数、セット数）等は、どのように設定してもよい。
【符号の説明】
【０４６０】
１    通信システム
１０  サーバ
２０  端末
３０  ネットワーク
４０  店舗ＰＯＳシステム
５０  店舗コードリーダ装置
６０  コードレジ
７０  店舗サーバ
【図１】
2020204884.tif 000003
【図２】
2020204884.tif 000004
【図３−１】
2020204884.tif 000005
【図３−２】
2020204884.tif 000006
【図３−３】
2020204884.tif 000007
【図３−４】
2020204884.tif 000008
【図４−１】
2020204884.tif 000009
【図４−２】
2020204884.tif 000010
【図４−３】
2020204884.tif 000011
【図４−４】
2020204884.tif 000012
【図４−５】
2020204884.tif 000013
【図４−６】
2020204884.tif 000014
【図４−７】
2020204884.tif 000015
【図４−８】
2020204884.tif 000016
【図４−９】
2020204884.tif 000017
【図４−１０】
2020204884.tif 000018
【図４−１１】
2020204884.tif 000019
【図４−１２】
2020204884.tif 000020
【図４−１３】
2020204884.tif 000021
【図４−１４】
2020204884.tif 000022
【図４−１５】
2020204884.tif 000023
【図４−１６】
2020204884.tif 000024
【図４−１７】
2020204884.tif 000025
【図４−１８】
2020204884.tif 000026
【図４−１９】
2020204884.tif 000027
【図４−２０】
2020204884.tif 000028
【図４−２１】
2020204884.tif 000029
【図４−２２】
2020204884.tif 000030
【図５−１】
2020204884.tif 000031
【図５−２】
2020204884.tif 000032
【図５−３】
2020204884.tif 000033
【図５−４】
2020204884.tif 000034
【図５−５】
2020204884.tif 000035
【図６−１】
2020204884.tif 000036
【図６−２】
2020204884.tif 000037
【図７−１】
2020204884.tif 000038
【図７−２】
2020204884.tif 000039
【図７−３】
2020204884.tif 000040
【図８】
2020204884.tif 000041