JP6765483B1 - 情報処理方法、プログラム、端末 - Google Patents

情報処理方法、プログラム、端末 Download PDF

Info

Publication number
JP6765483B1
JP6765483B1 JP2019136337A JP2019136337A JP6765483B1 JP 6765483 B1 JP6765483 B1 JP 6765483B1 JP 2019136337 A JP2019136337 A JP 2019136337A JP 2019136337 A JP2019136337 A JP 2019136337A JP 6765483 B1 JP6765483 B1 JP 6765483B1
Authority
JP
Japan
Prior art keywords
terminal
code
information
display
communication
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2019136337A
Other languages
English (en)
Other versions
JP2021021992A (ja
Inventor
亮介 濱窄
亮介 濱窄
洋輔 真崎
洋輔 真崎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Line Pay Corp
Original Assignee
Line Pay Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Line Pay Corp filed Critical Line Pay Corp
Priority to JP2019136337A priority Critical patent/JP6765483B1/ja
Priority to PCT/JP2020/022296 priority patent/WO2021014786A1/ja
Priority to CN202080002809.1A priority patent/CN112602102A/zh
Priority to KR1020207033419A priority patent/KR102572825B1/ko
Priority to JP2020153853A priority patent/JP7306770B2/ja
Application granted granted Critical
Publication of JP6765483B1 publication Critical patent/JP6765483B1/ja
Priority to US17/129,346 priority patent/US20210110369A1/en
Publication of JP2021021992A publication Critical patent/JP2021021992A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Telephone Function (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

【課題】決済を実現するにあたり、例えばユーザの利便性の面で改善の余地がある。【解決手段】コード画像による決済を行うための第1情報に基づいて決済に関する処理を実行する端末の情報処理方法は、サーバから送信された第1情報を、端末の通信部を介して受信することと、受信された第1情報を、端末の制御部によって端末の記憶部に記憶することと、第1情報に基づく第1コード画像を端末の表示領域に表示することと、端末の通信状態に基づいて、第1コード画像を表示する表示領域に表示される第2情報を端末の制御部によって制御することとを含む。【選択図】図1

Description

本開示は、情報処理方法、プログラム、端末に関する。
昨今、スマートフォン等の端末で実行可能なアプリケーションによって、例えば、端末、または端末のユーザの電子貨幣(電子マネー)の管理や、電子貨幣による決済等を実現するサービスが普及しつつある。例えば特許文献1には、商品の購買金額の決済を行う技術が開示されている。しかしながら、上記の決済を実現するにあたり、例えばユーザの利便性の面で改善の余地がある。
特開2002−176671号公報
本発明の第1の態様によると、コード画像による決済を行うための第1情報に基づいて決済に関する処理を実行する端末の情報処理方法は、サーバから送信された第1情報を、端末の通信部を介して受信することと、受信された第1情報を、端末の制御部によって端末の記憶部に記憶することと、第1情報に基づく第1コード画像を端末の表示領域に表示することと、端末の通信状態に基づいて、第1コード画像を表示する表示領域に表示される第2情報を端末の制御部によって制御することとを含む。
本発明の第2の態様によると、コード画像による決済を行うための第1情報に基づいて決済に関する処理を実行する端末に実行させるためのプログラムは、サーバから送信された第1情報を、端末の通信部を介して受信することと、受信された第1情報を、端末の記憶部に記憶することと、第1情報に基づく第1コード画像を端末の表示領域に表示することと、端末の通信状態に基づいて、第1コード画像を表示する表示領域に表示される第2情報を制御することを含む。
本発明の第3の態様によると、コード画像による決済を行うための第1情報に基づいて決済に関する処理を実行する端末は、サーバから送信された第1情報を受信する通信部と、受信された第1情報を端末の記憶部に記憶する制御を行う制御部と、第1情報に基づく第1コード画像を端末の表示領域に表示する表示部とを備え、制御部は、端末の通信状態に基づいて、第1コード画像を表示する表示領域に表示される第2情報を制御する。
本発明の第4の態様によると、コード画像による決済を行うための第1情報に基づいて決済に関する処理を実行する端末は、プログラムを記憶するメモリからプログラムを読み出し、プログラムに基づいて処理を実行するプロセッサーを備え、プロセッサーは、サーバから送信された第1情報を、端末の通信部を介して受信することと、受信された第1情報を、端末の記憶部に記憶することと、第1情報に基づく第1コード画像を端末の表示領域に表示することと、端末の通信状態に基づいて、第1コード画像を表示する表示領域に表示される第2情報を制御することとを実行する。
実施形態の一態様における通信システムの構成の一例を示す図。 実施形態の一態様における店舗POSシステムのシステム構成の一例を示す図。 実施形態の一態様における各種の装置が実行する処理の流れの一例を示すフローチャート。 実施形態の一態様における端末の表示画面の一例を示す図。 実施形態の一態様における端末の表示画面の一例を示す図。 実施形態の一態様における各種の装置が実行する処理の流れの一例を示すフローチャート。 第1実施例に係るサーバの制御部により実現される機能の一例を示す図。 第1実施例に係るサーバの記憶部に記憶される情報の一例を示す図。 第1実施例に係るユーザ登録データの一例を示す図。 第1実施例に係る店舗登録データの一例を示す図。 第1実施例に係る決済管理データベースの一例を示す図。 第1実施例に係るコード管理データベースの一例を示す図。 第1実施例に係る端末の制御部により実現される機能の一例を示す図。 第1実施例に係る端末の記憶部に記憶される情報の一例を示す図。 第1実施例に係る第1の端末表示用コードストックデータの一例を示す図。 第1実施例に係る第2の端末表示用コードストックデータの一例を示す図。 第1実施例に係る第1の決済用データの一例を示す図。 第1実施例に係る第1のコード関連情報表示制御用データの一例を示す図。 第1実施例に係る端末の表示画面の一例を示す図。 第1実施例に係る端末の表示画面の一例を示す図。 第1実施例に係る端末の表示画面の一例を示す図。 第1実施例に係る各種の装置が実行する処理の流れの一例を示すフローチャート。 第1実施例に係る第1のコード表示処理の流れの一例を示すフローチャート。 第1変形例に係る端末の表示画面の一例を示す図。 第1変形例に係る端末の表示画面の一例を示す図。 第1変形例に係る端末の表示画面の一例を示す図。 第1変形例に係る端末の表示画面の一例を示す図。 第1変形例に係る端末の表示画面の一例を示す図。 第1変形例に係る端末の表示画面の一例を示す図。 第1変形例に係る各種の装置が実行する処理の流れの一例を示すフローチャート。 第2実施例に係る端末の制御部により実現される機能の一例を示す図。 第2実施例に係る端末の記憶部に記憶される情報の一例を示す図。 第2実施例に係る第2の決済用データの一例を示す図。 第2実施例に係る第1の決済関連設定制御用データの一例を示す図。 第2実施例に係る端末の表示画面の一例を示す図。 第2実施例に係る決済関連設定制御処理の流れの一例を示す図。 第2変形例に係る第2の決済関連設定制御用データの一例を示す図。 第2変形例に係る第3の決済関連設定制御用データの一例を示す図。 第3実施例に係る第2のコード関連情報表示制御用データの一例を示す図。 第3実施例に係る端末の表示画面の一例を示す図。 第3実施例に係る端末の表示画面の一例を示す図。 第3実施例に係る端末の表示画面の一例を示す図。 第3実施例に係る端末の表示画面の一例を示す図。 第3実施例に係る端末の表示画面の一例を示す図。 第3実施例に係る第2のコード表示処理の流れの一例を示すフローチャート。 第3実施例に係る第3のコード表示処理の流れの一例を示すフローチャート。 第3変形例に係る端末の表示画面の一例を示す図。 第3変形例に係る端末の表示画面の一例を示す図。 第4実施例に係る端末の表示画面の一例を示す図。 第4実施例に係る端末の表示画面の一例を示す図。 第4実施例に係る端末の表示画面の一例を示す図。 第4実施例に係る第1のコード再表示処理の流れの一例を示すフローチャート。 第4実施例に係る第2のコード再表示処理の流れの一例を示すフローチャート。 第5実施例に係る端末及びサーバが実行する処理の流れの一例を示すフローチャート。 第6実施例に係る端末及びサーバが実行する処理の流れの一例を示すフローチャート。 第6実施例に係る端末及びサーバが実行する処理の流れの一例を示すフローチャート。 第6実施例に係る端末及びサーバが実行する処理の流れの一例を示すフローチャート。 第6実施例に係る端末の表示画面の一例を示す図。 第6実施例に係る端末の表示画面の一例を示す図。 第6実施例に係る端末の表示画面の一例を示す図。 第6実施例に係る端末の表示画面の一例を示す図。
<法的事項の遵守>
本明細書に記載の開示は、通信の秘密など、本開示の実施に必要な実施国の法的事項遵守を前提とすることに留意されたい。
本開示に係る情報処理方法等を実施するための実施形態について、図面を参照して説明する。
[システム構成]
図1は、本開示の一実施形態に係る通信システム1の構成の一例を示す図である。
図1に開示されるように、通信システム1では、ネットワーク30を介してサーバ10と、端末20(端末20A,端末20B,端末20C,・・・)と、店舗POSシステム40とが接続される。
サーバ10は、ネットワーク30を介してユーザが所有する端末20に、端末20間でのメッセージ等を含むコンテンツの送受信を実現するサービスを提供する。また、サーバ10は、端末20と通信を行って電子決済(限定ではなく、決済の一例)を実現するサービス(以下、「決済サービス」と称する。)を提供する。なお、ネットワーク30に接続される端末20の数は限定されない。
ネットワーク30は、1以上の端末20と、1以上のサーバ10と、1以上の店舗POSシステム40とを接続する役割を担う。すなわち、ネットワーク30は、上記の各種の装置が接続した後、データを送受信することができるように接続経路を提供する通信網を意味する。
ネットワーク30のうちの1つまたは複数の部分は、有線ネットワークや無線ネットワークであってもよいし、そうでなくてもよい。ネットワーク30は、限定ではなく例として、アドホック・ネットワーク(ad hoc network)、イントラネット、エクストラネット、仮想プライベート・ネットワーク(virtual private network:VPN)、ローカル・エリア・ネットワーク(local area network:LAN)、ワイヤレスLAN(wireless LAN:WLAN)、広域ネットワーク(wide area network:WAN)、ワイヤレスWAN(wireless WAN:WWAN)、大都市圏ネットワーク(metropolitan area network:MAN)、インターネットの一部、公衆交換電話網(Public Switched Telephone Network:PSTN)の一部、携帯電話網、ISDN(integrated service digital networks)、無線LAN、LTE(long term evolution)、CDMA(code division multiple access)、ブルートゥース(Bluetooth(登録商標))、衛星通信など、または、これらの2つ以上の組合せを含むことができる。ネットワーク30は、1つまたは複数のネットワーク30を含むことができる。
端末20(端末20A,端末20B,端末20C,・・・)(限定ではなく、端末、情報処理装置の一例)は、各実施形態において記載する機能を実現できる情報処理端末であればどのような端末であってもよい。端末20は、限定ではなく例として、スマートフォン、携帯電話(フィーチャーフォン)、コンピュータ(限定ではなく例として、デスクトップ、ラップトップ、タブレットなど)、メディアコンピュータプラットホーム(限定ではなく例として、ケーブル、衛星セットトップボックス、デジタルビデオレコーダ)、ハンドヘルドコンピュータデバイス(限定ではなく例として、PDA・(personal digital assistant)、電子メールクライアントなど)、ウェアラブル端末(メガネ型デバイス、時計型デバイスなど)、または他種のコンピュータ、またはコミュニケーションプラットホームを含む。また、端末20は情報処理端末と表現されてもよい。
端末20A、端末20Bおよび端末20Cの構成は基本的には同一であるため、以下の説明においては、端末20について説明する。また、必要に応じて、ユーザXが利用する端末を端末20Xと表現し、ユーザXまたは端末20Xに対応付けられた、所定のサービスにおけるユーザ情報をユーザ情報Xと表現する。なお、ユーザ情報とは、所定のサービスにおいてユーザが利用するアカウントに対応付けられたユーザの情報である。ユーザ情報は、限定ではなく例として、ユーザにより入力される、または、所定のサービスにより付与される、ユーザの名前、ユーザのアイコン画像、ユーザの年齢、ユーザの性別、ユーザの住所、ユーザの趣味趣向、ユーザの識別子などのユーザに対応付けられた情報を含み、これらのいずれか一つまたは、組み合わせであってもよいし、そうでなくてもよい。
サーバ10(限定ではなく、サーバ、情報処理装置、情報管理装置の一例)は、端末20に対して、所定のサービスを提供する機能を備える。サーバ10は、各実施形態において記載する機能を実現できる情報処理装置であればどのような装置であってもよい。サーバ10は、限定ではなく例として、サーバ装置、コンピュータ(限定ではなく例として、デスクトップ、ラップトップ、タブレットなど)、メディアコンピュータプラットホーム(限定ではなく例として、ケーブル、衛星セットトップボックス、デジタルビデオレコーダ)、ハンドヘルドコンピュータデバイス(限定ではなく例として、PDA、電子メールクライアントなど)、あるいは他種のコンピュータ、またはコミュニケーションプラットホームを含む。また、サーバ10は情報処理装置と表現されてもよい。サーバ10と端末20とを区別する必要がない場合は、サーバ10と端末20とは、それぞれ情報処理装置と表現されてもよいし、されなくてもよい。
以下説明する実施形態では、サーバ10は、決済アプリケーションによる決済サービスを提供する機能を有していることとして説明する。
店舗POSシステム40は、サーバ10を運用する事業者と提携している店舗に導入されて使用されるPOSシステムである。
この店舗POSシステム40には、限定ではなく例として、店舗コードリーダ装置50と、コードレジ60と、店舗サーバ70とが含まれる。
[各装置のハードウェア(HW)構成]
通信システム1に含まれる各装置のHW構成について説明する。
(1)端末のHW構成
図1には、端末20のHW構成の一例を示している。
端末20は、制御部21(CPU:central processing unit(中央処理装置))、記憶部28、通信I/F22(インタフェース)、入出力部23、表示部24、マイク25、スピーカ26、カメラ27、時計部29A、位置算出用情報検出部29Bを備える。端末20のHWの各構成要素は、限定ではなく例として、バスBを介して相互に接続される。なお、端末20のHW構成として、すべての構成要素を含むことは必須ではない。限定ではなく例として、端末20は、マイク25、カメラ27等、個々の構成要素、または複数の構成要素を取り外すような構成であってもよいし、そうでなくてもよい。
通信I/F22は、ネットワーク30を介して各種データの送受信を行う。通信は、有線、無線のいずれで実行されてもよく、互いの通信が実行できるのであれば、どのような通信プロトコルを用いてもよい。通信I/F22は、ネットワーク30を介して、サーバ10等の各種装置との通信を実行する機能を有する。通信I/F22は、各種データを制御部21からの指示に従って、サーバ10等の各種装置に送信する。また、通信I/F22は、サーバ10等の各種装置から送信された各種データを受信し、制御部21に伝達する。また、通信I/F22を単に通信部と表現する場合もある。また、通信I/F22が物理的に構造化された回路で構成される場合には、通信回路と表現する場合もある。
入出力部23は、端末20に対する各種操作を入力する装置、および、端末20で処理された処理結果を出力する装置を含む。入出力部23は、入力部と出力部が一体化していてもよいし、入力部と出力部に分離していてもよいし、そうでなくてもよい。
入力部は、ユーザからの入力を受け付けて、入力に係る情報を制御部21に伝達できる全ての種類の装置のいずれかまたはその組み合わせにより実現される。入力部は、限定ではなく例として、タッチパネル、タッチディスプレイ、キーボード等のハードウェアキーや、マウス等のポインティングデバイス、カメラ(動画像を介した操作入力)、マイク(音声による操作入力)を含む。
出力部は、制御部21で処理された処理結果を出力することができる全ての種類の装置のいずれかまたはその組み合わせにより実現される。出力部は、限定ではなく例として、 タッチパネル、タッチディスプレイ、スピーカ(音声出力)、レンズ(限定ではなく例として3D(three dimensions)出力や、ホログラム出力)、プリンターなどを含む。
表示部24は、フレームバッファに書き込まれた表示データに従って、表示することができる全ての種類の装置のいずれかまたはその組み合わせにより実現される。表示部24は、限定ではなく例として、タッチパネル、タッチディスプレイ、モニタ(限定ではなく例として、液晶ディスプレイやOELD(organic electroluminescence display))、ヘッドマウントディスプレイ(HDM:Head Mounted Display)、プロジェクションマッピング、ホログラム、空気中など(真空であってもよいし、そうでなくてもよい)に画像やテキスト情報等を表示可能な装置を含む。なお、これらの表示部24は、3Dで表示データを表示可能であってもよいし、そうでなくてもよい。
入出力部23がタッチパネルの場合、入出力部23と表示部24とは、略同一の大きさおよび形状で対向して配置されていてもよい。
時計部29Aは、端末20の内蔵時計であり、時刻情報(計時情報)を出力する。時計部29Aは、限定ではなく例として、水晶発振器を利用したクロック等を有して構成される。時計部29Aは、限定ではなく例として、計時部や時刻情報検出部と表現することもできる。
なお、時計部29Aは、NITZ(Network Identity and Time Zone)規格等を適用したクロックを有していてもよいし、有していなくてもよい。
位置算出用情報検出部29Bは、制御部21が自己の端末20の位置を算出(測定)するために必要な情報(以下、「位置算出用情報」と称する。)を検出(計測)する機能部である。位置算出用情報検出部29Bは、限定ではなく例として、位置算出用センサ部と表現することもできる。
なお、位置算出用情報検出部29Bは必須ではなく、端末20の構成要件から除外してもよい。
位置算出用情報検出部29Bは、限定ではなく例として、GPS(Global Positioning System)等の衛星測位システムを利用して端末20の位置を算出するためのセンサやユニットである衛星測位センサ(衛星測位ユニット)や、慣性航法システムを利用して端末20の位置を算出するためのセンサやユニットである慣性計測センサ(慣性計測ユニット(IMU(Inertial Measurement Unit)))等を含む。
衛星測位ユニットは、限定ではなく例として、不図示のアンテナで受信される測位用衛星から発信されている測位用衛星信号を含むRF(Radio Frequency)信号をデジタル信号に変換するRF受信回路や、RF受信回路から出力されるデジタル信号に対して相関演算処理等を行って測位用衛星信号を捕捉し、測位用衛星信号から取り出した衛星軌道データや時刻データ等の情報を、位置算出用情報として出力するベースバンド処理回路等を有する。
慣性計測ユニットは、慣性航法演算によって端末20の位置を算出するために必要な情報を検出するセンサである慣性センサを有する。慣性センサには、限定ではなく例として、3軸の加速度センサや3軸のジャイロセンサが含まれ、加速度センサによって検出された加速度と、ジャイロセンサによって検出された角速度とを、位置算出用情報として出力する。
制御部21は、プログラム内に含まれたコードまたは命令によって実現する機能を実行するために物理的に構造化された回路を有し、限定ではなく例として、ハードウェアに内蔵されたデータ処理装置により実現される。そのため、制御部21は、制御回路と表現されてもよいし、されなくてもよい。
制御部21は、限定ではなく例として、中央処理装置(CPU)、マイクロプロセッサ(microprocessor)、プロセッサコア(processor core)、マルチプロセッサ(multiprocessor)、ASIC(application-specific integrated circuit)、FPGA(field programmable gate array)を含む。
記憶部28は、端末20が動作するうえで必要とする各種プログラムや各種データを記憶する機能を有する。記憶部28は、限定ではなく例として、HDD(hard disk drive)、SSD(solid state drive)、フラッシュメモリ、RAM(random access memory)、ROM(read only memory)など各種の記憶媒体を含む。また、記憶部28は、メモリ(memory)と表現されてもよいし、されなくてもよい。
端末20は、プログラムPを記憶部28に記憶し、このプログラムPを実行することで、制御部21が、制御部21に含まれる各部としての処理を実行する。つまり、記憶部28に記憶されるプログラムPは、端末20に、制御部21が実行する各機能を実現させる。また、このプログラムPは、プログラムモジュールと表現されてもよいし、されなくてもよい。
マイク25は、音声データの入力に利用される。スピーカ26は、音声データの出力に利用される。カメラ27は、動画像データの取得に利用される。
(2)サーバのHW構成
図1には、サーバ10のHW構成の一例を示している。
サーバ10は、制御部11(CPU)、記憶部15、通信I/F14(インタフェース)、入出力部12、ディスプレイ13、時計部19を備える。サーバ10のHWの各構成要素は、限定ではなく例として、バスBを介して相互に接続される。なお、サーバ10のHWは、サーバ10のHWの構成として、全ての構成要素を含むことは必須ではない。限定ではなく例として、サーバ10のHWは、ディスプレイ13を取り外すような構成であってもよいし、そうでなくてもよい。
制御部11は、プログラム内に含まれたコードまたは命令によって実現する機能を実行するために物理的に構造化された回路を有し、限定ではなく例として、ハードウェアに内蔵されたデータ処理装置により実現される。
制御部11は、代表的には中央処理装置(CPU)、であり、その他にマイクロプロセッサ、プロセッサコア、マルチプロセッサ、ASIC、FPGAであってもよいし、そうでなくてもよい。本開示において、制御部11は、これらに限定されない。
記憶部15は、サーバ10が動作するうえで必要とする各種プログラムや各種データを記憶する機能を有する。記憶部15は、HDD、SSD、フラッシュメモリなど各種の記憶媒体により実現される。ただし、本開示において、記憶部15は、これらに限定されない。また、記憶部15は、メモリ(memory)と表現されてもよいし、されなくてもよい。
通信I/F14は、ネットワーク30を介して各種データの送受信を行う。通信は、有線、無線のいずれで実行されてもよく、互いの通信が実行できるのであれば、どのような通信プロトコルを用いてもよい。通信I/F14は、ネットワーク30を介して、端末20等の各種装置との通信を実行する機能を有する。通信I/F14は、各種データを制御部11からの指示に従って、端末20等の各種装置に送信する。また、通信I/F14は、端末20等の各種装置から送信された各種データを受信し、制御部11に伝達する。また、通信I/F14を単に通信部と表現する場合もある。また、通信I/F14が物理的に構造化された回路で構成される場合には、通信回路と表現する場合もある。
入出力部12は、サーバ10に対する各種操作を入力する装置により実現される。入出力部12は、ユーザからの入力を受け付けて、入力に係る情報を制御部11に伝達できる全ての種類の装置のいずれかまたはその組み合わせにより実現される。入出力部12は、代表的にはキーボード等に代表されるハードウェアキーや、マウス等のポインティングデバイスで実現される。なお、入出力部12、限定ではなく例として、タッチパネルやカメラ(動画像を介した操作入力)、マイク(音声による操作入力)を含んでいてもよいし、そうでなくてもよい。ただし、本開示において、入出力部12は、これらに限定されない。
ディスプレイ13は、代表的にはモニタ(限定ではなく例として、液晶ディスプレイやOELD(organic electroluminescence display))で実現される。なお、ディスプレイ13は、ヘッドマウントディスプレイ(HDM)などであってもよいし、そうでなくてもよい。なお、これらのディスプレイ13は、3Dで表示データを表示可能であってもよいし、そうでなくてもよい。本開示において、ディスプレイ13は、これらに限定されない。
時計部19は、サーバ10の内蔵時計であり、時刻情報(計時情報)を出力する。時計部19は、限定ではなく例として、ハードウェアクロックとしてのRTC(Real Time Clock)やシステムクロック等を有して構成される。時計部19は、限定ではなく例として、計時部や時刻情報検出部と表現することもできる。
(3)店舗POSのシステム構成
図2には、店舗POSシステム40のシステム構成の一例を示している。
店舗POSシステム40は、サーバ10を運用する事業者と提携している店舗に導入されて使用されるPOSシステムであり、限定ではなく例として、店舗コードリーダ装置50と、コードレジ60と、店舗サーバ70とを含む。
店舗コードリーダ装置50は、POS通信I/F57(限定ではなく例として、店舗内の有線通信I/Fや無線通信I/F)によってコードレジ60や店舗サーバ70と通信接続され、コードレジ60での会計の際に、端末20の表示部24に表示される端末表示用コード画像を読み取る。そして、端末表示用コード画像を読み取ったことに基づいて、決済要求情報を通信I/F54によってサーバ10に送信し、サーバ10で決済が行われた後、決済結果に関する情報(例えば、後述する店舗用決済完了通知)を通信I/F54によってサーバ10から受信する。
店舗コードリーダ装置50は、限定ではなく例として、制御部51と、入出力部52と、表示部53と、通信I/F54と、記憶部55と、音出力部56と、POS通信I/F57と、コードリーダ58、時計部59とを有する。
コードリーダ58は、二次元コードを読み取るためのコードリーダであり、本明細書では、端末20の表示部24に表示され、端末20のユーザによって提示される二次元コード(例えばQRコード(登録商標))としての端末表示用コードを読み取るための二次元コードリーダ(例えばQRコードリーダ)を含む。
コードレジ60は、限定ではなく例として、POS通信I/F57によって店舗コードリーダ装置50や店舗サーバ70と通信接続され、店舗コードリーダ装置50がサーバ10から受信した店舗用決済完了通知に基づいて、販売した商品の総額や、端末20のユーザの電子貨幣の残高等の情報を印字したレシートを発行する。また、限定ではなく例として、コードレジ60と一体として、またはコードレジ60と別体として設けられ、客側に表示面が向けられたディスプレイを構成するようにしてもよい。コードレジ60は、決済アプリケーションに対応可能に構成されたレジであり、決済アプリケーション対応の据置端末と言うこともできる。
店舗サーバ70は、限定ではなく例として、自店舗に関する店舗情報や、自店舗で販売される商品に関する情報や自店舗で提供されるサービスに関する情報、自店舗での商品の販売やサービスの提供に伴う売上げに関する情報等の各種の情報を管理する。店舗サーバ70は、POS通信I/F57によって店舗コードリーダ装置50やコードレジ60と通信可能に構成されているとともに、ネットワーク30を介してサーバ10等の外部装置と通信可能に構成されている。
なお、店舗サーバ70は、必ずしも店舗コードリーダ装置50と直接的に通信可能に構成されている必要はなく、コードレジ60を介して店舗コードリーダ装置50と通信可能に構成されていてもよい。例えば、店舗コードリーダ装置50がサーバ10から受信した店舗用決済完了通知はコードレジ60に送られ、その後、コードレジ60から店舗サーバ70に送られるようにするなどすることもできる。
(4)その他
サーバ10は、プログラムPを記憶部15に記憶し、このプログラムPを実行することで、制御部11が、制御部11に含まれる各部としての処理を実行する。つまり、記憶部15に記憶されるプログラムPは、サーバ10に、制御部11が実行する各機能を実現させる。このプログラムPは、プログラムモジュールと表現されてもよいし、されなくてもよい。
他の装置についても同様である。
本開示の各実施形態においては、端末20および/またはサーバ10のCPUがプログラムPを実行することにより、実現するものとして説明する。
他の装置についても同様である。
なお、端末20の制御部21、および/または、サーバ10の制御部11は、制御回路を有するCPUだけでなく、集積回路(IC(Integrated Circuit)チップ、LSI(Large Scale Integration))等に形成された論理回路(ハードウェア)や専用回路によって各処理を実現してもよいし、そうでなくてもよい。また、これらの回路は、1または複数の集積回路により実現されてよく、各実施形態に示す複数の処理を1つの集積回路により実現されることとしてもよいし、そうでなくてもよい。また、LSIは、集積度の違いにより、VLSI、スーパーLSI、ウルトラLSIなどと呼称されることもある。そのため、制御部21は、制御回路と表現されてもよいし、されなくてもよい。
他の装置についても同様である。
また、本開示の各実施形態のプログラムP(限定ではなく例として、ソフトウェアプログラム、コンピュータプログラム、またはプログラムモジュール)は、コンピュータに読み取り可能な記憶媒体に記憶された状態で提供されてもよいし、されなくてもよい。 記憶媒体は、「一時的でない有形の媒体」に、プログラムPを記憶可能である。また、プログラムPは、本開示の各実施形態の機能の一部を実現するためのものであってもよいし、そうでなくてもよい。さらに、本開示の各実施形態の機能を記憶媒体にすでに記録されているプログラムPとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよいし、そうでなくてもよい。
記憶媒体は、1つまたは複数の半導体ベースの、または他の集積回路(IC)(限定ではなく例として、フィールド・プログラマブル・ゲート・アレイ(FPGA)または特定用途向けIC(ASIC)など)、ハード・ディスク・ドライブ(HDD)、ハイブリッド・ハード・ドライブ(HHD)、光ディスク、光ディスクドライブ(ODD)、光磁気ディスク、光磁気ドライブ、フロッピィ・ディスケット、フロッピィ・ディスク・ドライブ(FDD)、磁気テープ、固体ドライブ(SSD)、RAMドライブ、セキュア・デジタル・カード、またはドライブ、任意の他の適切な記憶媒体、またはこれらの2つ以上の適切な組合せを含むことができる。記憶媒体は、適切な場合、揮発性、不揮発性、または揮発性と不揮発性の組合せでよい。なお、記憶媒体はこれらの例に限られず、プログラムPを記憶可能であれば、どのようなデバイスまたは媒体であってもよい。また、記憶媒体をメモリ(memory)と表現されてもよいし、されなくてもよい。
サーバ10および/または端末20は、記憶媒体に記憶されたプログラムPを読み出し、読み出したプログラムPを実行することによって、各実施形態に示す複数の機能部の機能を実現することができる。
他の装置についても同様である。
また、本開示のプログラムPは、プログラムを伝送可能な任意の伝送媒体(通信ネットワークや放送波等)を介して、サーバ10および/または端末20に提供されてもよいし、されなくてもよい。サーバ10および/または端末20は、限定ではなく例として、インターネット等を介してダウンロードしたプログラムPを実行することにより、各実施形態に示す複数の機能部の機能を実現する。
他の装置についても同様である。
また、本開示の各実施形態は、プログラムPが電子的な伝送によって具現化されたデータ信号の形態でも実現され得る。
サーバ10および/または端末20における処理の少なくとも一部は、1以上のコンピュータにより構成されるクラウドコンピューティングにより実現されていてもよいし、そうでなくてもよい。
端末20における処理の少なくとも一部を、サーバ10により行う構成としてもよいし、そうでなくてもよい。この場合、端末20の制御部21の各機能部の処理のうち少なくとも一部の処理を、サーバ10で行う構成としてもよいし、そうでなくてもよい。
サーバ10における処理の少なくとも一部を、端末20により行う構成としてもよいし、そうでなくてもよい。この場合、サーバ10の制御部11の各機能部の処理のうち少なくとも一部の処理を、端末20で行う構成としてもよいし、そうでなくてもよい。
明示的な言及のない限り、本開示の実施形態における判定の構成は必須でなく、判定条件を満たした場合に所定の処理が動作されたり、判定条件を満たさない場合に所定の処理がされたりしてもよいし、そうでなくてもよい。
なお、本開示のプログラムは、限定ではなく例として、ActionScript、JavaScript(登録商標)などのスクリプト言語、Objective-C、Java(登録商標)などのコンパイラ言語、HTML5などのマークアップ言語などを用いて実装される。
また、本明細書では、適宜「通信I/Fによって」という表現を使用する。これは、装置が、限定ではなく例として、制御部(プロセッサー等)の制御に基づいて、通信I/Fを介して(通信部を介して)、各種の情報やデータを送受信することを示す。
また、本明細書では、「期限」の用語は、一定の期間を示すものとして説明する。ただし、「期限」の用語に代えて、「期間」の用語を用いるようにしてもよい。
また、「期限」の用語を、期間が終了する時刻や日時(一定の時刻や一定の日時)の意味で用いるようにしてもよい。
<第1実施例>
近年、ネットワークサービスに関連するアプリケーション(アプリケーションソフトウェア)として、電子貨幣による電子決済用のアプリケーション(決済アプリケーション)、電子貨幣の送金用のアプリケーション(送金アプリケーション)といったアプリケーションや、これらのアプリケーションの一部の機能または全部の機能を集約した決済アプリケーションが普及しつつあり、端末20のユーザが、これらのアプリケーションを用いて、電子貨幣に関する各種のサービスを受けることが可能になってきている。
以下説明する実施例は、限定ではなく例として、端末20のユーザが、端末20に記憶されて実行される決済アプリケーションを利用して、決済を行う実施例である。具体的には、オンライン状態と、オフライン状態とにおいて、共通に決済を行うための手法を提案する。
以下では、決済アプリケーションによる決済サービスを提供する事業者のことを「決済サービスの事業者」と称する。なお、決済サービスの事業者は、決済アプリケーションを提供する事業者や、サーバ10の事業者と表現してもよいし、しなくてもよい。
また、以下では、決済サービスの事業者によって、サーバ10が運用・管理されることとして説明する。また、以下では、決済アプリケーションの名称を、適宜「Payment App」と称して図示・説明する。
また、決済アプリケーションは、いわゆるメッセージングサービス(MS:Messaging Service)の機能を有さない単体のアプリケーションとしてサーバ10によって提供されるようにしてもよいし、MSの機能を有する複合的なアプリケーションとしてサーバ10によって提供されるようにしてもよい。また、メッセージングサービスには、端末20間での簡単なメッセージ等のコンテンツの送受信を可能とするインスタントメッセージングサービス(IMS:Instant Messaging Service)を含めてもよいし、含めなくてもよい。
また、決済アプリケーションは、いわゆるソーシャルネットワーキングサービス(SNS:Social Networking Service)の機能を有さない単体のアプリケーションとしてサーバ10によって提供されるようにしてもよいし、SNSの機能を有する複合的なアプリケーションとしてサーバ10によって提供されるようにしてもよい。
なお、MS(IMSを含む。)は、SNSの1つの形態(一形態)と考えることもできる。このため、MSとSNSとは区別してもよいし、区別しなくてもよい。
また、決済サービスの事業者と提携している店舗を「加盟店(加盟店舗)」と称し、図1では「加盟店S1」、「加盟店S2」、・・・、のように示している。
また、「電子貨幣」とは、物理的貨幣と区別される電子的な貨幣であって、決済アプリケーションにおいて管理される端末20または端末20のユーザが所有する電子的な貨幣を意味し、「決済」とは、この電子貨幣を利用した電子決済を意味する。
なお、電子貨幣は、「電子マネー」や「デジタル通貨(デジタル貨幣)」と表現してもよいし、そのようにしなくてもよい。
また、「電子貨幣(電子マネー)」や「デジタル通貨(デジタル貨幣)」として、法定通貨を用いてもよいし、仮想通貨を用いてもよい。
また、「電子貨幣(電子マネー)」や「デジタル通貨(デジタル貨幣)」には、暗号通貨(暗号資産)を含めてもよい。
また、仮想通貨には、クーポンなどの物的貨幣を含めてもよい。
<決済方法>
(1)オンライン決済
まず、一態様として、オンライン決済の手法についてフローチャートを参照して説明する。
以下では、「オンライン」とは、端末20がサーバ10と通信可能であることを示し、「オンライン状態」とは、このオンラインの状態を示すものとする。また、「オンライン決済」とは、オンライン状態でサーバ10によって決済が行われることを示すものとする。
「オンライン状態」は、第1通信状態の一例である。
なお、以下では、端末20とサーバ10との通信は、限定ではなく例として、通信会社(通信キャリア)が設置する基地局等を介在して実現される、無線LAN通信とは異なる周波数帯を用いた第1通信方式によって実現されることとする。第1通信方式には、限定ではなく例として、パケット通信(いわゆる端末20におけるモバイルデータ通信)が含まれる。
また、通信方式として、第1通信方式とは異なる第2通信方式を用いてもよいし、そのようにしなくてもよい。第2通信方式には、限定ではなく例として、無線LAN(例えばWiFi(登録商標))が含まれる。
また、第1通信方式と第2通信方式とのうちの少なくともいずれか一方の通信方式により端末20とサーバ10とが通信可能であることを「オンライン状態」と定義してもよいし、しなくてもよい。
図3−1は、この場合における各装置が実行する処理の流れの一例を示すフローチャートである。左側から順に、端末20の制御部21が実行する処理、店舗コードリーダ装置50の制御部51が実行する処理、サーバ10の制御部11が実行する処理の一例をそれぞれ示している。
各処理における各ステップをアルファベットの大文字と数字の組み合わせで示し、本明細書では「ステップ」の用語は省略する。
また、以下説明するフローチャートは、あくまでも本実施例における処理を例示するものであり、以下説明するフローチャートにおいて、一部のステップを実行しなくてもよいし、追加のステップを挿入してもよい。
これらは、本明細書における他のフローチャートについても同様である。
まず、制御部21は、端末表示用コードの生成を依頼するためのコード生成依頼情報を、通信I/F22によって(通信I/F22を介して)サーバ10に送信する(A110)。
以下では、限定ではなく例として、「コード情報」とは、符号化(エンコード)等によってコード画像に格納される情報やコード画像に格納されている情報(以下、元の情報という意味で「元情報」と称する。)と、元情報が格納された「コード画像」とを含む概念として説明する。つまり、「コード情報」には、「元情報」と「コード画像」とが含まれる。
「元情報」は、「エンコード情報」や「格納情報」等のように表現してもよいし、そのように表現しなくてもよい。
また、以下では、限定ではなく例として、「コード」といった場合、「コード情報」と実質的に同じ意味合いであるものとする。
ただし、これらの定義はあくまでも一例に過ぎず、これらに限定されるものではない。
例えば、「コード情報」の用語を「元情報」の意味で用いるようにしてもよいし、そのようにしなくてもよい。
また、例えば、「コード」の用語を「コード画像」の意味で用いるようにしてもよいし、そのようにしなくてもよい。
本実施例では、上記の元情報の一例として、サーバ10によってコード生成依頼情報の送信元の端末20毎、または端末20のユーザ毎にユニークに生成される番号であって、所定の桁数のランダムな番号である「決済用番号」を例示する。決済用番号は、端末20、または端末20のユーザと関連付けられた情報であって、サーバ10による決済に用いられる情報とも言える。
以下では、コード生成依頼情報に基づきサーバ10によって生成される決済用のコードを「端末表示用コード」と称し、この端末表示用コードのコード画像を「端末表示用コード画像」と称する。
詳細は後述するが、端末表示用コード画像には、上記の決済用番号が格納される。
端末表示用コード画像や決済用番号は、コード画像による決済を行うための「第1情報」の一例であり、サーバ10から送信される。
以下では、上記の端末表示用コード画像の生成をサーバ10に依頼する情報をコード生成依頼情報とする場合を例示する。つまり、本処理では、限定ではなく例として、端末表示用コード画像の生成を端末20からサーバ10に依頼することとし、A110では、端末表示用コード画像の生成を依頼するコード生成依頼情報をサーバ10に送信する。
また、本明細書において、「端末表示用コード」とは、決済種別「端末コード表示」での決済に使用されるコードとして説明する。
決済種別「端末コード表示」では、端末20のユーザが店舗等で支払いを行う際に、端末20に記憶されている決済アプリケーションを用いて、端末20で表示される端末表示用コード画像を店舗のコードレジ60で店員に提示する。そして、この端末表示用コード画像を店舗コードリーダ装置50等で読み取ってもらうことで決済を実現する。
端末表示用コードは、端末20のユーザによって店舗等の店員に提示されるコード(コード画像)であるため、「提示用コード」や「ユーザ提示用コード」と表現することもできる。
A110で送信するコード生成依頼情報には、限定ではなく例として、端末20、または端末20のユーザを識別するための識別情報を含めることができる。例えば、自己の端末20を識別するための端末識別情報(例えば端末ID)、自己の端末20のユーザを識別するためのユーザ識別情報(例えばユーザID)、決済アプリケーションのアカウント情報(例えばアプリケーションID)等の情報がこれに含まれる。
通信I/F14によって端末20からコード生成依頼情報を受信すると(C110)、制御部11は、端末表示用コード生成処理を行う(C120)。
具体的には、限定ではなく例として、所定の桁数(例えば10桁〜12桁程度の桁数)のランダムな数字を発生させる手法(アルゴリズム)を用いて、所定の桁数のランダムな数字を決済用番号として発生させる。そして、限定ではなく例として、少なくとも決済用番号を元情報として含む端末表示用コード画像を生成する。より具体的には、少なくとも決済用番号をエンコード(符号化)し、図形化(画像化)して、二次元コード(例えばQRコード)の画像で表される端末表示用コード画像を生成する。また、受信したコード生成依頼情報に含まれる端末20または端末20のユーザの識別情報と、発生させた決済用番号とを関連付けて記憶部15に記憶させる。
次いで、制御部11は、生成された端末表示用コード(この例では端末表示用コード画像)を、通信I/F14によって端末20に送信する(C130)。端末20は、通信I/F22によってサーバ10から端末表示用コード(この例では端末表示用コード画像)を受信する(A130)。この場合、制御部21は、限定ではなく例として、受信された端末表示用コード画像を表示部24に表示させる。
その後、表示部24に表示された端末表示用コード画像が、端末20のユーザによって店舗の店員等に提示されると、制御部51は、端末20の表示部24に表示された端末表示用コード画像をコードリーダ58に読み取らせる制御を行う(B150)。
その後、制御部51は、決済サービスの事業者によって提供(配布)される、決済アプリケーションと関連付けられたアプリケーションインターフェイス(API)等を用いて通信I/F54によってサーバ10にアクセスし、少なくとも、読み取った端末表示用コード画像からデコードによって取得した決済用番号と、店舗または店舗コードリーダ装置50を識別するための識別情報(以下、「店舗識別情報」と称する。)と、決済予定の金額(以下、「決済予定金額」と称する。)とを含む決済要求情報を、通信I/F54によってサーバ10に送信する(B160)。
通信I/F14によって店舗コードリーダ装置50から決済要求情報を受信すると(C160)、制御部11は、決済処理を行う(C170)。具体的には、受信した決済要求情報に含まれる決済用番号が、端末20または端末20のユーザの識別情報と関連付けて記憶部15に記憶されているか否かを判定する。そして、記憶されている場合は「決済可」と判定し、その決済用番号と関連付けて記憶されている識別情報から識別される端末20または端末20のユーザの電子貨幣の残高(決済アプリケーションのアプリケーションIDに関連付けられた電子貨幣の残高)(以下、単に「残高」と称する。)から決済予定金額を減算して決済する。
その後、制御部11は、店舗用の決済完了通知(以下、「店舗用決済完了通知」と称する。)を、通信I/F14によって店舗コードリーダ装置50に送信する(C180)。店舗用決済完了通知には、限定ではなく例として、決済が完了(成功)した旨と、決済した日時(決済日時)と、決済した金額(決済金額)等の店舗用決済情報とが含まれる。
また、制御部11は、端末用の決済完了通知(以下、「端末用決済完了通知」と称する。)を、通信I/F14によって端末20に送信する(C190)。端末用決済完了通知には、限定ではなく例として、決済が完了(成功)した旨と、決済した日時(決済日時)、決済した店舗の店舗識別情報(決済店舗識別情報)、決済した金額(決済金額)等の端末用決済情報とが含まれる。そして、制御部11は、処理を終了する。
なお、ここでは、サーバ10による決済が成功した場合に、店舗用決済完了通知と端末用決済完了通知とがサーバ10から送信されることとするが、残高の不足等により、サーバ10が決済を行うことができない場合がある。この場合は、決済を行うことができなかった旨の通知(例えば決済エラー通知、決済NG通知)を、店舗コードリーダ装置50と端末20とに送信するようにすればよい。
他の処理においても同様である。
通信I/F54によってサーバ10から店舗用決済完了通知を受信すると(B180)、制御部51は、処理を終了する。
また、通信I/F22によって端末用決済完了通知をサーバ10から受信すると、制御部21は、受信された端末用決済完了通知に基づき、決済アプリケーションのデータとして端末20で記憶している残高を更新する。また、制御部21は、決済結果を表示部24に表示させる(A190)。そして、制御部21は、処理を終了する。
図3−2は、端末20で実行される決済アプリケーションで表示されるトップ画面の一例を示す図である。
このトップ画面は、決済アプリケーションを起動した際に表示される表示画面であり、画面上部に、決済アプリケーションの名称である「Payment App」が表示されている。その下の枠内には、残高(ここでは「3000円」)が表示されており、その横には、電子貨幣をチャージ(追加)するためのチャージボタンが表示されている。また、その下には、決済アプリケーションの各種の機能に対応する複数の機能アイコンが表示されている。
これらの機能アイコンのうち、「コード」と示されたアイコンは、限定ではなく例として、表示部24にコード表示画面を表示させるための「コードアイコン」である。このコードアイコンが端末20のユーザによりタッチ操作されると、限定ではなく例として、端末20からサーバ10にコード生成依頼情報が送信され、サーバ10によって端末表示用コードが生成される。そして、生成された端末表示用コードがサーバ10から端末20に送信されて、図3−3に示すコード表示画面が端末20の表示部24に表示される。
図3−3は、コード表示画面の一例を示す図である。
このコード表示画面には、画面上部に「コード」の文字が表示され、その下に、決済方法と、ユーザが所有しているポイントと、そのポイントを利用して決済を行うか否かを設定するためのポイントタブとが表示されている。
また、その下には、サーバ10から取得した端末表示用コードのコード画像として、バーコードで表される一次元の端末表示用コード画像と、QRコードで表される二次元の端末表示用コード画像QC0とが、表示画面内の異なる領域にそれぞれ表示されている。また、限定ではなく例として、一次元の端末表示用コード画像の下には、12桁の決済用番号が表示されている。
また、この例では、コード表示画面に表示される端末表示用コードには、そのコードを使用して決済を行うことのできる期限(以下、「コード使用期限」と称する。)がある。
コード使用期限は、そのコードに関連付けられた有効期限と言うこともできる。
コード使用期限は、限定ではなく例として、「端末で端末表示用コードが表示された(表示が開始された)時刻からコード使用時間が経過するまでの期間」とすることができる。コード使用時間は、適宜設定変更可能であるが、限定ではなく例として「5分」とすることができる。
以下では、端末で端末表示用コードが表示された(表示が開始された)時刻のことを「コード表示時刻」と称する。時刻を日時として「コード表示日時」と言ってもよい。
なお、コード使用期限を、そのコードを使用して決済を行うことのできる期間が終了(満了)する時刻(日時)と定義するようにしてもよいし、そのようにしなくてもよい。
そして、二次元の端末表示用コード画像QC0の下には、更新のマークおよび更新の文字とともに、コード使用期限の残り時間がカウントダウン形式で表示されている。この残り時間は、端末20の時計部29Aによって計時される情報に基づき表示される。
残り時間が「0」になると、そのコードは使用できなくなる。このため、その後に端末20のユーザが決済を行いたい場合は、サーバ10から端末表示用コードを再取得することが必要となる。
端末20のユーザは、コード使用期限内に、図3−3のコード表示画面をコードレジ60で店舗の店員に提示し、店舗コードリーダ装置50で端末表示用コード画像を読み取ってもらうことで決済を行う。この場合、店舗コードリーダ装置50は、前述したAPI等を用いて通信I/F54によってサーバ10にアクセスして、決済に必要な情報をサーバ10に送信する。これにより、サーバ10によって決済処理が行われる。
ここまで、オンライン決済を実現するための処理を例示した。この処理では、サーバ10によって生成されて端末20に送信された端末表示用コードが、限定ではなく例として、すぐに決済に利用される。
しかしながら、ユーザによっては、サーバ10から受信された端末表示用コードをすぐに利用して決済を行うのではなく、後から利用して決済を行うことを希望するような場合もある。
また、上記の処理を適用するためには、端末20とサーバ10とが通信可能な状態(オンライン状態)であることが必要となる。勿論、店舗コードリーダ装置50とサーバ10とが通信可能な状態であることも必要である。
しかしながら、地下などの電波状況が悪い場所で決済を行う場合や、イベント会場などの回線が混雑している状況で決済を行う場合、端末20の一定期間(例えばひと月)における通信量が一定量を超えるなどして通信制限や通信の速度制限かかけられている場合等において、端末20とサーバ10とが通信不能(または通信困難)となった結果、決済を行うのが困難になる場合が想定される。
そこで、以下では、これらの場合であっても決済を実現するための手法を例示する。
なお、以下説明する決済の手法は、オンライン状態と、オフライン状態とのいずれについても同様に適用可能であるが、ここでは、オフライン状態における決済を実現するための手法として説明する。
(2)オフライン決済
本開示の手法の一態様としてのオフライン決済の手法について、フローチャートを参照して説明する。
以下では、「オフライン」とは、端末20がサーバ10と通信することができないこと、または通信を適切に行うことができないこと(通信が困難であること、通信が不安定であること)を示し、「オフライン状態」とは、このオフラインの状態を示すものとする。また、「オフライン決済」とは、オフライン状態においてサーバ10によって決済が行われることを示すものとする。
なお、前提として、店舗コードリーダ装置50はサーバ10と通信することができるものとする。
「オフライン状態」は、第2通信状態(第1通信状態よりも通信の情報量が小さい通信状態)の一例である。
また、「オフライン状態」は、端末20の通信量が設定された通信量よりも小さい通信状態と言うこともできる。
上記のように、オフライン状態は、オンライン状態よりも通信の情報量が小さい通信状態や、端末20の通信量が設定された通信量よりも小さい通信状態と言うこともできる。この通信状態には、端末20とサーバ10とが完全に通信を行うことができない状態の他、例えば、通信は可能であるが、例えば以下に例示するように、端末20とサーバ10とが適切に通信を行うことができない状態も含めることができる。
(1)通信に要する時間が想定される時間よりも長くなる状態(例えば、通信が不安定であり、遅延(遅延時間)が長くなる状態(レイテンシーが大きくなる状態))
・例えば、端末20はサーバ10と情報のやり取りを行うことはできるが、サーバ10に情報を送信する場合、送信を完了するまでに要する時間が想定される時間よりも長くなる。
・例えば、端末20はサーバ10と情報のやり取りを行うことはできるが、サーバ10から情報を受信する場合、受信を完了するまでに要する時間が想定される時間よりも長くなる。その結果、例えば受信した情報に基づく表示を行う場合、その表示を行うために想定される時間よりも長い時間を要する。
(2)通信速度が想定される速度よりも遅くなる状態(例えば、単位時間あたりに伝送可能なデータ量が減る状態(スループットが小さくなる状態))
なお、レイテンシーが小さいほど、データアクセスに関する性能が高く、通信状態は良好であると考えることもできる。また、スループットが良好であっても、レイテンシーが大きい場合は、通信が不安定であると考えることもできる。
図3−4は、この場合における各装置が実行する処理の流れの一例を示すフローチャートである。図の見方は、前述したフローチャートと同様である。
図3−4のフローチャートは、図3−1のフローチャートをオフライン仕様に書き換えたものである。図3−1のフローチャートとは、限定ではなく例として、オンライン状態での処理ステップ(例えばA240)、オフライン状態での処理ステップ(例えばA250、B250、B280)、オフライン状態からオンライン状態に復帰した場合の処理ステップ(例えばA290、C290)が異なる。
A130の後、制御部21は、受信された端末表示用コード(この例では端末表示用コード画像)を記憶部28にストックする(A240)。
ここで、「ストック」とは、受信された端末表示用コードを後で利用可能とするために、記憶部28に記憶させることを意味する。
なお、本明細書では、「ストック」のことを、単に「記憶」と表現することもある。また、端末表示用コードをストックすることを、「端末表示用コードを端末表示用コードストックデータに記憶させる」と表現することもある。
この処理では、オフライン決済を可能とするために、オンライン状態においてサーバ10から取得した端末表示用コード(この例では端末表示用コード画像)を端末20の記憶部28にストック(記憶)させておく。そして、オフライン状態での決済が必要となった場合に、ストックされた端末表示用コードを用いて、サーバ10と通信する必要なく決済ができるようにする。
具体的に説明する。A240の後、オフライン状態になったとする。
ここで、端末20は、限定ではなく例として、以下のいずれかの手法によってオフライン状態となったことを検出する。
(A)端末20での決済アプリケーションの実行中、定期的なタイミングや特定のタイミングで、サーバ10から接続確認要求が端末20に送信され、端末20からは、その接続確認要求に対して、識別情報(例えばアプリケーションID)を含む接続応答がサーバ10に送信されるようにする。この場合、端末20の制御部21は、サーバ10から接続確認要求を受信しなくなった場合に、オフライン状態になったと判定する。
(B)端末20での決済アプリケーションの実行中、定期的なタイミングや特定のタイミングで、端末20から識別情報(例えばアプリケーションID)を含む接続通知がサーバ10に送信され、サーバ10からは、その接続通知に対して、接続確認が端末20に送信されるようにする。オフライン状態では、端末20からサーバ10に接続通知を送信することができない。このため、限定ではなく例として、端末20の制御部21は、接続通知の送信エラーの発生を検知した場合に、オフライン状態となったと判定する。
なお、端末20が、限定ではなく例として、ネットワークの接続状況を取得するライブラリやアプリケーション等を用いて、自己の端末20の通信状態(通信状況)に関する情報を取得して、オフライン状態となったか否かを判定するようにしてもよいし、そのようにしなくてもよい。
オフライン状態において、限定ではなく例として、端末20のユーザによってコード表示操作がなされると、制御部21は、コード表示処理を行う(A250)。具体的には、限定ではなく例として、A240でストックされた端末表示用コード画像を含むコード表示画面を表示部24に表示させる。そして、このコード表示画面が端末20のユーザによって店舗の店員等に提示されると、制御部51は、提示されたコード表示画面の端末表示用コード画像を、コードリーダ58に読み取らせる制御を行う(B250)。そして、制御部51は、B160へと処理を移す。
B160の後、通信I/F54によってサーバ10から店舗用決済完了通知を受信すると(B280)、受信された店舗用決済完了通知に基づき、店舗の店員等はオフライン決済が完了(成功)したことを端末20のユーザに口頭で通知する。
C180の後、制御部11は、端末用決済完了通知を端末20に送信する(C290)。しかし、オフライン状態では、端末20は端末用決済完了通知を受信できない。
端末20がオンライン状態に復帰すると、サーバ10から送信された端末用決済完了通知が端末20で受信される。そして、通信I/F22によって端末用決済完了通知をサーバ10から受信すると、制御部21は、受信された端末用決済完了通知に基づき、決済結果を表示部24に表示させる(A290)。そして、制御部21は、コード表示画面を非表示とする。
以上説明した処理が、オフライン決済を行うための処理の一例である。
なお、コード生成依頼情報は、1個の端末表示用コードの生成を依頼する情報としてもよいが、複数(2以上)の端末表示用コードの生成を依頼する情報としてもよい。具体的には、限定ではなく例として、端末表示用コードを1つ1つ追加するようにするのではなく、端末20側またはサーバ10側で、端末20が一度に生成を依頼するコードの数(サーバ10が一度に生成するコードの数)の上限を設定しておく。そして、この上限の数の端末表示用コードを、端末20のユーザが1回の操作で一気に取得するようにしてもよい。この場合、サーバ10によって複数の端末表示用コードが生成され、生成された複数の端末表示用コードが端末20に送信されて、受信された複数の端末表示用コードを端末20でストックするようにすればよい。
上記の処理は、オンライン状態においても同様に適用可能である。つまり、
(1)オンライン状態において後から端末表示用コードを利用して決済を行う場合
(2)オフライン決済を行う場合
のいずれかの場合に、上記のように、オンライン状態においてサーバ10によって生成されて送信された端末表示用コードを端末20でストックしておく。そして、端末20でストックしておいた端末表示用コードを用いて決済を行うようにすることができる。
しかしながら、オンライン決済を行う場合と、オフライン決済を行う場合とで、端末20の表示部24に同じ表示を行わせるようにした場合、ユーザにとっては、現在の端末20の通信状態がオンライン状態とオフライン状態とのいずれであるかが分かりにくい場合がある。
<機能構成>
(1)サーバの機能構成
図4−1は、本実施例におけるサーバ10の制御部11により実現される機能の一例を示す図である。
以下では、端末20のユーザが、端末20に記憶されている決済アプリケーションを用いて、限定ではなく例として、前述した決済種別「端末コード表示」による決済を行う場合を例示する。
サーバ10は、制御部11により実現される機能として、決済管理処理部111を有する。
決済管理処理部111は、記憶部15に記憶されている決済管理処理プログラム151に従って、端末20で実行される決済アプリケーションに関する各種の情報やデータの管理や、端末20または端末20のユーザの電子貨幣による決済を管理するための決済管理処理を実行する機能を有している。
本実施例において、決済管理処理部111は、記憶部15に記憶されている決済管理処理プログラム151に従って、例えば図3−4に示した処理を決済管理処理として実行する。
決済管理処理部111は、限定ではなく例として、端末表示用コード生成処理によって端末表示用コードを生成する端末表示用コード生成処理部1111と、決済処理によって決済を実行する決済処理部1113とを機能部として含む。
端末表示用コード生成処理部1111は、限定ではなく例として、二次元コードで表される端末表示用コード画像を生成する。二次元コードとは、水平方向と垂直方向とに情報を持つ表示方式のコードであり、小さな正方形を上下左右に配列させたマトリックス式のコード(以下、「マトリックスコード」と称す。)や、一次元コード(限定ではなく例としてバーコード)を上下に複数重ねたスタック式のコード(以下、「スタックコード」と称す。)等がある。
本実施例では、説明の簡明化のため、広く用いられているマトリックスコードの一例であるQRコード(登録商標)を、端末表示用コードの一例として説明する。
なお、本実施例とは異なり、QRコード以外のマトリックスコードとして、SPコードやベリコード、マキシコード、CPコード、カメレオンコード等のコードを用いてもよいし、用いなくてもよい。また、マトリックスコードではなく、各種のスタックコードを用いてもよいし、用いなくてもよい。
また、端末表示用コード生成処理部1111が、端末表示用コードとして、二次元コード(限定ではなく例として、QRコード)に加えて、一次元コード(限定ではなく例として、バーコード)を生成するようにしてもよいし、そのようにしなくてもよい。これは、店舗によっては、二次元コードの読み取りには対応していないが、一次元コードの読み取りには対応可能な場合があるためである。
決済処理部1113は、限定ではなく例として、店舗POSシステム40から送信される情報や、端末20から送信される情報に基づいて、決済処理を行う機能を有している。
図4−2は、本実施例におけるサーバ10の記憶部15に記憶される情報の一例を示す図である。
記憶部15には、限定ではなく例として、プログラムとして、制御部11により読み出され、決済管理処理として実行される決済管理処理プログラム151が記憶される。
また、記憶部15には、限定ではなく例として、データとして、ユーザ登録データ153と、店舗登録データ155と、決済管理データベース157と、コード管理データベース159とが記憶される。
ユーザ登録データ153は、決済サービスを利用する端末20および端末20のユーザの登録データであり、そのデータ構成の一例を図4−3に示す。
ユーザ登録データ153には、限定ではなく例として、ユーザ名と、端末電話番号と、端末メールアドレスと、アプリケーションIDと、認証パスワードと、その他登録情報とが関連付けて記憶される。
ユーザ名は、決済サービスを利用する端末20のユーザの名称であり、端末20のユーザが決済サービスを利用する際に登録する名称が記憶される。
端末電話番号は、このユーザ名のユーザの端末20の電話番号であり、端末20のユーザが決済アプリケーションを利用する際に登録する端末20の電話番号が記憶される。
端末メールアドレスは、このユーザ名のユーザの端末20のメールアドレスであり、端末20のユーザが決済アプリケーションを利用する際に登録する端末20のメールアドレスが記憶される。
端末電話番号や端末メールアドレスは、端末20を識別するための識別情報(以下、「端末識別情報」と称す。)の一例である。
アプリケーションIDは、決済アプリケーションのアカウント(アカウント情報)であって、端末20、または端末20のユーザを識別可能とするIDである。このアプリケーションIDは、限定ではなく例として、サーバ10によって固有のIDが設定されて記憶される。
認証パスワードは、このユーザ名のユーザの端末20において、決済用の認証処理(以下、単に「認証処理」と称す。)を行う際にユーザに入力を要求する認証用のパスワードであり、ユーザによって設定されたパスワードが記憶される。
なお、決済用の認証処理は、必ずしも行わなければならないわけではなく、行わないようにすることも可能である。この場合は、認証パスワードをユーザ登録データ153に記憶させておく必要はない。
その他登録情報は、このユーザ名のユーザのその他の登録情報であり、限定ではなく例として、決済アプリケーションにおいてユーザが使用するアイコンの画像データであるユーザアイコン画像やユーザのプロフィール等がこれに含まれる。
店舗登録データ155は、決済アプリケーションを提供する事業者(サーバ10の事業者)と提携している店舗の登録データである。この店舗登録データ155の一例である店舗登録データ155Aのデータ構成例を、図4−4に示す。
店舗登録データ155Aには、限定ではなく例として、業種と、店舗名と、店舗位置情報と、店舗POSシステム情報と、店舗IDとが店舗情報として関連付けて記憶される。
業種には、店舗の業種が記憶される。この業種には、限定ではなく例として、「コンビニエンスストア」、「スーパーマーケット」、「薬局」、「居酒屋」、「百貨店」、「レストラン」、「本屋」、「時計店」といった各種の業種が含まれる。
店舗名には、各業種それぞれについて、その業種に含まれる(属する)店舗の店舗名が記憶される。
店舗位置情報には、この店舗名の店舗の所在地の位置情報(以下、「店舗位置情報」と称す。)が記憶される。この店舗位置情報は、店舗の所在地を2次元または3次元の位置座標で表したものとしてもよいし、店舗の所在地を経緯度(緯度、経度、場合によっては高度)で表したものとしてもよい。
店舗POSシステム情報には、この店舗で使用される店舗POSシステム40に関する情報が記憶される。この店舗POSシステム情報には、限定ではなく例として、サーバ10が、店舗コードリーダ装置50や店舗サーバ70と通信を行うために必要な情報が含まれる。
店舗POSシステム40は、サーバ10と連携して処理を行うため、限定ではなく例として、サーバ10から提供(配布)される決済アプリケーション用のソフトウェアパッケージをあらかじめ取得して店舗コードリーダ装置50や店舗サーバ70に記憶させておき、このソフトウェアパッケージを、店舗での決済処理用のプログラムから呼び出して使用するようにすることができる。アプリケーションプログラミングインターフェース(API)が一例であり、店舗コードリーダ装置50は、例えばAPIを起動して、サーバ10への情報の送信と、サーバ10からの情報の受信とを実現する。
また、サーバ10は、限定ではなく例として、店舗の業種、店舗名、店舗位置情報、店舗POSシステム情報等の情報を、その店舗の店舗サーバ70から受信して、店舗登録データ155に記憶させておくようにすることができる。
店舗IDは、この店舗名の店舗を識別するための識別情報として機能するIDである。この店舗IDは、限定ではなく例として、サーバ10によって店舗ごとに固有のIDが設定されて記憶される。
店舗IDは、店舗識別情報の一例である。
決済管理データベース157は、各端末20のユーザの決済に関する情報を管理するためのデータを蓄積的に記憶したデータベースであり、その一例である決済管理データベース157Aの構成例を図4−5に示す。
決済管理データベース157Aには、端末20毎、または端末20のユーザ毎に生成される決済管理データが記憶される。
各決済管理データには、限定ではなく例として、アプリケーションIDと、残高と、ポイントと、1日利用上限金額と、オートチャージ設定と、決済履歴データとが記憶される。
アプリケーションIDには、ユーザ登録データ153に記憶されているアプリケーションIDが記憶される。
残高には、このアプリケーションIDに関連付けられている残高が記憶される。
ポイントには、決済アプリケーションと関連付けられた各種のサービスや、決済アプリケーションの事業者と提携している加盟店舗で貯めることのできるポイントが記憶される。ポイントは、限定ではなく例として、1ポイントあたり1円相当の価値を有し、ギフト券や商品等に交換することができる他、決済アプリケーションにおいて現金化して決済に利用することもできる。
1日利用上限金額には、このアプリケーションIDの端末20、または端末20のユーザが決済に利用可能な金額の1日あたりの上限金額が記憶される。
この1日利用上限金額は、限定ではなく例として、ユーザ操作に従って設定したり、サーバ10側で設定したりすることができる。
なお、この1日利用上限金額を端末20側で設定・制御する手法については、第2実施例で後述する。
オートチャージ設定は、残高が残り少ない金額(例えば「500円」)や「0円」となった場合に、電子貨幣を自動的に補充(オートチャージ)するか否かの設定であり、端末20のユーザによってオートチャージの設定がなされた場合は「ON」が記憶され、それ以外の場合は「OFF」が記憶される。オートチャージは、限定ではなく例として、端末20のユーザが登録している銀行口座等から行われるようにすることができる。
決済履歴データは、このアプリケーションIDのユーザの決済の履歴に関するデータであり、限定ではなく例として、このアプリケーションIDについて、サーバ10によって決済が行われた日時である決済日時と、決済した店舗のIDである店舗IDと、その店舗IDの店舗の名称である決済店舗名と、決済した金額である決済金額とが関連付けて時系列に記憶される。
なお、上記の決済管理データには、必ずしも上記の全ての情報を記憶させるようにする必要はない。限定ではなく例として、ポイント、1日利用上限金額、オートチャージ設定のうちの一部または全部は、決済管理データに記憶させないようにしてもよい。
また、決済を行う度に、決済履歴の情報を端末20に送信して端末20に記憶させるようにして、サーバ10には決済履歴データを記憶させないようにしてもよい。
コード管理データベース159は、コード(本実施例では端末表示用コード)を管理するためのデータベースであり、そのデータ構成の一例を図4−6に示す。
コード管理データベース159には、限定ではなく例として、決済アプリケーションのアプリケーションIDごとに生成されるデータとして、アプリケーションIDとともに、コード生成日時と、コードNoと、決済用番号とが関連付けて時系列に記憶されたコード管理データが含まれる。
コード生成日時には、時計部19によって計時される情報に基づいて、その端末表示用コードを生成した日時が記憶される。
コードNoには、そのコードを識別するための番号が記憶される。例えば、古い順に通し番号が設定されて記憶される。
決済用番号には、その端末表示用コードを生成する際に発行した決済用番号が記憶される。
コード管理データに記憶される端末表示用コードのデータは、限定ではなく例として、その端末表示用コードを利用して決済処理を行った後、コード管理データから削除するようにすることができる。
なお、上記のように、利用不可となった端末表示用コードのデータをコード管理データから削除するのではなく、限定ではなく例として、端末表示用コードのデータと関連付けて、その端末表示用コードの利用可否を示すフラグ「利用可能/利用不可」を設定する。そして、利用不可となった端末表示用コードについては、フラグを「利用不可」に設定するようにしてもよいし、そのようにしなくてもよい。
また、上記のうち、例えばコード生成日時は、コード管理データに記憶させないようにしてもよい。
また、アプリケーションIDに代えて、または、これに加えて、ユーザ登録データ153に記憶されている端末電話番号等の端末識別情報を、コード管理データに記憶させるようにしてもよいし、しなくてもよい。
(2)端末の機能構成
図4−7は、本実施例において端末20の制御部21により実現される機能の一例を示す図である。
端末20は、制御部21により実現される機能として、決済アプリケーション処理部211を有する。
決済アプリケーション処理部211は、記憶部28に記憶されている決済アプリケーションソフトウェア281に基づいて、決済に関する処理を行うための処理の一例である決済アプリケーション処理を実行する機能を有している。
本実施例において、決済アプリケーション処理部211は、記憶部28に記憶された決済アプリケーションプログラム282に従って、例えば図3−4に示した処理を決済アプリケーション処理として実行する。
本実施例において、決済に関する処理とは、限定ではなく例として、端末表示用コードをサーバ10から取得する処理(端末表示用コードの生成をサーバ10に依頼する処理や、生成された端末表示用コードをサーバ10から受信する処理を含む。)、サーバ10から取得した端末表示用コードをストックする処理、ストックした端末表示用コード画像を表示する処理(コード表示処理)、表示した端末表示用コード画像を店舗コードリーダ装置50に読み取らせるようにユーザに指示(案内)する処理、サーバ10によって決済が行われた後に端末用決済完了通知をサーバ10から受信(取得)する処理などの、決済を行う上で何らかの関連のある処理、より具体的には、決済を行う上で関連のある処理として端末20で実行される処理全般を含む概念である。
決済アプリケーション処理部211は、限定ではなく例として、コード表示処理部2113と、コード関連情報表示制御部2115とを機能部として含む。
コード表示処理部2113は、端末表示用コード画像を含むコード表示画面を表示部24に表示させるコード表示処理を実行する。
コード関連情報表示制御部2115は、限定ではなく例として、コード関連情報表示制御用データ2835に基づいて、コード関連情報を表示部24に表示させる制御を行う。
コード関連情報とは、端末表示用コードストックデータ2831に記憶されている端末表示用コード、またはコード表示画面に表示される端末表示用コード(コード画像)に関連する情報である。これについては、詳細に後述する。
図4−8は、本実施例における端末20の記憶部28に記憶される情報の一例を示す図である。
記憶部28には、限定ではなく例として、サーバ10からあらかじめダウンロードするなどして取得されるアプリケーションソフトウェアとして、決済アプリケーションソフトウェア281が記憶される。
決済アプリケーションソフトウェア281には、限定ではなく例として、決済アプリケーションプログラム282と、決済アプリケーションデータ283とが含まれる。
決済アプリケーションプログラム282は、制御部21によって読み出され、決済アプリケーション処理として実行されるプログラムであり、限定ではなく例として、コード表示処理として実行されるコード表示処理プログラム2823をサブルーチンプログラムとして含む。
決済アプリケーションデータ283には、決済アプリケーションソフトウェア281で用いられる各種のデータが記憶される。この決済アプリケーションデータ283には、限定ではなく例として、端末表示用コードストックデータ2831と、決済用データ2832と、店舗データ2833と、コード関連情報表示制御用データ2835とが記憶される。
端末表示用コードストックデータ2831には、オンライン状態においてサーバ10から取得した端末表示用コードがストックされたデータであり、そのデータの一例である第1の端末表示用コードストックデータ2831Aのデータ構成例を図4−9に示す。
第1の端末表示用コードストックデータ2831Aには、限定ではなく例として、コード受信日時と、コードNoと、コードデータとが関連付けて時系列に記憶される。
コード受信日時には、限定ではなく例として、端末20がその端末表示用コードをサーバ10から受信した日時が記憶される。
コードNoには、端末20がその端末表示用コードとともにサーバ10から受信したコードNoが記憶される。
コードデータには、限定ではなく例として、端末20がサーバ10から受信した端末表示用コードのコード画像のデータが記憶される。
第1の端末表示用コードストックデータ2831Aに記憶される端末表示用コードのデータは、限定ではなく例として、その端末表示用コードを利用してサーバ10によって決済処理が行われ、サーバ10から端末用決済完了通知を受信した後(オフライン決済を行った場合は、オンライン状態に復帰してサーバ10から端末用決済完了通知を受信した後)、第1の端末表示用コードストックデータ2831Aから削除するようにすることができる。
なお、上記のように、利用不可となった端末表示用コードのデータを端末表示用コードストックデータ2831から削除するのではなく、例えば図4−10の第2の端末表示用コードストックデータ2831Bのように、限定ではなく例として、端末表示用コードのデータと関連付けて、その端末表示用コードの使用状況の情報を関連付けて記憶しておくようにすることもできる。そして、未だ使用していない端末表示用コードには「未使用」を、使用済みの端末表示用コードには「使用済み」をそれぞれ関連付けて記憶させるようにしてもよいし、そのようにしなくてもよい。
また、上記のうち、例えばコード受信日時は、端末表示用コードストックデータ2831(第1の端末表示用コードストックデータ2831Aや第2の端末表示用コードストックデータ2831B)に記憶させないようにしてもよい。
また、コード受信日時に代えて、または、これに加えて、限定ではなく例として、サーバ10から受信した端末表示用コードを端末表示用コードストックデータ2831(第1の端末表示用コードストックデータ2831Aや第2の端末表示用コードストックデータ2831B)に記憶させた日時(以下、「コード記憶日時」と称する。)を記憶させるようにしてもよいし、そのようにしなくてもよい。
また、詳細は後述するが、コードデータには、必ずしも端末表示用コードのコード画像のデータを記憶させなければならないわけではなく、これに代えて、または、これに加えて、端末表示用コードの元情報(本実施例では決済用番号)を記憶させるようにしてもよいし、そのようにしなくてもよい。
また、端末表示用コードストックデータ2831には、オンライン状態においてサーバ10から取得した1個のコードのみを記憶させることとしてもよいし、そのようにしなくてもよい。
決済用データ2832は、端末20で記憶される決済用のデータであり、その一例である第1の決済用データ2832Aの構成例を図4−11に示す。
第1の決済用データ2832Aには、限定ではなく例として、アプリケーションIDと、ポイントと、残高と、1日利用上限金額と、オートチャージ設定と、決済履歴データとが記憶される。
制御部21は、オンライン状態に復帰した後にサーバ10から受信した端末用決済完了通知に基づき、限定ではなく例として、サーバ10によって決済された日時である決済日時と、サーバ10によって決済された店舗のIDである店舗IDと、その店舗IDの店舗の名称である決済店舗名と、サーバ10によって決済された金額である決済金額とを関連付けて決済履歴データに時系列に記憶させる。
店舗データ2833には、限定でなく例として、サーバ10の店舗登録データ155Aに記憶されている各種の店舗情報が記憶される。
店舗データ2833は、限定ではなく例として、決済アプリケーションソフトウェア281のアップデートのタイミングで、サーバ10から最新の店舗情報が端末20に配信されて更新されるようにすることができる。
コード関連情報表示制御用データ2835は、コード関連情報の表示制御を行うために用いられるデータであり、その一例である第1のコード関連情報表示制御用データ2835Aの構成例を図4−12に示す。
第1のコード関連情報表示制御用データ2835Aには、限定ではなく例として、コード関連情報と、制御対象と、通信状態と、制御内容と、適用有無とが関連付けて記憶される。
コード関連情報には、限定ではなく例として、画面表示態様情報と、コード関連期限情報と、コード関連通知情報とが含まれる。
画面表示態様情報は、端末表示用コードが表示されるコード表示画面の表示態様の情報である。
コード関連期限情報は、端末表示用コードに関連付けられた期限の情報である。このコード関連期限情報には、限定ではなく例として、前述したコード使用期限、またはコード使用期限に関連する情報が含まれる。
コード関連通知情報は、端末表示用コードに関連して端末20のユーザに対して行う通知の情報である。
制御対象には、そのコード関連情報について、コード関連情報表示制御部2115が制御対象とする項目が定められている。
通信状態には、それぞれの制御対象について、オンライン状態であることを示す「オンライン」と、オフライン状態であることを示す「オフライン」とが定められている。
なお、通信状態は、通信状況と言うこともできる。
制御内容には、その制御対象を、コード関連情報表示制御部2115がどのように制御するかの内容が定められている。
適用有無は、その制御対象の制御を適用するか否かを示す情報(例えばフラグ)であり、適用する制御対象には適用有りを示す「有」が、適用しない制御対象には適用無しを示す「無」が関連付けて記憶されている。
以下、具体例を挙げて詳細に説明する。
(1)画面表示態様情報
画面表示態様情報について、制御対象として「枠色」と「背景輝度」とが定められている。
枠色は、限定ではなく例として、コード表示画面の枠(例えば外枠)の色である。これは、表示領域の色の情報の一例である。
背景輝度は、限定ではなく例として、コード表示画面の背景の輝度(あかるさ)である。これは、表示領域のあかるさの情報の一例である。
制御対象「枠色」について、通信状態「オンライン」には制御内容として「緑色(デフォルト)」が、通信状態「オフライン」には制御内容として「赤色」がそれぞれ定められている。
これは、端末20がオンライン状態である場合は、コード表示画面の枠をデフォルトの緑色で表示させ、端末20がオフライン状態である場合は、コード表示画面の枠をデフォルトとは異なる赤色で表示させることを示している。
なお、上記の枠色はあくまでも一例であり、これに限定されない。例えば、通信状態「オンライン」には制御内容として「白色」を、通信状態「オフライン」には制御内容として「赤色」や「緑色」をそれぞれ定めておいてもよいし、そのようにしなくてもよい。
また、制御対象を「枠色」と定めておくのではなく、コード表示画面の背景の色である「背景色」と定めておいてもよいし、そのようにしなくてもよい。
制御対象「背景輝度」について、通信状態「オンライン」には制御内容として「輝度A(デフォルト)」が、通信状態「オフライン」には制御内容として「輝度B(<輝度A)」がそれぞれ定められている。
これは、端末20がオンライン状態である場合はコード表示画面の背景をデフォルトの輝度Aで表示させ、端末20がオフライン状態である場合はコード表示画面の背景を輝度Aよりも輝度が低い輝度Bで表示させることを示している。
なお、表示領域のあかるさの情報として、輝度に代えて、またはこれに加えて、明度を定めておくようにしてもよいし、そのようにしなくてもよい。
また、表示領域のあかるさの情報として、コントラスト(あかるさの差)を定めておくようにしてもよいし、そのようにしなくてもよい。
また、画面表示態様情報として、または、操作用画像の表示態様情報として、限定ではなく例として、コード表示画面を表示させるための操作用画像(例えばボタンやアイコン)の表示態様を、通信状態によって異ならせるようにすることもできる。
具体的には、例えば、オンライン状態では、前述したコードアイコンを「コード(オンライン)」のように表示させ、オフライン状態では、前述したコードアイコンを「コード(オフライン)」のように表示させることができる。また、例えば、オンライン状態では、オンラインであることを示すマークや画像で表されるコードアイコンを表示させ、オフライン状態では、オフラインであることを示すマークや画像で表されるコードアイコンを表示させることができる。
(2)コード関連期限情報
コード関連期限情報について、制御対象として「コード使用期限情報(コード使用時間)」が定められており、通信状態「オンライン」には制御内容として「5分(デフォルト)」が、通信状態「オフライン」には制御内容として「3分」がそれぞれ定められている。
これは、端末20がオンライン状態である場合は、コード使用期限を定めるコード使用時間をデフォルトの5分として端末表示用コードを表示し、端末20がオフライン状態である場合は、コード使用期限を定めるコード使用時間をデフォルトよりも短い3分として端末表示用コードを表示することを示している。コード使用時間は、コードの有効期限に関する情報の一例である。
以下では、オンライン状態でのコード使用期限及びコード使用時間を、それぞれ「オンライン用コード使用期限」、「オンライン用コード使用時間」と称する。
また、オフライン状態でのコード使用期限及びコード使用時間を、それぞれ「オフライン用コード使用期限」、「オフライン用コード使用時間」と称する。
(3)コード関連通知情報
コード関連通知情報について、制御対象として「端末用決済完了通知受信不可通知情報」が定められている。
端末用決済完了通知受信不可通知情報は、前述した端末用決済完了通知をサーバ10から受信することができないことをユーザに通知する情報である。
なお、端末用決済完了通知受信不可通知情報は、端末用決済完了通知をサーバ10から絶対に受信することができないことをユーザに通知する情報としてもよいが、そのようにしなくてもよい。
具体的には、限定ではなく例として、オフライン状態であるためにサーバ10による決済後に端末用決済完了通知をすぐに受信することはできないが、例えばオンライン状態に復帰した後、サーバ10から受信することが可能であることを通知する情報としてもよい。
制御対象「端末用決済完了通知受信不可通知情報」について、通信状態「オンライン」には制御内容として「非表示」が、通信状態「オフライン」には制御内容として「表示」がそれぞれ定められている。
これは、端末20がオンライン状態である場合は、端末用決済完了通知受信不可通知情報を表示せず、端末20がオフライン状態である場合は、端末用決済完了通知受信不可通知情報を表示することを示している。
オンライン状態では、端末20は、端末用決済完了通知をサーバ10から受信することができる。しかしながら、オフライン状態では、端末20は、端末用決済完了通知をサーバ10から受信することができない。そこで、オフライン状態である場合は、端末用決済完了通知をサーバ10から受信することができないことをユーザに通知する。
なお、上記のデータにおいて、「適用有無」の欄は必ずしも設けなくてもよく、全ての制御対象について制御を行うようにしてもよいし、そのようにしなくてもよい。
また、適用有無に代えて、またはこれに加えて、いずれの制御対象の制御を優先的に実行するかを示す優先度を定めておいてもよいし、そのようにしなくてもよい。この場合は、限定ではなく例として、所定の優先度以上(または所定の優先度超)の優先度が定められた制御対象について、制御部21が制御を実行するようにすることができる。
また、記憶部28には、限定ではなく例として、端末データ289が記憶される。
端末データ289は、この端末20に関するデータであり、限定ではなく例として、端末電話番号や端末メールアドレス等の端末識別情報や、端末20側での各種の設定情報等がこれに含まれる。
<表示画面例>
図4−13は、本実施例におけるコード表示画面の一例を示す図である。
このコード表示画面では、図3−3のコード表示画面と同様に、画面上部に「コード」の文字が表示され、その下に、決済方法と、ユーザが所有しているポイントと、そのポイントを利用して決済を行うか否かを設定するためのポイントタブとが表示されている。
また、その下には、端末表示用コードストックデータ2831に記憶されている端末表示用コードのコード画像として、限定ではなく例として、バーコードで表される一次元の端末表示用コード画像と、QRコードで表される二次元の端末表示用コード画像QC1とが、それぞれ異なる領域に表示されている。また、この表示例では、限定ではなく例として、一次元の端末表示用コード画像の下に、12桁の決済用番号が表示されている。
また、限定ではなく例として、二次元の端末表示用コード画像QC1の下には、この端末表示用コードのコード使用期限の残り時間が表示されている。
(a)は、オンライン状態で表示されるコード表示画面を示しており、限定ではなく例として、コード表示画面の枠が、デフォルトである緑色で表示されている。
また、オンライン状態であるため、限定ではなく例として、コード使用時間がオンライン用コード使用時間である「5分」とされ、オンライン用コード使用期限の残り時間が「5分」からカウントダウン形式で表示されている。
(b)は、オフライン状態で表示されるコード表示画面を示しており、限定ではなく例として、コード表示画面の枠が、デフォルトとは異なる赤色で表示されている。
また、オフライン状態であるため、限定ではなく例として、コード使用時間がオフライン用コード使用時間である「3分」とされ、オフライン用コード使用期限の残り時間が「3分」からカウントダウン形式で表示されている。
図4−14は、本実施例におけるコード表示画面の別例を示す図である。
このコード表示画面は、オフライン状態で表示されるコード表示画面を示しており、コード使用期限情報の一例として、「オフライン通知 現在、オフラインのため、コード使用期限は3分間です。」というメッセージがポップアップ形式で表示されている。
また、この通知内容をユーザが承認するためのアイコンとして「OK」のアイコンが併せて表示されている。
このような表示を行うことで、端末20のユーザは、端末20の通信状態がオフライン状態であることと、コード使用期限がオンライン状態よりも短くなっていることとを把握することができる。
図4−15は、本実施例におけるコード表示画面の別例を示す図である。
このコード表示画面は、オフライン状態で表示されるコード表示画面を示しており、端末用決済完了通知受信不可通知情報の一例として、「オフライン通知 現在、オフラインのため、決済完了後に通知が届きません。(次回オンライン時に通知が届きます。)このまま決済を続けますか?」というメッセージがポップアップ形式で表示されている。
また、この通知内容をユーザが承認するためのアイコンとして「OK」のアイコンと、後で決済を行う意思を表明するためのアイコンとして「今はしない」のアイコンとが併せて表示されている。
オフライン決済を行う場合、端末20のユーザは、コード使用期限内に、上記の端末表示用コード画像を含むコード表示画面をコードレジ60で店舗の店員に提示し、端末表示用コード画像を店舗コードリーダ装置50で読み取ってもらうことで決済を行う。この場合、店舗コードリーダ装置50は、限定ではなく例として、読み取った端末表示用コード画像からデコードによって取得した情報(この例では決済用番号)等を含む決済要求情報をサーバ10に送信して、サーバ10に決済を行わせる。
上記の表示画面例では、端末20のユーザが、端末20の通信状態(オンライン状態/オフライン状態)を意識することなく、例えばコードアイコンをタッチすることでコード表示画面を表示させることができるため、ユーザの利便性を向上させることができる。つまり、端末20のユーザは、端末表示用コードを表示させる際には、端末20の通信状態に関わらず、同じ操作によって端末表示用コードを表示部24に表示させることができる。一方、コード表示操作に基づき、端末20の通信状態(オンライン状態/オフライン状態)によって異なる表示態様でコード表示画面が表示されるため、その表示態様の違いによって、ユーザは端末20の通信状態を容易に把握することができる。
<処理>
図4−16は、本実施例において、各装置が実行する処理の流れの一例を示すフローチャートである。左側から順に、端末20の制御部21が実行する決済アプリケーション処理の一例である第1の決済アプリケーション処理、店舗コードリーダ装置50の制御部51が実行する店舗決済処理の一例である第1の店舗決済処理、サーバ10の制御部11が実行する決済管理処理の一例である第1の決済管理処理をそれぞれ示している。
図4−16のフローチャートは、図3−4のフローチャートを、オンライン状態/オフライン状態のいずれにも適用可能に書き換えたものであり、図3−4のフローチャートにおけるオフライン状態の枠を削除した上で、A250のステップをA350に置き換えている。
A240の後、限定ではなく例として、端末20のユーザによってコード表示操作がなされると、制御部21は、第1のコード表示処理を行う(A350)。そして、制御部21は、A290へと処理を移す。
なお、図3−4の処理や、図4−16の処理では、A290の後、処理が終了するように示しているが、実際には、処理はループされる。
具体的には、限定ではなく例として、A290の後、端末20のユーザによるコード取得操作を検出した場合、制御部21は、A110に処理を戻す。
一方、A290の後、端末20のユーザによるコード表示操作を検出した場合、制御部21は、A250(図3−4の処理の場合)、A350(図4−16の処理の場合)にそれぞれ処理を戻す。
図4−17は、第1のコード表示処理の流れの一例を示すフローチャートである。
まず、制御部21は、自端末の通信状態(オンライン状態/オフライン状態)を判定する(D110)。通信状態の判定方法(検出方法)は、前述した通りである。
その後、コード関連情報表示制御部2115が、コード関連情報表示制御用データ2835を参照して、限定ではなく例として、適用有無に「有」が記憶されている制御対象について、D110で判定された通信状態に関連付けて記憶されている制御内容を取得する(D120)。
その後、コード表示処理部2113が、D120で取得された制御内容に基づき、コード表示画面を表示部24に表示させる(D130)。具体的には、D120で取得された制御内容に基づき、例えば図4−13〜図4−15に示したようなコード表示画面を表示部24に表示させる。そして、コード表示処理部2113は、第1のコード表示処理を終了する。
<コード>
上記の処理では、端末20が、端末表示用コード画像の生成をサーバ10に依頼することとし、サーバ10によって生成された端末表示用コード画像が、端末20に送信される例を示したが、これに限定されない。例えば、端末20が、元情報(この例では決済用番号)の生成をサーバ10に依頼することとし、サーバ10によって生成された元情報が、端末20に送信されるようにしてもよいし、そのようにしなくてもよい。
具体的には、図3−1の処理では、A110において、制御部21は、元情報(この例では決済用番号)の生成をサーバ10に依頼するコード生成依頼情報を送信する。そして、このコード生成依頼情報に基づき、C120において、制御部11は元情報を生成し、C130において、生成した元情報を端末20に送信する。A130において元情報をサーバ10から受信すると、制御部21は、受信された元情報(この例では決済用番号)に基づいて端末表示用コード画像を生成する。そして、制御部21は、生成した端末表示用コード画像を表示部24に表示させる。
同様に、図3−4や図4−16の処理では、A130において元情報(この例では決済用番号)をサーバ10から受信すると、A240において、制御部21は、受信された元情報(この例では決済用番号)を端末表示用コードストックデータ2831に記憶させる。そして、制御部21は、ストックされている元情報を端末表示用コードストックデータ2831から読み出し、読み出した元情報に基づいて端末表示用コード画像を生成する。そして、A250やA350において、制御部21は、生成した端末表示用コード画像を表示部24に表示させる。
また、上記とは異なり、端末20が、端末表示用コード画像の生成をサーバ10に依頼し、サーバ10によって生成された端末表示用コード画像が端末20に送信されるが、端末20側では、サーバ10から受信した端末表示用コード画像をストックするのではなく、サーバ10から受信した端末表示用コード画像からデコードによって取得した元情報をストックするようにしてもよいし、そのようにしなくてもよい。
<第1実施例の効果>
第1実施例は、端末20は、サーバ10から送信された端末表示用コード(コード画像や決済用番号)(限定ではなく、第1情報の一例)を、通信I/F22(限定ではなく、端末の通信部の一例)を介して受信する。
また、端末20は、受信された端末表示用コードを、制御部21(限定ではなく、端末の制御部の一例)によって端末表示用コードストックデータ2831(限定ではなく、端末の記憶部の一例)に記憶する。
また、端末20は、端末表示用コードストックデータ2831に記憶された端末表示用コードに基づく端末表示用コード画像(限定ではなく、第1コード画像の一例)を表示部24(限定ではなく、端末の表示領域の一例)に表示する。
そして、端末20は、自端末の通信状態(オンライン状態/オフライン状態)(限定ではなく、端末の通信状態の一例)に基づいて、端末表示用コード画像を表示する表示部24に表示されるコード関連情報(限定ではなく、第2情報の一例)を制御部21によって制御する構成を示している。
このような構成により得られる効果の一例として、端末は、自端末の通信状態に基づいて、第1コード画像を表示する表示領域に表示される第2情報を端末の制御部によって制御することで、自端末の通信状態を端末のユーザに報知した上で、ユーザに決済を行わせることができる。
また、第1実施例は、端末20は、決済アプリケーションプログラム282を記憶するメモリから決済アプリケーションプログラム282を読み出し、決済アプリケーションプログラム282に基づいて決済アプリケーション処理を実行するプロセッサーを備える。
プロセッサーは、サーバ10から送信された端末表示用コード(コード画像や決済用番号)(限定ではなく、第1情報の一例)を、通信I/F22(限定ではなく、端末の通信部の一例)を介して受信する。
また、プロセッサーは、受信された端末表示用コードを、端末表示用コードストックデータ2831(限定ではなく、端末の記憶部の一例)に記憶する。
また、プロセッサーは、端末表示用コードストックデータ2831に記憶された端末表示用コードに基づく端末表示用コード画像(限定ではなく、第1コード画像の一例)を表示部24(限定ではなく、端末の表示領域の一例)に表示する。
そして、プロセッサーは、オンライン状態/オフライン状態(限定ではなく、端末の通信状態の一例)に基づいて、端末表示用コード画像を表示する表示部24に表示されるコード関連情報(限定ではなく、第2情報の一例)を制御する構成を示している。
このような構成によっても、上記と同様の効果を得ることができる。
また、第1実施例は、端末20の制御部21は、自端末の通信状態がオンライン状態(限定ではなく、第1通信状態の一例)の場合、コード関連情報として第1表示態様の表示(限定ではなく、第1表示の一例)をコード表示画面に表示する制御を行い、自端末の通信状態がオフライン状態(限定ではなく、第2通信状態の一例)の場合、コード関連情報として、第2表示態様の表示(限定ではなく、第2表示の一例)を表示部24に表示する制御を行う構成を示している。
このような構成により得られる効果の一例として、端末は、通信状態が第1通信状態と第2通信状態とのいずれであるかに応じて異なる表示を行うため、自端末の通信状態を端末のユーザが容易に把握可能に報知することができる。
また、第1実施例は、コード関連情報は、コード表示画面の枠色や背景色(限定ではなく、表示領域の色の情報の一例)を含む構成を示している。
このような構成により得られる効果の一例として、端末は、第1コード画像を表示する表示領域の色の情報を制御部によって制御することができる。
また、第1実施例は、コード関連情報は、コード表示画面に表示された端末表示用コード画像のコード使用期限に関する情報を含む構成を示している。
このような構成により得られる効果の一例として、端末は、第1コード画像の有効期限に関する情報を制御部によって制御することができる。
この場合、制御部21は、通信状態がオンライン状態の場合、コード関連情報としてオンライン用コード使用期限やその残り時間(限定ではなく、第1有効期限に関する情報の一例)をコード表示画面に表示する制御を行い、通信状態がオフライン状態の場合、コード関連情報として、オンライン用コード使用期限よりも短いオフライン用コード使用期限やその残り時間(限定ではなく、第2有効期限に関する情報の一例)をコード表示画面に表示する制御を行うようにすることができる。
このような構成により得られる効果の一例として、端末は、自端末の通信状態に応じて異なる有効期限に関する情報を表示領域に表示して、ユーザに報知することができる。
また、第1実施例は、コード関連情報は、コード表示画面の輝度等の情報(限定ではなく、表示領域のあかるさの情報の一例)を含む構成を示している。
このような構成により得られる効果の一例として、端末は、表示領域のあかるさの情報を制御部によって制御することができる。
また、第1実施例は、コード関連情報は、通信状態として端末20の通信量が設定された通信量よりも小さい場合、コード表示画面に表示される構成を示している。
このような構成により得られる効果の一例として、端末は、通信状態として端末の通信量が設定された通信量よりも小さい場合、第2情報を表示領域に表示して、ユーザに報知することができる。
また、第1実施例は、コード関連情報は、端末用決済完了通知受信不可通知情報を含む構成を示している。
このような構成により得られる効果の一例として、端末は、決済の完了通知が送付されないことに関する通知を行うことができる。
<第1変形例(1)>
上記のコード関連情報表示制御用データ2835に示したコード関連情報や、その制御方法は、あくまでも一例に過ぎず、これらに限定されない。
例えば、画面表示態様情報として、コード表示画面に表示する文字(文字の大きさ、フォント、色、太さ等)を制御対象として設定しておき、通信状態(オンライン状態/オフライン状態)に応じて、文字が異なるように表示制御してもよいし、そのようにしなくてもよい。
また、画面表示態様情報として、コード表示画面のレイアウト(コード画像を配置する位置(領域)、大きさ、画面の装飾等)を制御対象として設定しておき、通信状態(オンライン状態/オフライン状態)に応じて異なる表示を行うようにしてもよいし、そのようにしなくてもよい。
<第1変形例(2)>
第1実施例において、緊急時に利用可能な端末表示用コード画像として、少なくとも1個の端末表示用コード画像が端末表示用コードストックデータ2831に記憶されるようにすることもできる。この場合は、限定ではなく例として、端末表示用コードストックデータ2831において、緊急時用の端末表示用コードには、緊急時用であることを示すフラグを関連付けて設定しておくようにすることができる。
また、この場合、緊急時用の端末表示用コードは、例えば端末20のユーザが選択操作を行って、端末20に設定させるようにすることができる。限定ではなく例として、決済アプリケーション内で、端末表示用コードストックデータ2831に記憶されている端末表示用コードの一覧を表示させる。そして、緊急時用としたい端末表示用コードをユーザに選択(例えばタッチ操作によって選択)させ、選択された端末表示用コードに関連付けて緊急時用であることを示すフラグを設定するようにすることができる。
なお、複数(2以上)の端末表示用コードを、緊急時用の端末表示用コードとして設定可能としてもよいし、そのようにしなくてもよい。
また、この場合、複数(2以上)の端末表示用コードを緊急時用の端末表示用コードとしてユーザに選択させるようにしてもよいし、そのようにしなくてもよい。
<第1変形例(3)>
第1実施例では、本開示における「第1情報(コード情報)」を、決済用番号や、決済用番号を含む端末表示用コード画像としたが、これらに限定されない。例えば、認証情報の一種であるトークンや、トークンを含む端末表示用コード画像を、本開示における「第1情報(コード情報)」とすることもできる。
この場合、決済用番号を端末表示用コード画像に含めるのではなく、限定ではなく例として、ランダムなトークンを発生させる手法(アルゴリズム)を用いて発行したトークンを端末表示用コード画像に含めるようにしてもよいし、そのようにしなくてもよい。この場合は、サーバ10側で、端末20、または端末20のユーザを識別するための識別情報と、発行したトークンとを関連付けて記憶部15のコード管理データベース159のコード管理データに記憶させておくようにすればよい。
「トークン」は、限定ではなく例として、サーバ10が、端末20、または端末20のユーザが、正規の端末20、または正規の端末20のユーザであることを認証するための認証情報の一種である。「認証情報」は、認証局が発行する情報であり、上記のトークンは、サーバ10が認証局となって、端末20、または端末20のユーザを認証するために発行する認証情報として機能する。
なお、トークンは、例えば、「ランダムトークン」、「アクセストークン」、「決済用トークン」などのように表現することもできる。トークンは、上記のようにランダムに発行されるため、端末表示用コードが生成される毎に異なるトークンとなる。このため、トークンは、いわばワンタイムパスワードとして機能する。
また、決済用番号やトークンの他に、端末表示用コード画像を読み取った店舗コードリーダ装置50が、サーバ10が提供するウェブサイトやウェブページにアクセスするためのアクセス情報の一例として、サーバ10が提供するウェブページの一種である決済用ページにアクセスするためのURL(Uniform Resource Locator)等の情報を含めるようにしてもよいし、そのようにしなくてもよい。
<第1変形例(4)>
端末20が第1通信方式によるサーバ10との通信が不可能な場合に、第2通信方式で通信を行って、サーバ10から端末用決済完了通知を受信するようにすることもできる。
図4−18〜図4−23は、本変形例におけるコード表示画面の一例を示す図である。
図4−18のコード表示画面は、図4−15と同様に、オフライン状態で表示されるコード表示画面の一例であり、端末用決済完了通知受信不可通知情報の一例として、「オフライン通知 現在、オフラインのため、決済完了後に通知が届きません。(次回オンライン時に通知が届きます。)このまま決済を続けますか?」というメッセージがポップアップ形式で表示されている。
また、この通知内容に承認の意思を示すための「OK」のアイコンと、この通知内容に今は承認しない意思を示すための「今はしない」のアイコンとが表示されている。
また、オフライン状態であるため、前述したように、コード使用時間はオフライン用コード使用時間「3分」とされ、オフライン用コード使用期限の残り時間が「3分」からカウントダウン形式で表示されている。
「OK」のアイコンがユーザによってタッチ操作されると、限定ではなく例として、例えば図4−19に示すように、第2通信方式でサーバ10と通信を行うことをユーザに意思確認するための情報の一例として「ワイヤレスネットワークに接続しますか?」というメッセージがポップアップ形式で表示される。
また、この通知内容に承認の意思を示すための「OK」のアイコンと、この通知内容に今は承認しない意思を示すための「今はしない」のアイコンとが表示されている。
図4−19において「OK」のアイコンがタッチ操作されると、例えば図4−20に示すような選択画面が表示される。
この選択画面では、ワイヤレスネットワークを選択するための選択ボックスが画面中央に表示されており、端末20のユーザは、この選択ボックス内に表示されたワイヤレスネットワークの候補の中から一の候補を選択する。
図4−20の選択画面においてワイヤレスネットワークが選択されると、そのワイヤレスネットワークによる通信が試行される。そして、通信OK(通信成功)となると、ポップアップ形式で表示された情報は非表示とされる。
その後、例えば図4−21に示すように、コード表示画面に表示された端末表示用コード画像が店舗コードリーダ装置50によって読み取られると、サーバ10によって決済処理が行われる。そして、サーバ10から端末用決済完了通知が端末20に送付される。
なお、図4−21では、図4−18でコード表示画面の表示が開始された時刻からの経過時間に基づいて、オフライン用コード使用期限(この例では「3分間」の期間)の残り時間が更新されている。
端末20は、第2通信方式での通信によって、サーバ10から端末用決済完了通知を受信すると、例えば図4−22に示すように、『決済完了 「決済履歴」から詳細が確認できます。』というメッセージを含む決済完了通知情報を、コード表示画面にポップアップ形式で表示させる。そして、決済完了通知情報を表示した後、端末20は、コード表示画面を非表示として、例えばトップ画面に表示を戻す。
なお、第1実施例で説明したように、オンライン状態では、オフライン用コード使用時間(例えば「3分」)よりも長い時間(例えば「5分」)を、オンライン用コード使用時間として設定するようにすることができる。
そこで、オフライン状態において、コード表示画面にオフライン用コード使用期限の情報を表示させた後、第2通信方式での通信に成功した場合に、オフライン用コード使用期限の情報を、オンライン用コード使用期限の情報に変更して(切り替えて)表示するようにしてもよいし、そのようにしなくてもよい。
図4−23は、この場合におけるコード表示画面の一例を示す図である。
図4−20の選択画面で選択されたワイヤレスネットワークによる通信がOK(成功)となると、ポップアップ形式で表示された情報は非表示とされ、例えば図4−23の画面が表示される。
このコード表示画面では、「オンライン通知 現在、オンラインのため、コード使用期限は5分間です。」というメッセージがポップアップ形式で表示されている。
また、オフライン用コード使用期限が、オンライン用コード使用期限に変更されたことで、コード使用時間はオンライン用コード使用時間「5分」とされ、その結果、オンライン用コード使用期限の残り時間が「5分」からカウントダウン形式で表示されている。
本変形例は、端末20は、通信I/F22(限定ではなく、第1通信部の一例)と、第2通信方式用通信I/Fとを有する。端末20の通信状態(オンライン状態/オフライン状態)は、通信I/F22の通信状態であり、制御部21は、通信状態として端末20の通信量が設定された通信量よりも小さい場合、サーバ10(限定ではなく、通信装置の一例)から送信された端末用決済完了通知(限定ではなく、決済完了に関する情報の一例)を第2通信方式用通信I/Fを介して受信したことに基づき、端末表示用コード画像を含むコード表示画面を非表示にする制御を実行する構成を示している。
このような構成により得られる効果の一例として、端末の通信量が設定された通信量よりも小さい場合、通信装置から送信された決済完了に関する情報を第2通信部を介して受信したことに基づいて、第1コード画像を表示領域から非表示にすることができる。
<第1変形例(5)>
第1実施例において、端末20が端末表示用コード画像を表示部24に表示させる場合に、限定ではなく例として、制御部21が、表示した端末表示用コード画像を店舗コードリーダ装置50に読み取らせるようにユーザに指示(案内)する処理を行うようにしてもよいし、そのようにしなくてもよい。この処理は、決済に関する処理の一例である。
具体的には、限定ではなく例として、端末表示用コード画像を表示するコード表示画面において、端末表示用コード画像を表示させる領域とは異なる領域に、「表示されているコード画像を店舗のコードリーダで読み取ってもらってください。」といったメッセージを表示させるようにすることができる。
<第1変形例(6)>
第1実施例で説明した決済アプリケーションの表示画面は、あくまでも一例に過ぎず、適宜設計変更可能である。例えば、決済アプリケーションのトップ画面に、前述した「コードアイコン」とは別に、「コード(オフライン)」と示された「コード(オフライン)アイコン」を表示させる。そして、端末20がオンライン状態であると判定した場合は、「コードアイコン」が操作された場合に端末表示用コードを表示させるようにし、端末20がオフライン状態であると判定した場合は、「コード(オフライン)アイコン」が操作された場合に端末表示用コードを表示させるようにしてもよいし、そのようにしなくてもよい。
<第1変形例(7)>
図3−4や図4−16の処理のA130において、端末20がサーバ10から端末表示用コードを受信したタイミングで、A240の処理と、A250またはA350の処理とを行って、端末表示用コードを表示部24に表示させるようにしてもよいし、そのようにしなくてもよい。
この場合、限定ではなく例として、決済アプリケーションのトップ画面(例えば図3−2)においてコードアイコンがタッチ操作された後、そのまま端末表示用コードのコード表示画面に表示が切り替わるようにすることができる。
<第1変形例(8)>
オンライン状態ではサーバ10は端末20と通信しており、端末20で端末表示用コードが表示されたことを認識可能であるため、サーバ10は、時計部19の計時情報に基づいて、コード表示時刻(コード表示日時)を特定することができる。
しかしながら、オフライン状態では、サーバ10は端末20と通信できないため、サーバ10は、端末20で端末表示用コードが表示されたか否かが分からず、コード表示時刻(コード表示日時)を特定することができない。
従って、オフライン状態では、サーバ10は、コード使用期限内であるか否か(またはコード使用期限が経過しているか否か)を判定することができない。
そこで、限定ではなく例として、以下の処理を行うようにすることができる。
図4−24は、本変形例における各装置が実行する処理の流れの一例を示すフローチャートである。左側から順に、端末20の制御部21が実行する決済アプリケーション処理の一例である第2の決済アプリケーション処理、店舗コードリーダ装置50の制御部51が実行する店舗決済処理の一例である第2の店舗決済処理、サーバ10の制御部11が実行する決済管理処理の一例である第2の決済管理処理をそれぞれ示している。
図4−24のフローチャートは、図3−4のフローチャートを一部書き換えたものである。図3−4のフローチャートとは、限定ではなく例として、オフライン状態での処理ステップ(例えば、A450、B450、B460、C470)が異なる。
この処理では、一例として、端末20、または端末20のユーザを識別するための識別情報を、前述したアプリケーションIDとして説明する。
A240の後、オフライン状態において、限定ではなく例として、端末20のユーザによってコード表示操作がなされると、制御部21が、拡張端末表示用コード生成処理を行うとともに、コード表示処理部2113が、コード表示処理を行う(A450)。
ここで、A240でストックされた端末表示用コードに基づき端末20側で処理(加工・生成、表示等の処理を含む。)される決済用のコードを「拡張端末表示用コード」と称し、この拡張端末表示用コードのコード画像を「拡張端末表示用コード画像」と称する。
拡張端末表示用コードは、端末表示用コードと同様に、決済種別「端末コード表示」での決済に使用されるコードであるが、オンライン決済に限らず、オフライン決済にも使用可能なコードである。
なお、拡張端末表示用コードは、オフライン決済のみならず、オンライン決済にも使用可能とすることができる。つまり、端末20側でオフライン状態であるか否かを判定(検出)することは必須ではなく、オンライン状態/オフライン状態を問わず、拡張端末表示用コードを用いて決済を行うようにすることが可能である。
拡張端末表示用コード生成処理では、限定ではなく例として、拡張端末表示用コード画像を生成する。具体的には、端末表示用コードストックデータ2831にストックされている端末表示用コード画像からデコードによって取得した決済用番号、または端末表示用コードストックデータ2831にストックされている決済用番号と、制御部21が生成したタイムスタンプ情報とをエンコード(符号化)し、図形化(画像化)して、拡張端末表示用コード画像を生成する。
ここで、タイムスタンプ情報とは、特定の事象(特定のイベント)が発生した日時、日付、時刻などを示す情報であるとともに、そのタイムスタンプ情報に関連付けられた情報やデータ(ここでは拡張端末表示用コード)が、ある時刻に確実に存在していたことを証明するための電子的な時刻証明書として機能するものである。
この例では、「拡張端末表示用コード画像が端末20の表示部24に表示されること」を特定の事象とし、端末20の制御部21は、拡張端末表示用コード画像が表示された(表示が開始された)時刻であるコード表示時刻を含むタイムスタンプ情報を生成する。コード表示時刻やタイムスタンプ情報は、「時刻情報」の一例であり、端末20の時計部29Aによって計時される情報に基づき生成される。
なお、店舗によっては、二次元コードの読み取りには対応していないが、一次元コードの読み取りには対応可能な場合がある。そこで、二次元コード(限定ではなく例としてQRコード)に加えて、一次元コード(限定ではなく例としてバーコード)で表される拡張端末表示用コード画像を生成するようにしてもよいし、そのようにしなくてもよい。
また、コード表示時刻に代えて、時刻に加えて日付の情報も含む「コード表示日時」を含むタイムスタンプ情報を生成するようにしてもよいし、そのようにしなくてもよい。
また、第三者が元情報を解読することができないようにするために、決済用番号やタイムスタンプ情報を暗号化した情報をエンコードするようにしてもよいし、そのようにしなくてもよい。
また、タイムスタンプ情報をエンコードするのではなく、コード表示時刻やコード表示日時そのものをエンコードするようにしてもよいし、そのようにしなくてもよい。
コード表示処理では、限定ではなく例として、少なくとも、拡張端末表示用コード画像を含むコード表示画面を表示部24に表示させる。
なお、上記のように、拡張端末表示用コード生成処理において二次元の拡張端末表示用コード画像を生成した場合は、限定ではなく例として、二次元の拡張端末表示用コード画像を表示させるようにすることができる。
また、拡張端末表示用コード生成処理において、一次元の拡張端末表示用コード画像も生成した場合は、限定ではなく例として、二次元の拡張端末表示用コード画像の他に、一次元の拡張端末表示用コード画像を表示させるようにすることができる。この場合、一次元の拡張端末表示用コード画像の近傍に、決済用番号を併せて表示させてもよいし、そのようにしなくてもよい。
その後、表示部24に表示された拡張端末表示用コード画像が端末20のユーザによって店舗の店員等に提示されると、制御部51は、端末20の表示部24に表示された拡張端末表示用コード画像を、コードリーダ58に読み取らせる制御を行う(B450)。
制御部51は、通信I/F54によってサーバ10にアクセスする。そして、制御部51は、少なくとも、デコードによって取得した決済用番号およびタイムスタンプ情報と、店舗識別情報と、決済予定金額とを含む決済要求情報を、通信I/F54によってサーバ10に送信する(B460)。
店舗コードリーダ装置50から通信I/F14によって決済要求情報を受信すると(C160)、制御部11は、決済処理を行う(C470)。
具体的には、受信された決済要求情報に含まれる決済用番号が、アプリケーションIDと関連付けてコード管理データベース159に記憶されているか否かを判定する。そして、記憶されていると判定した場合、限定ではなく例として、サーバ10の時計部19の計時時刻と、受信された決済要求情報に含まれるタイムスタンプ情報から特定されるコード表示時刻との差の時間をコード使用時間と比較して、コード使用期限内であるか否かを判定する。そして、この条件を満たす場合は「決済可」と判定し、決済管理データベース157Aのうち、そのアプリケーションIDの決済管理データに記憶されている残高から決済予定金額を減算して決済する。
<第2実施例>
第2実施例は、端末20の通信状態に基づいて、端末表示用コードに基づく決済に関する設定を制御部21によって制御する実施例である。
前述したように、オンライン状態では、端末20は、端末用決済完了通知をサーバ10から受信することができる。
それに対し、オフライン状態では、端末20は、端末用決済完了通知をサーバ10から受信することができない。このため、例えば、表示部24に表示させた端末表示用コード画像が第三者にスクリーンショット等によって盗まれるなどして決済に使用されたとしても、端末20のユーザはそれに気付かない場合があり、セキュリティ面で問題がある。
第2実施例に記載の内容は、他の各実施例や他の各変形例のいずれにも適用可能である。
また、既出の構成要素と同一の構成要素については同一の符号を付して、再度の説明を省略する。
図5−1は、本実施例において端末20の制御部21により実現される機能の一例を示す図である。
制御部21の決済アプリケーション処理部211は、限定ではなく例として、コード表示処理部2113の他に、決済関連設定制御部2117と、認証処理部2119とを有する。
図5−2は、本実施例において端末20の記憶部28に記憶される情報の一例を示す図である。
決済アプリケーションデータ283には、限定ではなく例として、端末表示用コードストックデータ2831と、決済用データ2832と、店舗データ2833との他に、決済関連設定制御用データ2837が記憶される。
図5−3は、本実施例における決済用データ2832の一例である第2の決済用データ2832Bの構成例を示す図である。
第2の決済用データ2832Bには、限定ではなく例として、アプリケーションIDと、ポイントと、残高と、オートチャージ設定と、決済履歴データとが記憶される。
決済履歴データには、限定ではなく例として、決済日時と、決済店舗IDと、決済店舗名と、決済金額と、決済種別とが関連付けて時系列に記憶される。
決済種別は、端末20の通信状態に応じた決済の種別(オンライン決済/オフライン決済)が記憶される。
決済種別は、例えば、以下のようにして判定することができる。
端末20の制御部21は、時計部29Aの計時情報に基づいて、コード表示画面を表示してから(表示を開始してから)、サーバ10から端末用決済完了通知を受信するまでに要した時間(経過時間)をカウントする。そして、経過時間が一定時間内である場合は、受信された端末用決済完了通知が示す決済は「オンライン決済」であると判定し、その時間が一定時間を超えている場合は、受信された端末用決済完了通知が示す決済は「オフライン決済」であると判定する。
これは、オフライン決済では、端末20がオフライン状態からオンライン状態に復帰するまでサーバ10から端末用決済完了通知を受信することができないため、コード表示画面を表示させてから端末用決済完了通知を受信するまでにある程度時間がかかった場合は、オフライン決済が行われた可能性が高いと推定できるためである。
決済関連設定制御用データ2837は、決済関連設定制御部2117が決済関連設定を制御するために用いるデータであり、その一例である第1の決済関連設定制御用データ2837Aのデータ構成例を図5−4に示す。
第1の決済関連設定制御用データ2837Aには、限定ではなく例として、設定種別と、制御対象と、通信状態と、制御内容と、適用有無とが関連付けて記憶される。
設定種別には、限定ではなく例として、「決済利用可能金額」と、「認証」と、「期限」とが含まれる。
決済利用可能金額は、端末20のユーザが決済に利用可能な金額に関する設定である。
認証は、決済に際して端末20のユーザが正規のユーザであるか否かを認証するための認証処理部2119が実行する認証処理に関する設定である。
期限は、決済に使用される端末表示用コードの期限に関する設定である。
制御対象には、その設定種別について、決済関連設定制御部2117が制御対象とする項目が定められている。
通信状態には、それぞれの制御対象について、端末20がオンライン状態であることを示す「オンライン」と、端末20がオフライン状態であることを示す「オフライン」とが定められている。
制御内容には、その制御対象を、決済関連設定制御部2117がどのように制御するかの内容が定められている。
適用有無は、その制御対象の制御を適用するか否かを示す情報(例えばフラグ)であり、適用する制御対象には適用有りを示す「有」が、適用しない制御対象には適用無しを示す「無」が関連付けて記憶されている。
以下、具体例を挙げて詳細に説明する。
(1)決済利用可能金額
決済利用可能金額について、制御対象として「1日利用上限金額」が定められている。
なお、1日利用上限金額は、第1実施例で説明した通りである。
通信状態「オンライン」には制御内容として「5万円」が、通信状態「オフライン」には制御内容として「1万円」がそれぞれ定められている。
これは、端末20がオンライン状態である場合は、1日利用上限金額を「5万円」とするように制御し、端末20がオフライン状態である場合は、1日利用上限金額を「1万円」とするように制御することを示している。
オフライン状態では、オンライン状態と比べて決済の安全性が低いため、オフライン状態である場合の1日利用上限金額が、オンライン状態である場合の1日利用上限金額よりも小さく(低く)なるように制御する。
この場合、端末20の制御部21は、限定ではなく例として、端末20のユーザによるコード表示操作を検知した場合に、自端末の通信状態を判定する。そして、判定した通信状態に関連付けられた1日利用上限金額に基づき、その1日で決済済みの金額(決済金額)を累計した累計金額が1日利用上限金額未満(または以下)である場合は「決済可」とし、この条件を満たさない場合は「決済不可」とする。
「決済不可」とする場合、制御部21は、限定ではなく例として、コード表示画面を表示部24に表示させないようにしたり、エラーメッセージのみを含むコード表示画面を表示部24に表示させるなどして、端末表示用コード画像を読み取らせることができないようにする。
また、この場合、決済金額の累計金額は、限定ではなく例として、通信状態ごとに、それぞれの累計金額として算出するようにすることができる。
具体的には、限定ではなく例として、第2の決済用データ2832B(図5−3参照)の決済履歴データに含まれる決済種別に基づき、オンライン決済の決済金額を累計した累計金額(以下、「オンライン決済累計金額」と称する。)と、オフライン決済の決済金額を累計した累計金額(以下、「オフライン決済累計金額」と称する。)とを別々に算出するようにすることができる。
なお、通信状態を区別せずに、通信状態(オンライン状態/オフライン状態)を問わず決済金額を累計した累計金額を算出するようにしてもよいし、そのようにしなくてもよい。
また、ここでは制御対象を「1日利用上限金額」としたが、これに限定されない。
1日の利用上限金額に代えて、1日よりも長い過去所定期間(例えば過去1週間、過去2週間、過去1か月)の利用上限金額を制御対象として定めておくようにすることもできる。
(2)認証
認証について、制御対象として「認証A(決済予定金額)」と、「認証B(コード非表示)」と、「認証C(オフライン継続時間)」とが定められている。なお、括弧内には、その種別の認証を実行するか否かを判断するために用いる情報を示している。
制御対象「認証A(決済予定金額)」について、通信状態「オンライン」には制御内容として「5万円以上(または5万円超)」が、通信状態「オフライン」には制御内容として「3000円以上(または3000円超)」がそれぞれ定められている。
これは、端末20がオンライン状態である場合は、決済予定金額が5万円以上である場合(または5万円を超える場合)に認証を実行し、端末20がオフライン状態である場合は、決済予定金額が3000円以上である場合(または3000円を超える場合)に認証を実行することを示している。
オフライン状態では、オンライン状態と比べて決済の安全性が低いため、オフライン状態である場合は、オンライン状態である場合よりも小さい金額(低い金額)の決済を予定している場合に、認証を実行する。
ただし、決済種別「端末コード表示」では、表示部24に表示させた端末表示用コード画像を店舗コードリーダ装置50に読み取らせた場合、店舗コードリーダ装置50で入力された決済予定金額がサーバ10に送信される。このため、端末20側では、決済予定金額を把握することができない。
そこで、限定ではなく例として、端末20でコード表示画面を表示させた後、端末表示用コード画像を店舗コードリーダ装置50で読み取らせる前に、店舗の店員等が決済予定金額を店舗コードリーダ装置50に入力する。そして、入力された決済予定金額を、近距離無線通信等によって、店舗コードリーダ装置50から端末20に送信するようにする。そして、認証処理部2119は、店舗コードリーダ装置50から決済予定金額を受信した場合に、認証処理を実行するようにすることができる。
なお、店舗コードリーダ装置50に入力された決済予定金額を店舗の店員等が端末20のユーザに口頭で通知するようにしてもよい。
また、コードレジ60と一体として、またはコードレジ60と別体として設けられ、客側に表示面が向けられたディスプレイに決済予定金額を表示させるようにしてもよい。
そして、これらの場合に、端末20のユーザが、決済予定金額を手動で端末20に入力するようにすることもできる。この場合、認証処理部2119は、決済予定金額が入力された場合に、認証処理を実行するようにすればよい。
また、決済予定金額に代えて、決済済みの金額(決済金額)と関連付けて制御内容を決済関連設定制御用データ2837に定めておくようにしてもよいし、そのようにしなくてもよい。例えば、過去所定期間(例えば過去1日、過去1週間)の決済金額と関連付けて、オンライン状態には「10万円以上(または10万円超)」を、オフライン状態には「1万円以上(または1万円超)」をそれぞれ定めておくなどしてもよい。
制御対象「認証B(コード非表示)」について、通信状態「オンライン」には制御内容として「非実行」が、通信状態「オフライン」には制御内容として「実行」がそれぞれ定められている。
ここで、「コード非表示」とは、端末20のユーザが端末表示用コード(端末表示用コード画像)を表示部24に表示させた後、例えば、コード表示画面に表示される戻るボタン(とじるボタン)の操作やホームボタンの操作等によって、一旦表示された端末表示用コード(端末表示用コード画像)を非表示とすることを示している。
これは、端末20がオンライン状態である場合は、一旦表示させたコード(コード画像)を非表示とした場合であっても認証を実行しないが、端末20がオフライン状態である場合は、一旦表示させたコード(コード画像)を非表示とした場合に認証を実行することを示している。
本開示における端末表示用コードは、前述したように、オンライン状態ばかりでなく、オフライン状態でも使用することができる。オンライン状態であれば、端末20は、サーバ10によって決済が行われた後、すぐにサーバ10から端末用決済完了通知を受信することができる。このため、端末20は、限定ではなく例として、端末用決済完了通知を受信した後、決済に利用した端末表示用コードのデータを端末表示用コードストックデータ2831から削除することができる。
しかしながら、オフライン状態では、端末20は、オンライン状態に復帰するまでは、サーバ10から端末用決済完了通知を受信することができないため、サーバ10によって決済が行われたかどうかを知ることができない。このため、オフライン状態において、例えば端末20のユーザが、一の端末表示用コードを決済に使用したとしても(店舗コードリーダ装置50に読み取らせたとしても)、端末20は、その端末表示用コードを削除することはできない。よって、例えば、端末20のユーザが、一度決済に使用した端末表示用コードを再表示させて、再び決済に使用しようとするおそれがある。
そこで、オフライン状態では、限定ではなく例として、端末20のユーザが一の端末表示用コードを表示部24に表示させた後、表示された端末表示用コードを非表示とした場合、以下のいずれかのタイミングで認証を行う。
(1)端末表示用コード(端末表示用コード画像)を非表示とした後に、新たに端末表示用コードを表示部24に表示するタイミング
(2)端末表示用コード(端末表示用コード画像)を非表示としたタイミング
なお、端末表示用コードが非表示とされた場合に、その都度認証を行うようにするのではなく、限定ではなく例として、オフライン状態において設定回数(例えば「3回」や「5回」)以上(または設定回数超)、端末表示用コードが非表示とされた場合に、認証を行うようにしてもよいし、そのようにしなくてもよい。
制御対象「認証C(オフライン継続時間)」について、通信状態「オンライン」には制御内容として「−(無し)」が、通信状態「オフライン」には制御内容として「1時間以上(または1時間超)」がそれぞれ定められている。
これは、端末20がオンライン状態である場合は、認証を実行しないが、端末20がオフライン状態である場合は、オフライン状態の継続時間が1時間以上(または1時間超)となった場合に、認証を行うことを示している。
なお、オフライン継続時間に代えて、または、これに加えて、単位期間(例えば過去1日の間、過去1週間の間)に端末20がオフライン状態となった回数や頻度に基づいて、認証を実行するようにしてもよいし、そのようにしなくてもよい。
例えば、単位期間に端末20がオフライン状態となった回数や頻度が、設定回数以上(または設定回数超)や設定頻度以上(設定頻度超)である場合は、認証を行うようにしてもよいし、そのようにしなくてもよい。
また、上記の認証A〜認証Cは、同要素の認証としてもよいし、他要素の認証としてもよい。
他要素の認証としては、限定ではなく例として、ユーザの知識情報に基づく認証(例えばパスワードや秘密の質問による認証)、ユーザの所持情報に基づく認証(例えばワンタイムパスワードやトークンによる認証)、ユーザの生体情報に基づく認証(例えば指紋認証や顔認証)等を適用することができる。
また、上記の認証の実行有無を、2以上の条件の組み合わせによって判定するようにしてもよいし、そのようにしなくてもよい。
例えば、認証Bの「コード非表示」と、認証Cの「オフライン継続時間」とを組み合わせて、限定ではなく例として、オンライン状態では認証を実行せず、オフライン状態では、「コードが非表示とされた場合、かつ、オフライン継続時間が設定時間以上(または設定時間超)である場合」に、認証を実行するようにしてもよいし、そのようにしなくてもよい。
(3)期限
期限について、制御対象として「コード使用時間(コード使用期限)」が定められている。
そして、通信状態「オンライン」には制御内容として「5分(デフォルト)」が、通信状態「オフライン」には制御内容として「3分」がそれぞれ定められている。
これは、第1実施例と同様であり、端末20がオンライン状態である場合は、コード使用時間をデフォルトである「5分」とし、端末20がオフライン状態である場合は、コード使用時間を「3分」とすることを示している。
<表示画面例>
図5−5は、本実施例における端末20で実行される認証処理の一例を示す図である。
(a)は、オフライン状態において、二次元の端末表示用コード画像QC1を含むコード表示画面が端末20の表示部24に表示された状態で、端末20のユーザが、画面左上の戻るボタン(とじるボタン)をタッチ操作した状態を示している。この場合、戻るボタンがタッチ操作されたことで、コード表示画面が非表示とされて、決済アプリケーションのトップ画面が表示される。
ここで、例えば(b)に示すように、決済アプリケーションのコードアイコンが端末20のユーザによりタッチ操作されたとする。この場合、オフライン状態で表示部24に表示された端末表示用コードが非表示とされた後、新たな端末表示用コードを表示部24に表示することになるため、限定ではなく例として、認証処理部2119が認証処理を行う。
具体的には、例えば(c)に示すように、新たな端末表示用コード画像(この例では二次元の端末表示用コード画像QC2)を含むコード表示画面を表示部24に表示させるが、その際、例えば認証を行うための認証用画面を表示させる。
この表示例では、「パスワード Payment Appのパスワードを入力してください。」というメッセージとともに、入力されたパスワードが表示されるパスワード表示欄がポップアップ形式で表示されている。また、画面下部には、ユーザがパスワードを入力するためのテンキーが表示されている。
入力されたパスワードは、端末20の記憶部28に記憶されているパスワード(認証パスワード)と照合される。そして、認証結果がOKである場合は、ポップアップ表示が消去され、その背景の端末表示用コード画像が現れて、決済に使用可能となる。
<処理>
図5−6は、本実施例において端末20の制御部21が実行する決済関連設定制御処理の流れの一例を示すフローチャートである。
まず、制御部21は、自端末の通信状態(オンライン状態/オフライン状態)を判定する(S110)。通信状態の判定方法(検出方法)は、前述した通りである。
その後、決済関連設定制御部2117は、決済関連設定制御用データ2837を参照して、適用有無に「有」が記憶されている制御対象について、S110で判定された通信状態に関連付けて記憶されている制御内容を取得する(S120)。
次いで、決済関連設定制御部2117は、S120で取得された制御内容に基づき、その制御内容の制御を行うための設定(制御設定)を行う(S130)。以後、決済アプリケーション処理では、この制御設定に基づく決済関連設定の制御が、決済関連設定制御部2117によって行われる。そして、制御部21は、決済関連設定制御処理を終了する。
<第2実施例の効果>
第2実施例は、端末20は、サーバ10から送信された端末表示用コード(コード画像や決済用番号)(限定ではなく、第1情報の一例)を、通信I/F22(限定ではなく、端末の通信部の一例)を介して受信する。
また、端末20は、受信された端末表示用コードを、制御部21(限定ではなく、端末の制御部の一例)によって端末表示用コードストックデータ2831(限定ではなく、端末の記憶部の一例)に記憶する。
そして、端末20は、自端末の通信状態(オンライン状態/オフライン状態)(限定ではなく、端末の通信状態の一例)に基づいて、端末表示用コードに基づく決済関連設定(限定ではなく、決済に関する設定の一例)を制御部21によって制御する構成を示している。
このような構成により得られる効果の一例として、端末は、自端末の通信状態に基づいて、第1情報に基づく決済に関する設定を制御部によって制御することで、自端末の通信状態に応じた設定に基づいてユーザに決済を行わせることができる。
また、第2実施例は、端末20は、決済アプリケーションプログラム282を記憶するメモリから決済アプリケーションプログラム282を読み出し、決済アプリケーションプログラム282に基づいて決済アプリケーション処理を実行するプロセッサーを備える。
プロセッサーは、サーバ10から送信された端末表示用コード(コード画像や決済用番号)(限定ではなく、第1情報の一例)を、通信I/F22(限定ではなく、端末の通信部の一例)を介して受信する。
また、プロセッサーは、受信された端末表示用コードを、端末表示用コードストックデータ2831(限定ではなく、端末の記憶部の一例)に記憶する。
そして、プロセッサーは、自端末の通信状態(オンライン状態/オフライン状態)(限定ではなく、端末の通信状態の一例)に基づいて、端末表示用コードに基づく決済関連設定(限定ではなく、決済に関する設定の一例)を制御する構成を示している。
このような構成によっても、上記と同様の効果を得ることができる。
また、第2実施例は、制御部21は、自端末の通信状態がオンライン状態の場合、決済関連設定として一の設定(限定ではなく、第1の設定の一例)を行い、自端末の通信状態がオフライン状態の場合、決済関連設定として、一の設定とは異なる他の設定(限定ではなく、第2設定の一例)を行う構成を示している。
このような構成により得られる効果の一例として、端末は、通信状態に応じて異なる設定を制御部によって制御することができる。
また、第2実施例は、決済関連設定は、決済利用可能金額(限定ではなく、決済に利用可能な金額の一例)に関する設定を含む構成を示している。
このような構成により得られる効果の一例として、端末は、通信状態に応じて、決済に利用可能な金額に関する設定を制御部によって制御することができる。
また、第2実施例は、決済関連設定は、認証(限定ではなく、決済に関する処理を実行するための端末のユーザの認証)に関する設定を含む構成を示している。
このような構成により得られる効果の一例として、端末は、通信状態に応じて、決済に関する処理を実行するための端末のユーザの認証に関する設定を制御部によって制御することができる。
また、第2実施例は、制御部21は、オンライン状態の場合、第1金額以上の決済を行った場合、決済関連設定として認証を行い、オフライン状態の場合、第1金額よりも小さい第2金額以上の決済を行った場合、決済関連設定として認証を行う構成を示している。
このような構成により得られる効果の一例として、端末は、通信状態が第1通信状態よりも通信の情報量が小さい第2通信状態の場合、通信状態が第1通信状態の場合と比べて、認証が行われ易くなるようにすることができる。
また、第2実施例は、端末20は、端末表示用コードに基づく端末表示用コード画像を表示部24に表示する。そして、制御部21は、オフライン状態の場合、端末表示用コード画像(限定ではなく、第1コード画像の一例)を表示部24から非表示にしたことに基づいて、決済関連設定として認証を行う構成を示している。
このような構成により得られる効果の一例として、端末は、通信状態として端末の通信量が設定された通信量よりも小さい場合、第1コード画像を表示領域から非表示にしたことに基づいて認証を行うことで、一旦表示された第1コード画像が再び決済に使用されることを防止できる。
また、第2実施例は、制御部21は、通信状態がオフライン状態である場合、オフライン継続時間(限定ではなく、設定された通信量よりも小さい状態を継続する時間の一例)に基づいて、認証を行う構成を示している。
このような構成により得られる効果の一例として、端末は、自端末の通信状態として端末の通信量が設定された通信量よりも小さい場合、設定された通信量よりも小さい状態を継続する時間に基づいて認証を行うことで、決済に関するセキュリティを高めることができる。
また、第2実施例は、端末20は、端末表示用コードに基づく端末表示用コード画像(限定ではなく、第1コード画像の一例)を表示部24に表示する。そして、決済関連設定は、端末表示用コード画像のコード使用期限(限定ではなく、第1コード画像の有効期限の一例)に関する設定を含む構成を示している。
このような構成により得られる効果の一例として、端末は、表示領域に表示する第1コード画像の有効期限に関する設定を制御することができる。
<第2変形例(1)>
端末20が、自端末の通信状態と、店舗の信用度とに基づいて、決済関連設定を制御するようにしてもよいし、そのようにしなくてもよい。
この場合は、限定ではなく例として、店舗の信用度を示す指標値として、例えば店舗信用スコアをサーバ10側で算出・決定する。
店舗信用スコアは、店舗の社会的な信用を数値やランク等で表したものであり、限定ではなく例として、その店舗で行われた決済の回数/頻度、その店舗の支払能力、その店舗の与信情報等に基づいて算出・決定される。
店舗信用スコアは、限定ではなく例として、例えば「0点」〜「100点」の点数として算出・決定し、「100点」が最も信用度が高く、「0点」が最も信用度が低くなるようにすることができる。
なお、「店舗信用スコア」は、単に「店舗スコア」としてもよいし、そのようにしなくてもよい。
また、この場合、「店舗スコア」は必ずしも店舗の信用に基づくものとしなければならないわけではなく、限定ではなく例として、店舗の人気、知名度、利用度など、何らかの評価基準に基づいて店舗を数値(点数)やランク等で格付けしたものとしてもよいし、そのようにしなくてもよい。
サーバ10側で算出・決定された店舗信用スコアは、限定ではなく例として、定期的なタイミングや特定のタイミングで、端末20に送信されるようにすることができる。この場合、端末20は、サーバ10から送信された店舗信用スコアを、店舗データ2833に記憶・更新させる。
図5−7は、本変形例における決済関連設定制御用データ2837の一例である第3の決済関連設定制御用データ2837Cのデータ構成例を示す図である。
第3の決済関連設定制御用データ2837Cには、設定種別と、制御対象と、通信状態と、店舗信用スコアと、制御内容と、適用有無とが関連付けて記憶されている。
設定種別には、限定ではなく例として、「店舗」が定められている。
また、制御対象には、限定ではなく例として、その店舗での決済の可否を示す「決済」が定められている。
この例では、端末20の通信状態「オンライン」では、店舗信用スコアに関わらず、制御内容として「決済可」が定められている。
それに対し、端末20の通信状態「オフライン」では、店舗信用スコア「80点以上」には制御内容として「決済可」が定められ、店舗信用スコア「80点未満」には制御内容として「決済不可」が定められている。
これは、端末20がオフライン状態である場合は、店舗信用スコアが「80点以上」である店舗では決済を可能とするが、店舗信用スコアが「80点未満」である店舗では決済を不可とすることを示している。
この場合、制御部21は、限定ではなく例として、端末20のユーザによるコード操作を検知した場合に、自端末の通信状態を判定する。また、制御部21は、位置算出用情報検出部29Bの検出結果に基づいて自端末の位置(以下、「端末位置」と称する。)を算出し、算出した端末位置と、店舗データ2833に記憶されている店舗の場所に関する情報(店舗の位置情報等)とに基づいて、自端末が位置している店舗を判定する。そして、制御部21は、判定した通信状態と、判定した店舗に関連付けて店舗データ2833に記憶されている店舗信用スコアとに基づいて、その店舗での決済の可否を判定する。
ただし、端末20がオフライン状態となる環境では、衛星測位システムを利用した位置算出を行うことができない可能性がある。そこで、制御部21は、限定ではなく例として、前述した慣性航法演算や、店舗に設置されるビーコンから発信されるビーコン信号等に基づいて、自端末の位置を算出するようにすることができる。
なお、ビーコン信号は、限定ではなく例として、端末20でブルートゥース機能を「ON」にしておくことで受信可能である。
「決済不可」と判定した場合、制御部21は、限定ではなく例として、コード表示画面を表示部24に表示させないようにしたり、エラーメッセージのみを含むコード表示画面を表示部24に表示させるなどして、端末表示用コード画像を読み取らせることができないようにすることができる。
本変形例は、端末20は、決済を行う店舗に関する情報を制御部21によって取得する。そして、端末20は、自端末の通信状態と、決済を行う店舗の店舗信用スコア(限定ではなく、店舗の信用度の一例)とに基づいて、決済関連設定を制御部21によって制御する構成を示している。
このような構成により得られる効果の一例として、端末は、自端末の通信状態と、決済を行う店舗の信用度とに基づいて、決済に関する設定を制御部によって適切に制御することができる。
<第2変形例(2)>
端末20が、自端末の通信状態と、自端末のユーザの信用度とに基づいて、決済関連設定を制御するようにしてもよいし、そのようにしなくてもよい。
この場合は、限定ではなく例として、端末20のユーザの信用度を示す指標値として、例えばユーザ信用スコアをサーバ10側で算出・決定する。
ユーザ信用スコアは、端末20のユーザの社会的な信用を数値やランク等で表したものであり、限定ではなく例として、端末20のユーザの支払い実績、年齢、勤務形態、年収等に基づいて算出・決定される。
ユーザ信用スコアは、限定ではなく例として、例えば「0点」〜「100点」の点数として算出・決定し、「100点」が最も信用度が高く、「0点」が最も信用度が低くなるようにすることができる。
なお、「ユーザ信用スコア」は、単に「ユーザスコア」としてもよいし、そのようにしなくてもよい。
また、この場合、「ユーザスコア」は必ずしもユーザの信用に基づくものとしなければならないわけではなく、限定ではなく例として、通信状態によらずそのユーザが決済に使用した金額、オフライン状態でそのユーザが決済に使用した金額、通信状態によらずそのユーザがコード決済を行った回数/頻度、オフライン状態でそのユーザがコード決済を行った回数/頻度など、何らかの評価基準に基づいて端末20のユーザを数値(点数)やランク等で格付けしたものとしてもよいし、そのようにしなくてもよい。
サーバ10側で算出・決定されたユーザ信用スコアは、定期的なタイミングや特定のタイミングで、端末20に送信されるようにすることができる。この場合、端末20は、サーバ10から送信されたユーザ信用スコアを、決済用データ2832に記憶・更新させる。
図5−8は、本変形例における決済関連設定制御用データ2837の一例である第4の決済関連設定制御用データ2837Dのデータ構成例を示す図である。
第4の決済関連設定制御用データ2837Dには、設定種別と、制御対象と、通信状態と、ユーザ信用スコアと、制御内容と、適用有無とが関連付けて記憶されている。
この例では、前述した設定種別「決済利用可能金額」、制御対象「1日利用上限金額」を示しており、端末20の通信状態「オンライン」には、ユーザ信用スコア「80点以上」には制御内容として「10万円」が定められ、ユーザ信用スコア「60点以上80点未満」には制御内容として「7万円」が定められ、ユーザ信用スコア「60点未満」には制御内容として「5万円」が定められている。
それに対し、端末20の通信状態「オフライン」には、ユーザ信用スコア「80点以上」には制御内容として「3万円」が定められ、ユーザ信用スコア「60点以上80点未満」には制御内容として「2万円」が定められ、ユーザ信用スコア「60点未満」には制御内容として「1万円」が定められている。
通信状態「オンライン」、「オフライン」のいずれについても、ユーザ信用スコアが高くなるほど、金額が高くなるように1日利用上限金額が定められている。
また、通信状態「オンライン」は、通信状態「オフライン」と比べて、相対的に金額が高くなるように1日利用上限金額が定められている。
この場合、制御部21は、限定ではなく例として、端末20のユーザによるコード操作を検知した場合に、自端末の通信状態を判定する。また、制御部21は、決済用データ2832を参照して、ユーザ信用スコアを判定する。
そして、制御部21は、判定した通信状態と、判定したユーザ信用スコアとに基づいて、1日利用上限金額を設定する。
なお、ここでは、1日利用上限金額を例に挙げて説明したが、これに限定されない。
図5−4に示した設定種別「認証」や設定種別「期限」についても、上記と同様に、ユーザ信用スコアと通信状態とに基づいて、制御内容を設定するようにすることができる。
具体的には、図5−4の認証A(決済予定金額)については、限定ではなく例として、ユーザ信用スコアが高いほど、認証を行うか否かの閾値となる決済予定金額を高く設定して、認証が行われにくくなるようにすることができる。また、この場合、通信状態「オンライン」は、通信状態「オフライン」と比べて相対的に決済予定金額が高くなるようにすることができる。
また、図5−4の認証B(コード非表示)については、限定ではなく例として、ユーザ信用スコアが一定以上である場合は、オフライン状態であっても、認証を非実行とするようにすることができる。
また、前述したように、オフライン状態において設定回数以上(または設定回数超)、端末表示用コードが非表示とされた場合に認証を行うようにするのであれば、ユーザ信用スコアが高いほど、設定回数を大きくして、認証が行われにくくなるようにすることができる。
また、図5−4の認証C(オフライン継続時間)については、限定ではなく例として、ユーザ信用スコアが高いほど、認証を行うか否かの閾値となるオフライン継続時間を長く設定して、認証が行われにくくなるようにすることができる。また、この場合、通信状態「オンライン」は、通信状態「オフライン」と比べて相対的にオフライン継続時間が長くなるようにすることができる。
また、図5−4のコード使用時間(コード使用期限)については、限定ではなく例として、ユーザ信用スコアが高いほど、コード使用時間を長く設定して、コード使用期限が長くなるようにすることができる。また、この場合、通信状態「オンライン」は、通信状態「オフライン」と比べて、相対的にコード使用時間が長くなるようにすることができる。
<第3実施例>
第3実施例は、上記の実施例に関連して、コード(コード画像)を非表示とするためのユーザインターフェイス(UI)に関する実施例である。
前述したように、オンライン状態では、端末20は、端末用決済完了通知をサーバ10から受信することができる。このため、端末20は、限定ではなく例として、サーバ10から端末用決済完了通知を受信した場合、コード(コード画像)を非表示とすることができる。
それに対し、オフライン状態では、端末20は、端末用決済完了通知をサーバ10から受信することができない。このため、オフライン状態がしばらく継続するような場合には、表示させたコード(コード画像)を非表示とするタイミングを逸する可能性がある。
第3実施例に記載の内容は、他の各実施例や他の各変形例のいずれにも適用可能である。
また、既出の構成要素と同一の構成要素については同一の符号を付して、再度の説明を省略する。
<構成>
図6−1は、本実施例における端末20の記憶部28に記憶されるコード関連情報表示制御用データ2835の一例である第2のコード関連情報表示制御用データ2835Bの構成例を示す図である。
第2のコード関連情報表示制御用データ2835Bのデータ構成は、第1のコード関連情報表示制御用データ2835Aと同様であるが、この例では、コード関連情報「コード関連通知情報」について、その制御対象として、「端末用決済完了通知受信不可通知情報」の他に、「コード非表示推奨通知情報」が定められている。
コード非表示推奨通知情報は、表示部24に表示させた端末表示用コード画像(コード表示画面)を手動で非表示とするように端末20のユーザに推奨する(端末20のユーザに促す)情報である。
制御対象「コード非表示推奨通知情報」について、通信状態「オンライン」には制御内容として「非表示」が、通信状態「オフライン」には制御内容として「表示」がそれぞれ定められている。
これは、端末20がオンライン状態である場合は、コード非表示推奨通知情報を表示せず、端末20がオフライン状態である場合は、コード非表示推奨通知情報を表示することを示している。
オンライン状態では、限定ではなく例として、端末用決済完了通知をサーバ10から受信したことに基づいて、制御部21が、コード表示画面を非表示とする制御を行う。しかしながら、オフライン状態では、端末用決済完了通知をサーバ10から受信することができず、制御部21は、コード表示画面を自動的に非表示とすることができないため、コード表示画面を手動で非表示とするようにユーザに通知する。
<表示画面例>
図6−2は、本実施例におけるコード表示画面の一例を示す図である。
このコード表示画面は、オフライン状態で表示されるコード表示画面を示しており、コード非表示推奨通知情報の一例として、「オフライン通知 現在、オフラインのため、決済完了後に通知が届きません。コード読み取り後に画面をとじてください。」というメッセージがポップアップ形式で表示されている。
また、この通知内容をユーザが承認するためのアイコンとして「OK」のアイコンが併せて表示されている。
この表示に基づき、端末20のユーザは、例えば図6−3に示すように、コード表示画面に表示されている端末表示用コード画像を店舗コードリーダ装置50で読み取ってもらった後、例えば図6−4に示すように、コード表示画面の左上部に表示されている、前の画面(本実施例では決済アプリケーションのトップ画面)に戻るための「戻るボタン」をタッチ操作する。すると、コード表示画面が非表示とされて、例えば図6−5に示すように、決済アプリケーションのトップ画面が表示される。
「戻るボタン」は、コード画像を非表示とするための操作用画像の一例であり、「とじるボタン」と言うこともできる。
図6−6は、本実施例におけるコード表示画面の別例を示す図である。
このコード表示画面は、オフライン状態で表示されるコード表示画面の一例であり、この表示例では、コード使用期限の残り時間が「0秒」となった状態が示されている。
この表示例では、コード使用期限の残り時間が「0秒」となると、コード使用期限が経過したことを通知する情報であるとともに、コードを非表示とすることを通知するための情報の一例として、「表示期限切れ 画面をとじます。」というメッセージがポップアップ形式で表示されている。
また、この通知内容をユーザが承認するためのアイコンとして「OK」のアイコンが併せて表示されており、「OK」のアイコンがユーザによりタッチ操作されると、コード表示画面が非表示とされて、決済アプリケーションのトップ画面が表示される。
なお、コード使用期限の残り時間が「0秒」となったタイミングで、メッセージ等を表示させることなく、そのままコード表示画面を非表示とするようにしてもよいし、そのようにしなくてもよい。
<処理>
<第1の処理>
第1の処理として、制御部21は、図4−17の第1のコード表示処理を行う。
そして、通信状態がオフライン状態と判定した場合であって、第2のコード関連情報表示制御用データ2835Bにおいてコード非表示推奨通知情報の適用有無に「有」が設定されている場合は、例えば図6−2のコード表示画面を表示部24に表示させる。
<第2の処理>
第2の処理として、制御部21は、図6−7の第2のコード表示処理を実行するようにすることができる。
なお、既出のフローチャートと同一のステップについては同一の符号を付して、再度の説明を省略する。
D110の後、通信状態の判定結果がオンライン状態であったならば(E120:オンライン状態)、コード表示処理部2113は、端末表示用コード画像を含むコード表示画面を表示部24に表示させる(E130)。
次いで、コード表示処理部2113は、コードを非表示とするための操作(以下、「コード非表示操作」と称する。)を検出したか否かを判定する(E170)。コード非表示操作を検出しなかった場合(E170:NO)、コード表示処理部2113は、そのまま待機する。
一方、コード非表示操作を検出した場合(E170:YES)、コード表示処理部2113は、表示中のコード表示画面を非表示とする制御を行い、例えば決済アプリケーションのトップ画面を表示させる(E190)。そして、コード表示処理部2113は、第2のコード表示処理を終了する。
一方、通信状態の判定結果がオフライン状態であったならば(E120:オフライン状態)、コード表示処理部2113(コード関連情報表示制御部2115)は、コード非表示推奨通知情報と、端末表示用コード画像とを含むコード表示画面(例えば図6−2のコード表示画面)を表示部24に表示させる(E150)。
その後、コード関連情報表示制御部2115は、限定ではなく例として、コード非表示推奨通知情報の消去条件が成立したことに基づいて、コード非表示推奨通知情報の表示を消去する(E160)。そして、コード表示処理部2113は、E170へと処理を移す。
<第3の処理>
第3の処理として、制御部21は、図6−8の第3のコード表示処理を実行するようにすることができる。
なお、既出のフローチャートと同一のステップについては同一の符号を付して、再度の説明を省略する。
この処理は、図4−17の処理に、E170、F180、E190のステップを追加したものである。
D130の後、コード表示処理部2113は、コード非表示操作を検出したか否かを判定する(E170)。コード非表示操作を検出した場合(E170:YES)、コード表示処理部2113は、E190へと処理を移す。
一方、コード非表示操作を検出しなかった場合(E170:NO)、コード表示処理部2113は、コード使用期限が経過したか否かを判定する(F180)。
ここで、第1実施例と同様に、オフライン状態では、オンライン状態よりもコード使用時間として短い時間を設定しておくことができる(例えば、オンライン状態は「5分」、オフライン状態は「3分」)。このようにすることで、オフライン用コード使用期限は、オンライン用コード使用期限よりも短い期間となる。
コード使用期限が経過していないと判定した場合(F180:NO)、コード表示処理部2113は、E170に処理を戻す。
一方、コード使用期限が経過したと判定した場合(F180:YES)、コード表示処理部2113は、E190へと処理を移す。つまり、コード使用期限が経過したと判定した場合は、制御部21は、コード表示画面を非表示とする制御を行う。
本処理では、コード使用期限が経過したことに基づいて、コード表示画面を非表示とすることでコード画像を非表示とする。このため、コード使用期限は、コードを表示する期限(コード表示期限)と言うこともできる。
なお、コード使用期限が経過した場合、コード表示画面を非表示とすることでコード画像を非表示とするのではなく、コード表示画面は表示させたままで、コード表示画面からコード画像の表示を消去することでコード画像を非表示としてもよいし、そのようにしなくてもよい。
また、コード非表示推奨通知情報の表示は、オフライン状態であると判定した場合にのみ行うようにしてもよいし、端末20の通信状態(オンライン状態/オフライン状態)を問わず必ず行うようにしてもよい。
<第3実施例の効果>
第3実施例は、端末20の制御部21が、オフライン用コード使用期限が経過した場合、端末表示用コード画像を非表示にする制御を実行する構成を示している。
このような構成により得られる効果の一例として、端末は、第2有効期限の経過に基づいて、第1コード画像を表示領域から非表示とすることができる。
また、第3実施例は、コード関連情報は、コード非表示推奨通知情報(限定ではなく、第1コード画像の非表示に関する通知の一例)を含む構成を示している。
このような構成により得られる効果の一例として、端末は、第1コード画像の非表示に関する通知を行うことができる。
また、第3実施例は、端末20の通信状態がオフライン状態(限定ではなく、端末の通信量が設定された通信量よりも小さい状態の一例)の場合、コード非表示推奨通知情報を表示する構成を示している。
このような構成により得られる効果の一例として、端末は、通信量が設定された通信量よりも小さい場合、第1コード画像の非表示に関する通知を行うことができる。その結果、通信状態が良好でない場合に、端末のユーザに第1コード画像を忘れずに非表示とさせることができる。
<第3変形例(1)>
第3実施例では、コード表示画面を表示させるタイミングで、コード非表示推奨通知情報を表示させたが、これに限定されない。
図6−9、図6−10は、本変形例におけるコード表示画面の一例を示す図である。
このコード表示画面は、オフライン状態で表示されるコード表示画面の一例であり、例えば図6−9では、コード使用期限の残り時間が「30秒」となった状態が示されている。
コード使用期限の残り時間が「30秒」となると、例えば図6−10に示すように、コード非表示推奨通知情報の一例として、「残り30秒 コード読み取り後に画面をとじてください。」というメッセージがポップアップ形式で表示される。
また、この通知内容をユーザが承認するためのアイコンとして「OK」のアイコンが併せて表示される。
このようにすることで、オフライン状態において、端末20のユーザがコード画像を店舗で読み取ってもらった後、コード表示画面をとじることを忘れたような場合であっても、コード表示画面が表示されてから一定時間が経過したタイミングでコード非表示推奨通知情報が表示されるため、ユーザは忘れずにコード表示画面をとじることができる。
なお、図6−10のコード表示画面において、例えばコード使用期限の残り時間が「30秒」となった場合に、コード表示画面を自動的にとじるように制御するなどして、コード(コード画像)を自動的に非表示とするようにしてもよいし、そのようにしなくてもよい。
<第3変形例(2)>
端末20のコード表示画面に表示された端末表示用コード画像を店舗コードリーダ装置50で読み取った場合に、限定ではなく例として、コードレジ60と一体として、またはコードレジ60と別体として設けられ、客側に表示面が向けられたディスプレイに、コード非表示推奨通知情報を表示させるようにしてもよいし、そのようにしなくてもよい。
具体的には、例えば、店舗コードリーダ装置50の制御部51は、サーバ10に決済要求情報を送信した後、コード非表示推奨通知情報を表示するように指示する信号を、POS通信I/F57を介してコードレジ60に出力するように制御する。
コードレジ60は、POS通信I/F57を介して店舗コードリーダ装置50から上記の信号を受信すると、コード非表示推奨通知情報をディスプレイに表示させる。
具体的には、限定ではなく例として、「支払いが完了しました。コード表示画面をとじてください。」といったメッセージをディスプレイに表示させる。
また、端末20のコード表示画面に表示された端末表示用コード画像を店舗コードリーダ装置50で読み取った場合に、限定ではなく例として、店舗コードリーダ装置50が、決済が完了した旨の情報(決済完了情報)やコード非表示推奨通知情報を、近距離無線通信等を利用して端末20に送信して、コード表示画面を非表示とさせるようにしてもよいし、そのようにしなくてもよい。
また、決済完了情報やコード非表示推奨通知情報を店舗コードリーダ装置50から端末20に送信するようにするのではなく、店舗に設置される通信装置(例えばビーコン発信器)によって、決済完了情報やコード非表示推奨通知情報を端末20に送信して、コード表示画面を非表示とさせるようにしてもよいし、そのようにしなくてもよい。
<第4実施例>
第4実施例は、端末20のユーザが端末表示用コード(端末表示用コード画像)を表示部24に表示させた後、ホームボタン等の操作によって、表示させた端末表示用コードを非表示とする場合の処理に関する実施例である。
第4実施例に記載の内容は、他の各実施例や他の各変形例のいずれにも適用可能である。
また、既出の構成要素と同一の構成要素については同一の符号を付して、再度の説明を省略する。
<表示画面例>
図7−1は、本実施例における端末20の表示部24に表示される画面の遷移の一例を示す図である。
(a1)には、二次元の端末表示用コード画像QC1を含むコード表示画面が表示部24に表示された状態を示している。このコード表示画面では、画面下部に、端末20のホーム画面を表示させるための「ホームボタン」が表示されている。
ホームボタンが端末20のユーザによってタッチ操作されると、例えば(b)に示すように、端末20のホーム画面が表示される。そして、ホーム画面に表示されている複数のアプリケーションソフトウェア(端末20で記憶されている複数のアプリケーションソフトウェア)のアイコンのうち、決済アプリケーション(Payment App)のアイコンが端末20のユーザによってタッチ操作されると、例えば(a2)に示すように、コード表示画面が再表示される。しかしながら、このコード表示画面に表示される端末表示用コード画像は、先に表示されていた端末表示用コード画像とは異なる。
具体的には、ホームボタンがタッチ操作されるまでの間に表示されていた端末表示用コード画像とは異なる端末表示用コード画像が新たに表示されている。具体的には、限定ではなく例として、ホームボタンがタッチ操作されるまでの間に表示されていた二次元の端末表示用コード画像QC1に対応するコードのデータは端末表示用コードストックデータ2831から削除された上で、端末表示用コードストックデータ2831に記憶されている別の端末表示用コードのコード画像として、二次元の端末表示用コード画像QC2を含むコード画像等がコード表示画面に表示されている。
図7−2は、本実施例における端末20の表示部24に表示される画面の遷移の別例を示す図である。図の見方は図7−1と同じであるが、図7−1の(a1)のコード表示画面については図示を省略している。
この遷移例では、(b)のホーム画面に表示されている複数のアプリケーションソフトウェアのアイコンのうち、決済アプリケーション(Payment App)のアイコンが端末20のユーザによってタッチ操作されると、例えば(a1´)に示すように、端末表示用コード画像QC1を含むコード表示画面が再表示される。このコード表示画面に表示されるコード画像は、先に表示されていたコード画像と同じものである。
図7−3は、本実施例における端末20の表示部24に表示される画面の遷移の別例を示す図である。図の見方は図7−1と同じであるが、図7−1の(a1)のコード表示画面は図示を省略している。
この遷移例では、(b)のホーム画面に表示されている複数のアプリケーションソフトウェアのアイコンのうち、決済アプリケーション(Payment App)のアイコンが端末20のユーザによってタッチ操作されると、例えば(c)に示すように、決済アプリケーションのトップ画面が表示される。
そして、(c)のトップ画面に表示されているアイコンのうちの「コードアイコン」が端末20のユーザによってタッチ操作されると、例えば(a2)に示すように、ホームボタンがタッチ操作されるまでの間に表示されていた端末表示用コード画像とは異なる端末表示用コード画像を含むコード表示画面が表示される。具体的には、限定ではなく例として、ホームボタンがタッチ操作されるまでの間に表示されていた二次元の端末表示用コード画像QC1に対応するコードは削除された上で、端末20でストックされている別の端末表示用コードのコード画像として、二次元の端末表示用コード画像QC2がコード表示画面に表示される。
<処理>
(第1の処理)
図7−4は、本実施例において端末20の制御部21が実行する第1のコード再表示処理の流れの一例を示すフローチャートである。この処理は、図7−1に示した画面の遷移を実現する処理の一例である。
制御部21は、コード表示画面を表示部24に表示中であるか否かを判定し(J110)、表示中であると判定したならば(J110:YES)、端末20のホーム画面を表示させるための操作(以下、「ホーム画面表示操作」と称する。)を検出したか否かを判定する(J120)。
ホーム画面表示操作を検出した場合(J120:YES)、制御部21は、第1のコード削除処理を行う(J130)。
具体的には、限定ではなく例として、表示中のコード表示画面の端末表示用コード画像のコードデータを端末表示用コードストックデータ2831から削除する。
また、自端末の通信状態がオンライン状態である場合は、限定ではなく例として、アプリケーションIDと、削除した端末表示用コードのコードNoとを含むコード非表示情報を、通信I/F22によってサーバ10に送信する。コード非表示情報は、端末表示用コード(端末表示用コード画像)を非表示としたことを示す情報である。
なお、コード非表示情報に代えて、端末表示用コードを削除したことを示す情報(以下、「コード削除情報」と称する。)や、端末表示用コードを使用済みとしたことを示す情報(以下、「コード使用済み情報」と称する。)を、端末20からサーバ10に送信するようにしてもよいし、そのようにしなくてもよい。
この場合、サーバ10の制御部11は、受信したコード非表示情報に含まれるアプリケーションIDのコード管理データから、同じくコード非表示情報に含まれるコードNoのコードデータを削除する。
その後、制御部21は、表示中のコード表示画面を非表示として、ホーム画面を表示部24に表示させる(J140)。そして、制御部21は、コード表示画面の表示を中断したことを示すフラグ(以下、「コード表示中断フラグ」と称する。)を「ON」に設定する(J150)。
次いで、制御部21は、ホーム画面を表示部24に表示中であるか否かを判定し(J210)、表示中であると判定したならば(J210:YES)、決済アプリケーションソフトウェアのアイコンのタッチ操作を検出したか否かを判定する(J220)。
決済アプリケーションソフトウェアのアイコンのタッチ操作を検出した場合(J220:YES)、制御部21は、コード表示中断フラグが「ON」に設定されているか否かを判定する(J230)。
コード表示中断フラグが「ON」に設定されていると判定したならば(J230:YES)、制御部21は、端末表示用コードストックデータ2831から一の端末表示用コードのデータを読み出して、その端末表示用コードのコード画像を含むコード表示画面を表示部24に表示させる(J250)。そして、制御部21は、コード表示中断フラグを「OFF」に設定する(J260)。
一方、コード表示中断フラグが「ON」に設定されていないと判定したならば(J230:NO)、制御部21は、例えば、決済アプリケーションのトップ画面を表示部24に表示させる(J270)。
次いで、制御部21は、処理を終了するか否かを判定し(J290)、処理を継続すると判定したならば(J290:NO)、J110に処理を戻す。一方、処理を終了すると判定したならば(J290:YES)、制御部21は、第1のコード再表示処理を終了する。
(第2の処理)
図7−5は、本実施例において端末20の制御部21が実行する第2のコード再表示処理の流れの一例を示すフローチャートである。この処理は、図7−2に示した画面の遷移を実現する処理の一例である。
なお、既出の処理と同一のステップについては同一の符号を付して、再度の説明を省略する。
J120においてホーム画面表示操作を検出した場合(J120:YES)、制御部21は、J140、J150の処理を行う。
本処理では、図7−4の第1のコード再表示処理とは異なり、J130の処理を行わない。
また、本処理では、制御部21は、J140で非表示としたコード表示画面に含まれる端末表示用コードのコード使用期限の残り時間を、バックグラウンドで継続してカウントする。
J230においてコード表示中断フラグが「ON」に設定されていると判定した場合(J230:YES)、制御部21は、非表示としたコード表示画面の端末表示用コードに関連付けられたコード使用期限内であるか否か(コード使用期限が未だ経過していないか否か)を判定する(K230)。
コード使用期限内であると判定したならば(K230:YES)、制御部21は、J140で非表示としたコード表示画面を表示部24に再表示させる(K240)。そして、制御部21は、J260へと処理を移す。
一方、コード使用期限内ではないと判定したならば(K230:NO)、制御部21は、第2のコード削除処理を行う(K250)。
具体的には、限定ではなく例として、J140で非表示としたコード表示画面の端末表示用コード画像のコードデータを端末表示用コードストックデータ2831から削除する。
また、自端末の通信状態がオンライン状態である場合は、限定ではなく例として、アプリケーションIDと、削除した端末表示用コードのコードNoとを含むコード非表示情報を、通信I/F22によってサーバ10に送信する。
この場合、サーバ10の制御部11は、受信したコード非表示情報に含まれるアプリケーションIDのコード管理データから、同じくコード非表示情報に含まれるコードNoのコードデータを削除する。
K250の後、制御部21は、J250へと処理を移す。
なお、ここでは、制御部21が、J140で非表示としたコード表示画面に含まれる端末表示用コードのコード使用期限の残り時間をバックグラウンドで継続してカウントすることとしたが、これに限定されない。
具体的には、J140でコード表示画面を非表示とした場合、コード使用期限の残り時間のカウントを停止するようにしてもよいし、そのようにしなくてもよい。この場合、J140でコード表示画面を非表示としたタイミングでのコード使用期限の残り時間が「0秒」でない限り、K230ではコード使用期限内であると判定されることになる。
(第3の処理)
第3の処理では、制御部21は、図7−4の第1のコード再表示処理において、J230においてコード表示中断フラグが「ON」に設定されていると判定した場合に、例えば図7−3に示すように、決済アプリケーションのトップ画面を表示部24に表示させる。
そして、制御部21は、トップ画面を表示部24に表示させている状態で、コード表示操作を検知した場合(例えば図7−3のように「コードアイコン」のタッチ操作を検知した場合)に、J140で非表示としたコード表示画面の端末表示用コード画像のコードデータを端末表示用コードストックデータ2831から削除する。そして、制御部21は、端末表示用コードストックデータ2831から一の端末表示用コードのデータを読み出して、その端末表示用コードのコード画像を含むコード表示画面を表示部24に表示させる。
この処理は、図7−3に示した画面の遷移を実現する処理の一例である。
なお、上記の処理は、端末20の通信状態(オンライン状態/オフライン状態)に関わらず適用可能であるが、端末20の通信状態に応じて異なる処理を行うように、端末20側またはサーバ10側で設定するようにしてもよいし、そのようにしなくてもよい。
具体的には、限定ではなく例として、端末20の通信状態がオンライン状態である場合は、第2の処理を行うように設定する。それに対し、端末20の通信状態がオフライン状態である場合は、第1の処理と第3の処理とのうちのいずれかの処理を行うように設定する。
<第5実施例>
第5実施例は、端末表示用コード(端末表示用コード画像)を非表示としたことをサーバ10に通知する手法に関する実施例である。
第4実施例で説明したように、端末表示用コード(端末表示用コード画像)を非表示とした場合、自端末の通信状態がオンライン状態であれば、コード非表示情報等の情報を端末20からサーバ10に送信することができる。
しかしながら、自端末の通信状態がオフライン状態である場合は、これらの情報をサーバ10に送信することができず、端末20で端末表示用コード(端末表示用コード画像)が非表示とされたことなどを、サーバ10が把握することができないという問題がある。
第5実施例に記載の内容は、他の各実施例や他の各変形例のいずれにも適用可能である。
また、既出の構成要素と同一の構成要素については同一の符号を付して、再度の説明を省略する。
<処理>
図8は、本実施例における各装置が実行する処理の流れの一例を示すフローチャートである。左側に、端末20の制御部21が実行するコード非表示処理を示し、右側に、サーバ10の制御部11が実行するコード削除処理を示す。
これらの処理は、限定ではなく例として、前述した端末20の決済アプリケーション処理と、前述したサーバ10の決済管理処理とのそれぞれのサブ処理として実行される(例えばバックグラウンドで実行される)処理である。
最初に、制御部21は、コード表示画面を非表示としたか否かを判定する(G110)。そして、非表示としたと判定したならば(G110:YES)、制御部21は、コード(コード画像)を非表示としたことを示すフラグ(以下、「コード非表示フラグ」と称する。)を「ON」に設定する(G120)。その後、制御部21は、自端末の通信状態を判定する(G130)。
通信状態の判定結果が「オフライン状態」である場合(G140:オフライン状態)、制御部21は、G190へと処理を移す。
一方、通信状態の判定結果が「オンライン状態」である場合(G140:オンライン状態)、制御部21は、限定ではなく例として、アプリケーションIDと、非表示としたコード表示画面に表示させていた端末表示用コードのコードNoとを含むコード非表示情報を、通信I/F22によってサーバ10に送信する(G150)。
通信I/F14を介して端末20からコード非表示情報を受信すると(H110)、制御部11は、端末表示用コード削除処理を行う(H120)。具体的には、限定ではなく例として、コード管理データベース159に記憶されているコード管理データのうち、端末20から受信したコード非表示情報に含まれるアプリケーションIDのコード管理データから、同じくコード非表示情報に含まれるコードNoに対応する端末表示用コードのデータを削除する。
その後、制御部11は、端末表示用コードを削除した旨の通知(以下、「端末表示用コード削除通知」と称する。)を、通信I/F14を介して端末20に送信する(H130)。
通信I/F22によってサーバ10から端末表示用コード削除通知を受信すると(G160)、制御部21は、端末表示用コードを削除した旨のメッセージを決済アプリケーションの画面に表示させるなどして、端末20のユーザに報知する(G170)。なお、このG170の処理は実行しないようにしてもよい。
その後、制御部21は、コード非表示フラグを「OFF」に設定する(G180)。
G180の後、または、通信状態の判定結果が「オフライン状態」であった場合(G140:オフライン状態)、制御部21は、コード非表示フラグが「ON」に設定されているか否かを判定する(G190)。
コード非表示フラグが「ON」に設定されている場合(G190:YES)、制御部21は、G130へと処理を移す。
この場合、G130〜G190の処理がループされる。そして、通信状態がオフライン状態からオンライン状態に変化すると、G150〜G180の処理が行われて、コード非表示フラグが「OFF」に設定される。
一方、コード非表示フラグが「OFF」に設定されている場合(G190:YES)、制御部21は、処理を終了するか否かを判定する(G195)。処理を継続すると判定した場合(G195:NO)、制御部21は、G110に処理を戻す。一方、処理を終了すると判定した場合(G195:YES)、制御部21は、コード非表示処理を終了する。
なお、この処理では、通信状態がオフライン状態からオンライン状態に変化したタイミングで、コード非表示情報を端末20からサーバ10に送信しているが、これに限定されない。
具体的には、限定ではなく例として、コード(コード画像)を非表示とした場合、特定のタイミングで、コード非表示情報を端末20からサーバ10に送信するようにすることもできる。特定のタイミングは、限定ではなく例として、特定の時刻(例えば深夜0時)となったタイミングや、特定のイベント(例えば決済アプリケーションの起動)が発生したタイミング等としてもよいし、そのようにしなくてもよい。
また、サーバ10側でコード非表示情報が受信されて端末表示用コード削除通知をサーバ10から受信するまでの間、端末20が、コード非表示情報を繰り返しサーバ10に送信するようにしてもよいし、そのようにしなくてもよい。
また、自端末の通信状態がオンライン状態であるかオフライン状態であるかを問わず、端末表示用コード(端末表示用コード画像)を非表示とした場合、第4実施例と同様に、制御部21が、非表示とした端末表示用コードのコードデータを端末表示用コードストックデータ2831から削除するようにすることもできる。
この場合、制御部21は、端末表示用コードを削除したことに基づいて、コード非表示情報やコード削除情報、コード使用済み情報等の情報を、サーバ10に送信するようにすることができる。
<第5実施例の効果>
第5実施例は、端末20が、ストックされている端末表示用コードのコード画像(限定ではなく、第1コード画像の一例)を表示部24から非表示にする制御を制御部21によって実行する。この場合、端末20は、コード非表示情報(限定ではなく、第1コード画像を表示領域から非表示にしたことを示す第3情報の一例)を、サーバ10に通信I/F22を介して送信する構成を示している。
このような構成により得られる効果の一例として、端末は、第1コード画像を表示領域から非表示にしたことをサーバに知らせることができる。
また、第5実施例は、コード非表示情報は、端末20の通信状態に基づき、サーバ10に通信I/F22を介して送信される構成を示している。
このような構成により得られる効果の一例として、端末は、例えばサーバとの通信が可能である場合に、第1コード画像を表示領域から非表示にしたことをサーバに知らせることができる。
また、第5実施例は、コード非表示情報は、通信状態がオフライン状態からオンライン状態に変化したタイミング(限定ではなく、設定されたタイミングの一例)で、サーバ10に通信I/F22を介して送信される構成を示している。
このような構成により得られる効果の一例として、端末は、設定されたタイミングで、第1コード画像を表示領域から非表示にしたことをサーバに知らせることができる。
<第5変形例>
第5実施例において、端末20の制御部21が、通信状態がオフライン状態であると判定した場合、限定ではなく例として、コード表示画面を非表示としたことに基づいて、表示させていた端末表示用コードのデータを端末表示用コードストックデータ2831から削除する制御を実行するようにしてもよいし、そのようにしなくてもよい。
この制御は、コード画像を使用不可にする制御の一例である。
なお、上記の制御はあくまでも一例であり、これに限定されない。
必ずしも端末表示用コードのデータを端末20から削除する必要はなく、非表示とした端末表示用コードのデータを端末20から削除はしないが、この端末表示用コードの再表示を不可とする制御(再表示を禁止する制御)を実行するようにしてもよい。
この場合は、非表示とした端末表示用コードについて、限定ではなく例として、「使用不可(利用不可)」や「再表示不可」のフラグを関連付けて端末表示用コードストックデータ2831に記憶させる。そして、これらのフラグが設定されている端末表示用コードは、再表示しないようにすればよい。
また、制御部21が、通信状態がオフライン状態であると判定した場合であって、コード使用期限内にコード表示画面を非表示とした場合は、端末20のユーザによるコード表示操作に基づいて、非表示とした端末表示用コードを含むコード表示画面を表示部24に再表示させるようにする。
それに対し、通信状態がオフライン状態であると判定した場合であって、コード使用期限が経過したことに基づいてコード表示画面を非表示とした場合は、上記のようなコード画像を使用不可にする制御を実行するようにしてもよいし、そのようにしなくてもよい。
また、制御部21が、通信状態がオフライン状態であると判定した場合であって、コード表示画面を非表示とした後、端末20のユーザによるコード表示操作に基づいて、非表示とした端末表示用コードとは異なる端末表示用コードを端末表示用コードストックデータ2831から選択して、選択した端末表示用コードのコード画像を含むコード表示画面を表示部24に表示させるようにしてもよいし、そのようにしなくてもよい。
本変形例によれば、端末は、通信状態として端末の通信量が設定された通信量よりも小さい場合、第1コード画像を表示領域から非表示にすることに基づいて、第1コード画像を使用不可にする制御を制御部によって実行することで、一旦表示させてから非表示にした第1コード画像を決済に使用できないようにすることができる。
また、本変形例によれば、端末は、通信状態として端末の通信量が設定された通信量よりも小さく、第1コード画像の有効期限が経過されていない場合は、第1コード画像を表示領域から非表示にした後、端末に対する端末のユーザによる入力に基づいて、第1コード画像を表示領域に表示することで、一旦表示させてから非表示にした第1コード画像を決済に使用可能とすることができる。
それに対し、通信状態として端末の通信量が設定された通信量よりも小さく、有効期限が経過された場合は、第1コード画像を使用不可にする制御を制御部によって実行することで、一旦表示させてから非表示にした第1コード画像を決済に使用できないようにすることができる。
また、本変形例によれば、端末は、通信状態として端末の通信量が設定された通信量よりも小さい場合、第1コード画像を表示領域から非表示にした後、端末に対する端末のユーザによる入力に基づいて、第1コード画像とは異なる第2コード画像を表示領域に表示することで、非表示にしたコード画像とは異なるコード画像を決済に使用可能とすることができる。
<第6実施例>
第6実施例は、端末20でストックされた端末表示用コードのストックの補充、及び、そのユーザインターフェイスに関する実施例である。
第6実施例に記載の内容は、他の各実施例や他の各変形例のいずれにも適用可能である。
また、既出の構成要素と同一の構成要素については同一の符号を付して、再度の説明を省略する。
<処理>
図9−1は、本実施例における各装置が実行する処理の流れの一例を示すフローチャートである。左側に、端末20の制御部21が実行する第1の端末側コード補充処理を示し、右側に、サーバ10の制御部11が実行する第1のサーバ側コード補充処理を示す。
これらの処理は、限定ではなく例として、前述した端末20の決済アプリケーション処理と、前述したサーバ10の決済管理処理とのそれぞれのサブ処理として実行される(例えばバックグラウンドで実行される)処理である。
最初に、制御部21は、コード補充条件判定処理を行う(M110)。コード補充条件としては、例えば以下のような条件を定めておくことができる。
(1)コード補充操作を検知したこと。
(2)端末の電磁波環境(通信環境)が変化したこと。
(3)コードの更新タイミングや更新時刻となったこと。
(1)の条件は、端末20のユーザによるコードを補充するための操作(以下、「コード補充操作」と称する。)を検知した場合に、コードを補充することを示す条件である。
(2)の条件は、端末20の電磁波環境(通信環境)が変化した場合に、コードを補充することを示す条件である。なお、一般的に通信には電波が使用されるため、電磁波環境の変化ではなく、電波環境の変化としてもよい。
限定ではなく例として、電磁波の強さに基づき、端末20の電磁波環境が「中電磁波環境」から「弱電磁波環境」に変化したことを検知した場合に、オフライン状態となる可能性があるため、端末表示用コードを補充するようにすることができる。
(3)の条件は、例えば定期的なタイミング(例えば12時間や24時間に1回)や、特定の時刻(例えば深夜0時)となった場合に、コードを補充することを示す条件である。
M110では、制御部21は、限定ではなく例として、例えば上記の複数のコード補充条件のうちの少なくともいずれか1つの条件が成立したか否かを判定する。
なお、上記のコード補充条件は、あくまでも一例を示したものに過ぎず、これら以外の条件を定めておくようにすることもできる。
また、限定ではなく例として、上記のコード補充条件のうちの2以上の条件を組み合わせた条件を、コード補充条件として定めておくようにすることもできる。
また、限定ではなく例として、上記のコード補充条件のうちのいずれの条件を適用するかを、端末20のユーザに選択させるなどして設定しておくようにすることもできる。
コード補充条件が成立したと判定したならば(M120:YES)、制御部21は、オンライン状態であるか否かを判定する(M130)。そして、オンライン状態であると判定したならば(M130:YES)、制御部21は、限定ではなく例として、少なくともアプリケーションIDを含むコード補充依頼情報を、通信I/F22によってサーバ10に送信する(M140)。
なお、コード補充依頼情報に代えて、先に説明したコード生成依頼情報を端末20からサーバ10に送信するようにしてもよいし、そのようにしなくてもよい。
サーバ10の制御部11は、端末20からコード補充依頼情報を受信したか否かを判定する(N110)。そして、受信したと判定したならば(N110:YES)、端末表示用コード生成処理を行う(N120)。そして、制御部21は、生成した端末表示用コードを、通信I/F14によって端末20に送信する(N150)。
その後、制御部11は、処理を終了するか否かを判定し(N190)、処理を継続すると判定したならば(N190:NO)、N110に処理を戻す。また、処理を終了すると判定したならば(N190:YES)、第1のサーバ側コード補充処理を終了する。
また、端末20からコード生成依頼情報を受信しなかった場合(N110:NO)、制御部11は、N190へと処理を移す。
通信I/F22によってサーバ10から端末表示用コードを受信すると(M150)、制御部21は、受信された端末表示用コードを端末表示用コードストックデータ2831に追加・記憶させる(M160)。
その後、制御部21は、コード補充通知処理を行う(M170)。このコード補充通知処理では、端末表示用コードのストックが補充されたことを通知する情報(以下、「コード補充通知情報」と称する。)を表示部24に表示させる処理を行う。
具体的には、限定ではなく例として、決済アプリケーションを実行中ではない場合は、コード補充通知情報を、決済アプリケーションと関連付けられたプッシュ通知によって表示部24に表示する。
一方、決済アプリケーションを実行中である場合は、コード補充通知情報を、決済アプリケーション内の画面(例えばコード表示画面)に表示させる。
その後、制御部21は、処理を終了するか否かを判定し(M190)、処理を継続すると判定したならば(M190:NO)、M110に処理を戻す。また、処理を終了すると判定したならば(M190:YES)、第1の端末側コード補充処理を終了する。
また、コード補充条件が成立しないと判定された場合(M120:NO)、または、オンライン状態ではないと判定された場合(M130:NO)、制御部11は、M190へと処理を移す。
なお、コード補充依頼情報は、1個の端末表示用コードの補充を依頼する情報としてもよいが、複数(2以上)の端末表示用コードの補充を依頼する情報としてもよい。具体的には、限定ではなく例として、端末表示用コードを1つ1つ補充するようにするのではなく、端末20側またはサーバ10側で、端末20が一度に補充を依頼するコードの数(サーバ10が補充用に一度に生成するコードの数)の上限を設定しておく。そして、この上限の数の端末表示用コードを、端末20のユーザが1回の操作で一気に補充するようにしてもよい。この場合、サーバ10によって複数の端末表示用コードが生成され、生成された複数の端末表示用コードが端末20に送信されて、受信された複数の端末表示用コードを端末20で補充するようにすればよい。
また、オフライン状態からの端末表示用コードのストックの補充を実現するための手法として、例えば以下のような手法を適用することができる。
以下では、前述した第1通信方式により端末20とサーバ10とが通信不能であることを「オフライン状態」とする。また、前述した第2通信方式を利用することで、端末20はサーバ10と通信することができることとする。
<処理>
図9−2、図9−3は、本実施例における各装置が実行する処理の流れの一例を示すフローチャートである。左側に、端末20の制御部21が実行する第2の端末側コード補充処理を示し、右側に、サーバ10の制御部11が実行する第1のサーバ側コード補充処理を示す。
これらの処理は、限定ではなく例として、前述した端末20の決済アプリケーション処理と、前述したサーバ10の決済管理処理とのそれぞれのサブ処理として実行される(例えばバックグラウンドで実行される)処理である。
図9−2、図9−3のフローチャートは、図9−1のフローチャートに、M130:NOの場合における処理(M230〜M280)を追加したものである。
M130においてオンライン状態ではないと判定したならば(M130:NO)、制御部21は、オフライン通知を行う(M230)。具体的には、限定ではなく例として、第1通信方式によるサーバ10との通信が不能(オフライン状態)であることを示す情報を表示部24に表示させる。
その後、制御部21は、第2通信方式によるコード補充確認通知を行う(M240)。具体的には、限定ではなく例として、第2通信方式で通信を行って、端末表示用コードの補充を行うか否かを端末20のユーザに意思確認するための情報を表示部24に表示させる。
次いで、制御部21は、第2通信方式によるコード補充を行うことが端末20のユーザによって選択されたか否かを判定し(M250)、選択されたと判定したならば(M250:YES)、第2通信方式による通信を試行する(M260)。
第2通信方式による通信に成功したならば(M270:YES)、制御部21は、コード補充処理を行う(M280)。具体的には、前述したコード補充依頼情報をサーバ10に送信して、サーバ10から端末表示用コードを取得して、端末表示用コードストックデータ2831に記憶させて補充する。そして、制御部21は、M190へと処理を移す。
なお、第2通信方式によるコード補充を行うために、限定ではなく例として、決済アプリケーションと連携可能なアプリケーションとして、例えば第2通信方式の一例である無線LAN(例えばWiFi(登録商標))を利用可能な店舗や施設等の場所(スポット)を検索するための検索アプリケーションを、あらかじめ端末20でダウンロードして記憶部28に記憶しておく。
そして、例えば、M240の第2通信方式によるコード補充確認通知を行った結果、第2通信方式によるコード補充を行うことが端末20のユーザによって選択された場合に、制御部21が、端末20に記憶されている検索アプリケーションを起動し、第2通信方式を利用可能なスポットを検索する処理を行うようにしてもよいし、そのようにしなくてもよい。
<表示画面例>
図9−4は、本実施例におけるコード表示画面の一例を示す図である。このコード表示画面では、限定ではなく例として、図9−3のM230で表示される。
このコード表示画面では、第1通信方式によるサーバ10との通信が不能であることを示す情報であるとともに、第1情報をサーバから受信できないことを示す情報の一例として、「オフライン通知 現在オフラインです。コードをサーバから取得することができません。オンラインになるとストックが補充されます。」というメッセージが、ポップアップ形式で表示されている。また、この通知内容に承認の意思を示すための「OK」のアイコンが表示されている。
図9−5は、図9−4のコード表示画面において「OK」のアイコンがタッチ操作された場合に表示される画面の一例を示す図である。この画面は、限定ではなく例として、図9−3のM240で表示される。
この画面では、第2通信方式で通信を行って端末表示用コードの補充を行うか否かを端末20のユーザに意思確認するための情報の一例として「ワイヤレスネットワークに接続してコードを取得しますか?」というメッセージが、第2通信方式によるコード補充確認通知としてポップアップ形式で表示されている。また、この通知内容に承認の意思を示すための「OK」のアイコンと、この通信内容に今は承認しない意思を示すための「今はしない」のアイコンとが表示されている。
図9−5において「OK」のアイコンがタッチ操作されると、例えば図9−6に示すような画面が表示される。
この画面では、ワイヤレスネットワークを選択するための選択ボックスが画面中央に表示されており、端末20のユーザは、この選択ボックス内に表示されたワイヤレスネットワークの候補の中から一の候補を選択する。
図9−6においてワイヤレスネットワークが選択されると、選択されたワイヤレスネットワークによる通信が試行される。そして、通信OKとなると、サーバ10から端末表示用コードが取得され、例えば図9−7に示すような画面が表示される。
この表示例では、コード補充依頼情報として、4個の端末表示用コードの補充を依頼する情報が端末20からサーバ10に送信され、サーバ10によって4個の端末表示用コードが生成され、生成された4個の端末表示用コードが端末20に送信されて、受信された4個の端末表示用コードが端末20で補充された場合を示しており、「コードストック追加 コードのストックが4個追加されました。」というメッセージがポップアップ形式で表示されている。
<第6実施例の効果>
第6実施例は、端末20が、通信状態がオフライン状態である場合、端末20による通信ができないことを示す情報を表示部24に表示する。そして、端末20は、端末20による通信ができないことを示す情報に対する端末20のユーザのタッチ操作(限定ではなく、端末のユーザの入力の一例)に基づいて、第2通信方式によってコード補充を行うための設定情報(限定ではなく、端末の通信の設定に関する情報)を表示部24に表示する構成を示している。
このような構成により得られる効果の一例として、端末は、端末による通信ができないことを端末のユーザに報知することができるとともに、端末のユーザの入力に基づいて、端末の通信の設定を行うことができる。これにより、例えば、第1通信方式による通信が不能な場合であっても、第2通信方式の設定を行って、第2通信方式によってサーバと通信を行うといったことが可能となる。
また、第6実施例は、上記の端末20による通信ができないことを示す情報は、端末表示用コードをサーバ10から受信できないことを示す情報を含む構成を示している。
このような構成により得られる効果の一例として、端末は、第1情報をサーバから受信できないことをユーザに報知することができる。
1 通信システム
10 サーバ
20 端末
30 ネットワーク
40 店舗POSシステム
50 店舗コードリーダ装置
60 コードレジ
70 店舗サーバ

Claims (22)

  1. コード画像による決済を行うための第1情報に基づいて前記決済に関する処理を実行する端末の情報処理方法であって、
    サーバから送信された前記第1情報を、前記端末の通信部を介して受信することと、
    受信された前記第1情報を、前記端末の制御部によって前記端末の記憶部に記憶することと、
    前記第1情報に基づく第1コード画像を前記端末の表示領域に表示することと、
    前記端末の通信状態に基づいて、前記第1コード画像を表示する前記表示領域に表示される第2情報を前記端末の制御部によって制御することとを含む。
  2. 請求項1に記載の情報処理方法であって、
    前記制御部は、前記端末の通信状態が第1通信状態の場合、前記第2情報として第1表示を前記表示領域に表示する制御を行い、前記端末の通信状態が前記第1通信状態よりも通信の情報量が小さい第2通信状態の場合、前記第2情報として、前記第1表示とは異なる第2表示を前記表示領域に表示する制御を行う。
  3. 請求項1または請求項2に記載の情報処理方法であって、
    前記第2情報は、前記表示領域の色の情報を含む。
  4. 請求項1から請求項3のいずれか一項に記載の情報処理方法であって、
    前記第2情報は、前記表示領域に表示された前記第1コード画像の有効期限に関する情報を含む。
  5. 請求項4に記載の情報処理方法であって、
    前記制御部は、前記通信状態が第1通信状態の場合、前記第2情報として第1有効期限に関する情報を前記表示領域に表示する制御を行い、前記通信状態が前記第1通信状態よりも通信の情報量が小さい第2通信状態の場合、前記第2情報として、前記第1有効期限よりも短い有効期限である第2有効期限に関する情報を前記表示領域に表示する制御を行う。
  6. 請求項5に記載の情報処理方法であって、
    前記第2有効期限が経過された場合、前記第1コード画像を前記表示領域から非表示にする制御を前記制御部によって実行することを含む。
  7. 請求項1から請求項6のいずれか一項に記載の情報処理方法であって、
    前記第2情報は、前記表示領域のあかるさの情報を含む。
  8. 請求項1に記載の情報処理方法であって、
    前記第2情報は、前記通信状態として前記端末の通信量が設定された通信量よりも小さい場合、前記表示領域に表示される。
  9. 請求項8に記載の情報処理方法であって、
    前記第2情報は、前記決済の完了通知が送付されないことに関する通知を含む。
  10. 請求項8に記載の情報処理方法であって、
    前記第2情報は、前記第1コード画像の非表示に関する通知を含む。
  11. 請求項1に記載の情報処理方法であって、
    前記端末は、第1通信部と、前記第1通信部とは異なる第2通信部とを有し、
    前記通信状態は、前記第1通信部の通信状態であり、
    前記通信状態として前記端末の通信量が設定された通信量よりも小さい場合、通信装置から送信された決済完了に関する情報を前記第2通信部を介して受信したことに基づき、前記第1コード画像を前記表示領域から非表示にする制御を前記制御部によって実行することを含む。
  12. 請求項1から請求項11のいずれか一項に記載の情報処理方法であって、
    前記第1コード画像を前記表示領域から非表示にする制御を前記制御部によって実行することと、
    前記第1コード画像を前記表示領域から非表示にしたことを示す第3情報を、前記サーバに前記通信部を介して送信することとを含む。
  13. 請求項12に記載の情報処理方法であって、
    前記第3情報は、前記通信状態に基づき、前記サーバに前記通信部を介して送信される。
  14. 請求項12に記載の情報処理方法であって、
    前記第3情報は、設定されたタイミングで、前記サーバに前記通信部を介して送信される。
  15. 請求項1に記載の情報処理方法であって、
    前記通信状態として前記端末の通信量が設定された通信量よりも小さい場合、前記第1コード画像を前記表示領域から非表示にすることに基づいて、前記第1コード画像を使用不可にする制御を前記制御部によって実行することを含む。
  16. 請求項1に記載の情報処理方法であって、
    前記第2情報は、前記第1コード画像の有効期限に関する情報であり、
    前記通信状態として前記端末の通信量が設定された通信量よりも小さく、前記有効期限が経過されていない場合、前記第1コード画像を前記表示領域から非表示にした後、前記端末に対する前記端末のユーザによる入力に基づいて、前記第1コード画像を前記表示領域に表示し、前記通信状態として前記端末の通信量が設定された通信量よりも小さく、前記有効期限が経過された場合、前記第1コード画像を使用不可にする制御を前記制御部によって実行することを含む。
  17. 請求項1に記載の情報処理方法であって、
    前記記憶部は、複数の前記第1情報を記憶し、
    前記通信状態として前記端末の通信量が設定された通信量よりも小さい場合、前記第1コード画像を前記表示領域から非表示にした後、前記端末に対する前記端末のユーザによる入力に基づいて、前記第1コード画像とは異なる第2コード画像を前記表示領域に表示することを含む。
  18. 請求項1に記載の情報処理方法であって、
    前記通信状態として前記端末の通信量が設定された通信量よりも小さい場合、前記端末による通信ができないことを示す情報を前記表示領域に表示することと、
    前記通信ができないことを示す情報に対する前記端末のユーザの入力に基づいて、前記端末の通信の設定に関する情報を前記表示領域に表示することとを含む。
  19. 請求項18に記載の情報処理方法であって、
    前記通信ができないことを示す情報は、前記第1情報を前記サーバから受信できないことを示す情報を含む。
  20. コード画像による決済を行うための第1情報に基づいて前記決済に関する処理を実行する端末に実行させるためのプログラムであって、
    サーバから送信された前記第1情報を、前記端末の通信部を介して受信することと、
    受信された前記第1情報を、前記端末の記憶部に記憶することと、
    前記第1情報に基づく第1コード画像を前記端末の表示領域に表示することと、
    前記端末の通信状態に基づいて、前記第1コード画像を表示する前記表示領域に表示される第2情報を制御することを含む。
  21. コード画像による決済を行うための第1情報に基づいて前記決済に関する処理を実行する端末であって、
    サーバから送信された前記第1情報を受信する通信部と、
    受信された前記第1情報を前記端末の記憶部に記憶する制御を行う制御部と、
    前記第1情報に基づく第1コード画像を前記端末の表示領域に表示する表示部とを備え、
    前記制御部は、前記端末の通信状態に基づいて、前記第1コード画像を表示する前記表示領域に表示される第2情報を制御する。
  22. コード画像による決済を行うための第1情報に基づいて前記決済に関する処理を実行する端末であって、
    プログラムを記憶するメモリから前記プログラムを読み出し、前記プログラムに基づいて処理を実行するプロセッサーを備え、
    前記プロセッサーは、
    サーバから送信された前記第1情報を、前記端末の通信部を介して受信することと、
    受信された前記第1情報を、前記端末の記憶部に記憶することと、
    前記第1情報に基づく第1コード画像を前記端末の表示領域に表示することと、
    前記端末の通信状態に基づいて、前記第1コード画像を表示する前記表示領域に表示される第2情報を制御することとを実行する。
JP2019136337A 2019-07-24 2019-07-24 情報処理方法、プログラム、端末 Active JP6765483B1 (ja)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2019136337A JP6765483B1 (ja) 2019-07-24 2019-07-24 情報処理方法、プログラム、端末
PCT/JP2020/022296 WO2021014786A1 (ja) 2019-07-24 2020-06-05 情報処理方法、プログラム、端末
CN202080002809.1A CN112602102A (zh) 2019-07-24 2020-06-05 信息处理方法、程序及终端
KR1020207033419A KR102572825B1 (ko) 2019-07-24 2020-06-05 정보처리 방법, 프로그램, 단말
JP2020153853A JP7306770B2 (ja) 2019-07-24 2020-09-14 プログラム、情報処理方法、端末
US17/129,346 US20210110369A1 (en) 2019-07-24 2020-12-21 Information processing method, program, and terminal

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2019136337A JP6765483B1 (ja) 2019-07-24 2019-07-24 情報処理方法、プログラム、端末

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2020153853A Division JP7306770B2 (ja) 2019-07-24 2020-09-14 プログラム、情報処理方法、端末

Publications (2)

Publication Number Publication Date
JP6765483B1 true JP6765483B1 (ja) 2020-10-07
JP2021021992A JP2021021992A (ja) 2021-02-18

Family

ID=72706668

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2019136337A Active JP6765483B1 (ja) 2019-07-24 2019-07-24 情報処理方法、プログラム、端末

Country Status (1)

Country Link
JP (1) JP6765483B1 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7440596B1 (ja) 2022-11-21 2024-02-28 楽天グループ株式会社 決済サーバ、決済方法及びプログラム

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101516773B1 (ko) * 2013-03-06 2015-05-04 홍바울 바코드를 이용한 지불 결제 시스템 및 방법
CN108269084A (zh) * 2017-01-03 2018-07-10 阿里巴巴集团控股有限公司 一种用于在移动设备上进行扫码支付的方法及装置

Also Published As

Publication number Publication date
JP2021021992A (ja) 2021-02-18

Similar Documents

Publication Publication Date Title
JP6815447B1 (ja) プログラム、情報処理方法、端末
JP6585808B1 (ja) 生成方法、プログラム、情報処理装置
JP6681968B1 (ja) プログラム、認証方法、端末
EP2538641A1 (en) Secure tag management method and system
US20130159217A1 (en) Environmentally-responsive behavioral fingerprinting
WO2020255621A1 (ja) 情報処理方法、プログラム、端末、サーバ
JP7354162B2 (ja) プログラム、情報処理方法、端末
JP2020013406A (ja) プログラム、情報処理方法、情報処理装置
JP6765483B1 (ja) 情報処理方法、プログラム、端末
JP7306770B2 (ja) プログラム、情報処理方法、端末
JP2020204883A (ja) 情報処理方法、プログラム、端末
JP6825160B2 (ja) プログラム、情報処理方法、端末
JP6825048B2 (ja) プログラム、情報処理方法、端末
WO2021014786A1 (ja) 情報処理方法、プログラム、端末
JP7306771B2 (ja) プログラム、情報処理方法、端末
JP6840780B2 (ja) 情報処理方法、プログラム、端末、サーバ
WO2020255620A1 (ja) 情報処理方法、プログラム、端末
JP7493916B2 (ja) プログラム、情報処理方法、端末
EP3090402A1 (en) Check-in systems and methods
JP2016009468A (ja) サービス提供システム及びサービス提供方法
JP7466477B2 (ja) プログラム、情報処理方法、端末、サーバ
JP2020204882A (ja) 情報処理方法、プログラム、端末
JP7364311B2 (ja) プログラム、情報処理方法、端末

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200625

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20200625

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20200811

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200825

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200915

R150 Certificate of patent or registration of utility model

Ref document number: 6765483

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250