IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 東芝テック株式会社の特許一覧

(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-02-17
(45)【発行日】2025-02-26
(54)【発明の名称】商品販売処理システム
(51)【国際特許分類】
   G07G 1/12 20060101AFI20250218BHJP
   G07G 1/00 20060101ALI20250218BHJP
   G06Q 20/20 20120101ALI20250218BHJP
【FI】
G07G1/12 301E
G07G1/00 311D
G07G1/00 311E
G07G1/12 321K
G06Q20/20
【請求項の数】 5
(21)【出願番号】P 2021040025
(22)【出願日】2021-03-12
(65)【公開番号】P2022139573
(43)【公開日】2022-09-26
【審査請求日】2023-12-13
(73)【特許権者】
【識別番号】000003562
【氏名又は名称】東芝テック株式会社
(74)【代理人】
【識別番号】110003708
【氏名又は名称】弁理士法人鈴榮特許綜合事務所
(74)【代理人】
【識別番号】100108855
【弁理士】
【氏名又は名称】蔵田 昌俊
(74)【代理人】
【識別番号】100103034
【弁理士】
【氏名又は名称】野河 信久
(74)【代理人】
【識別番号】100179062
【弁理士】
【氏名又は名称】井上 正
(74)【代理人】
【識別番号】100075672
【弁理士】
【氏名又は名称】峰 隆司
(74)【代理人】
【識別番号】100153051
【弁理士】
【氏名又は名称】河野 直樹
(74)【代理人】
【識別番号】100162570
【弁理士】
【氏名又は名称】金子 早苗
(72)【発明者】
【氏名】浦城 圭介
【審査官】木村 麻乃
(56)【参考文献】
【文献】特開2003-030507(JP,A)
【文献】特開2013-254362(JP,A)
【文献】特開2006-099192(JP,A)
【文献】特開2014-109789(JP,A)
【文献】特開2001-109804(JP,A)
【文献】特開平10-055399(JP,A)
【文献】米国特許第05970474(US,A)
【文献】米国特許第08401914(US,B1)
(58)【調査した分野】(Int.Cl.,DB名)
G07G 1/00- 1/12
G06Q20/00-20/42
G06F17/00-17/40
(57)【特許請求の範囲】
【請求項1】
店舗における商品販売を処理する商品販売処理システムであって、
前記店舗での販売対象となる商品であって前記店舗において在庫がある商品を判定する判定手段と、
前記店舗での販売対象となる商品の指定を受け付ける受付手段と、
前記受付手段により受け付けられた指定の対象である商品が前記店舗において在庫が有るかを確認する確認手段と、
上商品リストを、前記確認手段により在庫があることが確認できない商品については予約することの指定を受けたことに応じて予約商品であることを判別可能に含み、また前記判定手段により判定された商品については予約商品ではないことを判別可能に含んで作成する作成手段と、
前記作成手段により作成されたリストに含まれる全ての買上商品に関する代金を決済する決済手段と、
を具備する商品販売処理システム。
【請求項2】
前記確認手段により在庫があることが確認された商品の陳列場所を知らせる画面を表示する表示手段、
をさらに備える請求項1に記載の商品販売処理システム。
【請求項3】
前記買上商品を買い上げる客を識別する識別手段と、
前記予約商品を前記識別手段により識別された客と関連付けて管理する管理手段と、
前記予約商品の引き渡しが可能となったことを、当該引き渡しが可能となった予約商品に関連付けて前記管理手段により管理されている客に対して通知する通知手段と、
をさらに具備する請求項1又は請求項2に記載の商品販売処理システム。
【請求項4】
前記受付手段は、客により指定された条件に合致する商品のなかからの客による指定を受け付ける
請求項1~請求項3のいずれか一項に記載の商品販売処理システム。
【請求項5】
前記受付手段は、客により移動可能な可搬端末での操作による指定を受け付ける
請求項1~請求項4のいずれか一項に記載の商品販売処理システム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明の実施形態は、商品販売処理システムに関する。
【背景技術】
【0002】
商品を陳列販売する店舗においては、客が、陳列されている商品の中から希望の商品を選び出し、購入する。このため、欠品となっている商品については、購入することができない。
店員が、客の連絡先を聞き、欠品中の商品が入荷した際にその旨を客に連絡するサービスは知られているが、店員にとって大きな手間となっていた。
このような事情から、欠品商品の予約購入を容易に行えることが望まれていた。
【先行技術文献】
【特許文献】
【0003】
【文献】特開2020-102158号公報
【発明の概要】
【発明が解決しようとする課題】
【0004】
本発明が解決しようとする課題は、欠品商品の予約購入を容易とすることができる商品販売処理システムを提供することである。
【課題を解決するための手段】
【0005】
実施形態の商品販売処理システムは、店舗における商品販売を処理する商品販売処理システムであって、判定手段、受付手段、確認手段、作成手段及び決済手段を備える。判定手段は、店舗での販売対象となる商品であって前記店舗において在庫がある商品を判定する。受付手段は、店舗での販売対象となる商品の指定を受け付ける。確認手段は、受付手段により受け付けられた指定の対象である商品が店舗において在庫が有るかを確認する。作成手段は、買上商品リストを、前記確認手段により在庫があることが確認できない商品については予約することの指定を受けたことに応じて予約商品であることを判別可能に含み、また前記判定手段により判定された商品については予約商品ではないことを判別可能に含んで作成する。決済手段は、作成手段により作成されたリストに含まれる全ての買上商品に関する代金を決済する。決定手段は、判定手段により判定された買上商品が欠品となっている場合に、当該買上商品を予約商品として決定する。
【図面の簡単な説明】
【0006】
図1】一実施形態に係る商品販売処理システムの概略構成を示すブロック図。
図2図1に示される店舗サーバの要部回路構成を示すブロック図。
図3図4に示される予約データベースに含まれるデータレコードのデータ構造を示す模式図。
図4図1に示される仮想POSサーバの要部回路構成を示すブロック図。
図5図2に示される取引データベースに含まれるデータレコードのデータ構造を示す模式図。
図6図1に示されるモバイルコントローラの要部回路構成を示すブロック図。
図7図6に示される登録データベースに含まれるデータレコードのデータ構造を示す模式図。
図8図1に示されるユーザ端末の要部回路構成を示すブロック図。
図9図1に示されるカート端末の要部回路構成を示すブロック図。
図10図8に示されるプロセッサによる情報処理のフローチャート。
図11図8に示されるプロセッサによる情報処理のフローチャート。
図12図8に示されるプロセッサによる情報処理のフローチャート。
図13図8に示されるプロセッサによる情報処理のフローチャート。
図14図8に示されるプロセッサによる取引処理のフローチャート。
図15図6に示されるプロセッサによる取引処理のフローチャート。
図16図6に示されるプロセッサによる取引処理のフローチャート。
図17図6に示されるプロセッサによる取引処理のフローチャート。
図18図6に示されるプロセッサによる取引処理のフローチャート。
図19図4に示されるプロセッサによる取引処理のフローチャート。
図20図4に示されるプロセッサによる取引処理のフローチャート。
図21図4に示されるプロセッサによる取引処理のフローチャート。
図22】買上商品の登録が行われていない状態での一覧画面の一例を示す図。
図23】登録画面の一例を示す図。
図24】買上商品が登録済みである状態での一覧画面の一例を示す図。
図25】欠品画面の一例を示す図。
図26】予約商品を含む買上商品が登録済みである状態での一覧画面の一例を示す図。
図27図2に示されるプロセッサによる情報処理のフローチャート。
【発明を実施するための形態】
【0007】
以下、商品販売処理システムの一実施形態について、図面を用いて説明する。
図1は本実施形態に係る商品販売処理システムの概略構成を示すブロック図である。
商品販売処理システムは、複数の店舗システム100、ユーザ端末200、カート端末300及び中継サーバ400を含む。そして、複数の店舗システム100、ユーザ端末200カート端末300及び中継サーバ400は、通信ネットワーク500を介して通信可能である。
【0008】
図1では、2つの店舗システム100を示している。これら店舗システム100は、商品販売処理システムを利用するそれぞれ異なる店舗A及び店舗Bにそれぞれ設けられる。商品販売処理システムを利用する店舗が3つ以上存在してもよく、店舗毎に店舗システム100が設けられる。なお以下において、各店舗に設けられた店舗システム100を区別する必要がある場合には、店舗Aに設けられた店舗システム100を店舗システム100-1と表し、店舗Bに設けられた店舗システム100を店舗システム100-2と表す。
店舗Aを運営する事業者は、店舗Bを運営する事業者と同じであっても、別であってもよい。その他の店舗で取引システムが利用される場合も、その店舗を運営する事業者は、店舗A又は店舗Bを運営する事業者と同じであっても、別であってもよい。
【0009】
ユーザ端末200及びカート端末300は、商品販売処理システムを利用した買い物を店舗にて行う客のためのユーザインタフェースとして機能する情報処理装置である。ユーザ端末200及びカート端末300は、店舗システム100と無線通信する機能と、通信ネットワーク500と無線通信する機能とを備える。ユーザ端末200としては、スマートフォン又はタブレットコンピュータ等のデータ通信機能を備えた通信端末が利用できる。ユーザ端末200は、客により所有されていてもよいし、店舗にて客に貸与されてもよい。カート端末300としては、タブレットコンピュータ等のデータ通信機能を備えた通信端末が利用され、店舗A又は店舗Bに備え付けのショッピングカートに取り付けられている。ユーザ端末200及びカート端末300は、主として客が操作者となる。ただしユーザ端末200及びカート端末300は、店員などにより客に代わって操作されることもある。カート端末300は、バーコードスキャナ301を備える。バーコードスキャナ301は、商品を識別するための識別子としての商品コードを表したバーコードを赤外線レーザなどを用いて光学的に読み取るのに好適に構成された読取デバイスである。バーコードスキャナ301としては、撮像デバイスで撮影された画像からバーコードを認識して読み取るように構成された読取デバイスを、上記の読取デバイスに代えて、あるいは上記の読取デバイスに加えて備えてもよい。ユーザ端末200及びカート端末300は、客により店内で移動させられる可搬端末の一例である。
【0010】
中継サーバ400は、店舗システム100とユーザ端末200との間でのデータ通信を中継する。中継サーバ400は例えば、通信ネットワーク500を介したクラウドサービスとしてデータ通信の中継機能を提供する。
通信ネットワーク500としては例えば、インターネット、VPN(virtual private network)、LAN(local area network)、公衆通信網、移動体通信網などを、単独又は適宜に組み合わせて用いることができる。通信ネットワーク500としては典型的には、移動体通信網とインターネット又はVPNとが利用される。
【0011】
各店舗システム100の概略的な構成は共通である。すなわち店舗システム100は、店舗サーバ1、仮想POSサーバ2、モバイルコントローラ3、通信サーバ4、会計機5及びアクセスポイント6を、店内通信ネットワーク7を介して通信可能として構成される。ただし、店舗サーバ1、仮想POSサーバ2、モバイルコントローラ3、通信サーバ4、会計機5、アクセスポイント6及び店内通信ネットワーク7は、後述する動作を実現するための機能が共通であればよく、完全に同一である必要は無い。また一部の店舗システム100は、図1に示されない装置を備えてもよい。
【0012】
店舗サーバ1は、店舗システム100により後述のように実現される取引処理の対象となった複数の取引を総合的に管理する。店舗サーバ1は例えば、既存のPOSサーバと同様な機能を有する。
仮想POSサーバ2は、外部からの要求に応じて取引毎の買上商品の登録及び当該買上商品の代金の決済などのための情報処理を行う。つまり仮想POSサーバ2は、既存のPOS端末が備える機能を仮想的に実現する。仮想POSサーバ2が行う情報処理は、店舗毎の運営方針の違いに適応するようにカスタマイズされる。つまり、例えば店舗システム100-1に備えられた店舗サーバ1が行う情報処理と、店舗システム100-2に備えられた店舗サーバ1が行う情報処理とでは、一部相違する場合がある。
【0013】
モバイルコントローラ3は、仮想POSサーバ2による上記の情報処理を、ユーザ端末200をユーザインタフェースデバイスとして用いつつ行わせるための支援を行う。
通信サーバ4は、店舗サーバ1、仮想POSサーバ2、モバイルコントローラ3及び会計機5が、通信ネットワーク500を介して中継サーバ400等とデータを授受するための通信処理を行う。
【0014】
会計機5は、仮想POSサーバ2で管理されている取引毎の買上商品に関する代金を求めて、当該代金を客に決済させるための処理を行う。会計機5が上記の決済のために利用可能とする決済方法は、現金決済、クレジットカード決済、電子マネー決済、ポイント決済、コード決済等、周知の決済方法の全て又は任意の一部であってよい。なお、コード決済は、モバイル決済又はスマートフォン決済等とも称される。会計機5は、店員及び客のいずれにより操作されるのであってもよい。会計機5としては例えば、既存のセミセルフ方式のPOSシステムで用いられるセルフ方式の会計機を用いることができる。会計機5は、商品を買上商品として登録するための情報処理を行う機能を有していてもよい。この場合に会計機5としては例えば、既存のPOSシステムで用いられる対面式のPOS端末又は既存のセルフ方式のPOSシステムで用いられるセルフ式のPOS端末を用いることができる。
【0015】
アクセスポイント6は、ユーザ端末200が無線通信により店内通信ネットワーク7へとアクセスすることを可能とするための通信処理を行う。アクセスポイント6としては例えば、IEEE802.11規格により無線通信を行う周知の通信デバイスを用いることができる。アクセスポイント6は、店舗の売場のどこからでもユーザ端末200が無線通信可能なように、店舗内に設置される。店舗規模によっては、複数のアクセスポイント6が、1つの店舗システム100に配置される場合もある。
店内通信ネットワーク7としては、インターネット、VPN、LAN、公衆通信網、移動体通信網などを、単独又は適宜に組み合わせて用いることができる。ただし典型的には、店内通信ネットワーク7は、LANである。
【0016】
店舗システム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と表す。
【0017】
チェックインデータは例えば、それぞれの店舗の (1)店舗システム100の動作バージョン、(2) 店舗を識別するための店舗コード、(3) 店舗を運営する事業者の名称、(4) 店舗システム100が設けられる店舗の名称、(5) 店舗を運営する事業者を識別するための事業者コード、(6) 2次元コードTCIと2次元コードTCOとを区別するためのフラグ、(7) ユーザ端末200が店舗システム100と通信するための接続先や接続に必要な情報、といった情報を表す。なお、ユーザ端末200が店舗システム100と通信するための接続先としては、アクセスポイント6又は中継サーバ400が挙げられる。そしてその接続に必要な情報としては、中継サーバ400のドメイン名又はアクセスポイント6を識別するためのSSID(service set identifier)と、アクセスポイント6又は中継サーバ400にアクセスするためのパスワードなどが挙げられる。
なお、チェックインデータは、例示した各種の情報のうちの一部を含まなくてもよい。またチェックインデータは、例示した各種の情報とは別の情報を表してもよい。
【0018】
図2は店舗サーバ1の要部回路構成を示すブロック図である。
店舗サーバ1は、プロセッサ11、メインメモリ12、補助記憶ユニット13、通信インタフェース14及び伝送路15を含む。プロセッサ11、メインメモリ12、補助記憶ユニット13及び通信インタフェース14は、伝送路15を介して通信可能とされている。そして、プロセッサ11、メインメモリ12及び補助記憶ユニット13が伝送路15により接続されていることによって、店舗サーバ1を制御するためのコンピュータが構成される。
【0019】
プロセッサ11は、上記コンピュータの中枢部分に相当する。プロセッサ11は、オペレーティングシステム及びアプリケーションプログラム等の情報処理プログラムに従って、店舗サーバ1としての各種の機能を実現するための情報処理を実行する。プロセッサ11は、例えばCPU(central processing unit)である。
【0020】
メインメモリ12は、上記コンピュータの主記憶部分に相当する。メインメモリ12は、不揮発性のメモリ領域と揮発性のメモリ領域とを含む。メインメモリ12は、不揮発性のメモリ領域では上記の情報処理プログラムを記憶する。メインメモリ12は、プロセッサ11が情報処理を実行する上で必要なデータを不揮発性又は揮発性のメモリ領域で記憶する場合もある。メインメモリ12は、揮発性のメモリ領域を、プロセッサ11によってデータが適宜書き換えられるワークエリアとして使用する。不揮発性のメモリ領域は、例えばROM(read only memory)である。揮発性のメモリ領域は、例えばRAM(random access memory)である。
【0021】
補助記憶ユニット13は、上記コンピュータの補助記憶部分に相当する。補助記憶ユニット13としては、例えばEEPROM(electric erasable programmable read-only memory)、HDD(hard disc drive)、あるいはSSD(solid state drive)等の周知の記憶デバイスを用いた記憶ユニットを利用できる。補助記憶ユニット13は、プロセッサ11が各種の処理を行う上で使用するデータ、あるいはプロセッサ11での処理によって作成されたデータ等を保存する。補助記憶ユニット13は、上記の情報処理プログラムを記憶する場合もある。
【0022】
通信インタフェース14は、店内通信ネットワーク7に接続された各部との間で所定の通信プロトコルに従いデータ通信を行う。通信インタフェース14としては、例えばLAN用の周知の通信デバイスを適用できる。
伝送路15は、アドレスバス、データバス及び制御信号線等を含み、接続された各部の間で授受されるデータ及び制御信号を伝送する。
【0023】
補助記憶ユニット13は、情報処理プログラムの1つである店舗管理アプリAPAを記憶する。店舗管理アプリAPAは、アプリケーションプログラムであり、店舗サーバ1としての機能を実現するための情報処理について記述されている。店舗管理アプリAPAは、店舗毎、あるいは店舗を運営する事業者毎の店舗運営方針に適応して作成された別々のものであってよい。例えば、店舗Aと店舗Bとで売上データの管理方法が異なるならば、店舗システム100-1で用いられる店舗管理アプリAPAは、店舗Aでの売上データの管理方法に適応した売上データの管理のための情報処理について記述され、店舗システム100-2で用いられる店舗管理アプリAPAは、店舗Bでの売上データの管理方法に適応した売上データの管理のための情報処理について記述される。
【0024】
補助記憶ユニット13の記憶領域の一部は、データベース群DBAAとして使用される。データベース群DBAAは、各種の情報管理のための複数のデータベースを含む。データベース群DBAAに含まれるデータベースの1つは、店舗で販売する商品を管理するための商品データベースである。商品データベースは、管理の対象となる商品に関連付けられたデータレコードの集合である。商品データベースのデータレコードには、商品コード、価格及び商品名等の、関連付けられた商品に関するデータが含まれる。商品コードは、商品をSKU(stock keeping unit)毎に識別するために定められた識別子であり、例えばJAN(Japanese article number)コードが用いられる。商品名は、商品を人間が区別し易いように定められた名称である。価格は、商品の販売の対価となる金額である。
【0025】
データベース群DBAAに含まれるデータベースの1つは、店舗の利用者を管理するための利用者データベースである。利用者データベースは、利用者として登録された客に関連付けられたデータレコードの集合である。利用者データベースのデータレコードには、利用者コード及び利用者を特定するための属性情報等の、関連付けられた客に関するデータが含まれる。利用者コードは、利用者を個々に識別するために客毎に定められた一意の識別コードである。属性情報は、氏名、性別、年齢、住所、電話番号などを含み得る。また利用者データベースのデータレコードには、利用者が申告した決済情報を含む場合もある。決済情報は、クレジット番号又はコード決済ID(identifier)などである。また複数の決済方法を選択可能とする場合には、決済情報に決済方法を識別するための決済方法コードを含む場合もある。また、ポイントサービスを提供する店舗の場合には、ポイントサービスのID及び保有ポイント数などを決済情報に含む場合もある。
【0026】
また、データベース群DBAAに含まれるデータベースの1つは、在庫データベースDBABである。在庫データベースDBABは、店舗で販売される商品のそれぞれの商品コードに関連付けて、その商品コードで識別される商品の店舗での在庫状況を表す在庫情報を記述している。在庫情報は例えば、在庫数などを含む。
【0027】
また、データベース群DBAAに含まれるデータベースの1つは、予約データベースDBACである。
図3は予約データベースDBACに含まれるデータレコードREAのデータ構造を示す模式図である。
予約データベースDBACは、後述する予約購入に関する管理のためのデータレコードREAの集合である。データレコードREAは、予約購入の対象となる商品の個々に関連付けられ、フィールドFBA,FBB,FBC,FBD,FBE,FBFを含む。
【0028】
フィールドFBAには、関連付けられた商品に関する予約購入を管理するための識別子としての予約コードがセットされる。フィールドFBBには、関連付けられた商品を予約購入した客の識別子としての利用者コードがセットされる。フィールドFBCには、関連付けられた商品の商品コードがセットされる。フィールドFBDに、関連付けられた商品の予約購入の数量がセットされる。フィールドFBEには、予約購入された日時を表す予約日がセットされる。フィールドFBFには、入荷通知済みであるか否かを表す通知フラグがセットされる。
【0029】
この他、データベース群DBAAには、既存のPOSシステムにおけるPOSサーバで管理されるような様々なデータベースが含まれ得る。なお、データベース群DBAAがどのようなデータベースを含むか、あるいはそれらデータベースがどのようなデータをどのような構造で含んでいるかは、店舗毎に定められてよい。
【0030】
図4は仮想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と同等であるので、その説明は省略する。
【0031】
ただし補助記憶ユニット23は、店舗管理アプリAPAに代えて仮想POSアプリAPBを記憶する。仮想POSアプリAPBは、アプリケーションプログラムであり、仮想POSサーバ2としての機能を実現するための情報処理について記述されている。仮想POSアプリAPBは、店舗毎、あるいは店舗を運営する事業者毎の店舗運営方針に適応して作成された別々のものであってよい。例えば、店舗Aでは、店舗Bでは行われない割引サービスを行うのであるならば、店舗システム100-1で用いられる仮想POSアプリAPBは、当該割引サービスを実現するための情報処理について記述され、店舗システム100-2で用いられる仮想POSアプリAPBは、当該割引サービスを実現するための情報処理について記述されない。
【0032】
また補助記憶ユニット23の記憶領域の一部は、データベース群DBAAに代えて取引データベースDBBA及び予約データベースDBACとして使用される。
図5は取引データベースDBBAに含まれるデータレコードREBのデータ構造を示す模式図である。
取引データベースDBBAは、店内で買い回り中である客との取引に関連付けられたデータレコードREBの集合である。そしてデータレコードREBは、フィールドFAA,FABを含む。データレコードREBはまた、フィールドFAC,FAD,FAE…を含み得る。
【0033】
フィールドFAAには、関連付けられた取引の取引コードがセットされる。フィールドFABには、関連付けられた取引の客の利用者コードがセットされる。フィールドFAC以降の各フィールドには、関連付けられた取引に関して買上商品が登録済みである場合に、その登録済みの買上商品のそれぞれに関する商品データがセットされる。
商品データは、商品コード、商品名、価格、数量及び予約フラグなどを含む。取引データベースDBBAの構造は、店舗毎、あるいは店舗を運営する事業者毎の店舗運営方針に適応して個別に定められてよい。
【0034】
図6はモバイルコントローラ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と同等であるので、その説明は省略する。
【0035】
ただし補助記憶ユニット33は、店舗管理アプリAPAに代えて登録支援アプリAPCを記憶する。登録支援アプリAPCは、アプリケーションプログラムであり、買上商品の登録を支援するための後述する情報処理について記述されている。登録支援アプリAPCは、各店舗システム100で共通である。ただし、登録支援アプリAPCに基づく情報処理のための各種の設定は、店舗システム100毎にカスタマイズされてもよい。
【0036】
また補助記憶ユニット23の記憶領域の一部は、データベース群DBAAに代えて取引管理データベースDBCA及び登録データベースDBCBとして使用される。これら取引管理データベースDBCA及び登録データベースDBCBの構造は、各店舗システム100で共通である。
【0037】
取引管理データベースDBCAは、店内で客が利用しているユーザ端末200又はカート端末300に関連付けられたデータレコードの集合である。このため、店内でユーザ端末200又はカート端末300を利用している客が1人であるときには、取引管理データベースDBCAはデータレコードを1つ含む。また店内でユーザ端末200又はカート端末300を利用している客が1人も居ないときには、取引管理データベースDBCAはデータレコードを含まない。そして取引管理データベースDBCAのデータレコードは、端末コード、利用者コード及び取引コードを互いに関連付けて記述する。
取引管理データベースDBCAのデータレコードに含められる端末コードは、関連付けられたユーザ端末200又はカート端末300を識別するための識別子である。端末コードとしては例えば、ユーザ端末200又はカート端末300として利用される通信端末の個々を識別するために通信端末毎に設定された一意の識別コードを用いることができる。あるいは端末コードとしては例えば、後述するスマホPOSアプリをユーザ端末200にインストールする際に当該スマホPOSアプリに対して設定される識別コード、あるいはカート端末アプリをカート端末300にインストールする際に当該カート端末アプリに対して設定される識別コードを用いることができる。取引管理データベースDBCAのデータレコードに含められる利用者コードは、関連付けられたユーザ端末200又はカート端末300を使用している客に対して割り当てられた利用者コードである。取引管理データベースDBCAのデータレコードに含められる取引コードは、関連付けられたユーザ端末200又はカート端末300を用いて行われる取引を識別するための識別子である。
【0038】
図7は登録データベースDBCBに含まれるデータレコードRECのデータ構造を示す模式図である。
登録データベースDBCBは、店内で買い回り中である客との取引に関連付けられたデータレコードRECの集合である。そしてデータレコードRECは、フィールドFCA,FCBを含む。データレコードRECはまた、フィールドFCC,FCD,…を含み得る。
【0039】
フィールドFCAには、関連付けられた取引の取引コードがセットされる。この取引コードは、関連付けられた取引で使用されているユーザ端末200又はカート端末300に取引管理データベースDBCAで関連付けられたデータレコードに含まれる取引コードと同一である。フィールドFCBには、関連付けられた取引に関して試みられた商品登録に関する登録データがセットされる。登録データについては、後述する。
データレコードRECには、関連付けられた取引に関して2つ以上の買上商品の登録が試みられている場合に、フィールドFCC以降のフィールドが含まれる。そしてフィールドFCC以降のフィールドにも、フィールドFCBと同様な登録データがセットされる。
【0040】
図8はユーザ端末200の要部回路構成を示すブロック図である。
ユーザ端末200は、プロセッサ201、メインメモリ202、補助記憶ユニット203、タッチパネル204、カメラ205、サウンドユニット206、センサ群207、無線通信ユニット208、モバイル通信ユニット209及び伝送路210等を備える。プロセッサ201と、メインメモリ202、補助記憶ユニット203、タッチパネル204、カメラ205、サウンドユニット206、センサ群207、無線通信ユニット208及びモバイル通信ユニット209とは、伝送路210を介して通信可能とされている。そして、プロセッサ201、メインメモリ202及び補助記憶ユニット203が伝送路210により接続されていることによって、ユーザ端末200を制御するためのコンピュータが構成される。なお、プロセッサ201、メインメモリ202、補助記憶ユニット203及び伝送路210の機能の概略は、プロセッサ11、メインメモリ12、補助記憶ユニット13及び伝送路15と同等であるので、その説明は省略する。
【0041】
タッチパネル204は、ユーザ端末200の入力デバイス及び表示デバイスとして機能する。
カメラ205は、光学系及びイメージセンサを含み、光学系により形成される視野内の像を表した画像データをイメージセンサにより生成する。
サウンドユニット206は、音声及びメロディなどの各種サウンドを出力する。
センサ群207は、角速度センサ及びGPS(global positioning system)センサなどの各種のセンサを含む。
【0042】
無線通信ユニット208は、アクセスポイント6との間で無線通信プロトコルに従った無線通信によりデータを授受する。無線通信ユニット208としては、例えばIEEE802.11規格に準拠した周知の通信デバイスを利用できる。
モバイル通信ユニット209は、通信ネットワーク500を介したデータ通信のインタフェースである。モバイル通信ユニット209としては、例えば移動通信網を介したデータ通信を行うための周知の通信デバイスを利用できる。
【0043】
なお補助記憶ユニット203は、情報処理プログラムの1つであるスマホPOSアプリAPDを記憶する。スマホPOSアプリAPDは、アプリケーションプログラムであり、ユーザ端末200を店舗システム100の客用のユーザインタフェースとして機能させるための後述する情報処理について記述されている。スマホPOSアプリAPDは、複数のユーザ端末200で共通に利用される。
【0044】
図9はカート端末300の要部回路構成を示すブロック図である。
カート端末300は、バーコードスキャナ301の他に、プロセッサ302、メインメモリ303、補助記憶ユニット304、タッチパネル305、サウンドユニット306、無線通信ユニット307及び伝送路308等を備える。プロセッサ302と、バーコードスキャナ301、メインメモリ303、補助記憶ユニット304、タッチパネル305、サウンドユニット306及び無線通信ユニット307とは、伝送路308を介して通信可能とされている。そして、プロセッサ302、メインメモリ303及び補助記憶ユニット304が伝送路308により接続されていることによって、カート端末300を制御するためのコンピュータが構成される。なお、プロセッサ302、メインメモリ303、補助記憶ユニット304、タッチパネル305、サウンドユニット306、無線通信ユニット307及び伝送路308の機能の概略は、プロセッサ11、メインメモリ12、補助記憶ユニット13、タッチパネル204、サウンドユニット206及び無線通信ユニット208及び伝送路15と同等であるので、その説明は省略する。
【0045】
なお補助記憶ユニット304は、情報処理プログラムの1つであるカート端末アプリAPEを記憶する。カート端末アプリAPEは、アプリケーションプログラムであり、カート端末300を店舗システム100の客用のユーザインタフェースとして機能させるための情報処理について記述されている。カート端末アプリAPEは、カート端末300で共通に利用される。
【0046】
店舗サーバ1、仮想POSサーバ2、モバイルコントローラ3、ユーザ端末200又はカート端末300は、店舗管理アプリAPA、仮想POSアプリAPB、登録支援アプリAPC、スマホPOSアプリAPD又はカート端末アプリAPEが補助記憶ユニット13,23,33,203,304に記憶された状態で譲渡されてもよいし、店舗管理アプリAPA、仮想POSアプリAPB、登録支援アプリAPC、スマホPOSアプリAPD又はカート端末アプリAPEが補助記憶ユニット13,23,33,203,304に記憶されない状態のハードウェアと、店舗管理アプリAPA、仮想POSアプリAPB、登録支援アプリAPC、スマホPOSアプリAPD又はカート端末アプリAPEと、が個別に譲渡されてもよい。店舗管理アプリAPA、仮想POSアプリAPB、登録支援アプリAPC、スマホPOSアプリAPD又はカート端末アプリAPEの譲渡は、磁気ディスク、光磁気ディスク、光ディスク、半導体メモリなどのようなリムーバブルな記録媒体に記録して、あるいはネットワークを介した通信により行うことができる。
【0047】
次に以上のように構成された商品販売処理システムの動作について説明する。なお、以下に説明する各種の処理の内容は一例であって、一部の処理の順序の変更、一部の処理の省略、あるいは別の処理の追加などは適宜に可能である。例えば、以下の説明では、本実施形態の特徴的な動作を分かり易く説明するために、一部の処理についての説明を省略している。例えば、何らかのエラーが発生した場合に、そのエラーに対処するための処理が行われる場合があるが、そのような処理の一部については記載を省略している。
【0048】
なお、以下に説明する商品販売処理システムの動作により客に提供されるサービスは、スマホPOSサービス、あるいはカートPOSサービスなどと称されるが、以下においてはスマホPOSサービスと記すこととする。そして以下においては、ユーザ端末200を用いた買い物を実現するための動作を中心に説明する。
スマホPOSサービスを利用するためにユーザ端末200が店舗システム100とデータを授受するが、そのための通信にアクセスポイント6との無線通信及び通信ネットワーク500との無線通信とのいずれを利用するかは、チェックインデータに含まれるフラグの状態により決まる。しかしながら以下においては説明の簡略化のために、アクセスポイント6との無線通信のみを用いる場合について説明する。また、会計機5で会計を行わせるために仮想POSサーバ2から会計機5へのデータ転送を、会計機5からモバイルコントローラ3にデータ転送を要求するモードと、会計機5からの要求無しにモバイルコントローラ3から会計機5へとデータ転送するモードとのいずれを利用するかは、チェックインデータに含まれるフラグの状態により決まる。しかしながら以下においては説明の簡略化のために、会計機5からモバイルコントローラ3にデータ転送を要求するモードが固定的に用いられることとして説明する。
【0049】
客は、スマホPOSサービスを利用するためには、自らが所有するスマートフォン等にスマホPOSアプリAPDをインストールして、ユーザ端末200として利用可能としておく。あるいは、客は、タブレットコンピュータなどにスマホPOSアプリAPDをインストールして構成されたユーザ端末200を店舗にて借りる。そして客は、スマホPOSアプリAPDに基づく情報処理を起動した状態のユーザ端末200を持って、店舗システム100が設けられたいずれかの店舗へと入る。あるいは、客は、店舗へと入ったのちに、店舗に備え付けのショッピングカートとともに、そこに取り付けられたカート端末300を借りる。
【0050】
さてユーザ端末200のプロセッサ201は、スマホPOSアプリAPDに基づく情報処理を実行する。
図10図11図12図13及び図14はプロセッサ201によるにスマホPOSアプリAPDに基づく情報処理のフローチャートである。
まず図10に示すACT101としてプロセッサ201は、メインメニュー画面をタッチパネル204に表示させる。メインメニュー画面は、スマホPOSアプリAPDに基づいて行うべきいくつかの処理のいずれかの指定を受けるための画面である。メインメニュー画面には、買い物の開始を指定するためのGUI(graphical user interface)要素を含む、複数のGUI要素が配置されている。なおGUI要素は、例えばソフトキーである。
【0051】
ACT102としてプロセッサ201は、買い物の開始が指定されたか否かを確認する。そしてプロセッサ201は、該当の事象を確認できないならばNOと判定し、ACT103へと進む。
ACT103としてプロセッサ201は、買い物の開始以外の指定がなされたか否かを確認する。そしてプロセッサ201は、該当の事象を確認できないならばNOと判定し、ACT102へと戻る。
かくしてプロセッサ201はACT102及びACT103としては、メインメニュー画面での何らかの指定がなされるのを待ち受ける。そしてプロセッサ201は、買い物の開始以外の指定がなされたならば、ACT103にてYESと判定し、指定された処理へと進む。なおこの場合のプロセッサ201の処理についての説明は省略する。
【0052】
客は、店舗に入って買い物を開始する場合には、メインメニュー画面にて買い物の開始を指定するための予め定められた操作を行う。
プロセッサ201は、買い物の開始を指定するための操作が例えばタッチパネル204にて検出されると、ACT102にてYESと判定し、ACT104へと進む。
ACT104としてプロセッサ201は、チェックイン用のスキャン画面をタッチパネル204に表示させる。チェックイン用のスキャン画面は、チェックイン用の2次元コードTCIを読み取るように客に促す画面である。プロセッサ201は例えば、カメラ205を起動し、これによりカメラ205で得られた画像に、2次元コードTCIを読み取るように客に促す文字メッセージと、2次元コードTCIを翳すべき位置の目安を示すラインとを重ねてスキャン画面を生成する。
【0053】
客は、スキャン画面がタッチパネル204に表示されたならば、店舗の入口付近に掲示されている2次元コードTCIがスキャン画面に映り込むようにカメラ205を2次元コードTCIに向ける。
ACT105としてプロセッサ201は、2次元コードが読み取れるのを待ち受ける。このときにプロセッサ201は、カメラ205で得られる画像を繰り返し解析し、2次元コードの読み取りを試みる。この2次元コードの読み取りは、スマホPOSアプリAPDに基づく処理として行われてもよいし、2次元コードの読み取り用の別のアプリケーションプログラムに基づく処理として行われてもよい。そしてプロセッサ201は、2次元コードが読み取れたならばYESと判定し、ACT106へと進む。
【0054】
ACT106としてプロセッサ201は、読み取った2次元コードが表すデータがチェックインデータであるか否かを確認する。そしてプロセッサ201は、チェックインデータでなければNOと判定し、ACT105へと戻る。このときにプロセッサ201は、誤った2次元コードが読み取られたことを客に通知する画面をタッチパネル204に表示させてもよい。
【0055】
プロセッサ201は、読み取った2次元コードが表すデータがチェックインデータであることが確認できたならば、ACT106にてYESと判定し、ACT107へと進む。
ACT107としてプロセッサ201は、読み取ったチェックインデータを、メインメモリ202又は補助記憶ユニット203に保存する。
【0056】
ACT108としてプロセッサ201は、モバイルコントローラ3に対して、チェックインを要求する。具体的にはプロセッサ201は、チェックインデータに表されたデータに基づいて、無線通信ユニット208とアクセスポイント6との無線通信を確立する。例えば店舗Aにて2次元コードTCIAに客によってカメラ205が向けられたならば、2次元コードTCIAが表すチェックインデータに基づいてプロセッサ201は、店舗システム100-1に設けられたアクセスポイント6との無線通信を確立する。そしてプロセッサ201は、アクセスポイント6との無線通信を介して、チェックインを要求するための要求データをモバイルコントローラ3に宛てて送信する。上述のように店舗システム100-1に設けられたアクセスポイント6との無線通信が確立している場合には、当該の要求データは、店舗システム100-1に設けられたアクセスポイント6及び店内通信ネットワーク7を介して、店舗システム100-1に設けられたモバイルコントローラ3へと伝送される。なおプロセッサ201は、チェックインを要求するための要求データには、チェックインの要求であることを識別するための識別データと、自端末の端末コードとを含める。プロセッサ201は、客がスマホPOSサービスの利用登録者であり、利用者コードを有している場合には、その利用者コードも要求データに含める。利用者コードは例えば、ユーザ端末200の補助記憶ユニット203で記憶される。プロセッサ201は、例えば客を認証するためのデータなどのその他のデータを要求データに含めてもよい。
【0057】
なお、以降において説明するユーザ端末200からモバイルコントローラ3への各種の要求は、上記と同様に、要求の理由を識別するための識別データを含んだ要求データをアクセスポイント6及び店内通信ネットワーク7を介してユーザ端末200からモバイルコントローラ3へと送ることにより実現される。
【0058】
モバイルコントローラ3のプロセッサ31は、チェックインを要求するための要求データが通信インタフェース34によって受信されると、チェックインしようとしている客との取引に関する情報処理(以下、支援処理と称する)を登録支援アプリAPCに従って開始する。
図15図16図17及び図18はプロセッサ31による支援処理のフローチャートである。
【0059】
プロセッサ31は、チェックインを要求するための要求データが通信インタフェース34によって受信される毎に、当該支援処理を開始する。別の要求に基づいて開始した支援処理を既に実行している場合には、それに並行して新たな支援処理を開始する。つまりプロセッサ31は、複数のユーザ端末200をそれぞれ対象として支援処理を複数並行して実行する場合がある。以下においては、単に「ユーザ端末200」と表す場合には、説明中の支援処理の対象となっているユーザ端末200を指すこととする。
【0060】
図15のACT201としてプロセッサ31は、チェックイン処理を行う。プロセッサ31は例えば、仮想POSサーバ2に対して、要求データに含まれている利用者コードの通知を伴って、取引の開始を要求し、取引コードの通知を受ける。そしてプロセッサ31は、要求データに含まれた端末コードを含んだ新たなデータレコードを取引管理データベースDBCAに追加する。プロセッサ31は、要求データに含まれている利用者コードを、新たなデータレコードに含める。プロセッサ31は、上記の通知された取引コードを、新たなデータレコードに含める。これにより、チェックインを要求したユーザ端末200を用いて行われる取引の管理が開始される。なお、プロセッサ31は、店舗サーバ1に対して利用者コードを照会し、利用者認証を経て新たなデータレコードを取引管理データベースDBCAに追加するのでもよい。
かくしてプロセッサ31は、要求データに含まれる利用者コードで識別される客として、買上商品を買い上げる客として識別する。つまりプロセッサ31は、登録支援アプリAPCに基づく情報処理をプロセッサ31が実行することによって、プロセッサ31を中枢部分とするコンピュータは識別手段として機能する。
【0061】
仮想POSサーバ2のプロセッサ21は、取引の開始がモバイルコントローラ3から要求されたならば、当該取引に関する情報処理(以下、取引処理と称する)を仮想POSアプリAPBに従って開始する。
図19図20及び図21はプロセッサ21による取引処理のフローチャートである。
【0062】
プロセッサ21は、取引の開始が要求される毎に、当該取引処理を開始する。別の要求に基づいて開始した取引処理を既に実行している場合には、それに並行して新たな取引処理を開始する。つまりプロセッサ21は、複数の取引のそれぞれについての取引処理を並行して実行する場合がある。以下においては、単に「取引」と表す場合には、説明中の取引処理の対象となっている取引を指すこととする。
図19中のACT301としてプロセッサ21は、1取引に関する処理を開始するための開始処理を実行する。プロセッサ21は例えば、予め定められたルールに従って、他の取引を識別するための取引コードと重複しないように新たな取引コードを決定し、その決定した取引コードをモバイルコントローラ3に通知する。プロセッサ21は例えば、上記のように決定した取引コードをフィールドFAAにセットし、かつ通知データに含まれている利用者コードをフィールドFABにセットした新たなデータレコードREBを取引データベースDBBAに追加する。
【0063】
モバイルコントローラ3のプロセッサ31は、前述のような図15中のACT201でのチェックイン処理を、上記のように仮想POSサーバ2から通知された取引コードを用いて行う。そしてプロセッサ31はチェックイン処理を終えると、ACT202へと進む。
ACT202としてプロセッサ31は、チェックイン処理を正常に完了したか否かを確認する。そしてプロセッサ31は、何らかの異常によりチェックイン処理を正常に完了することができなかったならばNOと判定し、ACT203へと進む。
【0064】
ACT203としてプロセッサ31は、ユーザ端末200に対してエラーを通知する。プロセッサ31は例えば、エラー通知のための通知データを、店内通信ネットワーク7及びアクセスポイント6を介してユーザ端末200へと送信する。プロセッサ31は、エラーの通知であることを識別するための識別データを通知データに含める。プロセッサ31は、エラーの原因を表すエラーコードを通知データに含めてもよい。
【0065】
なお、以降において説明するモバイルコントローラ3からユーザ端末200への各種の通知は、上記と同様に、通知の理由を識別するための識別データを含んだ通知データを店内通信ネットワーク7及びアクセスポイント6を介してモバイルコントローラ3からユーザ端末200へと送ることにより実現される。
そしてプロセッサ31は、支援処理を終了する。
【0066】
プロセッサ31は一方、チェックイン処理を正常に完了することができたならばACT202にてYESと判定し、ACT204へと進む。
ACT204としてプロセッサ31は、ユーザ端末200に対してチェックイン完了を通知する。
【0067】
ユーザ端末200のプロセッサ201は、図10中のACT108にてチェックインを要求した後には、ACT109へと進む。
ACT109としてプロセッサ201は、チェックイン完了が通知されたか否かを確認する。そしてプロセッサ201は、当該の事象を確認できないならばNOと判定し、ACT110へと進む。
ACT110としてプロセッサ201は、チェックインのエラーが通知されたか否かを確認する。そしてプロセッサ201は、当該の事象を確認できないならばNOと判定し、ACT109へと戻る。
かくしてプロセッサ201はACT109及びACT110としては、チェックインの完了又はエラーが通知されるのを待ち受ける。そしてプロセッサ201は、前述のエラー通知のための通知データが無線通信ユニット208により受信されたならばACT110にてYESと判定し、ACT111へと進む。
【0068】
ACT111としてプロセッサ201は、エラー画面をタッチパネル204に表示させる。エラー画面は、チェックインできないことを客に報知するものとして定められた画面である。プロセッサ201は、例えばエラー画面中に表したGUI要素の操作などによりエラー画面の表示解消が指示されたならば、ACT101へと戻る。
【0069】
プロセッサ201は一方、前述のチェックイン完了の通知のための通知データが無線通信ユニット208により受信されたならばACT109にてYESと判定し、図11中のACT112へと進む。
ACT112としてプロセッサ201は、一覧画面をタッチパネル204に表示させる。一覧画面は、登録済みの買上商品の一覧を表した画面である。
【0070】
図22は一覧画面SCAの一例を示す図である。
一覧画面SCAは、表示エリアARAA,ARAB及びボタンBUAA,BUAB,BUAC,BUADを含む。表示エリアARAAは、買上商品の総数と、買上商品の代金の総額とを表す。表示エリアARABは、買上商品の一覧を表す。ボタンBUAAは、買上商品の全てを取り消して買い物を中止することを客が指定するためのソフトキーである。ボタンBUABは、買上商品として登録する商品のスキャンを開始することを客が指定するためのソフトキーである。ボタンBUACは、会計を開始することを客が指定するためのソフトキーである。ボタンBUADは、後述する検索の開始を客が指定するためのソフトキーである。
なお、図22に示す一覧画面SCAは、まだ買上商品の登録が行われていない状態を示している。このため、表示エリアARAAには総数及び総額としていずれも“0”を表し、表示エリアARABには何も表さない。
【0071】
図11中のACT113としてプロセッサ201は、商品のスキャン開始が指定されたか否かを確認する。そしてプロセッサ201は、該当の事象を確認できなければNOと判定し、ACT114へと進む。
ACT114としてプロセッサ201は、検索の開始が指定されたか否かを確認する。そしてプロセッサ201は、該当の事象を確認できなければNOと判定し、ACT115へと進む。
ACT115としてプロセッサ201は、数量の変更が指定されたか否かを確認する。そしてプロセッサ201は、該当の事象を確認できなければNOと判定し、ACT116へと進む。
ACT116としてプロセッサ201は、買い物の中止が指定されたか否かを確認する。そしてプロセッサ201は、該当の事象を確認できなければNOと判定し、ACT117へと進む。
ACT117としてプロセッサ201は、会計の開始が指定されたか否かを確認する。そしてプロセッサ201は、該当の事象を確認できなければNOと判定し、ACT118へと進む。
ACT118としてプロセッサ201は、一覧画面の表示が指示されたか否かを確認する。そしてプロセッサ201は、該当の事象を確認できなければNOと判定し、ACT113へと戻る。
かくしてプロセッサ201はACT113~ACT118としては、スキャン開始、検索開始、数量、中止及び会計開始のいずれかが指定されるか、一覧画面の表示が指示されるのを待ち受ける。
【0072】
さて、モバイルコントローラ3のプロセッサ31は、図15中のACT204にてチェックイン完了の通知を行った後には、ACT205へと進む。
ACT205としてプロセッサ31は、登録が要求されたか否かを確認する。そしてプロセッサ31は、該当の事象を確認できなければNOと判定し、ACT206へと進む。
ACT206としてプロセッサ31は、検索が要求されたか否かを確認する。そしてプロセッサ31は、該当の事象を確認できなければNOと判定し、ACT207へと進む。
ACT207としてプロセッサ31は、数量変更が要求されたか否かを確認する。そしてプロセッサ31は、該当の事象を確認できなければNOと判定し、ACT208へと進む。
ACT208としてプロセッサ31は、買上商品の削除が要求されたか否かを確認する。そしてプロセッサ31は、該当の事象を確認できなければNOと判定し、ACT209へと進む。
ACT209としてプロセッサ31は、買上商品の取消が要求されたか否かを確認する。そしてプロセッサ31は、該当の事象を確認できなければNOと判定し、ACT210へと進む。
ACT210としてプロセッサ31は、会計が要求されたか否かを確認する。そしてプロセッサ31は、該当の事象を確認できなければNOと判定し、ACT205へと戻る。
かくしてプロセッサ31はACT205~ACT210としては、登録、検索、数量変更、削除、取消及び会計のいずれかが要求されるのを待ち受ける。
【0073】
客は、商品を買上商品として登録するならば、一覧画面SCAにおけるボタンBUABにタッチするなどの予め定められた操作によってスキャン開始を指定する。これに応じてプロセッサ201は、図11中のACT113にてYESと判定し、ACT119へと進む。
ACT119としてプロセッサ201は、登録画面をタッチパネル204に表示させる。登録画面は、買上商品として登録する商品の商品コードを表したバーコードを読み取るように客に促す画面である。
【0074】
図23は登録画面SCBの一例を示す図である。
登録画面SCBは、表示エリアARBA、文字列CSBA及びボタンBUBAを含む。表示エリアARBAは、カメラ205で得られた画像を表示する。文字列CSBAは、商品のバーコードを読み取るように客に促す文字メッセージを表す。ボタンBUBAは、商品コードのスキャンを中止することを客が指定するためのソフトキーである。
プロセッサ201は例えば、カメラ205を起動し、これによりカメラ205で得られた画像に、表示エリアARBAの範囲を表すラインと、文字列CSBA及びボタンBUBAとを表した画像を重ねて登録画面SCBを生成する。
【0075】
図11中のACT120としてプロセッサ201は、バーコードが読み取れたか否かを確認する。このときにプロセッサ201は、カメラ205で得られる画像を解析し、バーコードの読み取りを試みる。このバーコードの読み取りは、スマホPOSアプリAPDに基づく処理として行われてもよいし、バーコードの読み取り用の別のアプリケーションプログラムに基づく処理として行われてもよい。そしてプロセッサ201は、バーコードが読み取れないならばNOと判定し、ACT121へと進む。
ACT121としてプロセッサ201は、スキャンの中止が指定されたか否かを確認する。そしてプロセッサ201は、該当の事象を確認できないならばNOと判定し、ACT120に戻る。
かくしてプロセッサ201はACT120及びACT121としては、バーコードが読み取れるか、スキャン中止が指定されるのを待ち受ける。
【0076】
客は、今回のスキャンは行わずに一覧画面SCAの表示状態に戻ることを希望する場合には、ボタンBUBAにタッチするなどの予め定められた操作によってスキャン中止を指定する。これに応じてプロセッサ201は、ACT121にてYESと判定し、ACT112へと戻る。この場合には、買上商品の登録状態は変更されないので、プロセッサ201は、削除画面を表示する前に表示していたのと同じ状態の一覧画面SCAをタッチパネル204に再び表示させる。
【0077】
客は、登録画面SCBがタッチパネル204に表示されたならば、買上商品として登録しようとする商品に表示されたバーコードが表示エリアARBAに映り込むようにカメラ205を商品に向ける。これに応じてプロセッサ201は、ACT120にてYESと判定し、ACT122へと進む。
ACT122としてプロセッサ201は、モバイルコントローラ3に対して登録を要求する。プロセッサ201は、ここで送信する要求データには、読み取ったバーコードが表すデータ(以下、バーコードデータと称する)を含める。
【0078】
モバイルコントローラ3のプロセッサ31は、前述のようにユーザ端末200から登録が要求されたならば図15中のACT205にてYESと判定し、ACT211へと進む。
ACT211としてプロセッサ31は、取引コードの通知を伴って、登録の要求を仮想POSサーバ2に転送する。プロセッサ31はこのとき、ユーザ端末200から送られてきた要求データに取引コードを付加して仮想POSサーバ2に転送してもよいし、何らかの処理による変換後の要求データに取引コードを付加して仮想POSサーバ2に送信してもよい。ただしプロセッサ31は、ユーザ端末200から送られてきた要求データに含まれたバーコードデータは、仮想POSサーバ2へと通知する。
【0079】
仮想POSサーバ2のプロセッサ21は、図19中のACT301にて取引コードを通知したのちには、ACT302へと進む。
ACT302としてプロセッサ21は、登録が要求されたか否かを確認する。そしてプロセッサ21は、該当の事象を確認できなければNOと判定し、ACT303へと進む。
ACT303としてプロセッサ21は、検索が要求されたか否かを確認する。そしてプロセッサ31は、該当の事象を確認できなければNOと判定し、ACT304へと進む。
ACT304としてプロセッサ21は、数量変更が要求されたか否かを確認する。そしてプロセッサ31は、該当の事象を確認できなければNOと判定し、ACT305へと進む。
ACT305としてプロセッサ21は、買上商品の削除が要求されたか否かを確認する。そしてプロセッサ31は、該当の事象を確認できなければNOと判定し、ACT306へと進む。
ACT306としてプロセッサ21は、買上商品の取消が要求されたか否かを確認する。そしてプロセッサ31は、該当の事象を確認できなければNOと判定し、ACT307へと進む。
ACT307としてプロセッサ21は、会計が要求されたか否かを確認する。そしてプロセッサ31は、該当の事象を確認できなければNOと判定し、ACT302へと戻る。
かくしてプロセッサ31はACT302~ACT307としては、登録、検索、数量変更、削除、取消及び会計のいずれかが要求されるのを待ち受ける。
【0080】
プロセッサ21は、前述のように登録の要求がモバイルコントローラ3から転送されると、ACT302にてYESと判定し、ACT308へと進む。
ACT308としてプロセッサ21は、モバイルコントローラ3から転送された要求データに含まれたバーコードデータに基づく買上商品の登録を試みる。つまりプロセッサ21は例えば、上記の取引コードがフィールドFAAにセットされているデータレコードREBの末尾に新たなフィールドを追加し、新たな商品データを追加する。プロセッサ21は例えば、ここで追加する新たな商品データには、上記のバーコードデータが表す商品コードと、その商品コードで識別される商品の商品名及び価格と、数量「1」とを含め、予約フラグは予約による買上商品(以下、予約商品と称する)であることを表さない状態とする。なおプロセッサ21は例えば、上記の取引コードがフィールドFAAにセットされているデータレコードREBに、上記のバーコードデータが表す商品コードを含んだ商品データが既に含まれているならば、その商品データに含まれる数量を1つ増加する。ただし、何らかの事情により、バーコードデータが表す商品コードが商品データベースに登録されていない場合がある。また、商品には、商品コードを表すのとは別のバーコードが表示されている場合もある。そして、これらの場合にプロセッサ21は、買上商品の登録を行えず、エラーとする。
以上のようにプロセッサ21は、バーコードデータに基づいて商品を判定し、その商品を買上商品として登録する。そしてこのような登録により生成されたデータレコードREBは、買上商品のリストを表す。かくして仮想POSアプリAPBに基づく情報処理をプロセッサ21が実行することによって、プロセッサ21を中枢部分とするコンピュータは判定手段及び作成手段として機能する。
【0081】
ACT309としてプロセッサ21は、上記の登録のための処理の結果を表した結果データを、モバイルコントローラ3に送信する。プロセッサ21は、買上商品の登録が正しく行えた場合には、正規登録の通知であることを識別するための識別データと、登録した商品の商品コード、商品名及び価格を結果データに含める。またプロセッサ21は、エラーとした場合には、エラーの通知であることを識別するための識別データと、登録要求で送られてきたバーコードデータとを結果データに含める。そしてプロセッサ21はこののち、ACT302~ACT307の待受状態に戻る。
【0082】
モバイルコントローラ3のプロセッサ31は、図15中のACT211にて登録要求を転送したのちには、ACT212へと進む。
ACT212としてプロセッサ31は、上記のようにして仮想POSサーバ2から送信される結果データを取得する。プロセッサ31は、取得した結果データをメインメモリ32又は補助記憶ユニット33に保存する。
【0083】
ACT213としてプロセッサ31は、上記の結果データに基づいて登録データベースDBCBを更新する。この登録データベースDBCBの更新は、例えば以下のように行われる。
第1のケース:正規登録の通知であり、処理対象となっている取引が関連付けられたデータレコードRECに、通知された商品コードを含んだ登録データが含まれていない場合。
このケースにてプロセッサ31は、処理対象となっている取引が関連付けられたデータレコードRECに既に存在する最後のフィールドの次に新たなフィールドを追加し、当該フィールドに新たな登録データを追加する。プロセッサ31は、新たな登録データには、通知された商品コードと、エラーではないことを表す“0”としたエラーフラグと、通知された商品名及び価格と、“1”とした数量と、予約ではないことを表す“0”とした予約フラグと、取り消されていないことを表す“0”とした取消フラグとを含める。かくしてこのケースで追加される登録データは、図7の右上側に示されるような構造となる。
【0084】
第2のケース:正規登録の通知であり、処理対象となっている取引が関連付けられたデータレコードRECに、通知された商品コードを含んだ登録データが含まれているものの、当該登録データの取消フラグが取り消されていることを表す“1”となっている場合。
このケースにおいてプロセッサ31は、上記の第1のケースの場合と同様に処理する。
【0085】
第3のケース:正規登録の通知であり、処理対象となっている取引が関連付けられたデータレコードRECに、通知された商品コードを含んだ登録データが含まれており、当該登録データの取消フラグが“0”となっている場合。
このケースにおいてプロセッサ31は、通知された商品コードを含み、取消フラグが“0”となっている登録データに含まれる数量の値を、1つ大きな値に書き替える。
【0086】
第4のケース:エラーの通知である場合。
このケースにおいてプロセッサ31は、処理対象となっている取引が関連付けられたデータレコードRECに既に存在する最後のフィールドの次に新たなフィールドを追加し、当該フィールドに新たな登録データを追加する。プロセッサ31は、新たな登録データには、通知されたバーコードデータと、エラーを表す“1”としたエラーフラグとを含める。かくしてこのケースで追加される登録データは、図7の右下側に示されるような構造となる。
【0087】
このようにプロセッサ31により更新されることにより登録データベースDBCBは、仮想POSサーバ2で登録済みの買上商品のリストを表すとともに、これに加えてエラーとなったバーコード読み取りを記録したものとなる。
【0088】
なおプロセッサ31は、登録要求で送られてきたバーコードデータをメインメモリ32又は補助記憶ユニット33に保存しておき、上記の第4のケースにおいては、この保存してあるバーコードデータを登録データに含めてもよい。そしてこの場合には、仮想POSサーバ2のプロセッサ21は、結果データにバーコードデータを含めなくてもよい。またプロセッサ31は、保存してあるバーコードデータから商品コードを取り出し、この商品コードに基づいて第1~第3のケースの処理を行ってもよい。また商品名及び価格は、プロセッサ31が商品コードに基づいて店舗サーバ1などから取得してもよい。
【0089】
ACT214としてプロセッサ31は、一覧画面の表示をユーザ端末200に対して指示する。プロセッサ31は例えば、一覧画面の表示指示であることを識別するための識別データを含んだ指示データを、店内通信ネットワーク7及びアクセスポイント6を介してユーザ端末200へと送信する。プロセッサ31は、処理対象となっている取引に登録データベースDBCBにて関連付けられたデータレコードRECに含まれている商品コード、商品名、価格及び数量を指示データに含める。
プロセッサ31はこののち、ACT205~ACT210の待受状態に戻る。
【0090】
なお、以降において説明するモバイルコントローラ3からユーザ端末200への各種の指示は、上記と同様に、指示の理由を識別するための識別データを含んだ指示データを店内通信ネットワーク7及びアクセスポイント6を介してモバイルコントローラ3からユーザ端末200へと送ることにより実現される。
【0091】
ユーザ端末200のプロセッサ201は、図11中のACT122にて登録を要求したのちには、ACT123へと進む。
ACT123としてプロセッサ201は、一覧画面の表示が指示されるのを待ち受ける。そしてプロセッサ201は、前述のように一覧画面の表示がモバイルコントローラ3から指示されたならばYESと判定してACT112へと戻り、再び一覧画面SCAをタッチパネル204に表示させる。このときにプロセッサ201は、一覧画面SCAを、指示データに含まれた買上商品の商品名、価格及び数量を表す画面とする。
このため、客はスキャン開始指定を繰り返し、登録しようとする商品のバーコードを順次にユーザ端末200に読み取らせることによって、商品を買上商品として登録してゆくことができる。
【0092】
図24は買上商品が登録済みである状態での一覧画面SCAの一例を示す図である。
図24に示す一覧画面SCAは、商品名が“AAA”であり、価格が120円である商品が1個、商品名が“BBB”であり、価格が98円である商品が2個、そして商品名が“CCC”であり、価格が1,024円である商品が1個、買上商品として登録済みである場合の例である。図24に示す一覧画面SCAでは、表示エリアARABには、これらの登録済みの商品に関する商品名、価格及び数量を表している。また表示エリアARAAには、総数として“4”を表すとともに、総額として“1,340”を表している。
【0093】
客は、購入しようとする商品を見つけることができない場合などにおいて、該当の商品についての案内を受けたい場合には、一覧画面におけるボタンBUADにタッチするなどの予め定められた操作によって検索の開始を指定する。
【0094】
ユーザ端末200のプロセッサ201は、このように検索の開始が指定されたならば図11中のACT114にてYESと判定し、図12中のACT124へと進む。
ACT124としてプロセッサ201は、検索画面をタッチパネル204に表示させる。
検索画面は、商品名などのような商品検索のための条件を客が指定するためのGUI画面である。
ACT125としてプロセッサ201は、検索の条件が指定されるのを待ち受ける。そしてプロセッサ201は、客が検索画面にて検索の条件を指定すると、YESと判定してACT126へと進む。
ACT126としてプロセッサ201は、モバイルコントローラ3に対して検索を要求する。プロセッサ201は、ここで送信する要求データには、指定された条件を表す条件データを含める。
【0095】
モバイルコントローラ3のプロセッサ31は、前述のようにユーザ端末200から検索が要求されたならば図15中のACT206にてYESと判定し、図16中のACT215へと進む。
ACT215としてプロセッサ31は、検索の要求を仮想POSサーバ2に転送する。プロセッサ31はこのとき、ユーザ端末200から送られてきた要求データをそのまま仮想POSサーバ2に転送してもよいし、何らかの処理による変換後の要求データを仮想POSサーバ2に送信してもよい。ただしプロセッサ31は、ユーザ端末200から送られてきた要求データに含まれた条件データは、仮想POSサーバ2へと通知する。
【0096】
仮想POSサーバ2のプロセッサ21は、前述のように検索の要求がモバイルコントローラ3から転送されると、図19中のACT303にてYESと判定し、図20中のACT310へと進む。
ACT310としてプロセッサ21は、要求データに含まれた条件データが表す条件に合致する商品を、データベース群DBAAに含まれる商品データベースから検索する。
ACT311としてプロセッサ21は、結果画面の表示をモバイルコントローラ3に対して指示する。プロセッサ21は例えば、結果画面の表示指示であることを識別するための識別データを含んだ指示データを、店内通信ネットワーク7及びアクセスポイント6を介してユーザ端末200へと送信する。プロセッサ21は、ACT310での検索の結果を表した結果画面を生成し、この結果画面を表す画面データを指示データに含める。なお結果画面の内容は、例えば仮想POSアプリAPBの作成者又は仮想POSサーバ2の管理者などにより適宜に定められてよい。結果画面は、例えば、検索により見つかった商品の一覧を表す画面とすることが想定される。
【0097】
モバイルコントローラ3のプロセッサ31は、図16中のACT215にて検索要求を転送したのちには、ACT216へと進む。
ACT216としてプロセッサ31は、画面表示が要求されたか否かを確認する。そしてプロセッサ31は、該当の事象を確認できないならばNOと判定し、ACT217へと進む。
ACT217としてプロセッサ31は、案内が要求されたか否かを確認する。そしてプロセッサ31は、該当の事象を確認できないならばNOと判定し、ACT218へと進む。
ACT218としてプロセッサ31は、検索の終了が通知されたか否かを確認する。そしてプロセッサ31は、該当の事象を確認できないならばNOと判定し、ACT219へと進む。
ACT219としてプロセッサ31は、予約登録が要求されたか否かを確認する。そしてプロセッサ31は、該当の事象を確認できないならばNOと判定し、ACT216へと戻る。
かくしてプロセッサ31はACT216~ACT219としては、画面表示の指示、検索終了の通知、あるいは予約登録のいずれかがなされるのを待ち受ける。そしてプロセッサ31は、前述のように結果画面の表示が要求されたならばACT216にてYESと判定し、ACT220へと進む。
【0098】
ACT220としてプロセッサ31は、結果画面の表示指示を、指示データに含まれている取引コードで識別される取引のために使用されているユーザ端末200に対して転送する。プロセッサ31は例えば、指示データに含まれている取引コードが含まれるデータレコードを取引管理データベースDBCAから見つけ出し、当該データレコードに含まれる端末コードで識別されるユーザ端末200に、指示データを転送する。プロセッサ31はこのとき、仮想POSサーバ2から送られてきた指示データをそのままユーザ端末200に転送してもよいし、何らかの処理による変換後の指示データをユーザ端末200に送信してもよい。ただしプロセッサ31は、仮想POSサーバ2から送られてきた指示データに含まれた画面データは、ユーザ端末200に送る。そしてプロセッサ31はこののち、ACT216~ACT219の待受状態に戻る。
【0099】
ユーザ端末200にてプロセッサ201は、図12中のACT126として検索を要求したのちには、ACT127へと進む。
ACT127としてプロセッサ201は、結果画面の表示指示を待ち受ける。そしてプロセッサ201は、上述のようにモバイルコントローラ3から結果画面の表示指示が転送されたならばYESと判定し、ACT128へと進む。
ACT128としてプロセッサ201は、指示データに含まれた画面データが表す結果画面をタッチパネル204に表示させる。
ACT129としてプロセッサ201は、商品の指定がなされるのを待ち受ける。
【0100】
客は、タッチパネル204に表示された結果画面に表されている商品の一覧に所望の商品が含まれるならば、例えばタッチパネル204での予め定められた操作により、当該商品を指定する。そしてプロセッサ201は、このように商品が指定されたならば、ACT129にてYESと判定し、ACT130へと進む。
ACT130としてプロセッサ201は、指定された商品に関する案内をモバイルコントローラ3に対して要求する。プロセッサ201は、ここで送信する要求データには、指定された商品の商品コードを含める。
【0101】
モバイルコントローラ3のプロセッサ31は、前述のようにユーザ端末200から案内が要求されたならば図16中のACT217にてYESと判定し、ACT221へと進む。
ACT221としてプロセッサ31は、案内の要求を仮想POSサーバ2に転送する。つまりプロセッサ31は例えば、案内の要求のためにユーザ端末200から送られた要求データを仮想POSサーバ2に転送する。そしてプロセッサ31はこののち、ACT216~ACT219の待受状態に戻る。
【0102】
仮想POSサーバ2のプロセッサ21は、図20中のACT311として結果画面の表示を指示し終えたならば、ACT312へと進む。
ACT312としてプロセッサ21は、案内が要求されるのを待ち受ける。そしてプロセッサ21は、上記のように案内の要求がモバイルコントローラ3から転送されたならばYESと判定し、ACT313へと進む。
ACT313としてプロセッサ21は、案内を要求するための要求データに含まれた商品コードで識別される商品の在庫が有るか否かを確認する。プロセッサ21は例えば、上記の商品コードに関連付けて在庫データベースDBABに記述された在庫情報を店舗サーバ1から取得して、この在庫情報に基づいて在庫の有無を判定する。そしてプロセッサ21は、該当商品の在庫が有るならばYESと判定し、ACT314へと進む。
ACT314としてプロセッサ21は、案内画面の表示をモバイルコントローラ3に対して指示する。プロセッサ21は例えば、案内画面の表示指示であることを識別するための識別データを含んだ指示データを、店内通信ネットワーク7及びアクセスポイント6を介してユーザ端末200へと送信する。プロセッサ21は、案内の対象として指定されている商品の陳列場所を客に知らせる画面として案内画面を生成し、この案内画面を表す画面データを指示データに含める。なお案内画面の内容は、例えば仮想POSアプリAPBの作成者又は仮想POSサーバ2の管理者などにより適宜に定められてよい。案内画面は、例えば、陳列場所を表した店舗内マップを表す画面とすることが想定される。
【0103】
一方でプロセッサ21は、該当商品の在庫が無いならばACT313にてNOと判定し、ACT316へと進む。
ACT316としてプロセッサ21は、欠品画面の表示をモバイルコントローラ3に対して指示する。プロセッサ21は例えば、欠品画面の表示指示であることを識別するための識別データを含んだ指示データを、店内通信ネットワーク7を介してモバイルコントローラ3へと送信する。プロセッサ21は、案内の対象として指定されている商品が欠品中であることを客に知らせる画面として欠品画面を生成し、この欠品画面を表す画面データを指示データに含める。なお欠品画面の内容は、例えば仮想POSアプリAPBの作成者又は仮想POSサーバ2の管理者などにより適宜に定められてよい。
【0104】
モバイルコントローラ3のプロセッサ31は、前述のように案内画面又は欠品画面の表示が要求されたならば図16中のACT216にてYESと判定し、ACT220へと進む。
ACT220としてプロセッサ31は、案内画面又は欠品画面の表示指示を、指示データに含まれている取引コードで識別される取引のために使用されているユーザ端末200に対して転送する。そしてプロセッサ31はこののち、ACT216~ACT219の待受状態に戻る。
【0105】
ユーザ端末200にてプロセッサ201は、図12中のACT130にて案内を要求したのちには、ACT131へと進む。
ACT131としてプロセッサ201は、案内画面の表示が指示されたか否かを確認する。そしてプロセッサ201は、該当の事象を確認できないならばNOと判定し、ACT132へと進む。
ACT132としてプロセッサ201は、欠品画面の表示が指示されたか否かを確認する。そしてプロセッサ201は、該当の事象を確認できないならばNOと判定し、ACT131へと戻る。
かくしてプロセッサ201は、ACT131及びACT132としては、案内画面又は欠品画面の表示が指示されるのを待ち受ける。
【0106】
プロセッサ201は、前述のように案内画面の表示を指示する指示データがモバイルコントローラ3から転送されたならば、ACT131にてYESと判定し、ACT133へと進む。
ACT133としてプロセッサ201は、指示データに含まれた画面データが表す案内画面をタッチパネル204に表示させる。
ACT134としてプロセッサ201は、終了指示を待ち受ける。このときにプロセッサ201は、案内画面をタッチパネル204に表示させたままとする。
【0107】
一方でプロセッサ201は、前述のように欠品画面の表示を指示する指示データがモバイルコントローラ3から転送されたならば、ACT132にてYESと判定し、ACT135へと進む。
ACT135としてプロセッサ201は、指示データに含まれた画面データが表す欠品画面をタッチパネル204に表示させる。
【0108】
図25はユーザ端末200が表示する欠品画面SCCの一例を示す図である。
欠品画面SCCは、文字列CSCA,CSCB,CSCC及びボタンBUCA,BUCBを含む。文字列CSCAは、案内の対象として指定されている商品が欠品中であることを表す文字メッセージを表す。文字列CSCBは、案内の対象として指定されている商品の名称を表す。文字列CSCCは、案内の対象として指定されている商品の単価を表す。ボタンBUCAは、指定中の商品を予約登録することを客が指定するためのソフトキーである。ボタンBUCBは、検索機能による商品の確認作業を終了することを客が指定するためのソフトキーである。
なお、図25に示す欠品画面SCCは、単価が「360円」である、「DDD」なる名称の商品についての案内が要求されている場合の例である。
【0109】
ACT136としてプロセッサ201は、終了指示がなされたか否かを確認する。そしてプロセッサ201は、該当の事象を確認できないならばNOと判定し、ACT137へと進む。
ACT137としてプロセッサ201は、予約指示がなされたか否かを確認する。そしてプロセッサ201は、該当の事象を確認できないならばNOと判定し、ACT136へと戻る。
かくしてプロセッサ201は、ACT136及びACT137としては、終了指示又は予約指示を待ち受ける。プロセッサ201は、この待受状態においては、欠品画面をタッチパネル204に表示させたままとする。
【0110】
客は、タッチパネル204に表示された案内画面を確認し、所望とする商品の陳列場所等を知ることができる。そして客は、案内画面の用が済んだならば、例えば案内画面に設けられたボタンへのタッチなどの予め定められた操作により終了を指示する。この場合にプロセッサ201は、ACT134にてYESと判定し、ACT138へと進む。
また客は、タッチパネル204に表示された欠品画面を確認し、所望とする商品が欠品中であることを知ることができる。そして客は、欠品画面で欠品中であることが通知されている商品を購入しないことを決めたならば、例えばボタンBUCBへのタッチなどの予め定められた操作により終了を指示する。この場合にプロセッサ201は、ACT136にてYESと判定し、ACT138へと進む。
ACT138としてプロセッサ201は、モバイルコントローラ3に対して終了を通知する。プロセッサ201は例えば、終了通知のための通知データを、アクセスポイント6及び店内通信ネットワーク7を介してモバイルコントローラ3へと送信する。プロセッサ31は、終了の通知であることを識別するための識別データを通知データに含める。
【0111】
また客は、欠品画面で欠品中であることが通知されている商品を予約購入することを決めたならば、例えばボタンBUCAへのタッチなどの予め定められた操作により予約を指示する。この場合にプロセッサ201は、ACT137にてYESと判定し、ACT139へと進む。
ACT139としてプロセッサ201は、モバイルコントローラ3に対して予約登録を要求する。プロセッサ201は例えば、予約登録の要求である事を識別するための識別データを含めた要求データをモバイルコントローラ3に対して送信する。
【0112】
モバイルコントローラ3のプロセッサ31は、前述のようにユーザ端末200から終了通知がなされたならば図16中のACT218にてYESと判定し、ACT222へと進む。
ACT222としてプロセッサ31は、終了通知を仮想POSサーバ2に転送する。つまりプロセッサ31は例えば、終了通知のためにユーザ端末200から送られた通知データを仮想POSサーバ2に転送する。
【0113】
プロセッサ31は、前述のようにユーザ端末200から予約登録が要求されたならば、ACT219にてYESと判定し、ACT223へと進む。
ACT223としてプロセッサ31は、ユーザ端末200の端末コードに取引管理データベースDBCAのデータレコードで関連付けられた取引コードの通知を伴って、上記の予約登録の要求のために送られた要求データを仮想POSサーバ2に転送する。
【0114】
仮想POSサーバ2のプロセッサ21は、図20中のACT314にて案内画面の表示指示を行ったのちには、ACT315へと進む。
ACT315としてプロセッサ21は、終了指示を待ち受ける。
またプロセッサ21は、ACT316にて欠品画面の表示指示を行ったのちには、ACT317へと進む。
ACT317としてプロセッサ21は、終了指示がなされたか否かを確認する。そしてプロセッサ21は、該当の事象を確認できないならばNOと判定し、ACT318へと進む。
ACT318としてプロセッサ21は、予約登録が要求されたか否かを確認する。そしてプロセッサ21は、該当の事象を確認できないならばNOと判定し、ACT317へと戻る。
かくしてプロセッサ21は、ACT317及びACT318としては、終了指示又は予約登録の要求を待ち受ける。
【0115】
プロセッサ21は、前述のようにモバイルコントローラ3から終了通知が転送されたならば、ACT315又はACT317にてYESと判定し、そのまま図19中のACT302~ACT307の待受状態に戻る。
一方でプロセッサ21は、前述のようにモバイルコントローラ3から予約登録の要求が転送されたならば、ACT318にてYESと判定し、ACT319へと進む。
ACT319としてプロセッサ21は、予約商品の登録を行う。プロセッサ21は例えば、前述の予約登録の要求のための要求データとともに通知された取引コードがフィールドFAAにセットされているデータレコードREBが取引データベースDBBAに含まれていないならば、上記の取引コードをフィールドFAAにセットするとともに、新たな商品データをフィールドFACにセットした新たなデータレコードREBを取引データベースに追加する。またプロセッサ21は例えば、上記の取引コードがフィールドFAAにセットされているデータレコードREBが取引データベースDBBAに既に含まれるならば、当該データレコードREBの末尾に新たなフィールドを追加し、新たな商品データを追加する。プロセッサ21は例えば、ここで追加する新たな商品データには、案内の要求のための要求データに含まれた商品コードと、その商品コードで識別される商品の商品名及び価格と、数量「1」とを含め、予約フラグは予約商品であることを表す状態とする。
【0116】
以上のようにプロセッサ21は、客の指定に応じて判定した商品を予約商品として決定し、その予約商品を買上商品の1つとして登録する。かくして仮想POSアプリAPBに基づく情報処理をプロセッサ21が実行することによって、プロセッサ21を中枢部分とするコンピュータは判定手段、作成手段及び決定手段として機能する。またプロセッサ21による作成手段としての機能は、客により案内対象として指定された商品が欠品となっている場合には、ユーザ端末200で予約が指定された場合に限り、上記の商品を予約商品としてデータレコードREBが表すリストに含める。
ACT320としてプロセッサ21は、上記の予約登録のための処理の結果を表した結果データを、モバイルコントローラ3に送信する。プロセッサ21は、正規登録の通知であることを識別するための識別データと、登録した商品の商品コード、商品名、価格、数量及び予約フラグを結果データに含める。そしてプロセッサ21はこののち、図19中のACT302~ACT307の待受状態に戻る。
【0117】
モバイルコントローラ3のプロセッサ31は、図16中のACT223にて予約登録の要求を転送したのちには、ACT224へと進む。
ACT224としてプロセッサ31は、上記のようにして仮想POSサーバ2から送信される結果データを取得する。プロセッサ31は、取得した結果データをメインメモリ32又は補助記憶ユニット33に保存する。
【0118】
ACT225としてプロセッサ31は、上記の結果データに基づいて登録データベースDBCBを更新する。プロセッサ31は例えば、処理対象となっている取引が関連付けられたデータレコードRECに既に存在する最後のフィールドの次に新たなフィールドを追加し、当該フィールドに新たな登録データを追加する。プロセッサ31は、新たな登録データには、結果データに含まれた商品コードと、エラーではないことを表す“0”としたエラーフラグと、結果データに含まれた商品名、価格及び数量と、予約であることを表す状態とした予約フラグと、取り消されていないことを表す“0”とした取消フラグとを含める。
【0119】
プロセッサ31は、ACT225を終えるとACT226へと進む。プロセッサ31は、ACT222にて終了通知を転送した場合も、ACT226へと進む。
ACT226としてプロセッサ31は、一覧画面の表示をユーザ端末200に対して指示する。プロセッサ31は例えば、一覧画面の表示指示であることを識別するための識別データを含んだ指示データを、店内通信ネットワーク7及びアクセスポイント6を介してユーザ端末200へと送信する。プロセッサ31は、処理対象となっている取引に登録データベースDBCBにて関連付けられたデータレコードRECに含まれている商品コード、商品名、価格及び数量を指示データに含める。そしてプロセッサ31はこののち、図15中のACT205~ACT210の待受状態に戻る。
【0120】
ユーザ端末200のプロセッサ201は、図12中のACT138にて終了通知を行ったのち、あるいはACT139にて予約登録を要求したのちには、ACT140へと進む。
ACT140としてプロセッサ201は、一覧画面の表示が指示されるのを待ち受ける。そしてプロセッサ201は例えば、前述のようにモバイルコントローラ3から一覧画面の表示が指示されると、YESと判定して図11中のACT112に戻り、再び一覧画面SCAをタッチパネル204に表示させる。
【0121】
図26は予約商品を含む買上商品が登録済みである状態での一覧画面SCAの一例を示す図である。
図26に示す一覧画面SCAは、商品名が“AAA”であり、価格が120円である商品が1個、商品名が“BBB”であり、価格が98円である商品が2個、そして商品名が“CCC”であり、価格が1,024円である商品が1個、予約商品ではない買上商品として登録済みである場合の例である。また図26に示す一覧画面SCAは、商品名が“DDD”であり、価格が360円である商品が1個、予約商品として登録済みである場合の例である。図26に示す一覧画面SCAでは、表示エリアARABには、これらの登録済みの商品に関する商品名、価格及び数量を表している。また表示エリアARAAには、総数として“5”を表すとともに、総額として“1,700”を表している。アイコンICAAは、商品名が“DDD”である商品が予約登録された商品であることを表す。
【0122】
客が一覧画面SCAにおける数量を表しているエリアにタッチすると、プロセッサ201は一覧画面SCAに重ねて数量指定のためのリストボックスを表示させる。そしてこのリストボックスが操作されると、プロセッサ201はこれを数量の指定として受ける。そしてプロセッサ201はこの場合、図11中のACT115にてYESと判定し、図13中のACT141へと進む。
ACT141としてプロセッサ201は、指定数が0であるか否かを確認する。そしてプロセッサ201は、指定数が0ではなければNOと判定し、ACT142へと進む。
【0123】
ACT142としてプロセッサ201は、モバイルコントローラ3に対して数量変更を要求する。プロセッサ201はここで送信する要求データには、数量が指定された商品を特定するための特定データと指定数を含める。特定データは、商品コードでもよいし、買上商品のリスト内で各買上商品を識別するための番号などのようにモバイルコントローラ3でのみ買上商品を特定可能なデータであってもよい。なお、特定コードとして商品コードを用いるならば、プロセッサ31は、一覧画面の表示を指示するための指示データに、各買上商品に関する商品コードを含める。
【0124】
モバイルコントローラ3のプロセッサ31は、上記のようにユーザ端末200から数量変更が要求されたならば、図15中のACT207にてYESと判定し、図17中のACT227へと進む。
ACT227としてプロセッサ31は、取引コードの通知を伴って、数量変更の要求を仮想POSサーバ2に転送する。プロセッサ31はこのとき、ユーザ端末200から送られてきた要求データに取引コードを付加して仮想POSサーバ2に転送してもよいし、何らかの処理による変換後の要求データに取引コードを付加して仮想POSサーバ2に送信してもよい。ただしプロセッサ31は、ユーザ端末200から送られてきた要求データに含まれた数量は、仮想POSサーバ2へと通知する。また要求データに含まれる特定データが商品コードではないならば、プロセッサ31は、当該特定データを商品コードに置き換える。
【0125】
仮想POSサーバ2のプロセッサ21は、数量変更の要求がモバイルコントローラ3から転送されると、図19中のACT304にてYESと判定し、ACT321へと進む。
ACT321としてプロセッサ21は、モバイルコントローラ3から送られた要求データに含まれた数量が、既存のPOS端末に備えられた入力デバイスにより入力されたものであると見做して、既存のPOS端末と同様な処理によって買上商品の数量を変更すべく取引データベースDBBAを更新する。
ACT322としてプロセッサ21は、数量を変更した商品の商品コードと、変更後の数量とを表した結果データを、モバイルコントローラ3に送信する。そしてプロセッサ21はこののち、ACT302~ACT307の待受状態に戻る。
【0126】
モバイルコントローラ3のプロセッサ31は、図17中のACT227にて数量変更の要求を転送したのちには、ACT228へと進む。
ACT228としてプロセッサ31は、上記のようにして仮想POSサーバ2から送信される結果データを取得する。プロセッサ31は、取得した結果データをメインメモリ32又は補助記憶ユニット33に保存する。
ACT229としてプロセッサ31は、上記の結果データに基づいて登録データベースDBCBを更新する。つまりプロセッサ31は、関連付けられたデータレコードRECから、通知された商品コードを含んだ登録データを見つけ出す。そしてプロセッサ31は、該当する登録データに含まれる数量を、結果データに含まれた数量に書き替える。
なおプロセッサ31は、数量変更の要求データで送られてきた特定データ及び数量をメインメモリ32又は補助記憶ユニット33に保存しておき、更新が完了した旨を表す結果データを受けたことに応じて、この保存してある特定データで特定される商品に関する登録データの数量を、保存してある数量に書き替えてもよい。そしてこの場合には、仮想POSサーバ2のプロセッサ21は、結果データに商品コード及び数量を含めなくてもよい。
【0127】
ACT230としてプロセッサ31は、一覧画面の表示をユーザ端末200に対して指示する。プロセッサ31は、上記のように更新したデータレコードRECに含まれる登録データのうちで取消フラグが“0”である登録データに含まれている商品コード、商品名、価格及び数量を指示データに含める。プロセッサ31はこののち、図15中のACT205~ACT210の待受状態に戻る。
【0128】
さて、ユーザ端末200のプロセッサ201は、数量変更のための指定数が0であったならば、図13のACT141にてYESと判定し、ACT143へと進む。
ACT143としてプロセッサ201は、削除画面をタッチパネル204に表示させる。削除画面は、数量を0個とすることが指定された商品が買上商品から削除されることを客に報知する画面である。削除画面は、削除を指定するための削除ボタンと、数量を変更せずに数量の変更を指定する前の状態に戻ることを指定するための戻りボタンとを含む。
【0129】
ACT144としてプロセッサ201は、削除が指定されたか否かを確認する。そしてプロセッサ201は、該当の事象を確認できないならばNOと判定し、ACT145へと進む。
ACT145としてプロセッサ201は、戻りが指定されたか否かを確認する。そしてプロセッサ201は、該当の事象を確認できないならばNOと判定し、ACT144へと戻る。
かくしてプロセッサ201はACT144及びACT145としては、削除又は戻りが指定されるのを待ち受ける。
【0130】
客は、削除を取り止めて、数量の変更を指定する前の状態に戻ること望むならば、削除画面において戻りボタンにタッチするなどの予め定められた操作により戻りを指定する。これに応じてプロセッサ201は、ACT145にてYESと判定し、図11中のACT112へと戻り、再び一覧画面SCAをタッチパネル204に表示させる。この場合には、買上商品の登録状態は変更されないので、プロセッサ201は、削除画面を表示する前に表示していたのと同じ状態の一覧画面SCAをタッチパネル204に再び表示させる。
【0131】
客は、削除で間違いないならば、削除画面において削除ボタンにタッチするなどの予め定められた操作により削除を指定する。これに応じてプロセッサ201は、ACT144にてYESと判定し、ACT146へと進む。
ACT146としてプロセッサ201は、モバイルコントローラ3に対して削除を要求する。プロセッサ201はここで送信する要求データには、削除が指定された商品を特定するための特定データを含める。
【0132】
モバイルコントローラ3のプロセッサ31は、上記のようにユーザ端末200から削除が要求されたならば、図15中のACT208にてYESと判定し、図17中のACT231へと進む。
ACT231としてプロセッサ31は、取引コードの通知を伴って、削除の要求を仮想POSサーバ2に転送する。プロセッサ31はこのとき、ユーザ端末200から送られてきた要求データに取引コードを付加して仮想POSサーバ2に転送してもよいし、何らかの処理による変換後の要求データに取引コードを付加して仮想POSサーバ2に送信してもよい。ただしプロセッサ31は、要求データに含まれる特定データが商品コードではないならば、プロセッサ31は、当該特定データを商品コードに置き換える。
【0133】
仮想POSサーバ2のプロセッサ21は、削除の要求がモバイルコントローラ3から転送されると、図19中のACT305にてYESと判定し、ACT323へと進む。
ACT323としてプロセッサ21は、モバイルコントローラ3から送られた要求データによる要求を、既存のPOS端末に備えられた入力デバイスにより入力された削除指示であると見做して、既存のPOS端末と同様な処理によって対象となる商品を買上商品から除外すべく取引データベースDBBAを更新する。
ACT324としてプロセッサ21は、買上商品から除外した商品の商品コードを表した結果データを、モバイルコントローラ3に送信する。そしてプロセッサ21はこののち、ACT302~ACT307の待受状態に戻る。
【0134】
モバイルコントローラ3のプロセッサ31は、図17中のACT231にて削除の要求を転送したのちには、ACT232へと進む。
ACT232としてプロセッサ31は、上記のようにして仮想POSサーバ2から送信される結果データを取得する。プロセッサ31は、取得した結果データをメインメモリ32又は補助記憶ユニット33に保存する。
【0135】
ACT233としてプロセッサ31は、上記の結果データに基づいて登録データベースDBCBを更新する。つまりプロセッサ31は、取引が関連付けられたデータレコードRECから、通知された商品コードを含んだ登録データを見つけ出す。そしてプロセッサ31は、該当する登録データに含まれる取消フラグを“1”に変更する。
【0136】
なおプロセッサ31は、削除の要求データで送られてきた特定データをメインメモリ32又は補助記憶ユニット33に保存しておき、削除が完了した旨を表す結果データを受けたことに応じて、この保存してある特定データで特定される商品に関する登録データの取消フラグを変更してもよい。そしてこの場合には、仮想POSサーバ2のプロセッサ21は、結果データに商品コードを含めなくてもよい。
【0137】
ACT234としてプロセッサ31は、一覧画面の表示をユーザ端末200に対して指示する。プロセッサ31は、上記のように更新したデータレコードRECに含まれる登録データのうちで取消フラグが“0”である登録データに含まれている商品コード、商品名、価格及び数量を指示データに含める。プロセッサ31はこののち、図15中のACT205~ACT210の待受状態に戻る。
【0138】
さて、ユーザ端末200のプロセッサ201は、図13中のACT142にて数量変更を要求したのち、あるいはACT146にて削除を要求したのちには、ACT147へと進む。
ACT147としてプロセッサ201は、一覧画面の表示が指示されるのを待ち受ける。そしてプロセッサ201は、数量変更の要求に応じて、あるいは削除の要求に応じて、前述のように一覧画面の表示がモバイルコントローラ3から指示されたならばYESと判定し、図11中のACT112へと戻り、再び一覧画面SCAをタッチパネル204に表示させる。このときにプロセッサ201は、一覧画面SCAを、指示データに含まれた買上商品の商品名、価格及び数量を表す画面とする。この場合には、買上商品の登録状態が変更されるので、プロセッサ201は、数量変更又は削除が指定されるときに表示していたのとは異なる状態の一覧画面SCAをタッチパネル204に表示させることになる。
【0139】
客は、既に登録した買上商品の全てをキャンセルし、買い物を中止したい場合には、一覧画面SCAにおいてボタンBUAAにタッチするなどの予め定められた操作により中止を指定する。これに応じてプロセッサ201は、図11中のACT116にてYESと判定し、図13中のACT148へと進む。
ACT148としてプロセッサ201は、取消画面をタッチパネル204に表示させる。取消画面は、既に登録した買上商品の全てが取り消されることを客に報知する画面である。取消画面は、取消実行を指定するための実行ボタンと、数量を変更せずに数量の変更を指定する前の状態に戻ることを指定するための戻りボタンとを含む。
【0140】
ACT149としてプロセッサ201は、取消実行が指定されたか否かを確認する。そしてプロセッサ201は、該当の事象を確認できないならばNOと判定し、ACT150へと進む。
ACT150としてプロセッサ201は、戻りが指定されたか否かを確認する。そしてプロセッサ201は、該当の事象を確認できないならばNOと判定し、ACT149へと戻る。
かくしてプロセッサ201はACT149及びACT150としては、取消実行又は戻りが指定されるのを待ち受ける。
【0141】
客は、そのまま買い物を続けるならば、取消画面において戻りボタンにタッチするなどの予め定められた操作により戻りを指定する。これに応じてプロセッサ201は、ACT150にてYESと判定し、図11中のACT112へと戻り、再び一覧画面SCAをタッチパネル204に表示させる。この場合には、買上商品の登録状態は変更されないので、プロセッサ201は、取消画面を表示する前に表示していたのと同じ状態の一覧画面SCAをタッチパネル204に再び表示させる。
【0142】
客は、買い物を取り止めるのであれば、取消画面において実行ボタンにタッチするなどの予め定められた操作により取消実行を指定する。これに応じてプロセッサ201は、ACT149にてYESと判定し、ACT151へと進む。
ACT151としてプロセッサ201は、モバイルコントローラ3に対して取消を要求する。
【0143】
モバイルコントローラ3のプロセッサ31は、上記のようにユーザ端末200から取消が要求されたならば、図15中のACT209にてYESと判定し、図17中のACT235へと進む。
ACT235としてプロセッサ31は、取引コードの通知を伴って、取消の要求を仮想POSサーバ2に転送する。プロセッサ31はこのとき、ユーザ端末200から送られてきた要求データに取引コードを付加して仮想POSサーバ2に転送してもよいし、何らかの処理による変換後の要求データに取引コードを付加して仮想POSサーバ2に送信してもよい。
【0144】
仮想POSサーバ2のプロセッサ21は、取消の要求がモバイルコントローラ3から転送されると、図19中のACT306にてYESと判定し、ACT325へと進む。
ACT325としてプロセッサ21は、モバイルコントローラ3から送られた要求データによる要求を、既存のPOS端末に備えられた入力デバイスにより入力された取消指示であると見做して、既存のPOS端末と同様な処理によって、通知された取引コードに関連付けて登録済みの商品の全てを買上商品から除外すべく取引データベースDBBAを更新する。
ACT326としてプロセッサ21は、取消が完了したことを表した結果データを、モバイルコントローラ3に送信する。そしてプロセッサ21はこののち、ACT302~ACT307の待受状態に戻る。
【0145】
モバイルコントローラ3のプロセッサ31は、図17中のACT235にて削除の要求を転送したのちには、ACT236へと進む。
ACT236としてプロセッサ31は、上記のようにして仮想POSサーバから送信される結果データを取得する。プロセッサ31は、取得した結果データをメインメモリ32又は補助記憶ユニット33に保存する。
【0146】
ACT237としてプロセッサ31は、上記の結果データに基づいて登録データベースDBCBを更新する。つまりプロセッサ31は、処理対象となっている取引が関連付けられたデータレコードRECに含まれる登録データの全てに関して、“0”となっている取消フラグを“1”に変更する。
ACT238としてプロセッサ31は、ユーザ端末200に対して取消を通知する。そしてプロセッサ31はこののち、図15中のACT205~ACT210の待受状態に戻る。
【0147】
さて、ユーザ端末200のプロセッサ201は、図13中のACT151にて取消を要求したのちには、ACT152へと進む。
ACT152としてプロセッサ201は、モバイルコントローラ3から取消が通知されるのを待ち受ける。そしてプロセッサ201は、前述のように取消が通知されたならばYESと判定し、図10中のACT101へと戻る。
【0148】
客は、購入を希望する商品の全てを買上商品又は予約商品として登録し終えたならば、決済に進む。このときに客は、一覧画面SCAにおけるボタンBUACにタッチするなどの予め定められた操作によって会計開始を指定する。これに応じてプロセッサ201は、図11中のACT117にてYESと判定し、図14中のACT153へと進む。
ACT153としてプロセッサ201は、モバイルコントローラ3に対して会計を要求する。
【0149】
モバイルコントローラ3のプロセッサ31は、上記のようにユーザ端末200から会計が要求されたならば、図15中のACT210にてYESと判定し、図18中のACT239へと進む。
ACT239としてプロセッサ31は、会計画面の表示をユーザ端末200に指示する。
【0150】
さてユーザ端末200のプロセッサ201は、図14中のACT153にて会計を要求したのちには、ACT154へと進む。
ACT154としてプロセッサ201は、会計画面の表示が指示されるのを待ち受ける。そしてプロセッサ201は、上述のように会計画面の表示が指示されたことを確認したならばACT154にてYESと判定し、ACT155へと進む。
【0151】
ACT155としてプロセッサ201は、会計画面をタッチパネル204に表示させる。会計画面は、代金の決済のための操作をユーザ端末200及び会計機5のいずれで行うかを客が選択するための画面である。
客は、代金の決済のための操作をユーザ端末200で行いたい場合には、予め定められた操作によりユーザ端末200を指定する。また客は、代金の決済のための操作を会計機5で行いたい場合には、予め定められた操作により会計機5を指定する。
【0152】
ACT156としてプロセッサ201は、ユーザ端末200が指定されたか否かを確認する。そしてプロセッサ201は、当該の事象を確認できないならばNOと判定し、ACT157へと進む。
ACT157としてプロセッサ201は、会計機5が指定されたか否かを確認する。そしてプロセッサ201は、当該の事象を確認できないならばNOと判定し、ACT156へと戻る。
かくしてプロセッサ201はACT156及びACT157としては、ユーザ端末200又は会計機5が指定されるのを待ち受ける。そしてプロセッサ201は、上述のようにユーザ端末200が指定されたならば、ACT156にてYESと判定し、ACT158へと進む。
【0153】
ACT158としてプロセッサ201は、モバイルコントローラ3に対して会計を要求する。なおプロセッサ201は、会計を要求するための要求データには、決済のために必要な、クレジット番号又はオンライン決済サービス用の利用者コードなどのような決済データを含める。
【0154】
またプロセッサ201は、上述のように会計機5が指定されたならば、ACT157にてYESと判定し、ACT159へと進む。
ACT159としてプロセッサ201は、会計バーコード画面をタッチパネル204に表示させる。会計バーコード画面は、会計機5が仮想POSサーバ2から取引の内容に関するデータ(以下、会計データと称する)を取得するために必要となるデータを表した会計バーコードを表した画面である。なお、詳細な処理の図示は省略しているが、プロセッサ201は、モバイルコントローラ3を介して仮想POSサーバ2から会計バーコードを取得して、当該会計バーコードを会計バーコード画面に表す。
【0155】
客は、他の客により使用されていない会計機5が備えるスキャナに、会計バーコードを読み取らせる。これに応じて会計機5は、会計バーコードが表すデータに従って、仮想POSサーバ2から会計データを取得し、この会計データに基づいて定まる決済額を決済するための処理を実行する。そして会計機5は、決済が完了したならば、その旨を仮想POSサーバ2に通知する。仮想POSサーバ2のプロセッサ21は、会計機5から決済完了が通知されたならば、モバイルコントローラ3へと決済完了を通知する。なお、会計機5での決済完了は、会計機5からモバイルコントローラ3へと直接通知されてもよい。
【0156】
モバイルコントローラ3のプロセッサ31は、図18中のACT239にて会計画面の表示を指示したのちには、ACT240へと進む。
ACT240としてプロセッサ31は、会計が要求されたか否かを確認する。そしてプロセッサ31は、当該の事象を確認できないならばNOと判定し、ACT241へと進む。
ACT241としてプロセッサ31は、決済完了が通知されたか否かを確認する。そしてプロセッサ31は、当該の事象を確認できないならばNOと判定し、ACT240へと戻る。
かくしてプロセッサ31はACT240及びACT241としては、会計要求又は決済完了通知を待ち受ける。そしてプロセッサ31は、前述のようにユーザ端末200から会計が要求されたならばACT240にてYESと判定し、ACT242へと進む。
【0157】
ACT242としてプロセッサ31は、処理対象となっている取引の取引コードの通知を伴って、会計の要求を仮想POSサーバ2に転送する。プロセッサ31はこのとき、ユーザ端末200から送られてきた要求データをそのまま仮想POSサーバ2に転送してもよいし、何らかの処理による変換後の要求データを仮想POSサーバ2に送信してもよい。
【0158】
仮想POSサーバ2のプロセッサ21は、会計の要求がモバイルコントローラ3から転送されると、図19中のACT307にてYESと判定し、図21中のACT327へと進む。
ACT327としてプロセッサ21は、モバイルコントローラ3から送られた要求データによる要求を、既存のPOS端末に備えられた入力デバイスにより入力された会計指示であると見做して、既存のPOS端末と同様な処理によって、通知された取引コードで識別される取引に関する代金を算出し、これを決済データに基づいて決済するための処理を行う。つまりプロセッサ21は、通知された取引コードがフィールドFAAにセットされているデータレコードREBを取引データベースDBBAから探し出し、該当のデータレコードREBに含まれる商品データに基づいて代金を算出する。このときにプロセッサ21は、各商品データに含まれる予約フラグの状態に関わらずに全ての商品データを考慮する。つまりプロセッサ21は、予約商品として登録されている商品についても決済の対象とする。なお決済のための処理は例えば、図示しない決済サーバへの決済要求を含む。
かくして仮想POSアプリAPBに基づく情報処理をプロセッサ21が実行することによって、プロセッサ21を中枢部分とするコンピュータは決済手段として機能する。
【0159】
ACT328としてプロセッサ21は、上記のように決済を終えた取引の対象となっている商品に予約商品が有るか否かを確認する。プロセッサ21は例えば、ACT327で探し出したデータレコードREBに含まれる商品データのいずれかの予約フラグが予約であることを表すならば予約商品が有るとしてYESと判定し、ACT329へと進む。
ACT329としてプロセッサ21は、新たな予約を店舗サーバ1に通知する。
プロセッサ21は例えば、予約通知のための通知データを、店内通信ネットワーク7を介して店舗サーバ1へと送信する。プロセッサ21は、予約通知であることを識別するための識別データと、ACT327で探し出したデータレコードREBのフィールドFABにセットされている利用者コードと、新たに登録した予約商品についての商品コード及び数量の組とを通知データに含める。
【0160】
さて、店舗サーバ1のプロセッサ11は、店舗管理アプリAPAに基づき、店舗での商品の在庫状況を管理するための情報処理(以下、在庫管理処理と称する)を実行する。
図27はプロセッサ11によるに在庫管理処理のフローチャートである。
ACT401としてプロセッサ11は、予約通知がなされたか否かを確認する。そしてプロセッサ11は、該当の事象を確認できないならばNOと判定し、ACT402へと進む。
ACT402としてプロセッサ11は、販売データが受信されたか否かを確認する。そしてプロセッサ11は、該当の事象を確認できないならばNOと判定し、ACT403へと進む。
ACT403としてプロセッサ11は、入荷指示がなされたか否かを確認する。そしてプロセッサ11は、該当の事象を確認できないならばNOと判定し、ACT401へと戻る。
かくしてプロセッサ11はACT401~ACT403としては、予約通知がなされるか、販売データが受信されるか、あるいは入荷指示がなされるのを待ち受ける。
【0161】
プロセッサ11は、前述のように仮想POSサーバ2から予約通知のために送信された通知データが通信インタフェース14により受信されると、ACT401にてYESと判定し、ACT404へと進む。
ACT404としてプロセッサ11は、上記のように決済を終えた取引の対象となっている予約商品に関する新たなデータレコードREAを追加するべく予約データベースDBACを更新する。プロセッサ11は例えば、新たなデータレコードREAのフィールドFBAには、他のデータレコードREAのフィールドFBAにセットされているのとは異なる予約コードをセットする。プロセッサ11は例えば、新たなデータレコードREAのフィールドFBBには、通知データに含まれている利用者コードをセットする。プロセッサ11は例えば、新たなデータレコードREAのフィールドFBC,FBDには、通知データに含まれる商品コードと数量の組の各々をセットする。プロセッサ11は例えば、新たなデータレコードREAのフィールドFBEには、例えば別処理として実現されるソフトウェアタイマにより計時している日時をセットする。なおプロセッサ11は例えば、新たなデータレコードREAのフィールドFBEには、仮想POSサーバ2に設けられたハードウェアタイマが計時している日時をセットするのでもよい。プロセッサ11は例えば、新たなデータレコードREAのフィールドFBFには、入荷通知が済んでいないことを表す状態の通知フラグをセットする。
プロセッサ11はこののち、ACT401~ACT403の待受状態に戻る。
プロセッサ11は、以上のように予約データベースDBACにデータレコードREAを追加することにより、予約商品を客に関連付けて管理する。かくして店舗管理アプリAPAに基づく情報処理をプロセッサ11が実行することによって、プロセッサ11を中枢部分とするコンピュータは管理手段として機能する。
【0162】
仮想POSサーバ2のプロセッサ21は、図21中のACT329を終えるとACT330へと進む。なおプロセッサ21は、ACT327で探し出したデータレコードREBに含まれる全ての商品データに含まれる予約フラグがいずれも予約でないことを表すならば、予約商品が無いとしてACT328にてNOと判定する。そしてプロセッサ21はこの場合は、ACT329をパスしてACT330へと進む。
ACT330としてプロセッサ21は、決済が完了したことを表した結果データを、モバイルコントローラ3に送信する。
ACT331としてプロセッサ21は、販売データを店舗サーバ1に送信する。販売データは、上記のように決済が完了した取引にて客に引き渡される商品を店舗サーバ1にて把握可能なデータとする。つまり販売データは、予約商品以外の買上商品のそれぞれに関して、商品コード及び数量の組を含む。販売データは、店舗サーバ1が店舗で行われる取引を総合的に管理するために収集する、いわゆるトランと呼ばれるデータと共通で合っても良いし、別のデータであってもよい。
そしてプロセッサ21はこののち、取引処理を終了する。
【0163】
モバイルコントローラ3のプロセッサ31は、図18中のACT242にて会計の要求を転送したのちには、ACT243へと進む。
ACT243としてプロセッサ31は、決済完了が仮想POSサーバ2から通知されるのを待ち受ける。そしてプロセッサ31は、上述のように仮想POSサーバ2が送信した、決済が完了したことを表した結果データが通信インタフェース34により受信されたならばYESと判定し、ACT244へと進む。またプロセッサ31は、前述のように会計機5での決済完了が通知されたならば、ACT241にてYESと判定し、ACT244へと進む。
ACT244としてプロセッサ31は、ユーザ端末200に対して決済完了を通知する。
【0164】
ユーザ端末200のプロセッサ201は、図14中のACT158にてモバイルコントローラ3へと会計を要求したのち、あるいはACT159にて会計バーコード画面を表示したのちには、ACT160へと進む。
ACT160としてプロセッサ201は、決済完了が通知されるのを待ち受ける。そしてプロセッサ201は、上述のようにモバイルコントローラ3から決済完了が通知されたならばYESと判定し、ACT161へと進む。
【0165】
ACT161としてプロセッサ201は、完了画面をタッチパネル204に表示させる。完了画面は、決済が完了したことを客に報知するための画面である。
客は、完了画面を確認したならば、完了画面に表されたボタンにタッチするなどの予め定められた操作によって、確認したことを宣言する。これに応じてプロセッサ201はACT162へと進む。なおプロセッサ201は、完了画面を表示した状態での経過時間が予め定めた時間に到達した場合に、ACT162へと進んでもよい。
【0166】
ACT162としてプロセッサ201は、チェックアウト用のスキャン画面をタッチパネル204に表示させる。チェックアウト用のスキャン画面は、チェックアウト用の2次元コードTCOを読み取るための画面である。プロセッサ201は例えば、カメラ205を起動し、これによりカメラ205で得られた画像に、2次元コードTCOを読み取るように客に促す文字メッセージと、2次元コードTCOを翳すべき位置の目安を示すラインとを重ねてスキャン画面を生成する。
【0167】
客は、チェックアウト用のスキャン画面がタッチパネル204に表示されたならば、店舗の出口付近に掲示されている2次元コードTCOがスキャン画面に映り込むようにカメラ205を2次元コードTCOに向ける。
【0168】
ACT163としてプロセッサ201は、2次元コードが読み取れるのを待ち受ける。このときにプロセッサ201は、カメラ205で得られる画像を繰り返し解析し、2次元コードの読み取りを試みる。この2次元コードの読み取りは、スマホPOSアプリAPDに基づく処理として行われてもよいし、2次元コードの読み取り用の別のアプリケーションプログラムに基づく処理として行われてもよい。そしてプロセッサ201は、2次元コードが読み取れたならばYESと判定し、ACT164へと進む。
【0169】
ACT164としてプロセッサ201は、読み取った2次元コードが表すデータがチェックアウトデータであるか否かを確認する。そしてプロセッサ201は、チェックアウトデータでなければNOと判定し、ACT163へと戻る。このときにプロセッサ201は、誤った2次元コードが読み取られたことを客に通知する画面をタッチパネル204に表示させてもよい。
【0170】
プロセッサ201は、読み取った2次元コードが表すデータがチェックアウトデータであることが確認できたならば、ACT164にてYESと判定し、ACT165へと進む。
ACT165としてプロセッサ201は、モバイルコントローラ3に対して、チェックアウトを要求する。
【0171】
モバイルコントローラ3のプロセッサ31は、図18中のACT244にて決済完了を通知したのちには、ACT245へと進む。
ACT245としてプロセッサ31は、チェックアウトが要求されるのを待ち受ける。そしてプロセッサ31は、上述のようにユーザ端末200からチェックアウトが要求されたならばYESと判定し、ACT246へと進む。
【0172】
ACT246としてプロセッサ31は、チェックアウト処理を実行する。チェックアウト処理は、処理対象となっていた取引の管理のためにメインメモリ32及び補助記憶ユニット33に保存してあるデータをクリアするなどの処理である。なお仮想POSサーバ2は、決済が完了したことに応じて、該当する取引に関する処理を終了してもよいし、モバイルコントローラ3からの指示に応じて取引に関する処理を終了してもよい。そして後者の場合には、プロセッサ31はチェックアウト処理において、仮想POSサーバ2に対して上記指示をする。また、誤ったバーコードスキャンなどを含むユーザの操作の履歴を表した履歴データベースを店舗サーバ1、仮想POSサーバ2又はモバイルコントローラ3、あるいは図示されない別のサーバ等で管理する場合がある。この場合には、プロセッサ31はチェックアウト処理において、今回の取引に関する操作の履歴を反映するように履歴データベースを更新するための処理を行う。
ACT247としてプロセッサ31は、チェックアウトの完了をユーザ端末200に通知する。そしてプロセッサ31は、図15図18に示す情報処理を終了する。
【0173】
ユーザ端末200のプロセッサ201は、図14中のACT165にてチェックアウトを要求したのちには、ACT166へと進む。
ACT166としてプロセッサ201は、チェックアウト完了の通知を待ち受ける。そしてプロセッサ201は、上述のようにモバイルコントローラ3からチェックアウト完了が通知されたならばYESと判定し、ACT167へと進む。
【0174】
ACT167としてプロセッサ201は、例えば図10中のACT107にて保存したチェックインデータなどのような、今回の買い物に関して一時的に利用する各種のデータをクリアする。そしてプロセッサ201はこののち、図10中のACT101に戻る。
【0175】
前述のように、仮想POSサーバ2のプロセッサ21が図21中のACT331を実行することで送信された販売データが店内通信ネットワーク7により店舗サーバ1へと伝送されると、当該販売データを通信インタフェース14が受信する。そしてプロセッサ11は、これに応じてACT402にてYESと判定し、ACT405へと進む。
ACT405としてプロセッサ11は、販売による在庫の減少を反映するように在庫データベースDBABを更新する。プロセッサ11は例えば、販売データに示される商品コードに関連付けて在庫データベースDBABに記述されている在庫情報に含まれている在庫数を、同じ商品コードと販売データ内で組をなす数量を上記の在庫数から減じた数に変更する。
そしてプロセッサ11はこののち、ACT402及びACT403の待受状態に戻る。
【0176】
一方、店員は、商品が入荷した場合には、図1には示されない情報端末を用いて、入荷を指定する。つまり店員は、上記の情報端末に、入荷した商品の商品コードと入荷数とを入力する。そうすると情報端末は、商品コードと入荷数との組を含んだ入荷通知データを店舗サーバ1に送信する。この入荷通知データが店内通信ネットワーク7により店舗サーバ1へと伝送されると、当該入荷通知データを通信インタフェース14が受信する。そしてプロセッサ11は、これに応じてACT403にてYESと判定し、ACT406へと進む。
ACT406としてプロセッサ11は、入荷による在庫の増加を反映するように在庫データベースDBABを更新する。プロセッサ11は例えば、販売データに示される商品コードに関連付けて在庫データベースDBABに記述されている在庫情報に含まれている在庫数を、同じ商品コードと入荷通知データ内で組をなす数量を上記の在庫数に加えた数に変更する。
ACT407としてプロセッサ11は、入荷された商品に関する予約があるか否かを確認する。プロセッサ11は例えば、入荷通知データに含まれた商品コードのいずれもが、予約データベースDBACに含まれているデータレコードREAのいずれかのフィールドFBCにセットされた商品コードと一致しないならばNOと判定し、そのままACT402及びACT403の待受状態に戻る。しかしながらプロセッサ11は、入荷通知データに含まれた商品コードのいずれかが、予約データベースDBACに含まれているデータレコードREAのいずれかのフィールドFBCにセットされた商品コードと一致するならばACT407にてYESと判定し、ACT408へと進む。
ACT408としてプロセッサ11は、予約している客に対して入荷を通知するための処理を実行する。プロセッサ11は例えば、入荷通知データに含まれた商品コードのそれぞれに関して、その商品コードがフィールドFBCにセットされ、かつフィールドFBFにセットされている通知フラグが未通知を表しているデータレコードREAを予約データベースDBACから抽出する。そしてプロセッサ11は、抽出したデータレコードREAのフィールドFBBにセットされている利用者コードで識別される利用者に関して予め定められている連絡先に対して、予約している商品が入荷したことの通知を行う。この通知は、例えば電子メール、あるいはユーザ端末200に対するプッシュ通知などにより行うことができる。連絡先は、例えばデータベース群DBAAに設けた利用者データベース中に、利用者コードに関連付けて記述しておけばよい。なおプロセッサ11は、このように通知を行ったならば、該当のデータレコードREAのフィールドFBFにセットされている通知フラグを、通知済みを表す状態に更新する。
かくして店舗管理アプリAPAに基づく情報処理をプロセッサ11が実行することによって、プロセッサ11を中枢部分とするコンピュータは通知手段として機能する。
そしてプロセッサ11は、上記の抽出したデータレコードREAの全てに関する上記の通知を終えたならば、ACT402及びACT403の待受状態に戻る。
入荷通知を受けた客は、店舗に出向いて商品を受け取ることができる。
【0177】
以上のように本実施形態によれば、欠品となっていた商品を、予約商品として買上商品とともに取引の対象として登録し、購入することができる。これにより、欠品商品の予約購入を容易とすることができる。
【0178】
また本実施形態の商品販売処理システムは、欠品となっていた商品は、客による指示に応じて予約商品として登録する。従って、客は、指定した商品が欠品であることを確認したのちに、その商品を予約商品として登録するか否かを判断し、必要に応じて予約商品として登録することができる。
【0179】
また本実施形態の商品販売処理システムは、入荷した予約商品に関連付けられた客に対して入荷を通知する。従って、予約商品が入荷したならば、その予約商品を予約している客に対して入荷を速やかに通知できる。そしてこの通知に応じて速やかに客が予約商品の引き取りを行えば、予約商品を客が受け取ることができるまでの待ち時間を最小限に留めることができる。
【0180】
また本実施形態の商品販売処理システムは、客により指定された条件に合致する商品のなかからの客による指定に応じて予約商品を決定している。このため、客が所望の商品を店舗にて見つけることができないとしても、その商品を予約商品として登録できる。
【0181】
この実施形態は、次のような種々の変形実施が可能である。
例えば、ユーザ端末200に代えてカート端末300を用いた買い物を実現する場合には、ユーザ端末200をカート端末300に読み替えることができる。つまり、カート端末300のプロセッサ302は、ユーザ端末200のプロセッサ201による情報処理と大筋では同様の情報処理を実行すればよい。ただしカート端末300の場合は例えば、チェックインデータに示される各種のデータのうちの少なくとも一部を、予めメインメモリ303又は補助記憶ユニット304に保存しておくことで、図10中のACT104~ACT107の処理を省略してもよい。
【0182】
予約商品として登録する商品の指定は、例えば棚札に表示されたバーコードの読み取り、などの別の任意の手段で行われてもよい。
【0183】
スマホPOSサービスを提供しない商品販売処理システムとして実現することもできる。この場合の商品の指定及び当該商品の予約商品としての登録に関わる操作は、対面型又はフルセルフ型のPOS端末、あるいはセミセルフ方式のPOSシステムにおける登録端末又は決済端末で行われてもよい。そして、この操作は、店員により行われてもよい。
【0184】
客が予約商品の決済を、予約商品の受け取り時に行うことを指定した場合には、予約商品を決済対象から除外するようにしてもよい。
【0185】
予約商品の登録は、複数の店舗システムのうちの一部でのみ行われてもよい。
【0186】
予約データベースDBACは、仮想POSサーバ2の補助記憶ユニット23、モバイルコントローラ3の補助記憶ユニット33、あるいは図1に示されないサーバ装置に備えられた補助記憶ユニットに記憶されてもよい。そして図27に示す在庫管理処理の少なくとも一部は、予約データベースDBACを記憶する補助記憶ユニットが備えられた装置のプロセッサにより実行されてもよい。
【0187】
予約商品の入荷に関する通知は行わなくてもよい。この場合は例えば、入荷の予定又は目安を表した予約票を会計機5のプリンタで印刷するか、予約票を表した画面をユーザ端末200のタッチパネル204で表示可能とするなどの処置を講ずるとよい。
【0188】
モバイルコントローラ3の機能を仮想POSサーバ2に統合し、モバイルコントローラ3は設けなくてもよい。
【0189】
情報処理によりプロセッサ11,21,31,201,302が実現する各機能は、その一部又は全てをロジック回路などのようなプログラムに基づかない情報処理を実行するハードウェアにより実現することも可能である。また上記の各機能のそれぞれは、上記のロジック回路などのハードウェアにソフトウェア制御を組み合わせて実現することも可能である。
【0190】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
以下に、本願の当初の特許請求の範囲に記載された発明を付記する。
[付記1] 商品を判定する判定手段と、
前記判定手段により判定された商品を買上商品とするリストを作成する作成手段と、
前記作成手段により作成されたリストに含まれる買上商品に関する代金を決済する決済手段と、
前記判定手段により判定された買上商品が欠品となっている場合に、当該買上商品を予約商品として決定する決定手段と、
を具備する商品販売処理システム。
[付記2] 前記作成手段は、前記判定手段により判定された商品が欠品となっている場合には、前記リストに含めることが指定された場合に買上商品として前記リストに含める、
付記1に記載の商品販売処理システム。
[付記3] 前記買上商品を買い上げる客を識別する識別手段と、
前記決定手段により決定された予約商品を前記識別手段により識別された客と関連付けて管理する管理手段と、
前記予約商品の引き渡しが可能となったことを、当該引き渡しが可能となった予約商品に関連付けて前記管理手段により管理されている客に対して通知する通知手段と、
をさらに具備する付記1又は付記2に記載の商品販売処理システム。
[付記4] 前記判定手段は、客により指定された条件に合致する商品のなかからの客による指定に応じて商品を判定する、
付記1~付記3のいずれか一項に記載の商品販売処理システム。
[付記5] 前記判定手段は、客により移動可能な可搬端末での操作に応じて商品を判定する、
付記1~付記4のいずれか一項に記載の商品販売処理システム。
【符号の説明】
【0191】
100(100-1,100-2)…店舗システム、200…ユーザ端末、300…カート端末、400…中継サーバ、500…通信ネットワーク、1…店舗サーバ、2…仮想POSサーバ、3…モバイルコントローラ、4…通信サーバ、5…会計機、6…アクセスポイント、7…店内通信ネットワーク、11,21,31,201,302…プロセッサ、12,22,32,202,303…メインメモリ、13,23,33,203,304…補助記憶ユニット、14,24,34…通信インタフェース、204,305…タッチパネル、205…カメラ、206,306…サウンドユニット、207…センサ群、208,307…無線通信ユニット、209…モバイル通信ユニット、301…バーコードスキャナ。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15
図16
図17
図18
図19
図20
図21
図22
図23
図24
図25
図26
図27