JP7761985B2 - Program, information processing method, terminal - Google Patents
Program, information processing method, terminalInfo
- Publication number
- JP7761985B2 JP7761985B2 JP2019112044A JP2019112044A JP7761985B2 JP 7761985 B2 JP7761985 B2 JP 7761985B2 JP 2019112044 A JP2019112044 A JP 2019112044A JP 2019112044 A JP2019112044 A JP 2019112044A JP 7761985 B2 JP7761985 B2 JP 7761985B2
- Authority
- JP
- Japan
- Prior art keywords
- code
- terminal
- payment
- server
- display
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/08—Payment architectures
- G06Q20/20—Point-of-sale [POS] network systems
- G06Q20/206—Point-of-sale [POS] network systems comprising security or operator identification provisions, e.g. password entry
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/04—Payment circuits
- G06Q20/06—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme
- G06Q20/065—Private payment circuits, e.g. involving electronic currency used among participants of a common payment scheme using e-cash
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/08—Payment architectures
- G06Q20/085—Payment architectures involving remote charge determination or related payment systems
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/36—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes
- G06Q20/367—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using electronic wallets or electronic money safes involving electronic purses or money safes
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/385—Payment protocols; Details thereof using an alias or single-use codes
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/401—Transaction verification
- G06Q20/4014—Identity check for transactions
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/42—Confirmation, e.g. check or permission by the legal debtor of payment
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07G—REGISTERING THE RECEIPT OF CASH, VALUABLES, OR TOKENS
- G07G1/00—Cash registers
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07G—REGISTERING THE RECEIPT OF CASH, VALUABLES, OR TOKENS
- G07G1/00—Cash registers
- G07G1/01—Details for indicating
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07G—REGISTERING THE RECEIPT OF CASH, VALUABLES, OR TOKENS
- G07G1/00—Cash registers
- G07G1/12—Cash registers electronically operated
Landscapes
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Finance (AREA)
- General Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Cash Registers Or Receiving Machines (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Description
本開示は、情報処理方法、プログラム、端末、サーバに関する。 This disclosure relates to information processing methods, programs, terminals, and servers.
昨今、スマートフォン等の端末で実行可能なアプリケーションによって、端末、または端末のユーザの電子貨幣(電子マネー)の管理や、電子貨幣による決済等を実現するサービスが普及しつつある。例えば特許文献1には、商品の購買金額の決済を行う技術が開示されている。しかしながら、電子貨幣による決済は、例えば、端末の通信環境や通信状況によっては行うことができない場合もあるなど、使い勝手が悪い場合があった。 Recently, services that use applications that can be executed on devices such as smartphones to manage the device or the device user's electronic currency (electronic money) and enable payments using electronic currency are becoming increasingly popular. For example, Patent Document 1 discloses technology for settling the purchase amount of goods. However, payments using electronic currency can be inconvenient in some cases, for example, due to the device's communication environment or communication conditions, making them inconvenient to use.
本発明の第1の態様によると、コード情報に基づく決済に関する処理を実行する端末によって実行されるプログラムは、サーバによって第1有効期限が関連付けられた第1コード情報を、サーバから端末の通信部を介して受信することと、受信された第1コード情報を、端末の制御部によって端末の記憶部に記憶することと、第1コード情報に基づいて、決済に関する処理を制御部によって実行することとが端末によって実行され、決済は、決済に関する処理に基づく時刻と、第1有効期限とに基づいてサーバによって実行される。
本発明の第2の態様によると、コード情報に基づく決済に関する処理を実行する端末の情報処理方法は、サーバによって第1有効期限が関連付けられた第1コード情報を、サーバから端末の通信部を介して受信することと、受信された第1コード情報を端末の記憶部に記憶することと、第1コード情報に基づいて、決済に関する処理を実行することとを含み、決済は、決済に関する処理に基づく時刻と、第1有効期限とに基づいてサーバによって実行される。
本発明の第3の態様によると、コード情報に基づく決済に関する処理を実行する端末は、サーバによって第1有効期限が関連付けられた第1コード情報を、サーバから受信する通信部と、受信された第1コード情報を端末の記憶部に記憶する制御を行う制御部とを備え、制御部は、第1コード情報に基づいて、決済に関する処理を実行し、決済は、決済に関する処理に基づく時刻と、第1有効期限とに基づいてサーバによって実行される。
本発明の第4の態様によると、コード情報に基づく決済に関する処理を実行する端末は、メモリに記憶されたプログラムを読み出し、プログラムに基づく処理を実行するプロセッサーを備え、プロセッサーは、サーバによって第1有効期限が関連付けられた第1コード情報を、サーバから端末の通信部を介して受信する処理と、受信された第1コード情報をメモリに記憶する処理と、第1コード情報に基づく決済に関する処理とを実行し、決済は、決済に関する処理に基づく時刻と、第1有効期限とに基づいてサーバによって実行される。
本発明の第5の態様によると、コード情報に基づく決済を管理するサーバによって実行されるプログラムは、第1コード情報と、第1有効期限とを関連付けて、サーバの制御部によってサーバの記憶部に記憶することと、決済に関する処理を行う端末に第1コード情報をサーバの通信部を介して送信することと、第1コード情報と、第1コード情報に基づいて行われた決済に関する処理に基づく時刻の情報とを通信部を介して受信することと、受信された第1コード情報に関連付けられた第1有効期限と、受信された決済に関する処理に基づく時刻とに基づいて、決済の処理を制御部によって行うこととがサーバによって実行される。
本発明の第6の態様によると、コード情報に基づく決済を管理するサーバの情報処理方法は、第1コード情報と、第1有効期限とを関連付けて、サーバの記憶部に記憶することと、決済に関する処理を行う端末に第1コード情報をサーバの通信部を介して送信することと、第1コード情報と、第1コード情報に基づいて行われた決済に関する処理に基づく時刻の情報とを通信部を介して受信することと、受信された第1コード情報に関連付けられた第1有効期限と、受信された決済に関する処理に基づく時刻とに基づいて、決済の処理を行うこととを含む。
本発明の第7の態様によると、コード情報に基づく決済を管理するサーバは、第1コード情報と、第1有効期限とを関連付けて記憶する記憶部と、決済に関する処理を行う端末に第1コード情報を送信し、第1コード情報と、第1コード情報に基づいて行われた決済に関する処理に基づく時刻の情報とを受信する通信部と、受信された第1コード情報に関連付けられた第1有効期限と、受信された決済に関する処理に基づく時刻とに基づいて、決済の処理を行う制御部とを備える。
本発明の第8の態様によると、コード情報に基づく決済を管理するサーバは、メモリに記憶されたプログラムを読み出し、プログラムに基づく処理を実行するプロセッサーを備え、プロセッサーは、第1コード情報と、第1有効期限とを関連付けてメモリに記憶する処理と、決済に関する処理を行う端末に第1コード情報を送信し、第1コード情報と、第1コード情報に基づいて行われた決済に関する処理に基づく時刻の情報とを受信する処理と、受信された第1コード情報に関連付けられた第1有効期限と、受信された決済に関する処理に基づく時刻とに基づく決済の処理とを実行する。
According to a first aspect of the present invention, a program executed by a terminal that executes processing related to payment based on code information receives first code information associated with a first expiration date by the server from the server via a communication unit of the terminal, stores the received first code information in a memory unit of the terminal by a control unit of the terminal, and executes processing related to payment based on the first code information by the control unit, and the payment is executed by the server based on the time based on the processing related to payment and the first expiration date.
According to a second aspect of the present invention, an information processing method for a terminal that executes processing related to payment based on code information includes receiving first code information associated with a first expiration date by the server from the server via a communication unit of the terminal, storing the received first code information in a memory unit of the terminal, and executing processing related to payment based on the first code information, wherein the payment is executed by the server based on a time based on the processing related to payment and the first expiration date.
According to a third aspect of the present invention, a terminal that executes a payment-related process based on code information includes a communication unit that receives, from a server, first code information associated with a first expiration date by the server, and a control unit that controls the storage of the received first code information in a memory unit of the terminal, and the control unit executes the payment-related process based on the first code information, and the payment is executed by the server based on the time based on the payment-related process and the first expiration date.
According to a fourth aspect of the present invention, a terminal that executes processing related to payment based on code information includes a processor that reads a program stored in memory and executes processing based on the program, and the processor executes a process of receiving first code information associated with a first expiration date by the server from the server via a communication unit of the terminal, a process of storing the received first code information in memory, and a process related to payment based on the first code information, and the payment is executed by the server based on the time based on the processing related to payment and the first expiration date.
According to a fifth aspect of the present invention, a program executed by a server that manages payments based on code information is executed by the server to associate first code information with a first expiration date and store the first code information in a memory unit of the server by a control unit of the server, transmit the first code information to a terminal that performs processing related to the payment via a communication unit of the server, receive the first code information and information on the time based on the processing related to the payment performed based on the first code information via the communication unit, and perform processing of the payment by the control unit based on the first expiration date associated with the received first code information and the time based on the processing related to the payment.
According to a sixth aspect of the present invention, an information processing method of a server that manages payments based on code information includes associating first code information with a first expiration date and storing them in a memory unit of the server, transmitting the first code information to a terminal that performs processing related to the payment via a communication unit of the server, receiving the first code information and information on the time based on the processing related to the payment performed based on the first code information via the communication unit, and processing the payment based on the first expiration date associated with the received first code information and the time based on the processing related to the payment.
According to a seventh aspect of the present invention, a server that manages payments based on code information includes a memory unit that stores first code information and a first expiration date in association with each other, a communication unit that transmits the first code information to a terminal that performs payment-related processing and receives the first code information and information on the time based on the payment-related processing performed based on the first code information, and a control unit that performs payment processing based on the first expiration date associated with the received first code information and the time based on the received payment-related processing.
According to an eighth aspect of the present invention, a server that manages payments based on code information includes a processor that reads a program stored in a memory and executes processing based on the program, and the processor executes the following processes: a process of associating first code information with a first expiration date and storing them in memory; a process of transmitting the first code information to a terminal that performs processing related to the payment and receiving information on the first code information and the time based on the processing related to the payment performed based on the first code information; and a process of payment based on the first expiration date associated with the received first code information and the time based on the processing related to the payment.
<法的事項の遵守>
本明細書に記載の開示は、通信の秘密など、本開示の実施に必要な実施国の法的事項遵守を前提とすることに留意されたい。
<Compliance with legal matters>
It should be noted that the disclosures set forth herein are subject to compliance with the laws of the country of implementation, such as communications privacy, as required for the implementation of the disclosures.
本開示に係る情報処理方法等を実施するための実施形態について、図面を参照して説明する。 Embodiments for implementing the information processing method and the like according to the present disclosure will be described with reference to the drawings.
[システム構成]
図1は、本開示の一実施形態に係る通信システム1の構成の一例を示す図である。
図1に開示されるように、通信システム1では、ネットワーク30を介してサーバ10と、端末20(端末20A,端末20B,端末20C,・・・)と、店舗POSシステム40とが接続される。
[System configuration]
FIG. 1 is a diagram illustrating an example of a configuration of a communication system 1 according to an embodiment of the present disclosure.
As shown in FIG. 1, in the communication system 1, a server 10, terminals 20 (terminal 20A, terminal 20B, terminal 20C, . . . ), and a store POS system 40 are connected via a network 30.
サーバ10は、ネットワーク30を介してユーザが所有する端末20に、端末20間でのメッセージ等を含むコンテンツの送受信を実現するサービスを提供する。また、サーバ10は、端末20と通信を行って電子決済(限定ではなく、決済の一例)を実現するサービス(以下、「決済サービス」と称する。)を提供する。なお、ネットワーク30に接続される端末20の数は限定されない。 The server 10 provides a service to enable users' terminals 20 to send and receive content, including messages, between terminals 20 via the network 30. The server 10 also provides a service (hereinafter referred to as a "payment service") that communicates with the terminals 20 to enable electronic payments (an example of payment, but not limited to these). There is no limit to the number of terminals 20 that can be connected to the network 30.
ネットワーク30は、1以上の端末20と、1以上のサーバ10と、1以上の店舗POSシステム40とを接続する役割を担う。すなわち、ネットワーク30は、上記の各種の装置が接続した後、データを送受信することができるように接続経路を提供する通信網を意味する。 The network 30 serves to connect one or more terminals 20, one or more servers 10, and one or more store POS systems 40. In other words, the network 30 refers to a communications network that provides connection paths so that the various devices mentioned above can connect and send and receive data.
ネットワーク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を含むことができる。 One or more portions of network 30 may or may not be a wired network or a wireless network. Network 30 may include, by way of example and not limitation, an ad hoc network, an intranet, an extranet, a virtual private network (VPN), a local area network (LAN), a wireless LAN (WLAN), a wide area network (WAN), a wireless WAN (WWAN), a metropolitan area network (MAN), a portion of the Internet, a portion of the Public Switched Telephone Network (PSTN), a cellular network, integrated service digital networks (ISDN), wireless LAN, long term evolution (LTE), code division multiple access (CDMA), Bluetooth (registered trademark), satellite communications, etc., or a combination of two or more thereof. Network 30 may include one or more networks 30.
端末20(端末20A,端末20B,端末20C,・・・)(限定ではなく、端末、情報処理装置の一例)は、各実施形態において記載する機能を実現できる情報処理端末であればどのような端末であってもよい。端末20は、限定ではなく例として、スマートフォン、携帯電話(フィーチャーフォン)、コンピュータ(限定ではなく例として、デスクトップ、ラップトップ、タブレットなど)、メディアコンピュータプラットホーム(限定ではなく例として、ケーブル、衛星セットトップボックス、デジタルビデオレコーダ)、ハンドヘルドコンピュータデバイス(限定ではなく例として、PDA・(personal digital assistant)、電子メールクライアントなど)、ウェアラブル端末(メガネ型デバイス、時計型デバイスなど)、または他種のコンピュータ、またはコミュニケーションプラットホームを含む。また、端末20は情報処理端末と表現されてもよい。 Terminal 20 (terminal 20A, terminal 20B, terminal 20C, ...) (not limited to, examples of terminals or information processing devices) may be any information processing terminal capable of implementing the functions described in each embodiment. Terminal 20 includes, but is not limited to, smartphones, mobile phones (feature phones), computers (not limited to, for example, desktops, laptops, tablets, etc.), media computer platforms (not limited to, for example, cable or satellite set-top boxes, digital video recorders, etc.), handheld computing devices (not limited to, for example, personal digital assistants (PDAs), email clients, etc.), wearable devices (glasses-type devices, watch-type devices, etc.), or other types of computers or communication platforms. Terminal 20 may also be referred to as an information processing terminal.
端末20A、端末20Bおよび端末20Cの構成は基本的には同一であるため、以下の説明においては、端末20について説明する。また、必要に応じて、ユーザXが利用する端末を端末20Xと表現し、ユーザXまたは端末20Xに対応付けられた、所定のサービスにおけるユーザ情報をユーザ情報Xと表現する。なお、ユーザ情報とは、所定のサービスにおいてユーザが利用するアカウントに対応付けられたユーザの情報である。ユーザ情報は、限定ではなく例として、ユーザにより入力される、または、所定のサービスにより付与される、ユーザの名前、ユーザのアイコン画像、ユーザの年齢、ユーザの性別、ユーザの住所、ユーザの趣味趣向、ユーザの識別子などのユーザに対応付けられた情報を含み、これらのいずれか一つまたは、組み合わせであってもよいし、そうでなくてもよい。 Because terminals 20A, 20B, and 20C are basically configured the same, the following description will focus on terminal 20. Where necessary, the terminal used by user X will be referred to as terminal 20X, and user information for a specified service associated with user X or terminal 20X will be referred to as user information X. User information is user information associated with the account used by the user for a specified service. User information includes, by way of example and not limitation, information associated with the user, such as the user's name, user icon image, user age, user gender, user address, user hobbies and interests, and user identifier, which is input by the user or assigned by the specified service, and may be any one or a combination of these.
サーバ10(限定ではなく、サーバ、情報処理装置、情報管理装置の一例)は、端末20に対して、所定のサービスを提供する機能を備える。サーバ10は、各実施形態において記載する機能を実現できる情報処理装置であればどのような装置であってもよい。サーバ10は、限定ではなく例として、サーバ装置、コンピュータ(限定ではなく例として、デスクトップ、ラップトップ、タブレットなど)、メディアコンピュータプラットホーム(限定ではなく例として、ケーブル、衛星セットトップボックス、デジタルビデオレコーダ)、ハンドヘルドコンピュータデバイス(限定ではなく例として、PDA、電子メールクライアントなど)、あるいは他種のコンピュータ、またはコミュニケーションプラットホームを含む。また、サーバ10は情報処理装置と表現されてもよい。サーバ10と端末20とを区別する必要がない場合は、サーバ10と端末20とは、それぞれ情報処理装置と表現されてもよいし、されなくてもよい。 The server 10 (which is an example, but not limited to, of a server, information processing device, or information management device) has the function of providing a predetermined service to the terminal 20. The server 10 may be any information processing device capable of implementing the functions described in each embodiment. Examples of the server 10 include, but are not limited to, a server device, a computer (such as, but not limited to, a desktop, laptop, or tablet), a media computer platform (such as, but not limited to, a cable or satellite set-top box or digital video recorder), a handheld computer device (such as, but not limited to, a PDA or email client), or other types of computers or communication platforms. The server 10 may also be referred to as an information processing device. If there is no need to distinguish between the server 10 and the terminal 20, the server 10 and the terminal 20 may or may not each be referred to as an information processing device.
以下説明する実施形態では、サーバ10は、決済アプリケーションによる決済サービスを提供する機能を有していることとして説明する。 In the embodiment described below, the server 10 is described as having the function of providing payment services using a payment application.
店舗POSシステム40は、サーバ10を運用する事業者と提携している店舗に導入されて使用されるPOSシステムである。
この店舗POSシステム40には、限定ではなく例として、店舗コードリーダ装置50と、コードレジ60と、店舗サーバ70とが含まれる。
The store POS system 40 is a POS system that is introduced and used in a store that is affiliated with the business that operates the server 10 .
The store POS system 40 includes, by way of example and not limitation, a store code reader device 50, a code register 60, and a store server 70.
[各装置のハードウェア(HW)構成]
通信システム1に含まれる各装置のHW構成について説明する。
[Hardware (HW) configuration of each device]
The HW configuration of each device included in the communication system 1 will be described.
(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等、個々の構成要素、または複数の構成要素を取り外すような構成であってもよいし、そうでなくてもよい。
(1) HW Configuration of Terminal FIG. 1 shows an example of the HW configuration of the terminal 20.
The terminal 20 includes a control unit 21 (CPU: central processing unit), a memory unit 28, a communication I/F 22 (interface), an input/output unit 23, a display unit 24, a microphone 25, a speaker 26, a camera 27, a clock unit 29A, and a position calculation information detection unit 29B. The HW components of the terminal 20 are connected to each other via a bus B, for example and not as a limitation. It is not essential that the HW configuration of the terminal 20 includes all of the components. For example and not as a limitation, the terminal 20 may or may not be configured such that individual components, such as the microphone 25, the camera 27, or multiple components, are detachable.
通信I/F22は、ネットワーク30を介して各種データの送受信を行う。通信は、有線、無線のいずれで実行されてもよく、互いの通信が実行できるのであれば、どのような通信プロトコルを用いてもよい。通信I/F22は、ネットワーク30を介して、サーバ10等の各種装置との通信を実行する機能を有する。通信I/F22は、各種データを制御部21からの指示に従って、サーバ10等の各種装置に送信する。また、通信I/F22は、サーバ10等の各種装置から送信された各種データを受信し、制御部21に伝達する。また、通信I/F22を単に通信部と表現する場合もある。また、通信I/F22が物理的に構造化された回路で構成される場合には、通信回路と表現する場合もある。 The communication I/F 22 sends and receives various data via the network 30. Communication may be performed either wired or wirelessly, and any communication protocol may be used as long as mutual communication is possible. The communication I/F 22 has the function of communicating with various devices, such as the server 10, via the network 30. The communication I/F 22 transmits various data to various devices, such as the server 10, in accordance with instructions from the control unit 21. The communication I/F 22 also receives various data transmitted from various devices, such as the server 10, and transmits it to the control unit 21. The communication I/F 22 may also be simply referred to as a communication unit. Furthermore, if the communication I/F 22 is configured as a physically structured circuit, it may also be referred to as a communication circuit.
入出力部23は、端末20に対する各種操作を入力する装置、および、端末20で処理された処理結果を出力する装置を含む。入出力部23は、入力部と出力部が一体化していてもよいし、入力部と出力部に分離していてもよいし、そうでなくてもよい。 The input/output unit 23 includes a device for inputting various operations to the terminal 20 and a device for outputting the results of processing performed by the terminal 20. The input/output unit 23 may be an integrated input unit and an output unit, or may be separate input and output units, or may not be so.
入力部は、ユーザからの入力を受け付けて、入力に係る情報を制御部21に伝達できる全ての種類の装置のいずれかまたはその組み合わせにより実現される。入力部は、限定ではなく例として、タッチパネル、タッチディスプレイ、キーボード等のハードウェアキーや、マウス等のポインティングデバイス、カメラ(動画像を介した操作入力)、マイク(音声による操作入力)を含む。 The input unit is realized by any one or combination of devices of any type that can accept input from a user and transmit information related to the input to the control unit 21. Examples of input units include, but are not limited to, hardware keys such as a touch panel, touch display, and keyboard, pointing devices such as a mouse, a camera (for inputting operations via moving images), and a microphone (for inputting operations via voice).
出力部は、制御部21で処理された処理結果を出力することができる全ての種類の装置のいずれかまたはその組み合わせにより実現される。出力部は、限定ではなく例として、 タッチパネル、タッチディスプレイ、スピーカ(音声出力)、レンズ(限定ではなく例として3D(three dimensions)出力や、ホログラム出力)、プリンターなどを含む。 The output unit may be any one or a combination of any type of device capable of outputting the results of processing performed by the control unit 21. Examples of output units include, but are not limited to, touch panels, touch displays, speakers (audio output), lenses (for example, but not limited to, 3D (three dimensions) output and hologram output), printers, etc.
表示部24は、フレームバッファに書き込まれた表示データに従って、表示することができる全ての種類の装置のいずれかまたはその組み合わせにより実現される。表示部24は、限定ではなく例として、タッチパネル、タッチディスプレイ、モニタ(限定ではなく例として、液晶ディスプレイやOELD(organic electroluminescence display))、ヘッドマウントディスプレイ(HDM:Head Mounted Display)、プロジェクションマッピング、ホログラム、空気中など(真空であってもよいし、そうでなくてもよい)に画像やテキスト情報等を表示可能な装置を含む。なお、これらの表示部24は、3Dで表示データを表示可能であってもよいし、そうでなくてもよい。 The display unit 24 is realized by any one of or a combination of any type of device capable of displaying according to the display data written to the frame buffer. Examples of the display unit 24 include, but are not limited to, touch panels, touch displays, monitors (such as, but not limited to, liquid crystal displays and organic electroluminescence displays (OLEDs)), head-mounted displays (HDMs), projection mapping, holograms, and devices capable of displaying images, text information, etc. in air (which may or may not be a vacuum). Note that these display units 24 may or may not be capable of displaying display data in 3D.
入出力部23がタッチパネルの場合、入出力部23と表示部24とは、略同一の大きさおよび形状で対向して配置されていてもよい。 If the input/output unit 23 is a touch panel, the input/output unit 23 and the display unit 24 may be arranged facing each other and have approximately the same size and shape.
時計部29Aは、端末20の内蔵時計であり、時刻情報(計時情報)を出力する。時計部29Aは、限定ではなく例として、水晶発振器を利用したクロック等を有して構成される。時計部29Aは、限定ではなく例として、計時部や時刻情報検出部と表現することもできる。 The clock unit 29A is a built-in clock of the terminal 20 and outputs time information (timekeeping information). The clock unit 29A is configured, for example and without limitation, with a clock that uses a quartz oscillator. The clock unit 29A can also be referred to, for example and without limitation, as a timekeeping unit or a time information detection unit.
なお、時計部29Aは、NITZ(Network Identity and Time Zone)規格等を適用したクロックを有していてもよいし、有していなくてもよい。 Note that the clock unit 29A may or may not have a clock that conforms to the NITZ (Network Identity and Time Zone) standard or the like.
位置算出用情報検出部29Bは、制御部21が自己の端末20の位置を算出(測定)するために必要な情報(以下、「位置算出用情報」と称する。)を検出(計測)する機能部である。位置算出用情報検出部29Bは、限定ではなく例として、位置算出用センサ部と表現することもできる。 The position calculation information detection unit 29B is a functional unit that detects (measures) information (hereinafter referred to as "position calculation information") necessary for the control unit 21 to calculate (measure) the position of its own terminal 20. The position calculation information detection unit 29B can also be expressed as a position calculation sensor unit, for example and without limitation.
位置算出用情報検出部29Bは、限定ではなく例として、GPS(Global Positioning System)等の衛星測位システムを利用して端末20の位置を算出するためのセンサやユニットである衛星測位センサ(衛星測位ユニット)や、慣性航法システムを利用して端末20の位置を算出するためのセンサやユニットである慣性計測センサ(慣性計測ユニット(IMU(Inertial Measurement Unit)))等を含む。 The position calculation information detection unit 29B includes, by way of example and not limitation, a satellite positioning sensor (satellite positioning unit), which is a sensor or unit for calculating the position of the terminal 20 using a satellite positioning system such as GPS (Global Positioning System), and an inertial measurement sensor (inertial measurement unit (IMU)), which is a sensor or unit for calculating the position of the terminal 20 using an inertial navigation system.
衛星測位ユニットは、限定ではなく例として、不図示のアンテナで受信される測位用衛星から発信されている測位用衛星信号を含むRF(Radio Frequency)信号をデジタル信号に変換するRF受信回路や、RF受信回路から出力されるデジタル信号に対して相関演算処理等を行って測位用衛星信号を捕捉し、測位用衛星信号から取り出した衛星軌道データや時刻データ等の情報を、位置算出用情報として出力するベースバンド処理回路等を有する。 The satellite positioning unit includes, by way of example and not limitation, an RF receiving circuit that converts RF (Radio Frequency) signals, including positioning satellite signals transmitted from positioning satellites and received by an antenna (not shown), into digital signals, and a baseband processing circuit that performs correlation calculations on the digital signals output from the RF receiving circuit to capture the positioning satellite signals, and outputs information such as satellite orbit data and time data extracted from the positioning satellite signals as information for position calculation.
慣性計測ユニットは、慣性航法演算によって端末20の位置を算出するために必要な情報を検出するセンサである慣性センサを有する。慣性センサには、限定ではなく例として、3軸の加速度センサや3軸のジャイロセンサが含まれ、加速度センサによって検出された加速度と、ジャイロセンサによって検出された角速度とを、位置算出用情報として出力する。 The inertial measurement unit has an inertial sensor that detects information necessary to calculate the position of the terminal 20 using inertial navigation calculations. Examples of inertial sensors include, but are not limited to, a three-axis acceleration sensor and a three-axis gyro sensor, and output the acceleration detected by the acceleration sensor and the angular velocity detected by the gyro sensor as information for position calculation.
制御部21は、プログラム内に含まれたコードまたは命令によって実現する機能を実行するために物理的に構造化された回路を有し、限定ではなく例として、ハードウェアに内蔵されたデータ処理装置により実現される。そのため、制御部21は、制御回路と表現されてもよいし、されなくてもよい。 The control unit 21 has circuits physically structured to execute the functions realized by the code or instructions contained in the program, and is realized, for example and without limitation, by a data processing device built into hardware. As such, the control unit 21 may or may not be described as a control circuit.
制御部21は、限定ではなく例として、中央処理装置(CPU)、マイクロプロセッサ(microprocessor)、プロセッサコア(processor core)、マルチプロセッサ(multiprocessor)、ASIC(application-specific integrated circuit)、FPGA(field programmable gate array)を含む。 The control unit 21 may include, by way of example and not limitation, a central processing unit (CPU), a microprocessor, a processor core, a multiprocessor, an application-specific integrated circuit (ASIC), or a field programmable gate array (FPGA).
記憶部28は、端末20が動作するうえで必要とする各種プログラムや各種データを記憶する機能を有する。記憶部28は、限定ではなく例として、HDD(hard disk drive)、SSD(solid state drive)、フラッシュメモリ、RAM(random access memory)、ROM(read only memory)など各種の記憶媒体を含む。また、記憶部28は、メモリ(memory)と表現されてもよいし、されなくてもよい。 The storage unit 28 has the function of storing various programs and data required for the operation of the terminal 20. The storage unit 28 includes, but is not limited to, various storage media such as a hard disk drive (HDD), a solid state drive (SSD), flash memory, random access memory (RAM), and read-only memory (ROM). Furthermore, the storage unit 28 may or may not be referred to as memory.
端末20は、プログラムPを記憶部28に記憶し、このプログラムPを実行することで、制御部21が、制御部21に含まれる各部としての処理を実行する。つまり、記憶部28に記憶されるプログラムPは、端末20に、制御部21が実行する各機能を実現させる。また、このプログラムPは、プログラムモジュールと表現されてもよいし、されなくてもよい。 The terminal 20 stores the program P in the memory unit 28, and by executing this program P, the control unit 21 executes the processing of each unit included in the control unit 21. In other words, the program P stored in the memory unit 28 causes the terminal 20 to realize each function executed by the control unit 21. Furthermore, this program P may or may not be expressed as a program module.
マイク25は、音声データの入力に利用される。スピーカ26は、音声データの出力に利用される。カメラ27は、動画像データの取得に利用される。 The microphone 25 is used to input audio data. The speaker 26 is used to output audio data. The camera 27 is used to acquire video data.
(2)サーバのHW構成
図1には、サーバ10のHW構成の一例を示している。
サーバ10は、制御部11(CPU)、記憶部15、通信I/F14(インタフェース)、入出力部12、ディスプレイ13、時計部19を備える。サーバ10のHWの各構成要素は、限定ではなく例として、バスBを介して相互に接続される。なお、サーバ10のHWは、サーバ10のHWの構成として、全ての構成要素を含むことは必須ではない。限定ではなく例として、サーバ10のHWは、ディスプレイ13を取り外すような構成であってもよいし、そうでなくてもよい。
(2) HW Configuration of Server FIG. 1 shows an example of the HW configuration of the server 10. As shown in FIG.
The server 10 includes a control unit 11 (CPU), a storage unit 15, a communication I/F 14 (interface), an input/output unit 12, a display 13, and a clock unit 19. The components of the HW of the server 10 are connected to each other via a bus B, for example and not as a limitation. Note that the HW of the server 10 does not necessarily have to include all the components as a configuration of the HW of the server 10. For example and not as a limitation, the HW of the server 10 may or may not be configured such that the display 13 is detachable.
制御部11は、プログラム内に含まれたコードまたは命令によって実現する機能を実行するために物理的に構造化された回路を有し、限定ではなく例として、ハードウェアに内蔵されたデータ処理装置により実現される。 The control unit 11 has circuits physically structured to execute the functions realized by the code or instructions contained in the program, and is realized, for example but not limited to, by a data processing device built into hardware.
制御部11は、代表的には中央処理装置(CPU)、であり、その他にマイクロプロセッサ、プロセッサコア、マルチプロセッサ、ASIC、FPGAであってもよいし、そうでなくてもよい。本開示において、制御部11は、これらに限定されない。 The control unit 11 is typically a central processing unit (CPU), but may also be a microprocessor, processor core, multiprocessor, ASIC, or FPGA, or may not be one of these. In this disclosure, the control unit 11 is not limited to these.
記憶部15は、サーバ10が動作するうえで必要とする各種プログラムや各種データを記憶する機能を有する。記憶部15は、HDD、SSD、フラッシュメモリなど各種の記憶媒体により実現される。ただし、本開示において、記憶部15は、これらに限定されない。また、記憶部15は、メモリ(memory)と表現されてもよいし、されなくてもよい。 The storage unit 15 has the function of storing various programs and data required for the operation of the server 10. The storage unit 15 is realized by various storage media such as an HDD, SSD, or flash memory. However, in this disclosure, the storage unit 15 is not limited to these. Furthermore, the storage unit 15 may or may not be referred to as memory.
通信I/F14は、ネットワーク30を介して各種データの送受信を行う。通信は、有線、無線のいずれで実行されてもよく、互いの通信が実行できるのであれば、どのような通信プロトコルを用いてもよい。通信I/F14は、ネットワーク30を介して、端末20等の各種装置との通信を実行する機能を有する。通信I/F14は、各種データを制御部11からの指示に従って、端末20等の各種装置に送信する。また、通信I/F14は、端末20等の各種装置から送信された各種データを受信し、制御部11に伝達する。また、通信I/F14を単に通信部と表現する場合もある。また、通信I/F14が物理的に構造化された回路で構成される場合には、通信回路と表現する場合もある。 The communication I/F 14 sends and receives various data via the network 30. Communication may be performed either wired or wirelessly, and any communication protocol may be used as long as mutual communication is possible. The communication I/F 14 has the function of communicating with various devices such as the terminal 20 via the network 30. The communication I/F 14 transmits various data to various devices such as the terminal 20 in accordance with instructions from the control unit 11. The communication I/F 14 also receives various data transmitted from various devices such as the terminal 20 and transmits it to the control unit 11. The communication I/F 14 may also be simply referred to as a communication unit. If the communication I/F 14 is configured as a physically structured circuit, it may also be referred to as a communication circuit.
入出力部12は、サーバ10に対する各種操作を入力する装置により実現される。入出力部12は、ユーザからの入力を受け付けて、入力に係る情報を制御部11に伝達できる全ての種類の装置のいずれかまたはその組み合わせにより実現される。入出力部12は、代表的にはキーボード等に代表されるハードウェアキーや、マウス等のポインティングデバイスで実現される。なお、入出力部12、限定ではなく例として、タッチパネルやカメラ(動画像を介した操作入力)、マイク(音声による操作入力)を含んでいてもよいし、そうでなくてもよい。ただし、本開示において、入出力部12は、これらに限定されない。 The input/output unit 12 is realized by a device that inputs various operations to the server 10. The input/output unit 12 is realized by any one or combination of all types of devices that can accept input from a user and transmit information related to the input to the control unit 11. The input/output unit 12 is typically realized by hardware keys such as a keyboard, or a pointing device such as a mouse. Note that the input/output unit 12 may or may not include, for example and without limitation, a touch panel, a camera (for inputting operations via video images), or a microphone (for inputting operations via voice). However, in the present disclosure, the input/output unit 12 is not limited to these.
ディスプレイ13は、代表的にはモニタ(限定ではなく例として、液晶ディスプレイやOELD(organic electroluminescence display))で実現される。なお、ディスプレイ13は、ヘッドマウントディスプレイ(HDM)などであってもよいし、そうでなくてもよい。なお、これらのディスプレイ13は、3Dで表示データを表示可能であってもよいし、そうでなくてもよい。本開示において、ディスプレイ13は、これらに限定されない。 The display 13 is typically realized by a monitor (for example, but not limited to, a liquid crystal display or an organic electroluminescence display (OELD)). The display 13 may or may not be a head-mounted display (HDM) or the like. These displays 13 may or may not be capable of displaying display data in 3D. In the present disclosure, the display 13 is not limited to these.
時計部19は、サーバ10の内蔵時計であり、時刻情報(計時情報)を出力する。時計部19は、限定ではなく例として、ハードウェアクロックとしてのRTC(Real Time Clock)やシステムクロック等を有して構成される。時計部19は、限定ではなく例として、計時部や時刻情報検出部と表現することもできる。 The clock unit 19 is a built-in clock of the server 10 and outputs time information (timekeeping information). The clock unit 19 is configured to include, for example and without limitation, an RTC (Real Time Clock) as a hardware clock, a system clock, etc. The clock unit 19 can also be referred to as, for example and without limitation, a timekeeping unit or a time information detection unit.
(3)店舗POSのシステム構成
図2には、店舗POSシステム40のシステム構成の一例を示している。
店舗POSシステム40は、サーバ10を運用する事業者と提携している店舗に導入されて使用されるPOSシステムであり、限定ではなく例として、店舗コードリーダ装置50と、コードレジ60と、店舗サーバ70とを含む。
(3) System Configuration of Store POS System FIG. 2 shows an example of the system configuration of the store POS system 40. As shown in FIG.
The store POS system 40 is a POS system that is installed and used in a store that is affiliated with the business that operates the server 10, and includes, by way of example and not limitation, a store code reader device 50, a code register 60, and a store server 70.
店舗コードリーダ装置50は、POS通信I/F57(限定ではなく例として、店舗内の有線通信I/Fや無線通信I/F)によってコードレジ60や店舗サーバ70と通信接続され、コードレジ60での会計の際に、端末20の表示部24に表示される端末表示用コード画像を読み取る。そして、端末表示用コード画像を読み取ったことに基づいて、決済要求情報を通信I/F54によってサーバ10に送信し、サーバ10で決済が行われた後、決済結果に関する情報(例えば、後述する店舗用決済完了通知)を通信I/F54によってサーバ10から受信する。 The store code reader device 50 is connected to the code register 60 and store server 70 via a POS communication I/F 57 (for example, but not limited to, a wired communication I/F or wireless communication I/F within the store), and reads the terminal display code image displayed on the display unit 24 of the terminal 20 during a transaction at the code register 60. Based on the terminal display code image read, it then sends payment request information to the server 10 via the communication I/F 54, and after the payment is made on the server 10, it receives information regarding the payment result (for example, a store payment completion notification, described below) from the server 10 via the communication I/F 54.
店舗コードリーダ装置50は、限定ではなく例として、制御部51と、入出力部52と、表示部53と、通信I/F54と、記憶部55と、音出力部56と、POS通信I/F57と、コードリーダ58、時計部59とを有する。 The store code reader device 50 includes, by way of example and not limitation, a control unit 51, an input/output unit 52, a display unit 53, a communication I/F 54, a memory unit 55, a sound output unit 56, a POS communication I/F 57, a code reader 58, and a clock unit 59.
コードリーダ58は、二次元コードを読み取るためのコードリーダであり、本明細書では、端末20の表示部24に表示され、端末20のユーザによって提示される二次元コード(例えばQRコード(登録商標))としての端末表示用コードを読み取るための二次元コードリーダ(例えばQRコードリーダ)を含む。 The code reader 58 is a code reader for reading two-dimensional codes, and in this specification includes a two-dimensional code reader (e.g., a QR code reader) for reading a terminal display code such as a two-dimensional code (e.g., a QR code (registered trademark)) displayed on the display unit 24 of the terminal 20 and presented by the user of the terminal 20.
コードレジ60は、限定ではなく例として、POS通信I/F57によって店舗コードリーダ装置50や店舗サーバ70と通信接続され、店舗コードリーダ装置50がサーバ10から受信した店舗用決済完了通知に基づいて、販売した商品の総額や、端末20のユーザの電子貨幣の残高等の情報を印字したレシートを発行する。また、限定ではなく例として、コードレジ60と一体として、またはコードレジ60と別体として設けられ、客側に表示面が向けられたディスプレイを構成するようにしてもよい。コードレジ60は、決済アプリケーションに対応可能に構成されたレジであり、決済アプリケーション対応の据置端末と言うこともできる。 By way of example and not limitation, the code register 60 is communicatively connected to the store code reader device 50 and store server 70 via the POS communication I/F 57, and issues a receipt on which information such as the total amount of the items sold and the electronic currency balance of the user of the terminal 20 is printed, based on the store payment completion notification received by the store code reader device 50 from the server 10. Also, by way of example and not limitation, the code register 60 may be provided integrally with or separately from the code register 60, forming a display with its display surface facing the customer. The code register 60 is a cash register configured to be compatible with payment applications, and can also be referred to as a payment application-compatible stationary terminal.
店舗サーバ70は、限定ではなく例として、自店舗に関する店舗情報や、自店舗で販売される商品に関する情報や自店舗で提供されるサービスに関する情報、自店舗での商品の販売やサービスの提供に伴う売上げに関する情報等の各種の情報を管理する。店舗サーバ70は、POS通信I/F57によって店舗コードリーダ装置50やコードレジ60と通信可能に構成されているとともに、ネットワーク30を介してサーバ10等の外部装置と通信可能に構成されている。 The store server 70 manages various types of information, such as, but not limited to, store information about the store itself, information about products sold at the store, information about services provided at the store, and information about sales revenue from the sale of products and the provision of services at the store. The store server 70 is configured to be able to communicate with the store code reader device 50 and code register 60 via the POS communication I/F 57, and is also configured to be able to communicate with external devices such as the server 10 via the network 30.
なお、店舗サーバ70は、必ずしも店舗コードリーダ装置50と直接的に通信可能に構成されている必要はなく、コードレジ60を介して店舗コードリーダ装置50と通信可能に構成されていてもよい。例えば、店舗コードリーダ装置50がサーバ10から受信した店舗用決済完了通知はコードレジ60に送られ、その後、コードレジ60から店舗サーバ70に送られるようにするなどすることもできる。 The store server 70 does not necessarily need to be configured to be able to communicate directly with the store code reader device 50; it may be configured to be able to communicate with the store code reader device 50 via the code register 60. For example, the store payment completion notification received by the store code reader device 50 from the server 10 can be sent to the code register 60, and then sent from the code register 60 to the store server 70.
(4)その他
サーバ10は、プログラムPを記憶部15に記憶し、このプログラムPを実行することで、制御部11が、制御部11に含まれる各部としての処理を実行する。つまり、記憶部15に記憶されるプログラムPは、サーバ10に、制御部11が実行する各機能を実現させる。このプログラムPは、プログラムモジュールと表現されてもよいし、されなくてもよい。
他の装置についても同様である。
(4) Others The server 10 stores the program P in the storage unit 15, and by executing this program P, the control unit 11 executes the processes of each unit included in the control unit 11. In other words, the program P stored in the storage unit 15 causes the server 10 to realize each function executed by the control unit 11. This program P may or may not be expressed as a program module.
The same applies to other devices.
本開示の各実施形態においては、端末20および/またはサーバ10のCPUがプログラムPを実行することにより、実現するものとして説明する。
他の装置についても同様である。
In each embodiment of the present disclosure, the description will be given assuming that the CPU of the terminal 20 and/or the server 10 executes the program P to realize the present invention.
The same applies to other devices.
なお、端末20の制御部21、および/または、サーバ10の制御部11は、制御回路を有するCPUだけでなく、集積回路(IC(Integrated Circuit)チップ、LSI(Large Scale Integration))等に形成された論理回路(ハードウェア)や専用回路によって各処理を実現してもよいし、そうでなくてもよい。また、これらの回路は、1または複数の集積回路により実現されてよく、各実施形態に示す複数の処理を1つの集積回路により実現されることとしてもよいし、そうでなくてもよい。また、LSIは、集積度の違いにより、VLSI、スーパーLSI、ウルトラLSIなどと呼称されることもある。そのため、制御部21は、制御回路と表現されてもよいし、されなくてもよい。
他の装置についても同様である。
The control unit 21 of the terminal 20 and/or the control unit 11 of the server 10 may or may not realize each process not only by a CPU having a control circuit, but also by a logic circuit (hardware) formed in an integrated circuit (IC (Integrated Circuit) chip, LSI (Large Scale Integration)), or a dedicated circuit. These circuits may be realized by one or more integrated circuits, and multiple processes shown in each embodiment may or may not be realized by a single integrated circuit. LSIs are sometimes referred to as VLSIs, super LSIs, ultra LSIs, etc., depending on the level of integration. Therefore, the control unit 21 may or may not be referred to as a control circuit.
The same applies to other devices.
また、本開示の各実施形態のプログラムP(限定ではなく例として、ソフトウェアプログラム、コンピュータプログラム、またはプログラムモジュール)は、コンピュータに読み取り可能な記憶媒体に記憶された状態で提供されてもよいし、されなくてもよい。 記憶媒体は、「一時的でない有形の媒体」に、プログラムPを記憶可能である。また、プログラムPは、本開示の各実施形態の機能の一部を実現するためのものであってもよいし、そうでなくてもよい。さらに、本開示の各実施形態の機能を記憶媒体にすでに記録されているプログラムPとの組み合わせで実現できるもの、いわゆる差分ファイル(差分プログラム)であってもよいし、そうでなくてもよい。 Furthermore, the program P (which may be, for example and not by way of limitation, a software program, computer program, or program module) of each embodiment of the present disclosure may or may not be provided in a state stored on a computer-readable storage medium. The storage medium may store the program P on a "non-transitory tangible medium." Furthermore, the program P may or may not be intended to realize part of the functions of each embodiment of the present disclosure. Furthermore, the program P may or may not be a so-called differential file (differential program) that can realize the functions of each embodiment of the present disclosure in combination with a program P already recorded on a storage medium.
記憶媒体は、1つまたは複数の半導体ベースの、または他の集積回路(IC)(限定ではなく例として、フィールド・プログラマブル・ゲート・アレイ(FPGA)または特定用途向けIC(ASIC)など)、ハード・ディスク・ドライブ(HDD)、ハイブリッド・ハード・ドライブ(HHD)、光ディスク、光ディスクドライブ(ODD)、光磁気ディスク、光磁気ドライブ、フロッピィ・ディスケット、フロッピィ・ディスク・ドライブ(FDD)、磁気テープ、固体ドライブ(SSD)、RAMドライブ、セキュア・デジタル・カード、またはドライブ、任意の他の適切な記憶媒体、またはこれらの2つ以上の適切な組合せを含むことができる。記憶媒体は、適切な場合、揮発性、不揮発性、または揮発性と不揮発性の組合せでよい。なお、記憶媒体はこれらの例に限られず、プログラムPを記憶可能であれば、どのようなデバイスまたは媒体であってもよい。また、記憶媒体をメモリ(memory)と表現されてもよいし、されなくてもよい。 The storage medium may include one or more semiconductor-based or other integrated circuits (ICs) (such as, by way of example and not limitation, a field programmable gate array (FPGA) or an application-specific IC (ASIC)), a hard disk drive (HDD), a hybrid hard drive (HHD), an optical disk, an optical disk drive (ODD), a magneto-optical disk, a magneto-optical drive, a floppy diskette, a floppy disk drive (FDD), a magnetic tape, a solid-state drive (SSD), a RAM drive, a secure digital card, or a drive, any other suitable storage medium, or a suitable combination of two or more thereof. The storage medium may be volatile, non-volatile, or a combination of volatile and non-volatile, as appropriate. Note that the storage medium is not limited to these examples and may be any device or medium capable of storing the program P. Furthermore, the storage medium may or may not be referred to as memory.
サーバ10および/または端末20は、記憶媒体に記憶されたプログラムPを読み出し、読み出したプログラムPを実行することによって、各実施形態に示す複数の機能部の機能を実現することができる。
他の装置についても同様である。
The server 10 and/or the terminal 20 can realize the functions of the multiple functional units shown in each embodiment by reading out the program P stored in the storage medium and executing the read out program P.
The same applies to other devices.
また、本開示のプログラムPは、プログラムを伝送可能な任意の伝送媒体(通信ネットワークや放送波等)を介して、サーバ10および/または端末20に提供されてもよいし、されなくてもよい。サーバ10および/または端末20は、限定ではなく例として、インターネット等を介してダウンロードしたプログラムPを実行することにより、各実施形態に示す複数の機能部の機能を実現する。
他の装置についても同様である。
Furthermore, the program P of the present disclosure may or may not be provided to the server 10 and/or the terminal 20 via any transmission medium capable of transmitting a program (such as a communication network or broadcast waves). For example and not by way of limitation, the server 10 and/or the terminal 20 executes the program P downloaded via the Internet or the like to realize the functions of the multiple functional units shown in each embodiment.
The same applies to other devices.
また、本開示の各実施形態は、プログラムPが電子的な伝送によって具現化されたデータ信号の形態でも実現され得る。
サーバ10および/または端末20における処理の少なくとも一部は、1以上のコンピュータにより構成されるクラウドコンピューティングにより実現されていてもよいし、そうでなくてもよい。
端末20における処理の少なくとも一部を、サーバ10により行う構成としてもよいし、そうでなくてもよい。この場合、端末20の制御部21の各機能部の処理のうち少なくとも一部の処理を、サーバ10で行う構成としてもよいし、そうでなくてもよい。
サーバ10における処理の少なくとも一部を、端末20により行う構成としてもよいし、そうでなくてもよい。この場合、サーバ10の制御部11の各機能部の処理のうち少なくとも一部の処理を、端末20で行う構成としてもよいし、そうでなくてもよい。
明示的な言及のない限り、本開示の実施形態における判定の構成は必須でなく、判定条件を満たした場合に所定の処理が動作されたり、判定条件を満たさない場合に所定の処理がされたりしてもよいし、そうでなくてもよい。
In addition, each embodiment of the present disclosure may be realized in the form of a data signal in which the program P is embodied by electronic transmission.
At least a part of the processing in the server 10 and/or the terminal 20 may or may not be realized by cloud computing configured by one or more computers.
At least a part of the processing in the terminal 20 may or may not be performed by the server 10. In this case, at least a part of the processing of each functional unit of the control unit 21 of the terminal 20 may or may not be performed by the server 10.
At least a part of the processing in the server 10 may or may not be performed by the terminal 20. In this case, at least a part of the processing of each functional unit of the control unit 11 of the server 10 may or may not be performed by the terminal 20.
Unless explicitly stated otherwise, the judgment configuration in the embodiments of the present disclosure is not essential, and a predetermined process may or may not be performed when the judgment condition is met, or when the judgment condition is not met.
なお、本開示のプログラムは、限定ではなく例として、ActionScript、JavaScript(登録商標)などのスクリプト言語、Objective-C、Java(登録商標)などのコンパイラ言語、HTML5などのマークアップ言語などを用いて実装される。 The programs disclosed herein may be implemented using, but are not limited to, scripting languages such as ActionScript and JavaScript (registered trademark), compiler languages such as Objective-C and Java (registered trademark), and markup languages such as HTML5.
また、本明細書では、適宜「通信I/Fによって」という表現を使用する。これは、装置が、限定ではなく例として、制御部(プロセッサー等)の制御に基づいて、通信I/Fを介して(通信部を介して)、各種の情報やデータを送受信することを示す。 Furthermore, the expression "through a communication I/F" is used where appropriate in this specification. This indicates, by way of example and not limitation, that a device sends and receives various information and data via a communication I/F (via a communication unit) based on the control of a control unit (e.g., a processor).
また、本明細書では、「期限」の用語は、一定の期間を示すものとして説明する。ただし、「期限」の用語に代えて、「期間」の用語を用いるようにしてもよい。
また、「期限」の用語を、期間が終了する時刻や日時(一定の時刻や一定の日時)の意味で用いるようにしてもよい。
In addition, in this specification, the term "deadline" is explained as indicating a certain period of time. However, the term "period" may be used instead of the term "deadline."
The term "deadline" may also be used to mean the time or date when a period ends (a specific time or date).
<第1実施例>
近年、ネットワークサービスに関連するアプリケーション(アプリケーションソフトウェア)として、電子貨幣による電子決済用のアプリケーション(決済アプリケーション)、電子貨幣の送金用のアプリケーション(送金アプリケーション)といったアプリケーションや、これらのアプリケーションの一部の機能または全部の機能を集約した決済アプリケーションが普及しつつあり、端末20のユーザが、これらのアプリケーションを用いて、電子貨幣に関する各種のサービスを受けることが可能になってきている。
First Example
In recent years, applications (application software) related to network services, such as applications for electronic payments using electronic currency (payment applications) and applications for transferring electronic currency (remittance applications), as well as payment applications that combine some or all of the functions of these applications, have become popular, and users of terminal 20 are now able to receive various services related to electronic currency using these applications.
以下説明する実施例は、限定ではなく例として、端末20のユーザが、端末20に記憶されて実行される決済アプリケーションを利用して、決済を行う実施例である。具体的には、オフラインにおいても決済を適切に行うことができる手法を提案する。 The embodiment described below is an example, not a limitation, in which a user of terminal 20 makes a payment using a payment application stored and executed on terminal 20. Specifically, we propose a method that allows payments to be made appropriately even offline.
以下では、決済アプリケーションによる決済サービスを提供する事業者のことを「決済サービスの事業者」と称する。なお、決済サービスの事業者は、決済アプリケーションを提供する事業者や、サーバ10の事業者と表現してもよいし、しなくてもよい。 In the following, the business providing the payment service using the payment application will be referred to as the "payment service business." Note that the payment service business may or may not be referred to as the business providing the payment application or the business of server 10.
また、以下では、決済サービスの事業者によって、サーバ10が運用・管理されることとして説明する。また、以下では、決済アプリケーションの名称を、適宜「Payment App」と称して図示・説明する。 In the following description, it is assumed that the server 10 is operated and managed by the payment service provider. In the following description, the name of the payment application will be referred to as "Payment App" where appropriate.
また、決済アプリケーションは、いわゆるメッセージングサービス(MS:Messaging Service)の機能を有さない単体のアプリケーションとしてサーバ10によって提供されるようにしてもよいし、MSの機能を有する複合的なアプリケーションとしてサーバ10によって提供されるようにしてもよい。また、メッセージングサービスには、端末20間での簡単なメッセージ等のコンテンツの送受信を可能とするインスタントメッセージングサービス(IMS:Instant Messaging Service)を含めてもよいし、含めなくてもよい。 The payment application may be provided by the server 10 as a standalone application without the functionality of a so-called messaging service (MS), or as a composite application with MS functionality. The messaging service may or may not include an instant messaging service (IMS), which enables the sending and receiving of content such as simple messages between terminals 20.
また、決済アプリケーションは、いわゆるソーシャルネットワーキングサービス(SNS:Social Networking Service)の機能を有さない単体のアプリケーションとしてサーバ10によって提供されるようにしてもよいし、SNSの機能を有する複合的なアプリケーションとしてサーバ10によって提供されるようにしてもよい。 Furthermore, the payment application may be provided by the server 10 as a standalone application that does not have the functionality of a so-called social networking service (SNS), or it may be provided by the server 10 as a composite application that has SNS functionality.
なお、MS(IMSを含む。)は、SNSの1つの形態(一形態)と考えることもできる。このため、MSとSNSとは区別してもよいし、区別しなくてもよい。 Note that MS (including IMS) can also be considered one form of SNS. Therefore, MS and SNS may or may not be distinguished.
また、決済サービスの事業者と提携している店舗を「加盟店(加盟店舗)」と称し、図1では「加盟店S1」、「加盟店S2」、・・・、のように示している。 In addition, stores that are affiliated with payment service providers are called "affiliated stores (affiliated stores)," and are shown in Figure 1 as "affiliated store S1," "affiliated store S2," etc.
また、「電子貨幣」とは、物理的貨幣と区別される電子的な貨幣であって、決済アプリケーションにおいて管理される端末20または端末20のユーザが所有する電子的な貨幣を意味し、「決済」とは、この電子貨幣を利用した電子決済を意味する。 Furthermore, "electronic currency" refers to electronic currency that is distinct from physical currency and is owned by a terminal 20 or a user of a terminal 20, and is managed by a payment application. "Payment" refers to electronic payment using this electronic currency.
なお、電子貨幣は、「電子マネー」や「デジタル通貨(デジタル貨幣)」と表現してもよいし、そのようにしなくてもよい。
また、「電子貨幣(電子マネー)」や「デジタル通貨(デジタル貨幣)」として、法定通貨を用いてもよいし、仮想通貨を用いてもよい。
また、「電子貨幣(電子マネー)」や「デジタル通貨(デジタル貨幣)」には、暗号通貨(暗号資産)を含めてもよい。
また、仮想通貨には、クーポンなどの物的貨幣を含めてもよい。
Electronic currency may or may not be expressed as "electronic money" or "digital currency (digital currency)."
Furthermore, as "electronic currency (electronic money)" or "digital currency (digital money)", legal tender or virtual currency may be used.
Furthermore, "electronic currency (electronic money)" and "digital currency (digital money)" may include cryptocurrency (crypto assets).
Virtual currency may also include physical currency such as coupons.
<決済方法>
(1)オンライン決済
まず、一態様として、オンライン決済の手法についてフローチャートを参照して説明する。
<Payment method>
(1) Online Payment First, as one aspect, a method for online payment will be described with reference to a flowchart.
以下では、「オンライン」とは、端末20がサーバ10と通信可能であることを示し、「オンライン状態」とは、このオンラインの状態を示すものとする。また、「オンライン決済」とは、オンライン状態でサーバ10によって決済が行われることを示すものとする。 In the following, "online" means that the terminal 20 is able to communicate with the server 10, and "online state" means this online state. Furthermore, "online payment" means that payment is made by the server 10 while online.
なお、以下では、端末20とサーバ10との通信は、限定ではなく例として、通信会社(通信キャリア)が設置する基地局等を介在して実現される、無線LAN通信とは異なる周波数帯を用いた第1通信方式によって実現されることとする。第1通信方式には、限定ではなく例として、パケット通信(いわゆる端末20におけるモバイルデータ通信)が含まれる。 In the following, it is assumed, by way of example and not limitation, that communication between terminal 20 and server 10 is achieved by a first communication method that uses a frequency band different from wireless LAN communication and is achieved via a base station or the like installed by a telecommunications company (communications carrier). The first communication method includes, by way of example and not limitation, packet communication (so-called mobile data communication on terminal 20).
また、通信方式として、第1通信方式とは異なる第2通信方式を用いてもよいし、そのようにしなくてもよい。第2通信方式には、限定ではなく例として、無線LAN(例えばWiFi(登録商標))が含まれる。 Furthermore, a second communication method different from the first communication method may or may not be used as the communication method. Examples of the second communication method include, but are not limited to, wireless LAN (e.g., Wi-Fi (registered trademark)).
また、第1通信方式と第2通信方式とのうちの少なくともいずれか一方の通信方式により端末20とサーバ10とが通信可能であることを「オンライン状態」と定義してもよいし、しなくてもよい。 Furthermore, the ability of the terminal 20 and the server 10 to communicate using at least one of the first and second communication methods may or may not be defined as an "online state."
図3-1は、この場合における各装置が実行する処理の流れの一例を示すフローチャートである。左側から順に、端末20の制御部21が実行する処理、店舗コードリーダ装置50の制御部51が実行する処理、サーバ10の制御部11が実行する処理の一例をそれぞれ示している。 Figure 3-1 is a flowchart showing an example of the flow of processing executed by each device in this case. From the left, it shows an example of processing executed by the control unit 21 of the terminal 20, the control unit 51 of the store code reader device 50, and the control unit 11 of the server 10.
各処理における各ステップをアルファベットの大文字と数字の組み合わせで示し、本明細書では「ステップ」の用語は省略する。
また、以下説明するフローチャートは、あくまでも本実施例における処理を例示するものであり、以下説明するフローチャートにおいて、一部のステップを実行しなくてもよいし、追加のステップを挿入してもよい。
これらは、本明細書における他のフローチャートについても同様である。
Each step in each process is indicated by a combination of an uppercase letter and a number, and the term "step" is omitted in this specification.
Furthermore, the flowcharts described below are merely examples of the processing in this embodiment, and some steps in the flowcharts described below may not be executed, or additional steps may be inserted.
The same applies to other flowcharts in this specification.
まず、制御部21は、端末表示用コードの生成を依頼するためのコード生成依頼情報を、通信I/F22によって(通信I/F22を介して)サーバ10に送信する(A110)。 First, the control unit 21 sends code generation request information to the server 10 via the communication I/F 22 to request the generation of a terminal display code (A110).
以下では、限定ではなく例として、「コード情報」とは、符号化(エンコード)等によってコード画像に格納される情報やコード画像に格納されている情報(以下、元の情報という意味で「元情報」と称する。)と、元情報が格納された「コード画像」とを含む概念として説明する。つまり、「コード情報」には、「元情報」と「コード画像」とが含まれる。
「元情報」は、「エンコード情報」や「格納情報」等のように表現してもよいし、そのように表現しなくてもよい。
In the following, by way of example and not limitation, "code information" will be described as a concept including information stored in a code image by encoding or the like (hereinafter referred to as "original information" in the sense of the original information), and the "code image" in which the original information is stored. In other words, "code information" includes "original information" and "code image."
The "original information" may or may not be expressed as "encoded information" or "stored information."
また、以下では、限定ではなく例として、「コード」といった場合、「コード情報」と実質的に同じ意味合いであるものとする。 Furthermore, in the following, when we refer to "code" as an example and not as a limitation, we will assume that it has substantially the same meaning as "code information."
ただし、これらの定義はあくまでも一例に過ぎず、これらに限定されるものではない。
例えば、「コード情報」の用語を「元情報」の意味で用いるようにしてもよいし、そのようにしなくてもよい。
また、例えば、「コード」の用語を「コード画像」の意味で用いるようにしてもよいし、そのようにしなくてもよい。
However, these definitions are merely examples and are not intended to be limiting.
For example, the term "code information" may or may not be used to mean "original information."
Also, for example, the term "code" may or may not be used to mean "code image."
本実施例では、上記の元情報の一例として、サーバ10によってコード生成依頼情報の送信元の端末20毎、または端末20のユーザ毎にユニークに生成される番号であって、所定の桁数のランダムな番号である「決済用番号」を例示する。決済用番号は、端末20、または端末20のユーザと関連付けられた情報であって、サーバ10による決済に用いられる情報とも言える。 In this embodiment, an example of the above-mentioned source information is a "payment number," which is a random number of a predetermined number of digits that is uniquely generated by the server 10 for each terminal 20 that has sent the code generation request information, or for each user of the terminal 20. The payment number is information associated with the terminal 20 or the user of the terminal 20, and can also be considered information used for payment by the server 10.
以下では、コード生成依頼情報に基づきサーバ10によって生成される決済用のコードを「端末表示用コード」と称し、この端末表示用コードのコード画像を「端末表示用コード画像」と称する。 Hereinafter, the payment code generated by server 10 based on the code generation request information will be referred to as the "terminal display code," and the code image of this terminal display code will be referred to as the "terminal display code image."
詳細は後述するが、端末表示用コード画像には、上記の決済用番号が格納される。
決済用番号や端末表示用コード画像は、コード画像による決済を行うための「第1情報」の一例であり、サーバ10から送信される。
Details will be described later, but the terminal display code image stores the above-mentioned payment number.
The payment number and the terminal display code image are examples of “first information” for making a payment using a code image, and are transmitted from the server 10 .
以下では、上記の端末表示用コード画像の生成をサーバ10に依頼する情報をコード生成依頼情報とする場合を例示する。つまり、本処理では、限定ではなく例として、端末表示用コード画像の生成を端末20からサーバ10に依頼することとし、A110では、端末表示用コード画像の生成を依頼するコード生成依頼情報をサーバ10に送信する。 The following describes an example in which the code generation request information is information requesting the server 10 to generate the above-mentioned terminal display code image. In other words, in this process, by way of example and not limitation, the terminal 20 requests the server 10 to generate a terminal display code image, and A110 transmits code generation request information requesting the generation of the terminal display code image to the server 10.
また、本明細書において、「端末表示用コード」とは、決済種別「端末コード表示」での決済に使用されるコードとして説明する。
決済種別「端末コード表示」では、端末20のユーザが店舗等で支払いを行う際に、端末20に記憶されている決済アプリケーションを用いて、端末20で表示される端末表示用コード画像を店舗のコードレジ60で店員に提示する。そして、この端末表示用コード画像を店舗コードリーダ装置50等で読み取ってもらうことで決済を実現する。
端末表示用コードは、端末20のユーザによって店舗等の店員に提示されるコード(コード画像)であるため、「提示用コード」や「ユーザ提示用コード」と表現することもできる。
In addition, in this specification, the "terminal display code" is explained as a code used for payment with the payment type "terminal code display."
In the "terminal code display" payment type, when a user of the terminal 20 makes a payment at a store or the like, the user uses a payment application stored in the terminal 20 to present a terminal display code image displayed on the terminal 20 to a store clerk at the store's code register 60. The terminal display code image is then read by a store code reader device 50 or the like to complete the payment.
The terminal display code is a code (code image) that is presented by the user of the terminal 20 to a store clerk at a store or the like, and therefore can also be expressed as a "presentation code" or a "user presentation code."
A110で送信するコード生成依頼情報には、限定ではなく例として、端末20、または端末20のユーザを識別するための識別情報を含めることができる。例えば、自己の端末20を識別するための端末識別情報(例えば端末ID)、自己の端末20のユーザを識別するためのユーザ識別情報(例えばユーザID)、決済アプリケーションのアカウント情報(例えばアプリケーションID)等の情報がこれに含まれる。 The code generation request information sent by A110 may include, by way of example and not limitation, identification information for identifying the terminal 20 or the user of the terminal 20. For example, this may include terminal identification information (e.g., a terminal ID) for identifying the own terminal 20, user identification information (e.g., a user ID) for identifying the user of the own terminal 20, account information for the payment application (e.g., an application ID), etc.
通信I/F14によって端末20からコード生成依頼情報を受信すると(C110)、制御部11は、端末表示用コード生成処理を行う(C120)。 When code generation request information is received from the terminal 20 via the communication I/F 14 (C110), the control unit 11 performs a terminal display code generation process (C120).
具体的には、限定ではなく例として、所定の桁数(例えば10桁~12桁程度の桁数)のランダムな数字を発生させる手法(アルゴリズム)を用いて、所定の桁数のランダムな数字を決済用番号として発生させる。そして、限定ではなく例として、少なくとも決済用番号を元情報として含む端末表示用コード画像を生成する。より具体的には、少なくとも決済用番号をエンコード(符号化)し、図形化(画像化)して、二次元コード(例えばQRコード)の画像で表される端末表示用コード画像を生成する。また、受信したコード生成依頼情報に含まれる端末20または端末20のユーザの識別情報と、発生させた決済用番号とを関連付けて記憶部15に記憶させる。 Specifically, by way of example and not limitation, a method (algorithm) for generating random numbers of a predetermined number of digits (for example, approximately 10 to 12 digits) is used to generate a random number of digits as a payment number. Then, by way of example and not limitation, a code image for terminal display is generated that includes at least the payment number as source information. More specifically, at least the payment number is encoded and visualized to generate a code image for terminal display represented by an image of a two-dimensional code (for example, a QR code). Furthermore, identification information for the terminal 20 or the user of the terminal 20 included in the received code generation request information is associated with the generated payment number and stored in the memory unit 15.
次いで、制御部11は、生成された端末表示用コード(この例では端末表示用コード画像)を、通信I/F14によって端末20に送信する(C130)。端末20は、通信I/F22によってサーバ10から端末表示用コード(この例では端末表示用コード画像)を受信する(A130)。この場合、制御部21は、限定ではなく例として、受信された端末表示用コード画像を表示部24に表示させる。 Next, the control unit 11 transmits the generated terminal display code (in this example, a terminal display code image) to the terminal 20 via the communication I/F 14 (C130). The terminal 20 receives the terminal display code (in this example, a terminal display code image) from the server 10 via the communication I/F 22 (A130). In this case, the control unit 21, by way of example and not limitation, causes the received terminal display code image to be displayed on the display unit 24.
その後、表示部24に表示された端末表示用コード画像が、端末20のユーザによって店舗の店員等に提示されると、制御部51は、端末20の表示部24に表示された端末表示用コード画像をコードリーダ58に読み取らせる制御を行う(B150)。 After that, when the user of the terminal 20 presents the terminal display code image displayed on the display unit 24 to a store clerk or the like, the control unit 51 controls the code reader 58 to read the terminal display code image displayed on the display unit 24 of the terminal 20 (B150).
その後、制御部51は、決済サービスの事業者によって提供(配布)される、決済アプリケーションと関連付けられたアプリケーションインターフェイス(API)等を用いて通信I/F54によってサーバ10にアクセスし、少なくとも、読み取った端末表示用コード画像からデコードによって取得した決済用番号と、店舗または店舗コードリーダ装置50を識別するための識別情報(以下、「店舗識別情報」と称する。)と、決済予定の金額(以下、「決済予定金額」と称する。)とを含む決済要求情報を、通信I/F54によってサーバ10に送信する(B160)。 Then, the control unit 51 accesses the server 10 via the communication I/F 54 using an application interface (API) associated with the payment application provided (distributed) by the payment service provider, and transmits payment request information to the server 10 via the communication I/F 54, the payment request information including at least the payment number obtained by decoding the read terminal display code image, identification information for identifying the store or store code reader device 50 (hereinafter referred to as "store identification information"), and the amount to be paid (hereinafter referred to as "planned payment amount") (B160).
通信I/F14によって店舗コードリーダ装置50から決済要求情報を受信すると(C160)、制御部11は、決済処理を行う(C170)。具体的には、受信した決済要求情報に含まれる決済用番号が、端末20または端末20のユーザの識別情報と関連付けて記憶部15に記憶されているか否かを判定する。そして、記憶されている場合は「決済可能」と判定し、その決済用番号と関連付けて記憶されている識別情報から識別される端末20または端末20のユーザの電子貨幣の残高(決済アプリケーションのアプリケーションIDに関連付けられた電子貨幣の残高)(以下、単に「残高」と称する。)から決済予定金額を減算して決済する。 When payment request information is received from the store code reader device 50 via the communication I/F 14 (C160), the control unit 11 performs payment processing (C170). Specifically, it determines whether the payment number included in the received payment request information is stored in the memory unit 15 in association with the identification information of the terminal 20 or the user of the terminal 20. If it is stored, it determines that "payment is possible" and makes the payment by subtracting the planned payment amount from the electronic currency balance (electronic currency balance associated with the application ID of the payment application) (hereinafter simply referred to as "balance") of the terminal 20 or the user of the terminal 20 identified from the identification information stored in association with the payment number.
その後、制御部11は、店舗用の決済完了通知(以下、「店舗用決済完了通知」と称する。)を、通信I/F14によって店舗コードリーダ装置50に送信する(C180)。店舗用決済完了通知には、限定ではなく例として、決済が完了(成功)した旨と、決済した日時(決済日時)と、決済した金額(決済金額)等の店舗用決済情報とが含まれる。 The control unit 11 then sends a store-specific payment completion notification (hereinafter referred to as the "store-specific payment completion notification") to the store code reader device 50 via the communication I/F 14 (C180). The store-specific payment completion notification includes, by way of example and not limitation, store-specific payment information such as a notice that the payment has been completed (successful), the date and time of the payment (payment date and time), and the amount paid (payment amount).
また、制御部11は、端末用の決済完了通知(以下、「端末用決済完了通知」と称する。)を、通信I/F14によって端末20に送信する(C190)。端末用決済完了通知には、限定ではなく例として、決済が完了(成功)した旨と、決済した日時(決済日時)、決済した店舗の店舗識別情報(決済店舗識別情報)、決済した金額(決済金額)等の端末用決済情報とが含まれる。そして、制御部11は、処理を終了する。 The control unit 11 also sends a terminal-specific payment completion notification (hereinafter referred to as the "terminal-specific payment completion notification") to the terminal 20 via the communication I/F 14 (C190). The terminal-specific payment completion notification includes, by way of example and not limitation, information that the payment has been completed (successful), as well as terminal-specific payment information such as the date and time of the payment (payment date and time), store identification information for the store where the payment was made (payment store identification information), and the amount paid (payment amount). The control unit 11 then terminates processing.
なお、ここでは、サーバ10による決済が成功した場合に、店舗用決済完了通知と端末用決済完了通知とがサーバ10から送信されることとするが、残高の不足等により、サーバ10が決済を行うことができない場合がある。この場合は、決済を行うことができなかった旨の通知(例えば決済エラー通知、決済NG通知)を、店舗コードリーダ装置50と端末20とに送信するようにすればよい。
他の処理においても同様である。
Here, when the payment by the server 10 is successful, the server 10 sends a store payment completion notice and a terminal payment completion notice, but there are cases where the server 10 is unable to perform the payment due to insufficient balance, etc. In this case, it is sufficient to send a notice to the effect that the payment could not be performed (for example, a payment error notice or a payment NG notice) to the store code reader device 50 and the terminal 20.
The same applies to other processes.
通信I/F54によってサーバ10から店舗用決済完了通知を受信すると(B180)、制御部51は、処理を終了する。 When a store payment completion notification is received from the server 10 via the communication I/F 54 (B180), the control unit 51 terminates the processing.
また、通信I/F22によって端末用決済完了通知をサーバ10から受信すると、制御部21は、受信された端末用決済完了通知に基づき、決済アプリケーションのデータとして端末20で記憶している残高を更新する。また、制御部21は、決済結果を表示部24に表示させる(A190)。そして、制御部21は、処理を終了する。 Furthermore, when a terminal payment completion notification is received from the server 10 via the communication I/F 22, the control unit 21 updates the balance stored in the terminal 20 as payment application data based on the received terminal payment completion notification. The control unit 21 also causes the display unit 24 to display the payment result (A190). Then, the control unit 21 ends the processing.
図3-2は、端末20で実行される決済アプリケーションで表示されるトップ画面の一例を示す図である。
このトップ画面は、決済アプリケーションを起動した際に表示される表示画面であり、画面上部に、決済アプリケーションの名称である「Payment APP」が表示されている。その下の枠内には、残高(ここでは「3000円」)が表示されており、その横には、電子貨幣をチャージ(追加)するためのチャージボタンが表示されている。また、その下には、決済アプリケーションの各種の機能に対応する複数の機能アイコンが表示されている。
FIG. 3B is a diagram showing an example of a top screen displayed by the payment application executed on the terminal 20.
This top screen is the display screen that appears when the payment application is launched, and the name of the payment application, "Payment APP," is displayed at the top of the screen. The balance (here, "3,000 yen") is displayed in a box below it, and next to it is a charge button for charging (adding) electronic currency. Also below that, multiple function icons corresponding to various functions of the payment application are displayed.
これらの機能アイコンのうち、「コード」と示されたアイコンは、限定ではなく例として、表示部24にコード表示画面を表示させるための「コードアイコン」である。このコードアイコンが端末20のユーザによりタッチ操作されると、限定ではなく例として、端末20からサーバ10にコード生成依頼情報が送信され、サーバ10によって端末表示用コードが生成される。そして、生成された端末表示用コードがサーバ10から端末20に送信されて、図3-3に示すコード表示画面が端末20の表示部24に表示される。 Of these functional icons, the icon labeled "Code" is, by way of example and not limitation, a "code icon" for displaying a code display screen on the display unit 24. When this code icon is touched by a user of the terminal 20, by way of example and not limitation, code generation request information is sent from the terminal 20 to the server 10, and a terminal display code is generated by the server 10. The generated terminal display code is then sent from the server 10 to the terminal 20, and the code display screen shown in Figure 3-3 is displayed on the display unit 24 of the terminal 20.
図3-3は、コード表示画面の一例を示す図である。
このコード表示画面には、画面上部に「コード」の文字が表示され、その下に、決済方法と、ユーザが所有しているポイントと、そのポイントを利用して決済を行うか否かを設定するためのポイントタブとが表示されている。
FIG. 3C is a diagram showing an example of the code display screen.
This code display screen displays the word "Code" at the top of the screen, and below that are the payment method, the points the user has, and a points tab for setting whether or not to use those points to make a payment.
また、その下には、サーバ10から取得した端末表示用コードのコード画像として、バーコードで表される一次元端末表示用コード画像と、QRコードで表される二次元端末表示用コード画像QC0とが、表示画面内の異なる領域にそれぞれ表示されている。また、バーコードの下には、一例として、12桁の決済用番号が表示されている。 Furthermore, below that, as code images of the terminal display code obtained from the server 10, a one-dimensional terminal display code image represented by a barcode and a two-dimensional terminal display code image QC0 represented by a QR code are displayed in different areas of the display screen. Also, as an example, a 12-digit payment number is displayed below the barcode.
また、この例では、コード表示画面に表示される端末表示用コードには、そのコードを表示する期限(以下、「コード表示期限」と称する。)がある。 In addition, in this example, the terminal display code displayed on the code display screen has a deadline for displaying the code (hereinafter referred to as the "code display deadline").
コード表示期限は、限定ではなく例として、端末20で端末表示用コードが表示される期間である。コード表示期限は、限定ではなく例として、「端末で端末表示用コードが表示された(表示が開始された)日時からコード表示時間が経過するまでの期間」とすることができる。コード表示時間は、適宜設定変更可能であるが、限定ではなく例として「5分」とすることができる。 The code display period is, by way of example and not limitation, the period during which the terminal display code is displayed on the terminal 20. The code display period can be, by way of example and not limitation, "the period from the date and time the terminal display code is displayed (display begins) on the terminal until the code display time has elapsed." The code display time can be changed as appropriate, but, by way of example and not limitation, it can be set to "5 minutes."
そして、二次元端末表示用コード画像QC0の下には、更新のマークおよび更新の文字とともに、コード表示期限の残り時間がカウントダウン形式で表示されている。この残り時間は、端末20の時計部29Aによって計時される情報に基づき表示される。
残り時間が「0」になると、コード表示画面は閉じられ、端末表示用コードは非表示とされる。その後に端末20のユーザが決済を行いたい場合は、サーバ10から端末表示用コードを再取得することが必要となる。
Below the two-dimensional terminal display code image QC0, an update mark and the word update are displayed in countdown format along with the remaining time until the code display period expires. This remaining time is displayed based on the information measured by the clock unit 29A of the terminal 20.
When the remaining time reaches "0", the code display screen is closed and the terminal display code is hidden. If the user of terminal 20 subsequently wishes to make a payment, he or she will need to re-acquire the terminal display code from server 10.
端末20のユーザは、コード表示期限内に、図3-3のコード表示画面をコードレジ60で店舗の店員に提示し、店舗コードリーダ装置50で端末表示用コード画像を読み取ってもらうことで決済を行う。この場合、店舗コードリーダ装置50は、前述したAPI等を用いて通信I/F54によってサーバ10にアクセスして、決済に必要な情報をサーバ10に送信する。これにより、サーバ10によって決済処理が行われる。 The user of terminal 20 presents the code display screen shown in Figure 3-3 to a store clerk at the code register 60 within the code display deadline, and makes a payment by having the store code reader device 50 read the terminal display code image. In this case, the store code reader device 50 accesses the server 10 via the communication I/F 54 using the API or the like described above, and sends the information necessary for the payment to the server 10. The payment process is then carried out by the server 10.
ここまで、オンライン決済を実現するための処理を例示したが、上記の処理を適用するためには、端末20とサーバ10とが通信可能な状態(オンライン状態)であることが必要となる。勿論、店舗コードリーダ装置50とサーバ10とが通信可能な状態であることも必要である。 So far, we have provided examples of processes for realizing online payments, but in order to apply the above processes, the terminal 20 and server 10 must be able to communicate (online state). Of course, the store code reader device 50 and server 10 must also be able to communicate.
しかしながら、地下などの電波状況が悪い場所で決済を行う場合や、イベント会場などの回線が混雑している状況で決済を行う場合、端末20の一定期間(例えばひと月)における通信量が一定量を超えるなどして通信制限や通信の速度制限かかけられている場合等において、端末20とサーバ10とが通信不能(または通信困難)となった結果、決済を行うのが困難になる場合が想定される。そこで、以下では、このような場合であっても決済を実現するための手法を例示する。 However, when making a payment in a location with poor signal reception, such as underground, or when making a payment in a situation where the lines are congested, such as at an event venue, or when the amount of communication on the terminal 20 exceeds a certain amount over a certain period of time (e.g., one month) and communication or speed restrictions are imposed, it is conceivable that communication between the terminal 20 and the server 10 may become impossible (or difficult) to communicate, making it difficult to make a payment. Therefore, the following provides an example of a method for making a payment even in such cases.
(2)オフライン決済
本開示の手法の一態様としてのオフライン決済の手法について、フローチャートを参照して説明する。
以下では、「オフライン」とは、端末20がサーバ10と通信することができないことをを示し、「オフライン状態」とは、このオフラインの状態を示すものとする。また、「オフライン決済」とは、オフライン状態においてサーバ10によって決済が行われることを示すものとする。また、前提として、店舗コードリーダ装置50はサーバ10と通信することができるものとする。
(2) Offline Payment An offline payment method as one aspect of the method of the present disclosure will be described with reference to a flowchart.
In the following, "offline" means that the terminal 20 cannot communicate with the server 10, and "offline state" refers to this offline state. Also, "offline payment" means that payment is made by the server 10 in the offline state. Also, it is assumed that the store code reader device 50 can communicate with the server 10.
図3-4は、この場合における各装置が実行する処理の流れの一例を示すフローチャートである。図の見方は、前述したフローチャートと同様である。 Figure 3-4 is a flowchart showing an example of the processing flow executed by each device in this case. The diagram should be interpreted in the same way as the flowchart described above.
図3-4のフローチャートは、図3-1のフローチャートをオフライン仕様に書き換えたものである。図3-1のフローチャートとは、限定ではなく例として、オンライン状態での処理ステップ(例えばA240)、オフライン状態での処理ステップ(例えばA250、B250、B280)、オフライン状態からオンライン状態に復帰した場合の処理ステップ(例えばA290、C290)が異なる。 The flowchart in Figure 3-4 is the flowchart in Figure 3-1 rewritten to offline specifications. It differs from the flowchart in Figure 3-1 in, for example and not by way of limitation, the processing steps in the online state (e.g., A240), the processing steps in the offline state (e.g., A250, B250, B280), and the processing steps when returning from the offline state to the online state (e.g., A290, C290).
A130の後、制御部21は、受信された端末表示用コード(この例では端末表示用コード画像)を記憶部28にストックする(A240)。 After A130, the control unit 21 stores the received terminal display code (in this example, a terminal display code image) in the memory unit 28 (A240).
ここで、「ストック」とは、受信された端末表示用コードを後で利用可能とするために、記憶部28に記憶させることを意味する。
なお、本明細書では、「ストック」のことを、単に「記憶」と表現することもある。また、端末表示用コードをストックすることを、「端末表示用コードを端末表示用コードストックデータに記憶させる」と表現することもある。
Here, "stock" means that the received terminal display code is stored in the storage unit 28 so that it can be used later.
In this specification, "stock" may be simply expressed as "storage." Storing a terminal display code may also be expressed as "storing the terminal display code in terminal display code stock data."
この処理では、オフライン決済を可能とするために、オンライン状態においてサーバ10から取得した端末表示用コード(この例では端末表示用コード画像)を端末20の記憶部28にストック(記憶)させておく。そして、オフライン状態での決済が必要となった場合に、ストックされた端末表示用コードを用いて、サーバ10と通信する必要なく決済ができるようにする。 In this process, to enable offline payments, the terminal display code (in this example, a terminal display code image) obtained from the server 10 while online is stored in the memory unit 28 of the terminal 20. Then, when offline payment becomes necessary, the stored terminal display code can be used to make the payment without the need to communicate with the server 10.
具体的に説明する。A240の後、オフライン状態になったとする。
ここで、端末20は、限定ではなく例として、以下のいずれかの手法によってオフライン状態となったことを検出する。
A more specific explanation will be given below. Assume that the system goes offline after A240.
Here, the terminal 20 detects that it has gone offline by any of the following methods, for example and not by way of limitation.
(A)端末20での決済アプリケーションの実行中、定期的なタイミングや特定のタイミングで、サーバ10から接続確認要求が端末20に送信され、端末20からは、その接続確認要求に対して、識別情報(例えばアプリケーションID)を含む接続応答がサーバ10に送信されるようにする。この場合、端末20の制御部21は、サーバ10から接続確認要求を受信しなくなった場合に、オフライン状態になったと判定する。 (A) While the payment application is running on the terminal 20, the server 10 sends a connection confirmation request to the terminal 20 at regular or specific times, and the terminal 20 responds to the connection confirmation request by sending a connection response including identification information (e.g., an application ID) to the server 10. In this case, the control unit 21 of the terminal 20 determines that it has gone offline when it no longer receives a connection confirmation request from the server 10.
(B)端末20での決済アプリケーションの実行中、定期的なタイミングや特定のタイミングで、端末20から識別情報(例えばアプリケーションID)を含む接続通知がサーバ10に送信され、サーバ10からは、その接続通知に対して、接続確認が端末20に送信されるようにする。オフライン状態では、端末20からサーバ10に接続通知を送信することができない。このため、限定ではなく例として、端末20の制御部21は、接続通知の送信エラーの発生を検知した場合に、オフライン状態となったと判定する。 (B) While the payment application is running on the terminal 20, the terminal 20 sends a connection notification including identification information (e.g., an application ID) to the server 10 at regular or specific times, and the server 10 sends a connection confirmation to the terminal 20 in response to the connection notification. In an offline state, the terminal 20 cannot send a connection notification to the server 10. Therefore, as a non-limiting example, the control unit 21 of the terminal 20 determines that the terminal 20 has entered an offline state when it detects a connection notification transmission error.
なお、端末20が、限定ではなく例として、ネットワークの接続状況を取得するライブラリやアプリケーション等を用いて、自己の端末20の通信状況に関する情報を取得して、オフライン状態となったか否かを判定するようにしてもよいし、そのようにしなくてもよい。 Incidentally, the terminal 20 may, but is not limited to, use a library or application that acquires network connection status to acquire information about the communication status of its own terminal 20 and determine whether it has entered an offline state, but this is not a requirement.
オフライン状態において、A240でストックされた端末表示用コード画像が表示部24に表示されて(A250)、ユーザによって店舗の店員等に提示されると、制御部51は、端末20の表示部24に表示された端末表示用コード画像を、コードリーダ58に読み取らせる制御を行う(B250)。そして、制御部51は、B160へと処理を移す。 In the offline state, when the terminal display code image stored in A240 is displayed on the display unit 24 (A250) and presented by the user to a store clerk or other person, the control unit 51 controls the code reader 58 to read the terminal display code image displayed on the display unit 24 of the terminal 20 (B250). The control unit 51 then proceeds to B160.
B160の後、通信I/F54によってサーバ10から店舗用決済完了通知を受信すると(B280)、受信された店舗用決済完了通知に基づき、店舗の店員等はオフライン決済が完了(成功)したことを端末20のユーザに口頭で通知する。 After B160, when a store payment completion notification is received from the server 10 via the communication I/F 54 (B280), a store clerk or the like verbally notifies the user of the terminal 20 that the offline payment has been completed (successful) based on the received store payment completion notification.
C180の後、制御部11は、端末用決済完了通知を端末20に送信する(C290)。しかし、オフライン状態では、端末20は端末用決済完了通知を受信できない。端末20がオンライン状態に復帰すると、サーバ10から送信された端末用決済完了通知が端末20で受信される。そして、通信I/F22によって端末用決済完了通知をサーバ10から受信すると、制御部21は、受信された端末用決済完了通知に基づき、決済結果を表示部24に表示させる(A290)。 After C180, the control unit 11 sends a terminal payment completion notification to the terminal 20 (C290). However, in an offline state, the terminal 20 cannot receive the terminal payment completion notification. When the terminal 20 returns to an online state, the terminal payment completion notification sent from the server 10 is received by the terminal 20. Then, when the terminal payment completion notification is received from the server 10 via the communication I/F 22, the control unit 21 displays the payment result on the display unit 24 based on the received terminal payment completion notification (A290).
以上説明した処理が、オフライン決済を行うための処理の一例である。
オフライン決済では、上記のように、オンライン状態において、サーバ10によって生成された端末表示用コードを端末20でストックしておく。そして、オフライン状態となった場合に、ストックしておいた端末表示用コードを用いて決済を行う。
The above-described process is an example of a process for performing offline payment.
In offline payment, as described above, in the online state, the terminal display code generated by the server 10 is stored in the terminal 20. Then, when the terminal 20 goes offline, the stored terminal display code is used to make the payment.
ここで、オフライン決済では、上記のように、サーバ10によって生成された端末表示用コードを端末20でストックしておく。この場合、端末20のユーザが、ストックされている端末表示用コードを長い間使用せずにとっておくような場合があり得る。このような場合、端末20、または端末20のユーザと、端末表示用コードとが関連付けられる(紐づけられる)時間が長くなってしまう。 Here, in offline payments, as described above, the terminal display code generated by the server 10 is stored on the terminal 20. In this case, there may be cases where the user of the terminal 20 keeps the stored terminal display code for a long period of time without using it. In such cases, the terminal 20, or the user of the terminal 20, and the terminal display code are associated (linked) for a long period of time.
このようなことに起因して、例えば、端末20でストックされている端末表示用コードがハッカー等によって盗まれたり、端末20でストックされている端末表示用コードのコード画像が端末20で表示された際に、そのコード画像が他のユーザの端末20のカメラ等によって撮影されるなどして、不正に決済に利用されるなどの危険性がある。 As a result of this, there is a risk that, for example, a terminal display code stored on terminal 20 could be stolen by a hacker, or that when a code image of a terminal display code stored on terminal 20 is displayed on terminal 20, that code image could be photographed by a camera on another user's terminal 20, and used for fraudulent payments.
<機能構成>
(1)サーバの機能構成
図4-1は、本実施例におけるサーバ10の制御部11により実現される機能の一例を示す図である。
<Functional configuration>
(1) Functional Configuration of Server FIG. 4A is a diagram showing an example of functions realized by the control unit 11 of the server 10 in this embodiment.
以下では、端末20のユーザが、端末20に記憶されている決済アプリケーションを用いて、限定ではなく例として、前述した決済種別「端末コード表示」による決済を行う場合を例示する。 The following example illustrates, by way of example and not limitation, a case in which a user of terminal 20 makes a payment using the payment application stored on terminal 20 with the aforementioned payment type "Display terminal code."
サーバ10は、制御部11により実現される機能として、決済管理処理部111を有する。 The server 10 has a payment management processing unit 111 as a function realized by the control unit 11.
決済管理処理部111は、記憶部15に記憶されている決済管理処理プログラム151に従って、端末20で実行される決済アプリケーションに関する各種の情報やデータの管理や、端末20または端末20のユーザの電子貨幣による決済を管理するための決済管理処理を実行する機能を有している。 The payment management processing unit 111 has the function of managing various information and data related to the payment application executed by the terminal 20, and executing payment management processing to manage payments made by the terminal 20 or the user of the terminal 20 using electronic currency, in accordance with the payment management processing program 151 stored in the memory unit 15.
決済管理処理部111は、限定ではなく例として、端末表示用コード生成処理によって端末表示用コードを生成する端末表示用コード生成処理部1111と、決済処理によって決済を実行する決済処理部1113と、コード有効期限を設定して管理するコード有効期限管理処理部1115とを機能部として含む。 The payment management processing unit 111 includes, as functional units, a terminal display code generation processing unit 1111 that generates a terminal display code through a terminal display code generation process, a payment processing unit 1113 that executes payment through a payment process, and a code expiration date management processing unit 1115 that sets and manages the code expiration date, by way of example and not limitation.
端末表示用コード生成処理部1111は、限定ではなく例として、二次元コードで表される端末表示用コード画像を生成する。二次元コードとは、水平方向と垂直方向とに情報を持つ表示方式のコードであり、小さな正方形を上下左右に配列させたマトリックス式のコード(以下、「マトリックスコード」と称す。)や、一次元コード(限定ではなく例としてバーコード)を上下に複数重ねたスタック式のコード(以下、「スタックコード」と称す。)等がある。 The terminal display code generation processing unit 1111 generates a terminal display code image represented by a two-dimensional code, for example and not by way of limitation. A two-dimensional code is a display code that has information in both the horizontal and vertical directions, and includes a matrix-type code (hereinafter referred to as a "matrix code") in which small squares are arranged vertically and horizontally, and a stack-type code (hereinafter referred to as a "stack code") in which multiple one-dimensional codes (for example and not by way of limitation, barcodes) are stacked one on top of the other.
本実施例では、説明の簡明化のため、広く用いられているマトリックスコードの一例であるQRコード(登録商標)を、端末表示用コードの一例として説明する。 In this example, for simplicity, QR Code (registered trademark), a widely used example of a matrix code, will be used as an example of a terminal display code.
なお、本実施例とは異なり、QRコード以外のマトリックスコードとして、SPコードやベリコード、マキシコード、CPコード、カメレオンコード等のコードを用いてもよいし、用いなくてもよい。また、マトリックスコードではなく、各種のスタックコードを用いてもよいし、用いなくてもよい。 Note that, unlike this embodiment, matrix codes other than QR codes, such as SP codes, VeriCode, MaxiCode, CP codes, and Chameleon codes, may or may not be used. Also, instead of matrix codes, various stack codes may or may not be used.
また、端末表示用コード生成処理部1111が、端末表示用コードとして、二次元コード(限定ではなく例として、QRコード)に加えて、一次元コード(限定ではなく例として、バーコード)を生成するようにしてもよいし、そのようにしなくてもよい。これは、店舗によっては、二次元コードの読み取りには対応していないが、一次元コードの読み取りには対応可能な場合があるためである。 Furthermore, the terminal display code generation processing unit 1111 may or may not generate a one-dimensional code (a barcode, for example and not limitation) as the terminal display code in addition to a two-dimensional code (a QR code, for example and not limitation). This is because some stores may not be able to read two-dimensional codes but may be able to read one-dimensional codes.
決済処理部1113は、限定ではなく例として、店舗POSシステム40から送信される情報や、端末20から送信される情報に基づいて、決済処理を行う機能を有している。 The payment processing unit 1113 has the function of performing payment processing based on, for example but not limited to, information sent from the store POS system 40 and information sent from the terminal 20.
図4-2は、本実施例におけるサーバ10の記憶部15に記憶される情報の一例を示す図である。
記憶部15には、限定ではなく例として、プログラムとして、制御部11により読み出され、決済管理処理として実行される決済管理処理プログラム151が記憶される。
FIG. 4B is a diagram showing an example of information stored in the storage unit 15 of the server 10 in this embodiment.
The storage unit 15 stores, as a program, a payment management processing program 151 that is read by the control unit 11 and executed as payment management processing, as a non-limiting example.
また、記憶部15には、限定ではなく例として、データとして、ユーザ登録データ153と、店舗登録データ155と、決済管理データベース157と、コード管理データベース159とが記憶される。 Furthermore, the memory unit 15 stores, by way of example and not limitation, the following data: user registration data 153, store registration data 155, payment management database 157, and code management database 159.
ユーザ登録データ153は、決済サービスを利用する端末20および端末20のユーザの登録データであり、そのデータ構成の一例を図4-3に示す。
ユーザ登録データ153には、限定ではなく例として、ユーザ名と、端末電話番号と、端末メールアドレスと、アプリケーションIDと、認証パスワードと、その他登録情報とが関連付けて記憶される。
The user registration data 153 is registration data of the terminal 20 that uses the payment service and the user of the terminal 20, and an example of the data configuration is shown in FIG. 4-3.
In the user registration data 153, for example, but not limited to, a user name, a terminal phone number, a terminal email address, an application ID, an authentication password, and other registration information are stored in association with each other.
ユーザ名は、決済サービスを利用する端末20のユーザの名称であり、端末20のユーザが決済サービスを利用する際に登録する名称が記憶される。 The user name is the name of the user of the terminal 20 using the payment service, and the name registered by the user of the terminal 20 when using the payment service is stored.
端末電話番号は、このユーザ名のユーザの端末20の電話番号であり、端末20のユーザが決済アプリケーションを利用する際に登録する端末20の電話番号が記憶される。
端末メールアドレスは、このユーザ名のユーザの端末20のメールアドレスであり、端末20のユーザが決済アプリケーションを利用する際に登録する端末20のメールアドレスが記憶される。
端末電話番号や端末メールアドレスは、端末20を識別するための識別情報(以下、「端末識別情報」と称す。)の一例である。
The terminal phone number is the phone number of the terminal 20 of the user of this username, and the phone number of the terminal 20 registered when the user of the terminal 20 uses the payment application is stored.
The terminal email address is the email address of the terminal 20 of the user of this username, and the email address of the terminal 20 registered when the user of the terminal 20 uses the payment application is stored.
The terminal telephone number and the terminal email address are examples of identification information for identifying the terminal 20 (hereinafter referred to as "terminal identification information").
アプリケーションIDは、決済アプリケーションのアカウント(アカウント情報)であって、端末20、または端末20のユーザを識別可能とするIDである。このアプリケーションIDは、限定ではなく例として、サーバ10によって固有のIDが設定されて記憶される。 The application ID is the payment application account (account information) and is an ID that can identify the terminal 20 or the user of the terminal 20. As a non-limiting example, this application ID is a unique ID that is set and stored by the server 10.
認証パスワードは、このユーザ名のユーザの端末20において、決済用の認証処理(以下、単に「認証処理」と称す。)を行う際にユーザに入力を要求する認証用のパスワードであり、ユーザによって設定されたパスワードが記憶される。 The authentication password is an authentication password that the user is required to enter when performing payment authentication processing (hereinafter simply referred to as "authentication processing") on the terminal 20 of the user with this username, and the password set by the user is stored.
なお、決済用の認証処理は、必ずしも行わなければならないわけではなく、行わないようにすることも可能である。この場合は、認証パスワードをユーザ登録データ153に記憶させておく必要はない。 Note that payment authentication processing does not necessarily have to be performed, and it is possible to omit it. In this case, there is no need to store the authentication password in the user registration data 153.
その他登録情報は、このユーザ名のユーザのその他の登録情報であり、限定ではなく例として、決済アプリケーションにおいてユーザが使用するアイコンの画像データであるユーザアイコン画像やユーザのプロフィール等がこれに含まれる。 Other registration information is other registration information for the user of this username, and includes, but is not limited to, a user icon image, which is image data of an icon used by the user in the payment application, and the user's profile.
店舗登録データ155は、決済アプリケーションを提供する事業者(サーバ10の事業者)と提携している店舗の登録データである。この店舗登録データ155の一例である店舗登録データ155Aのデータ構成例を、図4-4に示す。
店舗登録データ155Aには、限定ではなく例として、業種と、店舗名と、店舗位置情報と、店舗POSシステム情報と、店舗IDとが店舗情報として関連付けて記憶される。
The store registration data 155 is registration data of stores that are affiliated with the business that provides the payment application (the business of the server 10). An example of the data configuration of store registration data 155A, which is an example of this store registration data 155, is shown in FIG. 4-4.
In the store registration data 155A, for example, but not limited to, the business type, store name, store location information, store POS system information, and store ID are stored in association with each other as store information.
業種には、店舗の業種が記憶される。この業種には、限定ではなく例として、「コンビニエンスストア」、「スーパーマーケット」、「薬局」、「居酒屋」、「百貨店」、「レストラン」、「本屋」、「時計店」といった各種の業種が含まれる。 The business type of the store is stored in the business type field. Examples of business types include, but are not limited to, "convenience store," "supermarket," "pharmacy," "izakaya," "department store," "restaurant," "bookstore," and "watch shop."
店舗名には、各業種それぞれについて、その業種に含まれる(属する)店舗の店舗名が記憶される。 For each industry, the store name stores the names of stores that belong to that industry.
店舗位置情報には、この店舗名の店舗の所在地の位置情報(以下、「店舗位置情報」と称す。)が記憶される。この店舗位置情報は、店舗の所在地を2次元または3次元の位置座標で表したものとしてもよいし、店舗の所在地を経緯度(緯度、経度、場合によっては高度)で表したものとしてもよい。 Store location information stores location information for the location of the store with this store name (hereinafter referred to as "store location information"). This store location information may represent the store's location using two-dimensional or three-dimensional position coordinates, or it may represent the store's location using longitude and latitude (latitude, longitude, and in some cases altitude).
店舗POSシステム情報には、この店舗で使用される店舗POSシステム40に関する情報が記憶される。この店舗POSシステム情報には、限定ではなく例として、サーバ10が、店舗コードリーダ装置50や店舗サーバ70と通信を行うために必要な情報が含まれる。 The store POS system information stores information about the store POS system 40 used in this store. This store POS system information includes, by way of example and not limitation, information necessary for the server 10 to communicate with the store code reader device 50 and the store server 70.
店舗POSシステム40は、サーバ10と連携して処理を行うため、限定ではなく例として、サーバ10から提供(配布)される決済アプリケーション用のソフトウェアパッケージをあらかじめ取得して店舗コードリーダ装置50や店舗サーバ70に記憶させておき、このソフトウェアパッケージを、店舗での決済処理用のプログラムから呼び出して使用するようにすることができる。アプリケーションプログラミングインターフェース(API)が一例であり、店舗コードリーダ装置50は、例えばAPIを起動して、サーバ10への情報の送信と、サーバ10からの情報の受信とを実現する。 The store POS system 40 performs processing in conjunction with the server 10. For example, and not by way of limitation, a software package for a payment application provided (distributed) by the server 10 can be acquired in advance and stored in the store code reader device 50 or the store server 70, and this software package can then be called and used from the store's payment processing program. One example is an application programming interface (API), and the store code reader device 50 can, for example, activate the API to send information to and receive information from the server 10.
また、サーバ10は、限定ではなく例として、店舗の業種、店舗名、店舗位置情報、店舗POSシステム情報等の情報を、その店舗の店舗サーバ70から受信して、店舗登録データ155に記憶させておくようにすることができる。 Furthermore, the server 10 can receive information such as, but not limited to, the store's industry, store name, store location information, store POS system information, etc. from the store's store server 70 and store it in the store registration data 155.
店舗IDは、この店舗名の店舗を識別するための識別情報として機能するIDである。この店舗IDは、限定ではなく例として、サーバ10によって店舗ごとに固有のIDが設定されて記憶される。
店舗IDは、店舗識別情報の一例である。
The store ID is an ID that functions as identification information for identifying the store of this store name. As an example, and not a limitation, the store ID is set and stored by the server 10 as a unique ID for each store.
The store ID is an example of store identification information.
決済管理データベース157は、各端末20のユーザの決済に関する情報を管理するためのデータを蓄積的に記憶したデータベースであり、その一例である決済管理データベース157Aの構成例を図4-5に示す。
決済管理データベース157Aには、端末20毎、または端末20のユーザ毎に生成される決済管理データが記憶される。
The settlement management database 157 is a database that cumulatively stores data for managing information relating to settlements made by users of each terminal 20, and an example of the structure of a settlement management database 157A is shown in FIG. 4-5.
The settlement management database 157A stores settlement management data generated for each terminal 20 or for each user of the terminal 20.
各決済管理データには、限定ではなく例として、アプリケーションIDと、残高と、ポイントと、1日上限設定金額と、オートチャージ設定と、決済履歴データとが記憶される。 Each payment management data may store, by way of example and not limitation, the application ID, balance, points, daily limit, auto-charge settings, and payment history data.
アプリケーションIDには、ユーザ登録データ153に記憶されているアプリケーションIDが記憶される。
残高には、このアプリケーションIDに関連付けられている残高が記憶される。
The application ID is stored as the application ID stored in the user registration data 153 .
The balance field stores the balance associated with this application ID.
ポイントには、決済アプリケーションと関連付けられた各種のサービスや、決済アプリケーションの事業者と提携している加盟店舗で貯めることのできるポイントが記憶される。ポイントは、限定ではなく例として、1ポイントあたり1円相当の価値を有し、ギフト券や商品等に交換することができる他、決済アプリケーションにおいて現金化して決済に利用することもできる。 Points are stored as points that can be accumulated through various services associated with the payment application or at affiliated stores affiliated with the payment application operator. By way of example and not limitation, points have a value equivalent to 1 yen per point and can be exchanged for gift certificates, merchandise, etc., or can be converted into cash in the payment application and used for payments.
1日上限設定金額には、このアプリケーションIDを所有する端末20、または端末20のユーザが決済に使用可能な金額の1日あたりの上限金額が記憶される。 The daily limit setting stores the maximum amount that can be used for payments by the terminal 20 that owns this application ID, or the user of the terminal 20.
オートチャージ設定は、残高が残り少ない金額(例えば「500円」)や「0円」となった場合に、電子貨幣を自動的に補充(オートチャージ)するか否かの設定であり、端末20のユーザによってオートチャージの設定がなされた場合は「ON」が記憶され、それ以外の場合は「OFF」が記憶される。オートチャージは、限定ではなく例として、端末20のユーザが登録している銀行口座等から行われるようにすることができる。 The auto-charge setting is a setting for whether or not electronic currency is automatically replenished (auto-charged) when the balance is low (for example, "500 yen") or reaches "0 yen." If auto-charge is set by the user of terminal 20, "ON" is stored; otherwise, "OFF" is stored. As a non-limiting example, auto-charge can be performed from a bank account or the like registered by the user of terminal 20.
決済履歴データは、このアプリケーションIDのユーザの決済の履歴に関するデータであり、限定ではなく例として、このアプリケーションIDについて、サーバ10によって決済が行われた日時である決済日時と、決済した店舗のIDである店舗IDと、その店舗IDの店舗の名称である決済店舗名と、決済した金額である決済金額とが関連付けて時系列に記憶される。 Payment history data is data related to the payment history of the user of this application ID. By way of example and not limitation, for this application ID, the payment date and time (the date and time when the payment was made by server 10), the store ID (the ID of the store where the payment was made), the payment store name (the name of the store associated with that store ID), and the payment amount (the amount paid) are stored in chronological order in association with each other.
なお、上記の決済管理データには、必ずしも上記の全ての情報を記憶させるようにする必要はない。限定ではなく例として、ポイント、1日上限設定金額、オートチャージ設定のうちの一部または全部は、決済管理データに記憶させないようにしてもよい。
また、決済を行う度に、決済履歴の情報を端末20に送信して端末20に記憶させるようにして、サーバ10には決済履歴データを記憶させないようにしてもよい。
It is not necessary to store all of the above information in the payment management data. For example, and not by way of limitation, some or all of the points, daily upper limit amount, and auto-charge settings may not be stored in the payment management data.
Furthermore, each time a payment is made, payment history information may be transmitted to the terminal 20 and stored in the terminal 20, and the server 10 may not store the payment history data.
コード管理データベース159は、コード(本実施例では端末表示用コード)を管理するためのデータベースであり、そのデータ構成の一例を図4-6に示す。
コード管理データベース159には、限定ではなく例として、決済アプリケーションのアプリケーションIDごとに生成されるコード管理データが記憶される。
The code management database 159 is a database for managing codes (terminal display codes in this embodiment), and an example of the data structure is shown in FIG.
The code management database 159 stores, by way of example and not limitation, code management data generated for each application ID of a payment application.
各コード管理データには、アプリケーションIDが記憶されるとともに、限定ではなく例として、コード生成日時と、コードNoと、決済用番号と、コード有効期限とが関連付けて時系列に記憶される。 Each code management data stores an application ID, and by way of example and not limitation, the code generation date and time, code number, payment number, and code expiration date are associated and stored in chronological order.
コード生成日時には、時計部19によって計時される情報に基づいて、その端末表示用コードを生成した日時が記憶される。
コードNoには、そのコードを識別するための番号が記憶される。例えば、古い順に通し番号が設定されて記憶される。
決済用番号には、その端末表示用コードを生成する際に発行した決済用番号が記憶される。
The code generation date and time is stored as the date and time when the terminal display code was generated based on the information kept by the clock unit 19.
The code number stores a number for identifying the code. For example, serial numbers are set and stored in chronological order.
The settlement number stores the settlement number issued when the terminal display code is generated.
コード有効期限は、その端末表示用コードを使用した決済を有効とする期限であり、生成した端末表示用コード毎にサーバ10側で管理される期限である。
例えば、サーバ10が端末表示用コードを生成した日時を「コード生成日時」とし、サーバ10によって設定されるコードの有効時間を「コード有効時間」とする。この場合、限定ではなく例として、「コード生成日時からコード有効時間が経過するまでの期間」が、コード有効期限管理処理部1115によってコード有効期限として設定されて記憶される。
The code expiration date is the date by which a payment using the terminal display code is valid, and is managed by the server 10 for each generated terminal display code.
For example, the date and time when the server 10 generates a terminal display code is referred to as the "code generation date and time," and the validity period of the code set by the server 10 is referred to as the "code validity period." In this case, as a non-limiting example, the "period from the code generation date and time until the code validity period has elapsed" is set and stored as the code validity period by the code validity period management processing unit 1115.
コード有効期限は、サーバ10によって設定される期限であって、その端末表示用コードを使用して決済を行うことのできる期限とも言える。 The code expiration date is a period set by the server 10, and can also be considered the period during which payments can be made using the terminal display code.
ここで、コード有効時間は適宜設定変更可能であるが、限定ではなく例として、「6時間」、「12時間」、「18時間」、「24時間」といった時間を設定することができる。
但し、あまりに長い時間をコード有効時間として設定すると、端末20、または端末20のユーザと、端末表示用コードとが関連付けられる(紐づけられる)時間が長くなってしまい、前述したような問題が生じ得る。このため、コード有効時間は、長くても24時間程度にしてもよい。
Here, the code validity period can be changed as appropriate, but as a non-limiting example, it is possible to set the period to "6 hours,""12hours,""18hours," or "24 hours."
However, if the code validity period is set too long, the terminal 20 or the user of the terminal 20 will be associated (linked) with the terminal display code for a long period of time, which may result in the problems described above. For this reason, the code validity period may be set to around 24 hours at most.
コード管理データに記憶される端末表示用コードのデータは、限定ではなく例として、その端末表示用コードを利用して決済処理を行った後、コード管理データから削除するようにすることができる。
また、限定ではなく例として、その端末表示用コードに関連付けられているコード有効期限が経過した場合にも、コード管理データから削除するようにすることができる。
As a non-limiting example, the data of the terminal display code stored in the code management data may be deleted from the code management data after a payment process is performed using the terminal display code.
Also, by way of example and not limitation, when the code expiration date associated with the terminal display code has passed, the terminal display code may be deleted from the code management data.
なお、上記のように、利用不可となった端末表示用コードのデータをコード管理データから削除するのではなく、限定ではなく例として、端末表示用コードのデータと関連付けて、その端末表示用コードの利用可否を示すフラグ「利用可能/利用不可」を設定する。そして、利用不可となった端末表示用コードについては、フラグを「利用不可」に設定するようにしてもよいし、そのようにしなくてもよい。 As described above, instead of deleting the data of unusable terminal display codes from the code management data, for example and not by way of limitation, a flag "Usable/Unusable" indicating whether the terminal display code can be used is set in association with the data of the terminal display code. Then, for terminal display codes that have become unusable, the flag may be set to "Unusable," but this is not required.
また、上記のうち、例えばコード生成日時は、コード管理データに記憶させないようにしてもよい。
また、アプリケーションIDに代えて、または、これに加えて、ユーザ登録データ153に記憶されている端末電話番号等の端末識別情報を、コード管理データに記憶させるようにしてもよいし、しなくてもよい。
Furthermore, among the above, for example, the code generation date and time may not be stored in the code management data.
Furthermore, instead of or in addition to the application ID, terminal identification information such as a terminal telephone number stored in the user registration data 153 may or may not be stored in the code management data.
(2)端末の機能構成
図4-7は、本実施例において端末20の制御部21により実現される機能の一例を示す図である。
端末20は、制御部21により実現される機能として、決済アプリケーション処理部211を有する。
(2) Functional Configuration of Terminal FIG. 4-7 is a diagram showing an example of functions realized by the control unit 21 of the terminal 20 in this embodiment.
The terminal 20 has a payment application processing unit 211 as a function realized by the control unit 21 .
決済アプリケーション処理部211は、記憶部28に記憶されている決済アプリケーションソフトウェア281に基づいて、決済に関する処理を行うための決済アプリケーション処理を実行する機能を有している。 The payment application processing unit 211 has the function of executing payment application processing to perform payment-related processing based on the payment application software 281 stored in the memory unit 28.
決済アプリケーション処理部211は、限定ではなく例として、コード表示処理を実行するコード表示処理部2113を機能部として含む。 The payment application processing unit 211 includes, as a functional unit, a code display processing unit 2113 that executes code display processing, for example and not by way of limitation.
本実施例において、決済に関する処理とは、限定ではなく例として、端末表示用コードをサーバ10から取得する処理(端末表示用コードの生成をサーバ10に依頼する処理や、生成された端末表示用コードをサーバ10から受信する処理を含む。)、サーバ10から取得した端末表示用コードをストックする処理、ストックした端末表示用コード画像を表示する処理(コード表示処理)、端末用決済完了通知をサーバ10から取得する処理などの、決済を行う上で何らかの関連のある処理、より具体的には、決済を行う上で関連のある処理として端末20で実行される処理全般を含む概念である。 In this embodiment, the term "payment-related processing" refers to, but is not limited to, processing related to making a payment, such as obtaining a terminal display code from server 10 (including requesting server 10 to generate a terminal display code and receiving the generated terminal display code from server 10), storing a terminal display code obtained from server 10, displaying a stored terminal display code image (code display processing), and obtaining a terminal payment completion notification from server 10. More specifically, this concept includes all processing executed on terminal 20 as processing related to making a payment.
図4-8は、本実施例における端末20の記憶部28に記憶される情報の一例を示す図である。
記憶部28には、限定ではなく例として、サーバ10からあらかじめダウンロードするなどして取得されるアプリケーションソフトウェアとして、決済アプリケーションソフトウェア281が記憶される。
4-8 are diagrams showing examples of information stored in the storage unit 28 of the terminal 20 in this embodiment.
In the storage unit 28, as an example and not by way of limitation, payment application software 281 is stored as application software acquired in advance from the server 10 by downloading or the like.
決済アプリケーションソフトウェア281には、限定ではなく例として、決済アプリケーションプログラム282と、決済アプリケーションデータ283とが含まれる。 Payment application software 281 includes, by way of example and not limitation, a payment application program 282 and payment application data 283.
決済アプリケーションデータ283には、決済アプリケーションソフトウェアで用いられる各種のデータが記憶される。この決済アプリケーションデータ283には、限定ではなく例として、端末表示用コードストックデータ2831と、決済用データ2832と、店舗データ2833とが記憶される。 Payment application data 283 stores various data used by the payment application software. By way of example and not limitation, this payment application data 283 stores terminal display code stock data 2831, payment data 2832, and store data 2833.
端末表示用コードストックデータ2831には、オンライン状態においてサーバ10から取得した端末表示用コードがストックされたデータであり、そのデータの一例である第1の端末表示用コードストックデータ2831Aのデータ構成例を図4-9に示す。
端末表示用コードストックデータ2831には、限定ではなく例として、コード受信日時と、コードNoと、コードデータと、コード有効期限とが関連付けて記憶される。
The terminal display code stock data 2831 is data that stores terminal display codes obtained from the server 10 when online, and an example of the data structure of the first terminal display code stock data 2831A is shown in Figure 4-9.
The terminal display code stock data 2831 stores, by way of example and not limitation, the code reception date and time, the code number, the code data, and the code expiration date in association with each other.
コード受信日時には、限定ではなく例として、端末20がその端末表示用コードをサーバ10から受信した日時が記憶される。
コードNoには、端末20がその端末表示用コードとともにサーバ10から受信したコードNoが記憶される。
コードデータには、限定ではなく例として、端末20がサーバ10から受信した端末表示用コードのコード画像のデータが記憶される。
コード有効期限には、限定ではなく例として、端末20が端末表示用コードとともにサーバ10から受信した、その端末表示用コードに関連付けて設定されているコード有効期限が記憶される。
As a non-limiting example, the date and time when the terminal 20 received the terminal display code from the server 10 is stored as the code reception date and time.
The code number stored in the code field is the code number that the terminal 20 received from the server 10 along with the terminal display code.
As a non-limiting example, the code data stores data of a code image of a terminal display code received by the terminal 20 from the server 10 .
The code expiration date is, by way of example and not limitation, stored as the code expiration date, which is set in association with the terminal display code that the terminal 20 receives from the server 10 together with the terminal display code.
第1の端末表示用コードストックデータ2831Aに記憶される端末表示用コードのデータは、限定ではなく例として、その端末表示用コードを利用してサーバ10によって決済処理が行われ、サーバ10から端末用決済完了通知を受信した後(オフライン決済を行った場合は、オンライン状態に復帰してサーバ10から端末用決済完了通知を受信した後)、第1の端末表示用コードストックデータ2831Aから削除するようにすることができる。
また、限定ではなく例として、その端末表示用コードに関連付けられているコード有効期限が経過した場合にも、第1の端末表示用コードストックデータ2831Aから削除するようにすることができる。
As an example, but not by way of limitation, the data of the terminal display code stored in the first terminal display code stock data 2831A can be deleted from the first terminal display code stock data 2831A after the payment process is performed by the server 10 using the terminal display code and a terminal payment completion notification is received from the server 10 (in the case of an offline payment, after returning to an online state and receiving a terminal payment completion notification from the server 10).
Also, by way of example and not limitation, if the code expiration date associated with the terminal display code has passed, the code may be deleted from the first terminal display code stock data 2831A.
なお、上記のように、利用不可となった端末表示用コードのデータを第1の端末表示用コードストックデータ2831Aから削除するのではなく、限定ではなく例として、端末表示用コードのデータと関連付けて、その端末表示用コードの利用可否を示すフラグ「利用可能/利用不可」を設定する。そして、利用不可となった端末表示用コードについては、フラグを「利用不可」に設定するようにしてもよいし、そのようにしなくてもよい。 As described above, instead of deleting the data of a terminal display code that has become unusable from the first terminal display code stock data 2831A, for example and not by way of limitation, the data of the terminal display code is associated with the data and a flag indicating whether the terminal display code can be used or not is set to "usable/unusable." Then, for terminal display codes that have become unusable, the flag may or may not be set to "unusable."
また、上記のうち、例えばコード受信日時やコード有効期限は、第1の端末表示用コードストックデータ2831Aに記憶させないようにしてもよい。 Furthermore, among the above, for example, the code reception date and time and the code expiration date may not be stored in the first terminal display code stock data 2831A.
また、本実施例では、端末表示用コードに関連付けられたコード有効期限がサーバ10から端末20に送信されることとするが、これとは異なり、端末表示用コードに関連付けられたコード有効期限がサーバ10から端末20に送信されないようにすることもできる。
この場合、第1の端末表示用コードストックデータ2831Aには、コード有効期限を記憶させず、限定ではなく例として、コード受信日時と、コードNoと、コードデータとを関連付けて記憶させるようにすることができる。これについては、変形例でも後述する。
In addition, in this embodiment, the code expiration date associated with the terminal display code is transmitted from the server 10 to the terminal 20, but alternatively, it is also possible to prevent the code expiration date associated with the terminal display code from being transmitted from the server 10 to the terminal 20.
In this case, the first terminal display code stock data 2831A may not store the code expiration date, but may store, for example and without limitation, the code reception date and time, the code number, and the code data in association with each other. This will be described later in a modified example.
また、コード受信日時に代えて、または、これに加えて、限定ではなく例として、サーバ10から受信した端末表示用コードを第1の端末表示用コードストックデータ2831Aに記憶させた日時(以下、「コード記憶日時」と称する。)を記憶させるようにしてもよいし、そのようにしなくてもよい。 Furthermore, instead of or in addition to the code reception date and time, the date and time when the terminal display code received from the server 10 was stored in the first terminal display code stock data 2831A (hereinafter referred to as the "code storage date and time") may be stored, but this is not a limitation.
また、詳細は後述するが、コードデータには、必ずしも端末表示用コードのコード画像のデータを記憶させなければならないわけではなく、これに代えて、または、これに加えて、端末表示用コードの元情報(本実施例では決済用番号)を記憶させるようにしてもよいし、そのようにしなくてもよい。 Furthermore, as will be described in more detail below, the code data does not necessarily have to store the code image data of the terminal display code; instead of or in addition to this, the original information of the terminal display code (in this embodiment, the payment number) may be stored, or it is not necessary to do so.
決済用データ2832は、端末20で記憶される決済用のデータであり、その一例である決済用データ2832Aの構成を図4-10に示す。
決済用データ2832Aには、限定ではなく例として、アプリケーションIDと、ポイントと、残高と、1日上限設定金額と、オートチャージ設定と、決済履歴データとが記憶される。
The payment data 2832 is data for payment stored in the terminal 20, and the configuration of payment data 2832A, which is an example of such data, is shown in FIG. 4-10.
The payment data 2832A stores, by way of example and not limitation, an application ID, points, balance, daily upper limit set amount, auto-charge settings, and payment history data.
制御部21は、オンライン状態に復帰した後にサーバ10から受信した端末用決済完了通知に基づき、限定ではなく例として、サーバ10によって決済された日時である決済日時と、サーバ10によって決済された店舗のIDである店舗IDと、その店舗IDの店舗の名称である決済店舗名と、サーバ10によって決済された金額である決済金額とを関連付けて決済履歴データに時系列に記憶させる。 Based on the terminal payment completion notification received from server 10 after returning to an online state, the control unit 21 associates, for example but not limited to, the payment date and time (the date and time when the payment was made by server 10), the store ID (the ID of the store where the payment was made by server 10), the payment store name (the name of the store associated with that store ID), and the payment amount (the amount paid by server 10) and stores them in chronological order in the payment history data.
店舗データ2833には、限定でなく例として、サーバ10の店舗登録データ155Aに記憶されている各種の店舗情報が記憶される。 Store data 2833 stores, by way of example and not limitation, various store information stored in store registration data 155A on server 10.
店舗データ2833は、限定ではなく例として、決済アプリケーションソフトウェア281のアップデートのタイミングで、サーバ10から最新の店舗情報が端末20に配信されて更新されるようにすることができる。 By way of example and not limitation, the store data 2833 can be updated by delivering the latest store information from the server 10 to the terminal 20 when the payment application software 281 is updated.
また、記憶部28には、限定ではなく例として、端末データ289が記憶される。
端末データ289は、この端末20に関するデータであり、限定ではなく例として、端末電話番号や端末メールアドレス等の端末識別情報や、端末20側での各種の設定情報等がこれに含まれる。
In addition, the storage unit 28 stores terminal data 289, for example and not by way of limitation.
The terminal data 289 is data relating to this terminal 20, and includes, but is not limited to, terminal identification information such as a terminal telephone number and a terminal email address, and various setting information on the terminal 20 side.
<表示画面例>
図4-11は、本実施例において端末20の表示部24に表示される決済アプリケーションのトップ画面の一例を示す図である。
このトップ画面の構成は、図3-2と同様であり、ここでは、端末20のユーザによって「コードアイコン」がタッチされた状態が示されている。
<Display screen example>
FIG. 4-11 is a diagram showing an example of the top screen of the payment application displayed on the display unit 24 of the terminal 20 in this embodiment.
The configuration of this top screen is the same as that of FIG. 3B, and here, the state in which the "code icon" has been touched by the user of the terminal 20 is shown.
図4-12は、本実施例において端末20の表示部24に表示されるコード表示画面の一例を示す図である。このコード表示画面は、限定ではなく例として、オフライン状態において、図4-11のように「コードアイコン」がタッチされることで表示される。 Figure 4-12 shows an example of a code display screen displayed on the display unit 24 of the terminal 20 in this embodiment. This code display screen is displayed, by way of example and not limitation, when the "code icon" is touched in offline mode, as shown in Figure 4-11.
このコード表示画面では、端末20の記憶部28にストックされている端末表示用コードを読み出され、そのコード画像として、バーコードで表される一次元の第1の端末表示用コード画像と、QRコードで表される二次元の第1の端末表示用コード画像QC1とが、表示画面内の異なる領域にそれぞれ表示されている。また、一次元の第1の端末表示用コード画像の下には、12桁で表される決済用番号が表示されている。 On this code display screen, the terminal display code stored in the memory unit 28 of the terminal 20 is read, and the code images are displayed in different areas of the display screen: a one-dimensional first terminal display code image represented by a barcode, and a two-dimensional first terminal display code image QC1 represented by a QR code. In addition, a 12-digit payment number is displayed below the one-dimensional first terminal display code image.
オフライン決済を行う場合、端末20のユーザは、上記のコード表示画面をコードレジ60で店舗の店員に提示し、端末表示用コード画像を店舗コードリーダ装置50で読み取ってもらうことで決済を行う。この場合、店舗コードリーダ装置50は、限定ではなく例として、読み取った端末表示用コード画像からデコードによって取得した情報(この例では決済用番号)や、端末表示用コード画像を読み取った時刻の情報を含む決済要求情報をサーバ10に送信して、サーバ10に決済を行わせる。詳細は後述する。 When making an offline payment, the user of terminal 20 presents the code display screen described above to a store clerk at code register 60 and makes the payment by having the store code reader device 50 read the terminal display code image. In this case, the store code reader device 50 sends payment request information to server 10, including, by way of example and not limitation, information obtained by decoding the read terminal display code image (in this example, the payment number) and information about the time the terminal display code image was read, and causes server 10 to make the payment. Details will be described later.
図4-13は、オフライン状態からオンライン状態に復帰した後、サーバ10から受信した端末用決済完了通知に基づいて表示部24に表示される決済結果画面の一例を示す図である。
この決済結果画面では、図4-12のコード表示画面の画面中央部に「決済完了」の文字とともに「「決済履歴」から詳細が確認できます。」というメッセージと、決済履歴を確認するための「確認アイコン」とがポップアップ形式で表示されている。
FIG. 4-13 is a diagram showing an example of a payment result screen displayed on the display unit 24 based on the terminal payment completion notice received from the server 10 after returning from the offline state to the online state.
On this payment result screen, the center of the code display screen in Figure 4-12 displays the message "Payment Completed" along with the message "Details can be viewed in Payment History.", along with a pop-up "Confirmation Icon" for viewing the payment history.
上記の表示画面例では、端末20のユーザが、オンライン状態/オフライン状態のいずれであるかを意識することなく、例えばコードアイコンをタッチすることでコード表示画面を表示させることができるため、ユーザの利便性を向上させることができる。 In the above display screen example, the user of terminal 20 can display the code display screen by touching the code icon, for example, without having to be aware of whether the device is online or offline, thereby improving user convenience.
<処理>
図4-14は、本実施例における各装置が実行する処理の流れの一例を示すフローチャートである。左側から順に、端末20の制御部21が実行する決済アプリケーション処理の一例である第1の決済アプリケーション処理、店舗コードリーダ装置50の制御部51が実行する店舗決済処理の一例である第1の店舗決済処理、サーバ10の制御部11が実行する決済管理処理の一例である第1の決済管理処理をそれぞれ示している。
<Processing>
4-14 is a flowchart showing an example of the flow of processing executed by each device in this embodiment. From the left, it shows a first payment application process which is an example of payment application processing executed by the control unit 21 of the terminal 20, a first store payment process which is an example of store payment processing executed by the control unit 51 of the store code reader device 50, and a first payment management process which is an example of payment management processing executed by the control unit 11 of the server 10.
図4-14のフローチャートは、図3-4のフローチャートを一部書き換えたものである。図3-4のフローチャートとは、限定ではなく例として、A330~A350、B350、B360、C320、C330、C370等のステップが異なる。 The flowchart in Figure 4-14 is a partial rewrite of the flowchart in Figure 3-4. It differs from the flowchart in Figure 3-4 in steps A330 to A350, B350, B360, C320, C330, C370, etc., by way of example and not limitation.
この処理では、一例として、端末20、または端末20のユーザを識別するための識別情報を、前述したアプリケーションIDとして説明する。 In this process, as an example, the identification information for identifying the terminal 20 or the user of the terminal 20 will be described as the aforementioned application ID.
C110の後、サーバ10の制御部11は、端末表示用コード生成処理を行う(C320)。具体的には、限定ではなく例として、所定の桁数(例えば10桁~12桁程度の桁数)のランダムな数字を発生させる手法(アルゴリズム)を用いて、所定の桁数のランダムな数字を決済用番号として発生させる。そして、限定ではなく例として、少なくとも決済用番号を元情報として含む端末表示用コード画像を生成する。より具体的には、少なくとも決済用番号をエンコード(符号化)し、図形化(画像化)して、二次元コード(例えばQRコード)の画像で表される端末表示用コード画像を生成する。 After C110, the control unit 11 of the server 10 performs a terminal display code generation process (C320). Specifically, by way of example and not limitation, a method (algorithm) for generating random numbers of a predetermined number of digits (for example, 10 to 12 digits) is used to generate a random number of digits as a payment number. Then, by way of example and not limitation, a terminal display code image is generated that includes at least the payment number as source information. More specifically, at least the payment number is encoded and converted into a graphic (image) to generate a terminal display code image represented as a two-dimensional code (for example, a QR code) image.
そして、コード管理データベース159のうち、受信されたコード生成依頼情報に含まれるアプリケーションIDのコード管理データに、時計部19の計時情報に基づくコード生成日時と、設定したコードNoと、発生させた決済用番号と、生成した端末表示用コードについて設定したコード有効期限とを関連付けて記憶させる。 Then, in the code management database 159, the code management data for the application ID included in the received code generation request information is stored in association with the code generation date and time based on the timing information of the clock unit 19, the set code number, the generated payment number, and the code expiration date set for the generated terminal display code.
次いで、制御部11は、限定ではなく例として、コードNoとともに、生成した端末表示用コード(この例ではコード画像)と、その端末表示用コードについて設定したコード有効期限とを、通信I/F14によって端末20に送信する(C330)。 Next, the control unit 11 sends the generated terminal display code (in this example, a code image) along with the code number and the code expiration date set for that terminal display code to the terminal 20 via the communication I/F 14 (C330).
通信I/F22によってサーバ10から端末表示用コード(この例では端末表示用コード画像)と、コード有効期限とを受信すると(A330)、端末20の制御部21は、受信された端末表示用コード(この例では端末表示用コード画像)をストックする(A340)。具体的には、受信された端末表示用コードのコードデータと、受信されたコード有効期限とを、限定ではなく例として、コード受信日時と関連付けて、第1の端末表示用コードストックデータ2831Aに記憶させる。 When the terminal display code (in this example, a terminal display code image) and the code expiration date are received from the server 10 via the communication I/F 22 (A330), the control unit 21 of the terminal 20 stores the received terminal display code (in this example, a terminal display code image) (A340). Specifically, the code data of the received terminal display code and the received code expiration date are stored in the first terminal display code storage data 2831A in association with, by way of example and not limitation, the code reception date and time.
オフライン状態において、限定ではなく例として、端末20のユーザによってコード表示操作がなされると、コード表示処理部2113が、コード表示処理を行う(A350)。具体的には、限定ではなく例として、第1の端末表示用コードストックデータ2831Aに記憶されている端末表示用コードのコードデータを読み出して、端末表示用コード画像を含むコード表示画面を表示部24に表示させる。 In the offline state, for example and not by way of limitation, when a code display operation is performed by the user of the terminal 20, the code display processing unit 2113 performs code display processing (A350). Specifically, for example and not by way of limitation, the code data of the terminal display code stored in the first terminal display code stock data 2831A is read out, and a code display screen including a terminal display code image is displayed on the display unit 24.
その後、表示部24に表示された端末表示用コード画像が端末20のユーザによって店舗の店員等に提示されると、制御部51は、端末20の表示部24に表示された端末表示用コード画像を、コードリーダ58に読み取らせる制御を行う(B350)。 After that, when the user of the terminal 20 presents the terminal display code image displayed on the display unit 24 to a store clerk or the like, the control unit 51 controls the code reader 58 to read the terminal display code image displayed on the display unit 24 of the terminal 20 (B350).
その後、制御部51は、前述したアプリケーションインターフェイス(API)等を用いて通信I/F54によってサーバ10にアクセスし、少なくとも、読み取った端末表示用コード画像からデコードによって取得した決済用番号と、店舗識別情報と、決済予定金額と、端末表示用コード画像を読み取った時刻(以下、「コード読み取り時刻」と称する。)とを含む決済要求情報を、通信I/F54によってサーバ10に送信する(B360)。 Then, the control unit 51 accesses the server 10 via the communication I/F 54 using the aforementioned application interface (API) or the like, and transmits payment request information to the server 10 via the communication I/F 54, including at least the payment number obtained by decoding the read terminal display code image, store identification information, the planned payment amount, and the time the terminal display code image was read (hereinafter referred to as the "code read time") (B360).
店舗コードリーダ装置50から通信I/F14によって決済要求情報を受信すると(C160)、制御部11は、決済処理を行う(C370)。 When payment request information is received from the store code reader device 50 via the communication I/F 14 (C160), the control unit 11 performs payment processing (C370).
具体的には、受信された決済要求情報に含まれる決済用番号が、アプリケーションIDと関連付けてコード管理データベース159に記憶されているか否かを判定する。そして、記憶されていると判定した場合、受信された決済要求情報に含まれるコード読み取り時刻が、そのアプリケーションIDのコード管理データにおける、その決済用番号と関連付けて記憶されているコード有効期限内であるか否かを判定する。そして、この条件を満たす場合は「決済可能」と判定し、決済管理データベース157Aのうち、そのアプリケーションIDの決済管理データに記憶されている残高から決済予定金額を減算して決済する。 Specifically, it determines whether the payment number included in the received payment request information is stored in code management database 159 in association with the application ID. If it determines that it is stored, it then determines whether the code read time included in the received payment request information is within the code expiration date stored in association with the payment number in the code management data for that application ID. If this condition is met, it determines that "payment is possible" and makes the payment by subtracting the planned payment amount from the balance stored in the payment management data for that application ID in payment management database 157A.
なお、端末20でストックされる端末表示用コードは、オフライン決済のみならず、オンライン決済にも使用可能とすることができる。つまり、端末20側でオフライン状態であるか否かを判定(検出)することは必須ではなく、オンライン状態/オフライン状態を問わず、端末20でストックされる端末表示用コードを用いて決済を行うようにすることが可能である。 The terminal display code stored in terminal 20 can be used not only for offline payments, but also for online payments. In other words, it is not necessary for terminal 20 to determine (detect) whether it is offline, and payments can be made using the terminal display code stored in terminal 20 regardless of whether it is online or offline.
<コード>
上記の処理では、端末20が、端末表示用コード画像の生成をサーバ10に依頼することとし、サーバ10によって生成された端末表示用コード画像が、端末20に送信される例を示したが、これに限定されない。例えば、端末20が、元情報(この例では決済用番号)の生成をサーバ10に依頼することとし、サーバ10によって生成された元情報が、端末20に送信されるようにしてもよいし、そのようにしなくてもよい。
<Code>
In the above process, an example has been shown in which the terminal 20 requests the server 10 to generate a terminal display code image, and the terminal display code image generated by the server 10 is transmitted to the terminal 20, but this is not limiting. For example, the terminal 20 may request the server 10 to generate original information (a payment number in this example), and the original information generated by the server 10 may or may not be transmitted to the terminal 20.
具体的には、図3-1の処理では、A110において、制御部21は、元情報の生成をサーバ10に依頼するコード生成依頼情報を送信する。そして、このコード生成依頼情報に基づき、C120において、制御部11は元情報を生成し、C130において、生成した元情報を端末20に送信する。 Specifically, in the process of FIG. 3-1, at A110, the control unit 21 sends code generation request information requesting the server 10 to generate raw information. Then, based on this code generation request information, at C120, the control unit 11 generates raw information, and at C130, sends the generated raw information to the terminal 20.
A130において元情報をサーバ10から受信すると、制御部21は、受信された元情報に基づいて端末表示用コード画像を生成する。そして、制御部21は、生成した端末表示用コード画像を表示部24に表示させる。 When the original information is received from the server 10 at A130, the control unit 21 generates a terminal display code image based on the received original information. The control unit 21 then displays the generated terminal display code image on the display unit 24.
同様に、図3-4の処理では、A130において元情報をサーバ10から受信すると、A240において、制御部21は、受信された元情報を端末表示用コードストックデータ2831に記憶させる。そして、制御部21は、ストックされている元情報を端末表示用コードストックデータ2831から読み出し、読み出した元情報に基づいて端末表示用コード画像を生成する。そして、A250において、制御部21は、生成した端末表示用コード画像を表示部24に表示させる。 Similarly, in the processing of FIG. 3-4, when raw information is received from the server 10 at A130, the control unit 21 stores the received raw information in the terminal display code stock data 2831 at A240. The control unit 21 then reads the stored raw information from the terminal display code stock data 2831 and generates a terminal display code image based on the read raw information. Then, at A250, the control unit 21 displays the generated terminal display code image on the display unit 24.
同様に、図4-14の処理では、A330において元情報とコード有効期限とをサーバ10から受信すると、A340において、制御部21は、受信された元情報と、コード有効期限とを、第1の端末表示用コードストックデータ2831Aに記憶させる。そして、制御部21は、オフライン状態において、端末20のユーザによってコードを表示させる操作がなされた場合、ストックされている元情報を第1の端末表示用コードストックデータ2831から読み出し、読み出した元情報に基づいて、端末表示用コード画像を生成する。そして、A350において、制御部21は、生成した端末表示用コード画像を含むコード表示画面を表示部24に表示させる。 Similarly, in the processing of FIG. 4-14, when the original information and code expiration date are received from the server 10 at A330, the control unit 21 stores the received original information and code expiration date in the first code stock data for terminal display 2831A at A340. Then, when the user of the terminal 20 performs an operation to display a code while offline, the control unit 21 reads the stored original information from the first code stock data for terminal display 2831 and generates a code image for terminal display based on the read original information. Then, at A350, the control unit 21 displays a code display screen including the generated code image for terminal display on the display unit 24.
また、上記とは異なり、端末20が、端末表示用コード画像の生成をサーバ10に依頼し、サーバ10によって生成された端末表示用コード画像が端末20に送信されるが、端末20側では、サーバ10から受信した端末表示用コード画像をストックするのではなく、サーバ10から受信した端末表示用コード画像からデコードによって取得した元情報をストックするようにしてもよいし、そのようにしなくてもよい。 Also, unlike the above, the terminal 20 requests the server 10 to generate a terminal display code image, and the terminal display code image generated by the server 10 is sent to the terminal 20. However, rather than stocking the terminal display code image received from the server 10, the terminal 20 may or may not stock the original information obtained by decoding the terminal display code image received from the server 10.
<第1実施例の効果>
第1実施例によれば、端末が、サーバによって有効期限が関連付けられたコード情報をサーバから受信し、受信されたコード情報を記憶部に記憶する。そして、記憶されたコード情報に基づいて決済に関する処理を実行することで、オフライン決済を実現することができる。
<Effects of the First Embodiment>
According to the first embodiment, the terminal receives code information associated with an expiration date by the server from the server, stores the received code information in a storage unit, and executes a payment process based on the stored code information, thereby realizing offline payment.
具体的には、第1実施例は、端末20が、サーバ10によってコード有効期限(限定ではなく、第1有効期限の一例)が関連付けられた端末表示用コード画像や決済用番号(限定ではなく、第1コード情報の一例)を、サーバ10から通信I/F22を介して受信する。そして、端末20は、受信された端末表示用コード画像や決済用番号を、制御部21によって記憶部28に記憶する。
また、端末20は、記憶された端末表示用コード画像や決済用番号に基づいて、端末表示用コード画像を表示部24に表示させるコード表示処理(限定ではなく、決済に関する処理の一例)を制御部21によって実行する。
そして、決済は、コード表示処理で表示された端末表示用コード画像が店舗コードリーダ装置50によって読み取られたコード読み取り時刻(限定ではなく、決済に関する処理に基づく時刻の一例)と、コード有効期限とに基づいてサーバ10によって実行される構成を示している。
このような構成により得られる効果の一例として、端末の通信環境や通信状況が悪い場合や不安定な場合であっても、決済に関する処理に基づく時刻と、第1有効期限とに基づいて、サーバによって決済が適切に行わせるようにすることができる。また、例えば、第1コード情報と関連付けられた第1有効期限内でなければ決済が行われないようにすることができるため、端末で記憶されたコード情報がハッカー等によって盗まれたり、端末で記憶されたコード情報に対応するコード画像が端末で表示された際に、そのコード画像が他のユーザの端末のカメラ等によって撮影されるなどして、不正に決済に利用されることを防止できる。
Specifically, in the first embodiment, the terminal 20 receives, from the server 10 via the communication I/F 22, a terminal display code image and a payment number (not limiting, an example of first code information) associated with a code expiration date (not limiting, an example of a first expiration date) by the server 10. Then, the terminal 20 stores the received terminal display code image and payment number in the storage unit 28 by the control unit 21.
In addition, the terminal 20 executes a code display process (not limited to this, but an example of a process related to payment) using the control unit 21 to display a terminal display code image on the display unit 24 based on the stored terminal display code image and payment number.
The payment is performed by the server 10 based on the code reading time (not limited to, but an example of a time based on processing related to payment) when the terminal display code image displayed in the code display process is read by the store code reader device 50, and the code expiration date.
As an example of the effect obtained by such a configuration, even if the communication environment or communication conditions of the terminal are poor or unstable, the server can properly perform payment based on the time based on the payment processing and the first expiration date. Furthermore, for example, since payment can be prevented from being performed unless it is within the first expiration date associated with the first code information, it is possible to prevent the code information stored in the terminal from being stolen by a hacker or the like, or to prevent a code image corresponding to the code information stored in the terminal from being photographed by a camera or the like on another user's terminal when the code image is displayed on the terminal and used for fraudulent payment.
また、第1実施例は、端末20が、メモリに記憶された決済アプリケーションプログラム282(限定ではなく、プログラムの一例)を読み出し、決済アプリケーションプログラム282に基づく決済アプリケーション処理を実行するプロセッサーを備える。
プロセッサーは、サーバ10によってコード有効期限(限定ではなく、第1有効期限の一例)が関連付けられた端末表示用コード画像や決済用番号(限定ではなく、第1コード情報の一例)を、サーバ10から受信する処理と、受信された端末表示用コード画像や決済用番号をメモリに記憶する処理と、記憶された端末表示用コード画像や決済用番号に基づくコード表示処理(限定ではなく、決済に関する処理の一例)とを実行する。
そして、決済は、コード表示処理で表示された端末表示用コード画像が店舗コードリーダ装置50によって読み取られたコード読み取り時刻(限定ではなく、決済に関する処理に基づく時刻の一例)と、コード有効期限とに基づいてサーバ10によって実行される構成を示している。
このような構成によっても、上記と同様の効果を得ることができる。
In addition, in the first embodiment, the terminal 20 includes a processor that reads a payment application program 282 (not limiting, but an example of a program) stored in memory and executes payment application processing based on the payment application program 282.
The processor performs the following processes: receiving from the server 10 a terminal display code image and a payment number (not limited to, but an example of first code information) associated with a code expiration date (not limited to, but an example of first expiration date) by the server 10; storing the received terminal display code image and payment number in memory; and displaying a code based on the stored terminal display code image and payment number (not limited to, but an example of payment-related processing).
The payment is performed by the server 10 based on the code reading time (not limited to, but an example of a time based on processing related to payment) when the terminal display code image displayed in the code display process is read by the store code reader device 50, and the code expiration date.
With this configuration, the same effects as above can be obtained.
また、第1実施例は、端末20が、端末表示用コードと、そのコード有効期限(限定ではなく、第1有効期限に関する情報の一例)とを、サーバ10から通信I/F22によって受信する。そして、受信されたコード有効期限を、制御部21によって端末表示用コードに関連付けて端末表示用コードストックデータ2831に記憶させる構成を示している。
このような構成により得られる効果の一例として、サーバによって第1コード情報に関連付けられた第1有効期限を、端末側で把握することが可能となる。
In the first embodiment, the terminal 20 receives the terminal display code and its code expiration date (not limited to this, but an example of information related to the first expiration date) from the server 10 via the communication I/F 22. Then, the control unit 21 associates the received code expiration date with the terminal display code and stores it in the terminal display code stock data 2831.
As an example of the effect obtained by such a configuration, it becomes possible for the terminal to know the first expiration date associated with the first code information by the server.
また、第1実施例は、サーバ10が、端末表示用コード画像や決済用番号(限定ではなく、第1コード情報の一例)と、コード有効期限(限定ではなく、第1有効期限の一例)とを関連付けてコード管理データに記憶する。
サーバ10は、コード表示処理を行う端末20に、端末表示用コード画像や決済用番号を通信I/F14によって送信し、決済用番号と、コード表示処理で表示された端末表示用コード画像が店舗コードリーダ装置50によって読み取られたコード読み取り時刻(限定ではなく、決済に関する処理に基づく時刻の一例)とを通信I/F14によって受信する。
そして、サーバ10は、受信された決済用番号に関連付けられたコード有効期限と、受信されたコード読み取り時刻とに基づいて、決済処理を制御部11によって行う構成を示している。
このような構成により得られる効果の一例として、サーバは、端末の通信状況や通信環境が悪い場合であっても、受信された第1コード情報に関連付けられた第1コード情報と、端末で実行された決済に関する処理に基づく時刻とに基づいて、適切に決済を行うことができる。
In addition, in the first embodiment, the server 10 associates a terminal display code image and a payment number (not limited to, but an example of the first code information) with a code expiration date (not limited to, but an example of the first expiration date) and stores them in the code management data.
The server 10 transmits the terminal display code image and the payment number to the terminal 20 performing the code display process via the communication I/F 14, and receives the payment number and the code reading time (not limited to this, but an example of the time based on the payment processing) when the terminal display code image displayed in the code display process is read by the store code reader device 50 via the communication I/F 14.
The server 10 then has a configuration in which the control unit 11 performs the payment process based on the code expiration date associated with the received payment number and the received code reading time.
As an example of the effect obtained by such a configuration, even if the communication conditions or communication environment of the terminal are poor, the server can appropriately perform payment based on the first code information associated with the received first code information and the time based on the payment-related processing executed on the terminal.
また、第1実施例は、サーバ10が、メモリに記憶された決済管理処理プログラム151(限定ではなく、プログラムの一例)を読み出し、決済管理処理プログラム151に基づく決済管理処理を実行するプロセッサーを備える。
プロセッサーは、端末表示用コード画像や決済用番号(限定ではなく、第1コード情報の一例)と、コード有効期限(限定ではなく、第1有効期限の一例)とを関連付けてコード管理データに記憶する処理と、コード表示処理を行う端末20に、端末表示用コード画像や決済用番号を送信し、決済用番号と、コード表示処理で表示された端末表示用コード画像が店舗コードリーダ装置50によって読み取られたコード読み取り時刻(限定ではなく、決済に関する処理に基づく時刻の一例)とを受信する処理と、受信された決済用番号に関連付けられたコード有効期限と、受信されたコード読み取り時刻とに基づく決済処理とを実行する構成を示している。
このような構成によっても、上記と同様の効果を得ることができる。
In addition, in the first embodiment, the server 10 is equipped with a processor that reads out a payment management processing program 151 (not limited to, but an example of a program) stored in memory and executes payment management processing based on the payment management processing program 151.
The processor is configured to perform the following processes: associate a terminal display code image and a payment number (not limited to, but an example of first code information) with a code expiration date (not limited to, but an example of first expiration date) and store them in code management data; send the terminal display code image and the payment number to the terminal 20 performing the code display process and receive the payment number and the code reading time (not limited to, but an example of time based on processing related to payment) when the terminal display code image displayed in the code display process is read by the store code reader device 50; and perform payment processing based on the code expiration date associated with the received payment number and the received code reading time.
With this configuration, the same effects as above can be obtained.
<第1変形例(1)>
第1実施例では、コードが表示されてからコード表示時間が経過するまでの期間を「コード表示期限」と定義したが、これに限定されない。
限定ではなく例として、コードが表示されてからコード表示時間が経過するまでの期間が終了する時刻や日時を「コード表示期限」と定義してもよい。
<First Modification Example (1)>
In the first embodiment, the period from when the code is displayed until the code display time has elapsed is defined as the "code display deadline", but the present invention is not limited to this.
As a non-limiting example, the "code display deadline" may be defined as the time or date at which the period from when the code is displayed until the code display time has elapsed.
同様に、第1実施例では、コード生成日時からコード有効時間が経過するまでの期間を「コード有効期限」と定義したが、これに限定されない。
限定ではなく例として、コードが表示されてからコード表示時間が経過するまでの期間が終了する時刻や日時を「コード有効期限」と定義してもよい。
Similarly, in the first embodiment, the period from the code generation date and time until the code validity period has elapsed is defined as the "code validity period", but this is not limiting.
By way of example and not limitation, the "code expiration date" may be defined as the time or date at which the period from when the code is displayed until the code display time has elapsed.
また、コード生成日時をコード有効期限が開始する日時とするのではなく、限定ではなく例として、サーバ10が端末表示用コードを端末20に送信した日時(以下、「コード送信日時」と称する。)をコード有効期限が開始する日時としてもよいし、そのようにしなくてもよい。つまり、「コード送信日時からコード有効時間が経過するまでの期間」をコード有効期限としてもよいし、そのようにしなくてもよい。この場合、サーバ10は、端末表示用コードを端末20に送信した後、コード有効期限をコード管理データに記憶させるようにすればよい。 In addition, rather than using the code generation date and time as the start date and time of the code expiration date, the date and time when the server 10 transmits the terminal display code to the terminal 20 (hereinafter referred to as the "code transmission date and time") may, but does not have to, be the start date and time of the code expiration date. In other words, the code expiration date may, but does not have to, be the "period from the code transmission date and time until the code validity period has elapsed." In this case, the server 10 may store the code expiration date in the code management data after transmitting the terminal display code to the terminal 20.
<第1変形例(2)>
第1実施例では、サーバ10から、端末表示用コード(限定ではなく、コード情報の一例)と、コード有効期限(限定ではなく、有効期限に関する情報の一例)とが送信され、これを端末20で受信することとしたが、これに限定されない。
<First Modification Example (2)>
In the first embodiment, the server 10 transmits a terminal display code (not limited to this, but an example of code information) and a code expiration date (not limited to this, but an example of information regarding the expiration date), which are then received by the terminal 20, but this is not limited to this.
具体的には、限定ではなく例として、端末20の決済アプリケーションデータ283に、あらかじめコード有効時間を記憶させておく。そして、限定ではなく例として、コード生成日時(限定ではなく、有効期限に関する情報の一例)がサーバ10から送信されるようにし、端末20が、サーバ10からコード生成日時を受信するようにしてもよいし、そのようにしなくてもよい。この場合、端末20は、受信されたコード生成日時と、決済アプリケーションデータ283に記憶されているコード有効時間とに基づいて、コード有効期限を特定することができる。 Specifically, by way of example and not limitation, the code expiration date is stored in advance in the payment application data 283 of the terminal 20. Then, by way of example and not limitation, the code generation date and time (a non-limiting example of information related to the expiration date) may be transmitted from the server 10, and the terminal 20 may, or may not, receive the code generation date and time from the server 10. In this case, the terminal 20 can determine the code expiration date based on the received code generation date and time and the code expiration date stored in the payment application data 283.
また、上記のように、コード送信日時をコード有効期限が開始する日時となるようにすることもできるが、この場合も同様である。つまり、コード有効期限が開始する日時が、有効期限に関する情報としてサーバ10から端末20に送信されるようにする。そして、端末20が、コード有効時間と、受信されたコード有効期限が開始する日時とに基づいて、コード有効期限を特定するようにすることもできる。 As mentioned above, the code transmission date and time can also be set to the date and time when the code expiration date starts, and this also applies in this case. In other words, the date and time when the code expiration date starts is sent from the server 10 to the terminal 20 as information about the expiration date. The terminal 20 can then determine the code expiration date based on the code expiration time and the date and time when the received code expiration date starts.
また、この他にも、限定ではなく例として、コード有効期限が終了する日時が、有効期限に関する情報としてサーバ10から端末20に送信されるようにする。そして、端末20が、コード有効時間と、受信されたコード有効期限が終了する日時とに基づいて、コード有効期限を特定するようにすることもできる。 As another example, and not by way of limitation, the date and time when the code expiration date will expire can be transmitted from the server 10 to the terminal 20 as information regarding the expiration date. The terminal 20 can then determine the code expiration date based on the code expiration time and the date and time when the received code expiration date will expire.
<第1変形例(3)>
第1実施例では、端末表示用コードに関連付けられたコード有効期限がサーバ10から端末20に送信されることとしたが、これに限定されない。
<First Modification Example (3)>
In the first embodiment, the code expiration date associated with the terminal display code is transmitted from the server 10 to the terminal 20, but the present invention is not limited to this.
具体的には、限定ではなく例として、端末表示用コードに関連付けられたコード有効期限はサーバ10から端末20に送信されないようにし、端末20側では、サーバ10で設定されたコード有効期限が分からないようにしてもよい。この場合、端末表示用コードストックデータ2831(第1の端末表示用コードストックデータ2831Aや第2の端末表示用コードストックデータ2831B)には、コード有効期限を記憶させず、限定ではなく例として、コード受信日時と、コードNoと、コードデータとを関連付けて記憶させるようにすることができる。 Specifically, by way of example and not limitation, the code expiration date associated with the terminal display code may not be transmitted from the server 10 to the terminal 20, and the terminal 20 may not know the code expiration date set by the server 10. In this case, the terminal display code stock data 2831 (first terminal display code stock data 2831A and second terminal display code stock data 2831B) may not store the code expiration date, but may store, by way of example and not limitation, the code reception date and time, the code number, and the code data in association with each other.
また、この場合、端末20側で、仮のコード有効期限(以下、「仮コード有効期限」と称する。)を設定するようにしてもよいし、そのようにしなくてもよい。具体的には、限定ではなく例として、「コード受信日時(またはコード記憶日時)からコード有効時間が経過するまでの期間」を仮コード有効期限として設定するようにしてもよいし、そのようにしなくてもよい。また、この場合、端末20が、設定した仮コード有効期限を用いて、各実施例や各変形例で説明する処理を実行するようにしてもよいし、そのようにしなくてもよい。 In this case, the terminal 20 may or may not set a temporary code expiration date (hereinafter referred to as the "temporary code expiration date"). Specifically, and by way of example and not limitation, the temporary code expiration date may or may not be set to "the period from the code reception date and time (or code storage date and time) until the code expiration time has elapsed." In this case, the terminal 20 may or may not use the set temporary code expiration date to execute the processing described in each embodiment and each variant example.
<第1変形例(4)>
端末20の記憶部28の端末表示用コードストックデータ2831には、オンライン状態においてサーバ10から取得した1つのコードを記憶させることとしてもよいが、オンライン状態においてサーバ10から取得した複数(2以上)のコードを記憶させることとしてもよい。
<First Modification Example (4)>
The terminal display code stock data 2831 in the memory unit 28 of the terminal 20 may store one code obtained from the server 10 while online, or may store multiple (two or more) codes obtained from the server 10 while online.
図4-15は、この場合における第2の端末表示用コードストックデータ2831Bの一例を示す図である。
第2の端末表示用コードストックデータ2831Bには、複数の端末表示用コードのデータが記憶される。具体的には、限定ではなく例として、コード受信日時と、コードNoと、コードデータと、コード有効期限とが関連付けて、時系列に記憶される。
FIG. 4-15 is a diagram showing an example of the second terminal display code stock data 2831B in this case.
The second terminal display code stock data 2831B stores data for multiple terminal display codes. Specifically, by way of example and not limitation, the code reception date and time, code number, code data, and code expiration date are associated and stored in chronological order.
この場合、端末20の制御部21は、コード表示処理において、限定ではなく例として、第2の端末表示用コードストックデータ2831Bに記憶されている端末表示用コードのうち、最も古い端末表示用コードのコードデータを読み出して、その端末表示用コード画像を含むコード表示画面を表示部24に表示させるようにすることができる。 In this case, in the code display process, the control unit 21 of the terminal 20 can, by way of example and not limitation, read out the code data of the oldest terminal display code among the terminal display codes stored in the second terminal display code stock data 2831B, and display a code display screen including an image of that terminal display code on the display unit 24.
このようにすることで、複数のコードを端末20でストックしておくことができるため、オフライン決済を複数回行う必要が生じた場合であっても、すぐに決済を行わせることが可能となり、ユーザの利便性を向上させることができる。 This allows multiple codes to be stored on the terminal 20, so even if multiple offline payments need to be made, the payments can be made immediately, improving user convenience.
<第1変形例(5)>
第1実施例では、本開示における「コード情報」を、決済用番号や、決済用番号を含む端末表示用コード画像としたが、これに限定されない。例えば、認証情報の一種であるトークンや、トークンを含む端末表示用コード画像を、本開示における「コード情報」とすることもできる。
<First Modification Example (5)>
In the first embodiment, the "code information" in the present disclosure is a payment number or a terminal display code image including a payment number, but is not limited to this. For example, a token, which is a type of authentication information, or a terminal display code image including a token can also be the "code information" in the present disclosure.
この場合、決済用番号を端末表示用コード画像に含めるのではなく、限定ではなく例として、ランダムなトークンを発生させる手法(アルゴリズム)を用いて発行したトークンを端末表示用コード画像に含めるようにしてもよいし、そのようにしなくてもよい。この場合は、サーバ10側で、端末20、または端末20のユーザを識別するための識別情報と、発行したトークンとを関連付けて記憶部15のコード管理データベース159のコード管理データに記憶させておくようにすればよい。 In this case, rather than including the payment number in the terminal display code image, a token issued using a method (algorithm) for generating random tokens may be included in the terminal display code image, but this is not a limitation. In this case, the server 10 may associate the issued token with identification information for identifying the terminal 20 or the user of the terminal 20 and store it in the code management data of the code management database 159 in the storage unit 15.
「トークン」は、限定ではなく例として、サーバ10が、端末20、または端末20のユーザが、正規の端末20、または正規の端末20のユーザであることを認証するための認証情報の一種である。「認証情報」は、認証局が発行する情報であり、上記のトークンは、サーバ10が認証局となって、端末20、または端末20のユーザを認証するために発行する認証情報として機能する。 By way of example and not limitation, a "token" is a type of authentication information used by the server 10 to authenticate that the terminal 20 or the user of the terminal 20 is a legitimate terminal 20 or a legitimate user of the terminal 20. "Authentication information" is information issued by a certification authority, and the above token functions as authentication information issued by the server 10 as a certification authority to authenticate the terminal 20 or the user of the terminal 20.
なお、トークンは、例えば、「ランダムトークン」、「アクセストークン」、「決済用トークン」などのように表現することもできる。トークンは、上記のようにランダムに発行されるため、端末表示用コードが生成される毎に異なるトークンとなる。このため、トークンは、いわばワンタイムパスワードとして機能する。 The token can also be referred to as, for example, a "random token," an "access token," or a "payment token." Because the token is issued randomly as described above, it will be different each time a terminal display code is generated. For this reason, the token functions as a one-time password, so to speak.
また、決済用番号やトークンの他に、端末表示用コード画像を読み取った店舗コードリーダ装置50が、サーバ10が提供するウェブサイトやウェブページにアクセスするためのアクセス情報の一例として、サーバ10が提供するウェブページの一種である決済用ページにアクセスするためのURL(Uniform Resource Locator)等の情報を含めるようにしてもよいし、そのようにしなくてもよい。 In addition to the payment number and token, the store code reader device 50 that reads the terminal display code image may, or may not, include information such as a uniform resource locator (URL) for accessing a payment page, which is a type of web page provided by the server 10, as an example of access information for accessing a website or web page provided by the server 10.
<第1変形例(6)>
コード表示画面において、端末表示用コード画像が表示される領域とは異なる領域に、コード表示期限の情報や、コード有効期限の情報を表示させるようにしてもよいし、そのようにしなくてもよい。
<First Modification Example (6)>
On the code display screen, information on the code display expiration date and information on the code expiration date may or may not be displayed in an area different from the area where the terminal display code image is displayed.
コード表示期限の情報には、限定ではなく例として、「コード表示期限」、「コード表示期限の残り時間」、「コード表示期限が終了する時刻や日時」、「コード表示時間」等の情報が含まれる。
なお、これらのコード表示期限の情報は、コード表示期限に関する情報と言ってもよい。
The information on the code display deadline includes, but is not limited to, information such as "code display deadline,""remaining time of code display deadline,""time or date when the code display deadline ends," and "code display time."
The information on the code display expiration date may be referred to as information on the code display expiration date.
また、コード有効期限の情報には、限定ではなく例として、「コード有効期限」、「コード有効期限の残り時間」、「コード有効期限が終了する時刻や日時」、「コード有効時間」等の情報が含まれる。
なお、これらのコード有効期限の情報は、コード有効期限に関する情報と言ってもよい。
Furthermore, the code expiration date information includes, but is not limited to, information such as "code expiration date,""remaining time until code expiration date,""time or date when code expiration date ends," and "code validity period."
The code expiration date information may be referred to as information relating to the code expiration date.
図4-16は、本変形例におけるコード表示画面の一例を示す図である。
このコード表示画面では、限定ではなく例として、二次元の第1の端末表示用コード画像QC1の下に、コード表示期限の残り時間が表示されている。
コード表示期限の残り時間は、限定ではなく例として、コード表示画面が表示されたタイミング(表示が開始されたタイミング)を基準として、時計部29Aの計時時刻とに基づいて表示・更新される。
FIG. 4-16 is a diagram showing an example of a code display screen in this modified example.
In this code display screen, by way of example and not limitation, the remaining time until the code display expiration date is displayed below the two-dimensional first terminal display code image QC1.
The remaining time until the code display deadline is displayed and updated based on the time measured by the clock unit 29A, using the time when the code display screen is displayed (the time when the display starts) as a reference, as an example and not a limitation.
なお、この表示例では、ユーザが分かり易いように、図3-3と同じ態様でコード表示期限の残り時間を表示しているが、これとは異なり、図3-3とは異なる態様でコード表示期限の残り時間を表示してもよいし、そのようにしなくてもよい。 In this display example, the remaining time until the code display deadline is displayed in the same manner as in Figure 3-3 to make it easier for users to understand, but the remaining time until the code display deadline may or may not be displayed in a manner different from that shown in Figure 3-3.
図4-17は、本変形例におけるコード表示画面の一例を示す図である。
このコード表示画面では、限定ではなく例として、二次元の第1の端末表示用コード画像QC1の上に、砂時計のマーク(画像)とともに、第1の端末表示用コード画像に関連付けられた第1のコード有効期限の残り時間が表示されている。
FIG. 4-17 is a diagram showing an example of a code display screen in this modified example.
On this code display screen, by way of example and not limitation, an hourglass mark (image) is displayed on top of the two-dimensional first terminal display code image QC1, along with the remaining time until the first code expiration date associated with the first terminal display code image.
第1のコード有効期限の残り時間は、限定ではなく例として、端末表示用コードストックデータ2831に記憶されている端末表示用コードのうち、この端末表示用コードに関連付けて記憶されているコード有効期限と、時計部29Aの計時時刻とに基づいて表示・更新される。 The remaining time until the first code expiration date is displayed and updated based on, for example and not by way of limitation, the code expiration date associated with the terminal display code stored in the terminal display code stock data 2831 and the time measured by the clock unit 29A.
図4-18は、本変形例におけるコード表示画面の一例を示す図である。
このコード表示画面は、図4-16のコード表示画面と、図4-17のコード表示画面とを組み合わせたコード表示画面である。
具体的には、限定ではなく例として、第1の端末表示用コード画像QC1の上下に、それぞれ第1のコード有効期限の残り時間と、第1のコード表示期限の残り時間とが表示されている。
FIG. 4-18 is a diagram showing an example of a code display screen in this modified example.
This code display screen is a combination of the code display screens of FIGS. 4-16 and 4-17.
Specifically, by way of example and not limitation, the remaining time until the first code expiration date and the remaining time until the first code display date are displayed above and below the first terminal display code image QC1, respectively.
図4-19は、本変形例におけるコード表示画面の一例を示す図である。
このコード表示画面は、図4-18とほぼ同様であるが、コード有効期限の情報の表示が異なっている。
具体的には、コード有効期限の情報として、第1の端末表示用コードが、コード有効期限が開始する時刻からコード有効時間が経過するまで有効であることを示す表示として、限定ではなく例として、「2019/06/10 9:00から12時間有効」の文字が表示されている。
FIG. 4-19 is a diagram showing an example of a code display screen in this modified example.
This code display screen is almost the same as that shown in FIG. 4-18, but the code expiration date information is displayed differently.
Specifically, as information on the code expiration date, the text "Valid for 12 hours from 9:00 on 2019/06/10" is displayed, as a non-limiting example, to indicate that the first terminal display code is valid from the time the code expiration date starts until the code validity time has elapsed.
図4-16~図4-19のコード表示画面は、オフライン状態において表示されるコード表示画面とすることもできるし、オンライン状態において表示されるコード表示画面とすることもできる。 The code display screens in Figures 4-16 to 4-19 can be code display screens displayed in offline mode, or code display screens displayed in online mode.
なお、コード有効期限の情報を表示させるのに代えて、限定ではなく例として、前述した仮コード有効期限の情報を表示させるようにしてもよいし、そのようにしなくてもよい。 Instead of displaying the code expiration date information, the temporary code expiration date information described above may or may not be displayed, by way of example and not limitation.
<第1変形例(6)の効果>
本変形例は、端末20が、コード有効期限やコード有効期限の残り時間等の情報(限定ではなく、第1有効期限の情報の一例)をコード表示画面内の領域(限定ではなく、端末の表示領域の一例)に表示する構成を示している。
このような構成により得られる効果の一例として、第1有効期限の情報を端末のユーザに報知することができる。
<Effects of the first modified example (6)>
This modified example shows a configuration in which the terminal 20 displays information such as the code expiration date and the remaining time until the code expiration date (this is not a limitation, but an example of information about the first expiration date) in an area within the code display screen (this is not a limitation, but an example of the display area of the terminal).
As an example of the effect obtained by such a configuration, information on the first expiration date can be notified to the user of the terminal.
また、本変形例は、端末20が、コード有効期限やコード有効期限の残り時間等の情報(限定ではなく、第1有効期限の情報の一例)と、端末20でストックされた端末表示用コード画像や決済用番号(限定ではなく、第1コード情報の一例)とをコード表示画面内の領域(限定ではなく、端末の表示領域の一例)に表示する構成を示している。
このような構成により得られる効果の一例として、第1有効期限の情報と、第1コード情報とを端末のユーザに報知することができ、ユーザの利便性を向上させることができる。
In addition, this modified example shows a configuration in which the terminal 20 displays information such as the code expiration date and the remaining time until the code expiration date (not limited to this, but an example of information about the first expiration date), as well as a terminal display code image and payment number (not limited to this, but an example of first code information) stored in the terminal 20 in an area within the code display screen (not limited to this, but an example of the display area of the terminal).
As an example of the effect obtained by such a configuration, the first expiration date information and the first code information can be notified to the user of the terminal, thereby improving user convenience.
また、本変形例は、端末20が、オフライン状態において、コード有効期限やコード有効期限の残り時間等の情報(限定ではなく、第1有効期限の情報の一例)をコード表示画面内の領域(限定ではなく、端末の表示領域の一例)に表示する構成を示している。
このような構成により得られる効果の一例として、第1有効期限の情報を、端末の通信の状態に基づいて、端末の表示領域に表示することができる。例えば、端末の通信環境や通信状況が悪い場合や不安定な場合であっても、第1有効期限の情報を端末の表示領域に表示することができるため、ユーザの利便性を向上させることができる。
In addition, this modified example shows a configuration in which, when the terminal 20 is offline, it displays information such as the code expiration date and the remaining time until the code expiration date (this is not a limitation, but an example of information about the first expiration date) in an area within the code display screen (this is not a limitation, but an example of the display area of the terminal).
As an example of the effect obtained by such a configuration, information on the first expiration date can be displayed in the display area of the terminal based on the communication status of the terminal. For example, even if the communication environment or communication status of the terminal is poor or unstable, the information on the first expiration date can be displayed in the display area of the terminal, thereby improving user convenience.
また、本変形例は、端末20が、端末20でストックされた端末表示用コード画像や決済用番号(限定ではなく、第1コード情報の一例)と、コード表示期限やコード表示期限の残り時間等の情報(限定ではなく、第1有効期限とは異なる、第1コード情報が利用できる期限の一例)とをコード表示画面内の領域に表示する構成を示している。
このような構成により得られる効果の一例として、第1コード情報と、第1有効期限とは異なる、第1コード情報が利用できる期限とを端末のユーザに報知することができる。
In addition, this modified example shows a configuration in which the terminal 20 displays, in an area within the code display screen, a terminal display code image and a payment number (not limited to, but an example of the first code information) stored in the terminal 20, as well as information such as the code display expiration date and the remaining time until the code display expiration date (not limited to, but an example of the expiration date for which the first code information can be used, which is different from the first expiration date).
As an example of the effect obtained by such a configuration, it is possible to notify the terminal user of the first code information and a time limit during which the first code information can be used, which is different from the first expiration date.
<第1変形例(7)>
第1実施例で説明した決済アプリケーションの表示画面は、あくまでも一例に過ぎず、適宜設計変更可能である。
<First Modification Example (7)>
The display screen of the payment application explained in the first embodiment is merely an example, and the design can be changed as appropriate.
図4-20は、本変形例において端末20の表示部24に表示される決済アプリケーションのトップ画面の一例を示す図である。
このトップ画面には、前述した「コードアイコン」とは別に、「コード(オフライン)」と示された「コード(オフライン)アイコン」が表示されている。
FIG. 4-20 is a diagram showing an example of the top screen of the payment application displayed on the display unit 24 of the terminal 20 in this modified example.
In addition to the aforementioned "code icon," this top screen also displays a "code (offline) icon" labeled "code (offline)."
本変形例において、「コードアイコン」は、オンライン状態においてコード表示画面を表示させるためのアイコンであり、「コード(オフライン)アイコン」は、オフライン状態においてコード表示画面を表示させるためのアイコンである。 In this variant, the "code icon" is an icon for displaying the code display screen when online, and the "code (offline) icon" is an icon for displaying the code display screen when offline.
図4-21は、本変形例において端末20の表示部24に表示されるコード表示画面の一例を示す図である。このコード表示画面は、上記のトップ画面においてコード(オフライン)アイコンがタッチされることで表示される。
このコード表示画面は、画面上部に「コード(オフライン)」と表示され、その下に、図4-10のコード表示画面と同様の情報が表示されている。
4-21 is a diagram showing an example of a code display screen displayed on the display unit 24 of the terminal 20 in this modified example. This code display screen is displayed when the code (offline) icon is touched on the top screen.
This code display screen displays "Code (offline)" at the top of the screen, and below that, the same information as in the code display screen of Figure 4-10 is displayed.
この表示画面例では、端末20が、オフライン状態であることを検出した場合に、ユーザ操作に従って、ストックされている端末表示用コードをコード表示画面に表示させる。そして、この端末表示用コードを用いてオフライン決済を行わせることができる。 In this example display screen, when the terminal 20 detects that it is offline, the stored terminal display code is displayed on the code display screen in accordance with user operation. This terminal display code can then be used to perform offline payments.
<第1変形例(8)>
図3-4の処理のA130において、端末20がサーバ10から端末表示用コードを受信したタイミングで、A240およびA250の処理を行って、端末表示用コードを表示部24に表示させるようにしてもよいし、そのようにしなくてもよい。
<First Modification Example (8)>
In the process A130 of Figure 3-4, when the terminal 20 receives the terminal display code from the server 10, the processes A240 and A250 may be performed to display the terminal display code on the display unit 24, or it may not be necessary to do so.
また、図4-14の処理のA330において、端末20がサーバ10から端末表示用コードと、コード有効期限とを受信したタイミングで、A340およびA350の処理を行って、端末表示用コードを表示部24に表示させるようにしてもよいし、そのようにしなくてもよい。 Furthermore, in the process A330 of Figure 4-14, when the terminal 20 receives the terminal display code and the code expiration date from the server 10, the processes A340 and A350 may be performed to display the terminal display code on the display unit 24, but this is not required.
この場合、限定ではなく例として、決済アプリケーションのトップ画面(例えば図3-2)においてコードアイコンがタッチされた場合、端末表示用コードのコード表示画面に表示が切り替わるようにすることができる。 In this case, by way of example and not limitation, when the code icon is touched on the top screen of the payment application (e.g., Figure 3-2), the display can be switched to a code display screen for the terminal display code.
<第1変形例(9)>
第1実施例では、「決済に関する処理に基づく時刻」をコード読み取り時刻とする場合を例に挙げて説明したが、これに限定されない。
<First Modification Example (9)>
In the first embodiment, the case where the code reading time is the "time based on the payment processing" has been described as an example, but the present invention is not limited to this.
まず、コード読み取り時刻ではなく、日付の情報も含めたコード読み取り日時を「決済に関する処理に基づく時刻」としてもよいし、そのようにしなくてもよい。 First, instead of the time the code was read, the date and time the code was read, including the date information, may or may not be used as the "time based on the payment-related processing."
また、端末20でストックされた端末表示用コードが端末20で表示された時刻(以下、「コード表示時刻」と称する。)や日時(以下、「コード表示日時」と称する。)を「決済に関する処理に基づく時刻」としてもよいし、そのようにしなくてもよい。 In addition, the time (hereinafter referred to as the "code display time") or date and time (hereinafter referred to as the "code display date and time") when the terminal display code stored on terminal 20 is displayed on terminal 20 may, or may not, be used as the "time based on the payment-related processing."
ただし、オンライン状態ではサーバ10は端末20と通信しており、端末20で端末表示用コードが表示されたことを認識可能であるため、サーバ10は、時計部19の計時情報に基づいて、コード表示時刻やコード表示日時を特定することができる。
しかしながら、オフライン状態では、サーバ10は端末20と通信できないため、サーバ10は、端末20で端末表示用コードが表示されたか否かが分からず、コード表示時刻やコード表示日時を特定することができない。
そこで、限定ではなく例として、以下の処理を行うようにする。
However, when online, the server 10 is in communication with the terminal 20 and can recognize that the terminal display code has been displayed on the terminal 20. Therefore, the server 10 can determine the code display time and the code display date and time based on the timing information of the clock unit 19.
However, in the offline state, the server 10 cannot communicate with the terminal 20, so the server 10 does not know whether the terminal display code has been displayed on the terminal 20, and is therefore unable to identify the code display time or the code display date and time.
Therefore, by way of example and not limitation, the following processing is performed.
図4-22は、本変形例における各装置が実行する処理の流れの一例を示すフローチャートである。左側から順に、端末20の制御部21が実行する決済アプリケーション処理の一例である第2の決済アプリケーション処理、店舗コードリーダ装置50の制御部51が実行する店舗決済処理の一例である第2の店舗決済処理、サーバ10の制御部11が実行する決済管理処理の一例である第2の決済管理処理をそれぞれ示している。 Figure 4-22 is a flowchart showing an example of the processing flow executed by each device in this modified example. From the left, it shows a second payment application process, which is an example of payment application processing executed by the control unit 21 of the terminal 20, a second store payment process, which is an example of store payment processing executed by the control unit 51 of the store code reader device 50, and a second payment management process, which is an example of payment management processing executed by the control unit 11 of the server 10.
図4-22のフローチャートは、図3-4のフローチャートを一部書き換えたものである。図3-4のフローチャートとは、限定ではなく例として、オフライン状態での処理ステップ(例えば、A450、B450、B460、C470)が異なる。 The flowchart in Figure 4-22 is a partial rewrite of the flowchart in Figure 3-4. It differs from the flowchart in Figure 3-4 in the offline processing steps (e.g., A450, B450, B460, C470), for example and not by way of limitation.
この処理では、一例として、端末20、または端末20のユーザを識別するための識別情報を、前述したアプリケーションIDとして説明する。 In this process, as an example, the identification information for identifying the terminal 20 or the user of the terminal 20 will be described as the aforementioned application ID.
A240の後、オフライン状態において、限定ではなく例として、端末20のユーザによってコード表示操作がなされると、制御部21が、拡張端末表示用コード生成処理を行うとともに、コード表示処理部2113が、コード表示処理を行う(A450)。 After A240, when the user of terminal 20 performs a code display operation in the offline state, for example and not by way of limitation, the control unit 21 performs an extended terminal display code generation process, and the code display processing unit 2113 performs a code display process (A450).
ここで、A240でストックされた端末表示用コードに基づき端末20側で処理(加工・生成、表示等の処理を含む。)される決済用のコードを「拡張端末表示用コード」と称し、この拡張端末表示用コードのコード画像を「拡張端末表示用コード画像」と称する。 Here, the payment code processed (including processing, generation, display, etc.) on the terminal 20 side based on the terminal display code stored in A240 is referred to as the "extended terminal display code," and the code image of this extended terminal display code is referred to as the "extended terminal display code image."
拡張端末表示用コードは、端末表示用コードと同様に、決済種別「端末コード表示」での決済に使用されるコードであるが、オンライン決済に限らず、オフライン決済にも使用可能なコードである。 Like the terminal display code, the extended terminal display code is a code used for payments with the "Terminal Code Display" payment type, but it can also be used for offline payments.
なお、拡張端末表示用コードは、オフライン決済のみならず、オンライン決済にも使用可能とすることができる。つまり、端末20側でオフライン状態であるか否かを判定(検出)することは必須ではなく、オンライン状態/オフライン状態を問わず、拡張端末表示用コードを用いて決済を行うようにすることが可能である。 The extended terminal display code can be used not only for offline payments, but also for online payments. In other words, it is not necessary for the terminal 20 to determine (detect) whether it is offline, and payments can be made using the extended terminal display code regardless of whether it is online or offline.
拡張端末表示用コード生成処理では、限定ではなく例として、拡張端末表示用コード画像を生成する。具体的には、端末表示用コードストックデータ2831にストックされている端末表示用コード画像からデコードによって取得した決済用番号、または端末表示用コードストックデータ2831にストックされている決済用番号と、制御部21が生成したタイムスタンプ情報とをエンコード(符号化)し、図形化(画像化)して、拡張端末表示用コード画像を生成する。 In the extended terminal display code generation process, a code image for extended terminal display is generated, by way of example and not limitation. Specifically, the payment number obtained by decoding the terminal display code image stored in the terminal display code stock data 2831, or the payment number stored in the terminal display code stock data 2831 and the timestamp information generated by the control unit 21 are encoded and converted into a graphic (image) to generate the extended terminal display code image.
ここで、タイムスタンプ情報とは、特定の事象(特定のイベント)が発生した日時、日付、時刻などを示す情報であるとともに、そのタイムスタンプ情報に関連付けられた情報やデータ(ここでは拡張端末表示用コード)が、ある時刻に確実に存在していたことを証明するための電子的な時刻証明書として機能するものである。 Here, timestamp information refers to information that indicates the date, time, and time when a specific event occurred, and also functions as an electronic time certificate that proves that the information or data associated with that timestamp information (in this case, the extended terminal display code) definitely existed at a certain time.
この例では、「拡張端末表示用コード画像が端末20の表示部24に表示されること」を特定の事象とし、端末20の制御部21は、拡張端末表示用コード画像が表示された(表示が開始された)時刻であるコード表示時刻を含むタイムスタンプ情報を生成する。コード表示時刻やタイムスタンプ情報は、「時刻情報」の一例であり、端末20の時計部29Aによって計時される情報に基づき生成される。 In this example, the specific event is "the display of a code image for extended terminal display on the display unit 24 of the terminal 20," and the control unit 21 of the terminal 20 generates timestamp information including the code display time, which is the time when the code image for extended terminal display was displayed (when display began). The code display time and timestamp information are examples of "time information," and are generated based on information kept by the clock unit 29A of the terminal 20.
なお、店舗によっては、二次元コードの読み取りには対応していないが、一次元コードの読み取りには対応可能な場合がある。そこで、二次元コード(限定ではなく例としてQRコード)に加えて、一次元コード(限定ではなく例としてバーコード)で表される拡張端末表示用コード画像を生成するようにしてもよいし、そのようにしなくてもよい。 Note that some stores may not be able to read two-dimensional codes, but may be able to read one-dimensional codes. Therefore, it may be possible to generate a code image for display on an extended terminal that is represented by a one-dimensional code (a barcode, for example, but not limited to) in addition to a two-dimensional code (a QR code, for example, but not limited to).
また、コード表示時刻に代えて、時刻に加えて日付の情報も含む「コード表示日時」を含むタイムスタンプ情報を生成するようにしてもよいし、そのようにしなくてもよい。 In addition, instead of the code display time, timestamp information may be generated that includes a "code display date and time" that includes date information in addition to the time, but this is not required.
また、第三者が元情報を解読することができないようにするために、決済用番号やタイムスタンプ情報を暗号化した情報をエンコードするようにしてもよいし、そのようにしなくてもよい。 In addition, to prevent third parties from deciphering the original information, the payment number and timestamp information may or may not be encoded as encrypted information.
また、タイムスタンプ情報をエンコードするのではなく、コード表示時刻やコード表示日時そのものをエンコードするようにしてもよいし、そのようにしなくてもよい。 Also, instead of encoding timestamp information, the code display time or the code display date and time itself may be encoded, or it may not be necessary to do so.
コード表示処理では、限定ではなく例として、少なくとも、拡張端末表示用コード画像を含むコード表示画面を表示部24に表示させる。 In the code display process, by way of example and not limitation, a code display screen including at least a code image for displaying an extended terminal is displayed on the display unit 24.
なお、上記のように、拡張端末表示用コード生成処理において二次元の拡張端末表示用コード画像を生成した場合は、限定ではなく例として、二次元の拡張端末表示用コード画像を表示させるようにすることができる。 As described above, if a two-dimensional code image for extended terminal display is generated in the process of generating a code for extended terminal display, the two-dimensional code image for extended terminal display can be displayed, for example and not as a limitation.
また、拡張端末表示用コード生成処理において、一次元の拡張端末表示用コード画像も生成した場合は、限定ではなく例として、二次元の拡張端末表示用コード画像の他に、一次元の拡張端末表示用コード画像を表示させるようにすることができる。この場合、一次元の拡張端末表示用コード画像の近傍に、決済用番号を併せて表示させてもよいし、そのようにしなくてもよい。 Furthermore, if a one-dimensional code image for displaying an extended terminal is also generated in the process of generating a code for displaying an extended terminal, then, by way of example and not limitation, it is possible to display the one-dimensional code image for displaying an extended terminal in addition to the two-dimensional code image for displaying an extended terminal. In this case, the payment number may or may not be displayed next to the one-dimensional code image for displaying an extended terminal.
その後、表示部24に表示された拡張端末表示用コード画像が端末20のユーザによって店舗の店員等に提示されると、制御部51は、端末20の表示部24に表示された拡張端末表示用コード画像を、コードリーダ58に読み取らせる制御を行う(B450)。 After that, when the user of the terminal 20 presents the code image for displaying the extended terminal displayed on the display unit 24 to a store clerk or the like, the control unit 51 controls the code reader 58 to read the code image for displaying the extended terminal displayed on the display unit 24 of the terminal 20 (B450).
制御部51は、通信I/F54によってサーバ10にアクセスする。そして、制御部51は、少なくとも、デコードによって取得した決済用番号およびタイムスタンプ情報と、店舗識別情報と、決済予定金額とを含む決済要求情報を、通信I/F54によってサーバ10に送信する(B460)。 The control unit 51 accesses the server 10 via the communication I/F 54. The control unit 51 then transmits payment request information, including at least the payment number and timestamp information obtained by decoding, store identification information, and the planned payment amount, to the server 10 via the communication I/F 54 (B460).
店舗コードリーダ装置50から通信I/F14によって決済要求情報を受信すると(C160)、制御部11は、決済処理を行う(C470)。 When payment request information is received from the store code reader device 50 via the communication I/F 14 (C160), the control unit 11 performs payment processing (C470).
具体的には、受信された決済要求情報に含まれる決済用番号が、アプリケーションIDと関連付けてコード管理データベース159に記憶されているか否かを判定する。そして、記憶されていると判定した場合、受信された決済要求情報に含まれるタイムスタンプ情報から特定されるコード表示時刻が、そのアプリケーションIDのコード管理データにおける、その決済用番号と関連付けて記憶されているコード有効期限内であるか否かを判定する。そして、この条件を満たす場合は「決済可能」と判定し、決済管理データベース157Aのうち、そのアプリケーションIDの決済管理データに記憶されている残高から決済予定金額を減算して決済する。 Specifically, it determines whether the payment number included in the received payment request information is stored in code management database 159 in association with the application ID. If it determines that it is stored, it then determines whether the code display time identified from the timestamp information included in the received payment request information is within the code expiration date stored in association with the payment number in the code management data for that application ID. If this condition is met, it determines that "payment is possible" and makes the payment by subtracting the planned payment amount from the balance stored in the payment management data for that application ID in payment management database 157A.
なお、前述したコード表示期限内の決済であるか否かも判定するのであれば、限定ではなく例として、サーバ10の時計部19の計時時刻と、受信された決済要求情報に含まれるタイムスタンプ情報から特定されるコード表示時刻との差の時間をコード表示時間と比較して、コード表示期限内であるか否かも併せて判定するようにすればよい。 In addition, if it is also desired to determine whether the payment is within the aforementioned code display deadline, then, as a non-limiting example, the difference between the time measured by the clock unit 19 of the server 10 and the code display time determined from the timestamp information included in the received payment request information can be compared with the code display time to also determine whether the payment is within the code display deadline.
<第2実施例>
第1実施例では、コード有効期限に基づいて、サーバ10に決済を行わせた。しかしながら、端末20のユーザが、必ずしもコード有効期限内にサーバ10に決済を行わせるための手続きを行うことができるとは限らない。
また、コード有効期限が経過してしまった場合は、端末表示用コードをサーバ10から再度取得する必要があるが、ユーザによっては、この作業が面倒な場合がある。
<Second Example>
In the first embodiment, the server 10 performs the payment based on the code expiration date. However, the user of the terminal 20 may not always be able to perform the procedure to have the server 10 perform the payment within the code expiration date.
Furthermore, if the code expiration date has passed, it is necessary to obtain the terminal display code again from the server 10, but this task may be troublesome for some users.
第2実施例に記載の内容は、他の各実施例や他の各変形例のいずれにも適用可能である。
また、既出の構成要素と同一の構成要素については同一の符号を付して、再度の説明を省略する。
The contents described in the second embodiment can be applied to any of the other embodiments and other modified examples.
Furthermore, the same components as those already mentioned are given the same reference numerals and will not be described again.
図5-1は、本実施例において端末20の記憶部28に記憶される情報の一例を示す図である。
本実施例において、決済アプリケーションプログラム282は、限定ではなく例として、端末側コード更新処理として実行される端末側コード更新処理プログラム2821をサブルーチンプログラムとして含む。
FIG. 5A is a diagram showing an example of information stored in the storage unit 28 of the terminal 20 in this embodiment.
In this embodiment, the payment application program 282 includes, as a subroutine program, a terminal side code update processing program 2821 that is executed as a terminal side code update processing, by way of example and not limitation.
<処理>
図5-2は、本実施例における各装置が実行する処理の流れの一例を示すフローチャートである。左側に、端末20の制御部21が実行する端末側コード更新処理を示し、右側に、サーバ10の制御部11が実行するサーバ側コード更新処理を示す。これらの処理は、限定ではなく例として、前述した端末20の決済アプリケーション処理と、前述したサーバ10の決済管理処理とのそれぞれのサブ処理として実行される(例えばバックグラウンドで実行される)処理である。
<Processing>
5-2 is a flowchart showing an example of the flow of processing executed by each device in this embodiment. The left side shows the terminal-side code update processing executed by the control unit 21 of the terminal 20, and the right side shows the server-side code update processing executed by the control unit 11 of the server 10. These processes are, by way of example and not limitation, processes executed as sub-processes (e.g., executed in the background) of the aforementioned payment application processing of the terminal 20 and the aforementioned payment management processing of the server 10.
最初に、制御部21は、コード更新条件判定処理を行う(D110)。具体的には、限定ではなく例として、端末20の時計部29Aで計時されている時刻(以下、「端末計時時刻」と称する。)が、端末表示用コードストックデータ2831に記憶されている端末表示用コードに関連付けられたコード有効期限が終了する時刻(日時)から設定時間前の時刻となったか否かを判定する。 First, the control unit 21 performs a code update condition determination process (D110). Specifically, by way of example and not limitation, it determines whether the time kept by the clock unit 29A of the terminal 20 (hereinafter referred to as the "terminal time") is a set time before the expiration date (date and time) of the code associated with the terminal display code stored in the terminal display code stock data 2831.
設定時間は、限定ではなく例として、コード有効時間に基づいて設定することができる。
例えば、コード有効時間が「12時間」であれば、この半分の「6時間」を設定時間として設定し、コード有効時間が「24時間」であれば、この半分の「12時間」を設定時間として設定するなどすることができる。端末表示用コードを更新するため、ある程度余裕を持たせた時間とすることが望ましい。
The set time may be set based on, for example and not by way of limitation, a code validity time.
For example, if the code validity period is "12 hours," the set time can be set to half of that, "6 hours," and if the code validity period is "24 hours," the set time can be set to half of that, "12 hours." It is desirable to set the time with some leeway in order to update the terminal display code.
なお、コード有効期限が終了する時刻から設定時間前の時刻となったか否かを判定するようにするのではなく、限定ではなく例として、コード受信時刻(コード日時)やコード記憶時刻(コード記憶日時)から設定時間が経過したか否かを判定するようにしてもよいし、そのようにしなくてもよい。
つまり、コード更新条件の判定の基準とする時刻(基準時刻)は、コード有効期限が終了する時刻としてもよいし、コード受信時刻やコード記憶時刻としてもよい。
It should be noted that rather than determining whether the time from the time the code expiration date ends to the time before the set time, it is possible, but not limited to, to determine whether the set time has passed from the time the code was received (code date and time) or the time the code was stored (code date and time), or it is not necessary to do so.
That is, the time (reference time) used as the reference for determining whether the code update condition is met may be the time when the code validity period ends, or the time when the code is received or stored.
なお、第1の端末表示用コードストックデータ2831Aを適用する場合は、1つの端末表示用コードが記憶されているため、この端末表示用コードを対象とし、この端末表示用コードに関連付けられたコード有効期限に基づいて、D110の判定を行えばよい。 When applying the first terminal display code stock data 2831A, one terminal display code is stored, so this terminal display code is the target and D110 determination is made based on the code expiration date associated with this terminal display code.
一方、第2の端末表示用コードストックデータ2831Bを適用する場合は、複数の端末表示用コードが記憶されているため、これら複数の端末表示用コードそれぞれを対象とし、それぞれの端末表示用コードに関連付けられたコード有効期限に基づいて、D110の判定を行えばよい。 On the other hand, when applying the second terminal display code stock data 2831B, since multiple terminal display codes are stored, it is sufficient to perform a D110 determination for each of these multiple terminal display codes based on the code expiration date associated with each terminal display code.
設定時間前の時刻となっている場合、制御部21は、コード更新条件が成立したと判定する。 If the time is before the set time, the control unit 21 determines that the code update condition is met.
コード更新条件が成立したと判定したならば(D120:YES)、制御部21は、オンライン状態であるか否かを判定する(D130)。そして、オンライン状態であると判定したならば(D130:YES)、制御部21は、限定ではなく例として、アプリケーションIDと、更新を依頼する端末表示用コードのコードNoとを含むコード更新依頼情報を、通信I/F22によってサーバ10に送信する(D160)。 If it is determined that the code update condition is met (D120: YES), the control unit 21 determines whether the device is online (D130). If it is determined that the device is online (D130: YES), the control unit 21 sends code update request information, which includes, by way of example and not limitation, the application ID and the code number of the terminal display code requesting the update, to the server 10 via the communication I/F 22 (D160).
ここで、「コード更新依頼情報」は、端末20でストックされている端末表示用コードの更新(再取得と言ってもよい。)を依頼(申請と言ってもよい。)するための情報であり、コード情報の更新に関するリクエストとも言える。
また、「コード更新依頼情報」は、更新された端末表示用コード(新しい端末表示用コード)の送信を依頼する情報とも言える。
Here, the "code update request information" is information for requesting (or applying for) an update (or re-acquisition) of the terminal display code stored in terminal 20, and can also be considered a request for updating the code information.
The "code update request information" can also be considered as information requesting transmission of an updated terminal display code (new terminal display code).
サーバ10の制御部11は、端末20からコード更新依頼情報を受信したか否かを判定する(E110)。そして、受信したと判定したならば(E110:YES)、端末表示用コード更新処理を行う(E120)。 The control unit 11 of the server 10 determines whether code update request information has been received from the terminal 20 (E110). If it is determined that the request has been received (E110: YES), the control unit 11 performs terminal display code update processing (E120).
具体的には、限定ではなく例として、記憶部15のコード管理データベース159のうち、受信されたコード更新依頼情報に含まれるアプリケーションIDのコード管理データを参照する。そして、そのコード管理データに、受信されたコード更新依頼情報に含まれるコードNoが存在するか否かを判定し、存在すると判定したならば、前述した端末表示用コード生成処理と同様の処理を行って、更新用の端末表示用コードを生成する。そして、そのコードNoと関連付けてコード管理データに記憶されているコード生成日時と、決済用番号と、コード有効期限とを更新する。このようにして更新された端末表示用コードを、以下、「更新端末表示用コード」と称する。 Specifically, by way of example and not limitation, the code management data for the application ID included in the received code update request information is referenced in the code management database 159 of the storage unit 15. It is then determined whether the code number included in the received code update request information exists in that code management data, and if it is determined that the code number exists, a process similar to the terminal display code generation process described above is performed to generate an updated terminal display code. The code generation date and time, payment number, and code expiration date stored in the code management data in association with that code number are then updated. Hereinafter, the terminal display code updated in this manner will be referred to as the "updated terminal display code."
次いで、制御部21は、更新端末表示用コードと、そのコード有効期限とを、通信I/F14によって端末20に送信する(E170)。 Next, the control unit 21 transmits the updated terminal display code and its code expiration date to the terminal 20 via the communication I/F 14 (E170).
その後、制御部11は、処理を終了するか否かを判定し(E190)、処理を継続すると判定したならば(E190:NO)、E110に処理を戻す。また、処理を終了すると判定したならば(E190:YES)、サーバ側コード更新処理を終了する。 The control unit 11 then determines whether to terminate the processing (E190), and if it determines to continue the processing (E190: NO), it returns to E110. If it determines to terminate the processing (E190: YES), it terminates the server-side code update processing.
また、端末20からコード更新依頼情報を受信しなかった場合(E110:NO)、制御部11は、E190へと処理を移す。 Also, if no code update request information is received from the terminal 20 (E110: NO), the control unit 11 proceeds to E190.
通信I/F22によってサーバ10から更新端末表示用コードと、そのコード有効期限とを受信すると(D170)、制御部21は、対応するコードNoと関連付けて端末表示用コードストックデータ2831に記憶されているコード受信日時と、コードデータと、コード有効期限とを更新する(D180)。この更新処理を行うことで、更新対象とした端末表示用コード(古い端末表示用コード)は利用不可(使用不可)となる。 When the communication I/F 22 receives an updated terminal display code and its code expiration date from the server 10 (D170), the control unit 21 updates the code reception date and time, code data, and code expiration date stored in the terminal display code stock data 2831 in association with the corresponding code number (D180). By performing this update process, the terminal display code to be updated (old terminal display code) becomes unusable (cannot be used).
なお、D180において、受信された更新端末表示用コードと、そのコード有効期限とを、端末表示用コードストックデータ2831に別のデータ(新たなデータ)として記憶させるようにし、更新対象とした端末表示用コードには「利用不可」のフラグを設定する処理を行うなどして、更新対象とした端末表示用コード(古い端末表示用コード)が利用できなくなるようにしてもよいし、そのようにしなくてもよい。 In D180, the received updated terminal display code and its code expiration date may be stored as separate data (new data) in the terminal display code stock data 2831, and a process may be performed to set an "unusable" flag for the terminal display code to be updated, so that the terminal display code to be updated (old terminal display code) becomes unusable, or this may not be necessary.
その後、制御部21は、処理を終了するか否かを判定し(D190)、処理を継続すると判定したならば(D190:NO)、D110に処理を戻す。また、処理を終了すると判定したならば(D190:YES)、端末側コード更新処理を終了する。 The control unit 21 then determines whether to terminate the process (D190), and if it determines to continue the process (D190: NO), it returns to D110. If it determines to terminate the process (D190: YES), it terminates the terminal-side code update process.
また、コード更新条件が成立しないと判定された場合(D120:NO)、または、オンライン状態ではないと判定された場合(D130:NO)、制御部11は、D190へと処理を移す。 Furthermore, if it is determined that the code update condition is not met (D120: NO), or if it is determined that the device is not online (D130: NO), the control unit 11 proceeds to D190.
なお、この処理において、端末表示用コードが更新された場合に、端末20が、端末表示用コードが更新されたことを示す情報(例えば、端末表示用コードが更新された旨のメッセージや、端末表示用コードが更新されたことを示す画像)を、プッシュ通知によって表示部24に表示したり、決済アプリケーションを実行中である場合は、表示部24の決済アプリケーション画面に表示させるようにしてもよい。 In this process, if the terminal display code is updated, the terminal 20 may display information indicating that the terminal display code has been updated (for example, a message indicating that the terminal display code has been updated or an image indicating that the terminal display code has been updated) on the display unit 24 via push notification, or, if a payment application is running, may display the information on the payment application screen of the display unit 24.
<第2実施例の効果>
第2実施例は、端末20が、あらかじめ端末20でストックされた端末表示用コード(限定ではなく、第1コード情報の一例)に関連付けられたコード有効期限(限定ではなく、第1有効期限の一例)に基づき、この端末表示用コードとは異なる更新端末表示用コード(限定ではなく、第2コード情報の一例)を、サーバ10から通信I/F22によって受信する。そして、更新端末表示用コードは、端末表示用コードに関連付けられたコード有効期限とは異なるコード有効期限(限定ではなく、第2有効期限の一例)がサーバ10によって関連付けられる構成を示している。
このような構成により得られる効果の一例として、第1有効期限に関する情報に基づいて、第1有効期限とは異なる第2有効期限がサーバによって関連付けられた第2コード情報をサーバから受信するため、例えば、第1有効期限が経過する前に第2コード情報をサーバから取得するといったことが可能となり、ユーザの利便性を向上させることができる。
<Effects of the Second Example>
In the second embodiment, the terminal 20 receives an updated terminal display code (not limited to, an example of second code information) different from a terminal display code (not limited to, an example of first code information) stored in advance on the terminal 20, based on the code expiration date (not limited to, an example of first expiration date) associated with the terminal display code, from the server 10 via the communication I/F 22. The updated terminal display code is then associated by the server 10 with a code expiration date (not limited to, an example of second expiration date) different from the code expiration date associated with the terminal display code.
As an example of the effect obtained by such a configuration, second code information associated by the server with a second expiration date different from the first expiration date based on information regarding the first expiration date is received from the server, making it possible, for example, to obtain the second code information from the server before the first expiration date has elapsed, thereby improving user convenience.
また、第2実施例は、端末20が、端末表示用コードとともに、そのコード有効期限(限定ではなく、第1有効期限に関する情報の一例)を、サーバ10から通信I/F22によって受信する。そして、受信されたコード有効期限を、制御部21によって端末表示用コードに関連付けて端末表示用コードストックデータ2831に記憶させる構成を示している。
このような構成により得られる効果の一例として、サーバによって第1コード情報に関連付けられた第1有効期限を、端末側で把握することが可能となる。
In the second embodiment, the terminal 20 receives the code expiration date (not limited to this, but an example of information relating to the first expiration date) together with the terminal display code from the server 10 via the communication I/F 22. The control unit 21 then associates the received code expiration date with the terminal display code and stores it in the terminal display code stock data 2831.
As an example of the effect obtained by such a configuration, it becomes possible for the terminal to know the first expiration date associated with the first code information by the server.
また、第2実施例は、端末20が、あらかじめ端末20でストックされた端末表示用コードに関連付けられたコード有効期限に基づいて、コード更新依頼情報(限定ではなく、第2コード情報の送信を依頼する情報の一例)をサーバ10に通信I/F22によって送信する構成を示している。
このような構成により得られる効果の一例として、第1有効期限に関する情報に基づいて、適切なタイミングで、第2コード情報を送信するようにサーバに依頼することができる。
In addition, the second embodiment shows a configuration in which the terminal 20 transmits code update request information (not limited to, but an example of information requesting the transmission of second code information) to the server 10 via the communication I/F 22 based on the code expiration date associated with the terminal display code previously stored in the terminal 20.
As an example of the effect obtained by such a configuration, it is possible to request the server to transmit the second code information at an appropriate timing based on the information regarding the first expiration date.
また、第2実施例は、更新端末表示用コード(限定ではなく、第2コード情報の一例)は、あらかじめ端末20でストックされた端末表示用コード(限定ではなく、第1コード情報の一例)に関連付けられたコード有効期限(限定ではなく、第1有効期限の一例)が経過する前に、サーバ10から通信I/F22を介して受信される構成を示している。
このような構成により得られる効果の一例として、第1有効期限が経過する前に、サーバから第2コード情報を受信することができる。
In addition, the second embodiment shows a configuration in which an updated terminal display code (not limited to, but an example of second code information) is received from the server 10 via the communication I/F 22 before the code expiration date (not limited to, but an example of the first expiration date) associated with a terminal display code (not limited to, but an example of the first code information) previously stored in the terminal 20 expires.
As an example of the effect obtained by such a configuration, the second code information can be received from the server before the first expiration date has elapsed.
また、第2実施例は、端末20は、更新端末表示用コードの受信に基づいて、受信された更新端末表示用コードと、そのコード有効期限とで、更新対象とした端末表示用コードと、そのコード有効期限とをそれぞれ更新する処理(限定ではなく、第1コード情報の利用を不可とする処理の一例)や、更新対象とした端末表示用コードに「利用不可」のフラグを設定する処理(限定ではなく、第1コード情報の利用を不可とする処理の一例)を制御部21によって行う構成を示している。
このような構成により得られる効果の一例として、第2コード情報の受信に基づいて、第1コード情報の利用を不可とするため、あらかじめ記憶部に記憶されていた古い第1コード情報が決済に利用されないようにすることができる。
In addition, the second embodiment shows a configuration in which, based on receiving an updated terminal display code, the terminal 20 performs, via the control unit 21, a process of updating the terminal display code to be updated and its code expiration date using the received updated terminal display code and its code expiration date (this is not a limitation, but an example of a process that makes the first code information unusable), and a process of setting an ``unusable'' flag for the terminal display code to be updated (this is not a limitation, but an example of a process that makes the first code information unusable).
As an example of the effect obtained by such a configuration, the first code information can be made unusable based on the reception of the second code information, thereby preventing old first code information that has been stored in the memory unit in advance from being used for payment.
<第2変形例(1)>
第2実施例では、あらかじめ端末20でストックされた端末表示用コードのコード有効期限に基づいてコード更新条件の成否を判定したが、これに限定されない。コード更新条件は、適宜設定変更可能である。
<Second Modification Example (1)>
In the second embodiment, whether or not the code update condition is met is determined based on the code expiration date of the terminal display code stored in advance in the terminal 20. However, the present invention is not limited to this. The code update condition can be set or changed as appropriate.
図5-3は、本変形例において端末20の記憶部28に記憶される情報の一例を示す図である。
本変形例において、決済アプリケーションデータ283には、限定ではなく例として、ユーザスケジュールデータ2834と、コード更新条件データ2835とが含まれる。
FIG. 5C is a diagram showing an example of information stored in the storage unit 28 of the terminal 20 in this modification.
In this variation, the payment application data 283 includes, by way of example and not limitation, user schedule data 2834 and code update condition data 2835 .
ユーザスケジュールデータ2834は、端末20のユーザのスケジュールの情報(以下、「ユーザスケジュール情報」と称する。)が記憶されたデータである。ユーザスケジュール情報は、端末20のユーザの操作に従って、設定・更新される。 User schedule data 2834 is data that stores information about the schedule of the user of terminal 20 (hereinafter referred to as "user schedule information"). User schedule information is set and updated in accordance with operations by the user of terminal 20.
コード更新条件データ2835は、コード更新条件が設定されたデータであり、そのデータ構成の一例を図5-4に示す。
コード更新条件データ2835には、限定ではなく例として、条件種別と、条件Noと、コード更新条件とが関連付けて設定されている。
The code update condition data 2835 is data in which code update conditions are set, and an example of the data configuration is shown in FIG. 5-4.
In the code update condition data 2835, as an example and not a limitation, a condition type, a condition number, and a code update condition are set in association with each other.
<条件種別「CK1」>
条件種別「CK1」は、「時間」のカテゴリであり、限定ではなく例として、条件No「CK1-1」~「CK1-3」のコード更新条件が含まれる。
<Condition type "CK1">
The condition type "CK1" is a "time" category, and includes, by way of example and not limitation, code update conditions with condition numbers "CK1-1" to "CK1-3".
条件No「CK1-1」のコード更新条件として、「端末計時時刻がコード有効期限が終了する時刻から第1設定時間前の時刻となった」が定められている。
これは、第2実施例で判定したコード更新条件と同様の条件である。
ただし、第1設定時間は、必ずしもコード有効時間の半分の時間とする必要はなく、適宜設定変更可能である。
The code update condition for condition No. "CK1-1" is set as "the terminal clock time reaches the first set time before the code expiration date expires."
This is the same condition as the code update condition determined in the second embodiment.
However, the first set time does not necessarily have to be half the code valid time, and can be set or changed as appropriate.
条件No「CK1-2」のコード更新条件として、「端末計時時刻が設定時刻(設定時間帯)となった」が定められている。
これは、端末計時時刻が設定時刻となった場合、または端末計時時刻が設定時間帯に含まれる時刻となった場合に、コード更新条件が成立したと判定することを示している。
設定時刻や設定時間帯は適宜設定変更可能である。例えば、「深夜0時」や「早朝6時」等の時刻を設定時刻として設定したり、深夜帯等の時間帯を設定時間帯として設定しておくことができる。
The code update condition for condition No. "CK1-2" is set as "the terminal clock time reaches the set time (set time zone)."
This indicates that the code update condition is determined to be met when the terminal clock time reaches the set time or when the terminal clock time reaches a time included in the set time period.
The set time and set time period can be changed as needed. For example, a time such as "midnight" or "6:00 in the morning" can be set as the set time, and a time period such as late night can be set as the set time period.
条件No「CK1-3」のコード更新条件として、「コードを前回更新してから第2設定時間が経過」が定められている。
これは、端末20でストックされている端末表示用コードを前回更新してから第2設定時間が経過した場合に、コード更新条件が成立したと判定することを示している。
第2設定時間は適宜設定変更可能であるが、コード有効時間よりも短い時間を設定する必要がある。
The code update condition for condition No. "CK1-3" is set as "a second set time has elapsed since the code was last updated."
This indicates that it is determined that the code update condition is met when the second set time has elapsed since the terminal display code stored in the terminal 20 was last updated.
The second set time can be changed as needed, but must be set to a time shorter than the code valid time.
<条件種別「CK2」>
条件種別「CK2」は、「ユーザ」のカテゴリであり、限定ではなく例として、条件No「CK2-1」~「CK2-2」のコード更新条件が含まれる。
<Condition type "CK2">
The condition type "CK2" is a "user" category, and includes, by way of example and not limitation, code update conditions with condition numbers "CK2-1" to "CK2-2".
条件No「CK2-1」のコード更新条件として、「ユーザによるコード更新要求操作あり」が定められている。これは、端末20のユーザによって端末表示用コードの更新を要求する操作(以下、「コード更新要求操作」と称する。)がなされた場合に、コード更新条件が成立したと判定することを示している。
この条件は、「ユーザアクション」の種別の条件と言うこともできる。
The code update condition for condition No. "CK2-1" is set to "a code update request operation by the user." This indicates that the code update condition is determined to be met when the user of the terminal 20 performs an operation to request an update of the terminal display code (hereinafter referred to as a "code update request operation").
This condition can also be called a "user action" type condition.
条件No「CK2-2」のコード更新条件として、「ユーザスケジュール情報(または決済情報)に基づく更新推奨タイミングとなった」が定められている。これは、ユーザスケジュールデータ2834に記憶されているユーザスケジュール情報に基づく更新推奨タイミングとなった場合に、コード更新条件が成立したと判定することを示している。 The code update condition for condition No. "CK2-2" is defined as "The recommended time for update has arrived based on the user schedule information (or payment information)." This indicates that the code update condition is determined to be met when the recommended time for update has arrived based on the user schedule information stored in user schedule data 2834.
例えば、端末20のユーザが定期的なタイミング(例えば、毎週何曜日、毎月何日)で、通信状況が不安定となる場所に位置する店舗で買い物を行って決済を行うような場合(特売日等)や、定期的に地下のバーに通ってお酒を飲んで決済を行うような場合は、その次のタイミングでも、端末20のユーザは同じ店舗を利用して決済を行う可能性が高いと考えられる。 For example, if the user of terminal 20 regularly (e.g., on certain days of the week or certain days of the month) shops and makes payments at a store located in an area where communication conditions are unstable (such as on sale days), or if the user regularly visits an underground bar to drink and make payments, it is likely that the user of terminal 20 will also use the same store to make payments the next time.
そこで、端末20は、ユーザのスケジュール情報の履歴(例えば、ユーザスケジュールデータ2834に含まれるユーザスケジュール情報の履歴)に基づいて、次に決済が行われるであろうタイミング(時刻や日時)を推定する。そして、そのタイミングよりも前のタイミング(例えば、出発前のタイミングや出発時のタイミング、目的地に到着する前のタイミング)を更新推奨タイミングとして設定しておくなどして、そのタイミングで端末表示用コードを更新するようにすることができる。 The terminal 20 then estimates the timing (time or date and time) when the next payment will likely be made based on the user's schedule information history (e.g., the user schedule information history included in the user schedule data 2834). Then, by setting a timing before that timing (e.g., before departure, at the time of departure, or before arrival at the destination) as the recommended update timing, the terminal display code can be updated at that timing.
なお、ユーザのスケジュール情報の履歴に基づいて、次に決済が行われるであろうタイミングを推定するのに代えて、またはこれに加えて、ユーザの決済情報(例えば、決済用データ2832に含まれる決済履歴データ)に基づいて、次に決済が行われるであろうタイミングを推定するようにしてもよい。
この条件は、「スケジュール」や「決済」、「履歴」の種別の条件と言うこともできる。
Instead of or in addition to estimating the timing when the next payment is likely to be made based on the user's schedule information history, the timing when the next payment is likely to be made may be estimated based on the user's payment information (e.g., payment history data included in payment data 2832).
These conditions can also be called conditions of the types "schedule,""payment," and "history."
<条件種別「CK3」>
条件種別「CK3」は、「位置」のカテゴリであり、限定ではなく例として、条件No「CK3-1」~「CK3-2」のコード更新条件が含まれる。これらの条件は、「端末位置」や「ユーザ位置」、「場所」の種別の条件と言うこともできる。
<Condition type "CK3">
The condition type "CK3" is a category of "location" and includes, by way of example and not limitation, code update conditions of condition numbers "CK3-1" to "CK3-2." These conditions can also be referred to as conditions of the type "terminal location,""userlocation," or "location."
条件No「CK3-1」のコード更新条件として、「算出端末位置が設定店舗近傍の位置」が定められている。これは、位置算出用情報検出部29Bによって検出された位置算出用情報に基づいて算出された端末20の位置(以下、「算出端末位置」と称する。)が設定店舗近傍の位置である場合に、コード更新条件が成立したと判定することを示している。 The code update condition for condition No. "CK3-1" is set to "the calculated terminal position is near the set store." This indicates that the code update condition is determined to be met when the position of the terminal 20 calculated based on the position calculation information detected by the position calculation information detection unit 29B (hereinafter referred to as the "calculated terminal position") is near the set store.
なお、算出端末位置は、算出された端末20の位置であるが、ユーザが端末20を携行していれば、算出された端末20の位置は、端末20のユーザの位置と同じである。つまり、ユーザが端末20を携行していることを前提とすれば、端末20の位置と、端末20のユーザの位置とは、実質的に同義と言える。 Note that the calculated terminal position is the calculated position of the terminal 20, but if the user is carrying the terminal 20, the calculated position of the terminal 20 is the same as the position of the user of the terminal 20. In other words, assuming that the user is carrying the terminal 20, the position of the terminal 20 and the position of the user of the terminal 20 can be said to be essentially synonymous.
設定店舗は、限定ではなく例として、端末20側、またはサーバ10側であらかじめ設定しておくことができる。例えば、地下などの通信環境が悪い場所に位置する店舗を、端末20のユーザの操作に従って端末20側で設定店舗として設定したり、サーバ10側で設定するようにすることができる。この場合、端末位置が設定店舗に近づいたタイミングで、端末表示用コードを更新させることができる。 By way of example and not limitation, the set store can be set in advance on the terminal 20 side or on the server 10 side. For example, a store located in a place with poor communication environment, such as an underground area, can be set as a set store on the terminal 20 side in response to an operation by the user of the terminal 20, or on the server 10 side. In this case, the terminal display code can be updated when the terminal position approaches the set store.
条件No「CK3-2」のコード更新条件として、「算出端末位置が設定範囲内の位置」が定められている。これは、算出端末位置が設定範囲内の位置である場合に、コード更新条件が成立したと判定することを示している。 The code update condition for condition No. "CK3-2" is set to "the calculated terminal position is within a set range." This indicates that the code update condition is determined to be met if the calculated terminal position is within the set range.
例えば、決済アプリケーションによる決済に対応可能な店舗が出店するイベントが開催される場合がある。このようなイベントが開催されるイベント会場には、多くの人が足を運び、会場内で端末20を利用するため、通信状況が悪くなる可能性がある。
また、イベントが地下等で開催されるような場合には、通信を行うことができない可能性がある。
For example, an event may be held in which stores that accept payments using a payment application are set up, and since many people visit the event venue where such an event is held and use terminal 20 within the venue, there is a possibility that communication conditions may become poor.
Furthermore, if the event is held underground, for example, it may be impossible to communicate.
そこで、あらかじめ、端末20側、またはサーバ10側で、限定ではなく例として、イベントが開催されるイベント会場を中心とする所定範囲(例えば半径1km以内)を設定範囲として設定しておく。この場合、端末位置が所定範囲に入ったタイミング(端末20のユーザがイベント会場に近づいたタイミング)で、端末表示用コードが更新されるようにすることができる。 Therefore, for example, but not limited to, a predetermined range (for example, within a 1 km radius) centered on the event venue where the event is being held is set as the set range on the terminal 20 side or the server 10 side. In this case, the terminal display code can be updated when the terminal position enters the predetermined range (when the user of terminal 20 approaches the event venue).
<条件種別「CK4」>
条件種別「CK4」は、「緊急」のカテゴリであり、限定ではなく例として、条件No「CK4-1」のコード更新条件が含まれる。この条件は、「世の中の状況」の種別の条件と言うこともできる。
<Condition type "CK4">
The condition type "CK4" is an "urgent" category, and includes, by way of example and not limitation, the code update condition of condition number "CK4-1." This condition can also be said to be a condition of the type "social situation."
条件No「CK4-1」のコード更新条件として、「災害情報・防災情報受信」が定められている。これは、端末20が、地震災害情報、気象災害情報、水害情報、土砂災害情報等の災害情報・防災情報を受信した場合に、コード更新条件が成立したと判定することを示している。 The code update condition for condition No. "CK4-1" is set to "disaster information/disaster prevention information reception." This indicates that the code update condition is determined to be met when the terminal 20 receives disaster information/disaster prevention information such as earthquake disaster information, meteorological disaster information, flood information, or landslide disaster information.
災害が発生すると、通信インフラが機能しなくなり、端末20がオフライン状態となることが想定される。そこで、端末20が災害情報・防災情報を受信した場合に、端末表示用コードを更新しておく。 When a disaster occurs, it is expected that the communications infrastructure will cease to function and the terminal 20 will go offline. Therefore, when the terminal 20 receives disaster information or disaster prevention information, the terminal display code will be updated.
本実施例では、端末20の制御部21は、図5-2の端末側コード更新処理のD110において、コード更新条件データ2835に基づいて、コード更新条件が成立したか否かを判定する。そして、限定ではなく例として、少なくとも1つのコード更新条件が成立した場合に、コード更新条件が成立したと判定する。 In this embodiment, the control unit 21 of the terminal 20 determines whether the code update condition is met based on the code update condition data 2835 in D110 of the terminal-side code update process in Figure 5-2. Then, by way of example and not limitation, if at least one code update condition is met, it is determined that the code update condition is met.
なお、コード更新条件データ2835において、それぞれのコード更新条件に関連付けて優先度を設定しておくようにする。そして、所定の優先度(閾値となる優先度)よりも高い優先度が関連付けて設定されているコード更新条件のうちの少なくとも1つのコード更新条件が成立した場合に、コード更新条件が成立したと判定するようにしてもよいし、そのようにしなくてもよい。 In the code update condition data 2835, a priority is set in association with each code update condition. If at least one of the code update conditions associated with a priority higher than a predetermined priority (threshold priority) is met, the code update condition may or may not be determined to be met.
また、コード更新条件データ2835に定められたコード更新条件のうち、いずれのコード更新条件を適用するかを、端末20側またはサーバ10側であらかじめ設定しておくようにしてもよい。この場合は、適用する設定が行われたコード更新条件のうちの少なくとも1つのコード更新条件が成立した場合に、コード更新条件が成立したと判定するようにしてもよいし、そのようにしなくてもよい。 In addition, which code update conditions to apply from among those defined in the code update condition data 2835 may be set in advance on the terminal 20 side or the server 10 side. In this case, if at least one of the code update conditions set to be applied is met, it may or may not be determined that the code update condition is met.
<第2変形例(1)の効果>
本変形例は、端末20が、設定時刻に基づきサーバ10から送信された、サーバ10によって新たなコード有効期限(限定ではなく、第3有効期限の一例)が関連付いた更新端末表示用コード(限定ではなく、第3コード情報の一例)を、通信I/F22によって受信する構成を示している。
このような構成により得られる効果の一例として、端末は、設定された時刻に基づきサーバから送信された、サーバによって第3有効期限が関連付いた第3コード情報を、通信部によって受信することができる。
<Effects of the second modified example (1)>
This modified example shows a configuration in which the terminal 20 receives, via the communication I/F 22, an updated terminal display code (not limited to, but an example of third code information) that is sent from the server 10 based on the set time and to which a new code expiration date (not limited to, but an example of a third expiration date) is associated by the server 10.
As an example of the effect obtained by such a configuration, the terminal can receive, via the communication unit, third code information associated with a third expiration date by the server, which is sent from the server based on the set time.
また、本変形例は、端末20が、端末20のユーザの情報(例えば、ユーザスケジュール情報、ユーザの決済履歴、端末20(端末20のユーザ)の位置等)に基づきサーバ10から送信された、サーバ10によって新たなコード有効期限(限定ではなく、第4有効期限の一例)が関連付いた更新端末表示用コード(限定ではなく、第4コード情報の一例)を、通信I/F22によって受信する構成を示している。
このような構成により得られる効果の一例として、端末のユーザの情報に基づいてサーバから送信された、サーバによって第4有効期限が関連付いた第4コード情報を、通信部によって受信することができる。
In addition, this modified example shows a configuration in which the terminal 20 receives, via the communication I/F 22, an updated terminal display code (not limited to, but an example of fourth code information) associated with a new code expiration date (not limited to, but an example of fourth expiration date) by the server 10, which code is sent from the server 10 based on information about the user of the terminal 20 (e.g., user schedule information, user payment history, location of the terminal 20 (user of the terminal 20), etc.).
As an example of the effect obtained by such a configuration, the communication unit can receive fourth code information, which is transmitted from the server based on the information of the user of the terminal and to which the fourth expiration date is associated by the server.
また、本変形例は、端末20が、災害情報に基づきサーバ10から送信された、サーバ10によって新たなコード有効期限(限定ではなく、第5有効期限の一例)が関連付いた更新端末表示用コード(限定ではなく、第5コード情報の一例)を、通信I/F22によって受信する構成を示している。
このような構成により得られる効果の一例として、端末は、サーバによって取得された災害に関する情報に基づきサーバから送信された、サーバによって第5有効期限が関連付いた第5コード情報を、通信部によって受信することができる。
In addition, this modified example shows a configuration in which the terminal 20 receives, via the communication I/F 22, an updated terminal display code (not limited to, but an example of the fifth code information) associated with a new code expiration date (not limited to, but an example of the fifth expiration date) by the server 10, which code is sent from the server 10 based on disaster information.
As an example of the effect obtained by such a configuration, the terminal can receive, via the communication unit, fifth code information to which a fifth expiration date is associated by the server, which is sent from the server based on information regarding the disaster acquired by the server.
<第2変形例(2)>
第2実施例では、端末表示用コードの更新を端末20からサーバ10に依頼することとしたが、これに限定されない。端末表示用コードの更新を依頼するのではなく、ストックしている端末表示用コードに関連付けられたコード有効期限の延長を端末20からサーバ10に依頼するようにしてもよい。
<Second Modification Example (2)>
In the second embodiment, the terminal 20 requests the server 10 to update the terminal display code, but this is not limiting. Instead of requesting an update of the terminal display code, the terminal 20 may request the server 10 to extend the code expiration date associated with the stored terminal display code.
図5-5は、本変形例における各装置が実行する処理の流れの一例を示すフローチャートである。左側に、端末20の制御部21が実行する端末側コード有効期限延長処理を示し、右側に、サーバ10の制御部11が実行するサーバ側コード有効期限延長処理を示す。これらの処理は、限定ではなく例として、前述した端末20の決済アプリケーション処理と、前述したサーバ10の決済管理処理とのそれぞれにおいてバックグラウンドで実行される処理である。 Figure 5-5 is a flowchart showing an example of the flow of processing executed by each device in this modified example. The left side shows the terminal-side code expiration date extension processing executed by the control unit 21 of the terminal 20, and the right side shows the server-side code expiration date extension processing executed by the control unit 11 of the server 10. These processes are, by way of example and not limitation, processes executed in the background in the aforementioned payment application processing of the terminal 20 and the aforementioned payment management processing of the server 10, respectively.
最初に、制御部21は、コード有効期限延長条件判定処理を行う(D210)。コード有効期限延長条件は、限定ではなく例として、図5-4に示したコード更新条件と同様の条件とすることができる。 First, the control unit 21 performs a code expiration date extension condition determination process (D210). The code expiration date extension conditions can be, by way of example and not limitation, the same conditions as the code update conditions shown in Figure 5-4.
なお、第1の端末表示用コードストックデータ2831Aを適用する場合は、1つの端末表示用コードが記憶されているため、この端末表示用コードを対象とし、この端末表示用コードに関連付けられたコード有効期限に基づいて、D210の判定を行えばよい。 When applying the first terminal display code stock data 2831A, one terminal display code is stored, so this terminal display code is the target and D210 determination is made based on the code expiration date associated with this terminal display code.
一方、第2の端末表示用コードストックデータ2831Bを適用する場合は、複数の端末表示用コードが記憶されているため、これら複数の端末表示用コードそれぞれを対象とし、それぞれの端末表示用コードに関連付けられたコード有効期限に基づいて、D210の判定を行えばよい。 On the other hand, when applying the second terminal display code stock data 2831B, since multiple terminal display codes are stored, it is sufficient to perform the D210 determination for each of these multiple terminal display codes based on the code expiration date associated with each terminal display code.
コード有効期限延長条件が成立したと判定したならば(D220:YES)、制御部21は、オンライン状態であるか否かを判定する(D230)。そして、オンライン状態であると判定したならば(D230:YES)、制御部21は、認証処理を行う(D240)。 If it is determined that the code expiration date extension condition is met (D220: YES), the control unit 21 determines whether the device is online (D230). If it is determined that the device is online (D230: YES), the control unit 21 performs authentication processing (D240).
具体的には、限定ではなく例として、認証画面を表示部24に表示させ、ユーザに認証パスワードを入力させる。そして、入力された認証パスワードが、あらかじめ決済アプリケーションデータ283に登録・記憶されている認証パスワードと一致するか否かを判定する。そして、一致する場合は、認証結果を「OK」とし、一致しない場合は、認証結果を「NG」とする。 Specifically, by way of example and not limitation, an authentication screen is displayed on the display unit 24, and the user is prompted to enter an authentication password. It is then determined whether the entered authentication password matches an authentication password previously registered and stored in the payment application data 283. If they match, the authentication result is deemed "OK," and if they do not match, the authentication result is deemed "NG."
認証結果が「OK」であったならば(D250:YES)、制御部21は、限定ではなく例として、アプリケーションIDと、コード有効期限の延長を依頼する端末表示用コードのコードNoとを含むコード有効期限延長依頼情報を、通信I/F22によってサーバ10に送信する(D260)。 If the authentication result is "OK" (D250: YES), the control unit 21 sends code expiration date extension request information, which includes, by way of example and not limitation, the application ID and the code number of the terminal display code requesting an extension of the code expiration date, to the server 10 via the communication I/F 22 (D260).
ここで、「コード有効期限延長依頼情報」は、端末20でストックされている端末表示用コードに関連付けられたコード有効期限の延長を依頼(申請)する情報であり、コード有効期限の延長に関するリクエストとも言える。
また、「コード有効期限延長依頼情報」は、延長されたコード有効期限の送信を依頼する情報とも言える。
Here, the "code expiration date extension request information" is information requesting (applying for) an extension of the code expiration date associated with the terminal display code stored in the terminal 20, and can also be considered a request for an extension of the code expiration date.
The "code expiration date extension request information" can also be said to be information requesting transmission of an extended code expiration date.
サーバ10の制御部11は、端末20からコード有効期限延長依頼情報を受信したか否かを判定する(E210)。そして、受信したと判定したならば(E210:YES)、コード有効期限延長処理を行う(E220)。 The control unit 11 of the server 10 determines whether or not code expiration date extension request information has been received from the terminal 20 (E210). If it is determined that the request has been received (E210: YES), the control unit 11 performs code expiration date extension processing (E220).
具体的には、限定ではなく例として、記憶部15のコード管理データベース159のうち、受信されたコード有効期限延長依頼情報に含まれるアプリケーションIDのコード管理データを参照する。そして、そのコード管理データに、受信されたコード有効期限延長依頼情報に含まれるコードNoが記憶されているか否かを判定し、記憶されていると判定したならば、そのコードNoと関連付けて記憶されているコード有効期限を延長して更新する。このようにして延長されたコード有効期限を、以下、「延長コード有効期限」と称する。 Specifically, by way of example and not limitation, the code management data for the application ID included in the received code expiration date extension request information is referenced in the code management database 159 of the storage unit 15. It is then determined whether the code number included in the received code expiration date extension request information is stored in that code management data, and if it is determined that the code number is stored, the code expiration date stored in association with that code number is extended and updated. Hereinafter, the code expiration date extended in this manner will be referred to as the "extended code expiration date."
次いで、制御部21は、延長コード有効期限を、通信I/F14によって端末20に送信する(E270)。 Next, the control unit 21 transmits the extension code expiration date to the terminal 20 via the communication I/F 14 (E270).
その後、制御部11は、処理を終了するか否かを判定し(E290)、処理を継続すると判定したならば(E290:NO)、E210に処理を戻す。また、処理を終了すると判定したならば(E290:YES)、サーバ側コード有効期限延長処理を終了する。 The control unit 11 then determines whether to terminate the process (E290), and if it determines to continue the process (E290: NO), it returns to E210. If it determines to terminate the process (E290: YES), it terminates the server-side code expiration date extension process.
また、端末20からコード有効期限延長依頼情報を受信しなかった場合(E210:NO)、制御部11は、E290へと処理を移す。 Also, if no code expiration date extension request information is received from the terminal 20 (E210: NO), the control unit 11 proceeds to E290.
通信I/F22によってサーバ10から延長コード有効期限を受信すると(D270)、制御部21は、対応するコードNoと関連付けて端末表示用コードストックデータ2831に記憶されているコード有効期限を、受信された延長コード有効期限で更新する(D280)。 When the extension code expiration date is received from the server 10 via the communication I/F 22 (D270), the control unit 21 updates the code expiration date stored in the terminal display code stock data 2831 in association with the corresponding code number with the received extension code expiration date (D280).
その後、制御部21は、処理を終了するか否かを判定し(D290)、処理を継続すると判定したならば(D290:NO)、D210に処理を戻す。また、処理を終了すると判定したならば(D290:YES)、端末側コード有効期限延長処理を終了する。 The control unit 21 then determines whether to terminate the process (D290), and if it determines to continue the process (D290: NO), it returns to D210. If it determines to terminate the process (D290: YES), it terminates the terminal-side code expiration date extension process.
また、コード有効期限延長条件が成立しないと判定された場合(D220:NO)、オンライン状態ではないと判定された場合(D230:NO)、または、認証結果が「NG」であると判定された場合(D250:NO)、制御部11は、D290へと処理を移す。 Furthermore, if it is determined that the code expiration date extension condition is not met (D220: NO), if it is determined that the device is not online (D230: NO), or if it is determined that the authentication result is "NG" (D250: NO), the control unit 11 proceeds to D290.
なお、この処理において、延長コード有効期限をサーバ10から受信した場合に、端末20が、コード有効期限が延長されたことを示す情報(例えば、コード有効期限が延長された旨のメッセージや、コード有効期限が延長されたことを示す画像)を、プッシュ通知によって表示部24に表示したり、決済アプリケーションを実行中である場合は、表示部24の決済アプリケーション画面に表示させるようにしてもよい。 In this process, when the extension code expiration date is received from the server 10, the terminal 20 may display information indicating that the code expiration date has been extended (for example, a message indicating that the code expiration date has been extended or an image indicating that the code expiration date has been extended) on the display unit 24 via a push notification, or, if a payment application is running, may display the information on the payment application screen of the display unit 24.
また、この処理において、認証処理は必ずしも行う必要はなく、認証処理を省略するようにしてもよい。 Furthermore, authentication processing does not necessarily need to be performed in this process, and may be omitted.
<第2変形例(2)の効果>
本変形例は、端末20が、コード有効期限延長依頼情報(限定ではなく、第1有効期限の延長をサーバに依頼する情報の一例)を、サーバ10に通信I/F22によって送信する構成を示している。
このような構成により得られる効果の一例として、第1有効期限の延長をサーバに依頼することができる。
<Effects of the second modified example (2)>
This modified example shows a configuration in which the terminal 20 transmits code expiration date extension request information (not limited to this, but an example of information requesting the server to extend the first expiration date) to the server 10 via the communication I/F 22.
As an example of the effect obtained by such a configuration, it is possible to request the server to extend the first expiration date.
また、本変形例は、端末20が、認証処理(限定ではなく、端末のユーザの認証に関する処理の一例)の実行に基づいて、延長コード有効期限をサーバ10から取得する処理(限定ではなく、第1有効期限の延長に関する処理の一例)を制御部21によって行う構成を示している。
このような構成により得られる効果の一例として、端末のユーザの認証に関する処理の実行に基づいて、第1有効期限の延長に関する処理を端末の制御部によって行うことで、第1有効期限を延長するに際して、セキュリティを高めることができる。
In addition, this modified example shows a configuration in which the terminal 20 performs a process (not limited to this, but an example of a process related to extending the first expiration date) of obtaining the extension code expiration date from the server 10 based on the execution of an authentication process (not limited to this, but an example of a process related to authenticating the user of the terminal) by the control unit 21.
As an example of the effect obtained by such a configuration, security can be improved when extending the first expiration date by having the control unit of the terminal perform processing related to extending the first expiration date based on the execution of processing related to authentication of the terminal user.
また、本変形例は、端末20が、サーバ10から送信された、延長コード有効期限を、通信I/F22によって受信する。そして、コード有効期限が延長されたことを示す情報を、端末20の表示領域に表示する構成を示している。
このような構成により得られる効果の一例として、第1有効期限が延長されたことを端末のユーザに報知することができるため、ユーザの利便性を向上させることができる。
In this modification, the terminal 20 receives the extension code expiration date transmitted from the server 10 via the communication I/F 22. Then, information indicating that the code expiration date has been extended is displayed in the display area of the terminal 20.
As an example of the effect obtained by such a configuration, it is possible to notify the user of the terminal that the first expiration date has been extended, thereby improving convenience for the user.
<第2変形例(3)>
第2実施例において、端末20からのリクエストに応じてサーバ10が端末表示用コードを更新して端末20に送信するのではなく、端末20からのリクエストなしに、サーバ10が端末表示用コードを更新して端末20に送信するようにしてもよいし、そのようにしなくてもよい。
<Second Modification Example (3)>
In the second embodiment, instead of the server 10 updating the terminal display code and sending it to the terminal 20 in response to a request from the terminal 20, the server 10 may update the terminal display code and send it to the terminal 20 without a request from the terminal 20, or it may not do so.
本明細書では、端末20からのリクエストなしにサーバ10が情報やデータを端末20に送信すること(サーバ10が自発的に情報やデータを送信すること)を「プッシュ送信」と称する。 In this specification, the server 10 sending information or data to the terminal 20 without a request from the terminal 20 (the server 10 sending information or data voluntarily) is referred to as "push transmission."
この場合は、限定ではなく例として、サーバ10が、定期的なタイミングや特定のタイミングで、端末表示用コード更新処理を行う。
または、サーバ10が、前述したコード更新条件と同様の条件に基づいて、随時、コード更新条件の成否を判定するようにし、コード更新条件が成立すると判定した場合、端末表示用コード更新処理を行う。
そして、サーバ10は、更新端末表示用コードと、そのコード有効期限とを端末20にプッシュ送信する。
In this case, by way of example and not limitation, the server 10 performs a terminal display code update process at regular intervals or at specific times.
Alternatively, the server 10 may determine whether the code update condition is met at any time based on the same conditions as the code update condition described above, and if it determines that the code update condition is met, it performs a terminal display code update process.
Then, the server 10 pushes the updated terminal display code and the code expiration date to the terminal 20.
また、第2変形例(2)において、端末20からのリクエストに応じてサーバ10がコード有効期限を延長するのではなく、端末20からのリクエストなしに、サーバ10がコード有効期限を延長して端末20に送信するようにしてもよいし、そのようにしなくてもよい。 Furthermore, in the second variant (2), rather than the server 10 extending the code expiration date in response to a request from the terminal 20, the server 10 may extend the code expiration date and send it to the terminal 20 without a request from the terminal 20, or it may not do so.
この場合は、限定ではなく例として、サーバ10が、定期的なタイミングや特定のタイミングで、コード有効期限延長処理を行う。
または、サーバ10が、前述したコード有効期限延長条件と同様の条件に基づいて、随時、コード有効期限延長条件の成否を判定するようにし、コード有効期限延長条件が成立すると判定した場合、コード有効期限延長処理を行う。
そして、サーバ10は、延長コード有効期限を端末20にプッシュ送信する。
In this case, by way of example and not limitation, the server 10 performs the code expiration date extension process at regular intervals or at specific times.
Alternatively, the server 10 may determine whether the code expiration date extension conditions are met at any time based on conditions similar to the code expiration date extension conditions described above, and if it determines that the code expiration date extension conditions are met, it may perform the code expiration date extension process.
Then, the server 10 pushes the extension code expiration date to the terminal 20.
<第2変形例(4)>
第2実施例では、端末表示用コードを更新する処理を説明したが、これに限定されない。端末表示用コードを更新する処理ではなく、新たな端末表示用コードを生成する処理としてもよいし、そのようにしなくてもよい。
<Second Modification Example (4)>
In the second embodiment, the process of updating the terminal display code has been described, but the present invention is not limited to this. Instead of the process of updating the terminal display code, the process of generating a new terminal display code may or may not be performed.
具体的には、限定ではなく例として、新たな端末表示用コードの生成を依頼する新コード生成依頼情報を、端末20からサーバ10に送信する。サーバ10は、端末20から新コード生成依頼情報を受信したことに基づいて、前述した端末表示用コード生成処理と同様の処理を行って新たな端末表示用コードを生成し、コード生成日時、決済用番号、コード有効期限等の情報とともにコード管理データに記憶させる。そして、サーバ10は、生成した新たな端末表示用コードや、そのコード有効期限に関する情報を、端末20に送信するようにすることもできる。 Specifically, by way of example and not limitation, new code generation request information requesting the generation of a new terminal display code is sent from terminal 20 to server 10. Based on receiving the new code generation request information from terminal 20, server 10 performs processing similar to the terminal display code generation processing described above to generate a new terminal display code, and stores it in code management data together with information such as the code generation date and time, payment number, and code expiration date. Server 10 can also transmit the generated new terminal display code and information regarding the code expiration date to terminal 20.
<第3実施例>
第3実施例は、コード有効期限の設定方法(コード有効期限をどのように設定するか)に関する実施例である。
第3実施例に記載の内容は、他の各実施例や他の各変形例のいずれにも適用可能である。
また、既出の構成要素と同一の構成要素については同一の符号を付して、再度の説明を省略する。
<Third Example>
The third embodiment is an embodiment relating to a method for setting a code expiration date (how to set a code expiration date).
The contents described in the third embodiment can be applied to any of the other embodiments and other modified examples.
Furthermore, the same components as those already mentioned are given the same reference numerals and will not be described again.
図6-1は、本実施例においてサーバ10の記憶部15に記憶される情報の一例を示す図である。
本実施例において、記憶部15には、限定ではなく例として、アカウント別管理データベース152と、開催イベントデータ154と、コード有効期限設定用データ156とが記憶される。
FIG. 6A is a diagram showing an example of information stored in the storage unit 15 of the server 10 in this embodiment.
In this embodiment, the storage unit 15 stores, by way of example and not limitation, an account management database 152, event data 154, and code expiration date setting data 156.
アカウント別管理データベース152は、決済アプリケーションのアカウント別の管理データであり、そのデータ構成の一例を図6-2に示す。
アカウント別管理データベース152には、アカウント別に、アカウント管理データが記憶される。
The account management database 152 is management data for each account of the payment application, and an example of the data structure is shown in FIG. 6B.
The account management database 152 stores account management data for each account.
各アカウント別管理データには、限定ではなく例として、アプリケーションIDと、信用スコアと、端末位置履歴データと、ユーザスケジュールデータと、決済履歴データと、オフライン傾向データとが記憶される。 Management data for each account may include, but is not limited to, application ID, credit score, terminal location history data, user schedule data, payment history data, and offline tendency data.
アプリケーションIDには、ユーザ登録データ153に記憶されているアプリケーションIDが記憶される。 The application ID is the application ID stored in user registration data 153.
信用スコアは、端末20のユーザの社会的な信用を数値やランク等で表したものである。
信用スコアは、限定ではなく例として、端末20のユーザの支払い実績、年齢、勤務形態、年収等をもとに算出され、随時更新される。
The credit score is a representation of the social credibility of the user of the terminal 20 as a number, a rank, or the like.
The credit score is calculated based on, for example and not by way of limitation, the payment history, age, employment status, annual income, etc. of the user of the terminal 20, and is updated as needed.
限定ではなく例として、信用スコアを「0点」~「100点」の点数方式で数値化し、信用スコア「100点」がユーザの社会的な信用が最も高く、信用スコア「0点」がユーザの社会的な信用が最も低いことを示すようにすることができる。 By way of example and not limitation, the credit score can be quantified using a scoring system ranging from "0 points" to "100 points," with a credit score of "100 points" indicating the user's highest social credibility and a credit score of "0 points" indicating the user's lowest social credibility.
端末位置履歴データは、端末の位置(以下、「端末位置」と称する。)の履歴が記憶される。限定ではなく例として、端末20が位置算出処理を行って算出した端末位置(以下、「算出端末位置」と称する。)が、端末位置が算出される毎のタイミングや、定期的なタイミングで端末20からサーバ10に送信され、この算出端末位置が端末位置として端末位置履歴データに随時記憶されるようにすることができる。 The terminal position history data stores the history of the terminal's position (hereinafter referred to as "terminal position"). As a non-limiting example, the terminal position (hereinafter referred to as "calculated terminal position") calculated by the terminal 20 performing a position calculation process can be transmitted from the terminal 20 to the server 10 each time the terminal position is calculated or at regular intervals, and this calculated terminal position can be stored as the terminal position in the terminal position history data as needed.
なお、これとは異なり、前述したコード生成依頼情報やコード更新依頼情報、コード有効期限延長情報等を端末20からサーバ10に送信する際に、最新の端末位置を端末20からサーバ10に送信するようにしてもよいし、そのようにしなくてもよい。 In addition, alternatively, when transmitting the aforementioned code generation request information, code update request information, code expiration date extension information, etc. from terminal 20 to server 10, the latest terminal location may or may not be transmitted from terminal 20 to server 10.
ユーザスケジュールデータは、このアプリケーションIDの端末20のユーザスケジュール情報が記憶されたデータである。このユーザスケジュールデータは、端末20の記憶部28に記憶されるユーザスケジュールデータ2834(図5-3参照)と同期して随時更新されるようにすることができる。 The user schedule data is data that stores the user schedule information of the terminal 20 for this application ID. This user schedule data can be updated as needed in synchronization with the user schedule data 2834 (see Figure 5-3) stored in the storage unit 28 of the terminal 20.
決済履歴データは、決済管理データベース157に記憶されている決済管理データのうち、このアプリケーションIDの決済管理データに含まれる決済履歴データである。 The payment history data is the payment history data included in the payment management data for this application ID among the payment management data stored in the payment management database 157.
オフライン傾向データは、このアプリケーションIDの端末20がオフライン状態となる傾向を分析したデータである。限定ではなく例として、サーバ10は、過去に端末20と通信不可となった期間を、オフライン傾向データに履歴として記憶させておくようにすることができる。 The offline tendency data is data that analyzes the tendency of the terminal 20 with this application ID to be offline. As a non-limiting example, the server 10 can store, as history, the periods in the offline tendency data when communication with the terminal 20 was not possible in the past.
開催イベントデータ154は、端末表示用コードを利用した決済が行われ得るイベントに関するデータであり、限定ではなく例として、イベントの開催日時や、イベントの開催場所、イベントに出店する店舗等の情報が記憶される。これらの情報は、サーバ10によってイベントの主催団体等からあらかじめ取得されて、開催イベントデータ154に記憶される。 Held event data 154 is data related to events for which payments can be made using a terminal display code, and stores information such as, but not limited to, the date and time of the event, the location of the event, and the stores participating in the event. This information is obtained in advance by server 10 from the event organizer, etc., and stored in the held event data 154.
コード有効期限設定用データ156は、コード有効期限を設定するために用いられるデータである。このコード有効期限設定用データ156には、限定ではなく例として、上記のアカウント別管理データに含まれるデータから特定される信用スコア、位置(端末位置、ユーザ位置)、ユーザスケジュール、決済履歴、オフライン傾向等を判定項目とし、これらの判定項目に基づきコード有効時間を設定するための方法が定められている。 Code expiration date setting data 156 is data used to set the code expiration date. This code expiration date setting data 156 defines a method for setting the code expiration date based on criteria such as, but not limited to, credit score, location (terminal location, user location), user schedule, payment history, offline tendency, etc., which are identified from the data included in the account-specific management data described above.
限定ではなく例として、コード生成日時とコード有効時間とによってコード有効期限が定まるため、コード有効時間を設定することは、コード有効期限を設定することと実質的に同義である。 By way of example and not limitation, since the code expiration date is determined by the code generation date and time and the code expiration time, setting the code expiration time is essentially the same as setting the code expiration date.
(1)信用スコア
信用スコアが高いほど、ユーザの社会的な信用は高いと言える。
このため、限定ではなく例として、信用スコアが高いほど、コード有効時間としてより長い時間を設定することを定めておくことができる。例えば、信用スコアに対する閾値(段階的な閾値)に基づく複数の閾値条件を定めておき、信用スコアがいずれの閾値条件を満たすかによって、異なるコード有効時間を設定するようにすることができる。
(1) Credit Score The higher the credit score, the higher the social credibility of the user.
Thus, by way of example and not limitation, it may be possible to set a longer code validity period for a higher credit score. For example, multiple threshold conditions based on thresholds (graded thresholds) for the credit score may be set, and different code validity periods may be set depending on which threshold condition the credit score meets.
例えば、信用スコアが「80点以上」であればコード有効時間を「基準コード有効時間×1.2」とし、信用スコアが「60点以上80点未満」であればコード有効時間を「基準コード有効時間×1.0」とし、信用スコアが「60点未満」であればコード有効時間を「基準コード有効時間×0.8」とすることなどを定めておくことができる。 For example, if the credit score is "80 points or more," the code validity period can be set to "reference code validity period x 1.2," if the credit score is "60 points or more but less than 80 points," the code validity period can be set to "reference code validity period x 1.0," and if the credit score is "less than 60 points," the code validity period can be set to "reference code validity period x 0.8."
「基準コード有効時間」とは、限定ではなく例として、サーバ10によってデフォルトとして設定される有効時間である。
限定ではなく例として、第1実施例で説明した「6時間」、「12時間」、「18時間」、「24時間」等のコード有効時間を、基準コード有効時間として設定しておくことができる。
The "reference code validity period" is, by way of example and not limitation, the validity period set by the server 10 as a default.
By way of example and not limitation, the code validity periods such as "6 hours,""12hours,""18hours," and "24 hours" described in the first embodiment can be set as the reference code validity period.
(2)端末位置(ユーザ位置)
コード有効期限設定用データ156には、限定ではなく例として、端末位置に基づきコード有効時間を設定するための条件が定められている。
例えば、サーバ10側で、安全性の高い場所(ピンポイントの位置や一定範囲の地域等)と、安全性の低い場所とを設定しておく。
ここで言う「安全性」とは、コード有効時間を長くすることにリスクが生じにくいことを意味する。
(2) Terminal location (user location)
The code expiration date setting data 156 defines, by way of example and not limitation, conditions for setting the code expiration date based on the terminal location.
For example, the server 10 may set locations with high security (such as pinpoint locations or areas within a certain range) and locations with low security.
"Safety" here means that extending the code validity period is unlikely to pose any risk.
安全性の高い場所としては、限定ではなく例として、端末20が他人に盗まれる可能性が低い場所(ユーザが端末20を置き忘れる可能性が低い場所等)、例えば、端末20のユーザの自宅の位置やその付近の地域等が考えられる。
安全性の低い場所としては、限定ではなく例として、端末20が他人に盗まれる可能性が低い場所(ユーザが端末20を置き忘れる可能性が低い場所等)、例えば、居酒屋等の飲食店の位置やその付近の地域等が考えられる。
Examples of highly secure locations include, but are not limited to, locations where the terminal 20 is unlikely to be stolen by others (such as locations where the user is unlikely to leave the terminal 20 behind), such as the location of the user's home of the terminal 20 or an area nearby.
Examples of low security locations include, but are not limited to, locations where the terminal 20 is unlikely to be stolen by others (such as locations where the user is unlikely to leave the terminal 20 behind), such as the location of a restaurant such as an izakaya or an area nearby.
この場合、限定ではなく例として、端末位置が安全性の高い場所に含まれる場合は、端末位置が安全性の低い場所に含まれる場合よりも、コード有効時間としてより長い時間を設定することを定めておくようにすることができる。 In this case, by way of example and not limitation, it may be possible to specify that if the terminal location is in a highly secure location, the code validity period should be set to a longer period than if the terminal location is in a less secure location.
例えば、端末位置が安全性の高い場所に含まれる場合はコード有効時間を「基準コード有効時間×1.2」とし、端末位置が安全性の低い場所に含まれる場合はコード有効時間を「基準コード有効時間×0.8」とすることなどを定めておくことができる。 For example, if the terminal location is in a highly secure location, the code validity period can be set to "reference code validity period x 1.2", and if the terminal location is in a less secure location, the code validity period can be set to "reference code validity period x 0.8".
(3)ユーザスケジュール
コード有効期限設定用データ156には、限定ではなく例として、ユーザスケジュールに基づきコード有効時間を設定するための条件が定められている。
例えば、所定時間以内や所定日数以内にユーザが特定のイベントに行くことが予定されている場合、端末表示用コードを用いて決済が行われる可能性が高い。
(3) User Schedule The code expiration date setting data 156 defines, by way of example and not limitation, conditions for setting the code expiration date based on the user schedule.
For example, if a user is scheduled to attend a specific event within a predetermined time or within a predetermined number of days, there is a high possibility that payment will be made using a terminal display code.
このため、限定ではなく例として、所定時間以内や所定日数以内に端末20のユーザが特定のイベントに行くことが予定されている場合、コード有効時間として基準コード有効時間よりも長い時間を設定するなどすればよい。 For this reason, as a non-limiting example, if the user of terminal 20 is scheduled to attend a specific event within a specified time or number of days, the code validity period can be set to a period longer than the reference code validity period.
(4)決済履歴
コード有効期限設定用データ156には、限定ではなく例として、端末20のユーザの決済履歴に基づきコード有効時間を設定するための条件が定められている。
決済履歴から、端末20のユーザが定期的なタイミング(例えば、毎週何曜日、毎月何日)で同じ店舗を利用して決済を行う傾向があることが分かる場合、その次のタイミングでも、端末20のユーザは同じ店舗を利用して決済を行う可能性が高い。
(4) Payment History The code expiration date setting data 156 defines, by way of example and not limitation, conditions for setting the code expiration date based on the payment history of the user of the terminal 20 .
If the payment history shows that the user of terminal 20 tends to make payments at the same store at regular intervals (for example, on a certain day of the week or a certain day of the month), there is a high possibility that the user of terminal 20 will also make payments at the same store the next time.
このため、限定ではなく例として、端末20のユーザが定期的なタイミングで同じ店舗を利用して決済を行う傾向がある場合、コード有効時間として基準コード有効時間よりも長い時間を設定するなどすればよい。 For this reason, as a non-limiting example, if the user of terminal 20 tends to make payments at the same store at regular intervals, the code validity period can be set to a period longer than the reference code validity period.
また、端末20のユーザが決済を行う頻度や回数に基づいて、コード有効時間を設定するようにすることもできる。
具体的には、そのアプリケーションIDに関連付けられた決済履歴データに基づいて、単位期間における決済が行われた頻度(以下、「決済頻度」と称する。)や回数(以下、「決済回数」と称する。)を算出する。そして、決済頻度が高いほど、または、決済回数が多いほど、コード有効時間としてより長い時間を設定するように定めておくことができる。
It is also possible to set the code validity period based on the frequency or number of times the user of the terminal 20 makes payments.
Specifically, the frequency (hereinafter referred to as "payment frequency") and number (hereinafter referred to as "number of payments") of payments made in a unit period are calculated based on the payment history data associated with the application ID.Then, the higher the payment frequency or the greater the number of payments, the longer the code validity period can be set.
(5)オフライン傾向
コード有効期限設定用データ156には、限定ではなく例として、オフライン傾向に基づきコード有効時間を設定するための条件が定められている。
端末20が頻繁にオフライン状態となるのであれば、コード有効時間を長く設定しておおかなければ、いざという時に決済を行うことができなくなる可能性がある。
(5) Offline Tendency The code expiration date setting data 156 defines, by way of example and not limitation, conditions for setting the code expiration date based on offline tendency.
If the terminal 20 frequently goes offline, the code validity period must be set long, otherwise there is a risk that payment will not be possible in an emergency.
そこで、限定ではなく例として、単位期間における端末20がオフライン状態となる頻度(以下、「オフライン頻度」と称する。)や回数(以下、「オフライン回数」と称する。)を算出する。そして、オフライン頻度が高いほど、または、オフライン回数が多いほど、コード有効時間としてより長い時間を設定するように定めておくことができる。 As a non-limiting example, the frequency (hereinafter referred to as the "offline frequency") or number of times (hereinafter referred to as the "number of offline occurrences") that the terminal 20 goes offline during a unit period is calculated. Then, the higher the offline frequency or the greater the number of offline occurrences, the longer the code validity period can be set.
なお、上記の判定項目は一例に過ぎず、適宜設定変更可能である。
例えば、端末20側で、複数のコード有効時間の候補の中から、一のコード有効時間をユーザに選択させる。そして、選択されたコード有効時間を端末20からサーバ10に送信するようにして、サーバ10側で、端末20のアプリケーションIDと関連付けて、端末20から受信されたコード有効時間を設定するようにしてもよいし、そのようにしなくてもよい。
The above determination items are merely examples, and the settings can be changed as appropriate.
For example, the terminal 20 may have the user select one code validity period from among multiple code validity period candidates, and the selected code validity period may be transmitted from the terminal 20 to the server 10. The server 10 may associate the code validity period received from the terminal 20 with the application ID of the terminal 20, but this may not be the case.
本実施例では、サーバ10の制御部11は、限定ではなく例として、端末表示用コード生成処理(図4-14のC320)、端末表示用コード更新処理(図5-2のE120)、コード有効期限延長処理(図5-5のE220)を行う前に、コード有効期限設定処理を行う。 In this embodiment, the control unit 11 of the server 10 performs, by way of example and not limitation, a code expiration date setting process before performing the terminal display code generation process (C320 in FIG. 4-14), the terminal display code update process (E120 in FIG. 5-2), and the code expiration date extension process (E220 in FIG. 5-5).
コード有効期限設定処理では、制御部11は、限定ではなく例として、コード有効期限設定用データ156を参照し、限定ではなく例として、上記の複数の判定項目のうち、少なくともいずれか1つの判定項目に基づいて、コード有効期限を設定してもよいし、その組み合わせによって、コードの有効期限を設定してもよい。例えば、信用スコアが高く、オフライン頻度や、オフライン回数が多いユーザは、同じ信用スコアのユーザよりも、有効期限を長く設定してもよいし、しなくてもよい。 In the code expiration date setting process, the control unit 11 may, by way of example and not limitation, reference the code expiration date setting data 156 and set the code expiration date based on at least one of the multiple judgment items listed above, or may set the code expiration date based on a combination of these. For example, a user with a high credit score and a high offline frequency or number of offline visits may, or may not, be set with a longer expiration date than a user with the same credit score.
<第3実施例の効果>
第3実施例は、コード有効期限は、端末20のユーザの情報に基づサーバ10によって設定される構成を示している。
このような構成により得られる効果の一例として、端末は、端末のユーザの情報に基づいて適切に設定された第1有効期限に基づいて、サーバに決済を行わせることができる。
<Effects of the Third Embodiment>
The third embodiment shows a configuration in which the code expiration date is set by the server 10 based on information about the user of the terminal 20 .
As an example of the effect obtained by such a configuration, the terminal can cause the server to carry out settlement based on the first expiration date that is appropriately set based on the information of the user of the terminal.
また、第3実施例は、端末20のユーザの情報は、ユーザの信用スコアを含む構成を示している。
このような構成により得られる効果の一例として、端末は、端末のユーザの信用スコアに基づいて適切に設定された第1有効期限に基づいて、サーバに決済を行わせることができる。
In addition, the third embodiment shows a configuration in which the information about the user of the terminal 20 includes the user's credit score.
As an example of the effect obtained by such a configuration, the terminal can cause the server to make a settlement based on a first expiration date that is appropriately set based on the credit score of the terminal user.
また、第3実施例は、端末20のユーザの情報は、ユーザの位置の情報、または端末の位置の情報を含む構成を示している。
このような構成により得られる効果の一例として、端末は、端末のユーザの位置の情報、または端末の位置の情報に基づいて適切に設定された第1有効期限に基づいて、サーバに決済を行わせることができる。
Furthermore, the third embodiment shows a configuration in which the information about the user of the terminal 20 includes information about the user's location or information about the terminal's location.
As an example of the effect obtained by such a configuration, the terminal can have the server make a payment based on location information of the terminal user or a first expiration date that is appropriately set based on the location information of the terminal.
また、第3実施例は、端末20のユーザの情報は、ユーザスケジュール情報を含む構成を示している。
このような構成により得られる効果の一例として、端末は、端末のユーザのスケジュールの情報に基づいて適切に設定された第1有効期限に基づいて、サーバに決済を行わせることができる。
In the third embodiment, the information about the user of the terminal 20 includes user schedule information.
As an example of the effect obtained by such a configuration, the terminal can cause the server to carry out settlement based on the first expiration date that is appropriately set based on information about the schedule of the terminal user.
また、第3実施例は、端末20のユーザの情報は、ユーザの端末表示用コードに基づく決済履歴や決済頻度(または決済回数)(限定ではなく、ユーザのコード情報に基づく決済の情報の一例)を含む構成を示している。
このような構成により得られる効果の一例として、端末は、端末のユーザのコード情報に基づく決済の情報に基づいて適切に設定された第1有効期限に基づいて、サーバに決済を行わせることができる。
In addition, the third embodiment shows a configuration in which the user information of the terminal 20 includes payment history and payment frequency (or number of payments) based on the user's terminal display code (not limited to, but an example of payment information based on the user's code information).
As an example of the effect obtained by such a configuration, the terminal can have the server make a payment based on a first expiration date that is appropriately set based on payment information that is based on the code information of the terminal user.
また、第3実施例は、コード有効期限は、サーバ10によって取得された開催イベント情報(限定ではなく、イベントに関する情報の一例)に基づいて設定される構成を示している。
このような構成により得られる効果の一例として、端末は、サーバによって取得されたイベントに関する情報に基づいて適切に設定された第1有効期限に基づいて、サーバに決済を行わせることができる。
Furthermore, the third embodiment shows a configuration in which the code expiration date is set based on the event information (not limited to this, but an example of information related to an event) acquired by the server 10 .
As an example of the effect obtained by such a configuration, the terminal can cause the server to make a settlement based on a first expiration date that is appropriately set based on information about the event acquired by the server.
<第4実施例>
第4実施例は、コード表示期限よりもコード有効期限の方が先に経過する場合の対策に関する実施例である。この場合、コード表示期限よりもコード有効期限の方が先に経過するため、コード表示画面に表示される端末表示用コードが使用できない場合が生ずる。
<Fourth Example>
The fourth embodiment is an example of a measure to be taken when the code expiration date passes before the code display date. In this case, the code expiration date passes before the code display date, so the terminal display code displayed on the code display screen may become unusable.
第4実施例に記載の内容は、他の各実施例や他の各変形例のいずれにも適用可能である。
また、既出の構成要素と同一の構成要素については同一の符号を付して、再度の説明を省略する。
The contents described in the fourth embodiment can be applied to any of the other embodiments and other modified examples.
Furthermore, the same components as those already mentioned are given the same reference numerals and will not be described again.
図7-1は、本実施例において端末20のコード表示処理部2113が実行するコード表示処理の一例である第1のコード表示処理の流れの一例を示す図である。
最初に、コード表示処理部2113は、端末表示用コードストックデータ2831に記憶されている端末表示用コードのうち、表示対象とする端末表示用コードを決定する(F110)。
FIG. 7A is a diagram showing an example of the flow of a first code display process, which is an example of the code display process executed by the code display processing unit 2113 of the terminal 20 in this embodiment.
First, the code display processing unit 2113 determines a terminal display code to be displayed from among the terminal display codes stored in the terminal display code stock data 2831 (F110).
オンライン状態においてサーバ10から取得した1つのコードを端末20でストックする場合は、第1の端末表示用コードストックデータ2831A(図4-9参照)に記憶されている端末表示用コードを、表示対象とする端末表示用コードに決定する。 When a single code obtained from the server 10 is stored on the terminal 20 while online, the terminal display code stored in the first terminal display code stock data 2831A (see Figure 4-9) is determined to be the terminal display code to be displayed.
一方、オンライン状態においてサーバ10から取得した複数(2以上)のコードを端末20でストックする場合は、第2の端末表示用コードストックデータ2831(図4-15参照)に記憶されている端末表示用コードのうち、限定ではなく例として、最も古い端末表示用コード(コード有効期限が最も近い端末表示用コード)を、表示対象とする端末表示用コードに決定する。 On the other hand, when multiple (two or more) codes obtained from the server 10 are stored on the terminal 20 while online, the oldest terminal display code (the terminal display code with the nearest code expiration date) among the terminal display codes stored in the second terminal display code stock data 2831 (see Figure 4-15) is selected as the terminal display code to be displayed, for example and not by way of limitation.
その後、コード表示処理部2113は、F110で決定した端末表示用コードに関連付けて記憶されているコード有効期限と、時計部29Aの計時時刻とに基づき、コード有効期限の残り時間が、前述したコード表示時間よりも短いか否かを判定する(F120)。 Then, the code display processing unit 2113 determines whether the remaining time until the code expiration date is shorter than the aforementioned code display time based on the code expiration date stored in association with the terminal display code determined in F110 and the time measured by the clock unit 29A (F120).
コード有効期限の残り時間がコード表示時間よりも短いと判定したならば(F120:YES)、コード表示処理部2113は、F110で決定した端末表示用コードを端末表示用コードストックデータ2831から削除する(F130)。そして、コード表示処理部2113は、限定ではなく例として、端末表示用コードを表示させることができない旨のメッセージ等を含むエラー画面を表示部24に表示させた後(F140)、第1のコード表示処理を終了する。 If it is determined that the remaining time until the code expiration date is shorter than the code display time (F120: YES), the code display processing unit 2113 deletes the terminal display code determined in F110 from the terminal display code stock data 2831 (F130). Then, the code display processing unit 2113 displays an error screen on the display unit 24 (F140), including, for example and not limitation, a message indicating that the terminal display code cannot be displayed, and then terminates the first code display process.
一方、コード有効期限の残り時間がコード表示時間よりも短いないと判定したならば(F120:NO)、コード表示処理部2113は、F110で決定した端末表示用コードのコード画像を含む第1のコード表示画面を表示部24に表示させる(F150)。この場合、前述したように、コード有効期限に関する情報や、コード表示期限に関する情報を、第1のコード表示画面に表示させるようにしてもよいし、表示させなくてもよい。そして、コード表示処理部2113は、第1のコード表示処理を終了する。 On the other hand, if it is determined that the remaining time until the code expiration date is not shorter than the code display time (F120: NO), the code display processing unit 2113 causes the display unit 24 to display a first code display screen including a code image of the terminal display code determined in F110 (F150). In this case, as described above, information regarding the code expiration date and information regarding the code display date may or may not be displayed on the first code display screen. The code display processing unit 2113 then terminates the first code display process.
この処理では、コード有効期限の残り時間がコード表示時間よりも短い場合は、端末表示用コードを削除し、その端末表示用コードが表示部24に表示されないようにすることができる。 In this process, if the remaining time until the code expiration date is shorter than the code display time, the terminal display code is deleted and the terminal display code is no longer displayed on the display unit 24.
なお、この処理では、コード有効期限の残り時間がコード表示時間よりも短い場合は、端末表示用コードを削除し、その端末表示用コードが表示部24に表示されないようにしたが、これに限定されない。 In this process, if the remaining time until the code expiration date is shorter than the code display time, the terminal display code is deleted and the terminal display code is not displayed on the display unit 24, but this is not limited to this.
具体的には、一時的に情報を記憶する記憶領域として、限定ではなく例として、コード表示時間分の時間を確保するバッファを端末20の記憶部28に設ける。例えば、コード表示時間を「5分」とするのであれば、「5分」分の時間を確保するバッファを設ける。 Specifically, as a memory area for temporarily storing information, a buffer that reserves the code display time is provided in the memory unit 28 of the terminal 20, by way of example and not limitation. For example, if the code display time is set to "5 minutes," a buffer that reserves "5 minutes" of time is provided.
この場合、コード表示時間分の時間がバッファに確保されていることで、端末20の制御部21は、「実際のコード表示期限の残り時間+コード表示時間」をコード表示期限の残り時間として処理を行う。このため、実際のコード有効期限の残り時間はコード表示時間よりも短いにも関わらず、制御部21は、コード有効期限の残り時間はコード表示時間以上であると判定するため、表示対象とする端末表示用コードを含むコード表示画面が表示部24に表示されることになる。 In this case, because the code display time is reserved in the buffer, the control unit 21 of the terminal 20 processes the remaining code display time as "the actual remaining code display time + the code display time." Therefore, even though the actual remaining code expiration time is shorter than the code display time, the control unit 21 determines that the remaining code expiration time is equal to or greater than the code display time, and a code display screen including the terminal display code to be displayed is displayed on the display unit 24.
図7-2は、本実施例において端末20のコード表示処理部2113が実行するコード表示処理の別例である第2のコード表示処理の流れの一例を示す図である。
なお、前述した処理と同一のステップについては同一の符号を付して、再度の説明を省略する。
FIG. 7B is a diagram showing an example of the flow of a second code display process, which is another example of the code display process executed by the code display processing unit 2113 of the terminal 20 in this embodiment.
The same steps as those in the above-described process are denoted by the same reference numerals, and the repeated explanation will be omitted.
この処理は、図7-1の処理のF130、F140のステップを、それぞれF230、F240のステップに変更したものである。 In this process, steps F130 and F140 in the process in Figure 7-1 are replaced with steps F230 and F240, respectively.
F110の後、コード有効期限の残り時間がコード表示時間よりも短いと判定したならば(F120:YES)、コード表示処理部2113は、コード表示期限変更処理を行う(F230)。具体的には、限定ではなく例として、コード有効期限の残り時間と同じ時間をコード表示時間として設定する。つまり、コード有効期限とコード表示期限とが同じとなるように、コード表示期限を短縮する。 After F110, if it is determined that the remaining time until the code expiration date is shorter than the code display time (F120: YES), the code display processing unit 2113 performs code display expiration date change processing (F230). Specifically, by way of example and not limitation, the code display time is set to the same time as the remaining time until the code expiration date. In other words, the code display date is shortened so that the code expiration date and the code display date are the same.
その後、コード表示処理部2113は、F110で決定した端末表示用コードのコード画像を含む第2のコード表示画面を表示部24に表示させる(F240)。この場合、前述したように、コード有効期限に関する情報や、変更したコード表示期限に関する情報を、第2のコード表示画面に表示させるようにしてもよいし、表示させなくてもよい。そして、コード表示処理部2113は、第2のコード表示処理を終了する。 Then, the code display processing unit 2113 causes the display unit 24 to display a second code display screen including a code image of the terminal display code determined in F110 (F240). In this case, as described above, information regarding the code expiration date and information regarding the changed code display expiration date may or may not be displayed on the second code display screen. Then, the code display processing unit 2113 ends the second code display process.
この処理では、コード有効期限の残り時間がコード表示時間よりも短い場合は、コード有効期限とコード表示期限とが同じとなるようにコード表示期限を短縮した上で、コード表示画面を表示部24に表示する。 In this process, if the remaining time until the code expiration date is shorter than the code display time, the code display date is shortened so that the code expiration date and the code display date are the same, and the code display screen is displayed on the display unit 24.
図7-3は、本実施例において端末20のコード表示処理部2113が実行するコード表示処理の別例である第3のコード表示処理の流れの一例を示す図である。
なお、前述した処理と同一のステップについては同一の符号を付して、再度の説明を省略する。
FIG. 7C is a diagram showing an example of the flow of a third code display process, which is another example of the code display process executed by the code display processing unit 2113 of the terminal 20 in this embodiment.
The same steps as those in the above-described process are denoted by the same reference numerals, and the repeated explanation will be omitted.
この処理は、図7-1の処理のF110、F130、F140のステップを、それぞれF310、F330、F340のステップに変更したものである。 In this process, steps F110, F130, and F140 in the process in Figure 7-1 are replaced with steps F310, F330, and F340, respectively.
この処理では、オンライン状態においてサーバ10から取得した複数(2以上)のコードが端末20でストックされる、つまり、複数の端末表示用コードのデータが第2の端末表示用コードストックデータ2831Bに記憶されていることとして説明する。 In this process, multiple (two or more) codes obtained from the server 10 while online are stored on the terminal 20, meaning that data for multiple terminal display codes is stored in the second terminal display code stock data 2831B.
最初に、コード表示処理部2113は、第2の端末表示用コードストックデータ2831Bに記憶されている端末表示用コードのうち、限定ではなく例として、最も古い端末表示用コード(コード有効期限が最も近い端末表示用コード)を、表示対象とする端末表示用コードに決定する(F310)。 First, the code display processing unit 2113 determines, as a non-limiting example, the oldest terminal display code (the terminal display code with the nearest code expiration date) from among the terminal display codes stored in the second terminal display code stock data 2831B as the terminal display code to be displayed (F310).
その後、コード有効期限の残り時間がコード表示時間よりも短いと判定したならば(F120:YES)、コード表示処理部2113は、端末表示用コード変更処理を行う(F330)。具体的には、限定ではなく例として、第2の端末表示用コードストックデータ2831Bに記憶されている端末表示用コードのうち、限定ではなく例として、コード有効期限の残り時間がコード表示時間以上である端末表示用コードであって最も古い端末表示用コード(コード有効期限が最も近い端末表示用コード)を、表示対象とする端末表示用コードに変更する。 If it is subsequently determined that the remaining time until the code expiration date is shorter than the code display time (F120: YES), the code display processing unit 2113 performs a terminal display code change process (F330). Specifically, by way of example and not limitation, among the terminal display codes stored in the second terminal display code stock data 2831B, the oldest terminal display code (the terminal display code with the nearest code expiration date) whose remaining time until the code expiration date is equal to or greater than the code display time is changed to the terminal display code to be displayed.
その後、コード表示処理部2113は、F330で変更した端末表示用コードのコード画像を含む第3のコード表示画面を表示部24に表示させる(F340)。この場合、前述したように、コード有効期限に関する情報や、コード表示期限に関する情報を、第3のコード表示画面に表示させるようにしてもよいし、表示させなくてもよい。そして、コード表示処理部2113は、第3のコード表示処理を終了する。 Then, the code display processing unit 2113 causes the display unit 24 to display a third code display screen including a code image of the terminal display code changed in F330 (F340). In this case, as described above, information regarding the code expiration date and information regarding the code display expiration date may or may not be displayed on the third code display screen. Then, the code display processing unit 2113 ends the third code display process.
この処理では、コード有効期限の残り時間がコード表示時間よりも短い場合は、コード有効期限の残り時間がコード表示時間以上である端末表示用コードを表示対象に変更した上で、コード表示画面を表示部24に表示する。 In this process, if the remaining time until the code expiration date is shorter than the code display time, the terminal display code whose remaining time until the code expiration date is equal to or greater than the code display time is changed to be displayed, and the code display screen is displayed on the display unit 24.
なお、この処理では、コード表示画面を表示させる前に、表示対象とする端末表示用コードに変更したが、これに限定されない。
具体的には、コード表示処理部2113が、表示対象とする端末表示用コードを含むコード表示画面に表示した後、コード有効期限の残り時間がコード表示時間よりも短いか否かを判定する。そして、この条件を満たす場合は、端末表示用コード変更処理を行って、表示中の端末表示用コードを、コード有効期限の残り時間がコード表示時間以上である端末表示用コードに変更して、表示中のコード表示画面に反映させるようにすることもできる。つまり、コード表示画面の表示途中で、端末表示用コードを変更するようにしてもよいし、そのようにしなくてもよい。
In this process, the terminal display code is changed to the code to be displayed before the code display screen is displayed, but the present invention is not limited to this.
Specifically, after the code display processing unit 2113 displays the terminal display code to be displayed on the code display screen, it determines whether the remaining time until the code expiration date is shorter than the code display time. If this condition is met, it can perform a terminal display code change process to change the currently displayed terminal display code to a terminal display code whose remaining time until the code expiration date is equal to or longer than the code display time, and reflect this on the currently displayed code display screen. In other words, the terminal display code may or may not be changed while the code display screen is being displayed.
また、上記の各種の処理の他にも、限定ではなく例として、コード有効期限の残り時間がコード表示時間よりも短いと判定した場合、表示対象とする端末表示用コードに関連付けて設定されたコード有効期限を延長するようにすることもできる。 In addition to the various processes described above, by way of example and not limitation, if it is determined that the remaining time until the code expiration date is shorter than the code display time, the code expiration date associated with the terminal display code to be displayed can be extended.
具体的には、限定ではなく例として、コード有効期限の残り時間がコード表示時間よりも短いと判定した場合、制御部21は、コード有効期限が終了する時刻(日時)が、コード表示期限が終了する時刻(日時)と同じとなるように、コード有効期限を延長する。 Specifically, by way of example and not limitation, if it is determined that the remaining time until the code expiration date is shorter than the code display time, the control unit 21 extends the code expiration date so that the time (date and time) at which the code expiration date ends is the same as the time (date and time) at which the code display date and time ends.
オンライン状態であれば端末20はサーバ10と通信することができるため、前述した端末側コード有効期限延長処理(図5-5参照)と同様の処理によってサーバ10と通信を行って、表示対象とする端末表示用コードに関連付けられたコード有効期限をサーバ10に延長させることができる。 When the terminal 20 is online, it can communicate with the server 10, and can communicate with the server 10 using a process similar to the terminal-side code expiration date extension process described above (see Figure 5-5), causing the server 10 to extend the code expiration date associated with the terminal display code to be displayed.
しかしながら、オフライン状態では端末20はサーバ10と通信することができない。このため、オフライン状態では、上記の処理は、あくまでも端末20側でコード有効期限を延長する処理となる。 However, when offline, the terminal 20 cannot communicate with the server 10. Therefore, when offline, the above process is essentially a process of extending the code expiration date on the terminal 20 side.
また、限定ではなく例として、例えば図4-17や図4-18、図4-19に示したように、端末20の表示部24に表示させるコード表示画面には、端末表示用コード画像や決済用番号の他に、コード有効期限の情報を表示させることができる。
しかしながら、例えば図4-16に示したように、コード表示画面に、コード表示期限の情報は表示させるが、コード有効期限の情報は表示させないようにすることができる。
Also, as an example and not a limitation, as shown in Figures 4-17, 4-18, and 4-19, the code display screen displayed on the display unit 24 of the terminal 20 can display information on the code expiration date in addition to the terminal display code image and payment number.
However, as shown in FIG. 4-16, for example, it is possible to display the information on the code display period on the code display screen but not the information on the code expiration date.
この場合、前述したように、限定ではなく例として、コード有効期限とコード表示期限とが同じとなるようにコード表示期限を短縮した上で、コード表示画面に、コード有効期限の情報は表示させずに、コード表示期限の情報を表示させるようにすることができる。
つまり、コード有効期限をコード表示期限に統合することとして、コード有効期限の情報は表示させずに、コード表示期限の情報を表示させるようにすることもできる。この場合、コード有効期限は、実質的にコード表示期限と同じになる。
In this case, as mentioned above, by way of example and not limitation, the code display expiration date can be shortened so that it is the same as the code expiration date, and then the code display screen can display information about the code display expiration date without displaying information about the code expiration date.
In other words, the code expiration date can be integrated into the code display date, so that the code expiration date information is not displayed, but the code display date information is displayed. In this case, the code expiration date becomes essentially the same as the code display date.
<第4実施例の効果>
第4実施例は、コード有効期限やコード有効期限の残り時間の情報がコード表示画面に表示される場合、これらの情報を、コード有効期限から設定された期限に変更して、コード表示画面に表示する構成を示している。
このような構成により得られる効果の一例として、第1有効期限が端末の表示領域に表示される場合、第1有効期限から設定された期限に変更して表示領域に表示することで、例えば端末におけるコード情報の表示期限よりも前に第1有効期限が経過するようなケースにも対応可能となり、ユーザの利便性を向上させることができる。
<Effects of the Fourth Embodiment>
The fourth embodiment shows a configuration in which, when information about the code expiration date and the remaining time until the code expiration date is displayed on the code display screen, this information is changed from the code expiration date to the set expiration date and displayed on the code display screen.
As an example of the effect obtained by such a configuration, when the first expiration date is displayed in the display area of the terminal, by changing the first expiration date to the set expiration date and displaying it in the display area, it becomes possible to handle cases where the first expiration date expires before the display expiration date of the code information on the terminal, for example, thereby improving user convenience.
<第5実施例>
端末表示用コードに関連付けるコード有効期限としてサーバ10によって長い期間が設定された場合、セキュリティが低く、端末20でストックされた端末表示用コードが他人に盗まれるなどのリスクが高まる。
Fifth Example
If the server 10 sets a long period as the code expiration date associated with the terminal display code, security is low, and there is an increased risk that the terminal display code stored in the terminal 20 will be stolen by someone else.
本実施例では、端末20は、複数(2以上)の端末表示用コードの生成を依頼するコード生成依頼情報を、通信I/F22によってサーバ10に送信する。コード生成依頼情報を受信すると、サーバ10は、端末表示用コード生成処理を行う。 In this embodiment, the terminal 20 transmits code generation request information requesting the generation of multiple (two or more) terminal display codes to the server 10 via the communication I/F 22. Upon receiving the code generation request information, the server 10 performs the terminal display code generation process.
本実施例では、端末表示用コード生成処理において、サーバ10の制御部11は、コード有効期限の開始時刻(または開始日時)と終了時刻(または終了日時)とが異なる複数の端末表示用コードを生成する。そして、生成した複数の端末表示用コードのデータを、コード管理データベース159に記憶させる。 In this embodiment, in the terminal display code generation process, the control unit 11 of the server 10 generates multiple terminal display codes with different code expiration start times (or start date and time) and end times (or end date and time). The data for the multiple generated terminal display codes is then stored in the code management database 159.
図8は、本実施例においてサーバ10の記憶部15に記憶されるコード管理データベース159の一例である。
このコード管理データベース159は、図4-6に示したコード管理データベース159と同様であるが、各コード管理データにアプリケーションIDとともに記憶される端末表示用コードのデータが一部異なっている。
FIG. 8 shows an example of the code management database 159 stored in the storage unit 15 of the server 10 in this embodiment.
This code management database 159 is similar to the code management database 159 shown in FIGS. 4-6, but the data of the terminal display code stored together with the application ID in each code management data is partially different.
具体的には、コード管理データには、アプリケーションIDとともに、限定ではなく例として、2個の端末表示用コードを1組とする、コード生成日時は同じであるが、コード有効期限の開始日時が異なる2組(計4個)の端末表示用コードが記憶されている。 Specifically, the code management data stores, along with the application ID, two sets of terminal display codes (four in total), each set consisting of two terminal display codes, with the same code generation date and time but different code expiration date and time.
この表示例では、アプリケーションID「U0001」の端末20、または端末20のユーザについて、コード生成日時を「2019年6月10日9時00分」とする端末表示用コードのデータとして、コードNo「C-n1」~「C-n4」の4つのデータが記憶されている。 In this display example, four pieces of data, code numbers "C-n1" to "C-n4," are stored as data for a terminal display code with the code generation date and time set to "June 10, 2019, 9:00 AM" for the terminal 20 with application ID "U0001" or the user of the terminal 20.
コードNo「C-n1」、「C-n2」の2つの端末表示用コードは、コード有効期限を「2019年6月10日 9時00分00秒~2019年6月10日 14時間59分59秒」とするコードである。つまり、この2つの端末表示用コードは、コード有効期限の開始時刻をコード生成時刻である「9時00分」とし、コード有効時間を「6時間」とするコードである。
一方、コードNo「C-n3」、「C-n4」の2つの端末表示用コードは、コード有効期限を「2019年6月10日 15時00分00秒~2019年6月10日 20時59分59秒」とするコードである。つまり、この2つの端末表示用コードは、コード有効期限の開始時刻をコード生成時刻から6時間経過後の「15時00分」とし、コード有効時間を「6時間」とするコードである。
The two terminal display codes with code numbers "C-n1" and "C-n2" have a code expiration period of "June 10, 2019, 9:00:00 to June 10, 2019, 14 hours, 59 minutes, 59 seconds." In other words, these two terminal display codes have a code expiration start time of "9:00," which is the code generation time, and a code validity time of "6 hours."
On the other hand, the two terminal display codes with code numbers "C-n3" and "C-n4" have a code expiration period of "June 10, 2019, 15:00:00 to June 10, 2019, 20:59:59." In other words, these two terminal display codes have a code expiration start time of "15:00," six hours after the code generation time, and a code validity period of "6 hours."
このように、コードNo「C-n1」、「C-n2」の2つの端末表示用コードと、コードNo「C-n3」、「C-n4」の2つの端末表示用コードとは、コード有効時間は同じであるが、コード有効期限の開始時刻が異なっており、結果的に、コード有効期限が異なっている。 As such, the two terminal display codes with code numbers "C-n1" and "C-n2" and the two terminal display codes with code numbers "C-n3" and "C-n4" have the same code validity period, but the start times of the code validity periods are different, resulting in different code validity periods.
本実施例では、サーバ10は、端末20から受信されたコード生成依頼情報に基づき、上記のような複数の端末表示用コードを生成する。そして、限定ではなく例として、生成した複数の端末表示用コードを、それぞれのコードNoと、それぞれのコード有効期限とともに、端末20に送信する。 In this embodiment, the server 10 generates multiple terminal display codes as described above based on the code generation request information received from the terminal 20. Then, by way of example and not limitation, the server 10 transmits the multiple generated terminal display codes to the terminal 20 along with their respective code numbers and code expiration dates.
端末20は、サーバ10から送信された複数の端末表示用コードを、それぞれのコードNoと、それぞれのコード有効期限とともに受信する。そして、受信された情報を、記憶部28の端末表示用コードストックデータ2831に記憶させる。 The terminal 20 receives multiple terminal display codes sent from the server 10, along with their respective code numbers and expiration dates. The terminal 20 then stores the received information in the terminal display code stock data 2831 in the memory unit 28.
<第5実施例の効果>
第5実施例は、端末20から送信されたコード生成依頼情報(限定ではなく、コード情報の送信の依頼に関する情報の一例)に基づいて、端末20が、サーバ10によって第1のコード有効期限が関連付けられた第1の端末表示用コード画像や第1の決済用番号(限定ではなく、第6コード情報の一例)と、サーバ10によって第2のコード有効期限が関連付けられた第2の端末表示用コード画像や第2の決済用番号(限定ではなく、第7コード情報の一例)とを通信I/F22によって受信する。そして、第1のコード有効期限の開始時刻は、第2のコード有効期限の開始時刻と異なり、第1のコード有効期限の終了時刻は、第2のコード有効期限の終了時刻と異なる構成を示している。
このような構成により得られる効果の一例として、端末は、有効期限の開始時刻と終了時刻とが異なる複数のコード情報を受信して記憶することで、セキュリティを高め、端末の記憶部に記憶された端末表示用コードが他人に盗まれるなどのリスクを低減することができる。
<Effects of the Fifth Embodiment>
In the fifth embodiment, based on code generation request information (not limiting, but an example of information related to a request for transmission of code information) transmitted from the terminal 20, the terminal 20 receives, via the communication I/F 22, a first terminal display code image and a first payment number (not limiting, but an example of sixth code information) associated with a first code expiration date by the server 10, and a second terminal display code image and a second payment number (not limiting, but an example of seventh code information) associated with a second code expiration date by the server 10. The fifth embodiment shows a configuration in which the start time of the first code expiration date is different from the start time of the second code expiration date, and the end time of the first code expiration date is different from the end time of the second code expiration date.
As an example of the effect obtained by such a configuration, the terminal can receive and store multiple code information with different expiration start and end times, thereby increasing security and reducing the risk of the terminal display code stored in the terminal's memory being stolen by others.
<第5変形例>
第5実施例では、サーバ10が、端末表示用コード生成処理において、コード有効期限の開始時刻(または開始日時)と終了時刻(または終了日時)とが異なる複数の端末表示用コードを生成して端末20に送信したが、これに限定されない。
<Fifth Modification>
In the fifth embodiment, in the terminal display code generation process, the server 10 generates multiple terminal display codes with different start times (or start date and time) and end times (or end date and time) of the code expiration date and transmits them to the terminal 20, but this is not limited to this.
限定ではなく例として、サーバ10が、コード有効期限の開始時刻(または開始日時)は異なるが、コード有効期限の終了時刻(終了日時)は同じである複数の端末表示用コードを生成して端末20に送信するようにしてもよいし、そのようにしなくてもよい。この場合は、コード有効期限の終了時刻(終了日時)が同じとなるように、コード有効時間を変えて端末表示用コードを生成するようにすればよい。 As a non-limiting example, the server 10 may, but need not, generate and transmit to the terminal 20 multiple terminal display codes with different code expiration start times (or start dates and times) but the same code expiration end time (end date and time). In this case, the server 10 may generate terminal display codes with different code expiration times so that the code expiration end times (end dates and times) are the same.
また、限定ではなく例として、サーバ10が、コード有効期限の終了時刻(または終了日時)は異なるが、コード有効期限の開始時刻(開始日時)は同じである複数の端末表示用コードを生成して端末20に送信するようにしてもよいし、そのようにしなくてもよい。 Furthermore, as a non-limiting example, the server 10 may, or may not, generate and transmit to the terminal 20 multiple terminal display codes that have different end times (or end dates and times) of the code expiration period but the same start time (start date and time) of the code expiration period.
また、コード有効期限を同じとする端末表示用コードの数(1組(1セット)とする端末表示用コードの数)や、コード有効期限を異ならせる端末表示用コードの数(組の数、セット数)等は、どのように設定してもよい。 In addition, the number of terminal display codes with the same code expiration date (the number of terminal display codes in one set) and the number of terminal display codes with different code expiration dates (the number of sets) can be set in any way.
1 通信システム
10 サーバ
20 端末
30 ネットワーク
40 店舗POSシステム
50 店舗コードリーダ装置
60 コードレジ
70 店舗サーバ
REFERENCE SIGNS LIST 1 Communication system 10 Server 20 Terminal 30 Network 40 Store POS system 50 Store code reader device 60 Code register 70 Store server
Claims (6)
サーバによって第1有効期限が関連付けられた第1コード情報を、前記サーバから前記端末の通信部によって受信することと、
受信された前記第1コード情報を、前記端末の制御部によって前記端末の記憶部に記憶することとが前記端末によって実行され、
前記決済に関する処理は、オフライン状態であることを示す情報と、前記第1コード情報とを前記端末の表示領域に表示する処理を含み、
前記決済は、前記表示領域に表示された前記第1コード情報がコードリーダ装置によって読み取られた時刻と、前記第1有効期限とに基づいて前記サーバによって実行され、
前記決済に関する処理がオフライン状態で行われた場合、オンライン状態となった後、前記決済に関する決済情報を前記サーバから前記通信部によって受信することと、
前記第1有効期限の延長に関する処理を前記制御部によって行うこととが前記端末によって実行される。 A program executed by a terminal that processes payment based on code information,
receiving, from the server by a communication unit of the terminal, first code information associated with a first expiration date by the server;
and storing the received first code information in a storage unit of the terminal by a control unit of the terminal,
the payment-related process includes a process of displaying information indicating an offline state and the first code information in a display area of the terminal;
the payment is executed by the server based on the time when the first code information displayed in the display area is read by the code reader device and the first expiration date;
If the process related to the payment is performed in an offline state, after the online state is established, receiving payment information related to the payment from the server by the communication unit;
The terminal executes the process relating to the extension of the first expiration date by the control unit.
前記第1有効期限の延長に関する処理は、延長された前記第1有効期限に関する情報を前記サーバから受信する処理を含む。 2. The program according to claim 1,
The process relating to the extension of the first expiration date includes a process of receiving information relating to the extended first expiration date from the server.
前記第1有効期限の延長に関する処理は、前記第1有効期限の延長を前記サーバに依頼する処理を含み、
延長された前記第1有効期限に関する情報は、前記依頼する処理に基づいて、前記サーバから送信される。 3. The program according to claim 2,
the process relating to the extension of the first expiration date includes a process of requesting the server to extend the first expiration date,
Information regarding the extended first expiration date is transmitted from the server based on the requesting process.
延長された前記第1有効期限に関する情報は、前記端末が前記第1有効期限の延長を前記サーバに依頼することなく、前記サーバから送信される。 3. The program according to claim 2,
Information about the extended first expiration date is transmitted from the server without the terminal requesting the server to extend the first expiration date.
サーバによって第1有効期限が関連付けられた第1コード情報を、前記サーバから前記端末の通信部によって受信することと、
受信された前記第1コード情報を、前記端末の制御部によって前記端末の記憶部に記憶することとを含み、
前記決済に関する処理は、オフライン状態であることを示す情報と、前記第1コード情報とを前記端末の表示領域に表示する処理を含み、
前記決済は、前記表示領域に表示された前記第1コード情報がコードリーダ装置によって読み取られた時刻と、前記第1有効期限とに基づいて前記サーバによって実行され、
前記決済に関する処理がオフライン状態で行われた場合、オンライン状態となった後、前記決済に関する決済情報を前記サーバから前記通信部によって受信することと、
前記第1有効期限の延長に関する処理を前記制御部によって行うこととを含む。 An information processing method for a terminal that processes payment based on code information,
receiving, from the server by a communication unit of the terminal, first code information associated with a first expiration date by the server;
storing the received first code information in a storage unit of the terminal by a control unit of the terminal;
the payment-related process includes a process of displaying information indicating an offline state and the first code information in a display area of the terminal;
the settlement is executed by the server based on the time when the first code information displayed in the display area is read by the code reader device and the first expiration date;
If the process related to the payment is performed in an offline state, after the online state is established, receiving payment information related to the payment from the server by the communication unit;
The method includes performing a process related to the extension of the first expiration date by the control unit.
サーバによって第1有効期限が関連付けられた第1コード情報を、前記サーバから受信する通信部と、
受信された前記第1コード情報を、前記端末の記憶部に記憶する制御を行う制御部とを備え、
前記決済に関する処理は、オフライン状態であることを示す情報と、前記第1コード情報とを前記端末の表示領域に表示する処理を含み、
前記決済は、前記表示領域に表示された前記第1コード情報がコードリーダ装置によって読み取られた時刻と、前記第1有効期限とに基づいて前記サーバによって実行され、
前記通信部は、前記決済に関する処理がオフライン状態で行われた場合、オンライン状態となった後、前記決済に関する決済情報を前記サーバから受信し、
前記制御部は、前記第1有効期限の延長に関する処理を行う。 A terminal that processes payment based on code information,
a communication unit that receives, from the server, first code information associated with a first expiration date by the server;
a control unit that controls storing the received first code information in a storage unit of the terminal;
the payment-related process includes a process of displaying information indicating an offline state and the first code information in a display area of the terminal;
the settlement is executed by the server based on the time when the first code information displayed in the display area is read by the code reader device and the first expiration date;
When the process related to the payment is performed in an offline state, the communication unit receives payment information related to the payment from the server after the process becomes online,
The control unit performs a process related to the extension of the first expiration date.
Priority Applications (4)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2019112044A JP7761985B2 (en) | 2019-06-17 | 2019-06-17 | Program, information processing method, terminal |
| PCT/JP2020/020258 WO2020255621A1 (en) | 2019-06-17 | 2020-05-22 | Information processing method, program, terminal and server |
| KR1020217038492A KR20220020803A (en) | 2019-06-17 | 2020-05-22 | Information processing method, program, terminal, server |
| CN202080036197.8A CN113826133A (en) | 2019-06-17 | 2020-05-22 | Information processing method, program, terminal, server |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2019112044A JP7761985B2 (en) | 2019-06-17 | 2019-06-17 | Program, information processing method, terminal |
Publications (3)
| Publication Number | Publication Date |
|---|---|
| JP2020204884A JP2020204884A (en) | 2020-12-24 |
| JP2020204884A5 JP2020204884A5 (en) | 2022-07-08 |
| JP7761985B2 true JP7761985B2 (en) | 2025-10-29 |
Family
ID=73837036
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2019112044A Active JP7761985B2 (en) | 2019-06-17 | 2019-06-17 | Program, information processing method, terminal |
Country Status (4)
| Country | Link |
|---|---|
| JP (1) | JP7761985B2 (en) |
| KR (1) | KR20220020803A (en) |
| CN (1) | CN113826133A (en) |
| WO (1) | WO2020255621A1 (en) |
Families Citing this family (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP7608835B2 (en) * | 2021-01-13 | 2025-01-07 | 大日本印刷株式会社 | Online procedure system, user terminal and program |
| JP7752504B2 (en) * | 2021-10-14 | 2025-10-10 | 株式会社日立製作所 | Payment support system |
| JP7788255B2 (en) * | 2021-11-16 | 2025-12-18 | Jr東日本メカトロニクス株式会社 | Information processing system, information processing device, information processing method, and program |
| JP7121183B1 (en) * | 2021-11-29 | 2022-08-17 | PayPay株式会社 | Provision device, provision method and provision program |
| JP7403696B1 (en) | 2023-01-26 | 2023-12-22 | PayPay株式会社 | Information management device, application program, information management method, and program |
| JP7680613B1 (en) * | 2024-09-19 | 2025-05-20 | 株式会社Nttドコモ | Payment device, electronic payment program, and electronic payment system |
Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2004213363A (en) | 2002-12-27 | 2004-07-29 | Japan Research Institute Ltd | Electronic payment system, electronic payment method, and program for causing computer to execute the method |
| JP2008250884A (en) | 2007-03-30 | 2008-10-16 | Cyber Coin Kk | Authentication system, server, mobile communication terminal and program used for authentication system |
| JP2008257751A (en) | 2008-07-28 | 2008-10-23 | Kinsuke Yamawaki | Transaction method for collateralizing credit of transaction information |
| JP2014106781A (en) | 2012-11-28 | 2014-06-09 | Amano Corp | Processing time acquisition system, processing time acquisition device, processing time management server device, processing time acquisition method, and processing time acquisition program |
| JP2018116435A (en) | 2017-01-17 | 2018-07-26 | 株式会社エヌ・ティ・ティ・データ | Authentication device, authentication system, authentication method, and program |
| JP6438620B1 (en) | 2018-07-19 | 2018-12-19 | 株式会社メルカリ | Program, information processing method, information processing apparatus |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS61109639A (en) * | 1984-10-29 | 1986-05-28 | Riken Seiki Kk | Work clamp for machine tool |
| JP2002176671A (en) | 2000-09-28 | 2002-06-21 | Takashi Fujimoto | Mobile phone |
| JP2017027441A (en) * | 2015-07-24 | 2017-02-02 | 凸版印刷株式会社 | Ticket issue system |
| JP6877913B2 (en) * | 2016-08-05 | 2021-05-26 | 株式会社東芝 | Terminal devices, payment devices, and display control programs |
-
2019
- 2019-06-17 JP JP2019112044A patent/JP7761985B2/en active Active
-
2020
- 2020-05-22 CN CN202080036197.8A patent/CN113826133A/en active Pending
- 2020-05-22 WO PCT/JP2020/020258 patent/WO2020255621A1/en not_active Ceased
- 2020-05-22 KR KR1020217038492A patent/KR20220020803A/en active Pending
Patent Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2004213363A (en) | 2002-12-27 | 2004-07-29 | Japan Research Institute Ltd | Electronic payment system, electronic payment method, and program for causing computer to execute the method |
| JP2008250884A (en) | 2007-03-30 | 2008-10-16 | Cyber Coin Kk | Authentication system, server, mobile communication terminal and program used for authentication system |
| JP2008257751A (en) | 2008-07-28 | 2008-10-23 | Kinsuke Yamawaki | Transaction method for collateralizing credit of transaction information |
| JP2014106781A (en) | 2012-11-28 | 2014-06-09 | Amano Corp | Processing time acquisition system, processing time acquisition device, processing time management server device, processing time acquisition method, and processing time acquisition program |
| JP2018116435A (en) | 2017-01-17 | 2018-07-26 | 株式会社エヌ・ティ・ティ・データ | Authentication device, authentication system, authentication method, and program |
| JP6438620B1 (en) | 2018-07-19 | 2018-12-19 | 株式会社メルカリ | Program, information processing method, information processing apparatus |
Non-Patent Citations (1)
| Title |
|---|
| オフラインでも決済ができる「アリペイ」の仕組み,2018年10月01日,[online],[令和6年7月23日検索],インターネット<URL:https://tamakino.hatenablog.com/entry/2018/10/01/000000> |
Also Published As
| Publication number | Publication date |
|---|---|
| KR20220020803A (en) | 2022-02-21 |
| CN113826133A (en) | 2021-12-21 |
| WO2020255621A1 (en) | 2020-12-24 |
| JP2020204884A (en) | 2020-12-24 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP7761985B2 (en) | Program, information processing method, terminal | |
| JP6815447B1 (en) | Programs, information processing methods, terminals | |
| JP7493916B2 (en) | Program, information processing method, and terminal | |
| US20140089195A1 (en) | Person to person photo payments | |
| KR102572825B1 (en) | Information processing method, program, terminal | |
| CN112119415A (en) | Generation method, program, and information processing device | |
| JP6765483B1 (en) | Information processing method, program, terminal | |
| JP7537694B2 (en) | Program, information processing method, and terminal | |
| CN112204598A (en) | Authentication method, program, and terminal | |
| JP7306770B2 (en) | program, information processing method, terminal | |
| KR102891264B1 (en) | Information processing method, program, terminal | |
| JP7354162B2 (en) | Programs, information processing methods, terminals | |
| JP7343258B2 (en) | Program, information processing method, information processing device | |
| JP7306771B2 (en) | program, information processing method, terminal | |
| JP6825160B2 (en) | Programs, information processing methods, terminals | |
| JP6840780B2 (en) | Information processing methods, programs, terminals, servers | |
| JP6825048B2 (en) | Programs, information processing methods, terminals | |
| JP7466477B2 (en) | Program, information processing method, terminal, server | |
| CN106030645B (en) | Registration system and method | |
| US20250371580A1 (en) | Enhancing business interactions using a smart wallet | |
| JP7364311B2 (en) | Programs, information processing methods, terminals | |
| JP7506457B2 (en) | Program, information processing method, server | |
| HK40058752A (en) | Method for providing check-in services and check-in systems |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190731 |
|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20220616 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220630 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20230725 |
|
| A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20230925 |
|
| RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20230925 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20231108 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20240116 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20240416 |
|
| A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20240426 |
|
| A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20240726 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20250414 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20250725 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20251017 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 7761985 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |