JP7368573B2 - Transaction processing system, control device and information processing program - Google Patents

Transaction processing system, control device and information processing program Download PDF

Info

Publication number
JP7368573B2
JP7368573B2 JP2022151382A JP2022151382A JP7368573B2 JP 7368573 B2 JP7368573 B2 JP 7368573B2 JP 2022151382 A JP2022151382 A JP 2022151382A JP 2022151382 A JP2022151382 A JP 2022151382A JP 7368573 B2 JP7368573 B2 JP 7368573B2
Authority
JP
Japan
Prior art keywords
processor
transaction
data
store
act
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2022151382A
Other languages
Japanese (ja)
Other versions
JP2022173337A (en
JP2022173337A5 (en
Inventor
健太朗 河野
克人 望月
茂樹 二宮
文雄 中司
幹生 伊藤
剛士 川本
清充 山口
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba TEC Corp
Original Assignee
Toshiba TEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from JP2021200034A external-priority patent/JP7148703B2/en
Application filed by Toshiba TEC Corp filed Critical Toshiba TEC Corp
Priority to JP2022151382A priority Critical patent/JP7368573B2/en
Publication of JP2022173337A publication Critical patent/JP2022173337A/en
Publication of JP2022173337A5 publication Critical patent/JP2022173337A5/ja
Priority to JP2023176923A priority patent/JP2023184562A/en
Application granted granted Critical
Publication of JP7368573B2 publication Critical patent/JP7368573B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Cash Registers Or Receiving Machines (AREA)

Description

本発明の実施形態は、取引処理システム、制御装置及び情報処理プログラムに関する。 Embodiments of the present invention relate to a transaction processing system, a control device, and an information processing program.

ショッピングカートに取り付けたカート端末又は客が所持する携帯情報通信端末のなどの端末装置での客による操作に応じて購入商品を登録する取引処理システムが考えられている。
このような取引処理システムでは、店内で買い物中の客の人数に応じて、同時に利用される端末装置の数が変動する。またこのような取引処理システムでは、店舗側のリソースの制限から、同時に利用可能な端末装置の数は制限される。このため混雑時には、新たな端末装置の利用を開始することができない状況が生じ得る。
このような状況が生じる可能性は、低減されることが望まれる。
2. Description of the Related Art Transaction processing systems have been proposed in which purchased products are registered in response to operations by a customer on a terminal device such as a cart terminal attached to a shopping cart or a mobile information communication terminal owned by the customer.
In such a transaction processing system, the number of terminal devices used at the same time varies depending on the number of customers shopping in the store. Furthermore, in such a transaction processing system, the number of terminal devices that can be used simultaneously is limited due to resource limitations on the store side. Therefore, during times of congestion, a situation may arise in which it is not possible to start using a new terminal device.
It is desirable to reduce the possibility that such a situation will occur.

特開2019-153089号公報JP 2019-153089 Publication

本発明が解決しようとする課題は、新たな端末装置の利用を開始することができない状況が生じる可能性を低減できる取引処理システムを提供することである。 The problem to be solved by the present invention is to provide a transaction processing system that can reduce the possibility of a situation in which the use of a new terminal device cannot be started.

実施形態の取引処理システムは、操作手段、決定手段、検出手段、制御手段通報手段及び案内手段を備える。操作手段は、端末装置に備えられ、操作者による操作を受ける。決定手段は、情報処理装置の1つに備えられ、操作手段で受けられた操作に応じて取引の内容を決定するための処理を行う。検出手段は、端末装置又は情報処理装置の1つに備えられ、予め定められた制限時間に渡って操作手段により操作が受けられない無操作状態を検出する。制御手段は、端末装置又は情報処理装置の1つに備えられ、一取引の内容の決定のための処理を決定手段が開始してから当該一取引の内容の決定が完了するまでの間に、検出手段により無操作状態が検出されたことに応じて、当該一取引に関する処理を終了するよう決定手段を制御する。通報手段は、情報処理装置の1つに備えられ、決定手段が処理を完了することなく終了したことを予め定められた通報先に通報する。案内手段は、情報処理装置の1つに備えられ、制限時間よりも短く予め定められた時間に渡って操作手段により操作が受けられない場合に、操作を行わないと処理が完了されることなく終了されることを操作者に案内する。 The transaction processing system of the embodiment includes an operating means, a determining means, a detecting means, a controlling means, a reporting means , and a guiding means . The operating means is provided in the terminal device and is operated by an operator. The determining means is provided in one of the information processing devices and performs processing for determining the content of a transaction in accordance with an operation received by the operating means. The detection means is provided in one of the terminal device or the information processing device, and detects a non-operation state in which the operation means cannot be operated for a predetermined time limit . The control means is provided in one of the terminal device or the information processing device, and during the period from when the determining means starts processing for determining the contents of one transaction until the determination of the contents of the one transaction is completed, In response to the detection of the no-operation state by the detection means, the determination means is controlled to end the processing related to the one transaction. The reporting means is provided in one of the information processing devices, and notifies a predetermined reporting destination that the determining means has terminated the processing without completing it. The guide means is provided in one of the information processing devices, and when the operation means cannot be operated for a predetermined time shorter than the time limit, the guide means is provided in one of the information processing devices. Inform the operator that the process will be terminated.

一実施形態に係る取引処理システムの概略構成を示すブロック図。1 is a block diagram showing a schematic configuration of a transaction processing system according to an embodiment. 図1中の店舗サーバの要部回路構成を示すブロック図。FIG. 2 is a block diagram showing the main circuit configuration of the store server in FIG. 1. FIG. 図1中の仮想POSサーバの要部回路構成を示すブロック図。FIG. 2 is a block diagram showing the main circuit configuration of the virtual POS server in FIG. 1. FIG. 図1中のモバイルコントローラの要部回路構成を示すブロック図。FIG. 2 is a block diagram showing the main circuit configuration of the mobile controller in FIG. 1. FIG. 図4に示す取引管理データベースに含まれるデータレコードの主要なデータ構造を示す模式図。5 is a schematic diagram showing the main data structure of data records included in the transaction management database shown in FIG. 4. FIG. 図4に示す登録データベースに含まれるデータレコードの主要なデータ構造を示す模式図。5 is a schematic diagram showing the main data structure of data records included in the registration database shown in FIG. 4. FIG. 図1中のユーザ端末の要部回路構成を示すブロック図。FIG. 2 is a block diagram showing the main circuit configuration of the user terminal in FIG. 1. FIG. 図1中のカート端末の要部回路構成を示すブロック図。FIG. 2 is a block diagram showing the main circuit configuration of the cart terminal in FIG. 1. FIG. スマホUI処理のフローチャート。Flowchart of smartphone UI processing. スマホUI処理のフローチャート。Flowchart of smartphone UI processing. スマホUI処理のフローチャート。Flowchart of smartphone UI processing. スマホUI処理のフローチャート。Flowchart of smartphone UI processing. カートUI処理のフローチャート。Flowchart of cart UI processing. 管理処置のフローチャート。Flowchart of management actions. 仲介処理のフローチャート。Flowchart of mediation processing. 仲介処理のフローチャート。Flowchart of mediation processing. 仲介処理のフローチャート。Flowchart of mediation processing. 取引処理のフローチャート。Flowchart of transaction processing. 取引処理のフローチャート。Flowchart of transaction processing. 一覧画面の一例を示す図。The figure which shows an example of a list screen. 登録画面の一例を示す図。The figure which shows an example of a registration screen. 一覧画面の一例を示す図。The figure which shows an example of a list screen. 会計画面の一例を示す図。The figure which shows an example of a checkout screen.

以下、取引処理システムの一実施形態について、図面を用いて説明する。
この実施形態における取引処理システムは、店内に陳列している商品を、来訪した客に対して販売する店舗における商品の取引を処理する。
An embodiment of the transaction processing system will be described below with reference to the drawings.
The transaction processing system in this embodiment processes product transactions in a store that sells products displayed in the store to visiting customers.

図1は本実施形態に係る取引処理システムの概略構成を示すブロック図である。
取引処理システムは、複数の店舗システム100、中継サーバ200、ユーザ端末300、カート端末400、決済サーバ500、電子レシートサーバ600及び通信ネットワーク700を含む。そして複数の店舗システム100、中継サーバ200、ユーザ端末300、決済サーバ500及び電子レシートサーバ600を、通信ネットワーク700を介して通信可能とされる。
FIG. 1 is a block diagram showing a schematic configuration of a transaction processing system according to this embodiment.
The transaction processing system includes a plurality of store systems 100, a relay server 200, a user terminal 300, a cart terminal 400, a payment server 500, an electronic receipt server 600, and a communication network 700. The plurality of store systems 100 , relay server 200 , user terminal 300 , payment server 500 , and electronic receipt server 600 are enabled to communicate via communication network 700 .

図1では、2つの店舗システム100を示している。これら店舗システム100は、取引処理システムを利用するそれぞれ異なる店舗A及び店舗Bにそれぞれ設けられる。取引処理システムを利用する店舗が3つ以上存在してもよく、店舗毎に店舗システム100が設けられる。なお以下において、各店舗に設けられた店舗システム100を区別する必要がある場合には、店舗Aに設けられた店舗システム100を店舗システム100Aと表し、店舗Bに設けられた店舗システム100を店舗システム100Bと表す。
店舗Aを運営する事業者は、店舗Bを運営する事業者と同じであっても、別であってもよい。その他の店舗で取引処理システムが利用される場合も、その店舗を運営する事業者は、店舗A又は店舗Bを運営する事業者と同じであっても、別であってもよい。
In FIG. 1, two store systems 100 are shown. These store systems 100 are provided at different stores A and B that use transaction processing systems. There may be three or more stores using the transaction processing system, and a store system 100 is provided for each store. In the following, when it is necessary to distinguish between the store systems 100 installed at each store, the store system 100 installed at store A will be referred to as store system 100A, and the store system 100 installed at store B will be referred to as store system 100A. It is expressed as system 100B.
The business operator that operates store A may be the same as the business operator that operates store B, or may be different. Even when the transaction processing system is used at another store, the business operator that operates that store may be the same as the business operator that operates store A or store B, or may be different.

中継サーバ200は、ユーザ端末300と店舗システム100との間でのデータ通信を中継する。中継サーバ200は例えば、通信ネットワーク700を介したクラウドサービスとしてデータ通信の中継機能を提供する。 Relay server 200 relays data communication between user terminal 300 and store system 100. For example, the relay server 200 provides a data communication relay function as a cloud service via the communication network 700.

ユーザ端末300は、取引処理システムを利用した買い物を店舗にて行う客のためのユーザインタフェースとして機能する端末装置である。ユーザ端末300は、店舗システム100と無線通信する機能と、通信ネットワーク700と無線通信する機能とを備える。ユーザ端末300としては、スマートフォン又はタブレット端末等のデータ通信機能を備えた通信端末が利用できる。ユーザ端末300は、客により所有される。つまりユーザ端末300は、客により店舗に持ち込まれる端末装置の一例である。 The user terminal 300 is a terminal device that functions as a user interface for customers who shop at a store using the transaction processing system. The user terminal 300 has a function of wirelessly communicating with the store system 100 and a function of wirelessly communicating with the communication network 700. As the user terminal 300, a communication terminal with a data communication function, such as a smartphone or a tablet terminal, can be used. User terminal 300 is owned by a customer. In other words, the user terminal 300 is an example of a terminal device brought into a store by a customer.

カート端末400は、取引処理システムを利用した買い物を店舗にて行う客のためのユーザインタフェースとして機能する端末装置である。カート端末400は、店舗システム100と無線通信する機能を備える。カート端末400は、ショッピングカートC1に取り付けられ、店舗に備え付けられる。カート端末400は、店舗にて客により使用される。つまりカート端末400は、店舗により客に貸与される端末装置の一例である。 Cart terminal 400 is a terminal device that functions as a user interface for customers who shop at a store using the transaction processing system. The cart terminal 400 has a function of wirelessly communicating with the store system 100. The cart terminal 400 is attached to the shopping cart C1 and installed in the store. Cart terminal 400 is used by a customer at a store. In other words, the cart terminal 400 is an example of a terminal device lent to a customer by a store.

決済サーバ500は、通信ネットワーク700を介した決済要求に応じてオンライン決済を行うための決済処理を行う。決済サーバ500は、クレジットカード決済及び電子マネー決済のような複数種の決済方法のいずれか1つのみに対応するものであってもよいし、複数の決済方法に対応するものであってもよい。決済サーバ500としては例えば、複数の決済方法のものを含む複数の決済サービスに対応した、決済代行業者が運営する既存の決済サーバを適用できる。 Payment server 500 performs payment processing for online payment in response to payment requests via communication network 700 . The payment server 500 may be compatible with only one of multiple payment methods such as credit card payment and electronic money payment, or may be compatible with multiple payment methods. . As the payment server 500, for example, an existing payment server operated by a payment agency that supports multiple payment services including multiple payment methods can be used.

電子レシートサーバ600は、取引結果を表したレシートを画像又はウェブページとして提供する。電子レシートサーバ600としては例えば、電子レシートサービスを提供している既存の電子レシートサーバを適用できる。 The electronic receipt server 600 provides a receipt representing a transaction result as an image or a web page. As the electronic receipt server 600, for example, an existing electronic receipt server that provides electronic receipt services can be applied.

通信ネットワーク700としては例えば、インターネット、VPN(virtual private network)、LAN(local area network)、公衆通信網、移動体通信網などを、単独又は適宜に組み合わせて用いることができる。通信ネットワーク700としては典型的には、移動体通信網とインターネット又はVPNとが利用される。 As the communication network 700, for example, the Internet, a VPN (virtual private network), a LAN (local area network), a public communication network, a mobile communication network, etc. can be used alone or in an appropriate combination. Typically, the communication network 700 is a mobile communication network, the Internet, or a VPN.

各店舗システム100の概略的な構成は共通である。すなわち店舗システム100は、店舗サーバ1、仮想POSサーバ2、モバイルコントローラ3、通信サーバ4、会計機5及びアクセスポイント6を、店内通信ネットワーク7を介して通信可能として構成される。ただし、店舗サーバ1、仮想POSサーバ2、モバイルコントローラ3、通信サーバ4、会計機5、アクセスポイント6及び店内通信ネットワーク7は、後述する動作を実現するための機能が共通であればよく、完全に同一である必要は無い。また一部の店舗システム100は、図1に示されない装置を備えてもよい。 The general configuration of each store system 100 is common. That is, the store system 100 is configured such that the store server 1, virtual POS server 2, mobile controller 3, communication server 4, checkout machine 5, and access point 6 can communicate with each other via the in-store communication network 7. However, the store server 1, virtual POS server 2, mobile controller 3, communication server 4, checkout machine 5, access point 6, and in-store communication network 7 only need to have common functions to realize the operations described below, and are completely need not be the same. Further, some store systems 100 may include devices not shown in FIG.

店舗サーバ1は、取引処理システムでの処理の対象となった複数の取引を総合的に管理するための情報処理装置である。店舗サーバ1は例えば、既存のPOSサーバと同様な機能を有する。
仮想POSサーバ2は、外部からの要求に応じて取引毎の購入商品の登録及び当該購入商品の代金の決済などのための情報処理(以下、取引処理と称する)を行う情報処理装置である。仮想POSサーバ2は、既存のPOS端末が備える機能を仮想的に実現する。仮想POSサーバ2が行う情報処理は、店舗毎の運営方針の違いに適応するようにカスタマイズされる。つまり、例えば店舗システム100Aに備えられた店舗サーバ1が行う取引処理と、店舗システム100Bに備えられた店舗サーバ1が行う取引処理とでは、一部相違する場合がある。
The store server 1 is an information processing device for comprehensively managing a plurality of transactions processed by the transaction processing system. For example, the store server 1 has functions similar to those of an existing POS server.
The virtual POS server 2 is an information processing device that performs information processing (hereinafter referred to as transaction processing) for registering purchased products for each transaction and settling the price of the purchased products in response to external requests. The virtual POS server 2 virtually implements the functions of existing POS terminals. The information processing performed by the virtual POS server 2 is customized to adapt to differences in management policies of each store. That is, for example, the transaction processing performed by the store server 1 provided in the store system 100A and the transaction processing performed by the store server 1 provided in the store system 100B may be partially different.

モバイルコントローラ3は、管理処理及び仲介処理を実行する情報処理装置である。管理処理は、仮想POSサーバ2により実行される上記の取引処理を管理するための情報処理である。仲介処理は、仮想POSサーバ2により実行される上記の取引処理をユーザ端末300又はカート端末400をユーザインタフェースデバイスとして用いつつ行わせるために、仮想POSサーバ2とユーザ端末300又はカート端末400とを仲介するための情報処理である。
通信サーバ4は、店舗サーバ1、仮想POSサーバ2、モバイルコントローラ3及び会計機5が、通信ネットワーク700を介して中継サーバ200等とデータを授受するための通信処理を行う。
The mobile controller 3 is an information processing device that performs management processing and mediation processing. The management process is information processing for managing the above transaction process executed by the virtual POS server 2. The intermediary process is performed by connecting the virtual POS server 2 and the user terminal 300 or the cart terminal 400 in order to perform the above transaction process executed by the virtual POS server 2 while using the user terminal 300 or the cart terminal 400 as a user interface device. This is information processing for mediation.
The communication server 4 performs communication processing for the store server 1 , virtual POS server 2 , mobile controller 3 , and accounting machine 5 to exchange data with the relay server 200 and the like via the communication network 700 .

会計機5は、仮想POSサーバ2で管理されている取引毎の購入商品に関する代金を求めて、当該代金を客に決済させるための処理を行う。会計機5が上記の決済のために利用可能とする決済方法は、現金決済、クレジットカード決済、電子マネー決済、ポイント決済、コード決済(モバイル決済又はスマートフォン決済等とも称される)等、周知の決済方法の全て又は任意の一部であってよい。会計機5は、店員及び客のいずれにより操作されるのであってもよい。会計機5としては例えば、既存のセミセルフ方式のPOSシステムで用いられるセルフ方式の会計機を用いることができる。会計機5は、商品を購入商品として登録するための情報処理を行う機能を有していてもよい。この場合に会計機5としては例えば、既存のPOSシステムで用いられる対面式のPOS端末又は既存のセルフ方式のPOSシステムで用いられるセルフ式のPOS端末を用いることができる。 The accounting machine 5 performs processing for obtaining the payment for purchased products for each transaction managed by the virtual POS server 2 and having the customer settle the payment. Payment methods that can be used by the accounting machine 5 for the above-mentioned payments include well-known payment methods such as cash payment, credit card payment, electronic money payment, point payment, and code payment (also referred to as mobile payment or smartphone payment, etc.). It may be all or any part of the payment method. The checkout machine 5 may be operated by either a clerk or a customer. As the accounting machine 5, for example, a self-service accounting machine used in an existing semi-self-operated POS system can be used. The accounting machine 5 may have a function of performing information processing for registering a product as a purchased product. In this case, as the accounting machine 5, for example, a face-to-face POS terminal used in an existing POS system or a self-type POS terminal used in an existing self-type POS system can be used.

アクセスポイント6は、ユーザ端末300及びカート端末400が無線通信により店内通信ネットワーク7へとアクセスすることを可能とするための通信処理を行う。アクセスポイント6としては例えば、IEEE802.11規格により無線通信を行う周知の通信デバイスを用いることができる。アクセスポイント6は、店舗の売場のどこからでもユーザ端末300及びカート端末400が無線通信可能なように、店舗内に設置される。店舗規模によっては、複数のアクセスポイント6が、1つの店舗システム100に配置される場合もある。
店内通信ネットワーク7としては、インターネット、VPN、LAN、公衆通信網、移動体通信網などを、単独又は適宜に組み合わせて用いることができる。ただし典型的には、店内通信ネットワーク7は、LANである。
The access point 6 performs communication processing to enable the user terminal 300 and the cart terminal 400 to access the in-store communication network 7 by wireless communication. As the access point 6, for example, a well-known communication device that performs wireless communication according to the IEEE802.11 standard can be used. The access point 6 is installed in the store so that the user terminal 300 and the cart terminal 400 can communicate wirelessly from anywhere on the sales floor of the store. Depending on the size of the store, multiple access points 6 may be arranged in one store system 100.
As the in-store communication network 7, the Internet, VPN, LAN, public communication network, mobile communication network, etc. can be used alone or in an appropriate combination. However, typically the in-store communication network 7 is a LAN.

店舗システム100が設けられた店舗には、その入口付近にチェックイン用の2次元コードTC1が掲示され、その出口付近にチェックアウト用の2次元コードTC2が掲示される。2次元コードTC1は、チェックインのためのチェックインデータを表す。2次元コードTC2は、チェックアウトのためのチェックアウトデータを表す。チェックインデータ及びチェックアウトデータは店舗毎に異なる。このため、店舗A用の2次元コードTC1,TC2と店舗B用の2次元コードTC1,TC2とを区別する必要がある場合には、店舗A用を2次元コードTC1A,TC2Aと表し、店舗B用を2次元コードTC1B,TC2Bと表す。 In a store where the store system 100 is installed, a two-dimensional code TC1 for check-in is posted near the entrance, and a two-dimensional code TC2 for check-out is posted near the exit. The two-dimensional code TC1 represents check-in data for check-in. Two-dimensional code TC2 represents checkout data for checkout. Check-in data and check-out data differ from store to store. Therefore, if it is necessary to distinguish between the two-dimensional codes TC1 and TC2 for store A and the two-dimensional codes TC1 and TC2 for store B, store A is expressed as two-dimensional codes TC1A and TC2A, and store B is expressed as two-dimensional codes TC1A and TC2A. The usage is expressed as two-dimensional codes TC1B and TC2B.

チェックインデータは例えば、以下に示すような情報を表す。
(1) 店舗システム100の動作バージョン。例えば、2次元コードTC1Aが表すチェックインデータは、店舗システム100Aの動作バージョンを表す。2次元コードTC1Bが表すチェックインデータは、店舗システム100Bの動作バージョンを表す。
(2) 店舗システム100が設けられる店舗を運営する事業者を識別するための事業者コード。例えば2次元コードTC1Aが表すチェックインデータは、店舗Aを運営する事業者に割り当てられた事業者コードを表す。2次元コードTC1Bが表すチェックインデータは、店舗Bを運営する事業者に割り当てられた事業者コードを表す。
(3) 店舗システム100が設けられる店舗を識別するための店舗コード。例えば2次元コードTC1Aが表すチェックインデータは、店舗Aに割り当てられた店舗コードを表す。2次元コードTC1Bが表すチェックインデータは、店舗Bに割り当てられた店舗コードを表す。なお店舗コードは、取引処理システムを利用する全ての店舗の個々を識別可能なものであってもよいし、同じ事業者により運営される複数の店舗の個々を識別可能なものであってもよい。
The check-in data represents, for example, information as shown below.
(1) Operation version of store system 100. For example, the check-in data represented by the two-dimensional code TC1A represents the operating version of the store system 100A. The check-in data represented by the two-dimensional code TC1B represents the operational version of the store system 100B.
(2) A business code for identifying the business operator that operates the store where the store system 100 is installed. For example, the check-in data represented by the two-dimensional code TC1A represents a business code assigned to the business operator that operates store A. The check-in data represented by the two-dimensional code TC1B represents a business code assigned to the business operator that operates store B.
(3) A store code for identifying the store where the store system 100 is installed. For example, the check-in data represented by the two-dimensional code TC1A represents the store code assigned to store A. The check-in data represented by the two-dimensional code TC1B represents the store code assigned to store B. The store code may be one that can identify all the stores that use the transaction processing system, or it can be one that can identify each of multiple stores operated by the same business operator. .

(4) 店舗システム100が設けられる店舗を運営する事業者の名称。例えば2次元コードTC1Aが表すチェックインデータは、店舗Aを運営する事業者の名称を表す。2次元コードTC1Bが表すチェックインデータは、店舗Bを運営する事業者の名称を表す。 (5) 店舗システム100が設けられる店舗の名称。例えば2次元コードTC1Aが表すチェックインデータは、店舗Aの名称を表す。2次元コードTC1Bが表すチェックインデータは、店舗Bの名称を表す。
(6) 2次元コードTC1と2次元コードTC2とを区別するためのフラグ。チェックインデータにおける当該フラグは、チェックインデータであることを表す状態とされる。当該状態は、例えば“1”である。当該フラグは、全ての2次元コードTC1で共通である。
(4) Name of the business operator that operates the store where the store system 100 is installed. For example, the check-in data represented by the two-dimensional code TC1A represents the name of the business operator that operates store A. The check-in data represented by the two-dimensional code TC1B represents the name of the business operator that operates store B. (5) Name of the store where the store system 100 is installed. For example, the check-in data represented by the two-dimensional code TC1A represents the name of store A. The check-in data represented by the two-dimensional code TC1B represents the name of store B.
(6) Flag for distinguishing between two-dimensional code TC1 and two-dimensional code TC2. The flag in the check-in data is in a state indicating that it is check-in data. The state is, for example, "1". The flag is common to all two-dimensional codes TC1.

(7) 通信サーバ4のIPアドレス。例えば2次元コードTC1Aが表すチェックインデータは、店舗システム100Aに含まれる通信サーバ4のIPアドレスを表す。2次元コードTC1Bが表すチェックインデータは、店舗システム100Bに含まれる通信サーバ4のIPアドレスを表す。
(8) 中継サーバ200のドメイン名。当該ドメイン名は、全ての2次元コードTC1で共通である。ただし、ドメイン名が互いに異なる複数の中継サーバ200が、店舗毎に使い分けられてもよい。そしてこの場合には、2次元コードTC1が表すチェックインデータは、対応する店舗で使用される中継サーバ200のドメイン名が表される。
(9) 電子レシートサーバ600のアドレス。当該アドレスは、全ての2次元コードTC1で共通であってもよいし、複数のアドレスのいずれかが2次元コードTC1毎に表されていてもよい。
(7) IP address of communication server 4. For example, the check-in data represented by the two-dimensional code TC1A represents the IP address of the communication server 4 included in the store system 100A. The check-in data represented by the two-dimensional code TC1B represents the IP address of the communication server 4 included in the store system 100B.
(8) Domain name of relay server 200. The domain name is common to all two-dimensional codes TC1. However, a plurality of relay servers 200 with different domain names may be used for each store. In this case, the check-in data represented by the two-dimensional code TC1 represents the domain name of the relay server 200 used at the corresponding store.
(9) Address of electronic receipt server 600. The address may be common to all two-dimensional codes TC1, or one of a plurality of addresses may be expressed for each two-dimensional code TC1.

(10) 店舗システム100とのデータ授受のためにユーザ端末300が、アクセスポイント6との無線通信及び通信ネットワーク700との無線通信とのいずれを利用すべきかを示すフラグ。例えば、店舗Aにおいては、店舗システム100Aとユーザ端末300とのデータ授受にアクセスポイント6との無線通信を利用するのであれば、当該フラグは例えば“1”とされる。例えば、店舗Bにおいては、店舗システム100Bとユーザ端末300とのデータ授受に通信ネットワーク700との無線通信を利用するのであれば、当該フラグは例えば“0”とされる。
(11) アクセスポイント6を識別するためのSSID(service set identifier)。例えば2次元コードTC1Aが表すチェックインデータは、店舗システム100Aに含まれるアクセスポイント6を識別するSSIDを表す。2次元コードTC1Bが表すチェックインデータは、店舗システム100Bに含まれるアクセスポイント6のSSIDを表す。
(12) アクセスポイント6にアクセスするためのパスワード。例えば2次元コードTC1Aが表すチェックインデータは、店舗システム100Aに含まれるアクセスポイント6に設定されているパスワードを表す。2次元コードTC1Bが表すチェックインデータは、店舗システム100Bに含まれるアクセスポイント6に設定されているパスワードを表す。
(10) A flag indicating whether the user terminal 300 should use wireless communication with the access point 6 or wireless communication with the communication network 700 to exchange data with the store system 100. For example, in store A, if wireless communication with access point 6 is used to exchange data between store system 100A and user terminal 300, the flag is set to "1", for example. For example, in store B, if wireless communication with communication network 700 is used to exchange data between store system 100B and user terminal 300, the flag is set to "0", for example.
(11) SSID (service set identifier) for identifying the access point 6. For example, the check-in data represented by the two-dimensional code TC1A represents the SSID that identifies the access point 6 included in the store system 100A. The check-in data represented by the two-dimensional code TC1B represents the SSID of the access point 6 included in the store system 100B.
(12) Password for accessing access point 6. For example, the check-in data represented by the two-dimensional code TC1A represents the password set in the access point 6 included in the store system 100A. The check-in data represented by the two-dimensional code TC1B represents the password set in the access point 6 included in the store system 100B.

(13) アクセスポイント6が利用するセキュリティ方式の識別番号。当該識別番号は例えば、WPA2-PSK方式には“1”が、WPA-PSK方式には“2”が、そしてWEP方式には“3”が割り付けられる。例えば、店舗システム100Aに含まれるアクセスポイント6がセキュリティ方式としてWPA2-PSK方式を利用するならば、2次元コードTC1Aが表すチェックインデータは当該識別番号として“1”を表す。また例えば、店舗システム100Bに含まれるアクセスポイント6がセキュリティ方式としてWPA-PSK方式を利用するならば、2次元コードTC1Bが表すチェックインデータは当該識別番号として“2”を表す。
(14) ユーザ端末300が中継サーバ200との接続に失敗したときにエラーとするか、エラーとすることなく運用を続けるかを識別するためのフラグ。例えば、店舗Aにおいては、ユーザ端末300が中継サーバ200との接続に失敗したときにエラーとする設定であるならば、2次元コードTC1Aが表すチェックインデータは当該フラグとして例えば“1”を表す。また例えば、店舗Bにおいては、ユーザ端末300が中継サーバ200との接続に失敗しても運用を続ける設定であるならば、2次元コードTC1Bが表すチェックインデータは当該フラグとして例えば“0”を表す。
(13) Identification number of the security method used by the access point 6. For example, the identification number is assigned "1" to the WPA2-PSK method, "2" to the WPA-PSK method, and "3" to the WEP method. For example, if the access point 6 included in the store system 100A uses the WPA2-PSK method as a security method, the check-in data represented by the two-dimensional code TC1A represents "1" as the identification number. For example, if the access point 6 included in the store system 100B uses the WPA-PSK method as a security method, the check-in data represented by the two-dimensional code TC1B represents "2" as the identification number.
(14) A flag for identifying whether to cause an error when the user terminal 300 fails to connect to the relay server 200 or to continue operation without causing an error. For example, in store A, if the setting is such that an error occurs when the user terminal 300 fails to connect to the relay server 200, the check-in data represented by the two-dimensional code TC1A will represent "1" as the flag. . For example, in store B, if the user terminal 300 is set to continue operating even if the connection with the relay server 200 fails, the check-in data represented by the two-dimensional code TC1B will have "0" as the flag, for example. represent.

(15) ユーザ端末300のステータスに関する送信モードの識別番号。当該送信モードには、例えば第1モード、第2モード及び第3モードがある。当該送信モードの識別番号は例えば、第1モードには“1”が、第2モードには“2”が、第3モードには“3”が割り付けられる。第1モードでは、ユーザ端末300のステータスを中継サーバ200に送信する。第2モードでは、ユーザ端末300のステータスを店舗システム100に送信する。第2モードでは、ユーザ端末300のステータスを送信しない。例えば、店舗Aにおいては、送信モードとして第1モードを適用するのであれば、2次元コードTC1Aが表すチェックインデータは当該識別番号として“1”を表す。また例えば、店舗Bにおいては、送信モードとして第2モードを適用するのであれば、2次元コードTC1Bが表すチェックインデータは当該識別番号として“2”を表す。 (15) Transmission mode identification number regarding the status of the user terminal 300. The transmission modes include, for example, a first mode, a second mode, and a third mode. As for the identification numbers of the transmission modes, for example, "1" is assigned to the first mode, "2" is assigned to the second mode, and "3" is assigned to the third mode. In the first mode, the status of user terminal 300 is transmitted to relay server 200. In the second mode, the status of the user terminal 300 is transmitted to the store system 100. In the second mode, the status of the user terminal 300 is not transmitted. For example, in store A, if the first mode is applied as the transmission mode, the check-in data represented by the two-dimensional code TC1A represents "1" as the identification number. For example, in store B, if the second mode is applied as the transmission mode, the check-in data represented by the two-dimensional code TC1B represents "2" as the identification number.

(16) ユーザ端末300のログデータを蓄積したログファイルに関する送信モードの識別番号。当該送信モードには、例えば第1モード、第2モード、第3モード及び第4モードがある。当該送信モードの識別番号は例えば、第1モードには“1”が、第2モードには“2”が、第3モードには“3”が、第4モードには“4”が割り付けられる。第1モードでは、ログファイルを中継サーバ200にのみ送信する。第2モードでは、ログファイルを店舗システム100にのみ送信する。第3モードでは、ログファイルを店舗システム100及び中継サーバ200の双方に送信する。第4モードでは、ログファイルを送信しない。例えば、店舗Aにおいては、送信モードとして第1モードを適用するのであれば、2次元コードTC1Aが表すチェックインデータは当該識別番号として“1”を表す。また例えば、店舗Bにおいては、送信モードとして第2モードを適用するのであれば、2次元コードTC1Bが表すチェックインデータは当該識別番号として“2”を表す。 (16) Identification number of the transmission mode regarding the log file in which log data of the user terminal 300 is accumulated. The transmission modes include, for example, a first mode, a second mode, a third mode, and a fourth mode. For example, the identification number of the transmission mode is assigned "1" to the first mode, "2" to the second mode, "3" to the third mode, and "4" to the fourth mode. . In the first mode, the log file is sent only to the relay server 200. In the second mode, the log file is sent only to the store system 100. In the third mode, the log file is sent to both store system 100 and relay server 200. In the fourth mode, no log file is sent. For example, in store A, if the first mode is applied as the transmission mode, the check-in data represented by the two-dimensional code TC1A represents "1" as the identification number. For example, in store B, if the second mode is applied as the transmission mode, the check-in data represented by the two-dimensional code TC1B represents "2" as the identification number.

(17) ログファイルを、通信ネットワーク700を介して中継サーバ200へとFTP(file transfer protocol)により送信する際に使用するホスト名又はIPアドレス。
(18) ログファイルを、通信ネットワーク700を介して中継サーバ200へとFTPにより送信する際に使用するユーザ名。
(19) ログファイルを、通信ネットワーク700を介して中継サーバ200へとFTPにより送信する際に使用するパスワード。
(20) 通信ネットワーク700を介して中継サーバ200へとFTPにより送信するログファイルのパス名。
(17) A host name or IP address used when transmitting the log file to the relay server 200 via the communication network 700 using FTP (file transfer protocol).
(18) User name used when transmitting the log file via FTP to the relay server 200 via the communication network 700.
(19) Password used when transmitting the log file via FTP to the relay server 200 via the communication network 700.
(20) Path name of the log file sent via FTP to the relay server 200 via the communication network 700.

(21) 商品コードの一種であるUPC(universal product cord)のチェックデジットを削除するか否かを識別するためのフラグ。例えば、店舗Aにおいては、当該のチェックデジットを削除しない運用であるならば、2次元コードTC1Aが表すチェックインデータは当該フラグとして例えば“1”を表す。また例えば、店舗Bにおいては、当該のチェックデジットを削除する運用であるならば、2次元コードTC1Bが表すチェックインデータは当該フラグとして例えば“0”を表す。
(22) ユーザ端末300においてカメラ画面を自動遷移させるまでの時間。2次元コードTC1Aが表すチェックインデータは当該時間として、店舗Aに関して予め設定された時間を表す。2次元コードTC1Bが表すチェックインデータは当該時間として、店舗Bに関して予め設定された時間を表す。
(23) ユーザ端末300がアクセスポイント6を介して店舗システム100と通信を行う際のタイムアウト時間。2次元コードTC1Aが表すチェックインデータは当該時間として、店舗Aに関して予め設定された時間を表す。2次元コードTC1Bが表すチェックインデータは当該時間として、店舗Bに関して予め設定された時間を表す。
(21) A flag for identifying whether or not to delete the check digit of UPC (universal product cord), which is a type of product code. For example, in store A, if the check digit is not deleted, the check-in data represented by the two-dimensional code TC1A will represent, for example, "1" as the flag. For example, if the store B operates to delete the check digit, the check-in data represented by the two-dimensional code TC1B will represent, for example, "0" as the flag.
(22) Time until the camera screen automatically changes on the user terminal 300. The check-in data represented by the two-dimensional code TC1A represents a time preset for store A as the time. The check-in data represented by the two-dimensional code TC1B represents a time preset for store B as the time.
(23) Timeout period when user terminal 300 communicates with store system 100 via access point 6. The check-in data represented by the two-dimensional code TC1A represents a time preset for store A as the time. The check-in data represented by the two-dimensional code TC1B represents a time preset for store B as the time.

(24) ユーザ端末300と店舗システム100とのアクセスポイント6を介した通信がタイムアウトした場合にリトライを許容する回数。2次元コードTC1Aが表すチェックインデータは当該回数として、店舗Aに関して予め設定された回数を表す。2次元コードTC1Bが表すチェックインデータは当該時間として、店舗Bに関して予め設定された回数を表す。
(25) ユーザ端末300が中継サーバ200を介して店舗システム100と通信を行う際のタイムアウト時間。2次元コードTC1Aが表すチェックインデータは当該時間として、店舗Aに関して予め設定された時間を表す。2次元コードTC1Bが表すチェックインデータは当該時間として、店舗Bに関して予め設定された時間を表す。
(26) ユーザ端末300と店舗システム100との中継サーバ200を介した通信がタイムアウトした場合にリトライを許容する回数。2次元コードTC1Aが表すチェックインデータは当該回数として、店舗Aに関して予め設定された回数を表す。2次元コードTC1Bが表すチェックインデータは当該時間として、店舗Bに関して予め設定された回数を表す。
(24) Number of allowed retries when communication between the user terminal 300 and the store system 100 via the access point 6 times out. The check-in data represented by the two-dimensional code TC1A represents the number of times set in advance for store A as the number of times. The check-in data represented by the two-dimensional code TC1B represents the number of times set in advance for store B as the time.
(25) Timeout period when user terminal 300 communicates with store system 100 via relay server 200. The check-in data represented by the two-dimensional code TC1A represents a time preset for store A as the time. The check-in data represented by the two-dimensional code TC1B represents a time preset for store B as the time.
(26) Number of allowed retries when communication between user terminal 300 and store system 100 via relay server 200 times out. The check-in data represented by the two-dimensional code TC1A represents the number of times set in advance for store A as the number of times. The check-in data represented by the two-dimensional code TC1B represents the number of times set in advance for store B as the time.

(27) 店員による確認が必要な商品を対象とした取引に関する確認終了の宣言を認証するための認証処理で用いる認証データ。2次元コードTC1Aが表すチェックインデータは、店舗Aに関して予め設定された認証データを表す。2次元コードTC1Bが表すチェックインデータは、店舗Bに関して予め設定された認証データを表す。認証データは、店舗毎で異なるように定められることが好ましいが、異なる店舗で同じ認証データが設定されても構わない。
(28) 店舗システム100の動作モードを識別するためのデータ。例えば、店舗システム100Aが、取引処理システムを通常に運用する通常モードに設定されているならば、2次元コードTC1Aが表すチェックインデータは当該データとして例えば“1”を表す。また例えば、店舗システム100Bが、取引処理システムをデモ運用するデモモードに設定されているならば、2次元コードTC1Bが表すチェックインデータは当該データとして例えば“2”を表す。
(29) 会計機5へのデータ転送のモードを識別するためのデータ。例えば、店舗システム100Aが、会計機5からモバイルコントローラ3にデータ転送を要求するモードに設定されているならば、2次元コードTC1Aが表すチェックインデータは当該データとして例えば“1”を表す。また例えば、店舗システム100Bが、会計機5からの要求無しにモバイルコントローラ3から会計機5へとデータ転送するモードに設定されているならば、2次元コードTC1Bが表すチェックインデータは当該データとして例えば“2”を表す。
(27) Authentication data used in authentication processing to authenticate a declaration of completion of confirmation regarding transactions involving products that require confirmation by a store clerk. The check-in data represented by the two-dimensional code TC1A represents authentication data set in advance for store A. The check-in data represented by the two-dimensional code TC1B represents authentication data set in advance for store B. It is preferable that the authentication data be set differently for each store, but the same authentication data may be set for different stores.
(28) Data for identifying the operation mode of the store system 100. For example, if the store system 100A is set to the normal mode in which the transaction processing system is normally operated, the check-in data represented by the two-dimensional code TC1A represents, for example, "1". Further, for example, if the store system 100B is set to a demo mode in which the transaction processing system is operated as a demonstration, the check-in data represented by the two-dimensional code TC1B represents "2", for example.
(29) Data for identifying the mode of data transfer to the accounting machine 5. For example, if the store system 100A is set to a mode that requests data transfer from the checkout machine 5 to the mobile controller 3, the check-in data represented by the two-dimensional code TC1A represents "1", for example. For example, if the store system 100B is set to a mode in which data is transferred from the mobile controller 3 to the checkout machine 5 without a request from the checkout machine 5, the check-in data represented by the two-dimensional code TC1B is For example, it represents "2".

(30) ユーザ端末300での操作によるコード決済方式での決済を許容するか否かを表すフラグ。例えば、店舗Aでは当該のコード決済を許容されるならば、2次元コードTC1Aが表すチェックインデータは当該フラグとして例えば“1”を表す。また例えば、店舗Bでは当該のコード決済が許容されないならば、2次元コードTC1Bが表すチェックインデータは当該フラグとして例えば“0”を表す。
(31) 購入者の年齢制限が定められている年齢制限商品のユーザ端末300での登録を許容するか否かを識別するためのフラグ。例えば、店舗Aでは年齢制限商品のユーザ端末300での登録が許容されるならば、2次元コードTC1Aが表すチェックインデータは当該フラグとして例えば“1”を表す。また例えば、店舗Bでは当該のコード決済が許容されないならば、2次元コードTC1Bが表すチェックインデータは当該フラグとして例えば“0”を表す。
(32) ポイント会員の会員コードの入力モードを識別するためのデータ。例えば、店舗システム100Aが、会員コードを手入力するモードに設定されているならば、2次元コードTC1Aが表すチェックインデータは当該データとして例えば“1”を表す。また例えば、店舗システム100Bが、バーコードの読み取りにより会員コードを入力するモードに設定されているならば、2次元コードTC1Bが表すチェックインデータは当該データとして例えば“2”を表す。
(30) A flag indicating whether or not payment using the code payment method by operation on the user terminal 300 is permitted. For example, if the code payment is allowed at store A, the check-in data represented by the two-dimensional code TC1A represents "1" as the flag. Further, for example, if store B does not allow the code payment, the check-in data represented by the two-dimensional code TC1B represents, for example, "0" as the flag.
(31) A flag for identifying whether or not registration of an age-restricted product for which purchaser age restrictions are specified on the user terminal 300 is permitted. For example, if store A allows registration of age-restricted products on the user terminal 300, the check-in data represented by the two-dimensional code TC1A represents "1" as the flag. Further, for example, if store B does not allow the code payment, the check-in data represented by the two-dimensional code TC1B represents, for example, "0" as the flag.
(32) Data for identifying the input mode of a point member's membership code. For example, if the store system 100A is set to a mode in which the membership code is manually input, the check-in data represented by the two-dimensional code TC1A represents, for example, "1". For example, if the store system 100B is set to a mode in which a membership code is input by reading a barcode, the check-in data represented by the two-dimensional code TC1B represents, for example, "2".

(33) ポイント会員の会員コードを手入力するモードが設定されている場合に、会員コードの入力に際して店員の確認を必要とするか否かを識別するためのフラグ。例えば、店舗Aにて当該確認を必要とするならば、2次元コードTC1Aが表すチェックインデータは当該フラグとして例えば“1”を表す。また例えば、店舗Bにて当該確認を不要とするならば、2次元コードTC1Bが表すチェックインデータは当該フラグとして例えば“0”を表す。
(34) チェックイン時にユーザ端末300のバッテリ残量のチェックをするための閾値。当該閾値は、店舗毎又は事業者毎に設定される。例えば店舗Aを運営する事業者が当該閾値を「20%」と定めている場合は、2次元コードTC1Aが表すチェックインデータは当該閾値として例えば“20”を表す。また例えば店舗Bが当該閾値を「25%」と定めている場合は、2次元コードTC1Bが表すチェックインデータは当該閾値として例えば“25”を表す。
以上が、チェックインデータが表す情報の例である。ただし、チェックインデータは、以上に示した各種の情報のうちの一部を含まなくてもよい。またチェックインデータは、以上に示した各種の情報とは別の情報を表してもよい。
(33) A flag for identifying whether or not confirmation from a store clerk is required when entering a member code when the mode for manually entering the member code of a point member is set. For example, if store A requires the confirmation, the check-in data represented by the two-dimensional code TC1A represents "1" as the flag, for example. For example, if store B does not require this confirmation, the check-in data represented by the two-dimensional code TC1B will represent, for example, "0" as the flag.
(34) Threshold value for checking the remaining battery level of the user terminal 300 at check-in. The threshold value is set for each store or business operator. For example, if the business operator of store A defines the threshold value as "20%," the check-in data represented by the two-dimensional code TC1A represents, for example, "20" as the threshold value. Further, for example, if store B defines the threshold value as "25%", the check-in data represented by the two-dimensional code TC1B represents, for example, "25" as the threshold value.
The above are examples of information represented by check-in data. However, the check-in data does not need to include some of the various types of information shown above. Further, the check-in data may represent information different from the various information shown above.

図2は店舗サーバ1の要部回路構成を示すブロック図である。
店舗サーバ1は、プロセッサ11、メインメモリ12、補助記憶ユニット13、通信インタフェース14及び伝送路15を含む。プロセッサ11、メインメモリ12、補助記憶ユニット13及び通信インタフェース14は、伝送路15を介して通信可能とされている。そして、プロセッサ11、メインメモリ12及び補助記憶ユニット13が伝送路15により接続されていることによって、店舗サーバ1を制御するためのコンピュータが構成される。
FIG. 2 is a block diagram showing the main circuit configuration of the store server 1.
The store server 1 includes a processor 11 , a main memory 12 , an auxiliary storage unit 13 , a communication interface 14 , and a transmission line 15 . The processor 11, main memory 12, auxiliary storage unit 13, and communication interface 14 are capable of communicating via a transmission path 15. A computer for controlling the store server 1 is configured by connecting the processor 11, main memory 12, and auxiliary storage unit 13 through a transmission path 15.

プロセッサ11は、上記コンピュータの中枢部分に相当する。プロセッサ11は、オペレーティングシステム及びアプリケーションプログラム等の情報処理プログラムに従って、店舗サーバ1としての各種の機能を実現するための情報処理を実行する。プロセッサ11は、例えばCPU(central processing unit)である。 The processor 11 corresponds to the central part of the computer. The processor 11 executes information processing to realize various functions of the store server 1 according to information processing programs such as an operating system and application programs. The processor 11 is, for example, a CPU (central processing unit).

メインメモリ12は、上記コンピュータの主記憶部分に相当する。メインメモリ12は、不揮発性のメモリ領域と揮発性のメモリ領域とを含む。メインメモリ12は、不揮発性のメモリ領域では上記の情報処理プログラムを記憶する。メインメモリ12は、プロセッサ11が情報処理を実行する上で必要なデータを不揮発性又は揮発性のメモリ領域で記憶する場合もある。メインメモリ12は、揮発性のメモリ領域を、プロセッサ11によってデータが適宜書き換えられるワークエリアとして使用する。不揮発性のメモリ領域は、例えばROM(read only memory)である。揮発性のメモリ領域は、例えばRAM(random access memory)である。 The main memory 12 corresponds to the main memory portion of the computer. Main memory 12 includes a nonvolatile memory area and a volatile memory area. The main memory 12 stores the above information processing program in a nonvolatile memory area. The main memory 12 may store data necessary for the processor 11 to perform information processing in a nonvolatile or volatile memory area. The main memory 12 uses a volatile memory area as a work area in which data is appropriately rewritten by the processor 11. The nonvolatile memory area is, for example, ROM (read only memory). The volatile memory area is, for example, RAM (random access memory).

補助記憶ユニット13は、上記コンピュータの補助記憶部分に相当する。補助記憶ユニット13としては、例えばEEPROM(electric erasable programmable read-only memory)、HDD(hard disc drive)、あるいはSSD(solid state drive)等の周知の記憶デバイスを用いた記憶ユニットを利用できる。補助記憶ユニット13は、プロセッサ11が各種の処理を行う上で使用するデータ、あるいはプロセッサ11での処理によって作成されたデータ等を保存する。補助記憶ユニット13は、上記の情報処理プログラムを記憶する場合もある。 The auxiliary storage unit 13 corresponds to the auxiliary storage portion of the computer. As the auxiliary storage unit 13, a storage unit using a well-known storage device such as an EEPROM (electric erasable programmable read-only memory), an HDD (hard disc drive), or an SSD (solid state drive) can be used. The auxiliary storage unit 13 stores data used by the processor 11 in performing various processes, data created by processing by the processor 11, and the like. The auxiliary storage unit 13 may also store the above information processing program.

通信インタフェース14は、店内通信ネットワーク7に接続された各部との間で所定の通信プロトコルに従いデータ通信を行う。通信インタフェース14としては、例えばLAN用の周知の通信デバイスを適用できる。
伝送路15は、アドレスバス、データバス及び制御信号線等を含み、接続された各部の間で授受されるデータ及び制御信号を伝送する。
The communication interface 14 performs data communication with each section connected to the in-store communication network 7 according to a predetermined communication protocol. As the communication interface 14, for example, a well-known communication device for LAN can be applied.
The transmission line 15 includes an address bus, a data bus, a control signal line, etc., and transmits data and control signals exchanged between the connected parts.

補助記憶ユニット13は、情報処理プログラムの1つである店舗管理アプリAP11を記憶する。店舗管理アプリAP11は、アプリケーションプログラムであり、店舗サーバ1としての機能を実現するための情報処理について記述されている。店舗管理アプリAP11は、店舗毎、あるいは店舗を運営する事業者毎の店舗運営方針に適応して作成された別々のものであってよい。例えば、店舗Aと店舗Bとで売上データの管理方法が異なるならば、店舗システム100Aで用いられる店舗管理アプリAP11は、店舗Aでの売上データの管理方法に適応した売上データの管理のための情報処理について記述され、店舗システム100Bで用いられる店舗管理アプリAP11は、店舗Bでの売上データの管理方法に適応した売上データの管理のための情報処理について記述される。 The auxiliary storage unit 13 stores a store management application AP11, which is one of the information processing programs. The store management application AP11 is an application program, and information processing for realizing the functions of the store server 1 is described. The store management application AP11 may be a separate application created in accordance with the store management policy of each store or each business operator that operates the store. For example, if store A and store B have different sales data management methods, the store management application AP11 used in store system 100A may be configured to manage sales data that is adapted to the sales data management method at store A. Store management application AP11, which describes information processing and is used in store system 100B, describes information processing for managing sales data that is adapted to the method of managing sales data at store B.

補助記憶ユニット13の記憶領域の一部は、データベース群DB11として使用される。データベース群DB11は、各種の情報管理のための複数のデータベースを含む。データベース群DB11に含まれるデータベースの1つは、店舗で販売する商品を管理するための商品データベースである。商品データベースは、管理の対象となる商品に関連付けられたデータレコードの集合である。商品データベースのデータレコードには、商品コード、価格及び商品名等の、関連付けられた商品に関するデータが含まれる。商品コードは、商品をSKU(stock keeping unit)毎に識別するために定められた識別コードであり、例えばJAN(Japanese article number)コードが用いられる。商品名は、商品を人間が区別し易いように定められた名称である。価格は、商品の販売の対価となる金額である。 A part of the storage area of the auxiliary storage unit 13 is used as the database group DB11. The database group DB11 includes a plurality of databases for managing various information. One of the databases included in the database group DB11 is a product database for managing products sold at the store. The product database is a collection of data records associated with products to be managed. Data records in the product database include data regarding associated products, such as product code, price, and product name. The product code is an identification code determined to identify products for each SKU (stock keeping unit), and for example, a JAN (Japanese article number) code is used. A product name is a name determined to make it easy for humans to distinguish between products. The price is the amount of money that is considered for the sale of the product.

データベース群DB11に含まれるデータベースの1つは、店舗の利用者を管理するための利用者データベースである。利用者データベースは、店舗の利用者として登録された客に関連付けられたデータレコードの集合である。利用者データベースのデータレコードには、利用者コード及び利用者を特定するための属性情報等の、関連付けられた客に関するデータが含まれる。利用者コードは、店舗の利用者を個々に識別するために店舗の利用者毎に定められた一意の識別コードである。属性情報は、氏名、性別、年齢、住所、電話番号などを含み得る。また利用者データベースのデータレコードには、店舗の利用者が申告した決済情報を含む場合もある。決済情報は、クレジット番号又はコード決済ID(identifier)などである。また複数の決済方法を選択可能とする場合には、決済情報に決済方法を識別するための決済方法コードを含む場合もある。また利用者データベースのデータレコードには、ポイントサービスを提供する店舗の場合には、ポイントサービスの利用者を識別するための識別子(以下、ポイントIDと称する)及び保有ポイント数などを含む場合もある。また、利用者データベースのデータレコードには、電子レシートサービスの利用者を識別するための利用者識別子(以下、電子レシートIDと称する)を含む場合もある。利用者データベースのデータレコードに含まれる各種のデータは、全ての利用者について実質的なデータを含む必要はない。例えばポイントID又は電子レシートIDは、それを事前に利用者が登録申請したもののみを利用者データベースが含んでもよい。 One of the databases included in the database group DB11 is a user database for managing store users. A user database is a collection of data records associated with customers who are registered as users of a store. The data records of the user database include data regarding the associated customer, such as a user code and attribute information for identifying the user. The user code is a unique identification code determined for each store user to identify each store user. Attribute information may include name, gender, age, address, telephone number, etc. The data records of the user database may also include payment information declared by the store's users. The payment information is a credit number, a code payment ID (identifier), or the like. In addition, if a plurality of payment methods can be selected, the payment information may include a payment method code for identifying the payment method. In addition, in the case of a store that provides a point service, the data record of the user database may include an identifier for identifying the user of the point service (hereinafter referred to as point ID) and the number of points held. . Further, the data record of the user database may include a user identifier (hereinafter referred to as electronic receipt ID) for identifying the user of the electronic receipt service. The various data included in the data records of the user database do not need to include substantial data about all users. For example, the user database may include only point IDs or electronic receipt IDs for which the user has applied for registration in advance.

この他、データベース群DB11には、既存のPOSシステムにおけるPOSサーバで管理されるような様々なデータベースが含まれ得る。なお、データベース群DB11がどのようなデータベースと含むか、あるいはそれらデータベースがどのようなデータをどのような構造で含んでいるかは、店舗毎に定められてよい。 In addition, the database group DB11 may include various databases such as those managed by a POS server in an existing POS system. Note that what kind of databases the database group DB11 includes, or what kind of data and structure these databases include may be determined for each store.

図3は仮想POSサーバ2の要部回路構成を示すブロック図である。
仮想POSサーバ2は、プロセッサ21、メインメモリ22、補助記憶ユニット23、通信インタフェース24及び伝送路25を含む。プロセッサ21、メインメモリ22、補助記憶ユニット23及び通信インタフェース24は、伝送路25を介して通信可能とされている。そして、プロセッサ21、メインメモリ22及び補助記憶ユニット23が伝送路25により接続されていることによって、仮想POSサーバ2を制御するためのコンピュータが構成される。なお、プロセッサ21、メインメモリ22、補助記憶ユニット23、通信インタフェース24及び伝送路25の機能の概略は、プロセッサ11、メインメモリ12、補助記憶ユニット13、通信インタフェース14及び伝送路15と同等であるので、その説明は省略する。
FIG. 3 is a block diagram showing the main circuit configuration of the virtual POS server 2. As shown in FIG.
The virtual POS server 2 includes a processor 21, a main memory 22, an auxiliary storage unit 23, a communication interface 24, and a transmission path 25. The processor 21, main memory 22, auxiliary storage unit 23, and communication interface 24 are capable of communicating via a transmission path 25. A computer for controlling the virtual POS server 2 is configured by connecting the processor 21, main memory 22, and auxiliary storage unit 23 through a transmission path 25. Note that the functions of the processor 21, main memory 22, auxiliary storage unit 23, communication interface 24, and transmission line 25 are roughly equivalent to those of the processor 11, main memory 12, auxiliary storage unit 13, communication interface 14, and transmission line 15. Therefore, its explanation will be omitted.

ただし補助記憶ユニット23は、店舗管理アプリAP11に代えて仮想POSアプリAP21を記憶する。仮想POSアプリAP21は、アプリケーションプログラムであり、取引処理について記述されている。仮想POSアプリAP21は、店舗毎、あるいは店舗を運営する事業者毎の店舗運営方針に適応して作成された別々のものであってよい。例えば、店舗Aでは、店舗Bでは行われない割引サービスを行うのであるならば、店舗システム100Aで用いられる仮想POSアプリAP21は、当該割引サービスを実現するための情報処理について記述され、店舗システム100Bで用いられる仮想POSアプリAP21は、当該割引サービスを実現するための情報処理について記述されない。 However, the auxiliary storage unit 23 stores a virtual POS application AP21 instead of the store management application AP11. The virtual POS application AP21 is an application program and describes transaction processing. The virtual POS application AP21 may be a separate one created in accordance with the store management policy of each store or each business operator that operates the store. For example, if store A provides a discount service that is not provided in store B, the virtual POS application AP21 used in store system 100A is written with information processing to realize the discount service, and store system 100B The virtual POS application AP21 used in the present invention does not describe information processing for realizing the discount service.

また補助記憶ユニット23の記憶領域の一部は、データベース群DB11に代えて取引データベースDB21として使用される。取引データベースDB21は、店内で買い回り中である客との取引に関連付けられたデータレコードの集合である。取引データベースDB21のデータレコードには、取引コードと、購入商品として登録済みの商品に関する商品データとを含む。取引コードは、取引の個々を識別するために取引毎に設定された一意の識別コードである。商品データは、商品コード、商品名、価格及び個数などを表す。取引データベースDB21の構造は、店舗毎、あるいは店舗を運営する事業者毎の店舗運営方針に適応して個別に定められてよい。 Further, a part of the storage area of the auxiliary storage unit 23 is used as a transaction database DB21 instead of the database group DB11. The transaction database DB21 is a collection of data records associated with transactions with customers who are shopping around in the store. The data record of the transaction database DB21 includes a transaction code and product data regarding products registered as purchased products. The transaction code is a unique identification code set for each transaction to identify each transaction. The product data represents a product code, product name, price, quantity, etc. The structure of the transaction database DB21 may be individually determined in accordance with the store management policy of each store or each business operator that operates the store.

図4はモバイルコントローラ3の要部回路構成を示すブロック図である。
モバイルコントローラ3は、プロセッサ31、メインメモリ32、補助記憶ユニット33、通信インタフェース34及び伝送路35を含む。プロセッサ31、メインメモリ32、補助記憶ユニット33及び通信インタフェース34は、伝送路35を介して通信可能とされている。そして、プロセッサ31、メインメモリ32及び補助記憶ユニット33が伝送路35により接続されていることによって、モバイルコントローラ3を制御するためのコンピュータが構成される。なお、プロセッサ31、メインメモリ32、補助記憶ユニット33、通信インタフェース34及び伝送路35の機能の概略は、プロセッサ11、メインメモリ12、補助記憶ユニット13、通信インタフェース14及び伝送路15と同等であるので、その説明は省略する。
FIG. 4 is a block diagram showing the main circuit configuration of the mobile controller 3. As shown in FIG.
Mobile controller 3 includes a processor 31, a main memory 32, an auxiliary storage unit 33, a communication interface 34, and a transmission line 35. The processor 31, main memory 32, auxiliary storage unit 33, and communication interface 34 are capable of communicating via a transmission path 35. A computer for controlling the mobile controller 3 is configured by connecting the processor 31, main memory 32, and auxiliary storage unit 33 through a transmission path 35. Note that the functions of the processor 31, main memory 32, auxiliary storage unit 33, communication interface 34, and transmission line 35 are roughly equivalent to those of the processor 11, main memory 12, auxiliary storage unit 13, communication interface 14, and transmission line 15. Therefore, its explanation will be omitted.

ただし補助記憶ユニット33は、店舗管理アプリAP11に代えて取引管理アプリAP31を記憶する。取引管理アプリAP31は、アプリケーションプログラムであり、管理処理及び仲介処理について記述されている。取引管理アプリAP31は、各店舗システム100で共通である。ただし、取引管理アプリAP31に基づく情報処理のための各種の設定は、店舗システム100毎にカスタマイズされてもよい。 However, the auxiliary storage unit 33 stores a transaction management application AP31 instead of the store management application AP11. The transaction management application AP31 is an application program in which management processing and mediation processing are described. The transaction management application AP31 is common to each store system 100. However, various settings for information processing based on the transaction management application AP31 may be customized for each store system 100.

また補助記憶ユニット23の記憶領域の一部は、データベース群DB11に代えて取引管理データベースDB31及び登録データベースDB32として使用される。これら取引管理データベースDB31及び登録データベースDB32の構造は、各店舗システム100で共通である。 Further, a part of the storage area of the auxiliary storage unit 23 is used as a transaction management database DB31 and a registration database DB32 instead of the database group DB11. The structures of these transaction management database DB31 and registration database DB32 are common to each store system 100.

図5は取引管理データベースDB31に含まれるデータレコードDR1の主要なデータ構造を示す模式図である。
取引管理データベースDB31は、店内で客が利用するユーザ端末300又はカート端末400に関連付けられたデータレコードDR1の集合である。このため、店内に存在する客が1人であるときには、取引管理データベースDB31はデータレコードDR1を1つ含む。また店内に存在する客が1人も居ないときには、取引管理データベースDB31はデータレコードDR1を含まない。そしてデータレコードDR1は、フィールドF11,F12,F13,F14を含む。
FIG. 5 is a schematic diagram showing the main data structure of the data record DR1 included in the transaction management database DB31.
Transaction management database DB31 is a collection of data records DR1 associated with user terminals 300 or cart terminals 400 used by customers in the store. Therefore, when there is only one customer in the store, the transaction management database DB31 includes one data record DR1. Further, when there is no customer in the store, the transaction management database DB31 does not include the data record DR1. The data record DR1 includes fields F11, F12, F13, and F14.

フィールドF11には、関連付けられたユーザ端末300又はカート端末400を識別するための端末コードがセットされる。端末コードとしては例えば、ユーザ端末300又はカート端末400として利用される通信端末の個々を識別するために通信端末毎に設定された一意の識別コードを用いることができる。あるいは端末コードとしては例えば、後述するスマホPOSアプリ又はカート端末アプリをユーザ端末300又はカート端末400にインストールする際に当該スマホPOSアプリ又はカート端末アプリに対して設定される識別コードを用いることができる。フィールドF12には、関連付けられたユーザ端末300又はカート端末400を使用している客を他の客と識別するための会員コードがセットされる。フィールドF13には、関連付けられたユーザ端末300又はカート端末400を用いて行われる取引の取引コードがセットされる。フィールドF14には、電子レシートIDが必要に応じてセットされる。なお、データレコードDR1には、フィールドF11~F14とは別のデータがセットされる別のフィールドが含まれてもよい。 A terminal code for identifying the associated user terminal 300 or cart terminal 400 is set in the field F11. As the terminal code, for example, a unique identification code set for each communication terminal to identify each communication terminal used as the user terminal 300 or the cart terminal 400 can be used. Alternatively, as the terminal code, for example, an identification code that is set for the smartphone POS application or cart terminal application when the smartphone POS application or cart terminal application described below is installed on the user terminal 300 or the cart terminal 400 can be used. . A membership code for identifying a customer using the associated user terminal 300 or cart terminal 400 from other customers is set in the field F12. A transaction code of a transaction performed using the associated user terminal 300 or cart terminal 400 is set in the field F13. An electronic receipt ID is set in field F14 as necessary. Note that the data record DR1 may include another field in which data different from the fields F11 to F14 is set.

図6は登録データベースDB32に含まれるデータレコードDR2の主要なデータ構造を示す模式図である。
登録データベースDB32は、店内で買い回り中である客との取引に関連付けられたデータレコードDR2の集合である。そしてデータレコードDR2は、フィールドF21,F22を含む。データレコードDR1はまた、フィールドF23,F24,…を含み得る。
FIG. 6 is a schematic diagram showing the main data structure of the data record DR2 included in the registration database DB32.
The registration database DB32 is a collection of data records DR2 associated with transactions with customers who are shopping around in the store. Data record DR2 includes fields F21 and F22. Data record DR1 may also include fields F23, F24, .

フィールドF21には、関連付けられた取引の取引コードがセットされる。この取引コードは、関連付けられた取引で使用されているユーザ端末300に関連付けられたデータレコードDR1のフィールドF12にセットされた取引コードと同一である。フィールドF22には、関連付けられた取引に関して試みられた商品登録に関する登録データがセットされる。登録データについては、後述する。 The transaction code of the associated transaction is set in field F21. This transaction code is the same as the transaction code set in field F12 of data record DR1 associated with user terminal 300 used in the associated transaction. Field F22 is set with registration data regarding attempted product registration for the associated transaction. The registration data will be described later.

データレコードDR2には、関連付けられた取引に関して2つ以上の購入商品の登録が試みられている場合に、フィールドF23以降のフィールドが含まれる。そしてフィールドF23以降のフィールドにも、フィールドF12と同様な登録データがセットされる。 Data record DR2 includes fields after field F23 when registration of two or more purchased products is attempted for the associated transaction. The same registration data as field F12 is also set in the fields after field F23.

図7はユーザ端末300の要部回路構成を示すブロック図である。
ユーザ端末300は、プロセッサ301、メインメモリ302、補助記憶ユニット303、タッチパネル304、カメラ305、無線通信ユニット306、モバイル通信ユニット307及び伝送路308等を備える。プロセッサ301と、メインメモリ302、補助記憶ユニット303、タッチパネル304、カメラ305及びモバイル通信ユニット307とは、伝送路308を介して通信可能とされている。そして、プロセッサ301、メインメモリ302及び補助記憶ユニット303が伝送路308により接続されていることによって、ユーザ端末300を制御するためのコンピュータが構成される。なお、プロセッサ301、メインメモリ302、補助記憶ユニット303及び伝送路308の機能の概略は、プロセッサ11、メインメモリ12、補助記憶ユニット13及び伝送路15と同等であるので、その説明は省略する。
FIG. 7 is a block diagram showing the main circuit configuration of the user terminal 300.
The user terminal 300 includes a processor 301, a main memory 302, an auxiliary storage unit 303, a touch panel 304, a camera 305, a wireless communication unit 306, a mobile communication unit 307, a transmission path 308, and the like. The processor 301 , main memory 302 , auxiliary storage unit 303 , touch panel 304 , camera 305 , and mobile communication unit 307 are capable of communicating via a transmission path 308 . A computer for controlling the user terminal 300 is configured by connecting the processor 301, main memory 302, and auxiliary storage unit 303 through a transmission path 308. Note that the functions of the processor 301, main memory 302, auxiliary storage unit 303, and transmission path 308 are generally the same as those of the processor 11, main memory 12, auxiliary storage unit 13, and transmission path 15, and therefore the description thereof will be omitted.

タッチパネル304は、ユーザ端末300の入力デバイス及び表示デバイスとして機能する。
カメラ305は、光学系及びイメージセンサを含み、光学系により形成される視野内の像を表した画像データをイメージセンサにより生成する。
Touch panel 304 functions as an input device and display device of user terminal 300.
The camera 305 includes an optical system and an image sensor, and the image sensor generates image data representing an image within a field of view formed by the optical system.

無線通信ユニット306は、アクセスポイント6との間で無線通信プロトコルに従った無線通信によりデータを授受する。無線通信ユニット306としては、例えばIEEE802.11規格に準拠した周知の通信デバイスを利用できる。
モバイル通信ユニット307は、通信ネットワーク700を介したデータ通信のインタフェースである。モバイル通信ユニット307としては、例えば移動通信網を介したデータ通信を行うための周知の通信デバイスを利用できる。
The wireless communication unit 306 exchanges data with the access point 6 through wireless communication according to a wireless communication protocol. As the wireless communication unit 306, for example, a well-known communication device compliant with the IEEE802.11 standard can be used.
Mobile communication unit 307 is an interface for data communication via communication network 700. As the mobile communication unit 307, for example, a well-known communication device for performing data communication via a mobile communication network can be used.

なお補助記憶ユニット303は、情報処理プログラムの1つであるスマホPOSアプリAP301を記憶する。スマホPOSアプリAP301は、アプリケーションプログラムであり、ユーザ端末300を店舗システム100のユーザインタフェースとして機能させるための後述する情報処理(以下、スマホUI処理と称する)について記述されている。スマホPOSアプリAP301は、複数のユーザ端末300で共通に利用される。 Note that the auxiliary storage unit 303 stores a smartphone POS application AP301, which is one of the information processing programs. The smartphone POS application AP301 is an application program, and describes information processing (hereinafter referred to as smartphone UI processing) to be described later for causing the user terminal 300 to function as a user interface of the store system 100. The smartphone POS application AP301 is commonly used by a plurality of user terminals 300.

図8はカート端末400の要部回路構成を示すブロック図である。
カート端末400は、タブレットコンピュータ401、スキャナ402、リーダ403及びカメラ404を備える。
FIG. 8 is a block diagram showing the main circuit configuration of the cart terminal 400.
The cart terminal 400 includes a tablet computer 401, a scanner 402, a reader 403, and a camera 404.

タブレットコンピュータ401は、プロセッサ401a、メインメモリ401b、補助記憶ユニット401c、無線通信ユニット401d、タッチパネル401e、サウンドユニット401f、インタフェースユニット401g及び伝送路401hを含む。プロセッサ401a、メインメモリ401b、補助記憶ユニット401c、無線通信ユニット401d、タッチパネル401e、サウンドユニット401f及びインタフェースユニット401gは、伝送路401hを介して通信可能とされている。そして、プロセッサ401a、メインメモリ401b及び補助記憶ユニット401cが伝送路401hにより接続されていることによって、カート端末400を制御するためのコンピュータが構成される。なお、プロセッサ401a、メインメモリ401b、補助記憶ユニット401c、タッチパネル401e、無線通信ユニット401d及び伝送路401hの機能の概略は、プロセッサ11、メインメモリ12、補助記憶ユニット13、タッチパネル304、無線通信ユニット306及び伝送路15と同等であるので、その説明は省略する。 The tablet computer 401 includes a processor 401a, a main memory 401b, an auxiliary storage unit 401c, a wireless communication unit 401d, a touch panel 401e, a sound unit 401f, an interface unit 401g, and a transmission line 401h. The processor 401a, main memory 401b, auxiliary storage unit 401c, wireless communication unit 401d, touch panel 401e, sound unit 401f, and interface unit 401g are capable of communicating via a transmission path 401h. A computer for controlling the cart terminal 400 is configured by connecting the processor 401a, main memory 401b, and auxiliary storage unit 401c via a transmission path 401h. The functions of the processor 401a, main memory 401b, auxiliary storage unit 401c, touch panel 401e, wireless communication unit 401d, and transmission line 401h are summarized as follows: processor 11, main memory 12, auxiliary storage unit 13, touch panel 304, and wireless communication unit 306. and the transmission line 15, so the explanation thereof will be omitted.

ただし補助記憶ユニット401cは、店舗管理アプリAP11に代えてカート端末アプリAP401を記憶する。カート端末アプリAP401は、アプリケーションプログラムであり、カート端末400を店舗システム100のユーザインタフェースとして機能させるための後述する情報処理(以下、カートUI処理と称する)について記述されている。カート端末アプリAP401は、複数のカート端末400で共通に利用される。 However, the auxiliary storage unit 401c stores the cart terminal application AP401 instead of the store management application AP11. The cart terminal application AP 401 is an application program, and describes information processing (hereinafter referred to as cart UI processing) to be described later for causing the cart terminal 400 to function as a user interface of the store system 100. The cart terminal application AP401 is commonly used by a plurality of cart terminals 400.

サウンドユニット401fは、音声及びメロディなどの各種サウンドを出力する。
インタフェースユニット401gには、スキャナ402、リーダ403及びカメラ404が接続される。インタフェースユニット401gは、これらスキャナ402、リーダ403及びカメラ404とプロセッサ401aとのデータの授受をインタフェースする。インタフェースユニット401gとしては、既存のUSB(universal serial bus)コントローラ等を利用できる。
The sound unit 401f outputs various sounds such as voices and melodies.
A scanner 402, a reader 403, and a camera 404 are connected to the interface unit 401g. The interface unit 401g interfaces the scanner 402, reader 403, and camera 404 with the processor 401a to exchange data. As the interface unit 401g, an existing USB (universal serial bus) controller or the like can be used.

スキャナ402は、バーコード又は二次元データコード等のコードシンボルを読み取る。スキャナ402は、主として、商品に示され、当該商品の商品コード等を表したコードシンボルを読み取るために使用される。スキャナ402は、会員カードに示されるか、又は携帯端末で表示され、会員コードなどを表したコードシンボルを読み取るために使用されてもよい。スキャナ402は、読み取ったコードシンボルが表すデータを出力する。スキャナ402は、レーザ光の走査によりコードシンボルを読み取るタイプであってもよいし、撮像デバイスで撮像した画像からコードシンボルを読み取るタイプであってもよい。 Scanner 402 reads code symbols such as barcodes or two-dimensional data codes. The scanner 402 is mainly used to read a code symbol shown on a product and representing a product code of the product. Scanner 402 may be used to read a code symbol shown on a membership card or displayed on a mobile device and representing a membership code or the like. Scanner 402 outputs data represented by the read code symbols. The scanner 402 may be of a type that reads code symbols by scanning with laser light, or may be of a type that reads code symbols from an image captured by an imaging device.

リーダ403は、記録媒体に記録されたデータを読み取り、出力する。リーダ403は、記録媒体が磁気カードの場合は磁気カードリーダであり、接触式ICカードの場合にはICカードリーダである。非接触式ICカード又はスマートフォン等のようにRFID(radio frequency identification)を使用した記録媒体の場合には、RFIDリーダがリーダ403として使用される。
カメラ404は、ショッピングカートC1に載せられた買物カゴの中を俯瞰撮影する。そしてカメラ404は、撮影した画像を表した画像データを出力する。
A reader 403 reads data recorded on a recording medium and outputs it. The reader 403 is a magnetic card reader when the recording medium is a magnetic card, and is an IC card reader when the recording medium is a contact type IC card. In the case of a recording medium that uses RFID (radio frequency identification), such as a non-contact IC card or a smartphone, an RFID reader is used as the reader 403.
The camera 404 takes a bird's-eye view of the inside of the shopping cart placed on the shopping cart C1. The camera 404 then outputs image data representing the captured image.

さて、店舗サーバ1、仮想POSサーバ2又はモバイルコントローラ3のハードウェアとしては、例えば汎用のサーバ装置を用いることができる。そして店舗サーバ1、仮想POSサーバ2又はモバイルコントローラ3の譲渡は一般に、補助記憶ユニット13,23又は33に店舗管理アプリAP11、仮想POSアプリAP21又は取引管理アプリAP31がそれぞれ記憶され、データベース群DB11、取引データベースDB21、又は取引管理データベースDB31及び登録データベースDB32が記憶されない状態にて行われる。しかし、店舗管理アプリAP11、仮想POSアプリAP21又は取引管理アプリAP31が補助記憶ユニット13,23又は33に記憶されない状態、あるいは同種の別バージョンのアプリケーションプログラムが補助記憶ユニット13,23又は33に記憶された状態のハードウェアと、店舗管理アプリAP11、仮想POSアプリAP21又は取引管理アプリAP31とが個別に譲渡されてもよい。そして、任意の作業者の操作に応じて、補助記憶ユニット13,23又は33に店舗管理アプリAP11、仮想POSアプリAP21又は取引管理アプリAP31が書き込まれることによって、店舗サーバ1、仮想POSサーバ2又はモバイルコントローラ3が構成されてもよい。店舗管理アプリAP11、仮想POSアプリAP21又は取引管理アプリAP31の譲渡は、磁気ディスク、光磁気ディスク、光ディスク、半導体メモリなどのようなリムーバブルな記録媒体に記録して、あるいはネットワークを介した通信により行うことができる。取引データベースDB21、又は取引管理データベースDB31及び登録データベースDB32は、プロセッサ11,21又は31が店舗管理アプリAP11、仮想POSアプリAP21又は取引管理アプリAP31に基づく情報処理を実行することで、補助記憶ユニット13,23又は33内に構成される。なお、店舗管理アプリAP11及びデータベース群DB11に含まれるデータベースの少なくとも一部が、メインメモリ12に記憶されてもよい。仮想POSアプリAP21及び取引データベースDB21の少なくとも一部が、メインメモリ22に記憶されてもよい。取引管理アプリAP31、取引管理データベースDB31及び登録データベースDB32の少なくとも一部が、メインメモリ32に記憶されてもよい。 Now, as the hardware of the store server 1, virtual POS server 2, or mobile controller 3, for example, a general-purpose server device can be used. Generally, when transferring the store server 1, virtual POS server 2, or mobile controller 3, the store management application AP11, virtual POS application AP21, or transaction management application AP31 is stored in the auxiliary storage unit 13, 23, or 33, respectively, and the database group DB11, This is performed without storing the transaction database DB21, transaction management database DB31, and registration database DB32. However, the store management application AP11, the virtual POS application AP21, or the transaction management application AP31 is not stored in the auxiliary storage unit 13, 23, or 33, or a different version of the same application program is stored in the auxiliary storage unit 13, 23, or 33. The hardware in the current state and the store management application AP11, virtual POS application AP21, or transaction management application AP31 may be transferred separately. Then, the store management application AP11, virtual POS application AP21, or transaction management application AP31 is written in the auxiliary storage unit 13, 23, or 33 in accordance with the operation of any worker, so that the store server 1, the virtual POS server 2, or A mobile controller 3 may be configured. Transfer of the store management application AP11, virtual POS application AP21, or transaction management application AP31 is performed by recording on a removable recording medium such as a magnetic disk, magneto-optical disk, optical disk, semiconductor memory, etc., or by communication via a network. be able to. The transaction database DB21, transaction management database DB31, and registration database DB32 are stored in the auxiliary storage unit 13 by the processor 11, 21, or 31 executing information processing based on the store management application AP11, the virtual POS application AP21, or the transaction management application AP31. , 23 or 33. Note that at least part of the databases included in the store management application AP11 and the database group DB11 may be stored in the main memory 12. At least a portion of the virtual POS application AP21 and the transaction database DB21 may be stored in the main memory 22. At least a portion of the transaction management application AP31, the transaction management database DB31, and the registration database DB32 may be stored in the main memory 32.

次に以上のように構成された取引処理システムの動作について説明する。なお、以下に説明する各種の処理の内容は一例であって、一部の処理の順序の変更、一部の処理の省略、あるいは別の処理の追加などは適宜に可能である。例えば、以下の説明では、本実施形態の特徴的な動作を分かり易く説明するために、一部の処理についての説明を省略している。例えば、何らかのエラーが発生した場合に、そのエラーに対処するための処理が行われる場合があるが、そのような処理の一部については記載を省略している。 Next, the operation of the transaction processing system configured as above will be explained. Note that the contents of various processes described below are merely examples, and the order of some processes may be changed, some processes may be omitted, or other processes may be added as appropriate. For example, in the following description, in order to explain the characteristic operations of this embodiment in an easy-to-understand manner, descriptions of some processes are omitted. For example, when some kind of error occurs, processing may be performed to deal with the error, but some of such processing is omitted from description.

ユーザ端末300を用いる客に取引処理システムの動作により提供されるサービスをスマホPOSサービスと称する。またカート端末400を用いる客に取引処理システムの動作により提供されるサービスをカートPOSサービスと称する。
スマホPOSサービスを利用するためにユーザ端末300が店舗システム100とデータを授受するが、そのための通信にアクセスポイント6との無線通信及び通信ネットワーク700との無線通信とのいずれを利用するかは、チェックインデータに含まれるフラグの状態により決まる。しかしながら以下においては説明の簡略化のために、アクセスポイント6との無線通信を用いる場合について説明する。また、会計機5で会計を行わせるために仮想POSサーバ2から会計機5へのデータ転送を、会計機5からモバイルコントローラ3にデータ転送を要求するモードと、会計機5からの要求無しにモバイルコントローラ3から会計機5へとデータ転送するモードとのいずれを利用するかは、チェックインデータに含まれるフラグの状態により決まる。しかしながら以下においては説明の簡略化のために、会計機5からモバイルコントローラ3にデータ転送を要求するモードが固定的に用いられることとして説明する。
A service provided to a customer using the user terminal 300 by the operation of the transaction processing system is referred to as a smartphone POS service. Further, the service provided to the customer using the cart terminal 400 through the operation of the transaction processing system is referred to as a cart POS service.
In order to use the smartphone POS service, the user terminal 300 exchanges data with the store system 100, but whether to use wireless communication with the access point 6 or wireless communication with the communication network 700 for this purpose depends on Determined by the state of the flag included in the check-in data. However, in the following, to simplify the explanation, a case will be described in which wireless communication with the access point 6 is used. In addition, in order to have the accounting machine 5 perform the transaction, data transfer from the virtual POS server 2 to the accounting machine 5 can be performed in two modes: a mode in which the accounting machine 5 requests the mobile controller 3 to transfer data, and a mode in which data transfer is requested from the accounting machine 5 to the mobile controller 3; Which mode of data transfer from the mobile controller 3 to the accounting machine 5 is used depends on the state of the flag included in the check-in data. However, in the following description, in order to simplify the explanation, it is assumed that the mode in which data transfer is requested from the accounting machine 5 to the mobile controller 3 is used permanently.

客は、スマホPOSサービスを利用するためには、自らが所有するスマートフォン等にスマホPOSアプリAP301をインストールして、ユーザ端末300として利用可能としておく。あるいは、客は、タブレット端末などにスマホPOSアプリAP301をインストールして構成されたユーザ端末300を店舗にて借りる。そして客は、スマホPOSアプリAP301に基づく情報処理を起動した状態のユーザ端末300を持って、店舗システム100が設けられたいずれかの店舗へと入る。 In order to use the smartphone POS service, a customer installs the smartphone POS application AP 301 on his/her smartphone or the like so that it can be used as a user terminal 300. Alternatively, the customer rents a user terminal 300 configured by installing the smartphone POS application AP301 on a tablet terminal or the like at the store. Then, the customer enters one of the stores in which the store system 100 is installed, carrying the user terminal 300 with information processing based on the smartphone POS application AP301 activated.

客は、スマホPOSサービスを利用した取引の結果を電子レシートサービスにより確認したい場合は、電子レシートサービスの利用登録を行っておく。この利用登録によって客には、電子レシートIDが割り当てられる。そして客は、自らが所有するユーザ端末300に、自らに割り当てられた電子レシートIDを記憶させておく。また、客を管理するために店舗側で管理される会員データベースにて、ポイントIDに関連付けて電子レシートIDを記憶する場合がある。この場合には客は、自らが所有するユーザ端末300に、自らに割り当てられたポイントIDを記憶させておくのでもよい。 If the customer wishes to check the results of transactions using the smartphone POS service using the electronic receipt service, the customer must register to use the electronic receipt service. Through this usage registration, the customer is assigned an electronic receipt ID. The customer then stores the electronic receipt ID assigned to him or herself in the user terminal 300 that he or she owns. Further, in order to manage customers, the electronic receipt ID may be stored in association with the point ID in a member database managed by the store. In this case, the customer may store the point ID assigned to him or herself in the user terminal 300 that he or she owns.

ユーザ端末300にてプロセッサ301は、スマホPOSアプリAP301に基づいた設定処理により、電子レシートID又はポイントIDを取得し、スマホPOSアプリAP301に関する登録データとして補助記憶ユニット303に保存する。プロセッサ301は例えば、操作者が電子レシートIDの登録を要求したならば、電子レシートサーバ600にて利用者を認証するためのログインIDとログインパスワードとを操作者に指定させる。そしてプロセッサ301は、指定されたログインID及びログインパスワードを用いて電子レシートサーバ600にログインした上で、当該ログインIDで識別される利用者の電子レシートIDを取得し、補助記憶ユニット303に保存する。プロセッサ301は例えば、電子レシートIDを操作者に指定させ、指定された電子レシートIDを補助記憶ユニット303に保存するのでもよい。またプロセッサ301は例えば、操作者がポイントIDの登録を要求したならば、ポイントIDを操作者に指定させ、指定されたポイントIDを補助記憶ユニット303に保存する。なお、ポイントIDとしては、客に配布されるポイントカードに付与されたポイントカード番号などが用いられる。電子レシートID及びポイントIDのそれぞれの登録が順次に要求された場合には、プロセッサ301は上記の処理を個別に実行し、電子レシートID及びポイントIDの双方を補助記憶ユニット303に記憶させておく。ただし、プロセッサ301は、予め定められた一方のみを記憶させておくようにしてもよい。 The processor 301 in the user terminal 300 acquires the electronic receipt ID or point ID through a setting process based on the smartphone POS application AP301, and stores it in the auxiliary storage unit 303 as registered data regarding the smartphone POS application AP301. For example, if the operator requests registration of an electronic receipt ID, the processor 301 causes the operator to specify a login ID and a login password for authenticating the user at the electronic receipt server 600. The processor 301 then logs into the electronic receipt server 600 using the specified login ID and login password, obtains the electronic receipt ID of the user identified by the login ID, and stores it in the auxiliary storage unit 303. . For example, the processor 301 may have the operator specify an electronic receipt ID and store the specified electronic receipt ID in the auxiliary storage unit 303. Further, for example, if the operator requests registration of a point ID, the processor 301 causes the operator to specify the point ID, and stores the specified point ID in the auxiliary storage unit 303. Note that as the point ID, a point card number given to a point card distributed to a customer or the like is used. When registration of each electronic receipt ID and point ID is requested in sequence, the processor 301 executes the above processing individually and stores both the electronic receipt ID and the point ID in the auxiliary storage unit 303. . However, the processor 301 may store only one predetermined one.

図9、図10、図11及び図12はプロセッサ301がスマホPOSアプリAP301に従って実行するスマホUI処理のフローチャートである。
まず図9に示すACT101としてプロセッサ301は、メインメニュー画面をタッチパネル304に表示させる。メインメニュー画面は、スマホPOSアプリAP301に従って行うべきいくつかの処理のいずれかの指定を受けるための画面である。メインメニュー画面には、買い物の開始を指定するためのGUI(graphical user interface)要素を含む、複数のGUI要素が配置されている。なおGUI要素は、例えばソフトキーである。
9, FIG. 10, FIG. 11, and FIG. 12 are flowcharts of smartphone UI processing executed by the processor 301 according to the smartphone POS application AP 301.
First, in ACT 101 shown in FIG. 9, the processor 301 displays a main menu screen on the touch panel 304. The main menu screen is a screen for receiving designation of one of several processes to be performed according to the smartphone POS application AP301. A plurality of GUI elements are arranged on the main menu screen, including a GUI (graphical user interface) element for specifying the start of shopping. Note that the GUI element is, for example, a soft key.

ACT102としてプロセッサ301は、買い物の開始が指定されたか否かを確認する。そしてプロセッサ301は、該当の指定が確認できないならばNOと判定し、ACT103へと進む。
ACT103としてプロセッサ301は、買い物の開始以外の指定がなされたか否かを確認する。そしてプロセッサ301は、該当の指定が確認できないならばNOと判定し、ACT102へと戻る。
かくしてプロセッサ301はACT102及びACT103としては、メインメニュー画面での何らかの指定がなされるのを待ち受ける。そしてプロセッサ301は、買い物の開始以外の指定がなされたならば、ACT103にてYESと判定し、指定された処理へと進む。なおこの場合のプロセッサ301の処理についての説明は省略する。前述の電子レシートID又はポイントIDを登録するためのプロセッサ301の処理は、ここでの処理の1つであってもよい。
As ACT 102, the processor 301 checks whether the start of shopping has been specified. Then, if the corresponding designation cannot be confirmed, the processor 301 determines NO and proceeds to ACT103.
In ACT 103, the processor 301 confirms whether a designation other than the start of shopping has been made. Then, if the corresponding designation cannot be confirmed, the processor 301 determines NO and returns to ACT102.
In this manner, the processor 301 waits for some designation to be made on the main menu screen as ACT102 and ACT103. If a designation other than the start of shopping is made, the processor 301 determines YES in ACT 103 and proceeds to the designated process. Note that a description of the processing of the processor 301 in this case will be omitted. The process of the processor 301 for registering the electronic receipt ID or point ID described above may be one of the processes here.

客は、店舗に入って買い物を開始する場合には、メインメニュー画面にて買い物の開始を指定するための予め定められた操作を行う。当該操作が例えばタッチパネル304にて検出されると、プロセッサ301はACT102にてYESと判定し、ACT104へと進む。
ACT104としてプロセッサ301は、チェックイン用のスキャン画面をタッチパネル304に表示させる。チェックイン用のスキャン画面は、チェックイン用の2次元コードTC1を読み取るように客に促す画面である。プロセッサ301は例えば、カメラ305を起動し、これによりカメラ305で得られた画像に、2次元コードTC1を読み取るように客に促す文字メッセージと、2次元コードTCを翳すべき位置の目安を示すラインとを重ねてスキャン画面を生成する。
When a customer enters a store and starts shopping, he or she performs a predetermined operation on the main menu screen to designate the start of shopping. When the operation is detected, for example, on the touch panel 304, the processor 301 determines YES in ACT102, and proceeds to ACT104.
As ACT 104, the processor 301 displays a scan screen for check-in on the touch panel 304. The scan screen for check-in is a screen that prompts the customer to read the two-dimensional code TC1 for check-in. For example, the processor 301 activates the camera 305, and displays on the image obtained by the camera 305 a text message urging the customer to read the two-dimensional code TC1 and an indication of the position where the two-dimensional code TC should be held. Generate a scan screen by overlapping the lines.

客は、スキャン画面がタッチパネル304に表示されたならば、店舗の入口付近に掲示されている2次元コードTC1がスキャン画面に映り込むようにカメラ305を2次元コードTC1に向ける。 When the scan screen is displayed on the touch panel 304, the customer points the camera 305 at the two-dimensional code TC1 posted near the entrance of the store so that the two-dimensional code TC1 is reflected on the scan screen.

ACT105としてプロセッサ301は、2次元コードが読み取れるのを待ち受ける。このときにプロセッサ301は、カメラ305で得られる画像を繰り返し解析し、2次元コードの読み取りを試みる。この2次元コードの読み取りは、スマホPOSアプリAP301に基づく処理として行われてもよいし、2次元コードの読み取り用の別のアプリケーションプログラムに基づく処理として行われてもよい。そしてプロセッサ301は、2次元コードが読み取れたならばYESと判定し、ACT106へと進む。 In ACT 105, the processor 301 waits for the two-dimensional code to be read. At this time, the processor 301 repeatedly analyzes images obtained by the camera 305 and attempts to read the two-dimensional code. Reading this two-dimensional code may be performed as a process based on the smartphone POS application AP301, or may be performed as a process based on another application program for reading the two-dimensional code. If the two-dimensional code is read, the processor 301 determines YES and proceeds to ACT106.

ACT106としてプロセッサ301は、読み取った2次元コードが表すデータがチェックインデータであるか否かを確認する。そしてプロセッサ301は、チェックインデータでなければNOと判定し、ACT105へと戻る。このときにプロセッサ301は、誤った2次元コードが読み取られたことを客に通知する画面をタッチパネル304に表示させてもよい。 In ACT 106, the processor 301 checks whether the data represented by the read two-dimensional code is check-in data. Then, the processor 301 determines NO if it is not check-in data, and returns to ACT105. At this time, the processor 301 may cause the touch panel 304 to display a screen that notifies the customer that an incorrect two-dimensional code has been read.

プロセッサ301は、読み取った2次元コードが表すデータがチェックインデータであることが確認できたならば、ACT106にてYESと判定し、ACT107へと進む。
ACT107としてプロセッサ301は、読み取ったチェックインデータを、メインメモリ302又は補助記憶ユニット303に保存する。
If the processor 301 confirms that the data represented by the read two-dimensional code is check-in data, it determines YES in ACT 106 and proceeds to ACT 107.
As ACT 107, the processor 301 stores the read check-in data in the main memory 302 or the auxiliary storage unit 303.

ACT108としてプロセッサ301は、モバイルコントローラ3に対して、チェックインを要求する。具体的にはプロセッサ301は、チェックインデータに表されたデータに基づいて、無線通信ユニット306とアクセスポイント6との無線通信を確立する。例えば店舗Aにて2次元コードTC1Aに客によってカメラ305が向けられたならば、2次元コードTC1Aが表すチェックインデータに基づいてプロセッサ301は、店舗システム100Aに設けられたアクセスポイント6との無線通信を確立する。そしてプロセッサ301は、アクセスポイント6との無線通信を介して、チェックインを要求するための要求データをモバイルコントローラ3に宛てて送信する。上述のように店舗システム100Aに設けられたアクセスポイント6との無線通信が確立している場合には、当該の要求データは、店舗システム100Aに設けられたアクセスポイント6及び店内通信ネットワーク7を介して、店舗システム100Aに設けられたモバイルコントローラ3へと伝送される。なおプロセッサ301は、チェックインを要求するための要求データには、チェックインの要求であることを識別するための識別データと、端末コードとを含める。プロセッサ301は、客がスマホPOSサービスの利用登録者であり、会員コードを有している場合には、その会員コードも要求データに含める。会員コードは例えば、ユーザ端末300の補助記憶ユニット303で記憶される。プロセッサ301は、ポイントIDが補助記憶ユニット303に記憶されているならば、当該ポイントIDも要求データに含める。プロセッサ301は、例えば客を認証するためのデータなどのその他のデータを要求データに含めてもよい。 As ACT 108, processor 301 requests check-in from mobile controller 3. Specifically, processor 301 establishes wireless communication between wireless communication unit 306 and access point 6 based on the data represented in the check-in data. For example, if a customer points the camera 305 at the two-dimensional code TC1A at store A, the processor 301 connects wirelessly to the access point 6 provided in the store system 100A based on the check-in data represented by the two-dimensional code TC1A. Establish communication. Processor 301 then transmits request data for requesting check-in to mobile controller 3 via wireless communication with access point 6 . When wireless communication with the access point 6 provided in the store system 100A is established as described above, the request data is transmitted via the access point 6 provided in the store system 100A and the in-store communication network 7. The data is then transmitted to the mobile controller 3 provided in the store system 100A. Note that the processor 301 includes, in the request data for requesting check-in, identification data for identifying that it is a request for check-in, and a terminal code. If the customer is a registered user of the smartphone POS service and has a membership code, the processor 301 also includes the membership code in the request data. The membership code is stored, for example, in the auxiliary storage unit 303 of the user terminal 300. If the point ID is stored in the auxiliary storage unit 303, the processor 301 also includes the point ID in the request data. Processor 301 may include other data in the request data, such as data for authenticating the customer.

なお、以降において説明するユーザ端末300からモバイルコントローラ3への各種の要求は、上記と同様に、要求の理由を識別するための識別データを含んだ要求データをアクセスポイント6及び店内通信ネットワーク7を介してユーザ端末300からモバイルコントローラ3へと送ることにより実現される。 Note that various requests from the user terminal 300 to the mobile controller 3, which will be described later, are sent to the access point 6 and the in-store communication network 7 by request data including identification data for identifying the reason for the request, as described above. This is realized by sending the data from the user terminal 300 to the mobile controller 3 via the mobile controller 3.

カート端末400が起動されるとプロセッサ401aは、カート端末アプリAP401に従って、以下に説明するカートUI処理を実行する。
図13はプロセッサ401aが実行するカートUI処理のフローチャートである。
When the cart terminal 400 is activated, the processor 401a executes the cart UI process described below in accordance with the cart terminal application AP401.
FIG. 13 is a flowchart of cart UI processing executed by the processor 401a.

ACT161としてプロセッサ401aは、起動されたことをモバイルコントローラ3に対して通知する。プロセッサ401aは、無線通信ユニット401dとアクセスポイント6との無線通信を介して、起動通知のための通知データをモバイルコントローラ3に宛てて送信する。当該の通知データは、アクセスポイント6及び店内通信ネットワーク7を介して、モバイルコントローラ3へと伝送される。
ACT162としてプロセッサ401aは、利用開始操作が行われるのを待ち受ける。このときプロセッサ401aは、取り付け先のショッピングカートC1を用いた買い物が開始されるのを待機している状態である。プロセッサ401aは例えば、この待機状態においては、開始ボタンを表した画面をタッチパネル401eに表示させておく。客は、カートPOSサービスを利用する場合には、カート置き場に置かれているショッピングカートC1の一台を取り出し、そのショッピングカートC1に取り付けられているカート端末400に対して利用開始のための予め定められた操作を行う。客は、会員であるならば、会員カードに記録された会員コードを、スキャナ402又はリーダ403に読み取らせる。客は、会員ではないならば、上記の開始ボタンを操作する。そしてプロセッサ401aは、これらの操作が行われたならば、利用開始のための操作が行われたとしてYESと判定して、ACT163へと進む。
As ACT 161, the processor 401a notifies the mobile controller 3 that it has been activated. The processor 401a transmits notification data for activation notification to the mobile controller 3 via wireless communication between the wireless communication unit 401d and the access point 6. The relevant notification data is transmitted to the mobile controller 3 via the access point 6 and the in-store communication network 7.
As ACT 162, the processor 401a waits for a usage start operation to be performed. At this time, the processor 401a is in a state of waiting for shopping to begin using the attached shopping cart C1. For example, in this standby state, the processor 401a causes a screen showing a start button to be displayed on the touch panel 401e. When using the cart POS service, the customer takes out one of the shopping carts C1 placed in the cart storage area and sends a message to the cart terminal 400 attached to the shopping cart C1 in advance to start using the service. Perform prescribed operations. If the customer is a member, the customer causes the scanner 402 or reader 403 to read the membership code recorded on the membership card. If the customer is not a member, he or she operates the start button described above. If these operations have been performed, the processor 401a determines YES as an operation for starting use has been performed, and proceeds to ACT163.

ACT163としてプロセッサ401aは、モバイルコントローラ3に対して、チェックインを要求する。具体的にはプロセッサ401aは、無線通信ユニット401dとアクセスポイント6との無線通信を介して、チェックインを要求するための要求データをモバイルコントローラ3に宛てて送信する。当該の要求データは、アクセスポイント6及び店内通信ネットワーク7を介してモバイルコントローラ3へと伝送される。なおプロセッサ401aは、チェックインを要求するための要求データには、チェックインの要求であることを識別するための識別データと、自らが搭載されているカート端末400を識別するための端末コードと、前述の会員コードとを含める。なおプロセッサ401aは、開始ボタンがタッチされた場合には、非会員用として予め定められた会員コードを仮想POSサーバに通知する。非会員用の会員コードは、複数の客に対して共通であってもよいし、異ならせてもよい。当該の通知データは、アクセスポイント6及び店内通信ネットワーク7を介して、モバイルコントローラ3へと伝送される。 In ACT 163, the processor 401a requests check-in from the mobile controller 3. Specifically, the processor 401a transmits request data for requesting check-in to the mobile controller 3 via wireless communication between the wireless communication unit 401d and the access point 6. The request data is transmitted via the access point 6 and the in-store communication network 7 to the mobile controller 3 . Note that the processor 401a includes, in the request data for requesting check-in, identification data for identifying the request for check-in, and a terminal code for identifying the cart terminal 400 in which the processor 401a is installed. , and the aforementioned membership code. Note that when the start button is touched, the processor 401a notifies the virtual POS server 2 of a membership code predetermined for non-members. The membership code for non-members may be common to multiple customers or may be different. The relevant notification data is transmitted to the mobile controller 3 via the access point 6 and the in-store communication network 7.

なお、以降において説明するカート端末400からモバイルコントローラ3への各種の要求は、上記と同様に、要求の理由を識別するための識別データを含んだ要求データをアクセスポイント6及び店内通信ネットワーク7を介してユーザ端末300からモバイルコントローラ3へと送ることにより実現される。 Note that various requests from the cart terminal 400 to the mobile controller 3, which will be explained later, are made by transmitting request data including identification data for identifying the reason for the request to the access point 6 and the in-store communication network 7, as described above. This is realized by sending the data from the user terminal 300 to the mobile controller 3 via the mobile controller 3.

モバイルコントローラ3においてプロセッサ31は、取引管理アプリAP31に従って管理処理を実行する。
図14はプロセッサ31による管理処理のフローチャートである。
In the mobile controller 3, the processor 31 executes management processing according to the transaction management application AP31.
FIG. 14 is a flowchart of management processing by the processor 31.

ACT181としてプロセッサ31は、起動通知がなされたか否かを確認する。そしてプロセッサ31は、該当の通知を確認できないならばNOと判定し、ACT182へと進む。
ACT182としてプロセッサ31は、チェックイン要求がなされたか否かを確認する。そしてプロセッサ31は、該当の要求を確認できないならばNOと判定し、ACT183へと進む。
ACT183としてプロセッサ31は、仲介処理が終了したか否かを確認する。そしてプロセッサ31は、仲介処理の終了を確認できないならばNOと判定し、ACT181へと戻る。
かくしてプロセッサ31はACT181~ACT183としては、起動通知、チェックイン要求又は仲介処理の終了を待ち受ける。
In ACT 181, the processor 31 confirms whether the activation notification has been made. If the processor 31 cannot confirm the corresponding notification, the processor 31 determines NO and proceeds to ACT182.
As ACT 182, the processor 31 checks whether a check-in request has been made. If the processor 31 cannot confirm the corresponding request, the processor 31 determines NO and proceeds to ACT183.
In ACT 183, the processor 31 checks whether the mediation process has ended. If the processor 31 cannot confirm the completion of the mediation process, it determines NO and returns to ACT181.
In this way, the processor 31 waits for a startup notification, a check-in request, or an end of mediation processing in ACT181 to ACT183.

プロセッサ31は、前述のようにカート端末400から送信された起動通知のための通知データが通信インタフェース34により受信されたならば、ACT181にてYESと判定し、ACT184へと進む。
ACT184としてプロセッサ31は、カートリストを更新する。カートリストは、稼働中であるカート端末400の端末コードのリストを表したデータである。カートリストは、メインメモリ32又は補助記憶ユニット33に記憶される。プロセッサ31は例えば、上記の通知データに含まれた端末コードを含むようにカートリストを更新する。プロセッサ31は、カート端末400のSSIDなどのカート端末400に関する種々のデータをカート端末400から取得して、カートリストに端末コードに関連付けて記述してもよい。そしてプロセッサ31はこののち、ACT181~ACT183の待受状態に戻る。なお具体的な説明は省略するが、プロセッサ31は、カート端末400の動作停止を検知した場合には、当該カート端末400の端末コードを抹消するようにカートリストを更新する。
If the communication interface 34 receives the notification data for the activation notification transmitted from the cart terminal 400 as described above, the processor 31 determines YES in ACT181 and proceeds to ACT184.
As ACT 184, the processor 31 updates the cart list. The cart list is data representing a list of terminal codes of cart terminals 400 that are in operation. The cart list is stored in the main memory 32 or the auxiliary storage unit 33. For example, the processor 31 updates the cart list to include the terminal code included in the notification data. The processor 31 may acquire various data regarding the cart terminal 400, such as the SSID of the cart terminal 400, from the cart terminal 400, and may write the data in association with the terminal code in the cart list. Thereafter, the processor 31 returns to the standby state in ACT181 to ACT183. Although a detailed explanation will be omitted, when the processor 31 detects that the cart terminal 400 has stopped operating, it updates the cart list so as to delete the terminal code of the cart terminal 400.

プロセッサ31は、前述のようにユーザ端末300又はカート端末400から送信されたチェックイン要求のための要求データが通信インタフェース34により受信されたならば、ACT182にてYESと判定し、ACT185へと進む。
ACT185としてプロセッサ31は、仮想POSサーバ2が新たな取引処理を開始可能であるか否かを確認する。後述するように、仮想POSサーバ2は複数の取引処理を並行して実行する。しかしながら、プロセッサ21の処理能力などのリソースの制限のために、並行して実行可能な取引処理の数(以下、最大数と称する)は限られる。プロセッサ31は例えば、その時点でプロセッサ21が実行している取引処理の総数が最大数未満であるならば、開始可能としてYESと判定し、ACT186へと進む。
If the request data for the check-in request transmitted from the user terminal 300 or the cart terminal 400 is received by the communication interface 34 as described above, the processor 31 determines YES in ACT 182 and proceeds to ACT 185. .
As ACT 185, the processor 31 checks whether the virtual POS server 2 can start a new transaction process. As will be described later, the virtual POS server 2 executes multiple transaction processes in parallel. However, due to resource limitations such as the processing capacity of the processor 21, the number of transaction processes that can be executed in parallel (hereinafter referred to as the maximum number) is limited. For example, if the total number of transaction processes being executed by the processor 21 at that time is less than the maximum number, the processor 31 determines YES that the transaction process can be started, and proceeds to ACT186.

ACT186としてプロセッサ31は、チェックインを要求しているのがカート端末400であるか否かを確認する。プロセッサ31は例えば、要求データに含まれた端末コードがカートリストに含まれているか否かを確認する。そしてプロセッサ31は、該当の端末コードがカートリストに含まれていないならば、チェックインを要求しているのがユーザ端末300であるとしてNOと判定し、ACT187へと進む。
プロセッサ31は、要求データに含まれる種別データに基づいて、チェックインを要求しているのがユーザ端末300及びカート端末400のいずれであるかを確認してもよい。ただしこの場合は、ユーザ端末300のプロセッサ301及びカート端末400のプロセッサ401aの少なくとも一方が、チェックインを要求するための要求データにユーザ端末300及びカート端末400を区別するための種別データを含めるようにする。
ACT187としてプロセッサ31は、ユーザ端末300に関する取引処理の開始が許容される状態であるか否かを確認する。プロセッサ31は例えば、ユーザ端末300に関して仮想POSサーバ2で実行されている取引処理の数が予め定められた許容数であるならばNOと判定し、ACT188へと進む。なおプロセッサ31は例えば、ここでの判断のためには、ユーザ端末300を対象とした仲介処理に関してメインメモリ32又は補助記憶ユニット33に後述のように記憶される実行数を許容数と比較する。
In ACT 186, the processor 31 checks whether it is the cart terminal 400 that is requesting check-in. For example, the processor 31 checks whether the terminal code included in the request data is included in the cart list. If the corresponding terminal code is not included in the cart list, the processor 31 determines NO because it is the user terminal 300 that is requesting check-in, and proceeds to ACT187.
The processor 31 may check whether the user terminal 300 or the cart terminal 400 is requesting check-in based on the type data included in the request data. However, in this case, at least one of the processor 301 of the user terminal 300 and the processor 401a of the cart terminal 400 includes type data for distinguishing between the user terminal 300 and the cart terminal 400 in request data for requesting check-in. Make it.
In ACT 187, the processor 31 checks whether the user terminal 300 is in a state where the start of transaction processing is permitted. For example, if the number of transaction processes being executed by the virtual POS server 2 regarding the user terminal 300 is a predetermined allowable number, the processor 31 determines NO and proceeds to ACT188. In order to make this determination, for example, the processor 31 compares the number of executions stored in the main memory 32 or the auxiliary storage unit 33 as described later with respect to the mediation processing targeted at the user terminal 300, with the permissible number.

一例としては、店舗毎に、店舗システム100の管理者などが、店舗内で同時に稼働させるカート端末400の制限台数を決める。プロセッサ31は、上記の管理者などの操作に応じて制限台数を入力し、当該の制限台数をメインメモリ32又は補助記憶ユニット33に記憶させる。なおプロセッサ31は、メインメモリ32又は補助記憶ユニット33に制限台数が既に記憶されているならば、新たに入力した制限台数で上書きする。そしてプロセッサ31は、最大数から制限台数を減じて求まる数を許容数とする。具体的には、最大数が24である場合に、制限台数を15とするならば、許容数は9とされる。この例の場合、制限台数のカート端末400のそれぞれを対象端末としての取引処理を並行実行できることが常に保証されることになる。 For example, for each store, the administrator of the store system 100 or the like determines a limit on the number of cart terminals 400 that can be operated simultaneously within the store. The processor 31 inputs the limit number of devices according to the operation of the administrator, etc., and stores the limit number in the main memory 32 or the auxiliary storage unit 33. Note that if the limit number is already stored in the main memory 32 or the auxiliary storage unit 33, the processor 31 overwrites it with the newly input limit number. Then, the processor 31 determines the number obtained by subtracting the limit number from the maximum number as the permissible number. Specifically, if the maximum number is 24 and the limited number is 15, the allowable number is 9. In this example, it is always guaranteed that transaction processing can be executed in parallel using each of the limited number of cart terminals 400 as target terminals.

ただし制限台数は、例えば取引管理アプリAP31の作成者などによって定められ、各店舗共通で固定的に適用されてもよい。また許容数は、例えば取引管理アプリAP31の作成者などによって定められ、各店舗共通で固定的に適用されてもよい。また許容数は、カートリストに記述されている端末コードの数、つまり稼働中のカート端末400の数を、最大数から減じた数としてもよい。また許容数は、制限台数又は稼働中のカート端末400の数に1未満の係数を乗じて、あるいは一定数を減じて求まる数に適宜の端数処理を施して求まる整数値を最大数から減じた数としてもよい。また制限台数に代えて、最大数未満の数として制限台数とは無関係に定められた接続保証数をメインメモリ32又は補助記憶ユニット33に記憶させておき、最大数から接続保証数を減じて求まる数を許容数としてもよい。 However, the limited number of devices may be determined by, for example, the creator of the transaction management application AP31, and may be fixedly applied to each store. Further, the allowable number may be determined by, for example, the creator of the transaction management application AP31, and may be fixedly applied to each store. Further, the allowable number may be the number obtained by subtracting the number of terminal codes written in the cart list, that is, the number of cart terminals 400 in operation from the maximum number. The permissible number is determined by multiplying the limit number or the number of cart terminals 400 in operation by a coefficient less than 1, or by subtracting a certain number, and then subtracting an integer value from the maximum number. It may be a number. In addition, instead of the limited number of devices, a guaranteed number of connections that is determined as a number less than the maximum number regardless of the limited number is stored in the main memory 32 or auxiliary storage unit 33, and is calculated by subtracting the guaranteed number of connections from the maximum number. The number may be an acceptable number.

プロセッサ31は、ACT187にてNOと判定した場合の他、ACT185にてNOと判定した場合にもACT188へと進む。なおプロセッサ31は、プロセッサ21により実行されている取引処理の総数が最大数と一致するならば、開始可能ではないとしてACT185にてNOと判定する。プロセッサ31は例えば、後述するようにメインメモリ32又は補助記憶ユニット33に記憶される2つの実行数の和として、上記の総数を求める。
ACT188としてプロセッサ31は、チェックインの要求元であるユーザ端末300又はカート端末400に対して、チェックインできない旨のエラー通知を行う。そしてプロセッサ31はこののち、ACT181~ACT183の待受状態に戻る。つまりプロセッサ31は、仮想POSサーバ2が新たな取引処理を開始可能でない状態でユーザ端末300又はカート端末400からなされたチェックイン要求、あるいはユーザ端末300に関する取引処理の実行数が許容数に到達している状態でユーザ端末300からなされたチェックイン要求は拒否する。
In addition to when the processor 31 determines NO in ACT 187, the processor 31 also proceeds to ACT 188 when it determines NO in ACT 185. Note that if the total number of transaction processes being executed by the processor 21 matches the maximum number, the processor 31 determines NO in ACT 185 as it is not possible to start. The processor 31 calculates the above-mentioned total number, for example, as the sum of two execution numbers stored in the main memory 32 or the auxiliary storage unit 33, as described later.
In ACT 188, the processor 31 notifies the user terminal 300 or cart terminal 400, which is the source of the check-in request, of an error that check-in is not possible. Thereafter, the processor 31 returns to the standby state in ACT181 to ACT183. In other words, the processor 31 receives a check-in request made from the user terminal 300 or the cart terminal 400 while the virtual POS server 2 is unable to start a new transaction process, or when the number of executed transaction processes related to the user terminal 300 reaches the permissible number. A check-in request made from the user terminal 300 in this state is rejected.

プロセッサ31は、仮想POSサーバ2が新たな取引処理を開始可能であり、かつチェックイン要求がカート端末400からである場合には、ACT186にてYESと判定し、ACT189へと進む。なおプロセッサ31は例えば、要求データに含まれた端末コードがカートリストに含まれている場合に、チェックイン要求がカート端末400からであるとしてACT186にてYESと判定する。またプロセッサ31は、仮想POSサーバ2が新たな取引処理を開始可能であり、チェックイン要求がユーザ端末300からであるものの、ユーザ端末300に関する取引処理の実行数が許容数未満である場合には、ACT187にてYESと判定してACT189へと進む。
ACT189としてプロセッサ31は、チェックインを要求したユーザ端末300又はカート端末400を対象とした仲介処理を開始する。なお、仲介処理は、この管理処理とは例えば別スレッドの処理として、管理処理に並行してプロセッサ31が実行する。なおプロセッサ31は、別のユーザ端末300又はカート端末400を対象とした仲介処理を既に実行中であるならば、その仲介処理とも並行して新たな仲介処理を開始する。つまりプロセッサ31は、複数の仲介処理を並行して実行する場合がある。
If the virtual POS server 2 can start a new transaction process and the check-in request is from the cart terminal 400, the processor 31 determines YES in ACT186 and proceeds to ACT189. Note that, for example, if the terminal code included in the request data is included in the cart list, the processor 31 determines YES in ACT 186 because the check-in request is from the cart terminal 400. Furthermore, if the virtual POS server 2 is capable of starting new transaction processing and the check-in request is from the user terminal 300, but the number of executions of transaction processing regarding the user terminal 300 is less than the allowable number, , YES is determined in ACT187 and the process proceeds to ACT189.
In ACT 189, the processor 31 starts mediation processing targeting the user terminal 300 or cart terminal 400 that has requested check-in. Note that the mediation process is executed by the processor 31 in parallel with the management process, for example, as a process in a separate thread from the management process. Note that if the processor 31 is already executing a mediation process for another user terminal 300 or cart terminal 400, it starts a new mediation process in parallel with that mediation process. That is, the processor 31 may execute multiple mediation processes in parallel.

ACT190としてプロセッサ31は、仲介処理の実行数を増加する。プロセッサ31は例えば、ユーザ端末300を対象とした仲介処理の実行数と、カート端末400を対象とした仲介処理の実行数とを、例えばメインメモリ12又は補助記憶ユニット13に記憶させることで管理する。そしてプロセッサ31は、ACT189にてユーザ端末300を対象とした仲介処理を開始したならば、ユーザ端末300を対象とした仲介処理の実行数を1つ増加する。またプロセッサ31は、ACT189にてカート端末400を対象とした仲介処理を開始したならば、カート端末400を対象とした仲介処理の実行数を1つ増加する。そしてプロセッサ31はこののち、ACT181~ACT183の待受状態に戻る。 As ACT 190, the processor 31 increases the number of executions of mediation processing. The processor 31 manages, for example, the number of executions of mediation processing targeted at the user terminal 300 and the number of executions of mediation processing targeted at the cart terminal 400 by storing them in the main memory 12 or the auxiliary storage unit 13, for example. . When the processor 31 starts the mediation process targeting the user terminal 300 in ACT 189, it increases the number of executions of the mediation process targeting the user terminal 300 by one. Furthermore, if the processor 31 starts the mediation process targeting the cart terminal 400 in ACT 189, it increases the number of executions of the mediation process targeting the cart terminal 400 by one. Thereafter, the processor 31 returns to the standby state in ACT181 to ACT183.

プロセッサ31は、上述のように開始させた仲介処理が終了すると、ACT183にてYESと判定し、ACT191へと進む。
ACT191としてプロセッサ31は、実行数を減少する。プロセッサ31は例えば、終了した仲介処理がユーザ端末300を対象としていたならば、ユーザ端末300を対象とした仲介処理の実行数を1つ減少する。またプロセッサ31は、終了した仲介処理がカート端末400を対象としていたならば、カート端末400を対象とした仲介処理の実行数を1つ減少する。そしてプロセッサ31はこののち、ACT181~ACT183の待受状態に戻る。
When the mediation process started as described above is completed, the processor 31 determines YES in ACT183 and proceeds to ACT191.
As ACT 191, the processor 31 reduces the number of executions. For example, if the completed mediation process targeted the user terminal 300, the processor 31 decreases the number of executions of the mediation process targeted at the user terminal 300 by one. Further, if the completed mediation process was targeted at the cart terminal 400, the processor 31 decreases the number of executions of the mediation process targeted at the cart terminal 400 by one. Thereafter, the processor 31 returns to the standby state in ACT181 to ACT183.

図15及び図16はプロセッサ31による仲介処理のフローチャートである。
プロセッサ31は、前述の通り、複数のユーザ端末300又はカート端末400をそれぞれ対象として仲介処理を複数並行して実行する場合がある。以下の仲介処理の説明において、単にユーザ端末300又はカート端末400と記す場合は、その仲介処理の対象となっているユーザ端末300又はカート端末400を指す。また仲介処理の対象となっているユーザ端末300又はカート端末400を区別する必要がない場合は、対象端末と記す。
15 and 16 are flowcharts of mediation processing by the processor 31.
As described above, the processor 31 may execute a plurality of mediation processes in parallel for a plurality of user terminals 300 or cart terminals 400, respectively. In the following explanation of the mediation process, when it is simply written as the user terminal 300 or the cart terminal 400, it refers to the user terminal 300 or the cart terminal 400 that is the target of the mediation process. In addition, when there is no need to distinguish between the user terminal 300 or the cart terminal 400 that is the target of the mediation process, it is referred to as a target terminal.

図15のACT201としてプロセッサ31は、チェックイン処理を行う。プロセッサ31は例えば、仮想POSサーバ2に取引の開始を要求し、取引コードの通知を受ける。そしてプロセッサ31は、新たなデータレコードDR1を取引管理データベースDB31に追加する。プロセッサ31は、要求データに含まれた端末コードを、新たなデータレコードDR1のフィールドF11にセットする。プロセッサ31は、要求データに会員コードが含まれるならば、当該会員コードを、新たなデータレコードDR1のフィールドF12にセットする。プロセッサ31は、上記の通知された取引コードを、新たなデータレコードDR1のフィールドF13にセットする。プロセッサ31は、要求データにポイントIDが含まれるならば、このポイントIDに関連付けられた電子レシートIDの取得を試みる。つまりプロセッサ31は例えば、店舗サーバ1にアクセスし、データベース群DB11に含まれる利用者データベースを確認し、ポイントIDに電子レシートIDが関連付けられているならば、その電子レシートIDを取得する。そしてプロセッサ31は、このように電子レシートIDを取得できたならば、その電子レシートIDを、新たなデータレコードDR1のフィールドF14にセットする。これにより、対象端末を用いて行われる取引の管理が開始される。 As ACT201 in FIG. 15, the processor 31 performs check-in processing. For example, the processor 31 requests the virtual POS server 2 to start a transaction and receives notification of the transaction code. The processor 31 then adds the new data record DR1 to the transaction management database DB31. The processor 31 sets the terminal code included in the request data in the field F11 of the new data record DR1. If the request data includes a membership code, the processor 31 sets the membership code in the field F12 of the new data record DR1. The processor 31 sets the notified transaction code in the field F13 of the new data record DR1. If the request data includes a point ID, the processor 31 attempts to obtain the electronic receipt ID associated with this point ID. That is, the processor 31, for example, accesses the store server 1, checks the user database included in the database group DB11, and, if an electronic receipt ID is associated with the point ID, acquires the electronic receipt ID. If the processor 31 is able to obtain the electronic receipt ID in this way, it sets the electronic receipt ID in the field F14 of the new data record DR1. As a result, management of transactions performed using the target terminal is started.

仮想POSサーバ2においてプロセッサ21は、取引の開始がモバイルコントローラ3から要求されたならば、仮想POSアプリAP21に従って取引処理を開始する。
図18はプロセッサ21による取引処理のフローチャートである。
In the virtual POS server 2, the processor 21 starts transaction processing according to the virtual POS application AP21 when the mobile controller 3 requests the start of the transaction.
FIG. 18 is a flowchart of transaction processing by the processor 21.

プロセッサ21は、取引の開始が要求される毎に、当該取引処理を開始する。別の取引処理を既に実行している場合には、それに並行して新たな取引処理を開始する。つまりプロセッサ21は、モバイルコントローラ3にて仲介処理が複数並行して実行されている場合には、それら複数の仲介処理のそれぞれに対応する複数の取引処理を並行して実行する。 The processor 21 starts transaction processing every time a transaction start is requested. If another transaction process is already being executed, a new transaction process is started in parallel. In other words, when the mobile controller 3 executes a plurality of mediation processes in parallel, the processor 21 executes a plurality of transaction processes corresponding to each of the plurality of mediation processes in parallel.

つまりプロセッサ31は、端末装置としてのユーザ端末300又はカート端末400からの要求に応じて仲介処理を開始することにより、要求元の端末装置からの指示に応じた取引処理を仮想POSサーバ2のプロセッサ21に開始させる。ただしプロセッサ31は、要求元の端末装置が第1の種類に属する端末装置としてのユーザ端末300であって、予め定められた許容数の取引処理がユーザ端末300を対象端末としてプロセッサ21により既に実行中であるならば、上記の要求に応じての取引処理を開始させない。 In other words, the processor 31 starts the intermediary process in response to a request from the user terminal 300 or the cart terminal 400 as a terminal device, thereby allowing the processor of the virtual POS server 2 to process the transaction process in accordance with the instruction from the requesting terminal device. It will start on the 21st. However, the processor 31 assumes that the requesting terminal device is the user terminal 300 as a terminal device belonging to the first type, and a predetermined allowable number of transaction processes have already been executed by the processor 21 with the user terminal 300 as the target terminal. If it is inside, transaction processing in response to the above request will not be started.

ACT301としてプロセッサ21は、取引開始処理を実行する。この取引開始処理においてプロセッサ21は、予め定められたルールに従って取引コードを決定し、その取引コードで識別される取引での購入商品を管理するための新たなデータレコードを含むように取引データベースDB21を更新する。そしてプロセッサ21は、上記の決定した取引コードをモバイルコントローラ3に通知する。 As ACT 301, the processor 21 executes transaction start processing. In this transaction initiation process, the processor 21 determines a transaction code according to predetermined rules, and updates the transaction database DB 21 to include new data records for managing purchased items in the transaction identified by the transaction code. Update. The processor 21 then notifies the mobile controller 3 of the transaction code determined above.

ACT302としてプロセッサ21は、購入商品の変更が要求されたか否かを確認する。そしてプロセッサ21は、該当の要求を確認できないならばNOと判定し、ACT303へと進む。
ACT303としてプロセッサ21は、取引の取消が要求されたか否かを確認する。そしてプロセッサ21は、該当の要求を確認できないならばNOと判定し、ACT304へと進む。
ACT304としてプロセッサ21は、決済が要求されたか否かを確認する。そしてプロセッサ21は、該当の要求を確認できないならばNOと判定し、ACT305へと進む。
ACT305としてプロセッサ21は、決済データの転送が要求されたか否かを確認する。そしてプロセッサ21は、該当の要求を確認できないならばNOと判定し、ACT306へと進む。
ACT306としてプロセッサ21は、終了が指示されたか否かを確認する。そしてプロセッサ21は、該当の指示を確認できないならばNOと判定し、ACT302へと戻る。
かくしてプロセッサ21はACT302~ACT306としては、変更、取消、決済又は転送のいずれかが要求されるか、終了が指示されるのを待ち受ける。
In ACT 302, the processor 21 checks whether a change in the purchased product is requested. If the processor 21 cannot confirm the corresponding request, the processor 21 determines NO and proceeds to ACT303.
As ACT 303, processor 21 checks whether cancellation of the transaction has been requested. Then, if the processor 21 cannot confirm the corresponding request, the processor 21 determines NO and proceeds to ACT304.
As ACT 304, the processor 21 checks whether payment is requested. If the processor 21 cannot confirm the corresponding request, the processor 21 determines NO and proceeds to ACT305.
In ACT 305, the processor 21 checks whether transfer of payment data is requested. If the processor 21 cannot confirm the request, the processor 21 determines NO and proceeds to ACT306.
In ACT 306, the processor 21 checks whether termination has been instructed. Then, if the processor 21 cannot confirm the corresponding instruction, the processor 21 determines NO and returns to ACT302.
In this way, the processor 21 waits for any one of change, cancellation, settlement, or transfer to be requested, or for completion to be instructed, in ACT 302 to ACT 306.

さて、モバイルコントローラ3にてプロセッサ31は、チェックイン処理を終えたならば、図15中のACT202へと進む。
ACT202としてプロセッサ31は、チェックイン処理を正常に完了したか否かを確認する。そしてプロセッサ31は、何らかの異常によりチェックイン処理を正常に完了することができなかったならばNOと判定し、ACT203へと進む。
ACT203としてプロセッサ31は、対象端末に対してエラーを通知する。プロセッサ31は例えば、エラー通知のための通知データを、店内通信ネットワーク7及びアクセスポイント6を介して対象端末へと送信する。プロセッサ31は、エラーの通知であることを識別するための識別データを通知データに含める。プロセッサ31は、エラーの原因を表すエラーコードを通知データに含めてもよい。そしてプロセッサ31は、これをもって仲介処理を終了する。
Now, after the processor 31 in the mobile controller 3 finishes the check-in process, it proceeds to ACT202 in FIG. 15.
As ACT 202, the processor 31 confirms whether the check-in process has been completed normally. If the check-in process cannot be completed normally due to some abnormality, the processor 31 determines NO and proceeds to ACT203.
In ACT 203, the processor 31 notifies the target terminal of the error. For example, the processor 31 transmits notification data for error notification to the target terminal via the in-store communication network 7 and the access point 6. The processor 31 includes identification data for identifying that the notification is an error notification in the notification data. The processor 31 may include an error code indicating the cause of the error in the notification data. The processor 31 then ends the mediation process.

なお、以降において説明するモバイルコントローラ3から対象端末への各種の通知は、上記と同様に、通知の理由を識別するための識別データを含んだ通知データを店内通信ネットワーク7及びアクセスポイント6を介してモバイルコントローラ3から対象端末へと送ることにより実現される。 Note that various notifications from the mobile controller 3 to the target terminal, which will be explained below, are made by transmitting notification data including identification data for identifying the reason for the notification via the in-store communication network 7 and the access point 6, as described above. This is realized by sending the information from the mobile controller 3 to the target terminal.

プロセッサ31は一方、チェックイン処理を正常に完了することができたならばACT202にてYESと判定し、ACT204へと進む。
ACT204としてプロセッサ31は、対象端末に対してチェックイン完了を通知する。
On the other hand, if the processor 31 is able to successfully complete the check-in process, it determines YES in ACT202 and proceeds to ACT204.
As ACT 204, the processor 31 notifies the target terminal of completion of check-in.

ユーザ端末300においてプロセッサ301は、図9中のACT108にてチェックインを要求した後には、ACT109へと進む。
ACT109としてプロセッサ301は、チェックイン完了が通知されたか否かを確認する。そしてプロセッサ301は、該当の通知を確認できないならばNOと判定し、ACT110へと進む。
ACT110としてプロセッサ301は、チェックインのエラーが通知されたか否かを確認する。そしてプロセッサ301は、該当の通知を確認できないならばNOと判定し、ACT109へと戻る。
かくしてプロセッサ301はACT109及びACT110としては、チェックインの完了又はエラーが通知されるのを待ち受ける。そしてプロセッサ301は、図14中のACT188又は図15中のACT203におけるエラー通知のための通知データが無線通信ユニット306により受信されたならばACT110にてYESと判定し、ACT111へと進む。
After the processor 301 in the user terminal 300 requests check-in in ACT108 in FIG. 9, the process proceeds to ACT109.
In ACT 109, the processor 301 checks whether check-in completion has been notified. If the processor 301 cannot confirm the corresponding notification, the processor 301 determines NO and proceeds to ACT110.
As ACT 110, the processor 301 checks whether a check-in error has been notified. If the processor 301 cannot confirm the corresponding notification, the processor 301 determines NO and returns to ACT109.
In this manner, the processor 301 waits for notification of check-in completion or error as ACT 109 and ACT 110. If the wireless communication unit 306 receives notification data for error notification in ACT188 in FIG. 14 or ACT203 in FIG. 15, the processor 301 determines YES in ACT110 and proceeds to ACT111.

ACT111としてプロセッサ301は、エラー画面をタッチパネル304に表示させる。エラー画面は、チェックインできないことを客に報知するものとして定められた画面である。なおプロセッサ301は例えば、図14中のACT188におけるエラー通知に対しては、店舗が混雑しているためにチェックインできないことを知らせるとともに、さらには暫く時間をおいてチェックインを試みるよう促すエラー画面を表示させる。なおプロセッサ301は、例えばエラー画面中に表したGUI要素の操作などによりエラー画面の表示解消が指示されたならば、ACT101に戻る。 As ACT 111, the processor 301 displays an error screen on the touch panel 304. The error screen is a screen designed to notify customers that check-in is not possible. Note that in response to the error notification in ACT 188 in FIG. 14, the processor 301, for example, notifies you that you cannot check in because the store is crowded, and also displays an error screen that prompts you to try checking in after a while. Display. Note that if the processor 301 is instructed to eliminate the display of the error screen by, for example, operating a GUI element displayed on the error screen, the processor 301 returns to ACT101.

プロセッサ301は一方、前述のチェックイン完了の通知のための通知データが無線通信ユニット306により受信されたならばACT109にてYESと判定し、図10中のACT112へと進む。
ACT112としてプロセッサ301は、一覧画面をタッチパネル304に表示させる。一覧画面は、登録済みの購入商品の一覧を表した画面である。
On the other hand, if the aforementioned notification data for notification of check-in completion is received by the wireless communication unit 306, the processor 301 determines YES in ACT 109, and proceeds to ACT 112 in FIG.
As ACT 112, the processor 301 displays a list screen on the touch panel 304. The list screen is a screen showing a list of registered purchased products.

図20は一覧画面SC1の一例を示す図である。
一覧画面SC1は、表示エリアAR11,AR12及びボタンBU11,BU12,BU13を含む。表示エリアAR11は、購入商品の総数と、購入商品の代金の総額とを表す。表示エリアAR12は、購入商品の一覧を表す。ボタンBU11は、購入商品の全てを取り消して買い物を中止することを客が宣言するためのソフトキーである。ボタンBU12は、購入商品として登録する商品のスキャンを開始することを客が宣言するためのソフトキーである。ボタンBU13は、会計を開始することを客が宣言するためのソフトキーである。
なお、図20は、まだ購入商品の登録が行われていない状態の一覧画面SC1を示している。このため、表示エリアAR11には総数及び総額としていずれも“0”を表し、表示エリアAR12には何も表さない。
FIG. 20 is a diagram showing an example of the list screen SC1.
List screen SC1 includes display areas AR11, AR12 and buttons BU11, BU12, BU13. Display area AR11 represents the total number of purchased products and the total price of the purchased products. Display area AR12 represents a list of purchased products. Button BU11 is a soft key used by the customer to declare that he/she wants to cancel all purchased items and cancel shopping. Button BU12 is a soft key used by the customer to declare to start scanning of products to be registered as purchased products. Button BU13 is a soft key for the customer to declare that he/she wants to start payment.
Note that FIG. 20 shows the list screen SC1 in a state where no purchased products have been registered yet. Therefore, the total number and the total amount are both "0" displayed in the display area AR11, and nothing is displayed in the display area AR12.

図10中のACT113としてプロセッサ301は、商品のスキャン開始が指定されたか否かを確認する。そしてプロセッサ301は、該当の指定が確認できなければNOと判定し、ACT114へと進む。
ACT114としてプロセッサ301は、数量の変更が指定されたか否かを確認する。そしてプロセッサ301は、該当の指定が確認できなければNOと判定し、ACT115へと進む。
ACT115としてプロセッサ301は、買い物の中止が指定されたか否かを確認する。そしてプロセッサ301は、該当の指定が確認できなければNOと判定し、ACT116へと進む。
ACT116としてプロセッサ301は、会計の開始が指定されたか否かを確認する。そしてプロセッサ301は、該当の指定が確認できなければNOと判定し、ACT113へと戻る。
かくしてプロセッサ301はACT113~ACT116としては、スキャン開始、数量、中止及び会計開始のいずれかが指定されるのを待ち受ける。
In ACT 113 in FIG. 10, the processor 301 confirms whether or not the start of product scanning has been designated. If the processor 301 cannot confirm the corresponding designation, the processor 301 determines NO and proceeds to ACT114.
As ACT 114, the processor 301 checks whether a change in quantity has been specified. If the processor 301 cannot confirm the corresponding designation, the processor 301 determines NO and proceeds to ACT115.
As ACT 115, the processor 301 confirms whether or not the cancellation of shopping has been specified. If the processor 301 cannot confirm the corresponding designation, the processor 301 determines NO and proceeds to ACT116.
As ACT 116, the processor 301 checks whether the start of accounting has been specified. If the processor 301 cannot confirm the corresponding designation, the processor 301 determines NO and returns to ACT113.
In this way, the processor 301 waits for any one of scan start, quantity, stop, and start of accounting to be specified as ACT113 to ACT116.

客は、商品を購入商品として登録するならば、一覧画面SC1におけるボタンBU12にタッチするなどの予め定められた操作によってスキャン開始を指定する。これに応じてプロセッサ301は、ACT113にてYESと判定し、ACT117へと進む。
ACT117としてプロセッサ301は、登録画面をタッチパネル304に表示させる。登録画面は、購入商品として登録する商品の商品コードを表したバーコードを読み取るように客に促す画面である。
When registering a product as a purchased product, the customer specifies the start of scanning by a predetermined operation such as touching the button BU12 on the list screen SC1. In response to this, the processor 301 determines YES in ACT113 and proceeds to ACT117.
As ACT 117, the processor 301 displays a registration screen on the touch panel 304. The registration screen is a screen that prompts the customer to read the barcode representing the product code of the product to be registered as a purchased product.

図21は登録画面SC2の一例を示す図である。
登録画面SC2は、表示エリアAR21、メッセージME21及びボタンBU21を含む。表示エリアAR21は、カメラ305で得られた画像を表示する。メッセージME21は、商品のバーコードを読み取るように客に促す文字メッセージである。ボタンBU21は、商品コードのスキャンを中止することを客が宣言するためのソフトキーである。
プロセッサ301は例えば、カメラ305を起動し、これによりカメラ305で得られた画像に、表示エリアAR21の範囲を表すラインと、メッセージME21及びボタンBU21とを表した画像を重ねて登録画面SC2を生成する。
FIG. 21 is a diagram showing an example of the registration screen SC2.
The registration screen SC2 includes a display area AR21, a message ME21, and a button BU21. Display area AR21 displays images obtained by camera 305. Message ME21 is a text message urging the customer to read the barcode of the product. Button BU21 is a soft key for the customer to declare to cancel scanning of the product code.
For example, the processor 301 activates the camera 305, and generates the registration screen SC2 by superimposing a line representing the range of the display area AR21, an image representing the message ME21, and the button BU21 on the image obtained by the camera 305. do.

図10中のACT118としてプロセッサ301は、バーコードが読み取れたか否かを確認する。このときにプロセッサ301は、カメラ305で得られる画像を解析し、バーコードの読み取りを試みる。このバーコードの読み取りは、スマホPOSアプリAP301に基づく処理として行われてもよいし、バーコードの読み取り用の別のアプリケーションプログラムに基づく処理として行われてもよい。そしてプロセッサ301は、バーコードが読み取れないならばNOと判定し、ACT119へと進む。
ACT119としてプロセッサ301は、スキャンの中止が指定されたか否かを確認する。そしてプロセッサ301は、該当の指定が確認できないならばNOと判定し、ACT118に戻る。
かくしてプロセッサ301はACT118及びACT119としては、バーコードが読み取れるか、スキャン中止が指定されるのを待ち受ける。
In ACT118 in FIG. 10, the processor 301 checks whether the barcode has been read. At this time, the processor 301 analyzes the image obtained by the camera 305 and attempts to read the barcode. This barcode reading may be performed as a process based on the smartphone POS application AP301, or may be performed as a process based on another application program for reading barcodes. If the barcode cannot be read, the processor 301 determines NO and proceeds to ACT119.
In ACT 119, the processor 301 checks whether or not canceling the scan is specified. If the corresponding designation cannot be confirmed, the processor 301 determines NO and returns to ACT118.
Thus, in ACT 118 and ACT 119, the processor 301 waits until the barcode is read or the scan is designated to be stopped.

客は、今回のスキャンは行わずに一覧画面に戻ることを希望する場合には、ボタンBU21にタッチするなどの予め定められた操作によってスキャン中止を指定する。これに応じてプロセッサ301は、ACT119にてYESと判定し、ACT112へと戻る。 If the customer wishes to return to the list screen without performing the current scan, the customer specifies to cancel the scan by a predetermined operation such as touching the button BU21. In response, the processor 301 determines YES in ACT119, and returns to ACT112.

客は、登録画面がタッチパネル304に表示されたならば、購入商品として登録しようとする商品に表示されたバーコードが表示エリアAR21に映り込むようにカメラ305を商品に向ける。これに応じてバーコードが読み取れたならばプロセッサ301は、ACT118にてYESと判定し、ACT120へと進む。
ACT120としてプロセッサ301は、モバイルコントローラ3に対して登録を要求する。プロセッサ301はここで送信する要求データには、読み取ったバーコードが表すデータ(以下、バーコードデータと称する)を含める。
ACT121としてプロセッサ301は、一覧画面の表示が指示されるのを待ち受ける。
When the registration screen is displayed on the touch panel 304, the customer points the camera 305 at the product so that the barcode displayed on the product to be registered as a purchased product is reflected in the display area AR21. If the barcode is read in response to this, the processor 301 determines YES in ACT118, and proceeds to ACT120.
As ACT 120, processor 301 requests registration from mobile controller 3. The request data transmitted by the processor 301 includes data represented by the read barcode (hereinafter referred to as barcode data).
As ACT 121, the processor 301 waits for an instruction to display a list screen.

プロセッサ301は、ACT113~ACT116の待受状態にあるときに、客が一覧画面SC1における個数を表しているエリアにタッチすると、一覧画面SC1に重ねて個数指定のためのリストボックスを表示させる。そしてこのリストボックスが操作されると、プロセッサ301はこれを数量の指定として受ける。そしてプロセッサ301はこの場合、図10中のACT114にてYESと判定し、図11中のACT122へと進む。 When the customer touches the area representing the number of items on the list screen SC1 while in the standby state of ACT113 to ACT116, the processor 301 displays a list box for specifying the number of items overlaid on the list screen SC1. When this list box is operated, the processor 301 receives this as a quantity specification. In this case, the processor 301 determines YES in ACT114 in FIG. 10, and proceeds to ACT122 in FIG.

ACT122としてプロセッサ301は、指定数が0であるか否かを確認する。そしてプロセッサ301は、指定数が0ではなければNOと判定し、ACT123へと進む。
ACT123としてプロセッサ301は、モバイルコントローラ3に対して数量変更を要求する。プロセッサ301はここで送信する要求データには、数量が指定された商品を特定するための特定データと指定数を含める。特定データは、商品コードでもよいし、購入商品のリスト内で各購入商品を識別するための番号などのようにモバイルコントローラ3でのみ購入商品を特定可能なデータであってもよい。なお、特定コードとして商品コードを用いるならば、プロセッサ31は、一覧画面の表示を指示するための指示データに、各購入商品に関する商品コードを含める。
In ACT 122, the processor 301 checks whether the specified number is 0 or not. Then, the processor 301 determines NO if the specified number is not 0, and proceeds to ACT123.
As ACT 123, the processor 301 requests the mobile controller 3 to change the quantity. The request data transmitted here by the processor 301 includes specific data for specifying the product for which the quantity is specified and the specified number. The specific data may be a product code, or may be data that allows only the mobile controller 3 to specify the purchased product, such as a number for identifying each purchased product in a list of purchased products. Note that if a product code is used as the specific code, the processor 31 includes the product code regarding each purchased product in the instruction data for instructing display of the list screen.

さて、プロセッサ301は、指定数が0であったならば、ACT122にてYESと判定し、ACT124へと進む。
ACT124としてプロセッサ301は、削除画面をタッチパネル304に表示させる。削除画面は、個数を0個とすることが指定された商品が購入商品から削除されることを客に報知する画面である。削除画面は、削除を指定するための削除ボタンと、個数を変更せずに個数の変更を指定する前の状態に戻ることを指定するための戻りボタンとを含む。
Now, if the specified number is 0, the processor 301 determines YES in ACT122, and proceeds to ACT124.
As ACT 124, the processor 301 displays a deletion screen on the touch panel 304. The deletion screen is a screen that notifies the customer that the product whose number is specified to be 0 will be deleted from the purchased products. The deletion screen includes a delete button for specifying deletion, and a return button for specifying to return to the state before specifying a change in the number without changing the number.

ACT125としてプロセッサ301は、削除が指定されたか否かを確認する。そしてプロセッサ301は、該当の指定を確認できないならばNOと判定し、ACT126へと進む。
ACT126としてプロセッサ301は、戻りが指定されたか否かを確認する。そしてプロセッサ301は、該当の指定を確認できないならばNOと判定し、ACT125へと戻る。
かくしてプロセッサ301はACT125及びACT126としては、削除又は戻りが指定されるのを待ち受ける。
In ACT 125, the processor 301 checks whether deletion is specified. If the processor 301 cannot confirm the relevant designation, it determines NO and proceeds to ACT126.
In ACT 126, the processor 301 checks whether return is specified. Then, if the processor 301 cannot confirm the corresponding designation, the processor 301 determines NO and returns to ACT125.
Thus, the processor 301 waits for deletion or return to be specified in ACT 125 and ACT 126.

客は、削除を取り止めて、数量の変更を指定する前の状態に戻ること望むならば、削除画面において戻りボタンにタッチするなどの予め定められた操作により戻りを指定する。これに応じてプロセッサ301は、ACT126にてYESと判定し、図10中のACT112へと戻る。この場合には、購入商品の登録状態は変更されないので、プロセッサ301は、削除画面を表示する前に表示していたのと同じ状態の一覧画面SC1をタッチパネル304に再び表示させる。 If the customer wishes to cancel the deletion and return to the state before specifying the quantity change, the customer specifies return by a predetermined operation such as touching the return button on the deletion screen. In response, the processor 301 determines YES in ACT126, and returns to ACT112 in FIG. In this case, since the registered state of the purchased product is not changed, the processor 301 causes the touch panel 304 to display again the list screen SC1 in the same state as that displayed before displaying the deletion screen.

客は、削除で間違いないならば、削除画面において削除ボタンにタッチするなどの予め定められた操作により削除を指定する。これに応じてプロセッサ301は、ACT125にてYESと判定し、ACT127へと進む。
ACT127としてプロセッサ301は、モバイルコントローラ3に対して削除を要求する。プロセッサ301はここで送信する要求データには、削除が指定された商品を特定するための特定データを含める。
If the customer is sure about the deletion, he/she specifies the deletion by a predetermined operation such as touching a delete button on the deletion screen. In response, the processor 301 determines YES in ACT125, and proceeds to ACT127.
In ACT 127, the processor 301 requests the mobile controller 3 to delete it. The request data transmitted here by the processor 301 includes specific data for specifying the product designated for deletion.

プロセッサ301は、ACT123にて数量変更を要求したのち、あるいはACT127にて削除を要求したのちには、ACT128へと進む。
ACT128としてプロセッサ301は、一覧画面の表示が指示されるのを待ち受ける。
After the processor 301 requests a quantity change in ACT 123 or requests deletion in ACT 127, the processor 301 proceeds to ACT 128.
In ACT 128, the processor 301 waits for an instruction to display a list screen.

さて、モバイルコントローラ3においてプロセッサ31は、図15中のACT204にてチェックイン完了の通知を行った後には、ACT205へと進む。
ACT205としてプロセッサ31は、購入商品の変更が要求されたか否かを確認する。そしてプロセッサ31は、該当の要求が確認できなければNOと判定し、ACT206へと進む。
ACT206としてプロセッサ31は、購入商品の取消が要求されたか否かを確認する。そしてプロセッサ31は、該当の要求が確認できなければNOと判定し、ACT207へと進む。
ACT207としてプロセッサ31は、会計が要求されたか否かを確認する。そしてプロセッサ31は、該当の要求が確認できなければNOと判定し、ACT208へと進む。
ACT208としてプロセッサ31は、制限時間が経過したか否かを確認する。そしてプロセッサ31は、該当の状況でなければNOと判定しACT205へと戻る。
かくしてプロセッサ31はACT205~ACT208としては、変更、取消及び会計のいずれかが要求されるか、制限時間が経過するのを待ち受ける。そしてプロセッサ31は、登録、数量変更及び削除のいずれかが、対象端末となっているユーザ端末300から前述のように要求されたならばACT205にてYESと判定し、図16中のACT209へと進む。
Now, in the mobile controller 3, the processor 31 notifies the completion of check-in in ACT204 in FIG. 15, and then proceeds to ACT205.
In ACT 205, the processor 31 checks whether a change in the purchased product is requested. If the processor 31 cannot confirm the corresponding request, the processor 31 determines NO and proceeds to ACT206.
As ACT 206, the processor 31 checks whether cancellation of the purchased product is requested. Then, the processor 31 determines NO if the corresponding request cannot be confirmed, and proceeds to ACT207.
As ACT 207, processor 31 checks whether accounting has been requested. Then, if the processor 31 cannot confirm the corresponding request, the processor 31 determines NO and proceeds to ACT208.
As ACT 208, the processor 31 checks whether the time limit has elapsed. Then, the processor 31 determines NO if the situation is not applicable, and returns to ACT205.
Thus, in ACT 205 to ACT 208, the processor 31 waits for any one of change, cancellation, and accounting to be requested, or for the time limit to elapse. If the user terminal 300, which is the target terminal, requests registration, quantity change, or deletion as described above, the processor 31 determines YES in ACT 205, and proceeds to ACT 209 in FIG. move on.

ACT209としてプロセッサ31は、処理対象となっている取引の取引コードの通知を伴って、ユーザ端末300からの要求を仮想POSサーバ2に転送する。プロセッサ31はこのとき、ユーザ端末300から送られてきた要求データをそのまま仮想POSサーバ2に転送してもよいし、何らかの処理による変換後の要求データを仮想POSサーバ2に送信してもよい。ただしプロセッサ31は、ユーザ端末300から送られてきた要求データに含まれたバーコードデータ又は特定データは、仮想POSサーバ2へと通知する。 As ACT 209, the processor 31 transfers the request from the user terminal 300 to the virtual POS server 2, along with notification of the transaction code of the transaction to be processed. At this time, the processor 31 may transfer the request data sent from the user terminal 300 to the virtual POS server 2 as is, or may send the request data after conversion by some processing to the virtual POS server 2. However, the processor 31 notifies the virtual POS server 2 of the barcode data or specific data included in the request data sent from the user terminal 300.

仮想POSサーバ2においてプロセッサ21は、図18中のACT302~ACT305の待受状態にあるときに登録、数量変更又は削除に関する要求データがモバイルコントローラ3から転送されてきたならば、ACT302にてYESと判定し、ACT307へと進む。
ACT307としてプロセッサ21は、転送された要求データでの要求に応じて取引データベースDB21を更新する。プロセッサ21は例えば、登録が要求された場合には、要求データに含まれたバーコードデータが、既存のPOS端末に備えられたバーコードスキャナにより読み取られたものであると見做して、既存のPOS端末と同様な処理によって購入商品の登録を試みる。ただし、何らかの事情により、バーコードデータが表す商品コードが商品データベースに登録されていない場合がある。また、商品には、商品コードを表すのとは別のバーコードが表示されている場合もある。そして、これらの場合にプロセッサ21は、購入商品の登録を行えず、エラーとする。このようにプロセッサ21は、正規のバーコード読み取りに基づく購入商品の登録を行う。プロセッサ21は例えば、数量変更が要求された場合には、数量変更の対象となる商品に関して取引データベースDB21に既に示されている数量を変更する。プロセッサ21は例えば、削除が要求された場合には、対象となる商品を購入商品から除外するように取引データベースDB21を更新する。
If the processor 21 in the virtual POS server 2 receives request data regarding registration, quantity change, or deletion from the mobile controller 3 while in the standby state in ACT302 to ACT305 in FIG. 18, it selects YES in ACT302. After making a determination, proceed to ACT307.
As ACT 307, the processor 21 updates the transaction database DB21 in response to the request with the transferred request data. For example, when registration is requested, the processor 21 assumes that the barcode data included in the request data has been read by a barcode scanner installed in an existing POS terminal, and uses the existing POS terminal. Attempts to register purchased items using the same process as the POS terminal. However, for some reason, the product code represented by the barcode data may not be registered in the product database. Additionally, a product may have a barcode displayed on it that is different from the product code. In these cases, the processor 21 is unable to register the purchased product and considers it an error. In this way, the processor 21 registers the purchased product based on reading the regular barcode. For example, when a quantity change is requested, the processor 21 changes the quantity already shown in the transaction database DB21 for the product subject to the quantity change. For example, when deletion is requested, the processor 21 updates the transaction database DB21 to exclude the target product from the purchased products.

ACT308としてプロセッサ21は、上記のような処理の結果を表した結果データを、モバイルコントローラ3に送信する。プロセッサ21は、購入商品の登録が正しく行えた場合には、正規登録の通知であることを識別するための識別データと、登録した商品の商品コード、商品名及び価格を結果データに含める。プロセッサ21は、数量を変更した場合には、変更した商品の商品コードと、変更後の個数とを結果データに含める。プロセッサ21は、購入商品を削除した場合には、購入商品から除外した商品の商品コードを結果データに含める。またプロセッサ21は、エラーとした場合には、エラーの通知であることを識別するための識別データと、登録要求で送られてきたバーコードデータとを結果データに含める。プロセッサ21は、結果データを送信し終えたならば、ACT302~ACT305の待受状態に戻る。 As ACT 308, the processor 21 transmits result data representing the result of the above processing to the mobile controller 3. If the purchased product is successfully registered, the processor 21 includes identification data for identifying that the notification is a regular registration notice, and the product code, product name, and price of the registered product in the result data. When the quantity is changed, the processor 21 includes the product code of the changed product and the changed number in the result data. When the purchased product is deleted, the processor 21 includes the product code of the product excluded from the purchased products in the result data. Further, when the processor 21 determines that the notification is an error, the processor 21 includes identification data for identifying that the notification is an error notification and the barcode data sent in the registration request in the result data. When the processor 21 finishes transmitting the result data, it returns to the standby state in ACT302 to ACT305.

モバイルコントローラ3にてプロセッサ31は、ACT209にて要求を転送したのちには、ACT210へと進む。
ACT210としてプロセッサ31は、上記のようにして仮想POSサーバから送信される結果データを取得する。プロセッサ31は、取得した結果データをメインメモリ32又は補助記憶ユニット33に保存する。
After transferring the request in ACT209, the processor 31 in the mobile controller 3 proceeds to ACT210.
As the ACT 210, the processor 31 acquires the result data transmitted from the virtual POS server as described above. The processor 31 stores the obtained result data in the main memory 32 or the auxiliary storage unit 33.

ACT211としてプロセッサ31は、上記の結果データに基づいて登録データベースDB32を更新する。この登録データベースDB32の更新は、例えば以下のように行われる。
第1のケース:正規登録の通知であり、処理対象となっている取引が関連付けられたデータレコードDR2に、通知された商品コードを含んだ登録データが含まれていない場合。
この場合にプロセッサ31は、処理対象となっている取引が関連付けられたデータレコードDR2に既に存在する最後のフィールドの次に新たなフィールドを追加し、当該フィールドに新たな登録データを追加する。プロセッサ31は、新たな登録データには、通知された商品コードと、エラーではないことを表す“0”としたエラーフラグと、通知された商品名及び価格と、“1”とした個数と、取り消されていないことを表す“0”とした取消フラグとを含める。かくしてこのケースで追加される登録データは、図6の右上側に示されるような構造となる。
As the ACT 211, the processor 31 updates the registration database DB32 based on the above result data. The registration database DB32 is updated, for example, as follows.
First case: This is a notification of regular registration, and the data record DR2 associated with the transaction to be processed does not include registration data that includes the notified product code.
In this case, the processor 31 adds a new field next to the last field that already exists in the data record DR2 associated with the transaction to be processed, and adds new registered data to the field. The processor 31 includes, in the new registration data, the notified product code, the error flag set to "0" to indicate that there is no error, the notified product name and price, and the number set to "1". A cancellation flag of "0" indicating that the cancellation has not been canceled is included. Thus, the registered data added in this case has a structure as shown in the upper right side of FIG.

第2のケース:正規登録の通知であり、処理対象となっている取引が関連付けられたデータレコードDR2に、通知された商品コードを含んだ登録データが含まれているものの、当該登録データの取消フラグが取り消されていることを表す“1”となっている場合。
この場合にプロセッサ31は、上記の第1のケースの場合と同様に処理する。
Second case: This is a formal registration notification, and the data record DR2 associated with the transaction to be processed includes registration data that includes the notified product code, but the registration data is canceled. When the flag is "1" indicating that it has been canceled.
In this case, the processor 31 processes in the same manner as in the first case described above.

第3のケース:正規登録の通知であり、処理対象となっている取引が関連付けられたデータレコードDR2に、通知された商品コードを含んだ登録データが含まれており、当該登録データの取消フラグが“0”となっている場合。
この場合にプロセッサ31は、通知された商品コードを含み、取消フラグが“0”となっている登録データに含まれる個数の値を、1つ大きな値に書き替える。
Third case: This is a notification of regular registration, and the data record DR2 associated with the transaction to be processed includes registration data that includes the notified product code, and the cancellation flag of the registration data is “0”.
In this case, the processor 31 rewrites the value of the number included in the registered data that includes the notified product code and whose cancellation flag is "0" to a value that is one larger.

第4のケース:数量変更の通知である場合。
この場合にプロセッサ31は、処理対象となっている取引が関連付けられたデータレコードDR2から、通知された商品コードを含んだ登録データを見つけ出す。そしてプロセッサ31は、該当する登録データに含まれる個数を、結果データに含まれた個数に書き替える。
Fourth case: When the notification is a change in quantity.
In this case, the processor 31 finds registered data including the notified product code from the data record DR2 associated with the transaction to be processed. Then, the processor 31 rewrites the number included in the corresponding registration data to the number included in the result data.

第5のケース:削除の通知である場合。
この場合にプロセッサ31は、処理対象となっている取引が関連付けられたデータレコードDR2から、通知された商品コードを含んだ登録データを見つけ出す。そしてプロセッサ31は、該当する登録データに含まれる取消フラグを“1”に変更する。
Fifth case: When it is a notice of deletion.
In this case, the processor 31 finds registered data including the notified product code from the data record DR2 associated with the transaction to be processed. Then, the processor 31 changes the cancellation flag included in the corresponding registration data to "1".

第6のケース:エラーの通知である場合。
この場合にプロセッサ31は、処理対象となっている取引が関連付けられたデータレコードDR2に既に存在する最後のフィールドの次に新たなフィールドを追加し、当該フィールドに新たな登録データを追加する。プロセッサ31は、新たな登録データには、通知されたバーコードデータと、エラーを表す“1”としたエラーフラグとを含める。かくしてこのケースで追加される登録データは、図6の右下側に示されるような構造となる。
Sixth case: When it is an error notification.
In this case, the processor 31 adds a new field next to the last field that already exists in the data record DR2 associated with the transaction to be processed, and adds new registered data to the field. The processor 31 includes the notified barcode data and an error flag set to "1" indicating an error in the new registration data. Thus, the registered data added in this case has a structure as shown in the lower right side of FIG.

このようにプロセッサ31により更新されることにより登録データベースDB32は、仮想POSサーバ2で登録済みの購入商品のリストを表すとともに、これに加えてエラーとなったバーコード読み取りを記録したものとなる。
なおプロセッサ31は、登録要求で送られてきたバーコードデータをメインメモリ32又は補助記憶ユニット33に保存しておき、上記の第6のケースにおいては、この保存してあるバーコードデータを登録データに含めてもよい。そしてこの場合には、仮想POSサーバ2においてプロセッサ21は、結果データにバーコードデータを含めなくてもよい。またプロセッサ31は、保存してあるバーコードデータから商品コードを取り出し、この商品コードに基づいて第1のケース~第5のケースの処理を行ってもよい。また商品名及び価格は、プロセッサ31が商品コードに基づいて店舗サーバ1などから取得してもよい。
By being updated by the processor 31 in this manner, the registration database DB32 represents a list of purchased products that have been registered in the virtual POS server 2, and also records barcode readings that have resulted in errors.
Note that the processor 31 stores the barcode data sent in the registration request in the main memory 32 or the auxiliary storage unit 33, and in the above-mentioned sixth case, the stored barcode data is used as the registration data. May be included in In this case, the processor 21 in the virtual POS server 2 does not need to include barcode data in the result data. The processor 31 may also extract a product code from the stored barcode data and process the first to fifth cases based on this product code. Further, the product name and price may be acquired by the processor 31 from the store server 1 or the like based on the product code.

ACT212としてプロセッサ31は、一覧画面の表示をユーザ端末300に対して指示する。プロセッサ31は例えば、一覧画面の表示指示であることを識別するための識別データを含んだ指示データを、店内通信ネットワーク7及びアクセスポイント6を介してユーザ端末300へと送信する。プロセッサ31は、処理対象となっている取引が登録データベースDB32にて関連付けられたデータレコードDR2に含まれている商品コード、商品名、価格及び個数を指示データに含める。またプロセッサ31は、今回の登録がエラーとされているならば、その旨を表すエラーデータを指示データに含める。そしてプロセッサ31はこののち、図15中のACT205~ACT208の待受状態に戻る。 As ACT 212, the processor 31 instructs the user terminal 300 to display a list screen. For example, the processor 31 transmits instruction data including identification data for identifying that the instruction is to display a list screen to the user terminal 300 via the in-store communication network 7 and the access point 6. The processor 31 includes in the instruction data the product code, product name, price, and quantity included in the data record DR2 associated with the transaction to be processed in the registration database DB32. Furthermore, if the current registration is an error, the processor 31 includes error data indicating this in the instruction data. Thereafter, the processor 31 returns to the standby state in ACT205 to ACT208 in FIG.

なお、以降において説明するモバイルコントローラ3からユーザ端末300への各種の指示は、上記と同様に、指示の理由を識別するための識別データを含んだ指示データを店内通信ネットワーク7及びアクセスポイント6を介してモバイルコントローラ3からユーザ端末300へと送ることにより実現される。 Note that various instructions from the mobile controller 3 to the user terminal 300, which will be explained below, are sent to the in-store communication network 7 and the access point 6 by sending instruction data including identification data for identifying the reason for the instruction, as described above. This is realized by sending the data from the mobile controller 3 to the user terminal 300 via the mobile controller 3.

上述の第1のケース~第3のケース及び第6のケースのいずれかにおける結果データがユーザ端末300にて無線通信ユニット306により受信されると、プロセッサ301は図10中のACT121でYESと判定する。また上述の第4のケース又は第5のケースにおける結果データが無線通信ユニット306により受信されると、プロセッサ301は図11中のACT128でYESと判定する。そしてこれらの場合にプロセッサ301は、いずれも図10中のACT112へと戻り、再び一覧画面SC1をタッチパネル304に表示させる。このときにプロセッサ301は、一覧画面SC1を、指示データに含まれた購入商品の商品名、価格及び個数を表す画面とする。またプロセッサ301は、指示データにエラーデータが含まれるならば、正しく登録されなかった旨を一覧画面SC1に追加して表す。 When the result data in any of the first to third cases and sixth cases described above is received by the wireless communication unit 306 at the user terminal 300, the processor 301 determines YES in ACT121 in FIG. do. Further, when the result data in the fourth case or the fifth case described above is received by the wireless communication unit 306, the processor 301 determines YES in ACT128 in FIG. In these cases, the processor 301 returns to ACT112 in FIG. 10 and displays the list screen SC1 on the touch panel 304 again. At this time, the processor 301 sets the list screen SC1 as a screen showing the product name, price, and quantity of the purchased products included in the instruction data. Further, if the instruction data includes error data, the processor 301 adds a message to the list screen SC1 to indicate that the instruction data has not been correctly registered.

図22は購入商品が登録済みである状態での一覧画面SC1の一例を示す図である。
図22に示す一覧画面SC1は、商品名が“AAA”であり、価格が120円である商品が1個、商品名が“BBB”であり、価格が98円である商品が2個、そして商品名が“CCC”であり、価格が1,024円である商品が1個、購入商品として登録済みである場合の例である。図22に示す一覧画面SC1では、表示エリアAR12には、これらの登録済みの商品に関する商品名、価格及び個数を表している。また表示エリアAR11には、総数として“4”を表すとともに、総額として“1,340”を表している。なお、商品名の左側の破線で囲まれたエリアは、アイコンを表示するためのエリアを表す。当該エリアを表す破線は、実際には一覧画面SC1には表されない。
FIG. 22 is a diagram showing an example of the list screen SC1 in a state where purchased products have been registered.
The list screen SC1 shown in FIG. 22 has one product with the product name "AAA" and a price of 120 yen, two products with the product name "BBB" and a price of 98 yen, and This is an example in which one product whose product name is "CCC" and whose price is 1,024 yen has been registered as a purchased product. In the list screen SC1 shown in FIG. 22, a display area AR12 displays product names, prices, and quantities regarding these registered products. Furthermore, the display area AR11 shows "4" as the total number and "1,340" as the total amount. Note that the area surrounded by a broken line to the left of the product name represents an area for displaying an icon. The broken line representing the area is not actually displayed on the list screen SC1.

客は、既に登録した購入商品の全てをキャンセルし、買い物を中止したい場合には、一覧画面SC1においてボタンBU11にタッチするなどの予め定められた操作により中止を指定する。これに応じてプロセッサ301は、図10中のACT115にてYESと判定し、図11中のACT129へと進む。
ACT129としてプロセッサ301は、取消画面をタッチパネル304に表示させる。取消画面は、既に登録した購入商品の全てが取り消されることを客に報知する画面である。取消画面は、取消実行を指定するための実行ボタンと、個数を変更せずに個数の変更を指定する前の状態に戻ることを指定するための戻りボタンとを含む。
If the customer wants to cancel all of the purchased products that have already been registered and cancel the shopping, the customer specifies cancellation by a predetermined operation such as touching the button BU11 on the list screen SC1. In response, the processor 301 determines YES in ACT115 in FIG. 10, and proceeds to ACT129 in FIG.
As ACT 129, the processor 301 displays a cancellation screen on the touch panel 304. The cancellation screen is a screen that notifies the customer that all purchased products that have already been registered will be cancelled. The cancellation screen includes an execution button for designating cancellation, and a return button for designating returning to the state before designating a change in the number without changing the number.

ACT130としてプロセッサ301は、取消実行が指定されたか否かを確認する。そしてプロセッサ301は、該当の指定を確認できないならばNOと判定し、ACT131へと進む。
ACT131としてプロセッサ301は、戻りが指定されたか否かを確認する。そしてプロセッサ301は、該当の指定を確認できないならばNOと判定し、ACT130へと戻る。
かくしてプロセッサ301はACT130及びACT131としては、取消実行又は戻りが指定されるのを待ち受ける。
As ACT 130, the processor 301 checks whether cancellation execution has been specified. If the processor 301 cannot confirm the corresponding designation, it determines NO and proceeds to ACT131.
In ACT 131, the processor 301 checks whether return is specified. Then, if the processor 301 cannot confirm the corresponding designation, the processor 301 determines NO and returns to ACT130.
In this way, the processor 301 waits for cancellation execution or return to be specified as ACT130 and ACT131.

客は、そのまま買い物を続けるならば、取消画面において戻りボタンにタッチするなどの予め定められた操作により戻りを指定する。これに応じてプロセッサ301は、ACT131にてYESと判定し、図10中のACT112へと戻り、再び一覧画面SC1をタッチパネル304に表示させる。この場合には、購入商品の登録状態は変更されないので、プロセッサ301は、取消画面を表示する前に表示していたのと同じ状態の一覧画面SC1をタッチパネル304に再び表示させる。 If the customer wishes to continue shopping, he/she specifies return through a predetermined operation such as touching a return button on the cancellation screen. In response, the processor 301 determines YES in ACT131, returns to ACT112 in FIG. 10, and displays the list screen SC1 on the touch panel 304 again. In this case, since the registered state of the purchased product is not changed, the processor 301 causes the touch panel 304 to display again the list screen SC1 in the same state as that displayed before displaying the cancellation screen.

客は、買い物を取り止めるのであれば、取消画面において実行ボタンにタッチするなどの予め定められた操作により取消実行を指定する。これに応じてプロセッサ301は、ACT130にてYESと判定し、ACT132へと進む。
ACT132としてプロセッサ301は、モバイルコントローラ3に対して取消を要求する。
If the customer wishes to cancel the shopping, he or she specifies the cancellation through a predetermined operation such as touching an execution button on the cancellation screen. In response, the processor 301 determines YES in ACT130, and proceeds to ACT132.
As ACT 132, the processor 301 requests the mobile controller 3 to cancel.

モバイルコントローラ3にてプロセッサ31は、上記のようにユーザ端末300から取消が要求されたならば、図15中のACT206にてYESと判定し、図16中のACT213へと進む。
ACT213としてプロセッサ31は、処理対象となっている取引の取引コードの通知を伴って、取消の要求を仮想POSサーバ2に転送する。プロセッサ31はこのとき、ユーザ端末300から送られてきた要求データをそのまま仮想POSサーバ2に転送してもよいし、何らかの処理による変換後の要求データを仮想POSサーバ2に送信してもよい。
If the cancellation is requested from the user terminal 300 as described above, the processor 31 in the mobile controller 3 determines YES in ACT 206 in FIG. 15, and proceeds to ACT 213 in FIG. 16.
As ACT 213, the processor 31 transfers a cancellation request to the virtual POS server 2 along with notification of the transaction code of the transaction being processed. At this time, the processor 31 may transfer the request data sent from the user terminal 300 to the virtual POS server 2 as is, or may send the request data after conversion by some processing to the virtual POS server 2.

仮想POSサーバ2においてプロセッサ21は、図18中のACT302~ACT305の待受状態にあるときに取消に関する要求データがモバイルコントローラ3から転送されてきたならば、ACT303にてYESと判定し、ACT309へと進む。
ACT309としてプロセッサ21は、転送された要求データでの要求に応じて取引データベースDB21を更新する。プロセッサ21は例えば、モバイルコントローラ3から送られた要求データによる要求を、既存のPOS端末に備えられた入力デバイスにより入力された取消指示であると見做して、既存のPOS端末と同様な処理によって、通知された取引コードに関連付けて登録済みの商品の全てを購入商品から除外するように取引データベースDB21を更新する。
If the processor 21 in the virtual POS server 2 receives request data regarding cancellation from the mobile controller 3 while in the standby state in ACT302 to ACT305 in FIG. 18, it determines YES in ACT303 and proceeds to ACT309. and proceed.
As ACT 309, the processor 21 updates the transaction database DB21 in response to the request with the transferred request data. For example, the processor 21 regards the request based on the request data sent from the mobile controller 3 as a cancellation instruction input by an input device provided in an existing POS terminal, and performs the same processing as the existing POS terminal. As a result, the transaction database DB21 is updated so that all registered products associated with the notified transaction code are excluded from the purchased products.

ACT310としてプロセッサ21は、上記のような処理の結果を表した結果データを、モバイルコントローラ3に送信する。プロセッサ21は、購入商品から除外した全商品の商品コードを結果データに含める。プロセッサ21は、結果データを送信し終えたならば、ACT302~ACT305の待受状態に戻る。 As ACT 310, processor 21 transmits result data representing the result of the above processing to mobile controller 3. The processor 21 includes the product codes of all products excluded from the purchased products in the result data. When the processor 21 finishes transmitting the result data, it returns to the standby state in ACT302 to ACT305.

以上のようにしてプロセッサ21は、対象端末で受けられた操作に応じて取引の内容を決定する。かくして仮想POSアプリAP21に基づく情報処理をプロセッサ21が実行することによって、プロセッサ21を中枢部分とするコンピュータは決定手段として機能する。 As described above, the processor 21 determines the details of the transaction according to the operation received at the target terminal. As the processor 21 executes information processing based on the virtual POS application AP21, the computer having the processor 21 as its core functions as a determining means.

モバイルコントローラ3にてプロセッサ31は、ACT213にて要求を転送したのちには、ACT214へと進む。
ACT214としてプロセッサ31は、上記のようにして仮想POSサーバから送信される結果データを取得する。プロセッサ31は、取得した結果データをメインメモリ32又は補助記憶ユニット33に保存する。
After transferring the request in ACT213, the processor 31 in the mobile controller 3 proceeds to ACT214.
As the ACT 214, the processor 31 acquires the result data transmitted from the virtual POS server as described above. The processor 31 stores the obtained result data in the main memory 32 or the auxiliary storage unit 33.

ACT215としてプロセッサ31は、上記の結果データに基づいて登録データベースDB32を更新する。つまりプロセッサ31は、処理対象となっている取引が関連付けられたデータレコードDR2に含まれる登録データの全てに関して、“0”となっている取消フラグを“1”に変更する。
ACT216としてプロセッサ31は、ユーザ端末300に対して取消を通知する。そしてプロセッサ31はこののち、図15中のACT205~ACT208の待受状態に戻る。
As ACT215, the processor 31 updates the registration database DB32 based on the above result data. That is, the processor 31 changes the cancellation flag from "0" to "1" for all of the registered data included in the data record DR2 associated with the transaction to be processed.
As ACT 216, the processor 31 notifies the user terminal 300 of the cancellation. Thereafter, the processor 31 returns to the standby state in ACT205 to ACT208 in FIG.

さて、ユーザ端末300にてプロセッサ301は、図11中のACT132にて取消を要求したのちには、ACT133へと進む。
ACT133としてプロセッサ301は、モバイルコントローラ3から取消が通知されるのを待ち受ける。そしてプロセッサ301は、前述のように取消が通知されたならばYESと判定し、図9中のACT101へと戻る。
Now, the processor 301 in the user terminal 300 requests cancellation in ACT132 in FIG. 11, and then proceeds to ACT133.
As ACT 133, processor 301 waits for notification of cancellation from mobile controller 3. If the processor 301 is notified of cancellation as described above, it determines YES and returns to ACT101 in FIG.

客は、購入を希望する商品の全てを購入商品として登録し終えたならば、決済に進む。このときに客は、一覧画面SC1におけるボタンBU13にタッチするなどの予め定められた操作によって会計開始を指定する。これに応じてプロセッサ301は、図10中のACT116にてYESと判定し、ACT134へと進む。
ACT134としてプロセッサ301は、モバイルコントローラ3に対して会計を要求する。プロセッサ301はここで送信する要求データには、端末コードを含める。またプロセッサ301は、補助記憶ユニット303に電子レシートIDが記憶されているならば、当該電子レシートIDを上記の要求データに含める。
ACT135としてプロセッサ301は、会計画面の表示が指示されるのを待ち受ける。
Once the customer has finished registering all of the products he/she wishes to purchase as purchased products, the customer proceeds to payment. At this time, the customer specifies the start of checkout by a predetermined operation such as touching the button BU13 on the list screen SC1. In response, the processor 301 determines YES in ACT116 in FIG. 10, and proceeds to ACT134.
As ACT 134, processor 301 requests accounting from mobile controller 3. Processor 301 includes the terminal code in the request data transmitted here. Further, if the electronic receipt ID is stored in the auxiliary storage unit 303, the processor 301 includes the electronic receipt ID in the above request data.
As ACT 135, the processor 301 waits for an instruction to display the accounting screen.

モバイルコントローラ3にてプロセッサ31は、上記のようにユーザ端末300から会計が要求されたならば、図15中のACT207にてYESと判定し、図16中のACT217へと進む。
ACT217としてプロセッサ31は、ユーザ端末300から電子レシートIDが通知されているか否かを確認する。そしてプロセッサ31は、要求データに電子レシートIDが含まれていたならばYESと判定し、ACT218へと進む。
When the transaction is requested from the user terminal 300 as described above, the processor 31 in the mobile controller 3 determines YES in ACT 207 in FIG. 15, and proceeds to ACT 217 in FIG. 16.
In ACT 217, the processor 31 checks whether the electronic receipt ID has been notified from the user terminal 300. Then, if the request data includes the electronic receipt ID, the processor 31 determines YES and proceeds to ACT218.

ACT218としてプロセッサ31は、ユーザ端末300から通知された電子レシートIDを記録するべく取引管理データベースDB31を更新する。プロセッサ31は例えば、要求データに含まれた端末コードがフィールドF11にセットされているデータレコードDR1を取引管理データベースDB31から探し出す。そしてプロセッサ31は、該当するデータレコードDR1のフィールドF14に、要求データに含まれた電子レシートIDをセットする。なおプロセッサ31は、該当のデータレコードDR1のフィールドF14に既に電子レシートIDがセットされている場合には、これを要求データに含まれた電子レシートIDで上書きする。 As ACT 218, the processor 31 updates the transaction management database DB31 to record the electronic receipt ID notified from the user terminal 300. For example, the processor 31 searches the transaction management database DB31 for the data record DR1 in which the terminal code included in the request data is set in the field F11. Then, the processor 31 sets the electronic receipt ID included in the request data in the field F14 of the corresponding data record DR1. Note that if the electronic receipt ID has already been set in the field F14 of the corresponding data record DR1, the processor 31 overwrites this with the electronic receipt ID included in the request data.

プロセッサ31は、取引管理データベースDB31を更新し終えたならば、ACT219へと進む。なおプロセッサ31は、要求データに電子レシートIDが含まれていなかったならばACT217にてNOと判定し、ACT218をパスしてACT219へと進む。
ACT219としてプロセッサ31は、会計画面の表示をユーザ端末300に指示する。
After the processor 31 finishes updating the transaction management database DB31, it proceeds to ACT219. Note that if the request data does not include the electronic receipt ID, the processor 31 determines NO in ACT 217, passes ACT 218, and proceeds to ACT 219.
As ACT 219, the processor 31 instructs the user terminal 300 to display the checkout screen.

ユーザ端末300にてプロセッサ301は、上記のように会計画面の表示が指示されたならば図10中のACT135にてYESと判定し、図12中のACT136へと進む。
ACT136としてプロセッサ301は、会計画面をタッチパネル304に表示させる。会計画面は、代金の決済のための操作をユーザ端末300及び会計機5のいずれで行うかを客が選択するための画面である。
If the processor 301 in the user terminal 300 is instructed to display the checkout screen as described above, it determines YES in ACT 135 in FIG. 10, and proceeds to ACT 136 in FIG. 12.
As ACT 136, the processor 301 displays a checkout screen on the touch panel 304. The checkout screen is a screen for the customer to select whether to use the user terminal 300 or the checkout machine 5 to perform the operation for payment.

図23は会計画面SC3の一例を示す図である。
会計画面SC3は、表示エリアAR31、メッセージME31及びボタンBU31,BU32を含む。表示エリアAR31は、購入商品の総数と、購入商品の代金の総額とを表す。メッセージME31は、代金の決済のための操作をユーザ端末300及び会計機5のいずれで行うかを指定するように客に促す文字メッセージである。ボタンBU31は、ユーザ端末300を客が指定するソフトキーである。ボタンBU32は、会計機5を客が指定するためのソフトキーである。
FIG. 23 is a diagram showing an example of the checkout screen SC3.
The checkout screen SC3 includes a display area AR31, a message ME31, and buttons BU31 and BU32. Display area AR31 represents the total number of purchased products and the total price of the purchased products. The message ME31 is a text message prompting the customer to specify whether to perform the operation for payment of the price on the user terminal 300 or the accounting machine 5. Button BU31 is a soft key for specifying user terminal 300 by the customer. The button BU32 is a soft key for the customer to specify the accounting machine 5.

ACT137としてプロセッサ301は、ユーザ端末300が指定されたか否かを確認する。そしてプロセッサ301は、該当の指定が確認できないならばNOと判定し、ACT138へと進む。
ACT138としてプロセッサ301は、会計機5が指定されたか否かを確認する。そしてプロセッサ301は、該当の指定が確認できないならばNOと判定し、ACT137へと戻る。
かくしてプロセッサ301はACT137及びACT138としては、ユーザ端末300又は会計機5が指定されるのを待ち受ける。
In ACT 137, the processor 301 checks whether the user terminal 300 has been designated. Then, if the corresponding designation cannot be confirmed, the processor 301 determines NO and proceeds to ACT138.
In ACT 138, the processor 301 checks whether the accounting machine 5 has been designated. Then, if the corresponding designation cannot be confirmed, the processor 301 determines NO and returns to ACT137.
Thus, the processor 301 waits for the user terminal 300 or the accounting machine 5 to be designated as the ACT 137 and ACT 138.

客は、代金の決済のための操作をユーザ端末300で行いたい場合には、ボタンBU31にタッチするなどの予め定められた操作によりユーザ端末300を指定する。これに応じてプロセッサ301は、ACT137にてYESと判定し、ACT139へと進む。
ACT139としてプロセッサ301は、モバイルコントローラ3に対して決済を要求する。なおプロセッサ301は、決済を要求するための要求データには、決済のために必要な、クレジット番号又はオンライン決済サービス用の利用者コードなどのような決済情報を含めてもよい。
If the customer wishes to perform an operation for payment on the user terminal 300, the customer specifies the user terminal 300 by a predetermined operation such as touching the button BU31. In response to this, the processor 301 determines YES in ACT137, and proceeds to ACT139.
As ACT 139, processor 301 requests payment from mobile controller 3. Note that the processor 301 may include payment information necessary for payment, such as a credit number or a user code for an online payment service, in the request data for requesting payment.

モバイルコントローラ3にてプロセッサ31は、図16中のACT219にて会計画面の表示を指示したのちには、ACT220へと進む。
ACT220としてプロセッサ31は、決済が要求されたか否かを確認する。そしてプロセッサ31は、該当の要求が確認できないならばNOと判定し、ACT221へと進む。
ACT221としてプロセッサ31は、決済完了が通知されたか否かを確認する。そしてプロセッサ31は、該当の通知が確認できないならばNOと判定し、ACT220へと戻る。
かくしてプロセッサ31はACT220及びACT221としては、決済要求又は決済完了通知を待ち受ける。そしてプロセッサ31は、前述のようにユーザ端末300から決済が要求されたならばACT220にてYESと判定し、ACT222へと進む。
After the processor 31 in the mobile controller 3 instructs the display of the checkout screen in ACT219 in FIG. 16, the process proceeds to ACT220.
As ACT 220, the processor 31 checks whether payment is requested. Then, the processor 31 determines NO if the corresponding request cannot be confirmed, and proceeds to ACT221.
In ACT 221, the processor 31 checks whether the completion of payment has been notified. Then, the processor 31 determines NO if the corresponding notification cannot be confirmed, and returns to ACT220.
Thus, the processor 31 waits for a payment request or payment completion notification as ACT 220 and ACT 221. If payment is requested from the user terminal 300 as described above, the processor 31 determines YES in ACT 220 and proceeds to ACT 222.

ACT222としてプロセッサ31は、処理対象となっている取引の取引コードの通知を伴って、決済の要求を仮想POSサーバ2に転送する。プロセッサ31はこのとき、ユーザ端末300から送られてきた要求データをそのまま仮想POSサーバ2に転送してもよいし、何らかの処理による変換後の要求データを仮想POSサーバ2に送信してもよい。ただしプロセッサ31は、処理対象となっている取引に関して電子レシートIDを取得済みであるならば、当該の電子レシートIDを要求データに含める。プロセッサ31は例えば、要求データに含まれた端末コードがフィールドF11にセットされているデータレコードDR1を取引管理データベースDB31から探し出す。そしてプロセッサ31は、該当するデータレコードDR1のフィールドF14に電子レシートIDがセットされているならば、当該の電子レシートIDを要求データに含める。またプロセッサ31は、ユーザ端末300から送られてきた要求データが決済データを含むならば、この決済データはそのまま仮想POSサーバ2に送信する要求データに含める。 As ACT 222, the processor 31 transfers the payment request to the virtual POS server 2 along with notification of the transaction code of the transaction to be processed. At this time, the processor 31 may transfer the request data sent from the user terminal 300 to the virtual POS server 2 as is, or may send the request data after conversion by some processing to the virtual POS server 2. However, if the processor 31 has already acquired the electronic receipt ID for the transaction being processed, the processor 31 includes the electronic receipt ID in the request data. For example, the processor 31 searches the transaction management database DB31 for the data record DR1 in which the terminal code included in the request data is set in the field F11. Then, if the electronic receipt ID is set in the field F14 of the corresponding data record DR1, the processor 31 includes the electronic receipt ID in the request data. Further, if the request data sent from the user terminal 300 includes payment data, the processor 31 includes this payment data as is in the request data sent to the virtual POS server 2.

上記のデータレコードDR1のフィールドF14にセットされた電子レシートIDがユーザ端末300から送信されたものであるならば、プロセッサ31は、当該電子レシートIDを第2の情報処理装置としての仮想POSサーバ2へと、通信インタフェース34を用いて転送することとなる。
ACT223としてプロセッサ31は、決済完了が通知されるのを待ち受ける。
If the electronic receipt ID set in the field F14 of the data record DR1 is transmitted from the user terminal 300, the processor 31 transfers the electronic receipt ID to the virtual POS server 2 as the second information processing device. The communication interface 34 will be used to transfer the information to the destination.
As ACT 223, the processor 31 waits for notification of payment completion.

仮想POSサーバ2にてプロセッサ21は、図18中のACT302~ACT305の待受状態にあるときに決済に関する要求データがモバイルコントローラ3から転送されてきたならば、ACT304にてYESと判定し、図19中のACT311へと進む。
ACT311としてプロセッサ21は、転送された要求データでの要求に応じて代金を決済するための決済処理を実行する。プロセッサ21は例えば、モバイルコントローラ3から送られた要求データによる要求を、既存のPOS端末に備えられた入力デバイスにより入力された決済指示であると見做して、既存のPOS端末と同様な処理によって、通知された取引コードで識別される取引に関する代金を算出する。そしてプロセッサ21は、算出した代金の決済を決済サーバ500に要求する。プロセッサ21は例えば、データベース群DB11に含まれる利用者データベースを参照して、決済に適用する決済方法を判定するとともに、その決済方法での決済に用いる決済情報を取得する。利用者データベースに複数の決済方法又は複数の決済情報が登録されている場合には、それらのうちの1つをユーザ端末300における操作者による指示に応じて、あるいは予め定められた条件に従って選択する。なおプロセッサ21は例えば、要求データに決済情報が含まれるならば、決済に用いる決済方法を当該の決済情報に基づいて決定し、かつ当該の決済情報を決済に用いる決済情報としてもよい。
If request data regarding payment is transferred from the mobile controller 3 while in the standby state in ACT302 to ACT305 in FIG. 18, the processor 21 in the virtual POS server 2 determines YES in ACT304, Proceed to ACT311 in 19.
As ACT 311, the processor 21 executes payment processing for paying the price in response to the request based on the transferred request data. For example, the processor 21 regards the request based on the request data sent from the mobile controller 3 as a payment instruction input by an input device provided in an existing POS terminal, and performs the same processing as that of an existing POS terminal. calculates the price for the transaction identified by the notified transaction code. The processor 21 then requests the payment server 500 to settle the calculated price. For example, the processor 21 refers to the user database included in the database group DB11, determines the payment method to be applied to the payment, and acquires payment information to be used for the payment using the payment method. If multiple payment methods or multiple payment information are registered in the user database, one of them is selected in response to an instruction from an operator on the user terminal 300 or according to predetermined conditions. . Note that, for example, if the request data includes payment information, the processor 21 may determine the payment method to be used for the payment based on the payment information, and may use the payment information as the payment information to be used for the payment.

ACT312としてプロセッサ21は、電子レシートIDが通知されたか否かを確認する。プロセッサ21は例えば、決済を要求する要求データに電子レシートIDが含まれるならばYESと判定し、ACT313へと進む。
ACT313としてプロセッサ21は、上記のように決済を完了した取引に関する取引データを上記の要求データに含まれた電子レシートIDで識別される利用者が閲覧できるように電子レシートサーバ600に登録するための処理を行う。なお、この処理は、例えば既存の電子レシートサービスにより行われている処理と同様であってよい。プロセッサ21が取引データにどのようなデータを含めるかは、例えば電子レシートサービスでの規定に従う。
In ACT 312, the processor 21 checks whether the electronic receipt ID has been notified. For example, if the electronic receipt ID is included in the request data requesting payment, the processor 21 determines YES and proceeds to ACT313.
As ACT 313, the processor 21 registers the transaction data regarding the transaction for which the payment has been completed as described above in the electronic receipt server 600 so that the user identified by the electronic receipt ID included in the above request data can view it. Perform processing. Note that this process may be similar to the process performed by existing electronic receipt services, for example. The type of data that the processor 21 includes in the transaction data follows, for example, the regulations of the electronic receipt service.

客は、代金の決済のための操作を会計機5で行いたい場合には、会計画面SC3におけるボタンBU32にタッチするなどの予め定められた操作により会計機5を指定する。これに応じてユーザ端末300にてプロセッサ301は、図12中のACT138にてYESと判定し、ACT140へと進む。
ACT140としてプロセッサ301は、会計バーコード画面をタッチパネル304に表示させる。会計バーコード画面は、会計機5が仮想POSサーバ2から取引の内容に関するデータを取得するために必要となるデータを表した会計バーコードを表した画面である。なお、詳細な処理の図示は省略しているが、プロセッサ301は、モバイルコントローラ3を介して仮想POSサーバ2から会計バーコードを取得して、当該会計バーコードを会計バーコード画面に表す。
When the customer wishes to perform an operation for payment of the price using the accounting machine 5, the customer specifies the accounting machine 5 by a predetermined operation such as touching the button BU32 on the accounting screen SC3. In response, the processor 301 in the user terminal 300 determines YES in ACT138 in FIG. 12, and proceeds to ACT140.
As ACT 140, the processor 301 displays a checkout barcode screen on the touch panel 304. The accounting barcode screen is a screen showing an accounting barcode representing data necessary for the accounting machine 5 to acquire data regarding the details of the transaction from the virtual POS server 2. Although detailed processing is not shown, the processor 301 acquires the accounting barcode from the virtual POS server 2 via the mobile controller 3, and displays the accounting barcode on the accounting barcode screen.

客は、他の客により使用されていない会計機5が備えるスキャナに、会計バーコードを読み取らせる。これに応じて会計機5は、会計バーコードが表すデータに従って、仮想POSサーバ2に決済データの転送を要求する。例えば会計機5は、会計バーコードが表すデータに含まれる取引コードを含んだ要求データを仮想POSサーバ2に送信する。 The customer causes the scanner provided in the checkout machine 5, which is not used by other customers, to read the checkout barcode. In response, the accounting machine 5 requests the virtual POS server 2 to transfer payment data according to the data represented by the accounting barcode. For example, the accounting machine 5 transmits request data including the transaction code included in the data represented by the accounting barcode to the virtual POS server 2.

仮想POSサーバ2にてプロセッサ21は、図18に示すACT302~ACT305の待受状態にある取引処理の対象となっている取引の取引コードを含んだ転送要求のための要求データが受信されたならば、ACT305にてYESと判定し、図19中のACT314へと進む。
ACT314としてプロセッサ21は、取引処理の対象となっている取引の内容を表し、会計機5での決済のために必要な決済データを、転送を要求した会計機5に対して送信する。なお決済データは、例えば既存のセミセルフタイプの取引処理システムにおいて登録機から会計機へと転送されている決済データと同様なデータであってよい。
ACT315としてプロセッサ21は、上記のように決済データを送信した会計機5での決済が完了するのを待ち受ける。
When the processor 21 in the virtual POS server 2 receives request data for a transfer request that includes the transaction code of the transaction that is the subject of transaction processing in the standby state of ACT302 to ACT305 shown in FIG. For example, the determination is YES in ACT305, and the process proceeds to ACT314 in FIG.
As ACT 314, the processor 21 transmits payment data representing the details of the transaction to be processed and necessary for payment at the payment machine 5 to the payment machine 5 that requested the transfer. Note that the payment data may be, for example, data similar to payment data that is transferred from a registration machine to an accounting machine in an existing semi-self-type transaction processing system.
As ACT 315, the processor 21 waits for the payment to be completed at the accounting machine 5 that sent the payment data as described above.

会計機5は、仮想POSサーバ2から送信された決済データを受信したならば、操作者による操作を受けながら、取引の代金を決済する。また会計機5は、レシート又はクーポンなどの各種の印刷物を必要に応じて発行する。会計機5は、決済が完了したならば、その旨を仮想POSサーバ2に通知する。これに応じて仮想POSサーバ2にてプロセッサ21は、ACT315にてYESと判定し、ACT316へと進む。
なお、プロセッサ21はACT313にて電子レシート登録を終えたのちにも、ACT316へと進む。またプロセッサ21は、決済を要求する要求データに電子レシートIDが含まれないならばACT312にてNOと判定し、ACT313をパスしてACT316へと進む。
ACT316としてプロセッサ21は、処理対象としている取引の管理を終了するべく取引データベースDB21を更新する。プロセッサ21は例えば、処理対象としている取引の取引コードを含んだデータレコードを取引データベースDB21から削除する。
ACT317としてプロセッサ21は、モバイルコントローラ3に決済の完了を通知する。そしてプロセッサ21は、これをもって取引処理を終了する。
When the accounting machine 5 receives the payment data transmitted from the virtual POS server 2, it settles the transaction price while receiving operations from the operator. The accounting machine 5 also issues various printed materials such as receipts and coupons as necessary. When the payment is completed, the accounting machine 5 notifies the virtual POS server 2 of this fact. In response to this, the processor 21 in the virtual POS server 2 determines YES in ACT315, and proceeds to ACT316.
Note that even after the processor 21 completes electronic receipt registration in ACT313, the process proceeds to ACT316. Further, if the electronic receipt ID is not included in the request data requesting payment, the processor 21 determines NO in ACT 312, passes ACT 313, and proceeds to ACT 316.
In ACT 316, the processor 21 updates the transaction database DB21 to end the management of the transaction being processed. For example, the processor 21 deletes the data record including the transaction code of the transaction to be processed from the transaction database DB21.
As ACT 317, the processor 21 notifies the mobile controller 3 of the completion of the payment. The processor 21 then ends the transaction process.

モバイルコントローラ3にてプロセッサ31は、上述のように仮想POSサーバ2から決済完了が通知されたならば、図16中のACT221又はACT223でYESと判定し、いずれの場合もACT224へと進む。因みに、プロセッサ31は、プロセッサ21が図18中のACT312又はACT313からACT317へと進んだ場合には図16中のACT221にてYESと判定し、プロセッサ21が図18中のACT315からACT317へと進んだ場合には図16中のACT223にてYESと判定することになる。
ACT224としてプロセッサ31は、ユーザ端末300に対して決済完了を通知する。
When the processor 31 in the mobile controller 3 is notified of the completion of payment from the virtual POS server 2 as described above, it determines YES in ACT221 or ACT223 in FIG. 16, and in either case, the process proceeds to ACT224. Incidentally, when the processor 21 proceeds from ACT312 or ACT313 in FIG. 18 to ACT317, the processor 31 determines YES in ACT221 in FIG. 16, and the processor 21 proceeds from ACT315 to ACT317 in FIG. In this case, YES is determined in ACT223 in FIG.
As ACT 224, the processor 31 notifies the user terminal 300 of the completion of payment.

ユーザ端末300にてプロセッサ301は、ACT139にて決済を要求した後、又はACT140にて会計バーコード画面を表示させた後には、ACT141へと進む。
ACT141としてプロセッサ301は、決済完了が通知されるのを待ち受ける。そしてプロセッサ301は、上述のようにモバイルコントローラ3から決済完了が通知されたならばYESと判定し、ACT142へと進む。
ACT142としてプロセッサ301は、完了画面をタッチパネル304に表示させる。完了画面は、決済が完了したことを客に報知するための画面である。
After the processor 301 in the user terminal 300 requests payment in ACT 139 or displays the accounting barcode screen in ACT 140, the processor 301 proceeds to ACT 141.
As ACT 141, the processor 301 waits for notification of payment completion. If the processor 301 is notified of the completion of payment from the mobile controller 3 as described above, the processor 301 determines YES and proceeds to ACT142.
As ACT 142, the processor 301 displays a completion screen on the touch panel 304. The completion screen is a screen for notifying the customer that the payment has been completed.

客は、完了画面を確認したならば、完了画面に表されたボタンにタッチするなどの予め定められた操作によって、確認したことを宣言する。これに応じてプロセッサ301はACT143へと進む。なおプロセッサ301は、完了画面を表示した状態での経過時間が予め定めた時間に到達した場合に、ACT143へと進んでもよい。 After confirming the completion screen, the customer declares his/her confirmation by a predetermined operation such as touching a button displayed on the completion screen. In response, the processor 301 proceeds to ACT143. Note that the processor 301 may proceed to ACT 143 when the elapsed time with the completion screen displayed reaches a predetermined time.

ACT143としてプロセッサ301は、チェックアウト用のスキャン画面をタッチパネル304に表示させる。チェックアウト用のスキャン画面は、チェックアウト用の2次元コードTC2を読み取るための画面である。プロセッサ301は例えば、カメラ305を起動し、これによりカメラ305で得られた画像に、2次元コードTC2を読み取るように客に促す文字メッセージと、2次元コードTC2を翳すべき位置の目安を示すラインとを重ねてスキャン画面を生成する。 In ACT 143, the processor 301 displays a scan screen for checkout on the touch panel 304. The scan screen for checkout is a screen for reading the two-dimensional code TC2 for checkout. For example, the processor 301 activates the camera 305, and displays, on the image obtained by the camera 305, a text message urging the customer to read the two-dimensional code TC2 and an indication of the position where the two-dimensional code TC2 should be held. Generate a scan screen by overlapping the lines.

客は、チェックアウト用のスキャン画面がタッチパネル304に表示されたならば、店舗の出口付近に掲示されている2次元コードTC2がスキャン画面に映り込むようにカメラ305を2次元コードTC2に向ける。
ACT144としてプロセッサ301は、2次元コードが読み取れるのを待ち受ける。このときにプロセッサ301は、カメラ305で得られる画像を繰り返し解析し、2次元コードの読み取りを試みる。この2次元コードの読み取りは、スマホPOSアプリAP301に基づく処理として行われてもよいし、2次元コードの読み取り用の別のアプリケーションプログラムに基づく処理として行われてもよい。そしてプロセッサ301は、2次元コードが読み取れたならばYESと判定し、ACT145へと進む。
When the scan screen for checkout is displayed on the touch panel 304, the customer points the camera 305 at the two-dimensional code TC2 posted near the exit of the store so that the two-dimensional code TC2 is reflected on the scan screen.
As ACT 144, the processor 301 waits for the two-dimensional code to be read. At this time, the processor 301 repeatedly analyzes images obtained by the camera 305 and attempts to read the two-dimensional code. Reading this two-dimensional code may be performed as a process based on the smartphone POS application AP301, or may be performed as a process based on another application program for reading the two-dimensional code. If the two-dimensional code is read, the processor 301 determines YES and proceeds to ACT145.

ACT145としてプロセッサ301は、読み取った2次元コードが表すデータがチェックアウトデータであるか否かを確認する。そしてプロセッサ301は、チェックアウトデータでなければNOと判定し、ACT144へと戻る。このときにプロセッサ301は、誤った2次元コードが読み取られたことを客に通知する画面をタッチパネル304に表示させてもよい。 In ACT 145, the processor 301 checks whether the data represented by the read two-dimensional code is checkout data. Then, the processor 301 determines NO if the data is not checkout data, and returns to ACT144. At this time, the processor 301 may cause the touch panel 304 to display a screen that notifies the customer that an incorrect two-dimensional code has been read.

プロセッサ301は、読み取った2次元コードが表すデータがチェックアウトデータであることが確認できたならば、ACT145にてYESと判定し、ACT146へと進む。
ACT146としてプロセッサ301は、モバイルコントローラ3に対して、チェックアウトを要求する。
If the processor 301 confirms that the data represented by the read two-dimensional code is checkout data, it determines YES in ACT145 and proceeds to ACT146.
As ACT 146, the processor 301 requests the mobile controller 3 to check out.

モバイルコントローラ3にてプロセッサ31は、図16中のACT224にて決済完了を通知したのちには、ACT225へと進む。
ACT225としてプロセッサ31は、チェックアウトが要求されるのを待ち受ける。そしてプロセッサ31は、上述のようにユーザ端末300からチェックアウトが要求されたならばYESと判定し、ACT226へと進む。
After the processor 31 in the mobile controller 3 notifies payment completion in ACT224 in FIG. 16, the process proceeds to ACT225.
As ACT 225, the processor 31 waits for a checkout request. If checkout is requested from the user terminal 300 as described above, the processor 31 determines YES and proceeds to ACT226.

ACT226としてプロセッサ31は、チェックアウト処理を実行する。チェックアウト処理は、処理対象となっていた取引の管理のためにメインメモリ32及び補助記憶ユニット33に保存してあるデータをクリアするなどの処理である。なお仮想POSサーバ2は、決済が完了したことに応じて、該当する取引に関する処理を終了してもよいし、モバイルコントローラ3からの指示に応じて取引に関する処理を終了してもよい。そして後者の場合には、プロセッサ31はチェックアウト処理において、仮想POSサーバ2に対して上記指示をする。また、誤ったバーコードスキャンなどを含むユーザの操作の履歴を表した履歴データベースを店舗サーバ1、仮想POSサーバ2又はモバイルコントローラ3、あるいは図示されない別のサーバ等で管理する場合がある。この場合には、プロセッサ31はチェックアウト処理において、今回の取引に関する操作の履歴を反映するように履歴データベースを更新するための処理を行う。
ACT227としてプロセッサ31は、チェックアウトの完了をユーザ端末300に通知する。そしてプロセッサ31は、これをもって仲介処理を終了する。
As ACT 226, the processor 31 executes checkout processing. The checkout process is a process such as clearing data stored in the main memory 32 and the auxiliary storage unit 33 for managing the transaction being processed. Note that the virtual POS server 2 may end the processing related to the corresponding transaction in response to the completion of the payment, or may end the processing related to the transaction in response to an instruction from the mobile controller 3. In the latter case, the processor 31 issues the above instruction to the virtual POS server 2 in the checkout process. Further, a history database representing a history of user operations including erroneous barcode scans may be managed by the store server 1, the virtual POS server 2, the mobile controller 3, or another server (not shown). In this case, in the checkout process, the processor 31 performs processing to update the history database so as to reflect the history of operations related to the current transaction.
As ACT 227, the processor 31 notifies the user terminal 300 of the completion of checkout. The processor 31 then ends the mediation process.

ユーザ端末300にてプロセッサ301は、図12中のACT146にてチェックアウトを要求したのちには、ACT147へと進む。
ACT147としてプロセッサ301は、チェックアウト完了の通知を待ち受ける。そしてプロセッサ301は、上述のようにモバイルコントローラ3からチェックアウト完了が通知されたならばYESと判定し、ACT148へと進む。
ACT148としてプロセッサ301は、例えば図9中のACT107にて保存したチェックインデータなどのような、今回の買い物に関して一時的に利用する各種のデータをクリアする。そしてプロセッサ301はこののち、図9中のACT101に戻る。
After the processor 301 in the user terminal 300 requests checkout in ACT146 in FIG. 12, the process proceeds to ACT147.
As ACT 147, the processor 301 waits for notification of checkout completion. If the processor 301 is notified of the checkout completion from the mobile controller 3 as described above, it determines YES and proceeds to ACT148.
In ACT 148, the processor 301 clears various data temporarily used regarding the current shopping, such as check-in data saved in ACT 107 in FIG. 9, for example. The processor 301 then returns to ACT101 in FIG.

ところでカート端末400においてプロセッサ401aは、図13中のACT163にてチェックインを要求した後には、ACT164へと進む。
ACT164としてプロセッサ401aは、チェックイン完了が通知されたか否かを確認する。そしてプロセッサ401aは、該当の通知を確認できないならばNOと判定し、ACT165へと進む。
ACT165としてプロセッサ401aは、チェックインのエラーが通知されたか否かを確認する。そしてプロセッサ401aは、該当の通知を確認できないならばNOと判定し、ACT164へと戻る。
かくしてプロセッサ401aはACT164及びACT165としては、チェックインの完了又はエラーが通知されるのを待ち受ける。そしてプロセッサ401aは、図14中のACT188又は図15中のACT203におけるエラー通知のための通知データが無線通信ユニット401dにより受信されたならばACT165にてYESと判定し、ACT166へと進む。
By the way, after the processor 401a in the cart terminal 400 requests check-in in ACT163 in FIG. 13, the process proceeds to ACT164.
In ACT 164, the processor 401a checks whether check-in completion has been notified. Then, if the processor 401a cannot confirm the corresponding notification, the processor 401a determines NO and proceeds to ACT165.
As ACT 165, the processor 401a checks whether a check-in error has been notified. Then, if the processor 401a cannot confirm the corresponding notification, the processor 401a determines NO and returns to ACT164.
In this manner, the processor 401a waits for notification of check-in completion or error as ACT 164 and ACT 165. If the wireless communication unit 401d receives notification data for error notification in ACT188 in FIG. 14 or ACT203 in FIG. 15, the processor 401a determines YES in ACT165, and proceeds to ACT166.

ACT166としてプロセッサ401aは、エラー画面をタッチパネル401eに表示させる。エラー画面は、チェックインできないことを客に報知するものとして定められた画面である。なおプロセッサ401aは例えば、図14中のACT188におけるエラー通知に対しては、店舗が混雑しているためにチェックインできないことを知らせるとともに、さらには暫く時間をおいてチェックインを試みるよう促すエラー画面を表示させる。プロセッサ401aは、例えばエラー画面中に表したGUI要素の操作などによりエラー画面の表示解消が指示されたならば、ACT162の待受状態に戻る。 In ACT 166, the processor 401a displays an error screen on the touch panel 401e. The error screen is a screen designed to notify customers that check-in is not possible. Note that, in response to the error notification in ACT 188 in FIG. 14, the processor 401a notifies you that you cannot check in because the store is crowded, and also displays an error screen that prompts you to try checking in after a while. Display. The processor 401a returns to the standby state in ACT 162 when an instruction to cancel the display of the error screen is given, for example, by operating a GUI element displayed on the error screen.

プロセッサ401aは一方、図15中のACT204をプロセッサ31が実行することによりモバイルコントローラ3から送信された、前述のチェックイン完了の通知のための通知データが無線通信ユニット401dにより受信されたならばACT164にてYESと判定する。そして図15では図示を省略するが、この後にプロセッサ401aは、客の操作に応じて、登録、数量変更、取消又は決済を、前述したプロセッサ301と同様にしてモバイルコントローラ3に要求するか、会計バーコード画面をタッチパネル401eに表示させる。ただしプロセッサ401aが受ける客の操作は、プロセッサ301の場合とは異なる場合がある。例えば、購入商品として登録しようとする商品に表示されたバーコードの読み取りはスキャナ402で行われる。
モバイルコントローラ3及び仮想POSサーバ2では、カート端末400を対象端末とした仲介処理及び取引処理においても、前述したようにユーザ端末300を対象端末としている場合と同様に、上述の要求又は会計機5からの転送要求に応じた処理を実行する。
On the other hand, if the wireless communication unit 401d receives notification data for notification of check-in completion, which is transmitted from the mobile controller 3 by the processor 31 executing ACT204 in FIG. It is determined as YES. Although not shown in FIG. 15, the processor 401a then requests registration, quantity change, cancellation, or payment to the mobile controller 3 in the same manner as the processor 301 described above, depending on the customer's operation, A barcode screen is displayed on the touch panel 401e. However, the customer's operations received by the processor 401a may be different from those received by the processor 301. For example, the scanner 402 reads a barcode displayed on a product to be registered as a purchased product.
In the mobile controller 3 and the virtual POS server 2, even in the intermediary processing and transaction processing using the cart terminal 400 as the target terminal, the above-mentioned request or accounting machine 5 Executes processing in response to transfer requests from.

以上のようにプロセッサ21は、取引を処理するための情報処理としての取引処理を、それぞれ異なる対象端末からの指示に応じてそれぞれ実行する。 As described above, the processor 21 executes transaction processing as information processing for processing transactions in response to instructions from different target terminals.

カート端末400にてプロセッサ401aは、図12中のACT139と同様に決済を要求するか、あるいはACT140と同様に会計バーコード画面を表示させたのちには、図13中のACT171へと進む。
ACT171としてプロセッサ401aは、決済完了が通知されるのを待ち受ける。そしてプロセッサ401aは、図16中のACT224による前述のような決済完了の通知又は会計機5からの前述のような決済完了の通知がなされたならばYESと判定し、ACT172へと進む。
ACT172としてプロセッサ401aは、終了画面をタッチパネル401eに表示させる。終了画面は例えば、取引が終了したことを客に知らせる画面である。
ACT173としてプロセッサ401aは、今回の買い物に関して一時的に利用する各種のデータをクリアする。そしてプロセッサ401aはこののち、ACT161の待受状態に戻る。
The processor 401a at the cart terminal 400 requests payment as in ACT 139 in FIG. 12, or displays the checkout barcode screen as in ACT 140, and then proceeds to ACT 171 in FIG.
As ACT 171, the processor 401a waits for notification of payment completion. Then, the processor 401a determines YES if the notification of payment completion as described above is given by ACT 224 in FIG. 16 or the notification of payment completion as described above from the accounting machine 5, and proceeds to ACT 172.
As ACT 172, the processor 401a displays an end screen on the touch panel 401e. The end screen is, for example, a screen that notifies the customer that the transaction has ended.
As ACT 173, the processor 401a clears various data temporarily used regarding the current shopping. Thereafter, the processor 401a returns to the standby state of ACT161.

客が、チェックインを完了したものの、上記のように決済を完了することなく、かつ中止を指定することもなく、買い物を止めて店舗から出て行ってしまうことは、例えばスマホPOSサービス及びカートPOSサービスの利用に関する禁止事項とされる。しかしながら、客がそのように行動する危険性はある。
客が上記のように行動した場合、モバイルコントローラ3にてプロセッサ31は、ACT205~ACT208の待受状態を継続することになる。プロセッサ31は、ACT204、図16中のACT212又はACT216からACT205~ACT208の待受状態に移行してからの経過時間が予め定められた制限時間に至ったならば、ACT208にてYESと判定し、ACT228へと進む。このときにプロセッサ31は、予め定められた時間に渡って操作が受けられない状態を無操作状態として検出していることになる。かくして取引管理アプリAP31に基づく情報処理をプロセッサ31が実行することによって、プロセッサ31を中枢部分とするコンピュータは検出手段として機能する。
なお制限時間は、一例としては、店舗毎に、店舗システム100の管理者などが決める。プロセッサ31は、上記の管理者などの操作に応じて制限時間を入力し、当該の制限時間をメインメモリ32又は補助記憶ユニット33に記憶させる。なおプロセッサ31は、メインメモリ32又は補助記憶ユニット33に制限時間が既に記憶されているならば、新たに入力した制限時間で上書きする。ただし制限時間は、例えば取引管理アプリAP31の作成者などによって定められ、各店舗共通で固定的に適用されてもよい。
For example, a customer who completes check-in may stop shopping and leave the store without completing the payment or specifying to cancel as described above. This is considered a prohibition regarding the use of POS services. However, there is a risk that customers will do so.
When the customer acts as described above, the processor 31 in the mobile controller 3 continues the standby state of ACT205 to ACT208. If the elapsed time from ACT204, ACT212 or ACT216 in FIG. 16 to the standby state of ACT205 to ACT208 reaches a predetermined time limit, the processor 31 determines YES in ACT208, Proceed to ACT228. At this time, the processor 31 detects a state in which no operation is received for a predetermined period of time as a no-operation state. As the processor 31 executes information processing based on the transaction management application AP31, the computer having the processor 31 as its core functions as a detection means.
Note that the time limit is determined, for example, by the administrator of the store system 100 for each store. The processor 31 inputs a time limit according to the operation of the administrator or the like, and stores the time limit in the main memory 32 or the auxiliary storage unit 33. Note that if the time limit is already stored in the main memory 32 or the auxiliary storage unit 33, the processor 31 overwrites it with the newly input time limit. However, the time limit may be determined by, for example, the creator of the transaction management application AP31, and may be fixedly applied to each store.

ACT228としてプロセッサ31は、対象端末に関する取引処理の終了を仮想POSサーバ2に対して指示する。プロセッサ31は例えば、終了指示のための指示データを、仮想POSサーバ2に宛てて通信インタフェース34から店内通信ネットワーク7へと送出する。プロセッサ31は、終了の指示であることを識別するための識別データを指示データに含める。プロセッサ31は、対象端末の端末コードがフィールドF11にセットされているデータレコードDR1を取引管理データベースDB31から見つけ出し、該当のデータレコードDR1のフィールドF13にセットされている取引コードを指示データに含める。 As ACT 228, the processor 31 instructs the virtual POS server 2 to terminate the transaction processing regarding the target terminal. For example, the processor 31 sends instruction data for a termination instruction to the virtual POS server 2 from the communication interface 34 to the in-store communication network 7. The processor 31 includes identification data for identifying that the instruction is a termination instruction in the instruction data. The processor 31 finds the data record DR1 in which the terminal code of the target terminal is set in the field F11 from the transaction management database DB31, and includes the transaction code set in the field F13 of the corresponding data record DR1 in the instruction data.

上記の指示データが店内通信ネットワーク7によって仮想POSサーバ2へと伝送されると、通信インタフェース24により受信される。このときには、プロセッサ21は、指示データに含まれた取引コードで識別される取引を処理対象としている取引処理においては、図18中のACT302~ACT306の待受状態にあるはずである。そこで当該の取引処理に関してプロセッサ21は、ACT306にてYESと判定し、図19中のACT318へと進む。
ACT318としてプロセッサ21は、処理対象としている取引の管理を終了するべく取引データベースDB21を更新する。プロセッサ21は例えば、処理対象としている取引の取引コードを含んだデータレコードを取引データベースDB21から削除する。
ACT319としてプロセッサ21は、モバイルコントローラ3に終了を通知する。プロセッサ21は、この終了通知のための通知データには、処理対象としている取引の取引コードを含める。そしてプロセッサ21は、これをもって取引処理を終了する。つまりプロセッサ21は、決済は完了していないものの、該当の取引処理を強制的に終了する。
このように、モバイルコントローラ3のプロセッサ31による指示に応じて取引処理が終了される。かくして取引管理アプリAP31に基づく情報処理をプロセッサ31が実行することによって、プロセッサ31を中枢部分とするコンピュータは制御手段として機能する。
When the above instruction data is transmitted to the virtual POS server 2 by the in-store communication network 7, it is received by the communication interface 24. At this time, the processor 21 should be in the standby state of ACT302 to ACT306 in FIG. 18 in the transaction processing in which the transaction identified by the transaction code included in the instruction data is to be processed. Therefore, the processor 21 determines YES in ACT 306 regarding the transaction processing, and proceeds to ACT 318 in FIG. 19 .
In ACT 318, the processor 21 updates the transaction database DB21 to end the management of the transaction being processed. For example, the processor 21 deletes the data record including the transaction code of the transaction to be processed from the transaction database DB21.
As ACT 319, the processor 21 notifies the mobile controller 3 of the termination. The processor 21 includes the transaction code of the transaction to be processed in the notification data for this termination notification. The processor 21 then ends the transaction process. In other words, the processor 21 forcibly ends the transaction process, although the payment has not been completed.
In this way, the transaction process is completed in accordance with instructions from the processor 31 of the mobile controller 3. As the processor 31 executes information processing based on the transaction management application AP31, the computer with the processor 31 as a central part functions as a control means.

モバイルコントローラ3にてプロセッサ31は、図15中のACT228にて終了を指示したのちには、ACT229へと進む。
ACT229としてプロセッサ31は、終了通知を待ち受ける。そしてプロセッサ31は、上述のように仮想POSサーバ2から終了が通知されたならばYESと判定し、ACT230へと進む。
After the processor 31 in the mobile controller 3 instructs the end at ACT228 in FIG. 15, the process proceeds to ACT229.
As ACT 229, the processor 31 waits for the completion notification. If the processor 31 is notified of the termination from the virtual POS server 2 as described above, it determines YES and proceeds to ACT230.

ACT230としてプロセッサ31は、予め定められた報知先に報知動作の実行を指示する。そしてプロセッサ31は、これをもって仲介処理を終了する。
報知動作は、取引処理を強制的に終了したことを予め定められた通報先に通報するための動作である。
例えば、取引処理を上記のように強制的に終了させる場合は、取引処理の対象端末であるカート端末400が店内に放置された状態で客が帰ってしまった場合が想定される。つまり、商品が入れられたショッピングカートC1が、どの客にも利用されることなく店内に放置されていることになる。このショッピングカートC1に取り付けられたカート端末400は、取引処理の強制終了により新たな取引を開始することができる状態となるが、ショッピングカートC1には商品が入っているから、新たな客は利用できない。そこでプロセッサ31は、店員用の端末で報知動作を行わせることにより、上記の強制終了を店員に対して通報する。店員は、この通報に応じて、例えば店内に報知されたショッピングカートC1を探し出して、入れられている商品を取り除いた上で置き場に戻すことにより、当該ショッピングカートC1を利用可能とすることができる。
As ACT 230, the processor 31 instructs a predetermined notification destination to execute a notification operation. The processor 31 then ends the mediation process.
The notification operation is an operation for notifying a predetermined reporting destination that the transaction processing has been forcibly terminated.
For example, when the transaction process is forcibly terminated as described above, it is assumed that the customer leaves the store with the cart terminal 400, which is the target terminal of the transaction process, left in the store. In other words, the shopping cart C1 containing the products is left in the store without being used by any customer. The cart terminal 400 attached to this shopping cart C1 becomes in a state where it can start a new transaction by forcibly terminating the transaction process, but since the shopping cart C1 contains products, the new customer cannot use it. Can not. Therefore, the processor 31 notifies the store clerk of the above-mentioned forced termination by causing the clerk's terminal to perform a notification operation. In response to this notification, the store clerk can make the shopping cart C1 usable by, for example, finding the shopping cart C1 that was notified in the store, removing the products contained therein, and returning it to the storage area. .

また例えば、強制終了した取引処理の対象端末を利用している客が、店内の休憩スペースで休憩していたなどの事情で、買い物中であるにも拘わらずに取引処理が強制終了されてしまう場合も考えられる。そこでプロセッサ31は、強制終了した取引処理の対象端末で報知動作を行わせることにより、上記の強制終了を客に対して通報する。客は、この通報により、買い物を最初からやり直す必要があることを知ることができる。なお、このような状況が生じ得ることが懸念されるならば、プロセッサ31は、図15中のACT205~ACT208の待受状態の継続時間が、制限時間よりも短く定めた時間を経過したことに応じて、操作を行わないと強制終了されることを客に案内するための警報動作を対象端末に指示してもよい。そしてこの指示に応じて対象端末にてプロセッサ301又はプロセッサ401aは、上記のような予め定められた警報動作を実行するようにしてもよい。
なおプロセッサ31は、複数の端末に対してそれぞれ報知動作の実行を指示してもよい。
このようにプロセッサ31は、報知動作の実行を予め定められた端末に指示することで、予め定められた通報先に通報することになる。かくして取引管理アプリAP31に基づく情報処理をプロセッサ31が実行することによって、プロセッサ31を中枢部分とするコンピュータは通報手段として機能する。
Furthermore, for example, the transaction process may be forcibly terminated even though the customer is shopping, due to circumstances such as the customer using the terminal that was subject to the forcibly terminated transaction processing being taking a break in the store's rest area. There may also be cases. Therefore, the processor 31 notifies the customer of the forcible termination by causing the target terminal of the forcibly terminated transaction processing to perform a notification operation. This notification allows the customer to know that they need to start shopping again from the beginning. Note that if there is a concern that such a situation may occur, the processor 31 determines whether the duration of the standby state in ACT205 to ACT208 in FIG. 15 has passed a predetermined time shorter than the time limit. Accordingly, the target terminal may be instructed to perform an alarm operation to inform the customer that the process will be forcibly terminated if no operation is performed. Then, in response to this instruction, the processor 301 or processor 401a in the target terminal may execute a predetermined alarm operation as described above.
Note that the processor 31 may instruct each of a plurality of terminals to execute the notification operation.
In this manner, the processor 31 instructs a predetermined terminal to perform the notification operation, thereby reporting to a predetermined destination. As the processor 31 executes information processing based on the transaction management application AP31, the computer having the processor 31 as its core functions as a reporting means.

以上のように本実施形態の取引処理システムは、仮想POSサーバ2にてプロセッサ21が取引処理中に対象端末が無操作状態となったならば、当該取引処理を強制的に終了する。従って、その取引処理のために使用していたリソースを解放し、新たな取引に使用することが可能となる。これにより、新たな端末装置の利用を開始することができない状況が生じる可能性を低減できる。 As described above, in the transaction processing system of this embodiment, if the target terminal becomes inoperable while the processor 21 is processing a transaction in the virtual POS server 2, the transaction processing is forcibly terminated. Therefore, the resources used for processing the transaction can be released and used for new transactions. This can reduce the possibility of a situation in which it is not possible to start using a new terminal device.

この実施形態は、次のような種々の変形実施が可能である。
モバイルコントローラ3を備えることなく、仮想POSサーバ2にてユーザ端末300及びカート端末400からの要求を直接に受け付けるようにしてもよい。そして管理処理は、仮想POSサーバ2にてプロセッサ21が実行してもよい。またこの場合にプロセッサ21は、例えば図18中のACT306に代えて図15中のACT208に相当する処理を実行するようにする。またプロセッサ21は、例えば図19中のACT319に代えて図15中のACT230に相当する処理を実行する。
This embodiment can be modified in various ways as follows.
The virtual POS server 2 may directly receive requests from the user terminal 300 and the cart terminal 400 without providing the mobile controller 3. The management process may be executed by the processor 21 in the virtual POS server 2. Further, in this case, the processor 21 executes processing corresponding to ACT208 in FIG. 15 instead of ACT306 in FIG. 18, for example. Further, the processor 21 executes processing corresponding to ACT230 in FIG. 15 instead of ACT319 in FIG. 19, for example.

無操作状態の検出は、ユーザ端末300及びカート端末400にてプロセッサ301及びプロセッサ401aが実行してもよい。プロセッサ301ならば、例えば図10中のACT113~ACT116の待受状態の継続時間が制限時間を越えたかどうかを確認すればよい。またプロセッサ401aならば、例えばカートUI処理の中での図10中のACT113~ACT116に相当する待受状態の継続時間が制限時間を越えたかどうかを確認すればよい。そして、無操作状態の検出をユーザ端末300及びカート端末400にて行うならば、無操作状態が検出されたことに応じての取引処理の終了の指示もプロセッサ301及びプロセッサ401aが行ってもよい。 The detection of the no-operation state may be executed by the processor 301 and the processor 401a in the user terminal 300 and the cart terminal 400. In the case of the processor 301, for example, it is sufficient to check whether the duration of the standby state in ACT113 to ACT116 in FIG. 10 has exceeded the time limit. Furthermore, if it is the processor 401a, it is only necessary to check whether the duration of the standby state corresponding to ACT113 to ACT116 in FIG. 10 during the cart UI processing, for example, has exceeded the time limit. If the no-operation state is detected by the user terminal 300 and the cart terminal 400, the processor 301 and processor 401a may also instruct the end of transaction processing in response to the detection of the no-operation state. .

無操作状態の検出は、例えばACT208を繰り返し実行した回数をカウントし、当該回数が予め定められた制限回数を超えた場合を無操作状態とするなど、任意に変更が可能である。 The detection of the no-operation state can be arbitrarily changed, for example, by counting the number of times ACT 208 is repeatedly executed, and determining the no-operation state when the number of times exceeds a predetermined limit.

複数の仮想POSサーバ2を備え、これら複数の仮想POSサーバ2により複数の取引処理を分担して実行してもよい。また、1つの取引処理を複数の情報処理装置で分担して処理してもよい。例えば購入商品の登録のための処理と決済のための処理とを別々の情報処理装置で実行してもよい。 A plurality of virtual POS servers 2 may be provided, and a plurality of transaction processes may be shared and executed by the plurality of virtual POS servers 2. Further, one transaction process may be shared and processed by a plurality of information processing devices. For example, the process for registering purchased products and the process for payment may be executed by separate information processing devices.

取引処理システムで処理の対象とする取引は、店舗に陳列された商品の販売には限らず、例えば飲食物を調理して提供するなどの別の形態の取引であってもよい。 Transactions to be processed by the transaction processing system are not limited to sales of products displayed in a store, but may be other types of transactions such as cooking and serving food and drinks.

店舗により客に貸与される端末装置は、ショッピングカートC1に取り付けられることなくユーザにより携帯されるものであってもよいし、そのような端末装置とカート端末400とが混在していてもよい。 The terminal device lent to the customer by the store may be carried by the user without being attached to the shopping cart C1, or such a terminal device and the cart terminal 400 may coexist.

ユーザ端末300とカート端末400とのいずれか一方を使用するのでも構わない。 Either one of the user terminal 300 and the cart terminal 400 may be used.

情報処理によりプロセッサ11,21,31,301,401aが実現する各機能は、その一部又は全てをロジック回路などのようなプログラムに基づかない情報処理を実行するハードウェアにより実現することも可能である。また上記の各機能のそれぞれは、上記のロジック回路などのハードウェアにソフトウェア制御を組み合わせて実現することも可能である。 Each of the functions realized by the processors 11, 21, 31, 301, and 401a through information processing can be partially or entirely realized by hardware that executes information processing that is not based on a program, such as a logic circuit. be. Further, each of the above functions can also be realized by combining software control with hardware such as the above logic circuit.

本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
以下に、本願の当初の特許請求の範囲に記載された発明を付記する。
[付記1] 端末装置と少なくとも1つの情報処理装置とを含み、
前記端末装置に備えられ、操作者による操作を受ける操作手段と、
前記情報処理装置の1つに備えられ、前記操作手段で受けられた操作に応じて取引の内容を決定するための処理を行う決定手段と、
前記端末装置又は前記情報処理装置の1つに備えられ、前記操作手段により前記操作が受けられない無操作状態を検出する検出手段と、
前記端末装置又は前記情報処理装置の1つに備えられ、一取引の内容の決定のための前記処理を前記決定手段が開始してから当該一取引の内容の決定が完了するまでの間に、前記検出手段により前記無操作状態が検出されたことに応じて、当該一取引に関する前記処理を終了するよう前記決定手段を制御する制御手段と、
を備える取引処理システム。
[付記2] 前記検出手段は、前記操作手段により予め定められた時間に渡って前記操作が受けられない状態を前記無操作状態として検出する、
付記1に記載の取引処理システム。
[付記3] 前記情報処理装置の1つに備えられ、前記決定手段が前記処理を完了することなく終了したことを予め定められた通報先に通報する通報手段、
をさらに備える付記1又は付記2に記載の取引処理システム。
[付記4] 前記端末装置は、店舗から客に貸与されて前記客が前記操作者となるものであり、
前記通報手段は、前記店舗の従業員を前記通報先とする、
付記3に記載の取引処理システム。
[付記5] 操作者による操作を受ける操作手段を備える端末装置と、前記操作手段で受けられた操作に応じて取引の内容を決定するための処理を行う決定手段を備える登録処理装置とともに取引処理システムを構成し、
前記操作手段により前記操作が受けられない無操作状態を検出する検出手段と、
一取引の内容の決定のための前記処理を前記決定手段が開始してから当該一取引の内容の決定が完了するまでの間に、前記検出手段により前記無操作状態が検出されたことに応じて、当該一取引に関する前記処理を終了するよう前記決定手段を制御する制御手段と、を備える制御装置。
[付記6] 操作者による操作を受ける操作手段を備える端末装置と、前記操作手段で受けられた操作に応じて取引の内容を決定するための処理を行う決定手段を備える登録処理装置とともに取引処理システムを構成する制御装置が備えるコンピュータを、
前記操作手段により前記操作が受けられない無操作状態を検出する検出手段と、
一取引の内容の決定のための前記処理を前記決定手段が開始してから当該一取引の内容の決定が完了するまでの間に、前記検出手段により前記無操作状態が検出されたことに応じて、当該一取引に関する前記処理を終了するよう前記決定手段を制御する制御手段と、して機能させるための情報処理プログラム。
Although several embodiments of the invention have been described, these embodiments are presented by way of example and are not intended to limit the scope of the invention. These novel embodiments can be implemented in various other forms, and various omissions, substitutions, and changes can be made without departing from the gist of the invention. These embodiments and their modifications are included within the scope and gist of the invention, as well as within the scope of the invention described in the claims and its equivalents.
Below, the invention described in the original claims of the present application will be added.
[Additional Note 1] Including a terminal device and at least one information processing device,
an operating means provided in the terminal device and operated by an operator;
a determining means that is provided in one of the information processing devices and performs processing for determining the content of a transaction in accordance with an operation received by the operating means;
a detecting unit provided in one of the terminal device or the information processing device and detecting a non-operation state in which the operation cannot be performed by the operating unit;
provided in one of the terminal device or the information processing device, from when the determining means starts the process for determining the content of one transaction until the determination of the content of the one transaction is completed; control means for controlling the determining means to end the processing regarding the one transaction in response to the detection of the no-operation state by the detecting means;
A transaction processing system equipped with
[Additional Note 2] The detection means detects a state in which the operation cannot be received by the operation means for a predetermined period of time as the no-operation state.
Transaction processing system described in Appendix 1.
[Additional Note 3] Notifying means provided in one of the information processing devices and notifying a predetermined reporting destination that the determining means has terminated the processing without completing it;
The transaction processing system according to Supplementary Note 1 or 2, further comprising:
[Additional Note 4] The terminal device is lent to a customer by the store, and the customer becomes the operator,
The reporting means has an employee of the store as the reporting destination,
Transaction processing system described in Appendix 3.
[Additional note 5] A terminal device equipped with an operating means for receiving operations by an operator, and a registration processing device equipped with a determining means for determining the content of a transaction according to the operation received by the operating means, together with a transaction processing device. configure the system,
detection means for detecting a non-operation state in which the operation cannot be performed by the operation means;
In response to the detection of the no-operation state by the detection means between the time when the determination means starts the process for determining the contents of one transaction and the time when the determination of the contents of one transaction is completed. and control means for controlling the determining means to terminate the processing regarding the one transaction.
[Additional note 6] A terminal device equipped with an operating means for receiving operations by an operator, and a registration processing device equipped with a determining means for determining the content of a transaction according to the operation received by the operating means, together with a transaction processing device. The computer included in the control device that makes up the system,
detection means for detecting a non-operation state in which the operation cannot be performed by the operation means;
In response to the detection of the no-operation state by the detection means between the time when the determination means starts the process for determining the contents of one transaction and the time when the determination of the contents of one transaction is completed. and an information processing program for functioning as a control means for controlling the determination means to terminate the processing regarding the one transaction.

1…店舗サーバ、2…仮想POSサーバ、3…モバイルコントローラ、4…通信サーバ、5…会計機、6…アクセスポイント、7…店内通信ネットワーク、11,21,31,301,401a…プロセッサ、12,22,32,302,401b…メインメモリ、13,23,33,303,401c…補助記憶ユニット、14,24,34…通信インタフェース、15,25,35,308,401h…伝送路、304,401e…タッチパネル、305,404…カメラ、306,401d…無線通信ユニット、307…モバイル通信ユニット、401f…サウンドユニット、401g…インタフェースユニット、402…スキャナ、403…リーダ、100(100A,100B)…店舗システム、200…中継サーバ、300…ユーザ端末、400…カート端末、500…決済サーバ、600…電子レシートサーバ、700…通信ネットワーク。 DESCRIPTION OF SYMBOLS 1... Store server, 2... Virtual POS server, 3... Mobile controller, 4... Communication server, 5... Accounting machine, 6... Access point, 7... In-store communication network, 11, 21, 31, 301, 401a... Processor, 12 , 22, 32, 302, 401b... Main memory, 13, 23, 33, 303, 401c... Auxiliary storage unit, 14, 24, 34... Communication interface, 15, 25, 35, 308, 401h... Transmission line, 304, 401e...touch panel, 305,404...camera, 306,401d...wireless communication unit, 307...mobile communication unit, 401f...sound unit, 401g...interface unit, 402...scanner, 403...reader, 100 (100A, 100B)...store System, 200...Relay server, 300...User terminal, 400...Cart terminal, 500...Payment server, 600...Electronic receipt server, 700...Communication network.

Claims (5)

端末装置と少なくとも1つの情報処理装置とを含み、
前記端末装置に備えられ、操作者による操作を受ける操作手段と、
前記情報処理装置の1つに備えられ、前記操作手段で受けられた操作に応じて取引の内容を決定するための処理を行う決定手段と、
前記端末装置又は前記情報処理装置の1つに備えられ、予め定められた制限時間に渡って前記操作手段により前記操作が受けられない無操作状態を検出する検出手段と、
前記端末装置又は前記情報処理装置の1つに備えられ、一取引の内容の決定のための前記処理を前記決定手段が開始してから当該一取引の内容の決定が完了するまでの間に、前記検出手段により前記無操作状態が検出されたことに応じて、当該一取引に関する前記処理を終了するよう前記決定手段を制御する制御手段と、
前記情報処理装置の1つに備えられ、前記決定手段が前記処理を完了することなく終了したことを予め定められた通報先に通報する通報手段と、
前記情報処理装置の1つに備えられ、前記制限時間よりも短く予め定められた時間に渡って前記操作手段により前記操作が受けられない場合に、操作を行わないと前記処理が完了されることなく終了されることを前記操作者に案内する案内手段と、
を備える取引処理システム。
including a terminal device and at least one information processing device,
an operating means provided in the terminal device and operated by an operator;
a determining means that is provided in one of the information processing devices and performs processing for determining the content of a transaction in accordance with an operation received by the operating means;
a detecting means provided in one of the terminal device or the information processing device and detecting a non-operation state in which the operation cannot be performed by the operating means for a predetermined time limit ;
provided in one of the terminal device or the information processing device, from when the determining means starts the process for determining the content of one transaction until the determination of the content of the one transaction is completed; control means for controlling the determining means to end the processing regarding the one transaction in response to the detection of the no-operation state by the detecting means;
a reporting means that is provided in one of the information processing devices and that reports to a predetermined reporting destination that the determining means has terminated the processing without completing it;
provided in one of the information processing devices, and in the case where the operation is not received by the operation means for a predetermined time shorter than the time limit, the processing is completed if no operation is performed; a guide means for guiding the operator that the operation will be terminated without any interruption;
A transaction processing system equipped with
前記通報手段は、前記端末装置の操作者を前記通報先とする、 The reporting means sets the operator of the terminal device as the reporting destination;
請求項1に記載の取引処理システム。The transaction processing system according to claim 1.
前記端末装置は、店舗から客に貸与されて前記客が前記操作者となるものであり、
前記通報手段は、前記店舗の従業員を前記通報先とする、
請求項1又は請求項2に記載の取引処理システム。
The terminal device is lent to a customer by the store, and the customer becomes the operator,
The reporting means has an employee of the store as the reporting destination,
The transaction processing system according to claim 1 or claim 2 .
操作者による操作を受ける操作手段を備える端末装置と、前記操作手段で受けられた操作に応じて取引の内容を決定するための処理を行う決定手段を備える登録処理装置とともに取引処理システムを構成し、
予め定められた制限時間に渡って前記操作手段により前記操作が受けられない無操作状態を検出する検出手段と、
一取引の内容の決定のための前記処理を前記決定手段が開始してから当該一取引の内容の決定が完了するまでの間に、前記検出手段により前記無操作状態が検出されたことに応じて、当該一取引に関する前記処理を終了するよう前記決定手段を制御する制御手段と、
前記決定手段が前記処理を完了することなく終了したことを予め定められた通報先に通報する通報手段と、
前記制限時間よりも短く予め定められた時間に渡って前記操作手段により前記操作が受けられない場合に、操作を行わないと前記処理が完了されることなく終了されることを前記操作者に案内する案内手段と、
を備える制御装置。
A transaction processing system is constituted by a terminal device equipped with an operating means for receiving operations by an operator, and a registration processing device equipped with a determining means for performing processing for determining the content of a transaction in accordance with the operation received by the operating means. ,
detection means for detecting a non-operation state in which the operation cannot be performed by the operation means for a predetermined time limit ;
In response to the detection of the no-operation state by the detection means between the time when the determination means starts the process for determining the contents of one transaction and the time when the determination of the contents of one transaction is completed. control means for controlling the determining means to terminate the processing regarding the one transaction;
reporting means for notifying a predetermined reporting destination that the determining means has terminated the processing without completing it;
If the operation cannot be performed by the operation means for a predetermined time shorter than the time limit, the operator is informed that if the operation is not performed, the process will be terminated without being completed. a guide means for
A control device comprising:
操作者による操作を受ける操作手段を備える端末装置と、前記操作手段で受けられた操作に応じて取引の内容を決定するための処理を行う決定手段を備える登録処理装置とともに取引処理システムを構成する制御装置が備えるコンピュータを、
予め定められた制限時間に渡って前記操作手段により前記操作が受けられない無操作状態を検出する検出手段と、
一取引の内容の決定のための前記処理を前記決定手段が開始してから当該一取引の内容の決定が完了するまでの間に、前記検出手段により前記無操作状態が検出されたことに応じて、当該一取引に関する前記処理を終了するよう前記決定手段を制御する制御手段と、
前記決定手段が前記処理を完了することなく終了したことを予め定められた通報先に通報する通報手段と、
前記制限時間よりも短く予め定められた時間に渡って前記操作手段により前記操作が受けられない場合に、操作を行わないと前記処理が完了されることなく終了されることを前記操作者に案内する案内手段と、
して機能させるための情報処理プログラム。
A transaction processing system is constituted by a terminal device equipped with an operating means for receiving operations by an operator, and a registration processing device equipped with a determining means for performing processing for determining the content of a transaction according to the operation received by the operating means. A computer included in the control device,
detection means for detecting a non-operation state in which the operation cannot be performed by the operation means for a predetermined time limit ;
In response to the detection of the no-operation state by the detection means between the time when the determination means starts the process for determining the contents of one transaction and the time when the determination of the contents of one transaction is completed. control means for controlling the determining means to terminate the processing regarding the one transaction;
reporting means for notifying a predetermined reporting destination that the determining means has terminated the processing without completing it;
If the operation cannot be performed by the operation means for a predetermined time shorter than the time limit, the operator is informed that if the operation is not performed, the process will be terminated without being completed. a guide means for
An information processing program that makes it work.
JP2022151382A 2021-12-09 2022-09-22 Transaction processing system, control device and information processing program Active JP7368573B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2022151382A JP7368573B2 (en) 2021-12-09 2022-09-22 Transaction processing system, control device and information processing program
JP2023176923A JP2023184562A (en) 2021-12-09 2023-10-12 Information processing device, information processing program, and control method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2021200034A JP7148703B2 (en) 2020-02-06 2021-12-09 Transaction processing system, control device and information processing program
JP2022151382A JP7368573B2 (en) 2021-12-09 2022-09-22 Transaction processing system, control device and information processing program

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2021200034A Division JP7148703B2 (en) 2020-02-06 2021-12-09 Transaction processing system, control device and information processing program

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2023176923A Division JP2023184562A (en) 2021-12-09 2023-10-12 Information processing device, information processing program, and control method

Publications (3)

Publication Number Publication Date
JP2022173337A JP2022173337A (en) 2022-11-18
JP2022173337A5 JP2022173337A5 (en) 2023-02-02
JP7368573B2 true JP7368573B2 (en) 2023-10-24

Family

ID=80641604

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2022151382A Active JP7368573B2 (en) 2021-12-09 2022-09-22 Transaction processing system, control device and information processing program
JP2023176923A Pending JP2023184562A (en) 2021-12-09 2023-10-12 Information processing device, information processing program, and control method

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2023176923A Pending JP2023184562A (en) 2021-12-09 2023-10-12 Information processing device, information processing program, and control method

Country Status (1)

Country Link
JP (2) JP7368573B2 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007156825A (en) 2005-12-05 2007-06-21 Ntt Data Corp Information processing system, information processor, and program
JP2012194896A (en) 2011-03-17 2012-10-11 Denso Corp Service providing system
JP2015069402A (en) 2013-09-30 2015-04-13 株式会社寺岡精工 Pos system
US20180197218A1 (en) 2017-01-12 2018-07-12 Verizon Patent And Licensing Inc. System and method for object detection in retail environment
JP2019153084A (en) 2018-03-02 2019-09-12 東芝テック株式会社 Terminal management device and program thereof

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007156825A (en) 2005-12-05 2007-06-21 Ntt Data Corp Information processing system, information processor, and program
JP2012194896A (en) 2011-03-17 2012-10-11 Denso Corp Service providing system
JP2015069402A (en) 2013-09-30 2015-04-13 株式会社寺岡精工 Pos system
US20180197218A1 (en) 2017-01-12 2018-07-12 Verizon Patent And Licensing Inc. System and method for object detection in retail environment
JP2019153084A (en) 2018-03-02 2019-09-12 東芝テック株式会社 Terminal management device and program thereof

Also Published As

Publication number Publication date
JP2022173337A (en) 2022-11-18
JP2023184562A (en) 2023-12-28

Similar Documents

Publication Publication Date Title
US20210142306A1 (en) Transaction processing system
EP3876175A1 (en) Transaction processing system and method
JP7368573B2 (en) Transaction processing system, control device and information processing program
JP7478768B2 (en) Transaction Processing System
JP6993443B2 (en) Transaction processing system, control device and information processing program
JP7148703B2 (en) Transaction processing system, control device and information processing program
JP7348257B2 (en) information processing equipment
JP6952144B2 (en) Transaction processing system, transaction support device, information processing program and transaction processing method
WO2021079719A1 (en) Management server, management system, control method, and storage medium
JP7407656B2 (en) Information processing device and information processing program
JP7475961B2 (en) Transaction Processing System
WO2022050383A1 (en) Transaction processing device, transaction processing method, and program recording medium
US20220327510A1 (en) Transaction processing system, transaction supporting apparatus, information processing program, and transaction processing method
US20210182819A1 (en) Transaction processing system
US20230096680A1 (en) Information processing device and information processing method
JP2022139573A (en) Commodity sales processing system

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20230104

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20230125

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230125

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20230703

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20230912

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231012

R150 Certificate of patent or registration of utility model

Ref document number: 7368573

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150