JP7407656B2 - 情報処理装置及び情報処理プログラム - Google Patents

情報処理装置及び情報処理プログラム Download PDF

Info

Publication number
JP7407656B2
JP7407656B2 JP2020088654A JP2020088654A JP7407656B2 JP 7407656 B2 JP7407656 B2 JP 7407656B2 JP 2020088654 A JP2020088654 A JP 2020088654A JP 2020088654 A JP2020088654 A JP 2020088654A JP 7407656 B2 JP7407656 B2 JP 7407656B2
Authority
JP
Japan
Prior art keywords
processor
data
store
act
user terminal
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
JP2020088654A
Other languages
English (en)
Other versions
JP2021184129A (ja
Inventor
涼介 大江
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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
Application filed by Toshiba TEC Corp filed Critical Toshiba TEC Corp
Priority to JP2020088654A priority Critical patent/JP7407656B2/ja
Priority to US17/200,641 priority patent/US20210365914A1/en
Publication of JP2021184129A publication Critical patent/JP2021184129A/ja
Priority to JP2023213944A priority patent/JP2024019619A/ja
Application granted granted Critical
Publication of JP7407656B2 publication Critical patent/JP7407656B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/20Point-of-sale [POS] network systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/32Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
    • G06Q20/325Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices using wireless networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • GPHYSICS
    • G07CHECKING-DEVICES
    • G07GREGISTERING THE RECEIPT OF CASH, VALUABLES, OR TOKENS
    • G07G1/00Cash registers
    • G07G1/0036Checkout procedures
    • G07G1/0045Checkout procedures with a code reader for reading of an identifying code of the article to be registered, e.g. barcode reader or radio-frequency identity [RFID] reader
    • G07G1/0081Checkout procedures with a code reader for reading of an identifying code of the article to be registered, e.g. barcode reader or radio-frequency identity [RFID] reader the reader being a portable scanner or data reader
    • GPHYSICS
    • G08SIGNALLING
    • G08BSIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
    • G08B3/00Audible signalling systems; Audible personal calling systems
    • G08B3/10Audible signalling systems; Audible personal calling systems using electric transmission; using electromagnetic transmission
    • G08B3/1008Personal calling arrangements or devices, i.e. paging systems
    • G08B3/1016Personal calling arrangements or devices, i.e. paging systems using wireless transmission

Landscapes

  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Finance (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Electromagnetism (AREA)
  • Computer Security & Cryptography (AREA)
  • Cash Registers Or Receiving Machines (AREA)

Description

本発明の実施形態は、情報処理装置及び情報処理プログラムに関する。
取引内容の登録を、客による移動端末装置の操作に応じて行うようにした取引処理システムが、例えばカートPOSシステム又はスマホPOSシステムなどとして考えられている。
このようなシステムにおいては、客が、移動中に移動端末装置の操作に気を取られると好ましくない。
このような事情から、客等の操作者が移動中に操作に気を取られることを防止できることが望まれていた。
特開2019-168839号公報
本発明が解決しようとする課題は、操作者が移動中に操作に気を取られることを防止できる端末装置及び情報処理プログラムを提供することである。
実施形態の情報処理装置は、取得手段、第1の検出手段、第2の検出手段及び決定手段を備える。取得手段は、操作者による操作に応じて識別子を取得する。第1の検出手段は、操作者が予め定められたエリア内に存在する存在状態を検出する。第2の検出手段は、操作者の移動を検出する。決定手段は、第1の検出手段により存在状態が検出され、かつ第2の検出手段により移動が検出されていないときに、取得手段により取得された識別子を取引対象の識別子として決定する。
一実施形態に係る取引処理システムの概略構成を示すブロック図。 図1中の店舗サーバの要部回路構成を示すブロック図。 図1中の仮想POSサーバの要部回路構成を示すブロック図。 図1中のモバイルコントローラの要部回路構成を示すブロック図。 図4中の取引管理データベースに含まれるデータレコードの主要なデータ構造を示す模式図。 図4中の登録データベースに含まれるデータレコードの主要なデータ構造を示す模式図。 図1中の通信サーバの要部回路構成を示すブロック図。 図1中のユーザ端末の要部回路構成を示すブロック図。 図8に示されるプロセッサによる情報処理のフローチャート。 図8に示されるプロセッサによる情報処理のフローチャート。 図8に示されるプロセッサによる情報処理のフローチャート。 図8に示されるプロセッサによる情報処理のフローチャート。 図8に示されるプロセッサによる情報処理のフローチャート。 図4に示されるプロセッサによる情報処理のフローチャート。 図4に示されるプロセッサによる情報処理のフローチャート。 図4に示されるプロセッサによる情報処理のフローチャート。 図4に示されるプロセッサによる情報処理のフローチャート。 一覧画面の一例を示す図。 登録画面の一例を示す図。 警報画面の一例を示す図。 一覧画面の一例を示す図。 会計画面の一例を示す図。
以下、取引処理システムの一実施形態について、図面を用いて説明する。
図1は、本実施形態に係る取引処理システムの概略構成を示すブロック図である。
取引処理システムは、複数の店舗システム100、中継サーバ200及びユーザ端末300を、通信ネットワーク400を介して通信可能として構成される。
図1では、2つの店舗システム100を示している。これら店舗システム100は、取引処理システムを利用するそれぞれ異なる店舗A及び店舗Bにそれぞれ設けられる。取引処理システムを利用する店舗が3つ以上存在してもよく、店舗毎に店舗システム100が設けられる。なお以下において、各店舗に設けられた店舗システム100を区別する必要がある場合には、店舗Aに設けられた店舗システム100を店舗システム100-1と表し、店舗Bに設けられた店舗システム100を店舗システム100-2と表す。
店舗Aを運営する事業者は、店舗Bを運営する事業者と同じであっても、別であってもよい。その他の店舗で取引システムが利用される場合も、その店舗を運営する事業者は、店舗A又は店舗Bを運営する事業者と同じであっても、別であってもよい。
中継サーバ200は、ユーザ端末300と店舗システム100との間でのデータ通信を中継する。中継サーバ200は例えば、通信ネットワーク400を介したクラウドサービスとしてデータ通信の中継機能を提供する。
ユーザ端末300は、取引システムを利用した買い物を店舗にて行う客のためのユーザインタフェースとして機能する情報処理装置である。ユーザ端末300は、店舗システム100と無線通信する機能と、通信ネットワーク400と無線通信する機能とを備える。ユーザ端末300としては、スマートフォン又はタブレット端末等のデータ通信機能を備えた通信端末が利用できる。ユーザ端末300は、客により所有されていてもよいし、店舗にて客に貸与されてもよい。
通信ネットワーク400としては例えば、インターネット、VPN(virtual private network)、LAN(local area network)、公衆通信網、移動体通信網などを、単独又は適宜に組み合わせて用いることができる。通信ネットワーク400としては典型的には、移動体通信網とインターネット又はVPNとが利用される。
各店舗システム100の概略的な構成は共通である。すなわち店舗システム100は、店舗サーバ1、仮想POSサーバ2、モバイルコントローラ3、通信サーバ4、会計機5及びアクセスポイント6を、店内通信ネットワーク7を介して通信可能として構成される。ただし、店舗サーバ1、仮想POSサーバ2、モバイルコントローラ3、通信サーバ4、会計機5、アクセスポイント6及び店内通信ネットワーク7は、後述する動作を実現するための機能が共通であればよく、完全に同一である必要は無い。また一部の店舗システム100は、図1に示されない装置を備えてもよい。
店舗サーバ1は、店舗システム100により後述のように実現される取引処理の対象となった複数の取引を総合的に管理する。店舗サーバ1は例えば、既存のPOSサーバと同様な機能を有する。
仮想POSサーバ2は、外部からの要求に応じて取引毎の購入商品の登録及び当該購入商品の代金の決済などのための情報処理を行う。つまり仮想POSサーバ2は、既存のPOS端末が備える機能を仮想的に実現する。仮想POSサーバ2が行う情報処理は、店舗毎の運営方針の違いに適応するようにカスタマイズされる。つまり、例えば店舗システム100-1に備えられた店舗サーバ1が行う情報処理と、店舗システム100-2に備えられた店舗サーバ1が行う情報処理とでは、一部相違する場合がある。
モバイルコントローラ3は、仮想POSサーバ2による上記の情報処理を、ユーザ端末300をユーザインタフェースデバイスとして用いつつ行わせるための支援を行う。
通信サーバ4は、店舗サーバ1、仮想POSサーバ2、モバイルコントローラ3及び会計機5が、通信ネットワーク400を介して中継サーバ200等とデータを授受するための通信処理を行う。
会計機5は、仮想POSサーバ2で管理されている取引毎の購入商品に関する代金を求めて、当該代金を客に決済させるための処理を行う。会計機5が上記の決済のために利用可能とする決済方法は、現金決済、クレジットカード決済、電子マネー決済、ポイント決済、コード決済(モバイル決済又はスマートフォン決済等とも称される)等、周知の決済方法の全て又は任意の一部であってよい。会計機5は、店員及び客のいずれにより操作されるのであってもよい。会計機5としては例えば、既存のセミセルフ方式のPOSシステムで用いられるセルフ方式の会計機を用いることができる。会計機5は、商品を購入商品として登録するための情報処理を行う機能を有していてもよい。この場合に会計機5としては例えば、既存のPOSシステムで用いられる対面式のPOS端末又は既存のセルフ方式のPOSシステムで用いられるセルフ式のPOS端末を用いることができる。
アクセスポイント6は、ユーザ端末300が無線通信により店内通信ネットワーク7へとアクセスすることを可能とするための通信処理を行う。アクセスポイント6としては例えば、IEEE802.11規格により無線通信を行う周知の通信デバイスを用いることができる。アクセスポイント6は、店舗の売場のどこからでもユーザ端末300が無線通信可能なように、店舗内に設置される。店舗規模によっては、複数のアクセスポイント6が、1つの店舗システム100に配置される場合もある。
店内通信ネットワーク7としては、インターネット、VPN、LAN、公衆通信網、移動体通信網などを、単独又は適宜に組み合わせて用いることができる。ただし典型的には、店内通信ネットワーク7は、LANである。
店舗システム100が設けられた店舗には、その入口付近にチェックイン用の2次元コードTCIが掲示され、その出口付近にチェックアウト用の2次元コードTCOが掲示される。2次元コードTCIは、チェックインのためのチェックインデータを表す。2次元コードTCOは、チェックアウトのためのチェックアウトデータを表す。チェックインデータ及びチェックアウトデータは店舗毎に異なる。このため、店舗A用の2次元コードTCI,TCOと店舗B用の2次元コードTCI,TCOとを区別する必要がある場合には、店舗A用を2次元コードTCIA,TCOAと表し、店舗B用を2次元コードTCIB,TCOBと表す。
チェックインデータは例えば、以下に示すような情報を表す。
(1) 店舗システム100の動作バージョン。例えば、2次元コードTCIAが表すチェックインデータは、店舗システム100-1の動作バージョンを表す。2次元コードTCIBが表すチェックインデータは、店舗システム100-2の動作バージョンを表す。
(2) 店舗システム100が設けられる店舗を運営する事業者を識別するための事業者コード。例えば2次元コードTCIAが表すチェックインデータは、店舗Aを運営する事業者に割り当てられた事業者コードを表す。2次元コードTCIBが表すチェックインデータは、店舗Bを運営する事業者に割り当てられた事業者コードを表す。
(3) 店舗システム100が設けられる店舗を識別するための店舗コード。例えば2次元コードTCIAが表すチェックインデータは、店舗Aに割り当てられた店舗コードを表す。2次元コードTCIBが表すチェックインデータは、店舗Bに割り当てられた店舗コードを表す。なお店舗コードは、取引処理システムを利用する全ての店舗の個々を識別可能なものであってもよいし、同じ事業者により運営される複数の店舗の個々を識別可能なものであってもよい。
(4) 店舗システム100が設けられる店舗を運営する事業者の名称。例えば2次元コードTCIAが表すチェックインデータは、店舗Aを運営する事業者の名称を表す。2次元コードTCIBが表すチェックインデータは、店舗Bを運営する事業者の名称を表す。
(5) 店舗システム100が設けられる店舗の名称。例えば2次元コードTCIAが表すチェックインデータは、店舗Aの名称を表す。2次元コードTCIBが表すチェックインデータは、店舗Bの名称を表す。
(6) 2次元コードTCIと2次元コードTCOとを区別するためのフラグ。チェックインデータにおける当該フラグは、チェックインデータであることを表す状態とされる。当該状態は、例えば“1”である。当該フラグは、全ての2次元コードTCIで共通である。
(7) 通信サーバ4のIPアドレス。例えば2次元コードTCIAが表すチェックインデータは、店舗システム100-1に含まれる通信サーバ4のIPアドレスを表す。2次元コードTCIBが表すチェックインデータは、店舗システム100-2に含まれる通信サーバ4のIPアドレスを表す。
(8) 中継サーバ200のドメイン名。当該ドメイン名は、全ての2次元コードTCIで共通である。ただし、ドメイン名が互いに異なる複数の中継サーバ200が、店舗毎に使い分けられてもよい。そしてこの場合には、2次元コードTCIが表すチェックインデータは、対応する店舗で使用される中継サーバ200のドメイン名が表される。
(9) 電子レシートサーバのアドレス。電子レシートサーバは、図1に示す取引処理システムに含まれず、通信ネットワーク400を介して電子レシートサービスを提供する。例えば2次元コードTCIAが表すチェックインデータは、店舗Aを運営する事業者が利用する電子レシートサービスを提供する電子レシートサーバに通信ネットワーク400を介してアクセスするためのアドレスを表す。2次元コードTCIBが表すチェックインデータは、店舗Bを運営する事業者が利用する電子レシートサービスを提供する電子レシートサーバに通信ネットワーク400を介してアクセスするためのアドレスを表す。当該アドレスは、全ての2次元コードTCIで共通であってもよいし、複数のアドレスのいずれかが2次元コードTCI毎に表されていてもよい。
(10) 店舗システム100とのデータ授受のためにユーザ端末300が、アクセスポイント6との無線通信及び通信ネットワーク400との無線通信とのいずれを利用すべきかを示すフラグ。例えば、店舗Aにおいては、店舗システム100-1とユーザ端末300とのデータ授受にアクセスポイント6との無線通信を利用するのであれば、当該フラグは例えば“1”とされる。例えば、店舗Bにおいては、店舗システム100-2とユーザ端末300とのデータ授受に通信ネットワーク400との無線通信を利用するのであれば、当該フラグは例えば“0”とされる。
(11) アクセスポイント6を識別するためのSSID(service set identifier)。例えば2次元コードTCIAが表すチェックインデータは、店舗システム100-1に含まれるアクセスポイント6を識別するSSIDを表す。2次元コードTCIBが表すチェックインデータは、店舗システム100-2に含まれるアクセスポイント6のSSIDを表す。
(12) アクセスポイント6にアクセスするためのパスワード。例えば2次元コードTCIAが表すチェックインデータは、店舗システム100-1に含まれるアクセスポイント6に設定されているパスワードを表す。2次元コードTCIBが表すチェックインデータは、店舗システム100-2に含まれるアクセスポイント6に設定されているパスワードを表す。
(13) アクセスポイント6が利用するセキュリティ方式の識別番号。当該識別番号は例えば、WPA2-PSK方式には“1”が、WPA-PSK方式には“2”が、そしてWEP方式には“3”が割り付けられる。例えば、店舗システム100-1に含まれるアクセスポイント6がセキュリティ方式としてWPA2-PSK方式を利用するならば、2次元コードTCIAが表すチェックインデータは当該識別番号として“1”を表す。また例えば、店舗システム100-2に含まれるアクセスポイント6がセキュリティ方式としてWPA-PSK方式を利用するならば、2次元コードTCIBが表すチェックインデータは当該識別番号として“2”を表す。
(14) ユーザ端末300が中継サーバ200との接続に失敗したときにエラーとするか、エラーとすることなく運用を続けるかを識別するためのフラグ。例えば、店舗Aにおいては、ユーザ端末300が中継サーバ200との接続に失敗したときにエラーとする設定であるならば、2次元コードTCIAが表すチェックインデータは当該フラグとして例えば“1”を表す。また例えば、店舗Bにおいては、ユーザ端末300が中継サーバ200との接続に失敗しても運用を続ける設定であるならば、2次元コードTCIBが表すチェックインデータは当該フラグとして例えば“0”を表す。
(15) ユーザ端末300のステータスに関する送信モードの識別番号。当該送信モードには、例えば第1モード、第2モード及び第3モードがある。当該送信モードの識別番号は例えば、第1モードには“1”が、第2モードには“2”が、第3モードには“3”が割り付けられる。第1モードでは、ユーザ端末300のステータスを中継サーバ200に送信する。第2モードでは、ユーザ端末300のステータスを店舗システム100に送信する。第2モードでは、ユーザ端末300のステータスを送信しない。例えば、店舗Aにおいては、送信モードとして第1モードを適用するのであれば、2次元コードTCIAが表すチェックインデータは当該識別番号として“1”を表す。また例えば、店舗Bにおいては、送信モードとして第2モードを適用するのであれば、2次元コードTCIBが表すチェックインデータは当該識別番号として“2”を表す。
(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次元コードTCIAが表すチェックインデータは当該識別番号として“1”を表す。また例えば、店舗Bにおいては、送信モードとして第2モードを適用するのであれば、2次元コードTCIBが表すチェックインデータは当該識別番号として“2”を表す。
(17) ログファイルを、通信ネットワーク400を介して中継サーバ200へとFTP(file transfer protocol)により送信する際に使用するホスト名又はIPアドレス。
(18) ログファイルを、通信ネットワーク400を介して中継サーバ200へとFTPにより送信する際に使用するユーザ名。
(19) ログファイルを、通信ネットワーク400を介して中継サーバ200へとFTPにより送信する際に使用するパスワード。
(20) 通信ネットワーク400を介して中継サーバ200へとFTPにより送信するログファイルのパス名。
(21) 商品コードの一種であるUPC(universal product cord)のチェックデジットを削除するか否かを識別するためのフラグ。例えば、店舗Aにおいては、当該のチェックデジットを削除しない運用であるならば、2次元コードTCIAが表すチェックインデータは当該フラグとして例えば“1”を表す。また例えば、店舗Bにおいては、当該のチェックデジットを削除する運用であるならば、2次元コードTCIBが表すチェックインデータは当該フラグとして例えば“0”を表す。
(22) ユーザ端末300においてカメラ画面を自動遷移させるまでの時間。2次元コードTCIAが表すチェックインデータは当該時間として、店舗Aに関して予め設定された時間を表す。2次元コードTCIBが表すチェックインデータは当該時間として、店舗Bに関して予め設定された時間を表す。
(23) ユーザ端末300がアクセスポイント6を介して店舗システム100と通信を行う際のタイムアウト時間。2次元コードTCIAが表すチェックインデータは当該時間として、店舗Aに関して予め設定された時間を表す。2次元コードTCIBが表すチェックインデータは当該時間として、店舗Bに関して予め設定された時間を表す。
(24) ユーザ端末300と店舗システム100とのアクセスポイント6を介した通信がタイムアウトした場合にリトライを許容する回数。2次元コードTCIAが表すチェックインデータは当該回数として、店舗Aに関して予め設定された回数を表す。2次元コードTCIBが表すチェックインデータは当該時間として、店舗Bに関して予め設定された回数を表す。
(25) ユーザ端末300が中継サーバ200を介して店舗システム100と通信を行う際のタイムアウト時間。2次元コードTCIAが表すチェックインデータは当該時間として、店舗Aに関して予め設定された時間を表す。2次元コードTCIBが表すチェックインデータは当該時間として、店舗Bに関して予め設定された時間を表す。
(26) ユーザ端末300と店舗システム100との中継サーバ200を介した通信がタイムアウトした場合にリトライを許容する回数。2次元コードTCIAが表すチェックインデータは当該回数として、店舗Aに関して予め設定された回数を表す。2次元コードTCIBが表すチェックインデータは当該時間として、店舗Bに関して予め設定された回数を表す。
(27) 店員による確認が必要な商品を対象とした取引に関する確認終了の宣言を認証するための認証処理で用いる認証データ。2次元コードTCIAが表すチェックインデータは、店舗Aに関して予め設定された認証データを表す。2次元コードTCIBが表すチェックインデータは、店舗Bに関して予め設定された認証データを表す。認証データは、店舗毎で異なるように定められることが好ましいが、異なる店舗で同じ認証データが設定されても構わない。
(28) 店舗システム100の動作モードを識別するためのデータ。例えば、店舗システム100-1が、取引処理システムを通常に運用する通常モードに設定されているならば、2次元コードTCIAが表すチェックインデータは当該データとして例えば“1”を表す。また例えば、店舗システム100-2が、取引処理システムをデモ運用するデモモードに設定されているならば、2次元コードTCIBが表すチェックインデータは当該データとして例えば“2”を表す。
(29) 会計機5へのデータ転送のモードを識別するためのデータ。例えば、店舗システム100-1が、会計機5からモバイルコントローラ3にデータ転送を要求するモードに設定されているならば、2次元コードTCIAが表すチェックインデータは当該データとして例えば“1”を表す。また例えば、店舗システム100-2が、会計機5からの要求無しにモバイルコントローラ3から会計機5へとデータ転送するモードに設定されているならば、2次元コードTCIBが表すチェックインデータは当該データとして例えば“2”を表す。
(30) ユーザ端末300での操作によるコード決済方式での決済を許容するか否かを表すフラグ。例えば、店舗Aでは当該のコード決済を許容されるならば、2次元コードTCIAが表すチェックインデータは当該フラグとして例えば“1”を表す。また例えば、店舗Bでは当該のコード決済が許容されないならば、2次元コードTCIBが表すチェックインデータは当該フラグとして例えば“0”を表す。
(31) 購入者の年齢制限が定められている商品(以下、年齢制限商品と称する)のユーザ端末300での登録を許容するか否かを識別するためのフラグ。例えば、店舗Aでは年齢制限商品のユーザ端末300での登録が許容されるならば、2次元コードTCIAが表すチェックインデータは当該フラグとして例えば“1”を表す。また例えば、店舗Bでは当該のコード決済が許容されないならば、2次元コードTCIBが表すチェックインデータは当該フラグとして例えば“0”を表す。
(32) ポイント会員の会員コードの入力モードを識別するためのデータ。例えば、店舗システム100-1が、会員コードを手入力するモードに設定されているならば、2次元コードTCIAが表すチェックインデータは当該データとして例えば“1”を表す。また例えば、店舗システム100-2が、バーコードの読み取りにより会員コードを入力するモードに設定されているならば、2次元コードTCIBが表すチェックインデータは当該データとして例えば“2”を表す。
(33) ポイント会員の会員コードを手入力するモードが設定されている場合に、会員コードの入力に際して店員の確認を必要とするか否かを識別するためのフラグ。例えば、店舗Aにて当該確認を必要とするならば、2次元コードTCIAが表すチェックインデータは当該フラグとして例えば“1”を表す。また例えば、店舗Bにて当該確認を不要とするならば、2次元コードTCIBが表すチェックインデータは当該フラグとして例えば“0”を表す。
(34) チェックイン時にユーザ端末300のバッテリ残量のチェックをするための閾値。当該閾値は、店舗毎又は事業者毎に設定される。例えば店舗Aを運営する事業者が当該閾値を「20%」と定めている場合は、2次元コードTCIAが表すチェックインデータは当該閾値として例えば“20”を表す。また例えば店舗Bが当該閾値を「25%」と定めている場合は、2次元コードTCIBが表すチェックインデータは当該閾値として例えば“25”を表す。
以上が、チェックインデータが表す情報の例である。ただし、チェックインデータは、以上に示した各種の情報のうちの一部を含まなくてもよい。またチェックインデータは、以上に示した各種の情報とは別の情報を表してもよい。
図2は店舗サーバ1の要部回路構成を示すブロック図である。
店舗サーバ1は、プロセッサ11、メインメモリ12、補助記憶ユニット13、通信インタフェース14及び伝送路15を含む。プロセッサ11、メインメモリ12、補助記憶ユニット13及び通信インタフェース14は、伝送路15を介して通信可能とされている。そして、プロセッサ11、メインメモリ12及び補助記憶ユニット13が伝送路15により接続されていることによって、店舗サーバ1を制御するためのコンピュータが構成される。
プロセッサ11は、上記コンピュータの中枢部分に相当する。プロセッサ11は、オペレーティングシステム及びアプリケーションプログラム等の情報処理プログラムに従って、店舗サーバ1としての各種の機能を実現するための情報処理を実行する。プロセッサ11は、例えばCPU(central processing unit)である。
メインメモリ12は、上記コンピュータの主記憶部分に相当する。メインメモリ12は、不揮発性のメモリ領域と揮発性のメモリ領域とを含む。メインメモリ12は、不揮発性のメモリ領域では上記の情報処理プログラムを記憶する。メインメモリ12は、プロセッサ11が情報処理を実行する上で必要なデータを不揮発性又は揮発性のメモリ領域で記憶する場合もある。メインメモリ12は、揮発性のメモリ領域を、プロセッサ11によってデータが適宜書き換えられるワークエリアとして使用する。不揮発性のメモリ領域は、例えばROM(read only memory)である。揮発性のメモリ領域は、例えば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は、上記の情報処理プログラムを記憶する場合もある。
通信インタフェース14は、店内通信ネットワーク7に接続された各部との間で所定の通信プロトコルに従いデータ通信を行う。通信インタフェース14としては、例えばLAN用の周知の通信デバイスを適用できる。
伝送路15は、アドレスバス、データバス及び制御信号線等を含み、接続された各部の間で授受されるデータ及び制御信号を伝送する。
補助記憶ユニット13は、情報処理プログラムの1つである店舗管理アプリAPAAを記憶する。店舗管理アプリAPAAは、アプリケーションプログラムであり、店舗サーバ1としての機能を実現するための情報処理について記述されている。店舗管理アプリAPAAは、店舗毎、あるいは店舗を運営する事業者毎の店舗運営方針に適応して作成された別々のものであってよい。例えば、店舗Aと店舗Bとで売上データの管理方法が異なるならば、店舗システム100-1で用いられる店舗管理アプリAPAAは、店舗Aでの売上データの管理方法に適応した売上データの管理のための情報処理について記述され、店舗システム100-2で用いられる店舗管理アプリAPAAは、店舗Bでの売上データの管理方法に適応した売上データの管理のための情報処理について記述される。
補助記憶ユニット13の記憶領域の一部は、データベース群DBAAとして使用される。データベース群DBAAは、各種の情報管理のための複数のデータベースを含む。データベース群DBAAに含まれるデータベースの1つは、店舗で販売する商品を管理するための商品データベースである。商品データベースは、管理の対象となる商品に関連付けられたデータレコードの集合である。商品データベースのデータレコードには、商品コード、価格及び商品名等の、関連付けられた商品に関するデータが含まれる。商品コードは、商品をSKU(stock keeping unit)毎に識別するために定められた識別子であり、例えばJAN(Japanese article number)コードが用いられる。商品名は、商品を人間が区別し易いように定められた名称である。価格は、商品の販売の対価となる金額である。
データベース群DBAAに含まれるデータベースの1つは、店舗の利用者を管理するための利用者データベースである。利用者データベースは、利用者として登録された客に関連付けられたデータレコードの集合である。利用者データベースのデータレコードには、利用者コード及び利用者を特定するための属性情報等の、関連付けられた客に関するデータが含まれる。利用者コードは、利用者を個々に識別するために客毎に定められた一意の識別コードである。属性情報は、氏名、性別、年齢、住所、電話番号などを含み得る。また利用者データベースのデータレコードには、利用者が申告した決済情報を含む場合もある。決済情報は、クレジット番号又はコード決済ID(identifier)などである。また複数の決済方法を選択可能とする場合には、決済情報に決済方法を識別するための決済方法コードを含む場合もある。また、ポイントサービスを提供する店舗の場合には、ポイントサービスのID及び保有ポイント数などを決済情報に含む場合もある。
この他、データベース群DBAAには、既存のPOSシステムにおけるPOSサーバで管理されるような様々なデータベースが含まれ得る。なお、データベース群DBAAがどのようなデータベースを含むか、あるいはそれらデータベースがどのようなデータをどのような構造で含んでいるかは、店舗毎に定められてよい。
図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と同等であるので、その説明は省略する。
ただし補助記憶ユニット23は、店舗管理アプリAPAAに代えて仮想POSアプリAPBAを記憶する。仮想POSアプリAPBAは、アプリケーションプログラムであり、仮想POSサーバ2としての機能を実現するための情報処理について記述されている。仮想POSアプリAPBAは、店舗毎、あるいは店舗を運営する事業者毎の店舗運営方針に適応して作成された別々のものであってよい。例えば、店舗Aでは、店舗Bでは行われない割引サービスを行うのであるならば、店舗システム100-1で用いられる仮想POSアプリAPBAは、当該割引サービスを実現するための情報処理について記述され、店舗システム100-2で用いられる仮想POSアプリAPBAは、当該割引サービスを実現するための情報処理について記述されない。
また補助記憶ユニット23の記憶領域の一部は、データベース群DBAAに代えて取引データベースDBBAとして使用される。取引データベースDBBAは、店内で買い回り中である客との取引に関連付けられたデータレコードの集合である。取引データベースDBBAのデータレコードには、取引コードと、購入商品として登録済みの商品に関する商品データとを含む。取引コードは、取引の個々を識別するために取引毎に設定された一意の識別コードである。商品データは、商品コード、商品名、価格及び個数などを表す。取引データベースDBBAの構造は、店舗毎、あるいは店舗を運営する事業者毎の店舗運営方針に適応して個別に定められてよい。
図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と同等であるので、その説明は省略する。
ただし補助記憶ユニット33は、店舗管理アプリAPAAに代えて登録支援アプリAPCAを記憶する。登録支援アプリAPCAは、アプリケーションプログラムであり、購入商品の登録を支援するための後述する情報処理について記述されている。登録支援アプリAPCAは、各店舗システム100で共通である。ただし、登録支援アプリAPCAに基づく情報処理のための各種の設定は、店舗システム100毎にカスタマイズされてもよい。
また補助記憶ユニット23の記憶領域の一部は、データベース群DBAAに代えて取引管理データベースDBCA及び登録データベースDBCBとして使用される。これら取引管理データベースDBCA及び登録データベースDBCBの構造は、各店舗システム100で共通である。
図5は取引管理データベースDBCAに含まれるデータレコードDRAの主要なデータ構造を示す模式図である。
取引管理データベースDBCAは、店内で客が利用するユーザ端末300に関連付けられたデータレコードDRAの集合である。このため、店内に存在する客が1人であるときには、取引管理データベースDBCAはデータレコードDRAを1つ含む。また店内に存在する客が1人も居ないときには、取引管理データベースDBCAはデータレコードDRAを含まない。そしてデータレコードDRAは、フィールドFAA,FAB,FACを含む。
フィールドFAAには、関連付けられたユーザ端末300を他のユーザ端末300と識別するための端末コードがセットされる。端末コードとしては例えば、ユーザ端末300として利用される通信端末の個々を識別するために通信端末毎に設定された一意の識別コードを用いることができる。あるいは端末コードとしては例えば、後述するスマホPOSアプリをユーザ端末300にインストールする際に当該スマホPOSアプリに対して設定される識別コードを用いることができる。フィールドFABには、関連付けられたユーザ端末300を使用している客を他の客と識別するための会員コードがセットされる。フィールドFACには、関連付けられたユーザ端末300を用いて行われる取引の取引コードがセットされる。
図6は登録データベースDBCBに含まれるデータレコードDRBの主要なデータ構造を示す模式図である。
登録データベースDBCBは、店内で買い回り中である客との取引に関連付けられたデータレコードDRBの集合である。そしてデータレコードDRBは、フィールドFBA,FBBを含む。データレコードDRBはまた、フィールドFBC,FBD,…を含み得る。
フィールドFBAには、関連付けられた取引の取引コードがセットされる。この取引コードは、関連付けられた取引で使用されているユーザ端末300に関連付けられたデータレコードDRAのフィールドFABにセットされた取引コードと同一である。フィールドFBBには、関連付けられた取引に関して試みられた商品登録に関する登録データがセットされる。登録データについては、後述する。
データレコードDRBには、関連付けられた取引に関して2つ以上の購入商品の登録が試みられている場合に、フィールドFBC以降のフィールドが含まれる。そしてフィールドFBC以降のフィールドにも、フィールドFBBと同様な登録データがセットされる。
図7は通信サーバ4の要部回路構成を示すブロック図である。
通信サーバ4は、プロセッサ41、メインメモリ42、補助記憶ユニット43、通信インタフェース44、通信ユニット45及び伝送路46を含む。プロセッサ41、メインメモリ42、補助記憶ユニット43、通信インタフェース44及び通信ユニット45は、伝送路46を介して通信可能とされている。そして、プロセッサ41、メインメモリ42及び補助記憶ユニット43が伝送路46により接続されていることによって、通信サーバ4を制御するためのコンピュータが構成される。なお、プロセッサ41、メインメモリ42、補助記憶ユニット43、通信インタフェース44及び伝送路46の機能の概略は、プロセッサ11、メインメモリ12、補助記憶ユニット13、通信インタフェース14及び伝送路15と同等であるので、その説明は省略する。
通信ユニット45は通信ネットワーク400を介したデータ通信のための通信処理を行う。通信ユニット45としては、例えば周知のインターネット接続デバイスを適用できる。
補助記憶ユニット43は、店舗管理アプリAPAAに代えて通信処理アプリAPDAを記憶する。通信処理アプリAPDAは、アプリケーションプログラムであり、モバイルコントローラ3とユーザ端末300との間でのデータ授受を可能とするべく、通信ネットワーク400を介して中継サーバ200と通信するための情報処理について記述されている。通信処理アプリAPDAは、各店舗システム100で共通である。ただし、通信処理アプリAPDAに基づく情報処理のための各種の設定は、店舗システム100毎にカスタマイズされてもよい。
図8はユーザ端末300の要部回路構成を示すブロック図である。
ユーザ端末300は、プロセッサ301、メインメモリ302、補助記憶ユニット303、タッチパネル304、カメラ305、サウンドユニット306、センサ群307、無線通信ユニット308、モバイル通信ユニット309及び伝送路310等を備える。プロセッサ301と、メインメモリ302、補助記憶ユニット303、タッチパネル304、カメラ305、サウンドユニット306、センサ群307、無線通信ユニット308及びモバイル通信ユニット309とは、伝送路310を介して通信可能とされている。そして、プロセッサ301、メインメモリ302及び補助記憶ユニット303が伝送路310により接続されていることによって、ユーザ端末300を制御するためのコンピュータが構成される。なお、プロセッサ301、メインメモリ302、補助記憶ユニット303及び伝送路310の機能の概略は、プロセッサ11、メインメモリ12、補助記憶ユニット13及び伝送路15と同等であるので、その説明は省略する。
タッチパネル304は、ユーザ端末300の入力デバイス及び表示デバイスとして機能する。
カメラ305は、光学系及びイメージセンサを含み、光学系により形成される視野内の像を表した画像データをイメージセンサにより生成する。
サウンドユニット306は、音声及びメロディなどの各種サウンドを出力する。
センサ群307は、角速度センサ及びGPS(global positioning system)センサなどの各種のセンサを含む。
無線通信ユニット308は、アクセスポイント6との間で無線通信プロトコルに従った無線通信によりデータを授受する。無線通信ユニット308としては、例えばIEEE802.11規格に準拠した周知の通信デバイスを利用できる。
モバイル通信ユニット309は、通信ネットワーク400を介したデータ通信のインタフェースである。モバイル通信ユニット309としては、例えば移動通信網を介したデータ通信を行うための周知の通信デバイスを利用できる。
なお補助記憶ユニット303は、情報処理プログラムの1つであるスマホPOSアプリAPEAを記憶する。スマホPOSアプリAPEAは、アプリケーションプログラムであり、ユーザ端末300を店舗システム100のユーザインタフェースとして機能させるための後述する情報処理について記述されている。スマホPOSアプリAPEAは、複数のユーザ端末300で共通に利用される。
さて、店舗サーバ1、仮想POSサーバ2又はモバイルコントローラ3のハードウェアとしては、例えば汎用のサーバ装置を用いることができる。そして店舗サーバ1、仮想POSサーバ2又はモバイルコントローラ3の譲渡は一般に、補助記憶ユニット13,23又は33に店舗管理アプリAPAA、仮想POSアプリAPBA又は登録支援アプリAPCAがそれぞれ記憶され、データベース群DBAA、取引データベースDBBA、又は取引管理データベースDBCA及び登録データベースDBCBが記憶されない状態にて行われる。しかし、店舗管理アプリAPAA、仮想POSアプリAPBA又は登録支援アプリAPCAが補助記憶ユニット13,23又は33に記憶されない状態、あるいは同種の別バージョンのアプリケーションプログラムが補助記憶ユニット13,23又は33に記憶された状態のハードウェアと、店舗管理アプリAPAA、仮想POSアプリAPBA又は登録支援アプリAPCAとが個別に譲渡されてもよい。そして、任意の作業者の操作に応じて、補助記憶ユニット13,23又は33に店舗管理アプリAPAA、仮想POSアプリAPBA又は登録支援アプリAPCAが書き込まれることによって、店舗サーバ1、仮想POSサーバ2又はモバイルコントローラ3が構成されてもよい。店舗管理アプリAPAA、仮想POSアプリAPBA又は登録支援アプリAPCAの譲渡は、磁気ディスク、光磁気ディスク、光ディスク、半導体メモリなどのようなリムーバブルな記録媒体に記録して、あるいはネットワークを介した通信により行うことができる。取引データベースDBBA、又は取引管理データベースDBCA及び登録データベースDBCBは、プロセッサ11,21又は31が店舗管理アプリAPAA、仮想POSアプリAPBA又は登録支援アプリAPCAに基づく情報処理を実行することで、補助記憶ユニット13,23又は33内に構成される。なお、店舗管理アプリAPAA及びデータベース群DBAAに含まれるデータベースの少なくとも一部が、メインメモリ12に記憶されてもよい。仮想POSアプリAPBA及び取引データベースDBBAの少なくとも一部が、メインメモリ22に記憶されてもよい。登録支援アプリAPCA、取引管理データベースDBCA及び登録データベースDBCBの少なくとも一部が、メインメモリ32に記憶されてもよい。
次に以上のように構成された取引処理システムの動作について説明する。なお、以下に説明する各種の処理の内容は一例であって、一部の処理の順序の変更、一部の処理の省略、あるいは別の処理の追加などは適宜に可能である。例えば、以下の説明では、本実施形態の特徴的な動作を分かり易く説明するために、一部の処理についての説明を省略している。例えば、何らかのエラーが発生した場合に、そのエラーに対処するための処理が行われる場合があるが、そのような処理の一部については記載を省略している。
なお、以下に説明する取引処理システムの動作により客に提供されるサービスをスマホPOSサービスと称する。
スマホPOSサービスを利用するためにユーザ端末300が店舗システム100とデータを授受するが、そのための通信にアクセスポイント6との無線通信及び通信ネットワーク400との無線通信とのいずれを利用するかは、チェックインデータに含まれるフラグの状態により決まる。しかしながら以下においては説明の簡略化のために、アクセスポイント6との無線通信のみを用いる場合について説明する。また、会計機5で会計を行わせるために仮想POSサーバ2から会計機5へのデータ転送を、会計機5からモバイルコントローラ3にデータ転送を要求するモードと、会計機5からの要求無しにモバイルコントローラ3から会計機5へとデータ転送するモードとのいずれを利用するかは、チェックインデータに含まれるフラグの状態により決まる。しかしながら以下においては説明の簡略化のために、会計機5からモバイルコントローラ3にデータ転送を要求するモードが固定的に用いられることとして説明する。
客は、スマホPOSサービスを利用するためには、自らが所有するスマートフォン等にスマホPOSアプリAPEAをインストールして、ユーザ端末300として利用可能としておく。あるいは、客は、タブレット端末などにスマホPOSアプリAPEAをインストールして構成されたユーザ端末300を店舗にて借りる。そして客は、スマホPOSアプリAPEAに基づく情報処理を起動した状態のユーザ端末300を持って、店舗システム100が設けられたいずれかの店舗へと入る。
さてユーザ端末300においてプロセッサ301は、スマホPOSアプリAPEAに基づいて図9、図10、図11、図12及び図13に示すような情報処理を実行する。
まず図9に示すACT101としてプロセッサ301は、メインメニュー画面をタッチパネル304に表示させる。メインメニュー画面は、スマホPOSアプリAPEAに基づいて行うべきいくつかの処理のいずれかの指定を受けるための画面である。メインメニュー画面には、買い物の開始を指定するためのGUI(graphical user interface)要素を含む、複数のGUI要素が配置されている。なおGUI要素は、例えばソフトキーである。
ACT102としてプロセッサ301は、買い物の開始が指定されたか否かを確認する。そしてプロセッサ301は、該当の指定が確認できないならばNOと判定し、ACT103へと進む。
ACT103としてプロセッサ301は、買い物の開始以外の指定がなされたか否かを確認する。そしてプロセッサ301は、該当の指定が確認できないならばNOと判定し、ACT102へと戻る。
かくしてプロセッサ301はACT102及びACT103としては、メインメニュー画面での何らかの指定がなされるのを待ち受ける。そしてプロセッサ301は、買い物の開始以外の指定がなされたならば、ACT103にてYESと判定し、指定された処理へと進む。なおこの場合のプロセッサ301の処理についての説明は省略する。
客は、店舗に入って買い物を開始する場合には、メインメニュー画面にて買い物の開始を指定するための予め定められた操作を行う。
プロセッサ301は、買い物の開始を指定するための操作が例えばタッチパネル304にて検出されると、ACT102にてYESと判定し、ACT104へと進む。
ACT104としてプロセッサ301は、チェックイン用のスキャン画面をタッチパネル304に表示させる。チェックイン用のスキャン画面は、チェックイン用の2次元コードTCIを読み取るように客に促す画面である。プロセッサ301は例えば、カメラ305を起動し、これによりカメラ305で得られた画像に、2次元コードTCIを読み取るように客に促す文字メッセージと、2次元コードTCを翳すべき位置の目安を示すラインとを重ねてスキャン画面を生成する。
客は、スキャン画面がタッチパネル304に表示されたならば、店舗の入口付近に掲示されている2次元コードTCIがスキャン画面に映り込むようにカメラ305を2次元コードTCIに向ける。
ACT105としてプロセッサ301は、2次元コードが読み取れるのを待ち受ける。このときにプロセッサ301は、カメラ305で得られる画像を繰り返し解析し、2次元コードの読み取りを試みる。この2次元コードの読み取りは、スマホPOSアプリAPEAに基づく処理として行われてもよいし、2次元コードの読み取り用の別のアプリケーションプログラムに基づく処理として行われてもよい。そしてプロセッサ301は、2次元コードが読み取れたならばYESと判定し、ACT106へと進む。
ACT106としてプロセッサ301は、読み取った2次元コードが表すデータがチェックインデータであるか否かを確認する。そしてプロセッサ301は、チェックインデータでなければNOと判定し、ACT105へと戻る。このときにプロセッサ301は、誤った2次元コードが読み取られたことを客に通知する画面をタッチパネル304に表示させてもよい。
プロセッサ301は、読み取った2次元コードが表すデータがチェックインデータであることが確認できたならば、ACT106にてYESと判定し、ACT107へと進む。
ACT107としてプロセッサ301は、読み取ったチェックインデータを、メインメモリ302又は補助記憶ユニット303に保存する。
ACT108としてプロセッサ301は、モバイルコントローラ3に対して、チェックインを要求する。具体的にはプロセッサ301は、チェックインデータに表されたデータに基づいて、無線通信ユニット308とアクセスポイント6との無線通信を確立する。例えば店舗Aにて2次元コードTCIAに客によってカメラ305が向けられたならば、2次元コードTCIAが表すチェックインデータに基づいてプロセッサ301は、店舗システム100-1に設けられたアクセスポイント6との無線通信を確立する。そしてプロセッサ301は、アクセスポイント6との無線通信を介して、チェックインを要求するための要求データをモバイルコントローラ3に宛てて送信する。上述のように店舗システム100-1に設けられたアクセスポイント6との無線通信が確立している場合には、当該の要求データは、店舗システム100-1に設けられたアクセスポイント6及び店内通信ネットワーク7を介して、店舗システム100-1に設けられたモバイルコントローラ3へと伝送される。なおプロセッサ301は、チェックインを要求するための要求データには、チェックインの要求であることを識別するための識別データと、端末コードとを含める。プロセッサ301は、客がスマホPOSサービスの利用登録者であり、会員コードを有している場合には、その会員コードも要求データに含める。会員コードは例えば、ユーザ端末300の補助記憶ユニット303で記憶される。プロセッサ301は、例えば客を認証するためのデータなどのその他のデータを要求データに含めてもよい。
なお、以降において説明するユーザ端末300からモバイルコントローラ3への各種の要求は、上記と同様に、要求の理由を識別するための識別データを含んだ要求データをアクセスポイント6及び店内通信ネットワーク7を介してユーザ端末300からモバイルコントローラ3へと送ることにより実現される。
モバイルコントローラ3においてプロセッサ31は、チェックインを要求するための要求データが通信インタフェース34によって受信されると、チェックインしようとしている客との取引に関する情報処理を開始する。
図14、図15、図16及び図17はプロセッサ31による情報処理のフローチャートである。
プロセッサ31は、チェックインを要求するための要求データが通信インタフェース34によって受信される毎に、当該情報処理を開始する。別の要求に基づいて開始した情報処理を既に実行している場合には、それに並行して新たな情報処理を開始する。つまりプロセッサ31は、複数のユーザ端末300をそれぞれ対象として情報処理を複数並行して実行する場合がある。以下においては、単に「ユーザ端末300」と表す場合には、プロセッサ31の情報処理の対象となっているユーザ端末300を指すこととする。
図14のACT201としてプロセッサ31は、チェックイン処理を行う。プロセッサ31は例えば、仮想POSサーバ2に取引の開始を要求し、取引コードの通知を受ける。そしてプロセッサ31は、要求データに含まれた端末コードをフィールドFAAにセットした新たなデータレコードDRAを取引管理データベースDBCAに追加する。プロセッサ31は、要求データに会員コードが含まれるならば、当該会員コードを、新たなデータレコードDRAのフィールドFABにセットする。プロセッサ31は、上記の通知された取引コードを、新たなデータレコードDRAのフィールドFACにセットする。これにより、チェックインを要求したユーザ端末300を用いて行われる取引の管理が開始される。
なお仮想POSサーバ2においてプロセッサ21は、取引の開始がモバイルコントローラ3から要求されたならば、予め定められたルールに従って取引コードを決定し、その取引コードに関連付けての購入商品の登録処理を開始する。またプロセッサ21は、決定した取引コードをモバイルコントローラ3に通知する。
ACT202としてプロセッサ31は、チェックイン処理を正常に完了したか否かを確認する。そしてプロセッサ31は、何らかの異常によりチェックイン処理を正常に完了することができなかったならばNOと判定し、ACT203へと進む。
ACT203としてプロセッサ31は、ユーザ端末300に対してエラーを通知する。プロセッサ31は例えば、エラー通知のための通知データを、店内通信ネットワーク7及びアクセスポイント6を介してユーザ端末300へと送信する。プロセッサ31は、エラーの通知であることを識別するための識別データを通知データに含める。プロセッサ31は、エラーの原因を表すエラーコードを通知データに含めてもよい。
なお、以降において説明するモバイルコントローラ3からユーザ端末300への各種の通知は、上記と同様に、通知の理由を識別するための識別データを含んだ通知データを店内通信ネットワーク7及びアクセスポイント6を介してモバイルコントローラ3からユーザ端末300へと送ることにより実現される。
プロセッサ31は一方、チェックイン処理を正常に完了することができたならばACT202にてYESと判定し、ACT204へと進む。
ACT204としてプロセッサ31は、ユーザ端末300に対してチェックイン完了を通知する。プロセッサ31は例えば、チェックイン完了の通知のための通知データを、店内通信ネットワーク7及びアクセスポイント6を介してユーザ端末300へと送信する。プロセッサ31は、チェックイン完了の通知であることを識別するための識別データを通知データに含める。
ユーザ端末300においてプロセッサ301は、図9中のACT108にてチェックインを要求した後には、ACT109へと進む。
ACT109としてプロセッサ301は、チェックイン完了が通知されたか否かを確認する。そしてプロセッサ301は、当該の通知を確認できないならばNOと判定し、ACT110へと進む。
ACT110としてプロセッサ301は、チェックインのエラーが通知されたか否かを確認する。そしてプロセッサ301は、当該の通知を確認できないならばNOと判定し、ACT109へと戻る。
かくしてプロセッサ301はACT109及びACT110としては、チェックインの完了又はエラーが通知されるのを待ち受ける。そしてプロセッサ301は、前述のエラー通知のための通知データが無線通信ユニット308により受信されたならばACT110にてYESと判定し、ACT111へと進む。
ACT111としてプロセッサ301は、エラー画面をタッチパネル304に表示させる。エラー画面は、チェックインできないことを客に報知するものとして定められた画面である。プロセッサ301は、例えばエラー画面中に表したGUI要素の操作などによりエラー画面の表示解消が指示されたならば、ACT101に戻る。
プロセッサ301は一方、前述のチェックイン完了の通知のための通知データが無線通信ユニット308により受信されたならばACT109にてYESと判定し、図10中のACT112へと進む。なおこのときには、ユーザ端末300が店舗内に存在している状態であることが明らかである。つまりプロセッサ301はこのとき、ユーザ端末300を利用している操作者が、予め定められたエリアの一例である店舗内に存在する状態であることを検出することになる。かくしてスマホPOSアプリAPEAに基づく情報処理をプロセッサ301が実行することによって、プロセッサ301を中枢部分とするコンピュータは第1の検出手段として機能する。
ACT112としてプロセッサ301は、一覧画面をタッチパネル304に表示させる。一覧画面は、登録済みの購入商品の一覧を表した画面である。
図18は一覧画面SCAの一例を示す図である。
一覧画面SCAは、表示エリアARAA,ARAB及びボタンBUAA,BUAB,BUACを含む。表示エリアARAAは、購入商品の総数と、購入商品の代金の総額とを表す。表示エリアARABは、購入商品の一覧を表す。ボタンBUAAは、購入商品の全てを取り消して買い物を中止することを客が宣言するためのソフトキーである。ボタンBUABは、購入商品として登録する商品のスキャンを開始することを客が宣言するためのソフトキーである。ボタンBUACは、会計を開始することを客が宣言するためのソフトキーである。
なお、図18は、まだ購入商品の登録が行われていない状態の一覧画面SCAを示している。このため、表示エリアARAAには総数及び総額としていずれも“0”を表し、表示エリアARABには何も表さない。
ACT113としてプロセッサ301は、自らが備えられたユーザ端末300を操作している客の移動速度を測定する。プロセッサ301は例えば、当該客の移動速度を、自らが備えられたユーザ端末300の移動速度として測定する。プロセッサ301は例えば、センサ群307に含まれる角速度センサにより計測される角速度の変化に基づいて周知の処理によりユーザ端末300の移動速度を測定する。あるいはプロセッサ301は、センサ群307に含まれるGPSセンサにより測定される位置の変化に基づいて周知の処理によりユーザ端末300の移動速度を測定する。
ACT114としてプロセッサ301は、速度超過状態であるか否かを確認する。プロセッサ301は例えば、上記の測定した移動速度が予め定められた閾値以上であるか否かを確認する。そしてプロセッサ301は、移動速度が閾値未満であるならば、速度超過状態ではないとしてNOと判定し、ACT115へと進む。なおプロセッサ301はACT114としては、移動速度が閾値以下であるか否かを確認し、閾値以下である場合に速度超過状態ではないと判定するなど、別の処理を適用してもよい。閾値は、例えばスマホPOSアプリAPEAの作成者により任意に設定されてよい。また閾値は、店舗の管理者により任意に設定されて、チェックインデータに含められてもよい。ただし閾値は、客が実質的に移動しているときには速度超過状態であると判定されるように定められるべきである。これによりプロセッサ301は、ACT114にてYESと判定するとき、操作者である客の移動を検出していることになる。かくしてスマホPOSアプリAPEAに基づく情報処理をプロセッサ301が実行することによって、プロセッサ301を中枢部分とするコンピュータは第2の検出手段として機能する。
ACT115としてプロセッサ301は、商品のスキャン開始が指定されたか否かを確認する。そしてプロセッサ301は、該当の指定が確認できなければNOと判定し、ACT116へと進む。
ACT116としてプロセッサ301は、数量の変更が指定されたか否かを確認する。そしてプロセッサ301は、該当の指定が確認できなければNOと判定し、ACT117へと進む。
ACT117としてプロセッサ301は、買い物の中止が指定されたか否かを確認する。そしてプロセッサ301は、該当の指定が確認できなければNOと判定し、ACT118へと進む。
ACT118としてプロセッサ301は、会計の開始が指定されたか否かを確認する。そしてプロセッサ301は、該当の指定が確認できなければNOと判定し、ACT113へと戻る。
かくしてプロセッサ301は、速度超過状態ではない場合には、ACT115乃至ACT118として、スキャン開始、数量、中止、会計開始のいずれかが指定されるのを待ち受ける。
一方、プロセッサ301は、移動速度が閾値以上であるならば、速度超過状態であるとしてACT114にてYESと判定し、ACT119へと進む。
ACT119としてプロセッサ301は、何らかの操作がなされたか否かを確認する。そしてプロセッサ301は、何らの操作も確認できないならばNOと判定し、ACT113へと戻る。つまりプロセッサ301は、速度超過状態である場合には、ACT119における確認を繰り返し、何らかの操作がなされるのを待ち受ける。そしてプロセッサ301は、この状態にて何らかの操作が行われたことを確認したならば、ACT119にてYESと判定し、ACT120へと進む。つまりプロセッサ301は、客が、閾値以上の移動速度で移動しながら、例えばスキャン開始、数量、中止、会計開始のいずれかを指定するための操作を行ったならば、ACT120へと進む。
ACT120としてプロセッサ301は、警報動作を実行する。警報動作は、移動中は操作できない旨を客に警告するための予め定められた動作である。プロセッサ301は例えば、サウンドユニット306を駆動して、予め定められた音声メッセージを出力させる。音声メッセージの出力は、聴覚的に客の注意を促すことができるので、ここでの警報に好適である。なおプロセッサ301は、音声メッセージの出力に代えて、又は音声メッセージの出力に加えて、サウンドユニット306による警報音の出力、タッチパネル304における警報画面の表示、あるいは図示しないランプの点灯などの動作を警報動作として実行してもよい。なお、客は操作のためにタッチパネル304での表示を目視していることも多い。このため、タッチパネル304などでの表示も、有効な警報となる。そしてプロセッサ301は、警報動作を終えたならば、ACT113以降を前述と同様に繰り返す。
客は、商品を購入商品として登録するならば、一覧画面SCAにおけるボタンBUABにタッチするなどの予め定められた操作によってスキャン開始を指定する。これに応じてプロセッサ301は、ACT115にてYESと判定し、図11中のACT121へと進む。
ACT121としてプロセッサ301は、登録画面をタッチパネル304に表示させる。登録画面は、購入商品として登録する商品の商品コードを表したバーコードを読み取るように客に促す画面である。
図19は登録画面SCBの一例を示す図である。
登録画面SCBは、表示エリアARBA、メッセージMEBA及びボタンBUBAを含む。表示エリアARBAは、カメラ305で得られた画像を表示する。メッセージMEBAは、商品のバーコードを読み取るように客に促す文字メッセージである。ボタンBUBAは、商品コードのスキャンを中止することを客が宣言するためのソフトキーである。
プロセッサ301は例えば、カメラ305を起動し、これによりカメラ305で得られた画像に、表示エリアARBAの範囲を表すラインと、メッセージMEBA及びボタンBUBAとを表した画像を重ねて登録画面SCBを生成する。
ACT122としてプロセッサ301は、自らが備えられたユーザ端末300を操作している客の移動速度を、例えば図10中のACT113と同様に測定する。ただし、プロセッサ301は、ACT122はACT113とは異なる処理としてもよい。
ACT123としてプロセッサ301は、速度超過状態であるか否かを、例えば図10中のACT114と同様に確認する。ただしプロセッサ301は、ACT123はACT114とは異なる処理としてもよい。そしてプロセッサ301は、移動速度が閾値未満であるならば、速度超過状態ではないとしてNOと判定し、ACT124へと進む。
ACT124としてプロセッサ301は、バーコードが読み取れたか否かを確認する。このときにプロセッサ301は、カメラ305で得られる画像を解析し、バーコードの読み取りを試みる。このバーコードの読み取りは、スマホPOSアプリAPEAに基づく処理として行われてもよいし、バーコードの読み取り用の別のアプリケーションプログラムに基づく処理として行われてもよい。そしてプロセッサ301は、バーコードが読み取れないならばNOと判定し、ACT125へと進む。
ACT125としてプロセッサ301は、スキャンの中止が指定されたか否かを確認する。そしてプロセッサ301は、該当の指定が確認できないならばNOと判定し、ACT122に戻る。
かくしてプロセッサ301は、速度超過状態ではない場合には、ACT124及びACT125として、バーコードが読み取れるか、スキャン中止が指定されるのを待ち受ける。
一方、プロセッサ301は、移動速度が閾値以上であるならば、速度超過状態であるとしてACT123にてYESと判定し、ACT126へと進む。
ACT126としてプロセッサ301は、何らかの操作がなされたか否かを確認する。そしてプロセッサ301は、何らの操作も確認できないならばNOと判定し、ACT122へと戻る。つまりプロセッサ301は、速度超過状態である場合には、ACT126における確認を繰り返し、何らかの操作がなされるのを待ち受ける。そしてプロセッサ301は、この状態にて何らかの操作が行われたことを確認したならば、ACT126にてYESと判定し、ACT127へと進む。つまりプロセッサ301は、客が、閾値以上の移動速度で移動しながら、例えばバーコードの読み取りのための操作、又はスキャン中止の指定のための操作を行ったならば、ACT127へと進む。
ACT127としてプロセッサ301は、警報動作を、例えば図10中のACT120と同様に実行する。かくしてスマホPOSアプリAPEAに基づく情報処理をプロセッサ301が実行することによって、プロセッサ301を中枢部分とするコンピュータは警報手段として機能する。
ただしプロセッサ301は、ACT123はACT114とは異なる処理としてもよい。そしてプロセッサ301は、警報動作を終えたならば、ACT122以降を前述と同様に繰り返す。
客は、今回のスキャンは行わずに一覧画面に戻ることを希望する場合には、ボタンBUBAにタッチするなどの予め定められた操作によってスキャン中止を指定する。これに応じてプロセッサ301は、ACT125にてYESと判定し、図10中のACT112へと戻る。
客は、登録画面がタッチパネル304に表示されたならば、移動していない状態にて、購入商品として登録しようとする商品に表示されたバーコードが表示エリアARBAに映り込むようにカメラ305を商品に向ける。これに応じてプロセッサ301は、ACT124にてYESと判定し、ACT128へと進む。
ACT128としてプロセッサ301は、モバイルコントローラ3に対して登録を要求する。プロセッサ301は、ここで送信する要求データには、読み取ったバーコードが表すデータ(以下、バーコードデータと称する)を含める。このときにプロセッサ301は、バーコードに含まれた商品コードを取得することになる。商品コードは、識別子の一例である。そしてプロセッサ301は、操作者である客が予め定められたエリアである店舗内に存在しており、かつ操作者である客の移動が検出されていないときに取得した商品コードを、取引対象の商品を識別する識別子として決定しているのである。かくしてスマホPOSアプリAPEAに基づく情報処理をプロセッサ301が実行することによって、プロセッサ301を中枢部分とするコンピュータは取得手段及び決定手段として機能する。
ところで、プロセッサ301が前述のようにACT126にてYESと判定するとき、そのきっかけとなる客の操作は、上記のようなバーコード読取のための操作であり、客はタッチパネル304による表示を目視している場合が多い。このため、ACT120と同様な音声メッセージによる警報も有効であるが、警報画面を表示することも有効である。
図20は警報画面SCCの一例を示す図である。
警報画面SCCは、表示エリアARBAにバーコードが映り込んだ状態の登録画面SCBに、ウィンドウWICAを重ねて表した画面である。ウィンドウWICAは、移動を止めるように客に促す文字メッセージを表す。
さて、モバイルコントローラ3においてプロセッサ31は、図14中のACT204にてチェックイン完了の通知を行った後には、ACT205へと進む。
ACT205としてプロセッサ31は、登録が要求されたか否かを確認する。そしてプロセッサ31は、該当の要求が確認できなければNOと判定し、ACT206へと進む。
ACT206としてプロセッサ301は、数量変更が要求されたか否かを確認する。そしてプロセッサ31は、該当の要求が確認できなければNOと判定し、ACT207へと進む。
ACT207としてプロセッサ31は、購入商品の削除が要求されたか否かを確認する。そしてプロセッサ31は、該当の要求が確認できなければNOと判定し、ACT208へと進む。
ACT208としてプロセッサ31は、購入商品の取消が要求されたか否かを確認する。そしてプロセッサ31は、該当の要求が確認できなければNOと判定し、ACT209へと進む。
ACT209としてプロセッサ31は、会計が要求されたか否かを確認する。そしてプロセッサ31は、該当の要求が確認できなければNOと判定し、ACT205へと戻る。
かくしてプロセッサ31はACT205乃至ACT209としては、登録、数量変更、削除、取消及び会計のいずれかが要求されるのを待ち受ける。そしてプロセッサ31は、前述のようにユーザ端末300から登録が要求されたならばACT205にてYESと判定し、図15中のACT210へと進む。
ACT210としてプロセッサ31は、処理対象となっている取引の取引コードの通知を伴って、登録の要求を仮想POSサーバ2に転送する。プロセッサ31はこのとき、ユーザ端末300から送られてきた要求データをそのまま仮想POSサーバ2に転送してもよいし、何らかの処理による変換後の要求データを仮想POSサーバ2に送信してもよい。ただしプロセッサ31は、ユーザ端末300から送られてきた要求データに含まれたバーコードデータは、仮想POSサーバ2へと通知する。
仮想POSサーバ2においてプロセッサ21は、モバイルコントローラ3から送られた要求データに含まれたバーコードデータが、既存のPOS端末に備えられたバーコードスキャナにより読み取られたものであると見做して、既存のPOS端末と同様な処理によって購入商品の登録を試みる。ただし、何らかの事情により、バーコードデータが表す商品コードが商品データベースに登録されていない場合がある。また、商品には、商品コードを表すのとは別のバーコードが表示されている場合もある。そして、これらの場合にプロセッサ21は、購入商品の登録を行えず、エラーとする。このようにプロセッサ21は、商品データベースに登録された商品コードを表すバーコードの読み取りに基づく購入商品の登録を行う。プロセッサ21は、取引データベースDBBAを用いて購入商品を管理する。
プロセッサ21は、このような処理の結果を表した結果データを、モバイルコントローラ3に送信する。プロセッサ21は、購入商品の登録が正しく行えた場合には、正規登録の通知であることを識別するための識別データと、登録した商品の商品コード、商品名及び価格を結果データに含める。またプロセッサ21は、エラーとした場合には、エラーの通知であることを識別するための識別データと、登録要求で送られてきたバーコードデータとを結果データに含める。
モバイルコントローラ3にてプロセッサ31は、ACT210にて登録要求を転送したのちには、ACT211へと進む。
ACT211としてプロセッサ31は、上記のようにして仮想POSサーバから送信される結果データを取得する。プロセッサ31は、取得した結果データをメインメモリ32又は補助記憶ユニット33に保存する。
ACT212としてプロセッサ31は、上記の結果データに基づいて登録データベースDBCBを更新する。この登録データベースDBCBの更新は、例えば以下のように行われる。
第1のケース:正規登録の通知であり、処理対象となっている取引が関連付けられたデータレコードDRBに、通知された商品コードを含んだ登録データが含まれていない場合。
このケースにてプロセッサ31は、処理対象となっている取引が関連付けられたデータレコードDRBに既に存在する最後のフィールドの次に新たなフィールドを追加し、当該フィールドに新たな登録データを追加する。プロセッサ31は、新たな登録データには、通知された商品コードと、エラーではないことを表す“0”としたエラーフラグと、通知された商品名及び価格と、“1”とした個数と、取り消されていないことを表す“0”とした取消フラグとを含める。かくしてこのケースで追加される登録データは、図6の右上側に示されるような構造となる。
第2のケース:正規登録の通知であり、処理対象となっている取引が関連付けられたデータレコードDRBに、通知された商品コードを含んだ登録データが含まれているものの、当該登録データの取消フラグが取り消されていることを表す“1”となっている場合。
このケースにおいてプロセッサ31は、上記の第1のケースの場合と同様に処理する。
第3のケース:正規登録の通知であり、処理対象となっている取引が関連付けられたデータレコードDRBに、通知された商品コードを含んだ登録データが含まれており、当該登録データの取消フラグが“0”となっている場合。
このケースにおいてプロセッサ31は、通知された商品コードを含み、取消フラグが“0”となっている登録データに含まれる個数の値を、1つ大きな値に書き替える。
第4のケース:エラーの通知である場合。
このケースにおいてプロセッサ31は、処理対象となっている取引が関連付けられたデータレコードDRBに既に存在する最後のフィールドの次に新たなフィールドを追加し、当該フィールドに新たな登録データを追加する。プロセッサ31は、新たな登録データには、通知されたバーコードデータと、エラーを表す“1”としたエラーフラグとを含める。かくしてこのケースで追加される登録データは、図6の右下側に示されるような構造となる。
このようにプロセッサ31により更新されることにより登録データベースDBCBは、仮想POSサーバ2で登録済みの購入商品のリストを表すとともに、これに加えてエラーとなったバーコード読み取りを記録したものとなる。
なおプロセッサ31は、登録要求で送られてきたバーコードデータをメインメモリ32又は補助記憶ユニット33に保存しておき、上記の第4のケースにおいては、この保存してあるバーコードデータを登録データに含めてもよい。そしてこの場合には、仮想POSサーバ2においてプロセッサ21は、結果データにバーコードデータを含めなくてもよい。またプロセッサ31は、保存してあるバーコードデータから商品コードを取り出し、この商品コードに基づいて第1乃至第3のケースの処理を行ってもよい。また商品名及び価格は、プロセッサ31が商品コードに基づいて店舗サーバ1などから取得してもよい。
ACT213としてプロセッサ31は、一覧画面の表示をユーザ端末300に対して指示する。プロセッサ31は例えば、一覧画面の表示指示であることを識別するための識別データを含んだ指示データを、店内通信ネットワーク7及びアクセスポイント6を介してユーザ端末300へと送信する。プロセッサ31は、処理対象となっている取引が登録データベースDBCBにて関連付けられたデータレコードDRBに含まれている商品コード、商品名、価格及び個数を指示データに含める。またプロセッサ31は、今回の登録がエラーとされているならば、その旨を表すエラーデータを指示データに含める。そしてプロセッサ31はこののち、図14中のACT205乃至ACT209の待受状態に戻る。
なお、以降において説明するモバイルコントローラ3からユーザ端末300への各種の指示は、上記と同様に、指示の理由を識別するための識別データを含んだ指示データを店内通信ネットワーク7及びアクセスポイント6を介してモバイルコントローラ3からユーザ端末300へと送ることにより実現される。
ユーザ端末300にてプロセッサ301は、図11中のACT128にて登録を要求したのちには、ACT129へと進む。
ACT129としてプロセッサ301は、一覧画面の表示が指示されるのを待ち受ける。そしてプロセッサ301は、前述のように一覧画面の表示がモバイルコントローラ3から指示されたならば、ACT129にてYESと判定し、図10中のACT112へと戻り、再び一覧画面SCAをタッチパネル304に表示させる。このときにプロセッサ301は、一覧画面SCAを、指示データに含まれた購入商品の商品名、価格及び個数を表す画面とする。
図21は購入商品が登録済みである状態での一覧画面SCAの一例を示す図である。
図21に示す一覧画面SCAは、商品名が“AAA”であり、価格が120円である商品が1個、商品名が“BBB”であり、価格が98円である商品が2個、そして商品名が“CCC”であり、価格が1,024円である商品が1個、購入商品として登録済みである場合の例である。図21に示す一覧画面SCAでは、表示エリアARABには、これらの登録済みの商品に関する商品名、価格及び個数を表している。また表示エリアARAAには、総数として“4”を表すとともに、総額として“1,340”を表している。なお、商品名の左側の破線で囲まれたエリアは、アイコンを表示するためのエリアを表す。当該エリアを表す破線は、実際には一覧画面SCAには表されない。
客が一覧画面SCAにおける個数を表しているエリアにタッチすると、プロセッサ301は一覧画面SCAに重ねて個数指定のためのリストボックスを表示させる。そしてこのリストボックスが操作されると、プロセッサ301はこれを個数の指定として受ける。そしてプロセッサ301はこの場合、図10中のACT116にてYESと判定し、図12中のACT130へと進む。
ACT130としてプロセッサ301は、指定数が0であるか否かを確認する。そしてプロセッサ301は、指定数が0ではなければNOと判定し、ACT131へと進む。
ACT131としてプロセッサ301は、モバイルコントローラ3に対して数量変更を要求する。プロセッサ301はここで送信する要求データには、個数が指定された商品を特定するための特定データと指定数を含める。特定データは、商品コードでもよいし、購入商品のリスト内で各購入商品を識別するための番号などのようにモバイルコントローラ3でのみ購入商品を特定可能なデータであってもよい。なお、特定コードとして商品コードを用いるならば、プロセッサ31は、一覧画面の表示を指示するための指示データに、各購入商品に関する商品コードを含める。
モバイルコントローラ3にてプロセッサ31は、上記のようにユーザ端末300から数量変更が要求されたならば、図14中のACT206にてYESと判定し、図15中のACT214へと進む。
ACT214としてプロセッサ31は、処理対象となっている取引の取引コードの通知を伴って、数量変更の要求を仮想POSサーバ2に転送する。プロセッサ31はこのとき、ユーザ端末300から送られてきた要求データをそのまま仮想POSサーバ2に転送してもよいし、何らかの処理による変換後の要求データを仮想POSサーバ2に送信してもよい。ただしプロセッサ31は、ユーザ端末300から送られてきた要求データに含まれた個数は、仮想POSサーバ2へと通知する。また要求データに含まれる特定データが商品コードではないならば、プロセッサ31は、当該特定データを商品コードに置き換える。
仮想POSサーバ2においてプロセッサ21は、モバイルコントローラ3から送られた要求データに含まれた個数が、既存のPOS端末に備えられた入力デバイスにより入力されたものであると見做して、既存のPOS端末と同様な処理によって購入商品の個数を変更する。プロセッサ21は、個数を変更した商品の商品コードと、変更後の個数とを表した結果データを、モバイルコントローラ3に送信する。
モバイルコントローラ3にてプロセッサ31は、ACT214にて数量変更の要求を転送したのちには、ACT215へと進む。
ACT215としてプロセッサ31は、上記のようにして仮想POSサーバ2から送信される結果データを取得する。プロセッサ31は、取得した結果データをメインメモリ32又は補助記憶ユニット33に保存する。
ACT216としてプロセッサ31は、上記の結果データに基づいて登録データベースDBCBを更新する。つまりプロセッサ31は、処理対象となっている取引が関連付けられたデータレコードDRBから、通知された商品コードを含んだ登録データを見つけ出す。そしてプロセッサ31は、該当する登録データに含まれる個数を、結果データに含まれた個数に書き替える。
なおプロセッサ31は、数量変更の要求データで送られてきた特定データ及び個数をメインメモリ32又は補助記憶ユニット33に保存しておき、更新が完了した旨を表す結果データを受けたことに応じて、この保存してある特定データで特定される商品に関する登録データの個数を、保存してある個数に書き替えてもよい。そしてこの場合には、仮想POSサーバ2においてプロセッサ21は、結果データに商品コード及び個数を含めなくてもよい。
ACT217としてプロセッサ31は、一覧画面の表示をユーザ端末300に対して指示する。プロセッサ31は、上記のように更新したデータレコードDRBに含まれる登録データのうちで取消フラグが“0”である登録データに含まれている商品コード、商品名、価格及び個数を指示データに含める。プロセッサ31はこののち、図14中のACT205乃至ACT209の待受状態に戻る。
さて、ユーザ端末300にてプロセッサ301は、指定数が0であったならば、図12のACT130にてYESと判定し、ACT132へと進む。
ACT132としてプロセッサ301は、削除画面をタッチパネル304に表示させる。削除画面は、個数を0個とすることが指定された商品が購入商品から削除されることを客に報知する画面である。削除画面は、削除を指定するための削除ボタンと、個数を変更せずに個数の変更を指定する前の状態に戻ることを指定するための戻りボタンとを含む。
ACT133としてプロセッサ301は、削除が指定されたか否かを確認する。そしてプロセッサ301は、該当の指定を確認できないならばNOと判定し、ACT134へと進む。
ACT134としてプロセッサ301は、戻りが指定されたか否かを確認する。そしてプロセッサ301は、該当の指定を確認できないならばNOと判定し、ACT133へと戻る。
かくしてプロセッサ301はACT133及びACT134としては、削除又は戻りが指定されるのを待ち受ける。
客は、削除を取り止めて、個数の変更を指定する前の状態に戻ること望むならば、削除画面において戻りボタンにタッチするなどの予め定められた操作により戻りを指定する。これに応じてプロセッサ301は、ACT134にてYESと判定し、図10中のACT112へと戻り、再び一覧画面SCAをタッチパネル304に表示させる。この場合には、購入商品の登録状態は変更されないので、プロセッサ301は、削除画面を表示する前に表示していたのと同じ状態の一覧画面SCAをタッチパネル304に再び表示させる。
客は、削除で間違いないならば、削除画面において削除ボタンにタッチするなどの予め定められた操作により削除を指定する。これに応じてプロセッサ301は、ACT133にてYESと判定し、ACT135へと進む。
ACT135としてプロセッサ301は、モバイルコントローラ3に対して削除を要求する。プロセッサ301はここで送信する要求データには、削除が指定された商品を特定するための特定データを含める。
モバイルコントローラ3にてプロセッサ31は、上記のようにユーザ端末300から削除が要求されたならば、図14中のACT207にてYESと判定し、図16中のACT218へと進む。
ACT218としてプロセッサ31は、処理対象となっている取引の取引コードの通知を伴って、削除の要求を仮想POSサーバ2に転送する。プロセッサ31はこのとき、ユーザ端末300から送られてきた要求データをそのまま仮想POSサーバ2に転送してもよいし、何らかの処理による変換後の要求データを仮想POSサーバ2に送信してもよい。ただしプロセッサ31は、要求データに含まれる特定データが商品コードではないならば、プロセッサ31は、当該特定データを商品コードに置き換える。
仮想POSサーバ2においてプロセッサ21は、モバイルコントローラ3から送られた要求データによる要求を、既存のPOS端末に備えられた入力デバイスにより入力された削除指示であると見做して、既存のPOS端末と同様な処理によって対象となる商品を購入商品から除外する。プロセッサ21は、購入商品から除外した商品の商品コードを表した結果データを、モバイルコントローラ3に送信する。
モバイルコントローラ3にてプロセッサ31は、ACT218にて削除の要求を転送したのちには、ACT219へと進む。
ACT219としてプロセッサ31は、上記のようにして仮想POSサーバ2から送信される結果データを取得する。プロセッサ31は、取得した結果データをメインメモリ32又は補助記憶ユニット33に保存する。
ACT220としてプロセッサ31は、上記の結果データに基づいて登録データベースDBCBを更新する。つまりプロセッサ31は、処理対象となっている取引が関連付けられたデータレコードDRBから、通知された商品コードを含んだ登録データを見つけ出す。そしてプロセッサ31は、該当する登録データに含まれる取消フラグを“1”に変更する。
なおプロセッサ31は、削除の要求データで送られてきた特定データをメインメモリ32又は補助記憶ユニット33に保存しておき、削除が完了した旨を表す結果データを受けたことに応じて、この保存してある特定データで特定される商品に関する登録データの取消フラグを変更してもよい。そしてこの場合には、仮想POSサーバ2においてプロセッサ21は、結果データに商品コードを含めなくてもよい。
ACT221としてプロセッサ31は、一覧画面の表示をユーザ端末300に対して指示する。プロセッサ31は、上記のように更新したデータレコードDRBに含まれる登録データのうちで取消フラグが“0”である登録データに含まれている商品コード、商品名、価格及び個数を指示データに含める。プロセッサ31はこののち、図14中のACT205乃至ACT209の待受状態に戻る。
さて、ユーザ端末300にてプロセッサ301は、図12中のACT131にて数量変更を要求したのち、あるいはACT135にて削除を要求したのちには、ACT136へと進む。
ACT136としてプロセッサ301は、一覧画面の表示が指示されるのを待ち受ける。そしてプロセッサ301は、数量変更の要求に応じて、あるいは削除の要求に応じて、前述のように一覧画面の表示がモバイルコントローラ3から指示されたならばYESと判定し、図10中のACT112へと戻り、再び一覧画面SCAをタッチパネル304に表示させる。このときにプロセッサ301は、一覧画面SCAを、指示データに含まれた購入商品の商品名、価格及び個数を表す画面とする。この場合には、購入商品の登録状態が変更されるので、プロセッサ301は、数量変更又は削除が指定されるときに表示していたのとは異なる購入商品を表す状態の一覧画面SCAをタッチパネル304に表示させることになる。
客は、既に登録した購入商品の全てをキャンセルし、買い物を中止したい場合には、一覧画面SCAにおいてボタンBUAAにタッチするなどの予め定められた操作により中止を指定する。これに応じてプロセッサ301は、図10中のACT117にてYESと判定し、図12中のACT137へと進む。
ACT137としてプロセッサ301は、取消画面をタッチパネル304に表示させる。取消画面は、既に登録した購入商品の全てが取り消されることを客に報知する画面である。取消画面は、取消実行を指定するための実行ボタンと、個数を変更せずに個数の変更を指定する前の状態に戻ることを指定するための戻りボタンとを含む。
ACT138としてプロセッサ301は、取消実行が指定されたか否かを確認する。そしてプロセッサ301は、該当の指定を確認できないならばNOと判定し、ACT139へと進む。
ACT139としてプロセッサ301は、戻りが指定されたか否かを確認する。そしてプロセッサ301は、該当の指定を確認できないならばNOと判定し、ACT138へと戻る。
かくしてプロセッサ301はACT138及びACT139としては、取消実行又は戻りが指定されるのを待ち受ける。
客は、そのまま買い物を続けるならば、取消画面において戻りボタンにタッチするなどの予め定められた操作により戻りを指定する。これに応じてプロセッサ301は、ACT139にてYESと判定し、図10中のACT112へと戻り、再び一覧画面SCAをタッチパネル304に表示させる。この場合には、購入商品の登録状態は変更されないので、プロセッサ301は、取消画面を表示する前に表示していたのと同じ状態の一覧画面SCAをタッチパネル304に再び表示させる。
客は、買い物を取り止めるのであれば、取消画面において実行ボタンにタッチするなどの予め定められた操作により取消実行を指定する。これに応じてプロセッサ301は、ACT138にてYESと判定し、ACT140へと進む。
ACT140としてプロセッサ301は、モバイルコントローラ3に対して取消を要求する。
モバイルコントローラ3にてプロセッサ31は、上記のようにユーザ端末300から取消が要求されたならば、図14中のACT208にてYESと判定し、図16中のACT222へと進む。
ACT222としてプロセッサ31は、処理対象となっている取引の取引コードの通知を伴って、取消の要求を仮想POSサーバ2に転送する。プロセッサ31はこのとき、ユーザ端末300から送られてきた要求データをそのまま仮想POSサーバ2に転送してもよいし、何らかの処理による変換後の要求データを仮想POSサーバ2に送信してもよい。
仮想POSサーバ2においてプロセッサ21は、モバイルコントローラ3から送られた要求データによる要求を、既存のPOS端末に備えられた入力デバイスにより入力された取消指示であると見做して、既存のPOS端末と同様な処理によって、通知された取引コードに関連付けて登録済みの商品の全てを購入商品から除外する。プロセッサ21は、取消が完了したことを表した結果データを、モバイルコントローラ3に送信する。
モバイルコントローラ3にてプロセッサ31は、ACT222にて削除の要求を転送したのちには、ACT223へと進む。
ACT223としてプロセッサ31は、上記のようにして仮想POSサーバから送信される結果データを取得する。プロセッサ31は、取得した結果データをメインメモリ32又は補助記憶ユニット33に保存する。
ACT224としてプロセッサ31は、上記の結果データに基づいて登録データベースDBCBを更新する。つまりプロセッサ31は、処理対象となっている取引が関連付けられたデータレコードDRBに含まれる登録データの全てに関して、“0”となっている取消フラグを“1”に変更する。
ACT225としてプロセッサ31は、ユーザ端末300に対して取消を通知する。そしてプロセッサ31はこののち、図14中のACT205乃至ACT209の待受状態に戻る。
さて、ユーザ端末300にてプロセッサ301は、図12中のACT140にて取消を要求したのちには、ACT141へと進む。
ACT141としてプロセッサ301は、モバイルコントローラ3から取消が通知されるのを待ち受ける。そしてプロセッサ301は、前述のように取消が通知されたならばYESと判定し、図9中のACT101へと戻る。
客は、購入を希望する商品の全てを購入商品として登録し終えたならば、決済に進む。このときに客は、一覧画面SCAにおけるボタンBUACにタッチするなどの予め定められた操作によって会計開始を指定する。これに応じてプロセッサ301は、図10中のACT118にてYESと判定し、ACT142へと進む。
ACT142としてプロセッサ301は、モバイルコントローラ3に対して会計を要求する。
ところでプロセッサ301は、上述のようにACT115乃至ACT118にて、客による操作を有効な操作として受けている。つまりプロセッサ301は、操作者である客が予め定められたエリアである店舗内に存在していて、かつ当該客の移動が検出されていないときに、操作者としての客の操作を有効な操作として受けている。かくしてスマホPOSアプリAPEAに基づく情報処理をプロセッサ301が実行することによって、プロセッサ301を中枢部分とするコンピュータは操作手段として機能する。
モバイルコントローラ3にてプロセッサ31は、上記のようにユーザ端末300から会計が要求されたならば、図14中のACT209にてYESと判定し、図17中のACT226へと進む。
ACT226としてプロセッサ31は、会計画面の表示をユーザ端末300に指示する。
さてユーザ端末300にてプロセッサ301は、図10中のACT142にて会計を要求したのちには、ACT143へと進む。
ACT143としてプロセッサ301は、会計画面の表示が指示されるのを待ち受ける。そしてプロセッサ301は、上述のように会計画面の表示が指示されたことを確認したならばYESと判定し、図13中のACT144へと進む。
ACT144としてプロセッサ301は、会計画面をタッチパネル304に表示させる。会計画面は、代金の決済のための操作をユーザ端末300及び会計機5のいずれで行うかを客が選択するための画面である。
図22は会計画面SCDの一例を示す図である。
会計画面SCDは、表示エリアARDA、メッセージMEDA及びボタンBUDA,BUDBを含む。表示エリアARDAは、購入商品の総数と、購入商品の代金の総額とを表す。メッセージMEDAは、代金の決済のための操作をユーザ端末300及び会計機5のいずれで行うかを指定するように客に促す文字メッセージである。ボタンBUDAは、ユーザ端末300を客が指定するソフトキーである。ボタンBUDBは、会計機5を客が指定するためのソフトキーである。
客は、代金の決済のための操作をユーザ端末300で行いたい場合には、ボタンBUDAにタッチするなどの予め定められた操作によりユーザ端末300を指定する。また客は、代金の決済のための操作を会計機5で行いたい場合には、ボタンBUDBにタッチするなどの予め定められた操作により会計機5を指定する。
図13中のACT145としてプロセッサ301は、ユーザ端末300が指定されたか否かを確認する。そしてプロセッサ301は、当該の指定が確認できないならばNOと判定し、ACT146へと進む。
ACT146としてプロセッサ301は、会計機5が指定されたか否かを確認する。そしてプロセッサ301は、当該の指定が確認できないならばNOと判定し、ACT145へと戻る。
かくしてプロセッサ301はACT145及びACT146としては、ユーザ端末300又は会計機5が指定されるのを待ち受ける。そしてプロセッサ301は、上述のようにユーザ端末300が指定されたならば、ACT145にてYESと判定し、ACT147へと進む。
ACT147としてプロセッサ301は、モバイルコントローラ3に対して決済を要求する。なおプロセッサ301は、決済を要求するための要求データには、決済のために必要な、クレジット番号又はオンライン決済サービス用の利用者コードなどのような決済データを含める。
またプロセッサ301は、上述のように会計機5が指定されたならば、ACT146にてYESと判定し、ACT148へと進む。
ACT148としてプロセッサ301は、会計バーコード画面をタッチパネル304に表示させる。会計バーコード画面は、会計機5が仮想POSサーバ2から取引の内容に関するデータを取得するために必要となるデータを表した会計バーコードを表した画面である。なお、詳細な処理の図示は省略しているが、プロセッサ301は、モバイルコントローラ3を介して仮想POSサーバ2から会計バーコードを取得して、当該会計バーコードを会計バーコード画面に表す。
客は、他の客により使用されていない会計機5が備えるスキャナに、会計バーコードを読み取らせる。これに応じて会計機5は、会計バーコードが表すデータに従って、仮想POSサーバ2から取引の内容に関するデータを取得し、このデータに基づいて算出した決済額を決済するための処理を実行する。そして会計機5は、決済が完了したならば、その旨を仮想POSサーバ2に通知する。仮想POSサーバ2にてプロセッサ21は、会計機5から決済完了が通知されたならば、モバイルコントローラ3へと決済完了を通知する。なお、会計機5での決済完了は、会計機5からモバイルコントローラ3へと直接通知されてもよい。
モバイルコントローラ3にてプロセッサ31は、図17中のACT226にて会計画面の表示を指示したのちには、ACT227へと進む。
ACT227としてプロセッサ31は、決済が要求されたか否かを確認する。そしてプロセッサ31は、当該の要求が確認できないならばNOと判定し、ACT228へと進む。
ACT228としてプロセッサ31は、決済完了が通知されたか否かを確認する。そしてプロセッサ31は、当該の通知が確認できないならばNOと判定し、ACT227へと戻る。
かくしてプロセッサ31はACT227及びACT228としては、決済要求又は決済完了通知を待ち受ける。そしてプロセッサ31は、前述のようにユーザ端末300から決済が要求されたならばACT227にてYESと判定し、ACT229へと進む。
ACT229としてプロセッサ31は、処理対象となっている取引の取引コードの通知を伴って、決済の要求を仮想POSサーバ2に転送する。プロセッサ31はこのとき、ユーザ端末300から送られてきた要求データをそのまま仮想POSサーバ2に転送してもよいし、何らかの処理による変換後の要求データを仮想POSサーバ2に送信してもよい。
仮想POSサーバ2においてプロセッサ21は、モバイルコントローラ3から送られた要求データによる要求を、既存のPOS端末に備えられた入力デバイスにより入力された決済指示であると見做して、既存のPOS端末と同様な処理によって、通知された取引コードで識別される取引に関する代金を算出し、これを決済データに基づいて決済するための処理を行う。なお決済のための処理は例えば、図示しない決済サーバへの決済要求を含む。そしてプロセッサ21は、決済が完了したことを表した結果データを、モバイルコントローラ3に送信する。
モバイルコントローラ3にてプロセッサ31は、ACT229にて決済の要求を転送したのちには、ACT230へと進む。
ACT230としてプロセッサ31は、決済完了が仮想POSサーバ2から通知されるのを待ち受ける。そしてプロセッサ31は、上述のように仮想POSサーバ2が送信した、決済が完了したことを表した結果データが通信インタフェース34により受信されたならばYESと判定し、ACT231へと進む。またプロセッサ31は、前述のように会計機5での決済完了が通知されたならば、ACT228にてYESと判定し、ACT231へと進む。
ACT231としてプロセッサ31は、ユーザ端末300に対して決済完了を通知する。
ユーザ端末300にてプロセッサ301は、図13中のACT147にてモバイルコントローラ3へと決済を要求したのち、あるいはACT148にて会計バーコード画面を表示したのちには、ACT149へと進む。
ACT149としてプロセッサ301は、決済完了が通知されるのを待ち受ける。そしてプロセッサ301は、上述のようにモバイルコントローラ3から決済完了が通知されたならばYESと判定し、ACT150へと進む。
ACT150としてプロセッサ301は、完了画面をタッチパネル304に表示させる。完了画面は、決済が完了したことを客に報知するための画面である。
客は、完了画面を確認したならば、完了画面に表されたボタンにタッチするなどの予め定められた操作によって、確認したことを宣言する。これに応じてプロセッサ301はACT151へと進む。なおプロセッサ301は、完了画面を表示した状態での経過時間が予め定めた時間に到達した場合に、ACT151へと進んでもよい。
ACT151としてプロセッサ301は、チェックアウト用のスキャン画面をタッチパネル304に表示させる。チェックアウト用のスキャン画面は、チェックアウト用の2次元コードTCOを読み取るための画面である。プロセッサ301は例えば、カメラ305を起動し、これによりカメラ305で得られた画像に、2次元コードTCOを読み取るように客に促す文字メッセージと、2次元コードTCOを翳すべき位置の目安を示すラインとを重ねてスキャン画面を生成する。
客は、チェックアウト用のスキャン画面がタッチパネル304に表示されたならば、店舗の出口付近に掲示されている2次元コードTCOがスキャン画面に映り込むようにカメラ305を2次元コードTCOに向ける。
ACT152としてプロセッサ301は、2次元コードが読み取れるのを待ち受ける。このときにプロセッサ301は、カメラ305で得られる画像を繰り返し解析し、2次元コードの読み取りを試みる。この2次元コードの読み取りは、スマホPOSアプリAPEAに基づく処理として行われてもよいし、2次元コードの読み取り用の別のアプリケーションプログラムに基づく処理として行われてもよい。そしてプロセッサ301は、2次元コードが読み取れたならばYESと判定し、ACT153へと進む。
ACT153としてプロセッサ301は、読み取った2次元コードが表すデータがチェックアウトデータであるか否かを確認する。そしてプロセッサ301は、チェックアウトデータでなければNOと判定し、ACT152へと戻る。このときにプロセッサ301は、誤った2次元コードが読み取られたことを客に通知する画面をタッチパネル304に表示させてもよい。
プロセッサ301は、読み取った2次元コードが表すデータがチェックアウトデータであることが確認できたならば、ACT153にてYESと判定し、ACT154へと進む。
ACT154としてプロセッサ301は、モバイルコントローラ3に対して、チェックアウトを要求する。
モバイルコントローラ3にてプロセッサ31は、図17中のACT231にて決済完了を通知したのちには、ACT232へと進む。
ACT232としてプロセッサ31は、チェックアウトが要求されるのを待ち受ける。そしてプロセッサ31は、上述のようにユーザ端末300からチェックアウトが要求されたならばYESと判定し、ACT233へと進む。
ACT233としてプロセッサ31は、チェックアウト処理を実行する。チェックアウト処理は、処理対象となっていた取引の管理のためにメインメモリ32及び補助記憶ユニット33に保存してあるデータをクリアするなどの処理である。なお仮想POSサーバ2は、決済が完了したことに応じて、該当する取引に関する処理を終了してもよいし、モバイルコントローラ3からの指示に応じて取引に関する処理を終了してもよい。そして後者の場合には、プロセッサ31はチェックアウト処理において、仮想POSサーバ2に対して上記指示をする。また、誤ったバーコードスキャンなどを含むユーザの操作の履歴を表した履歴データベースを店舗サーバ1、仮想POSサーバ2又はモバイルコントローラ3、あるいは図示されない別のサーバ等で管理する場合がある。この場合には、プロセッサ31はチェックアウト処理において、今回の取引に関する操作の履歴を反映するように履歴データベースを更新するための処理を行う。
ACT234としてプロセッサ31は、チェックアウトの完了をユーザ端末300に通知する。そしてプロセッサ31は、図14乃至図17に示す情報処理を終了する。
ユーザ端末300にてプロセッサ301は、図13中のACT154にてチェックアウトを要求したのちには、ACT155へと進む。
ACT155としてプロセッサ301は、チェックアウト完了の通知を待ち受ける。そしてプロセッサ301は、上述のようにモバイルコントローラ3からチェックアウト完了が通知されたならばYESと判定し、ACT156へと進む。
ACT156としてプロセッサ301は、例えば図9中のACT107にて保存したチェックインデータなどのような、今回の買い物に関して一時的に利用する各種のデータをクリアする。そしてプロセッサ301はこののち、図9中のACT101に戻る。
以上のように本実施形態のユーザ端末300は、客が店舗内に存在していて、かつ移動していないときにユーザ端末300に読み取らせようとした商品コードを、登録のための有効な商品コードとして決定する。したがって、客は、商品コードの入力の際には店舗内で、立ち止まった状態で操作を行うことなり、移動中に操作に気を取られることを防止できる。なお、ユーザ端末300に商品コードを読み取らせるための操作は、客が店舗内を見て回りながら頻繁に行われる。したがって、この操作を制限することにより、上記の効果を効率的に達成できる。
またユーザ端末300は、スキャン開始、数量、中止、会計開始及びスキャン中止の指定のための操作も、客が店舗内に存在していて、かつ移動していないときには受けない。したがって、客は、それらの操作についても立ち止まった状態で操作を行うことなり、移動中に操作に気を取られることを防止できる。
またユーザ端末300は、店舗内に存在しているものの、移動している客による操作であるために有効な操作として受けない場合には、警報動作を実行する。これにより、止まって操作すべきであることを客に認識させることができる。
この実施形態は、次のような種々の変形実施が可能である。
上記実施形態では、店舗に陳列販売される商品のうちで客が購入する商品の商品コードをユーザ端末300で読み取る例を示している。つまり上記実施形態におけるユーザ端末300、商品コード、店舗内及び購入商品が、情報処理装置、識別子、予め定められたエリア及び取引対象に相当する。しかしながら、例えば、ショッピングモール内で、ショッピングモールの設備であるショッピングカートに装着されたカート端末での操作に応じて、客がこれから訪れる飲食店で飲食する飲食メニューの注文を受ける場合にも、上記実施形態と同様な操作の制限を行うことが可能である。そしてこの例においては、カート端末、飲食メニューの識別コード、ショッピングモール内及び飲食メニューが、情報処理装置、識別子、予め定められたエリア及び取引対象に相当する。このように情報処理装置、識別子、予め定められたエリア及び取引対象は、適宜に変更が可能である。
情報処理装置がショッピングモールの設備であるショッピングカートである場合、ショッピングモールに備えられたアクセスポイントとの通信が可能である場合、あるいはショッピングモールに備えられたビーコン送信機から送信されたビーコン信号を受信可能である場合などとして、予め定められたエリアに存在する存在状態を検出することも可能である。このように、存在状態の検出の方法は、さまざまに変更が可能である。
情報処理装置がカート端末である場合、ショッピングカートの移動速度として客の移動速度を測定し、その移動速度に基づいて客の移動を検出することも可能である。このように、客の移動を検出するための方法は、さまざまに変更が可能である。
ユーザ端末300を主にユーザインタフェースとして動作させ、図10中のACT114、ACT119及び図11中のACT123,ACT126における処理と、図10中のACT120及び図11中のACT127における警報動作のための制御処理とを、例えばモバイルコントローラ3などの別の情報処理装置にて実行してもよい。
プロセッサ301は、図9中のACT102及びACT103の待受状態、ACT105の待受状態、図12中のACT133及びACT134の待受状態、ACT138及びACT139の待受状態、あるいは図13中のACT145及びACT146の待受状態などにおいても、図10中のACT114,ACT119及びACT120と同様な処理を行ってもよい。またプロセッサ301は、図9乃至図13の情報処理には示されていない操作の待受状態にて、図10中のACT114,ACT119及びACT120と同様な処理を行ってもよい。またプロセッサ301は、図10中のACT113,ACT114、ACT119、ACT120を省略してもよい。
情報処理によりプロセッサ11,21,31,41,301が実現する各機能は、その一部又は全てをロジック回路などのようなプログラムに基づかない情報処理を実行するハードウェアにより実現することも可能である。また上記の各機能のそれぞれは、上記のロジック回路などのハードウェアにソフトウェア制御を組み合わせて実現することも可能である。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
1…店舗サーバ、2…仮想POSサーバ、3…モバイルコントローラ、4…通信サーバ、5…会計機、6…アクセスポイント、7…店内通信ネットワーク、11,21,31,41,301…プロセッサ、12,22,32,42,302…メインメモリ、13,23,33,43,303…補助記憶ユニット、14,24,34,44…通信インタフェース、15,25,35,46,310…伝送路、45…通信ユニット、100(100-1,100-2)…店舗システム、200…中継サーバ、300…ユーザ端末、304…タッチパネル、305…カメラ、306…サウンドユニット、307…センサ群、308…無線通信ユニット、309…モバイル通信ユニット、400…通信ネットワーク、APAA…店舗管理アプリ、APBA…仮想POSアプリ、APEA…スマホPOSアプリ、APCA…登録支援アプリ、APDA…通信処理アプリ、DBAA…データベース群、DBBA…取引データベース、DBCA…取引管理データベース、DBCB…登録データベース。

Claims (6)

  1. 操作者による操作に応じて識別子を取得する取得手段と、
    前記操作者が予め定められたエリア内に存在する存在状態を検出する第1の検出手段と、
    前記操作者の移動を検出する第2の検出手段と、
    前記第1の検出手段により前記存在状態が検出され、かつ前記第2の検出手段により前記移動が検出されていないときに、前記取得手段により取得された前記識別子を取引対象の識別子として決定する決定手段と、
    を具備した情報処理装置。
  2. 前記第1の検出手段により前記存在状態が検出され、かつ前記第2の検出手段により前記移動が検出されているときに、前記取得手段により前記識別子が取得されたことに応じて、予め定められた警報動作を行う警報手段、
    をさらに備える請求項1に記載の情報処理装置。
  3. 前記第1の検出手段により前記存在状態が検出され、かつ前記第2の検出手段により前記移動が検出されていないときに、前記操作者による操作を有効な操作として受ける操作手段、
    を更に備えた請求項1に記載の情報処理装置。
  4. 前記第1の検出手段により前記存在状態が検出され、かつ前記第2の検出手段により前記移動が検出されているときに、前記操作手段が受ける前記操作が行われたことに応じて、予め定められた警報動作を行う警報手段、
    をさらに備える請求項3に記載の情報処理装置。
  5. 前記警報手段は、予め定められた音の出力を前記警報動作として行う、
    請求項2又は請求項4に記載の情報処理装置。
  6. 情報処理装置に備えられたコンピュータを、
    操作者による操作に応じて識別子を取得する取得手段と、
    前記操作者が予め定められたエリア内に存在する存在状態を検出する第1の検出手段と、
    前記操作者の移動を検出する第2の検出手段と、
    前記第1の検出手段により前記存在状態が検出され、かつ前記第2の検出手段により前記移動が検出されていないときに、前記取得手段により取得された前記識別子を取引対象の識別子として決定する決定手段と、
    して機能させるための情報処理プログラム。
JP2020088654A 2020-05-21 2020-05-21 情報処理装置及び情報処理プログラム Active JP7407656B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2020088654A JP7407656B2 (ja) 2020-05-21 2020-05-21 情報処理装置及び情報処理プログラム
US17/200,641 US20210365914A1 (en) 2020-05-21 2021-03-12 Information processing apparatus and information processing method
JP2023213944A JP2024019619A (ja) 2020-05-21 2023-12-19 情報処理装置及び情報処理プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020088654A JP7407656B2 (ja) 2020-05-21 2020-05-21 情報処理装置及び情報処理プログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2023213944A Division JP2024019619A (ja) 2020-05-21 2023-12-19 情報処理装置及び情報処理プログラム

Publications (2)

Publication Number Publication Date
JP2021184129A JP2021184129A (ja) 2021-12-02
JP7407656B2 true JP7407656B2 (ja) 2024-01-04

Family

ID=78608043

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2020088654A Active JP7407656B2 (ja) 2020-05-21 2020-05-21 情報処理装置及び情報処理プログラム
JP2023213944A Pending JP2024019619A (ja) 2020-05-21 2023-12-19 情報処理装置及び情報処理プログラム

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2023213944A Pending JP2024019619A (ja) 2020-05-21 2023-12-19 情報処理装置及び情報処理プログラム

Country Status (2)

Country Link
US (1) US20210365914A1 (ja)
JP (2) JP7407656B2 (ja)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008053988A (ja) 2006-08-24 2008-03-06 Funai Electric Co Ltd 携帯電話端末装置
JP2013541107A (ja) 2010-10-13 2013-11-07 ウォルマート ストアーズ,インコーポレーティッド 携帯装置による自己精算の方法
JP2015115759A (ja) 2013-12-11 2015-06-22 日本電気通信システム株式会社 携帯端末および携帯端末制御方法
JP2019204425A (ja) 2018-05-25 2019-11-28 Zホールディングス株式会社 情報処理装置、情報処理方法、情報処理プログラム及び制御プログラム
JP2020042457A (ja) 2018-09-07 2020-03-19 株式会社寺岡精工 販売データ処理装置
JP2020067825A (ja) 2018-10-24 2020-04-30 東芝テック株式会社 監視装置及び監視プログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5127792B2 (ja) * 2009-08-18 2013-01-23 キヤノン株式会社 情報処理装置、その制御方法、プログラム及び記録媒体
US20170013464A1 (en) * 2014-07-10 2017-01-12 Gila FISH Method and a device to detect and manage non legitimate use or theft of a mobile computerized device
GB2539710A (en) * 2015-06-26 2016-12-28 Aspholm Invest Oy Mobile device based digital wallet for retail shopping, related system and method
EP3804365A4 (en) * 2018-06-01 2022-03-02 Capital One Services, LLC BEACON-TRIGGERED ACTIVATION OF A NEAR FIELD COMMUNICATION APPLICATION

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008053988A (ja) 2006-08-24 2008-03-06 Funai Electric Co Ltd 携帯電話端末装置
JP2013541107A (ja) 2010-10-13 2013-11-07 ウォルマート ストアーズ,インコーポレーティッド 携帯装置による自己精算の方法
JP2015115759A (ja) 2013-12-11 2015-06-22 日本電気通信システム株式会社 携帯端末および携帯端末制御方法
JP2019204425A (ja) 2018-05-25 2019-11-28 Zホールディングス株式会社 情報処理装置、情報処理方法、情報処理プログラム及び制御プログラム
JP2020042457A (ja) 2018-09-07 2020-03-19 株式会社寺岡精工 販売データ処理装置
JP2020067825A (ja) 2018-10-24 2020-04-30 東芝テック株式会社 監視装置及び監視プログラム

Also Published As

Publication number Publication date
JP2024019619A (ja) 2024-02-09
US20210365914A1 (en) 2021-11-25
JP2021184129A (ja) 2021-12-02

Similar Documents

Publication Publication Date Title
US20210142306A1 (en) Transaction processing system
US20210279710A1 (en) Transaction processing system and method
JP7407656B2 (ja) 情報処理装置及び情報処理プログラム
JP7348257B2 (ja) 情報処理装置
WO2022050383A1 (ja) 取引処理装置、取引処理方法及びプログラム記録媒体
JP7368573B2 (ja) 取引処理システム、制御装置及び情報処理プログラム
JP7148703B2 (ja) 取引処理システム、制御装置及び情報処理プログラム
JP6952144B2 (ja) 取引処理システム、取引支援装置、情報処理プログラム及び取引処理方法
JP7478768B2 (ja) 取引処理システム
JP7475961B2 (ja) 取引処理システム
JP6993443B2 (ja) 取引処理システム、制御装置及び情報処理プログラム
US20210182819A1 (en) Transaction processing system
US20230096680A1 (en) Information processing device and information processing method
US11893621B2 (en) Merchandise sales processing system
JP2023029402A (ja) 取引処理システム、取引支援装置、情報処理プログラム及び取引処理方法
JP2024048051A (ja) 取引処理装置、商品販売システム及び情報処理プログラム
JP2023168821A (ja) 情報端末及びそのプログラム

Legal Events

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

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20230104

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230331

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20231117

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: 20231128

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20231219

R150 Certificate of patent or registration of utility model

Ref document number: 7407656

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150