(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-10-07
(45)【発行日】2024-10-16
(54)【発明の名称】遠隔構成オプションに基づいて無人機に提供する電気パルスを決定するシステム及び方法
(51)【国際特許分類】
G06Q 30/0283 20230101AFI20241008BHJP
G06Q 30/0211 20230101ALI20241008BHJP
【FI】
G06Q30/0283
G06Q30/0211
【外国語出願】
(21)【出願番号】P 2023094567
(22)【出願日】2023-06-08
(62)【分割の表示】P 2021097012の分割
【原出願日】2017-02-16
【審査請求日】2023-06-20
(32)【優先日】2016-02-17
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】515293414
【氏名又は名称】ペイレンジ インコーポレイテッド
(74)【代理人】
【識別番号】100079108
【氏名又は名称】稲葉 良幸
(74)【代理人】
【識別番号】100109346
【氏名又は名称】大貫 敏史
(74)【代理人】
【識別番号】100117189
【氏名又は名称】江口 昭彦
(74)【代理人】
【識別番号】100134120
【氏名又は名称】内藤 和彦
(72)【発明者】
【氏名】パテル,パレッシュ,ケー.
【審査官】永野 一郎
(56)【参考文献】
【文献】特開2004-185253(JP,A)
【文献】特開2004-246720(JP,A)
【文献】特開2005-352791(JP,A)
【文献】特開2006-053851(JP,A)
【文献】特開2010-033307(JP,A)
【文献】特開2005-242698(JP,A)
【文献】特開2003-323662(JP,A)
【文献】特開2010-152757(JP,A)
【文献】米国特許出願公開第2008/0154735(US,A1)
【文献】米国特許出願公開第2001/0034566(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06Q 10/00-99/00
(57)【特許請求の範囲】
【請求項1】
無人機の遠隔構成オプションに基づいて前記無人機に提供する電気パルスを決定する方法であって、モバイルデバイスで実行中のアプリケーションにおいて、
前記無人機と排他的接続を確立することであって、前記無人機はパルス提供デバイスを含むことと、
サーバから、前記無人機とインタラクションするための、(i)前記無人機の遠隔構成オプションの組についての情報と、(ii)それぞれの認可承諾を含む暗号化情報とを受信することであって、前記暗号化情報はそれぞれのオプションに従って前記パルス提供デバイスによって前記無人機に提供される電気パルスに関する仕様を含むことと、
前記遠隔構成オプションの第1の組についての前記情報及び前記暗号化情報を受信することに応答して、第1の無人機の前記遠隔構成オプションの第1の組の内の第1のそれぞれのオプションを選択できるようにする第1のユーザインターフェースオブジェクトを前記アプリケーションにおいて表示することと、
前記遠隔構成オプションの第1の組の内の第1のオプションに対応する第1のユーザインターフェースオブジェクトの選択を検出することと、
前記第1のユーザインターフェースオブジェクトの前記選択を検出した後、トリガー条件が満たされたという判断に従って、前記認可承諾及び前記パルスの仕様を含む前記暗号化情報を、前記パルス提供デバイスに送信することと、
前記認可承諾及び前記パルスの仕様を含む前記暗号化情報を前記パルス提供デバイスに送信した後、前記パルス提供デバイスから、前記認可承諾が前記パルス提供デバイスによって受信されたという第1の通知を受信することと
を含む方法。
【請求項2】
前記遠隔構成オプションは、価格オプションである、請求項1に記載の方法。
【請求項3】
前記遠隔構成オプションは、予め定義される価格表に従って決定される価格オプションである、請求項1に記載の方法。
【請求項4】
前記予め定義される価格表は、前記サーバにおける現在の日時に基づいて決定される、請求項3に記載の方法。
【請求項5】
前記遠隔構成オプションは、前記無人機とのいかなる物理的なインタラクションも必要とせずに前記無人機のオペレータによって構成される、請求項1に記載の方法。
【請求項6】
前記遠隔構成オプションがもはや現在のものではないという第2の通知を前記サーバから受信することと、
前記遠隔構成オプションの第1の組とは別個の前記遠隔構成オプションの更新された組を受信することと
を更に含む、請求項1~5のいずれか一項に記載の方法。
【請求項7】
前記モバイルデバイスの短距離無線送受信機は、前記パルス提供デバイスからブロードキャストを受信する、請求項1~6のいずれか一項に記載の方法。
【請求項8】
前記モバイルデバイスの長距離無線送受信機は、前記サーバから、前記無人機とインタラクションするための前記遠隔構成オプションの第1の組についての前記情報を受信する、請求項1~7のいずれか一項に記載の方法。
【請求項9】
前記モバイルデバイスの短距離無線送受信機は、前記認可承諾及び前記パルスの仕様を含む前記暗号化情報を、前記パルス提供デバイスに送信する、請求項1~8のいずれか一項に記載の方法。
【請求項10】
前記モバイルデバイスの短距離無線送受信機は、前記パルス提供デバイスから前記第1の通知及
びブロードキャストを受信する、請求項1~6のいずれか一項に記載の方法。
【請求項11】
第2の無人機の第2のユーザインターフェースオブジェクトの一部を前記アプリケーションにおいて表示することであって、前記第2の無人機は前記第1の無人機とは別個であることを更に含む、請求項1~10のいずれか一項に記載の方法。
【請求項12】
前記第2のユーザインターフェースオブジェクトの前記一部は、前記第1のユーザインターフェースオブジェクトに隣接して表示される、請求項11に記載に方法。
【請求項13】
前記第1のユーザインターフェースオブジェクト上の横方向のスワイプを検出することと、
前記スワイプを検出することに応答して、前記第2のユーザインターフェースオブジェクトと、前記第1のユーザインターフェースオブジェクトの一部とを前記アプリケーションにおいて表示することにスイッチすることと
を更に含む、請求項11に記載の方法。
【請求項14】
モバイルデバイスであって、1つ又は複数のプロセッサと、前記1つ又は複数のプロセッサによって実行される1つ又は複数のプログラムを記憶するメモリとを含み、前記1つ又は複数のプログラムは、請求項1~13のいずれか一項に記載の方法を実行するための命令を含む、モバイルデバイス。
【請求項15】
1つ又は複数のプログラムを記憶する非一時的コンピュータ可読記憶媒体であって、前記1つ又は複数のプログラムは、命令を含み、前記命令は、1つ又は複数のプロセッサを有するモバイルデバイスによって実行されると、前記モバイルデバイスに、請求項1~13のいずれか一項に記載の方法を実行させる、非一時的コンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
発明の分野
本願は、無人機(unattended machine)において電気パルスを提供する分野に関し、特に、遠隔構成オプションに基づいて無人機に提供する電気パルスを決定することに関する。
【背景技術】
【0002】
発明の背景
電気パルスに基づくクレジット機は、「支払い受諾ユニット」又は「無人機」の一種である(無人機又は支払い受諾ユニットは、本明細書では総称して「機械」とも呼ばれる)。無人機は、製品(例えば、自販機に格納されたアイテム)及び/又はサービス(例えば、ビデオゲームプレイ)の供給に支払いを要求する機器である。
【0003】
ビデオゲーム、幼児向けの乗り物、又はコインランドリー等の電気パルスに基づくクレジット機を使用する消費者は、機械によって確立される支払い増分毎の予め定義されたデフォルト金額(すなわち、機械によって確認されたクレジットへの、挿入される硬貨の直接マッピング)に制限される。例えば、ユーザは、1クレジットで1ゲームをプレイすることができる場合、ユーザは、3ゲームをプレイすることを望むときには3クレジットを送る(すなわち、3枚の硬貨を機械に挿入する)必要がある。
【発明の概要】
【発明が解決しようとする課題】
【0004】
価格オプションは、予め定義され、機械に物理的にプログラムされるため、機械オペレータは、前払い値引き、時間に基づく値引き、又は提供される価格オプションを機械オペレータが柔軟にコントロールできるようにする他のオプションを提供することができない。加えて、ユーザは、プロモーションを利用することができず、既存のオプションに従って無人機に硬貨を挿入し続ける必要がある。
【課題を解決するための手段】
【0005】
概要
本明細書に開示されるのは、上記欠点に対処するシステム及び方法である。特に、本明細書に開示されるのは、遠隔構成オプションに基づいて無人機に提供する電気パルスを決定するシステム及び方法である。例えば、機械オペレータは、ウェブベースのインターフェースにアクセスして、特定の無人機の価格オプションを追加又は変更することができる。ユーザが後に特定の無人機への認可承諾を受信する場合、そのユーザは、新しい又は変更された価格オプションを利用することが可能である。このようにして、機械オペレータは、価格表を確立することができ、ユーザは、機械オペレータによって提供された独自のプロモーションを利用することができる。更に、ユーザは、無人機によって提供されるサービスにアクセスするために個々の硬貨を常に追加する必要がなく、代わりに、ユーザは、簡単且つ容易に自らの携帯電話で実行中のアプリケーションを介して独自のプロモーションを利用することができる(したがって、硬貨の紛失、硬貨の詰まり、硬貨受諾インターフェースの故障、及び無人機で往々にして直面する他の困難なもの等の非効率な状況を回避する)。
【0006】
自販機に加えて、他の無人機として、パーキングメータ、料金所、セルフ式洗濯機及び乾燥機、ビデオゲームコンソール(すなわち、硬貨動作式アーケードゲーム)、硬貨動作式玉突き台、硬貨動作式ダーツ機、硬貨動作式真空ポンプ又はエアポンプ(ガソリンスタンドで一般に見られるもの等)、又は商品(例えば、自販機に格納された製品)を販売し、且つ/又はサービスを提供する(例えば、ビデオゲームのプレイ、洗濯機及び乾燥機の使用等のサービスをユーザが使用できるようにする)、他のオフライン支払いで動作する機械が挙げられる。
【0007】
(A1)一態様では、無人機の遠隔構成オプションに基づいて無人機に提供する電気パルスを決定する方法が提供される。本方法は、モバイルデバイスで実行中のアプリケーションにおいて実行される。本方法は、無人機に結合されるパルス提供デバイスから受信されるブロードキャストに基づいて、モバイルデバイスの近傍の無人機の存在を検出することを含む。無人機の存在を検出した後、本方法は、サーバから(幾つかの場合、無人機がネットワーク接続を有さないため、サーバは、無人機と直接通信することができない)、無人機とインタラクションするための第1の組の遠隔構成オプションについての情報を受信することを含む。第1の組の遠隔構成オプションについての情報を受信することに応答して、本方法は、第1の組の遠隔構成オプション内の各オプションを選択できるようにするユーザインターフェースオブジェクトをアプリケーションにおいて表示することを含む。本方法は、第1の組の遠隔構成オプション内の第1のオプションに対応する第1のユーザインターフェースオブジェクトの選択を検出することを更に含む。第1のユーザインターフェースオブジェクトの選択を検出した後(又は検出に応答して)、本方法は、サーバから、無人機における第1のオプションについての認可承諾を含む情報を受信することであって、情報は、第1のオプションに従ってパルス提供デバイスによって無人機に提供される電気パルスに関する仕様を含む、受信することを含む。トリガー条件が満たされたという判断に従って、本方法は、認可承諾及び仕様を含む情報をパルス提供デバイスに送信することを含む。認可承諾及びパルス情報をパルス提供デバイスに送信した後、パルス提供デバイスから、電気パルスが仕様に従って無人機に提供されたという通知(indication)を受信する。
【0008】
(A2)A1の方法の幾つかの実装形態によれば、遠隔構成オプションは、価格オプションである。
【0009】
(A3)A1又はA2の方法の幾つかの実装形態によれば、遠隔構成オプションは、予め定義される価格表に従って決定される価格オプションである。
【0010】
(A4)A3の方法の幾つかの実装形態によれば、予め定義される価格表は、サーバにおける現在の日時に基づいて決定される。
【0011】
(A5)A1~A4のいずれかの方法の幾つかの実装形態によれば、遠隔構成オプションは、無人機とのいかなる物理的なインタラクションも必要とせずに無人機のオペレータによって構成される。
【0012】
(A6)A1~A5のいずれかの方法の幾つかの実装形態によれば、本方法は、遠隔構成オプションがもはや現在のものではないという第2の通知をサーバから受信することと、サーバから第2の通知を受信することに応答して、第1の組の遠隔構成価格オプションとは別個の更新された組の遠隔構成価格オプションを受信することとを更に含む。
【0013】
(A7)幾つかの実装形態では、モバイルデバイスも提供される。本モバイルデバイスは、1つ又は複数のプロセッサと、1つ又は複数のプロセッサによって実行される1つ又は複数のプログラムを記憶するメモリとを含み、1つ又は複数のプログラムは、A1~A6のいずれか1つの方法を実行するための命令を含む。
【0014】
(A8)幾つかの実装形態では、非一時的コンピュータ可読記憶媒体も提供される。本非一時的コンピュータ可読記憶媒体は、1つ又は複数のプログラムを記憶し、1つ又は複数のプログラムは、命令を含み、命令は、1つ又は複数のプロセッサを有するモバイルデバイスによって実行されると、モバイルデバイスに、A1~A6のいずれか1つの方法を実行させる。
【0015】
(A9)幾つかの実装形態では、追加の方法が提供される。追加の本方法は、無人機の遠隔構成オプションに基づいて無人機に提供する電気パルスを決定するためのものであり、本方法は、無人機に結合されるパルス提供デバイスにおいて実行される。本方法は、モバイルデバイスで実行中のアプリケーションから、モバイルデバイスで実行中のアプリケーションにおいてユーザによって選択された価格オプションに従って、パルス提供デバイスによって無人機に提供される電気パルスに関する仕様を含む認可承諾を受信することであって、価格オプションは、無人機に固有である、受信することを含む。認可承諾を受信することに応答して、本方法は、認可承諾が有効であるか否かを判断することを含む。認可承諾が有効であるという判断に従って、本方法は、仕様に従って無人機に電気パルスを提供することを含む。電気パルスを無人機に提供した後、本方法は、モバイルデバイスで実行中のアプリケーションに、電気パルスが仕様に従って無人機に提供されたという通知を送信することを含む。
【0016】
(A10)A9の方法の幾つかの実装形態では、価格オプションは、硬貨の機械的な挿入を介して無人機とインタラクションするユーザに利用可能ではない。
【0017】
(A11)幾つかの実装形態では、パルス提供デバイスが提供される。本パルス提供デバイスは、1つ又は複数のプロセッサと、1つ又は複数のプロセッサによって実行される1つ又は複数のプログラムを記憶するメモリとを含み、1つ又は複数のプログラムは、A9又はA10の方法を実行するための命令を含む。
【0018】
(A12)幾つかの実装形態では、非一時的コンピュータ可読記憶媒体が提供される。本非一時的コンピュータ可読記憶媒体は、1つ又は複数のプログラムを記憶し、1つ又は複数のプログラムは、命令を含み、命令は、1つ又は複数のプロセッサを有するパルス提供デバイスによって実行されると、パルス提供デバイスに、A9又はA10の方法を実行させる。
【0019】
(A13)幾つかの実装形態は、無人機の遠隔構成オプションに基づいて無人機に提供する電気パルスを決定するシステムも提供する。本システムは、無人機に結合されるパルス提供デバイスであって、A9又はA10の方法において記載される動作を実行するように構成される、パルス提供デバイスと、モバイルデバイスで実行中のアプリケーションであって、A1~A6のいずれかの方法において記載される動作を実行するように構成される、アプリケーションと、モバイルデバイスで実行中のアプリケーションと通信するサーバであって、選択された価格オプションに関連付けられる電気パルスの仕様を取得し、且つそれらの取得された仕様をモバイルデバイスに送信することを含む動作を実行するように構成される、サーバとを含む。
【0020】
別の態様では、支払い受諾ユニットイベントの表現を提示する方法が、1つ又は複数のプロセッサと、メモリと、1つ又は複数の出力デバイスと、2つ以上の通信機能とを有するデバイス(例えば、
図5及び
図21のモバイルデバイス150)において実行される。第1の通信機能(例えば、BLE等の短距離通信技術/プロトコル)を介して、支払いモジュールに関連付けられた支払い受諾ユニット(例えば、
図5及び
図19の支払い受諾ユニット120)(本明細書では「機械120」と呼ばれることもある)とのトランザクションを開始する要求を支払いモジュール(例えば、
図5及び
図20のアダプタモジュール100)に送信した後、本方法は、第1の通信機能を介して支払いモジュールから通知を取得することを含み、通知は、支払いモジュールに関連付けられた支払い受諾ユニットにおけるイベントを示す。通知を取得することに応答して、本方法は、モバイルデバイスの1つ又は複数の出力デバイスを介してモバイルデバイスのユーザに通知の表現を提供すること(例えば、モバイルデバイスのディスプレイに表示されるメッセージ、モバイルデバイスのバイブレーション機構によって生成されるバイブレーション、モバイルデバイスのスピーカによって生成される音声アラート等)を含む。
【0021】
もう1つの態様では、電子支払いを受諾するようにオフライン支払い動作機を変更する方法が、1つ又は複数のプロセッサ、メモリ、短距離通信機能(例えば、BLE等の短距離通信技術/プロトコル)、及び支払いモジュールをオフライン支払い動作機の制御ユニット(例えば、
図5及び
図19の支払い受諾ユニット120)(本明細書において「機械120」と呼ばれることもある)に結合するように構成された第1のインターフェースモジュールを有する支払いモジュール(例えば、
図5及び
図20のアダプタモジュール100)において実行される。本方法は、各モバイルデバイスから短距離通信機能を介して、オフライン支払い動作機とのトランザクションを実行するトランザクション要求を受信することを含む。本方法は、トランザクション要求が有効であると確認することを含み、トランザクション要求が有効であると確認することは、各モバイルデバイスが、長距離通信機能(例えば、GSM(登録商標)、CDMA、又はWi-Fi(登録商標)等の長距離通信技術/プロトコル)を介して、トランザクションの支払いを開始することをリモートサーバ(例えば、
図5及び
図22のサーバ130)によって認可されることを示す。トランザクション要求が有効であるという判断に従って、本方法は、第1のインターフェースモジュールを介して、トランザクションを実行する信号をオフライン支払い動作機の制御ユニットに発行することにより、要求されたトランザクションをオフライン支払い動作機に実行させることを含む。
【0022】
更なる態様では、デバイス(例えば、機械120(
図5及び
図19)、アダプタモジュール100(
図5及び
図20)、モバイルデバイス150(
図5及び
図21)、サーバ130(
図5及び
図22)、又はそれらの組み合わせ)は、1つ又は複数のプロセッサと、1つ又は複数のプロセッサによって実行される1つ又は複数のプログラムを記憶するメモリとを含み、1つ又は複数のプログラムは、本明細書に記載される任意の方法の動作を実行するか又は動作の実行を制御するための命令を含む。幾つかの実装形態では、命令を含む1つ又は複数のプログラムを記憶する非一時的コンピュータ可読記憶媒体であって、命令は、1つ又は複数のプロセッサを有するデバイス(例えば、機械120(
図5及び
図19)、アダプタモジュール100(
図5及び
図20)、モバイルデバイス150(
図5及び
図21)、サーバ130(
図5及び
図22)、又はそれらの組み合わせ)によって実行されると、コンピュータシステムに、本明細書に記載される任意の方法の動作を実行させるか又は動作の実行を制御させる、非一時的コンピュータ可読記憶媒体である。幾つかの実装形態では、デバイス(例えば、機械120(
図5及び
図19)、アダプタモジュール100(
図5及び
図20)、モバイルデバイス150(
図5及び
図21)、サーバ130(
図5及び
図22)、又はそれらの組み合わせ)は、本明細書に記載される任意の方法の動作を実行するか又は動作の実行を制御する手段を含む。
【0023】
本明細書に記載される趣旨は、特に本明細書の結語部分において指摘され、別個に請求項に記載される。本明細書において記載され暗示される目的、特徴、組み合わせ、及び利点は、添付図面と併せて解釈される本発明の以下の詳細な説明を考慮することにより、より容易に理解される。
【図面の簡単な説明】
【0024】
【
図1】幾つかの実装形態による3つのゾーン:「通信ゾーン」(例えば、Bluetooth範囲)、「認可ゾーン」、及び「支払いゾーン」を示す概略図である。
【
図2】幾つかの実装形態による、内部に複数のユーザを有する
図1の3つのゾーンを示す概略図である。
【
図3】幾つかの実装形態による、ハンズフリークレジット又はアラートユーザ原理を示す表である。
【
図4】幾つかの実装形態による、受信信号強度インジケータ(RSSI)情報のログ記録を示すフローチャートである。
【
図5】幾つかの実装形態による、アダプタモジュール、機械、モバイルデバイス、及びサーバを含むが、これらに限定されない支払い処理システムの要素並びにそれらの間の通信を示すブロック概略図である。
【
図6】幾つかの実装形態による、アダプタモジュール、機械、モバイルデバイス、及び/又はサーバ間で使用される暗号の3つのエリア(それぞれが双方向)を示すブロック概略図である。
【
図7】幾つかの実装形態による、アダプタモジュール、モバイルデバイス、及びシステム管理サーバ間の通信、メッセージング、自販シーケンス、及び購入フローを示すブロック図である。
【
図8A】幾つかの実装形態による、ユーザが「通信ゾーン」(例えば、Bluetooth範囲)に入る際の支払い処理システムの追加の要素及び特徴(例えば、通信、メッセージング、自販シーケンス、及び購入フロー)を示す概略的なプロセス流れ図である。
【
図8B】幾つかの実装形態による、ユーザが「認可ゾーン」に入る際の支払い処理システムの追加の要素及び特徴(例えば、通信、メッセージング、自販シーケンス、及び購入フロー)を示す概略的なプロセス流れ図である。
【
図8C】幾つかの実装形態による、ユーザが「支払いゾーン」に入る際の支払い処理システムの追加の要素及び特徴(例えば、通信、メッセージング、自販シーケンス、及び購入フロー)を示し、特にハンズフリーモード実施形態及びスワイプモード実施形態を詳述する概略的なプロセス流れ図である。
【
図8D】幾つかの実装形態による、複数のトランザクションのループを含む自販トランザクションにおける支払い処理システムの追加の要素及び特徴(例えば、通信、メッセージング、自販シーケンス、及び購入フロー)を示す概略的なプロセス流れ図である。
【
図8E】幾つかの実装形態による、ログインモードにおける支払い処理システムの追加の要素及び特徴(例えば、通信、メッセージング、自販シーケンス、及び購入フロー)を示す概略的なプロセス流れ図である。
【
図8F】幾つかの実装形態による、アダプタモジュールのブートアップ中の支払い処理システムの追加の要素及び特徴(例えば、通信、メッセージング、自販シーケンス、及び購入フロー)を示す概略的なプロセス流れ図である。
【
図8G】幾つかの実装形態による、口座チェック/更新プロセス中の支払い処理システムの追加の要素及び特徴(例えば、通信、メッセージング、自販シーケンス、及び購入フロー)を示す概略的なプロセス流れ図である。
【
図9A】幾つかの実装形態による支払い処理システムの例としてのステップ及び特徴、例えば、通信、メッセージング、自販シーケンス、及び購入フロー)を示すフローチャートである。
【
図9B】幾つかの実装形態による支払い処理システムの例としてのステップ及び特徴、例えば、通信、メッセージング、自販シーケンス、及び購入フロー)を示すフローチャートである。
【
図9C】幾つかの実装形態による支払い処理システムの例としてのステップ及び特徴、例えば、通信、メッセージング、自販シーケンス、及び購入フロー)を示すフローチャートである。
【
図9D】幾つかの実装形態による支払い処理システムの例としてのステップ及び特徴、例えば、通信、メッセージング、自販シーケンス、及び購入フロー)を示すフローチャートである。
【
図9E】幾つかの実装形態による支払い処理システムのステップ及び特徴、例えば、通信、メッセージング、自販シーケンス、及び購入フロー)を示すフローチャートである。
【
図10A】幾つかの実装形態による、モバイルデバイス-機械支払い処理システムの一環として使用されるモバイルアプリケーションのグラフィカル表現が示されたモバイルデバイスを示す。
【
図10B】幾つかの実装形態による、モバイルデバイス-機械支払い処理システムの一環として使用されるモバイルアプリケーションのグラフィカル表現が示されたモバイルデバイスを示す。
【
図10C】幾つかの実装形態による、モバイルデバイス-機械支払い処理システムの一環として使用されるモバイルアプリケーションのグラフィカル表現が示されたモバイルデバイスを示す。
【
図10D】幾つかの実装形態による、モバイルデバイス-機械支払い処理システムの一環として使用されるモバイルアプリケーションのグラフィカル表現が示されたモバイルデバイスを示す。
【
図11】幾つかの実装形態によるインラインドングルアダプタモジュールの斜視図である。
【
図12】幾つかの実装形態による
図11のインラインドングルアダプタモジュールの正面図である。
【
図13】幾つかの実装形態による
図11のインラインドングルアダプタモジュールの背面図である。
【
図14】幾つかの実装形態による
図11のインラインドングルアダプタモジュールの側面図である。
【
図15】幾つかの実装形態による
図11のインラインドングルアダプタモジュールのコネクタレセプタクルの第1の端面図である。
【
図16】幾つかの実装形態による
図11のインラインドングルアダプタモジュールのコネクタレセプタクルの第2の端面図である。
【
図17】幾つかの実装形態による
図11のインラインドングルアダプタモジュールの第1の端部からの斜視図であり、例示を目的として、インラインドングルアダプタモジュールがその間に挿入されるコネクタ及びケーブルが破線で示される。
【
図18】幾つかの実装形態による
図11のインラインドングルアダプタモジュールの第2の端部からの斜視図であり、例示を目的として、インラインドングルアダプタモジュールがその間に挿入されるコネクタ及びケーブルが破線で示される。
【
図19】幾つかの実装形態による、自販機内の
図11のインラインドングルアダプタモジュールの斜視図である。
【
図20】幾つかの実装形態によるアダプタモジュールのブロック図である。
【
図21】幾つかの実装形態によるモバイルデバイスのブロック図である。
【
図22】幾つかの実装形態によるサーバのブロック図である。
【
図23】幾つかの実装形態による、支払い処理システムにおいてトランザクションを実行することに関してユーザを認証するプロセスの概略的な流れ図である。
【
図24A】幾つかの実装形態による支払いモジュール(本明細書では「アダプタモジュール」と呼ばれることもある)による情報パケットブロードキャストのブロック図である。
【
図24B】幾つかの実装形態による認可要求のブロック図である。
【
図24C】幾つかの実装形態による認可承諾トークンのブロック図である。
【
図24D】幾つかの実装形態による支払いモジュールによって生成されるトランザクション情報のブロック図である。
【
図25A】幾つかの実装形態による、モバイルデバイスにおいて機械イベントの表現を提供するプロセスの概略的な流れ図を示す。
【
図25B】幾つかの実装形態による、支払い処理システムにおける肯定応答情報を処理するプロセスの概略的な流れ図である。
【
図26A】幾つかの実装形態による、モバイルデバイスにおいて機械イベントの表現を提供するユーザインターフェース例を示す。
【
図26B】幾つかの実装形態による、モバイルデバイスにおいて機械イベントの表現を提供するユーザインターフェース例を示す。
【
図26C】幾つかの実装形態による、モバイルデバイスにおいて機械イベントの表現を提供するユーザインターフェース例を示す。
【
図26D】幾つかの実装形態による、モバイルデバイスにおいて機械イベントの表現を提供するユーザインターフェース例を示す。
【
図27A】幾つかの実装形態による、支払い受諾ユニットイベントの表現を提示する方法のフローチャート図を示す。
【
図27B】幾つかの実装形態による、支払い受諾ユニットイベントの表現を提示する方法のフローチャート図を示す。
【
図28A】幾つかの実装形態によるオフライン支払い動作機のブロック図を示す。
【
図28B】幾つかの実装形態による支払いモジュールによってサンプリングされた信号を示す。
【
図29A】幾つかの実装形態による、電子支払いを受諾するようにオフライン支払い動作機を改造する方法1600のフローチャート図を示す。
【
図29B】幾つかの実装形態による、電子支払いを受諾するようにオフライン支払い動作機を改造する方法1600のフローチャート図を示す。
【
図30】幾つかの実装形態による、支払い動作機が電子支払いを受諾できるようにする方法のフローチャート図を示す。
【
図31】幾つかの実装形態による、無人機の遠隔構成オプションに基づいて無人機に提供する電気パルスを決定するプロセスの概略的な流れ図である。
【
図32】幾つかの実装形態による、無人機の遠隔構成オプションの1つを選択するのに使用されるモバイルデバイス上のユーザインターフェースの一例を示す。
【
図33】幾つかの実装形態による、無人機の遠隔構成オプションに基づいて無人機に提供する電気パルスを決定する方法の流れ図である。
【発明を実施するための形態】
【0025】
同様の参照符号は、図面の幾つかの図を通して対応する部分を指す。
【0026】
発明の詳細な説明
本明細書に開示されるのは、支払い処理システム、又はより詳細には、非永続的なネットワーク接続を介してトランザクションを処理するモバイルデバイス-機械支払い処理システムである。本明細書に開示されるモバイルデバイス-機械支払い処理システムは、無人小売りスペース(例えば、支払い受諾ユニット120、本明細書では「機械120」と呼ばれることもある)に焦点を当てる。より詳細には、本明細書に開示されるモバイルデバイス-機械支払い処理システムは、ユーザ(モバイルアプリケーション140を有するモバイルデバイス150を有する)が支払い受諾ユニット120(関連付けられたアダプタモジュール100を有する)からキャッシュレス購入を行えるようにする。
【0027】
本明細書に記載されるモバイルデバイス-機械支払い処理システムは、以下の特徴の1つ又は複数を用いて実施することができる:容易な設置に関する特徴、非永続的なネットワーク接続特徴、手動(スワイプして支払う)モード特徴、ハンズフリーモード特徴、及び複数自販トランザクション(複数自販)特徴。
【0028】
容易な設置:設置は、非常に容易であり、工具を必要とせず、構成することを必要とせず、且つわずかに30秒を要する。これは、支払い受諾ユニット120(例えば、自販機)(本明細書では「機械120」と呼ばれることもある)のマルチドロップバス(MDB)内のインライン挿入のためのインラインドングル(ソフトウェアを有するハードウェアデバイス)設計等のアダプタモジュール100(本明細書では「支払いモジュール100」と呼ばれることもある)を使用することによって達成される。設置は、機械120の「電源を落とし」(オフにし)、支払い受け取り機構(例えば、硬貨機構)と接続する「ワイヤ」を識別し、ワイヤを切り離し(オス接続端部又はMDBのオスアダプタ及びメス接続端部又はMDBのメスアダプタ等の2つの緩んだ端部があるように)、アダプタモジュール100に直列(「インライン」)でワイヤを差し込み(挿入し)(例えば、MDBのメスアダプタをアダプタモジュール100のオスアダプタに接続し、MDBオスアダプタをアダプタモジュール100のメスアダプタに接続し)、ワイヤ及び設置されたアダプタモジュール100を定位置に戻し、機械120の「電源を投入」する(オンにする)という簡単なものである。1995年以降に作られた大半の自販機は、この容易な30秒設置を可能にするこの業界標準MDB技術を有する。MDB技術を有さない機械では、アダプタモジュール100は、他の直列プロトコルで機能するか、又はスイッチをアクティブ化するように構成又は設計することができる。基本的に、アダプタモジュール100は、他の代替の支払い形態(例えば、現金)と同じように支払い受諾ユニット120での支払いの確立をシミュレートする。
【0029】
非永続的なネットワーク接続:現金(例えば、紙幣及び硬貨)のみを受け入れる支払い受諾ユニット(又は「機械」)は、ネットワークへの接続(永続的又は非永続的)を必要としないことがあるが、キャッシュレスの支払い(例えば、クレジットカード、デビットカード、及び例えばスマートフォンを使用した代替のモバイルデバイス支払い方法)を受け入れる従来の支払い受諾ユニットは、キャッシュレスでの支払いを促進するために、ネットワークへの永続的な接続(有線又は無線)を必要とする。換言すれば、永続的な(継続中又は需要に応じてアクセス可能な)ネットワーク接続なしでは、従来の支払い受諾ユニットは、キャッシュレスの支払いを受け入れることができない。キャッシュレスの支払いを受け入れる大半の従来の支払い受諾ユニットは、リモートサーバへの接続を可能にするこの永続的なネットワーク接続を達成する技術を含む。従来の機械へのネットワーク接続が一時的に中断する場合、キャッシュレスの支払いは一時的に利用不可能になる。機械が、ネットワーク接続が利用可能でない場所にある場合、キャッシュレスの支払いは可能ではない。支払い受諾ユニット120とサーバ130との間の仲介物としてモバイルデバイス150を使用することに加えて、本明細書に記載されるモバイルデバイス-機械支払い処理システムは、モバイルデバイス150とのユーザのインタラクションを最小限に抑える(すなわち、手動モード)か又はなくす(すなわち、ハンズフリーモード)。更に、幾つかの実装形態では、本明細書に記載されるモバイルデバイス-機械支払い処理システムは、支払い受諾ユニット120の近傍でのいかなるネットワーク接続も必要とせずにキャッシュレスの支払いの受け入れを促進する。したがって、幾つかの実装形態では、本明細書に記載されるモバイルデバイス-機械支払い処理システムが、ネットワーク接続が利用不可能な遠隔場所に配置される場合、モバイルデバイス-機械支払い処理システムは、それでもなおキャッシュレスの支払いを受け入れることができる。
【0030】
手動(スワイプして支払う)モード:「スワイプして支払う」特徴(又は単に「スワイプ」)を使用して、ユーザがモバイルデバイスのタッチスクリーン152(
図10A~
図10D)上又はモバイルデバイス150に関連する他の入力デバイスにおいて指を素早く振り払う、ユーザのモバイルデバイス150で実施されるユーザの動作(又は他の所定のインタラクション)を指す。ユーザの視点から、ユーザが範囲内にいる場合、予めインストールされたモバイルアプリケーション140は、支払い受諾ユニット120(例えば、自販機)に自動的に接続する。モバイルアプリケーション140は、ユーザが「スワイプ」して支払い金額を支払い受諾ユニット120に送金する、プリペイド残高を(タッチスクリーン152上に)表示し得る。ユーザは、モバイルデバイス150のタッチスクリーン152上及び/又は支払い受諾ユニット120のディスプレイ122、124(
図19)上において送金済みの資金(fund)を認識し得る。トランザクションは、ユーザが選択を支払い受諾ユニット120に入力し、支払い受諾ユニット120が製品又はサービスを提供することで、あたかも現金が機械120に挿入されたかのように完了する。選択が行われた後、釣り銭がモバイルデバイス150に返却され、これは、モバイルデバイス150のタッチスクリーン152上で見ることができる。
【0031】
ハンズフリーモード:「ハンズフリー支払い」特徴(又は単に「ハンズフリー」)は、「お気に入り」支払い受諾ユニット120(例えば、ユーザの仕事場又は学校にある頻繁に使用する自販機)と併用される可能性が最も高い。ユーザの視点から、ユーザは、お気に入りの支払い受諾ユニット120に近づき、支払い受諾ユニット120のディスプレイ122、124(
図19)が利用可能な資金を表示していることに気付き、支払い受諾ユニットの入力機構(例えば、
図19に示されるボタン126又はタッチスクリーンディスプレイ124)を使用して製品又はサービスを選択し、提供されたサービス又は製品を取り出す。このように簡単である。より具体的には、ユーザが範囲内にいる場合、予めインストールされたモバイルアプリケーション140は、支払い受諾ユニット120(例えば、自販機)に自動的に接続する。ユーザは、モバイルデバイス150をポケット、財布、ブリーフケース、バックパック、又は他のキャリア内に入れたままであり得る。ユーザが支払い受諾ユニット120に近づき、支払い受諾ユニット120の概ね「腕の長さ」の距離(例えば、3~5フィート)にあるとき、ユーザは、支払い受諾ユニット120のディスプレイ122、124(
図19)上において送金済みの資金を認識し得る。トランザクションは、ユーザが選択を支払い受諾ユニット120に入力し、支払い受諾ユニット120が製品又はサービスを提供することで、あたかも現金が支払い受諾ユニット120に挿入されたかのように完了する。選択が行われた後、釣り銭がモバイルデバイス150に返却される。
図3は、ハンズフリーモードが利用可能な場合を詳述する。
【0032】
複数自販トランザクション(「複数自販」):手動モード及びハンズフリーモードの両方を連続して複数回(例えば、ループとして実施される)にわたって使用することができ、それにより、ユーザは、複数の購入を行い得る。ユーザは、最初の選択をし、製品(又はサービス)を受け取った後、支払い受諾ユニット120のディスプレイ122、124(
図19)上において追加の資金が利用可能であったことを認識する。ユーザは、もう一回選択し(又は複数選択し)、追加の製品(又はサービス)を受け取ることができる。より具体的には、ディスプレイ122、124(
図19)は、あたかもトランザクションが完了したかのようにリセットし得るが、次にユーザが依然として範囲内に立っているため、モバイルアプリケーション140は、更なるクレジットを支払い受諾ユニット120に送信し、2回目の購入を可能にする。ユーザが離れると、システムはクリアする(例えば、使用されなかった資金をモバイルデバイス150のアプリケーション140に返却する)。
【0033】
上述した特徴は、単独で又は本明細書に記載の他の特徴と組み合わせて、1千億ドルの自動小売り業界に革命をもたらす。ハードウェアは、非常に低コストであり、機械120においてセルラ接続が必要ないため、繰り返し発生する料金がない。本明細書に記載されるモバイルデバイス-機械支払い処理システムを使用して、機械120のオペレータは、購入者による訪問頻度及び各訪問で販売されるアイテム数を増加させることができる。
【0034】
本明細書に記載されるモバイルデバイス-機械支払い処理システムは、モバイルデバイス150を介して機械120への支払いを可能にする装置、システム、及び/又は方法として実施され得る。モバイルデバイス-機械支払い処理システムは、図面を参照してよりよく理解され得るが、示されるモバイルデバイス-機械支払い処理システムが限定の性質である意図はない。
【0035】
定義
モバイルデバイス-機械支払い処理システム及び図を説明する前に、用語の幾つかを明確にすべきである。用語及び語句は、本明細書全体を通して、追加の定義及び/又は例を有し得ることに留意されたい。特に別段のことが定義される場合を除き、言葉、語句、及び頭字語には、当技術分野における通常の意味が与えられる。以下の段落は、本明細書で使用される用語及び語句の定義の幾つかを提供する。
【0036】
アダプタモジュール100:
図1及び
図2に示されるように、アダプタモジュール100(本明細書では「支払いモジュール100」と呼ばれることもある)は、機械120(支払い受諾ユニット120)に設置される物理的デバイスである。示されるアダプタモジュール100は、機械120のマルチドロップバス(MDB)内に直列に挿入され得るインラインドングル(ソフトウェアを有するハードウェアデバイス)デバイスである。アダプタモジュール100は、機械120とモバイルデバイス150との間の通信を橋渡しする。1つのユニークな構成要素として説明されるが、アダプタモジュール100は、複数のデバイスとして実施され得、又は他のデバイス(例えば、機械120の構成要素)に統合され得ることに留意されたい。そのユニークな構成要素形態において、アダプタモジュール100は、機械120に容易に挿入され得、したがって、機械120は、アダプタモジュール100を用いて新しい特徴を実行することが可能である。
図20は、アダプタモジュール100に関連する構成要素を示す。
図20に示されるように、アダプタモジュール100の通信ユニット770は、短距離通信機能776(例えば、Bluetooth(登録商標)メカニズム)を含む。示される例は、構成要素が互いに関連する限り、互いに関連する複数の別個の構成要素に分割され得、又はかかる例は、他の技術(例えば、コンピュータ又は支払い受諾ユニット)に組み込まれ得、若しくは他の技術から選択され得る。
【0037】
モバイルデバイス150及びアプリケーション140(「モバイルアプリケーション」、「モバイルアプリ」、又は「アプリ」とも呼ばれる):一般に、モバイルデバイス150は、ユーザのパーソナルモバイルデバイス150であり得る。モバイルデバイス150(モバイルアプリケーション140を有する)は、アダプタモジュール100(支払い受諾ユニット120に関連付けられる)とサーバ130との間の通信の橋渡しとして機能する。しかしながら、モバイルデバイス150及びアプリケーション140は、橋渡しする通信(伝送)が暗号化されるという点で「信頼」されていない。暗号化(セキュア化)された通信は、モバイルデバイス150によって復号化不可能である(暗号化不可能、読み取り不可能、及び/又は使用不可能)。これは、アダプタモジュール100とサーバ130との間で渡される通信をハッキングからセキュア且つ安全に保つ。モバイルデバイスは、限定ではなく、スマートフォン、タブレット若しくはラップトップコンピュータ、若しくは個人情報端末(PDA)、スマートカード、又は本明細書に記載されるモバイルデバイスと同様の構造及び/若しくは機能を有する既知の若しくはこれから開発される他の技術(例えば、ハードウェア-ソフトウェア組み合わせ)を含む。モバイルデバイス150は、好ましくは、実行中のアプリケーション(例えば、アプリケーション140)を有する。用語「アプリ」は、本明細書に記載される特徴を実施可能なあらゆるソフトウェアプログラムを広く包含するために使用される。
図10A~
図10Dは、モバイルデバイス150によって表示されるアプリケーション140のユーザインターフェースを示す。語句「モバイルデバイス」は、別段のことが特に示される場合を除き、関連するアプリを含むものと仮定され得ることに留意されたい。同様に、「アプリ」は、別段のことが特に記される場合を除き、関連するモバイルデバイスで実行中であると仮定され得ることに留意されたい。
図21は、モバイルデバイス150に関連する構成要素を示す。示される例は、構成要素が互いに関連する限り、互いに関連する複数の別個の構成要素に分割され得、又はかかる例は、他の技術(例えば、携帯電話自体)に組み込まれ得、若しくは他の技術から選択され得る。
【0038】
支払い受諾ユニット120(又は機械120):支払い受諾ユニット120(又は機械120)は、製品及び/又はサービスを供給するために支払いを要求する機器である。支払い受諾ユニット120は、自販機、パーキングメータ、料金所、セルフ式洗濯機及び乾燥機、アーケードゲーム、キオスク、写真ブース、料金所、トランジットチケット分配器、及び他の既知の又はこれから開発される支払い受諾ユニット120であり得る。幾つかの支払い受諾ユニット120は、例えば、クレジットカード、デビットカード、及びモバイルデバイスからの支払いを受け入れることにより、キャッシュレス支払い(現金(紙幣及び硬貨)以外の支払い)を受け入れることができる。
【0039】
ネットワーク接続:この考察では、永続的なネットワーク接続は、継続中(例えば、専用接続、専用オンライン接続、及び/又はハードワイヤード接続)又は需要に応じてアクセス可能(例えば、機械が一時的にサーバへの接続を行う能力又はユーザがモバイルデバイスからサーバに接続する能力)な有線又は無線通信接続である。通常、永続的なネットワーク接続は、「長距離通信技術」又は「長距離通信プロトコル」(例えば、ハードワイヤード、電話回線網技術、セルラ技術(例えば、GSM、CDMA等)、Wi-Fi技術、広域ネットワーク(WAN)、ローカルエリアネットワーク(LAN)、又は既知の若しくはこれから開発される、インターネットを介した任意の有線若しくは無線通信技術)を介して行われてきた。従来、現金以外の支払いを受け入れる機械は、支払いを促進するために、ネットワークへの永続的な(継続中又は需要に応じてアクセス可能)接続を必要とする。これは、例えば、クレジットカード及びデビットカードを受け入れる機械に対して当てはまる。本明細書に記載される支払い受諾ユニット120は、従来の永続的なネットワーク接続を必要としない。ユーザのモバイルデバイス150は、アダプタモジュール100とサーバ130との間の通信の橋渡しとして機能する。ユーザのモバイルデバイス150とサーバ(例えば、システム管理サーバ130及び/又は資金調達ソースサーバ160)との間の通信は、長距離通信技術を使用して行われる。ユーザのモバイルデバイス150と支払い受諾ユニット120のアダプタモジュール100との間の通信は、「短距離通信技術」又は「短距離通信プロトコル」(例えば、Bluetooth(Bluetooth 4.0、Bluetooth Smart、Bluetooth Low Energy(BLE)、近距離通信(NFC)、超広帯域(UWB)、無線周波識別(RFID)、赤外線無線、誘導無線、又は既知の若しくはこれから開発される短距離(約100フィート以下)の通信に使用することができる任意の有線若しくは無線技術)を使用して行われる。したがって、アダプタモジュール100も支払い受諾ユニット120も従来の永続的な長距離無線ネットワーク接続を必要としない。図に示される通信技術は、代替の同様の通信技術で置換され得、したがって、特定の示される通信技術は限定を意味しない。例えば、Wi-Fi技術は、別の長距離通信技術で置換することができる。
【0040】
サーバ:サーバは、支払い処理システムを実行している企業によって運営され得るホスト処理サーバである。各ユーザにとって、サーバ130は、好ましくは、サーバ130が会計を維持する、指定された資金の少なくとも1つの「残高」($0であり得る)を有する少なくとも1つの「仮想ウォレット」を保持する。残高は、例えば、「現金」を表し得、又は特定の状況下で使うことができる資金を表す「販売促進価値(promotional value)」であり得る。これらの資金が枯渇し始める場合、追加の資金を指定及び/又は送金する必要があることをユーザに通知し得る(例えば、モバイルデバイス150上のアプリケーション140を介して)。代替的に、他のソース(例えば、資金調達ソースサーバ160)からの資金を自動的に送金して、所定の残高を回復し得る。残高は、プロモーション(例えば、獲得したポイント又はクーポン)に基づいて増大することもできる。
図22に示されるように、サーバは、適切なプロセッサ950、メモリ960(ギフトカードと同様にしてユーザの残高の会計を維持する)、及び通信システム970を含む。
図22に示されるように、サーバ130の通信ユニット970は、長距離通信機能972(例えば、セルラ技術及び/又はWi-Fiメカニズム)を含む。サーバ130は、メッセージの暗号化及び復号化を行うセキュリティユニット955も含む。サーバ130は、認可要求(本明細書では「AuthRequest」と呼ばれることもある)をアダプタモジュール100から受信し(モバイルデバイス150を介して)、資金が利用可能な場合、資金の認可承諾(本明細書では「AuthGrant」又は「認可承諾トークン」と呼ばれることもある)を返す。
図22は、サーバ130に関連する構成要素を示す。示される例は、構成要素が互いに関連する限り、互いに関連する複数の別個の構成要素に分割され得、又はかかる例は、他の技術(例えば、コンピュータ又はメインフレーム)に組み込まれ得、若しくは他の技術から選択され得る。
【0041】
宣伝の存在:各アダプタモジュール100は、ゾーン102、104、106内のモバイルデバイスに信号(宣伝ブロードキャスト信号)をブロードキャストすることにより、その存在を宣伝する。各アダプタモジュール100は、他のアダプタモジュールの宣伝を取得する(listen)ことができる。
【0042】
受信信号強度インジケータ(RSSI):アダプタモジュール100は、自己較正信号強度を有し、ゾーン閾値(例えば、支払いゾーン閾値及び認可ゾーン閾値)を決定し得る。ユーザが支払い受諾ユニット120からアイテム(製品又はサービス)を選択するとき、受信信号強度インジケータ(RSSI)がログ記録される。このとき、ユーザが支払い受諾ユニット120から「腕の長さ」(購入するために機械の前に立っているユーザの距離を近似した所定の長さであり得る)の距離内にいると仮定する。数学的計算(すなわち、範囲内ヒューリスティック)を行い、モバイルデバイス150のアプリケーション140によって支払いをトリガーすべきポイントである最適なRSSI閾値を導出する。閾値は、支払い受諾ユニットに固有であり得、時間期間にわたって変わり得る。この最適なゾーン閾値は、好ましくは、初期ハンドシェーク中にモバイルデバイス150に報告される。
【0043】
範囲内ヒューリスティック:ユーザが認可ゾーン104及び/又は支払いゾーン102にいるときを特定するためのRSSI閾値を決定する数学的計算。この計算は、多くの過去のデータ点、及び特にモバイルデバイス150が使用中である、支払い受諾ユニットタイプ等のトランザクション固有の情報を考慮することができる。好ましくは、RSSIは、ユーザが選択をしている間(これは、ユーザが確実に「範囲内」にいる、全プロセス中のある時間である(例えば、ユーザは、機械120と物理的にインタラクションしているため、機械120から腕の長さのところにいることになる)、ログ記録される。ユーザが選択をしている間、ユーザのモバイルデバイス150のタイプ、加速度計データ(例えば、ユーザが移動中であるか若しくは静止しているか)及び/又は他の情報もログ記録し得る。アダプタモジュール100は、支払いゾーン102の基準RSSIを機械120に与えることができ、アプリケーション140は、アプリケーション140がインストールされた特定のモバイルデバイス150に基づいて+/-調整を行うことができる。ある時間期間にわたり、支払い処理システムは、追加のデータ点に基づいてそれ自体を改良し続ける。
【0044】
認可要求(「AuthRequest」):ユーザが認可ゾーン104に入ると、モバイルデバイス150は、アダプタモジュール100に通知し、アダプタモジュール100は、セキュア化された認可要求(例えば、暗号化された認可要求)を「メッセージ」(通信又は伝送と呼ばれることもある)としてモバイルデバイス150を介してサーバ130に送信する。暗号化は、処理ユニット750及び/又はメモリ760に関連し得るセキュリティ技術(例えば、暗号化手段及び復号化手段)を用いてセキュリティユニット755(
図20)によって実行され得る。重要なことに、AuthRequestは、トランザクションの認可要求ではなく、資金の認可要求である。資金の目的はサーバ130と無関係である。
【0045】
認可承諾トークン(「AuthGrant」):これは、アダプタモジュール100に対応する一意の秘密鍵を有するサーバ130のセキュリティ技術(例えば、暗号化手段及び復号化手段)を用いてセキュリティユニット955(
図22)によって暗号化された「メッセージ」(通信又は伝送とも呼ばれる)である。セキュア化された認可承諾(例えば、暗号化された認可承諾)は、サーバ130からモバイルデバイス150を介してアダプタモジュール100にメッセージの形態で渡される。しかしながら、モバイルデバイス150は、メッセージを復号化及び/又は読み取ることができない。認可承諾は、認可要求に応答するものである。AuthGrantによって承認される資金額は、限定ではなく、利用可能な資金額(若しくは資金が利用可能でない場合、ミニローンを承認することができる)、予め認可された金額(例えば、サーバによって設定され、セットアップ中にユーザによって設定され、資金調達ソースから設定され、若しくは標準金額)、時間による制限(例えば、1時間当たり特定の金額のみ若しくは特定の日時で所定の金額)、機械にあるアイテムの最高金額(若しくは機械内の2つ若しくは3つのアイテムに十分な金額)への制限、又はこれら及び他の要因の1つ若しくは複数を含む要因によって決まり得る。重要なことに、AuthGrantは、資金を利用できるようにするが、トランザクションを認可しない。AuthGrantは、所定の時間期間内に使用されない場合に期限切れし得るという点で関連する期限切れ期間を有し得る。AuthGrantが期限切れするまでの時間長は、限定ではなく、ユーザの信用性(例えば、ユーザが支払い処理システム又は何らかの既知のプロバイダ(例えば、クレジットカードプロバイダ、銀行、又はクレジットユニオン)と長い履歴を有すること、ユーザが良好なクレジット格付けを有すること、若しくはユーザが大きいウォレット残高を有すること)、予め認可された時間期間(例えば、サーバによって設定され、セットアップ中にユーザによって設定され、資金調達ソースによって設定され、若しくは標準の時間期間)、時間による制限(例えば、朝食、昼食、及び夕食中のより長い時間等の特定の日時での所定の時間期間)、機械若しくは機械内で販売される製品若しくはサービスによる制限、機械の近くの他のユーザの数による制限(例えば、混雑している機械の場合、AuthGrantはより早く期限切れし得る)、又はこれら及び他の要因の1つ若しくは複数を含む要因によって決まり得る。AuthGrantは、期限切れするまで、又はその有効性を終了させる何らかの他のイベント(例えば、ユーザがキャンセルする)が発生するまで有効なままである。これは、通常の状況下において、モバイルデバイス150が、ユーザが購入を行うのに十分な時間だけ持てるようにする所定の時間期間にわたって資金の使用を認可するAuthGrantを保持することを意味する。認可された金額は、仮想「ウォレット」内に保持される「ウォレット残高」と見なされ得る。
【0046】
同期:時間は、サーバ130からアダプタモジュール100に同期され得る。サーバ130は、暗号化されたメッセージを用いて時間情報を送信し、アダプタモジュール100は、メッセージ内に符号化された時間を同期に使用する。
【0047】
モバイルデバイス-機械支払い処理システム及びその構成要素は、関連するハードウェア、ソフトウェア、及び/又はファームウェア(ハードウェア及び/又はソフトウェアの変形、サブセット、又はハイブリッド)を有し得る。「ハードウェア」という用語は、少なくとも1つの「処理ユニット」、「プロセッサ」、「コンピュータ」、「プログラマブル装置」、及び/又は命令若しくはステップを実行可能な他の既知の若しくはこれから開発される技術(
図20の処理ユニット750、
図21の処理ユニット850、及び
図22の処理ユニット950として示される)を含む。「ソフトウェア」という用語は、少なくとも1つの「プログラム」、「サブプログラム」、「一連の命令」、又は他の既知の若しくはこれから開発されるハードウェア命令若しくはハードウェア可読プログラムコードを含む。ソフトウェアは、ハードウェア(又はファームウェア)にロードされて、ソフトウェアがハードウェアで実行されて、本明細書に記載される機能を実施する構造をもたらすような「機械」を生成し得る。更に、ソフトウェアは、ハードウェア(又はファームウェア)にロードされて、モバイルデバイス-機械支払い処理システム(及びその構成要素)に、本明細書に記載される特定の様式で機能させ得るか、又は本明細書に記載される一連の動作ステップを実行させ得る。アダプタモジュール100、モバイルデバイス150、及び支払い受諾ユニット120等の「ハードウェア」は、ロードされたソフトウェア(例えば、プログラム及びアプリ)を有し得る。「ハードウェアにロードされる」という語句は、ハードウェアに関連するか、又はハードウェアによってアクセス可能なメモリ(
図20のメモリ760、
図21のメモリ860、及び
図22のメモリ960として示される)にロードされることも含む。「メモリ」という用語は、限定ではなく、取り付けられた記憶媒体(例えば、ハードディスクドライブ、ネットワークディスクドライブ、サーバ)、内部記憶媒体(例えば、RAM、ROM、EPROM、フラッシュEPROM、又は任意の他のメモリチップ若しくはカートリッジ)、リムーバブル記憶媒体(例えば、CD、DVD、フラッシュドライブ、メモリカード、フロッピー(登録商標)ディスク、フレキシブルディスク)、ファームウェア、及び/又は他の既知の若しくはこれから開発される記憶媒体を含む任意のタイプのハードウェア(若しくは他の技術)可読媒体(コンピュータ可読記憶媒体とも呼ばれる)を包含するものとして定義される。目的に応じて、メモリは一時的及び/又は非一時的であり得る。適切な「通信路」、「伝送路」、及び支払い処理システム上の2つの要素(例えば、アダプタモジュール100、モバイルデバイス150、支払い受諾ユニット120、ハードウェアシステム及びサブシステム、及びメモリ)間の任意のタイプの接続を含む、信号を伝送する他の手段を介した適切な「メッセージ」、「通信」、「信号」、及び/又は「伝送」(限定ではなく、データ、コマンド、ビット、シンボル、電圧、電流、電磁波、磁場若しくは磁性粒子、光場若しくは光学粒子、及び/又はそれらの任意の組み合わせを含む様々なタイプの情報及び/又は命令を含む)は、制御及び通信を促進するのに適切なものとして使用される。
【0048】
「プログラム」及び「サブプログラム」という用語は、コンピュータで実行される命令が、本明細書に記載されるか又は図に示される機能を実施する構造をもたらすような「機械」を生成するためにコンピュータにロードされ得るソフトウェア(すなわち、コンピュータプログラム命令又はコンピュータ可読プログラムコード)として実施され得る一連の命令として定義されることに留意されたい。更に、これらのプログラム及びサブプログラムは、コンピュータにロードされ得、それにより、命令は、フローチャートの1つ又は複数のブロックにおいて指定される機能を実施する命令構造を含む製品を生成するような特定の様式で機能するようにコンピュータに命令することができる。プログラム及びサブプログラムはまた、コンピュータにロードされて、コンピュータで実行される命令がフローチャートの1つ又は複数のブロックにおいて指定される機能を実施するステップを提供するようなコンピュータ実施プロセスを生成するように、一連の動作ステップがコンピュータで又はコンピュータによって実行されるようにし得る。「コンピュータにロードされる」という語句は、コンピュータのメモリ、又はコンピュータに関連する若しくはアクセス可能なメモリにロードされることも含む。相互作用するが別個であるプログラム及びサブプログラムが、アダプタモジュール100、サーバ130、及びモバイルデバイス150(モバイルアプリケーション140を含む)に関連付けられ得、これらのプログラム及びサブプログラムは、より小さいサブプログラムに分割されて特定の機能を実行し得る。
【0049】
「メッセージ」、「通信」、「信号」、及び/又は「伝送」という用語は、限定ではなく、データ、コマンド、ビット、シンボル、電圧、電流、電磁波、磁場又は磁性粒子、光場若しくは光学粒子、及び/又はそれらの任意の組み合わせを含む様々なタイプの情報及び/又は命令を含む。例えば、送信機、受信機、及び送受信機を含む適切な技術を使用して「通信」、「信号」、及び/又は「伝送」を実施し得る。本明細書に記載される「通信」、「信号」、及び/又は「伝送」は、意図される目的に適切な技術を使用する。例えば、ハードワイヤード通信(例えば、有線シリアル通信)は、ハードワイヤード通信に適切な技術を使用し、短距離通信(例えば、Bluetooth)は、近傍の通信に適切な技術を使用し、長距離通信(例えば、GSM、CDMA、Wi-Fi等)は、距離のある遠隔通信に適切な技術を使用する。各タイプの通信に適切なセキュリティ(例えば、SSL又はTLS)が本明細書に含まれる。セキュリティユニット755及び955は、メッセージをセキュア化する技術を含む。セキュリティ技術は、例えば、暗号化/復号化技術(例えば、ソフトウェア又はハードウェア)であり得る。暗号化/復号化は、主に一意の秘密鍵を使用して実行されるものとして考察されるが、代替の戦略としては、限定ではなく、公開/秘密鍵を使用して実行される暗号化/復号化(すなわち、非対称暗号化)又は既知の若しくはこれから開発される他の暗号化/復号化戦略が挙げられる。特に説明されない場合でも、適切な入力機構及び/又は出力機構は、本明細書に記載される技術の一部であると見なされる。アダプタモジュール100の通信ユニット770(
図20に示される)は、アダプタモジュール100のオスアダプタ720及びメスアダプタ730と関連して(例えば、機能通信的に直接又は間接的に)実施され得る適切な入力機構772及び出力機構774を含むものとして示される。モバイルデバイス150の通信ユニット870(
図21に示される)は、サーバ130と通信するための長距離通信(セルラ及び/又はWi-Fiメカニズム等の長距離通信機能872として示される)及びアダプタモジュール100と通信するための短距離通信(Bluetoothメカニズム等の短距離通信機能876として示される)の両方のメカニズムを含む。
【0050】
「通信」、「信号」、及び/又は「伝送」に関連して使用される場合、「提供する」又は「提供」という用語(及びそれらの変形)は、「伝送する」及び「伝送」を含む提供の標準的な意味を包含することが意図されるが、「通信」、「信号」、及び/又は「伝送」が「受信される」(取得を意味することもできる)限り、非従来的な提供に使用することもできる。「伝送する」及び「伝送」という用語(及びそれらの変形)は、伝送の標準的な意味を含むことが意図されるが、「通信」、「信号」、及び/又は「伝送」が「送信」される限り、非従来的な伝送に使用することもできる。「受信する」及び「受信」という用語(及びそれらの変形)は、受信の標準的な意味を含むことが意図されるが、「通信」、「信号」、及び/又は「伝送」が「取得される」限り、取得する非従来的な方法に使用することもできる。
【0051】
「関連する」という用語は、一体又は元の、変更された、取り付けられた、接続された(機能的に接続されることを含む)、近傍に位置する、及び/又はアクセス可能であることを意味するものと定義される。例えば、ユーザインターフェース(例えば、従来のディスプレイ122(
図19)、タッチスクリーンディスプレイ124(
図19)、キーパッド126(
図19)、ボタン126(
図19、キーパッド126の一部として示される)、キーボード(図示せず)、及び/又は他の入力若しくは出力機構)が支払い受諾ユニット120に関連する場合、ユーザインターフェースは、支払い受諾ユニット120に元々あるものであり得、支払い受諾ユニット120内で変更され得、支払い受諾ユニット120に取り付けられ得、且つ/又は支払い受諾ユニット120の近傍にあり得る。同様に、アダプタモジュール100は、アダプタモジュール100が支払い受諾ユニット120に元々あるものであり得、支払い受諾ユニット120内で変更され得、支払い受諾ユニット120に取り付けられ得、且つ/又は支払い受諾ユニット120の近傍にあり得るという点で、支払い受諾ユニット120に関連付けられ得る。
【0052】
システム概説
図5、
図6、及び
図7は、一緒にモバイルデバイス-機械支払いシステムの主要構成要素及びそれらの間のインタラクションを示す。
【0053】
示されるように、アダプタモジュール100は、機能的に、有線シリアル接続を介して支払い受諾ユニット120に双方向的に接続され、それによりセキュリティは必要ない。アダプタモジュール100は、機能的に、短距離通信技術(例えば、Bluetooth接続)を介してモバイルデバイス150(及びそれにインストールされたモバイルアプリケーション140)とも双方向的に接続される。モバイルデバイス150は、「信頼」されるリンクではない(例えば、ユーザによってハッキングされる恐れがある)ため、セキュア化された通信(伝送)のみがアダプタモジュール100とモバイルデバイス150との間で渡される。これは、通信をハッキングからセキュア且つ安全に保つ。モバイルデバイス150(及びそれにインストールされたモバイルアプリケーション140)はまた、機能的に、好ましくは適切なセキュリティ(例えば、SSLセキュリティ)を有する長距離通信技術(例えば、Wi-Fi又はセルラ接続)を介してシステム管理サーバ130及び/又は資金調達ソースサーバ160に双方向的に接続される。モバイルデバイス150とシステム管理サーバ130との間のセキュリティは、機密データを含み得かつ暗号化されないことがある、モバイルデバイス150からシステム管理サーバ130への通信を保護するという利点を有する。システム管理サーバ130及び資金調達ソースサーバ160は、SSLセキュリティを有する有線インターネット接続を介して接続され得る。システム管理サーバ130は、SSLセキュリティを有する有線インターネット接続を介してオペレータのサーバ170に接続され得る。購入トランザクションを実施する必要はないが、他の目的で(例えば、在庫調べ)、オペレータのサーバ170は、ハンドヘルドコンピュータ同期又はセルラ接続を使用して支払い受諾ユニット120に接続され得る。
【0054】
また、一意の秘密鍵を使用して、暗号化されたメッセージをアダプタモジュール100とシステム管理サーバ130との間でセキュアに送信し得る(ただし、暗号化された伝送は、モバイルデバイス150を通してルーティングされる可能性が最も高い)。サーバ130は、各アダプタモジュール100の秘密鍵を記憶し、この鍵は、アダプタモジュール100及びサーバ130のみが知っている。仲介物はこの鍵に関与しない(特にモバイルデバイス150は関与しない)。アダプタモジュール100及びサーバ130がメッセージ(例えば、AuthRequest及びAuthGrant)を通信するとき、アダプタモジュール100のセキュリティユニット755は、その秘密鍵を用いてメッセージを暗号化し、メッセージをモバイルデバイス150に渡す。モバイルデバイス150(好ましくは、メッセージを復号化することができない)は、暗号化されたメッセージをサーバ130に渡す。サーバ130は、アダプタモジュール100のセキュリティユニット955及び一意の秘密鍵を使用してメッセージを復号化することができる。サーバ130のセキュリティユニット955は、この同じ一意の秘密鍵を使用して、アダプタモジュール100へのメッセージを暗号化し、アダプタモジュール100に中継するよう、メッセージをモバイルデバイス150に送信し、アダプタモジュール100は、アダプタモジュール100のセキュリティユニット755及び一意の秘密鍵を使用してメッセージを復号化することが可能である。
【0055】
図7は、アダプタモジュール100、モバイルデバイス150、及びシステム管理サーバ130間の自販シーケンス(通信及びメッセージングの左側の番号)を有する特定の通信及びメッセージングを示す。これらの通信について、概略的な流れ図(
図8A~
図8G)及びフローチャート(
図9A~
図9E)に関する考察においてより詳細に考察する。
【0056】
図5、
図6、及び
図7は例であり、モバイルデバイス-機械支払いシステムの理解を促進することが意図されることに留意されたい。例えば、示される長距離通信技術は、既知の又はこれから開発される代替の長距離通信技術で置換され得、示される短距離通信技術は、既知の又はこれから開発される短距離通信技術で置換され得、示されるセキュリティは、既知の又はこれから開発される代替のセキュリティで置換され得る。示される接続は例であることが意図され、示されていない実装形態が存在し得る。示される構成要素は、例えば、多数が含まれ得る場合に1つのみのモバイルデバイス150(又は機械120、アダプタモジュール100、又はサーバ130)が示されるという点で簡易化されている。最後に、ステップの順序は変更可能であり、幾つかのステップは削除され得る。
【0057】
アダプタモジュール
図11~
図18は、アダプタモジュール100a(一般にアダプタモジュール100と呼ばれる)の図を示す。アダプタモジュール100は、業界基準のマルチドロップバス(MDB)と共に機能するように予め構成された比較的低コストのハードウェア構成要素である。MDB技術を有さない機械では、アダプタモジュール100は、他の直列プロトコルで機能するか、又はスイッチをアクティブ化するように構成又は設計することができる。基本的に、アダプタモジュール100は、他の代替の支払い形態(例えば、現金)と同じように支払い受諾ユニット120での支払いの確立をシミュレートする。
【0058】
示されるアダプタモジュール100は、好ましくは、例えば、機械120のMDB内にインライン挿入されるインラインドングルとして使用されるように設計される。MDB技術で使用されるワイヤは、オス及びメス接続端部又はアダプタを使用して周辺機器を取り付けられるようにする。自販機の場合、接続端部又はアダプタを有するワイヤが存在して、支払い受け取り機構(例えば、硬貨機構)の取り付けを可能にする。MDBオスアダプタ700及びMDBメスアダプタ710は別個であり得る(
図17及び
図18に示されるように)。
図11、
図17、及び
図18におけるアダプタモジュール100aは、オスアダプタ720及びメスアダプタ730を有する。アダプタモジュール100aは、ワイヤと直列(「インライン」)に差し込まれ(挿入され)得る。例えば、MDBメスアダプタ710は、アダプタモジュール100のオスアダプタ720に接続され得、MDBオスアダプタ700は、アダプタモジュール100のメスアダプタ730に接続され得る。結果的に生成されるインライン構成を
図19に示す。アダプタモジュール100は、パススルー通信を可能にするように設計され、それにより、仮にモバイルデバイス-機械支払い処理システムが有効でない(例えば、特定の購入に対して又は単にオフになる)場合でも、あたかもアダプタモジュール100がそこに存在しないかのようにMDB機能と機械120とが正常に機能することに留意されたい。
【0059】
ハンズフリーモード
手短に言えば、ハンズフリーモードが利用可能な場合、ユーザの視点からは、ハンズフリーモードでは、ユーザは、お気に入りの支払い受諾ユニット120に近づいて、支払い受諾システム120に関連付けられたディスプレイ(例えば、
図19に示されるディスプレイ122又は124)が、利用可能な資金(例えば、ウォレット残高)を示すことに気付くことができる。ユーザは、支払い受諾ユニット120に関連付けられた入力機構(例えば、
図19に示されるボタン126又はタッチスクリーンディスプレイ124)を使用して製品又はサービスを選択し、供給されたサービス又は製品を取り出すことになる。
【0060】
モバイルデバイス150との初期ハンドシェーク中(ユーザが範囲内にいるとき)、アダプタモジュール100は、ハンズフリーモードが利用可能であるか否かをモバイルデバイス150に報告する。利用可能な場合、インストールされたモバイルアプリケーション140は、ユーザがモバイルデバイス150とインタラクションする必要なく、支払い受諾ユニット120に自動的に接続する。ユーザは、支払い受諾ユニット120のディスプレイ122、124上において資金が利用可能であることを認識し、選択を支払い受諾ユニット120に入力することにより、あたかも現金が機械120に挿入されたかのように購入トランザクションを完了する。支払い受諾ユニット120は、製品又はサービスを供給する。選択された後、釣り銭はモバイルデバイス150に返却される。
【0061】
ハンズフリー支払いが利用可能であるか否かは、限定ではなく、他のモバイルデバイス150が範囲内にあるか否か、他のアダプタモジュール100が範囲内にあるか否か、任意のアラートがあるか否か、支払いトリガー閾値が広い変動を有し、不安定であるように思えるか否か、又は支払い受諾ユニットのオペレータ(例えば、自販機のオペレータ)が支払い受諾ユニット120に対してハンズフリーモードを無効化することを選択したか否かを含む要因によって決まる。後者の場合、オペレータは、メンテナンスモバイルデバイス150を介して、オペレータのサーバ170及び/又はシステム管理サーバ130を介する場合と同様に、無効化することができる。
【0062】
図3は、ハンズフリー支払い特徴が利用可能であるか否かの判断に使用され得る考慮事項、条件、又は要因を示す表である。「お気に入り?」列から始まり、これは、支払い受諾ユニット120がお気に入りの機械であるか否かを示す。好ましくは、ハンズフリー支払い特徴は、「お気に入り」の支払い受諾ユニット120(例えば、仕事場又は学校にある自販機)と併用される場合にのみ利用可能である。「アラート」列は、ハンズフリー支払い特徴が機能すべきではない何らかの理由(例えば、範囲内のユーザ数が多すぎる)があるか否かに関係し、そのような理由がある場合、ユーザは通知され(警告され)、手動モードを使用してアラートを解決し、及び/又はトランザクションを完了し得る。
図3は、ユーザのモバイルデバイス150上のモバイルアプリケーション140を使用して機械120からハンズフリー購入を行うことが可能な状況及び可能ではない状況を示す。示されるインターフェースが一例であることに留意されたい。例えば、特徴の幾つかは、自動化又は予め選択することができる(左側の列である「タブ」列は、モバイルアプリケーション140上で選択されたタブが「全て」であるか又は「お気に入り」であるかに関連することに留意されたい)。
図10A~
図10Dは、全てこれらのタブを示す。
図3の他の列と異なり、この列は、特にハンズフリー特徴よりもアプリケーション140の機能及びビューにより大きく関係する。タブは、ユーザが、全ての支払い受諾ユニット120について範囲内にいるときに警告されることを望むか、又は「お気に入り」支払い受諾ユニット120についてのみ範囲内にいるときに警告されることを望むかを選択できるようにし、アプリケーション140は適切なビューを示す。)
【0063】
残高表示:ハンズフリーモードで特に有用な(しかし、手動モード及び/又は複数自販シナリオでも利用可能であり得る)モバイルデバイス-機械支払いシステムの任意選択的な特徴は、ユーザのモバイルデバイス150が「クレジット」を支払い受諾ユニット120(ハンズフリー支払い又は手動スワイプのいずれかを介して)に送るとき、ウォレット残高が支払い受諾ユニット120に送信され、次に機械120のディスプレイ122、124上でユーザに対して表示されることである。これは、特に、ハンズフリーモード中、ユーザがモバイルデバイス150を検索せず、したがって残高を知らないことがあるときに有益である。また、複数自販シナリオでは、ユーザは、残高を計算する必要がない。
【0064】
残高が支払い受諾ユニット120によって表示されるハンズフリー複数自販シナリオの例は、以下の通りである:ユーザは、仮想ウォレットに$5.00を有し、その金額が認可された金額である(AuthGrantはモバイルデバイス150に記憶される)。ユーザは、支払い受諾ユニット120に歩み寄り、ハンズフリーモードが有効化され、クレジットが支払い受諾ユニット120に送信された(例えば、短距離通信機能を介して)ため、支払い受諾ユニット120のディスプレイ122、124に$5.00が表示される。ユーザは、機械120とインタラクションする(例えば、ボタンを押す)ことによって$1.50の選択をする。アイテム(製品又はサービス)が供給され、「釣り銭」が仮想ウォレットに「返却」(例えば、短距離通信機能を介して)される。しかし、ユーザが依然として支払いゾーン102内に立っているため、ウォレット残高$3.50が支払い受諾ユニット120に送信され、ユーザがこの時点で$3.50の残高を有することを見ることができるように、表示される。(認可された資金が機械120に残り得、トランザクション間でモバイルデバイス150に返送されないことに留意されたい)。ユーザは、$1.50のアイテムの購入を決め、トランザクションは通常通り(例えば、機械120とインタラクションすることにより)完了する。この時点で、ユーザは、依然として支払いゾーン102内に立っており、支払い受諾ユニット120のディスプレイ122、124上でウォレット残高$2.00を見る。ユーザは、他に何も購入することを望まないと決め、単に歩いて離れる。ユーザが支払いゾーン102から歩いて出ると、クレジットは、機械120からクリアされるが、ユーザは、モバイルデバイス150に一度も触れなかったにも関わらず、ウォレット残高が$2.00であることを知りながら離れる。支払い受諾ユニット120とアダプタモジュール100との間の通信(モバイルデバイス150を介する)は、トランザクションに付随する会計を処理する。残高($2.00)は、サーバ130に技術的に記憶され、モバイルデバイス150のアプリケーション140において反映され得る。
【0065】
複数の別個ゾーン
図1及び
図2に示されるように、アダプタモジュール100によって実行される機能は、別個のゾーンに分割することができる:第1の「通信ゾーン」(例えば、「Bluetooth範囲」106)、第2の「認可ゾーン」104、及び第3の「支払いゾーン」102。支払いゾーン102は、認可ゾーン104よりも小さいか、又は認可ゾーン104に等しい(完全に重なる)。換言すれば、支払いゾーン102は、認可ゾーン104内にあるか、又は認可ゾーン104と同一の広がりを有する。支払いゾーン102は、支払いゾーン102と認可ゾーン104との比が0.01:1~1:1の範囲となる、認可ゾーン104の部分集合である。必ずしも一定の比である必要はなく、異なる支払い受諾ユニット120間で、異なるモバイルデバイス150間で、異なるユーザ間で、且つ時間の経過に伴って、異なることができる。ゾーン102、104、106は、均一の形状を有するものとして示されるが、形状が可変であるという点で、ゾーンが必ずしも均一(又は時間の経過に伴って一定)である必要はない。例えば、Bluetooth範囲106の形状は、室内の障害物及び支払い受諾ユニット120のドア/壁材料等の環境状況に応じて変化し得る。
【0066】
Bluetooth範囲106(本明細書では「通信ゾーン」と呼ばれることもある):一番外側の範囲は、Bluetooth範囲106(
図1及び
図2に示される)である。これは、アダプタモジュール100がその存在をブロードキャストすることが可能なエリアである。大半の状況において、Bluetooth範囲106は、実際のデータがモバイルデバイス150とアダプタモジュール100との間で交換されないという点で受動的な範囲である。Bluetooth範囲106内にある間、モバイルデバイス150はRSSI(受信信号強度インジケータ)を監視する。
【0067】
認可ゾーン104:中間領域は、認可ゾーン104(
図1及び
図2に示される)である。これは、RSSIに基づいて計算されるエリアである。述べたように、モバイルデバイス150は、Bluetooth範囲106内にある間、RSSIを監視する。RSSIが範囲内ヒューリスティックに基づいて特定の所定の閾値に達する場合、モバイルデバイス150は、認可ゾーン104内にあるものと見なすことができる。認可ゾーン104内において、モバイルデバイス150は、アダプタモジュール100への接続(例えば、SSL保護(
図6)を用いたBluetooth接続(
図5))を確立し、アダプタモジュール100にその存在を通知する。アダプタモジュール100とのハンドシェークの成功後、モバイルデバイス150は、アダプタモジュール100を登録し、アダプタモジュール100は、モバイルデバイスのネットワーク接続(例えば、SSL保護(
図6)を用いたWi-Fi又はセルラ接続(
図5))を介してサーバ130に認可を要求する。モバイルデバイス150及びアダプタモジュール100は、この時点で非排他的な関係を有することに留意することが重要である。アダプタモジュール100は、認可ゾーン104内にある全てのモバイルデバイス150の登録を収集し得る。
【0068】
認可は、ユーザが支払いゾーン102(
図1及び
図2に示される)に入るときの準備として行われる。認可は、設定された時間期間(例えば、5分)で期限切れするため、モバイルデバイス150が期限切れ時に認可ゾーン104内に依然としている場合、アダプタモジュール100は、別の認可を求め且つ受信する。これは、設定された回数にわたって続けられる(例えば、限度は3回であり得、トランザクションを完了せずに長時間にわたって認可ゾーン104内に留まり得るモバイルデバイスが多数回認可される事例を制限する)。ユーザが支払いゾーン102に入る前に認可に失敗した場合(例えば、限度に達した場合)、アダプタモジュール100は、モバイルデバイス150が支払いゾーン102に入るときに認可を要求する(経験まで数秒を追加する)。
【0069】
支払いゾーン102:ユーザが支払いゾーン102に入ると、モバイルデバイス150は、アダプタモジュール100の排他的制御を確立する。確立されると、支払いゾーン102内の他のあらゆるユーザは、「待機」ステータスになる。
【0070】
支払いゾーン102において、支払い処理システムがハンズフリーモードを有し、ハンズフリーモードである場合、支払いを自動的にトリガーすることができる。そのような場合、モバイルデバイス150は、バックグラウンドモードでアプリケーション140を実行中であり、いかなる明示的なユーザインタラクションもなくクレジットを支払い受諾ユニット120に送信する。ユーザは、あたかも現金が支払い受諾ユニット120に挿入され、クレジットを確立するかのように支払い受諾ユニット120でトランザクションを完了する。ユーザがトランザクション(1つ又は複数の購入を含み得る)を完了した後、トランザクションの詳細は、好ましくは、別個のメッセージでモバイルデバイス150及びサーバ130に返される。サーバ130へのメッセージは、好ましくは、アダプタモジュール100の秘密鍵(
図6)を用いて暗号化され、データの完全性を保証する。
図7に示されるように、「秘密鍵」で符号化されたメッセージ(暗号化された自販詳細情報)は、好ましくは、モバイルデバイス150を介して送信される。モバイルデバイス150へのメッセージは、トランザクションを閉じる目的で単独で送信され得る。トランザクションの履歴及び残高は、サーバ130に送信される暗号化メッセージを介してサーバ側で更新される。
【0071】
他の動作モードは、手動モードである。手動モードでは、ユーザは、モバイルデバイス150を起動させ、スワイプして支払いを支払い受諾ユニット120に送信することができる。ユーザは、逆にスワイプして支払いをキャンセルすることもできる。ハンズフリーモードのように、購入トランザクションは、あたかも現金が支払い受諾ユニット120に挿入されたかのように支払い受諾ユニット120で完了する。モバイルデバイス150は、支払いの送信にのみ使用される。選択は、支払い受諾ユニット120で直接行われる。
【0072】
自己較正ゾーン閾値:支払い処理システムの主要であるが任意選択的な特徴は、自己較正支払いゾーンRSSI閾値である。RSSIは、機械毎、環境毎、及びデバイス毎に異なり得るため、支払いがトリガーされる一定の閾値を有することは問題があり得る。本明細書において示唆される手法は、自己較正閾値の生成である。ユーザが支払い受諾ユニット120とインタラクションしているとき(ユーザが支払い受諾ユニット120で選択をしているとき等)、支払い受諾ユニット120は、アダプタモジュール100に通知し、アダプタモジュール100は、RSSI、ユーザのモバイルデバイス150のタイプ、加速度計データ、及び他の情報等の状況をログ記録する。ユーザが支払い受諾ユニット120から腕の長さの距離内にある(ユーザが支払い受諾ユニット120と何らかの物理的なインタラクションをしているため、ユーザは、必然的に腕の長さの距離内にいる)ことを安全に確認することができるのは、この時点である。これは、全トランザクションにおいて、ユーザが支払い受諾ユニット120から腕の長さの距離内にいることが確実であり得る唯一の時点である。
【0073】
図4は、ユーザが支払いゾーン102に入るときに関わるステップの簡易化された集合を示す。特に、
図4は、クレジットが確立され(200)(これは、認可ゾーン104で行われることもあるが、行われない場合には支払いゾーン102で処理される)、ユーザが機械を使用して選択をし(202)、機械がアダプタモジュールに選択を通知し(204)、アダプタモジュールが(任意選択的に)RSSIをログ記録し(206)、購入プロセスが続く(208)ことを示す。過去にログ記録されたRSSIデータを使用して、アダプタモジュール100は、様々な数学的モデルを使用して幾つかの「平均」RSSIの1つを計算する。この「平均」は、従来の平均、移動平均、加重平均、メジアン、又は他の同様の集計関数であり得る。アダプタモジュール100は、関数を実行する前に過去データを事前処理して、上部及び下部データ点、疑わしいデータ点等を削除等することができる。
【0074】
任意選択的に、モバイルデバイス150とアダプタモジュール100とのハンドシェーク中、アダプタモジュール100に送信される情報は、例えば、モバイルデバイス150のモデルを含み得る。モバイルデバイスのモデルに関する受信情報を使用して、アダプタモジュール100は、各モバイルデバイスモデルに1つずつ、複数の支払い閾値を生成することができる。これにより、異なるタイプのBluetooth無線に固有であり得る差異を可能にする。この方法への代替は、アダプタモジュール100がベースライン支払いゾーン閾値をブロードキャストすることであり、モバイルデバイス150は、その特定のモデルタイプに基づいてこのベースラインからのオフセットを使用することができる。支払いゾーン閾値(又はベースラインオフセット)は、特定のタイプのモバイルデバイス(例えば、製造業者、オペレーティングシステム、若しくは構成要素部品による)、モバイルデバイスのモデル、又は個々のモバイルデバイス(各ユーザに固有)に固有であり得る。
【0075】
支払いゾーン閾値が較正されている典型的なシナリオでは、アダプタモジュール100は、任意のモバイルデバイス150が認可ゾーン104内にあると見なす閾値と共にその存在を宣伝する。これは、アダプタモジュール100からモバイルデバイス150への単方向通信である。モバイルデバイス150が認可ゾーン104に入ると、アダプタモジュール100とモバイルデバイス150との間に確立されたハンドシェークがある。このハンドシェーク中、モバイルデバイス150は、そのモデル情報をアダプタモジュール100と共有することができ、アダプタモジュール100は、その特定のモデルの支払いゾーン102閾値を返すことができる。
【0076】
任意選択的に、支払いゾーン閾値の較正に加えて、アダプタモジュール100は、自己較正モデルを認可ゾーン104に適用して、認可ゾーン閾値を較正することができる。支払いゾーン閾値と同様に、認可ゾーン閾値も特定のタイプのモバイルデバイス、モバイルデバイスのモデル、又は個々のモバイルデバイスに固有であり得る。このシナリオでは、アダプタモジュール100は、デバイスタイプによって複数の閾値をブロードキャストし、モバイルデバイス150は、いずれの閾値を適用するかを決定する(又は代替的に、ベースラインをブロードキャストし、モバイルデバイス150は、そのデバイスモデルに基づいてオフセットを使用する)。このシナリオでも、認可ゾーン104は単方向通信である。
【0077】
任意選択的に、計算された(支払いゾーン及び/又は認可ゾーンにおいて)閾値と共に、安全マージンを追加して、ユーザが範囲内にいるが閾値に達していないためモバイルデバイス-機械支払い処理システムがそれを認識しないというシナリオを、最小に抑えることができる。例えば、機械4567でiPhone(登録商標)5に計算されたRSSIが-68dbである場合、モバイルデバイス-機械支払い処理システムは、安全マージン-5dbを追加して、-73dbに閾値を確立し得る。それにより、ユーザの電話がRSSI-73db以上でアダプタモジュール100と通信している場合、モバイルデバイス-機械支払い処理システムは、モバイルデバイス150が支払い受諾ユニット120にクレジットを送信できるようにする。安全マージンは、サーバ130で設定され且つアダプタモジュール100にダウンロードされ得、又はモバイルデバイス150で設定され得、又はアダプタモジュール100自体で設定され得る。
【0078】
任意選択的に、支払いゾーン閾値において、モバイルデバイス150は、他のデータを使用して、支払い受諾ユニット120の排他的制御をいつキャンセルするかを決定し、ユーザが支払いゾーン102から出て移動中であるときを識別することができる。外部データは、モバイルデバイス150からの加速度計データを含むことができる。そのデータを使用して、モバイルデバイス150は、ユーザが支払い受諾ユニット120の前に比較的そのまま立っているか、又はユーザが移動中であるか(実際に支払い受諾ユニット120から離れて歩いているか)を判断することができる。
【0079】
信号非可用性への適応
本明細書に記載されるモバイルデバイス-機械支払い処理システムは、モバイルデバイス150の短距離通信技術(例えば、Bluetoothメカニズム)(
図21において短距離通信機能876として示される)及びモバイルデバイス150の長距離通信技術(例えば、セルラ及び/又はWi-Fiメカニズム)(
図21において長距離通信機能872として示される)を使用する。短距離通信機能876は、アダプタモジュール100の短距離通信技術(例えば、Bluetoothメカニズム)(
図20において短距離通信機能776として示される)と通信する。長距離通信機能872は、サーバ130の長距離通信技術(例えば、セルラ及び/又はWi-Fiメカニズム)(
図22において長距離通信機能972として示される)と通信する。モバイルデバイス150(モバイルアプリケーション140を有する)は、アダプタモジュール100(支払い受諾ユニット120に関連付けられる)とサーバ130との間の通信の橋渡しとして機能する。このプロセスは、本明細書に記載され、支払いゾーン102内にセルラ又はWi-Fiカバレッジがある場合に適宜機能する。
【0080】
支払いゾーン102内にセルラ又はWi-Fiカバレッジがない場合の1つの選択肢は、認可ゾーン104又はBluetoothゾーン106内にセルラ又はWi-Fiカバレッジがあるか否かを特定することである。ある場合、ゾーン102、104、106のサイズを適合することができ、タイミングを適合することができる。例えば、モバイルデバイス150が支払いゾーン102内のセルラ又はWi-Fiカバレッジに問題を検出する場合、ユーザは、モバイルデバイス150を他のゾーンに運び(又はモバイルデバイス150が、短距離通信技術を使用して認可ゾーン104又はBluetoothゾーン106内の他のモバイルデバイス150と通信することができ)、それらのゾーンがセルラ又はWi-Fiカバレッジを有するか否かを特定することができる。それらのゾーンがカバレッジを有する場合、モバイルデバイス150とサーバ130との通信を進める(モバイルデバイス150が機械120から離れている場合に先に行う)か、又は遅延させる(モバイルデバイス150が機械120から離れている場合に後に行う)ことができる。これは、ゾーン102、104、106のサイズ又は形状の変更として考えることができる。ユーザが購入を行う機会を有する前に資金の認可(AuthGrant)が期限切れしないように、タイミングも調整する必要がある。これは、ユーザが機械120から離れて移動し、再びセルラ又はWi-Fiカバレッジを有した後、サーバ130への残高更新を行い得ることも意味する。
【0081】
いずれのゾーン102、104、106内にもセルラ又はWi-Fiカバレッジがない場合の別の選択肢は、ユーザがゾーン外にいる間、セルラ又はWi-Fiカバレッジがある場所で認可を取得するというものである。これは、例えば、セルラ又はWi-Fiカバレッジを有さない(又は有することが希である)、アダプタモジュール100が備えられた支払い受諾ユニット120がある場所に(恐らくお気に入りの支払い受諾ユニット120に)行くことになることをユーザが分かっている場合に行われ得る。ユーザは、モバイルアプリケーション140を使用して、所与の範囲内(例えば、50マイル又は所与の場所(例えば、キャンプ場若しくは特定の離れた都市)にある支払い受諾ユニット120に問い合わせて、ゾーン102、104、106内にセルラ又はWi-Fiカバレッジがあるか否かを判断することもできる。次に、ユーザは、モバイルアプリケーション140を使用してサーバ130から事前認可を取得することができる。ここでも、ユーザが購入を行う機会を有する前に資金の認可(AuthGrant)が期限切れしないように、タイミングも調整する必要がある。これは、ユーザが機械120から離れて移動し、再びセルラ又はWi-Fiカバレッジを有した後、サーバ130への残高更新を行い得ることも意味する。この選択肢を実施する機能を有するモバイルデバイス-機械支払いシステムは、支払い受諾ユニット120の近傍にいかなるネットワーク接続も必要とせずにキャッシュレスの支払いを受け入れることが可能である。幾つかの実装形態では、本明細書に記載されるモバイルデバイス-機械支払い処理システムは、信号が利用可能ではない離れた場所に配置され、したがってキャッシュレスの支払いを受け入れることができる。
【0082】
特定の支払い受諾ユニット120のいかなるゾーン102、104、106内にもセルラ又はWi-Fiカバレッジがないことがある状況の一例として、ユーザ(ティーンエイジャー)は、離れた場所に移動し、セルラ又はWi-Fiカバレッジがないサマーキャンプに参加し得る。キャンプは、幾つかの支払い受諾ユニット120(例えば、使用料金が必要な専用「ホットスポット」を生成する機械、自販機、又は自転車、カヤック、若しくはバスケットボール等の機器をレンタルするための機械)を有し得る。キャンプ施設は、モバイルデバイス-機械支払いシステムが利用可能であることを親に通知し得る。親は、在宅時、認可する特定の金額(日毎に小出しするか、又は機械のタイプ若しくは場所に限定することができる)の認可を取得し、ユーザのモバイルデバイス150に「ロード」し、認可が特定の時間期間にわたり又は特定の日付まで期限切れしないことを指定することができる。その後、キャンプにいる間、ユーザは、本明細書の他の箇所で考察したのと同様に、モバイルデバイス150でモバイルアプリケーション140を使用することができる。短距離通信がアダプタモジュール100(機械120に関連付けられる)とユーザのモバイルデバイス150との間の通信に使用され得る。
【0083】
本明細書に記載される支払い処理システムの、目立たないが強力な1つの構成要素は、長距離通信機能(例えば、インターネット又はセルラネットワーク接続)が必要となるのが認可ゾーン104のみであり、且つAuthRequestを送信し、AuthGrantを受信するために必要な時間期間のみであることである。有効なAuthGrantがモバイルデバイス150によって受信されると、長距離通信機能(例えば、インターネット又はセルラネットワーク接続)は、AuthGrantが有効である(期限切れではない)限り、支払いゾーン102内でモバイルデバイス150にもアダプタモジュール100にも必要とされない。このメカニズムにより、システムは、真正トランザクションを(一時的に)オフラインモードでシームレスに処理することができ、保留中の肯定応答及びトランザクションメッセージは、ネットワーク接続が再獲得されたとき、帳簿記入及びクリーンナップを実行する。上述した代替は、モバイルデバイス150がサーバ130と通信することができる任意の場所を含むように認可ゾーンを人工的に拡大する独自の方法を提供する。
【0084】
複数ユーザ解決
図2に示されるように、1つの実際のシナリオでは、複数のユーザがゾーン102、104、106に存在する。
図2に示されるように、ユーザ1、2、及び3は、機械120の近くの支払いゾーン102におり、ユーザ5及び6は、認可ゾーン104とBluetooth範囲106との間に位置し、ユーザ4及び7は、Bluetooth範囲106内におり、ユーザ10は、Bluetooth範囲106の縁部に位置し、ユーザ8及び9は、Bluetooth範囲106の外部に位置する。幾つかの実装形態では、モバイルデバイス-機械支払い処理システムは、複数ユーザに関連する問題を管理及び解決する。
【0085】
ユーザ4及び7は、Bluetooth範囲106内におり、ユーザ10は、Bluetooth範囲106に入りつつあるか、又は出つつある。Bluetooth範囲106内において、ユーザのモバイルデバイス150は、アダプタモジュール100の宣伝を見ることが可能である。このゾーンでは、モバイルデバイス150は、好ましくは接続を開始しない。アダプタモジュール100は、好ましくは、Bluetooth範囲106内のユーザに気付かない。アダプタモジュール100がしていることは、Bluetooth範囲106内にあり得る任意の複数のユーザにその存在を宣伝することのみである。
【0086】
アダプタモジュール100は、ユーザ(及びユーザの各モバイルデバイス150)が認可ゾーン104に入る際、ユーザのログ記録を開始する(
図2においてユーザ5及び6として示される)。この時点では、アダプタモジュール100に対してモバイルデバイス150によって開始された非排他的な接続がある。ハンドシェークを行い(例えば、認可の取得に必要な情報を交換し、任意選択的に、認可ゾーン閾値の自己較正に必要な情報をログ記録し)、モバイルデバイス150は、認可のため(例えば、AuthRequestを送信し、AuthGrantを受信するため)にサーバ130と交信する。アダプタモジュール100は、AuthGrantを要求し受信した全てのモバイルデバイス150を登録する。アダプタモジュール100は、認可ゾーン104に入った任意の他のモバイルデバイス150とも引き続き通信する。初期交信後、アダプタモジュール100は、アダプタモジュール100にいつ再チェックインすべきかについての猶予遅延をモバイルデバイス150に提供し得、他のモバイルデバイス150がアダプタモジュール100と通信する機会を可能にする。
【0087】
支払いゾーン102にユーザが1人のみいる場合、購入トランザクションを実行し得る。支払いゾーン102に複数のユーザがいる場合、モバイルデバイス-機械支払いシステムは、この状況に対応しなければならない。
【0088】
支払いゾーン102に複数のユーザがいる状況に対応する任意選択的な1つの解決策は、支払いゾーン102内のユーザをキューに入れることである。任意のモバイルデバイス150が支払いゾーン102に入ると、アダプタモジュール100は、特定のモバイルデバイス150への排他性を確立する(例えば、先入れ先出し方式で)。しかしながら、技術的には、アダプタモジュール100は、モバイルデバイス150への排他的接続を確立していない。アダプタモジュール100は、依然としてラウンドロビンポーリングを実行し、他のモバイルデバイス150と通信し、宣伝することができる。代わりに、アダプタモジュール100は、RSSI及び時間(例えば、誰が最初か、及び認可が期限切れしているか否か)によって優先順位付けされたキューを確立し、他のモバイルデバイス150に待機するように通知(例えば、アラート)する。RSSIが同じ場合、最も早期の有効な(期限切れしていない)認可が優先される。他の場合、例えば、最も強い平均RSSIが優先される。好ましくは、キューは、RSSIの静的尺度ではなく、キュー内の時間期間にわたる平均尺度である。これは、ユーザがキュー内にあるときに歩き回り、まさに前のユーザが終えつつあるときに支払い受諾ユニット120に現れるシナリオを補償する。別のユーザも支払いゾーン102内におり、全時間にわたってそこに立っていたが、より新しい認可を有し得る場合、そのユーザが優先され得る。
【0089】
アダプタモジュール100は、いずれのユーザが支払い受諾ユニット120の前の支払いゾーン102にいたかをアダプタモジュール100が厳密に特定できないときには常に、ハンズフリー支払いをディセーブルする。モバイルデバイス150は、アラートをユーザに送信し、ユーザは、スワイプして支払う(手動モード)ことができる。支払いゾーン102内の全ユーザは、「接続中」を示し、支払い受諾ユニット120への支払いをスワイプした最初のユーザが他のユーザを締め出す。
【0090】
複数モジュール解決
複数のモジュールが存在するシナリオでは、ユーザが前にいるのがいずれの支払い受諾ユニット120であるかの特定が難しいことがある。幾つかの実装形態では、本明細書に記載されるモバイルデバイス-機械支払い処理システムは、アダプタモジュール100がBluetoothを介して範囲内の他のアダプタモジュール100と通信できるようにする。各ユーザは、特定の支払い受諾ユニット120の認可承諾を受信する。これは、同じ認可ゾーン104内に複数のアダプタモジュール100がある場合、ユーザに複数の認可承諾があることを意味する。ユーザが支払いゾーン102に入る際、支払いゾーン102が重複する場合、ユーザが前にいるのがいずれの支払い受諾ユニット120であるかを区別することが難しいことがある。
【0091】
この問題を解決するために、ユーザが支払いゾーン102に入る際、アダプタモジュール100は互いと通信して、特定のユーザのRSSIを特定し(ユーザのモバイルデバイス150からの信号に基づいて)、いずれのアダプタモジュール100(及び関連付けられた支払い受諾ユニット120)がユーザに近いかを三角測量する。任意選択的に、モジュール間通信は、ユーザによる排他的接続の確立を1つのみの支払い受諾ユニット120に制限することができる。
【0092】
任意選択的に、ユーザが支払い受諾ユニット120に接続すると、モバイルデバイス150は、通信情報を支払い受諾ユニット120に送信し、一時的に支払い受諾ユニット120のディスプレイ122、124上でユーザに表示することができる。例えば、モバイルデバイス150は、所定の時間期間(例えば、1秒~3秒)にわたって通信情報(例えば、「接続中」又は「フレッドのモバイルデバイスが接続中」)を支払い受諾ユニットのディスプレイ122、124に送信することができ、それにより、ユーザが支払いゾーン102内にいるとき、購入(ハンズフリーモード又は手動モード)前にユーザがいずれの支払い受諾ユニット120に接続されているかが明確となる。
【0093】
加えて、ユーザが手動モードである場合、モバイルデバイス150は、視認のために支払い受諾ユニット120の視覚的表示(例えば、支払い受諾ユニット120の写真及び/又は支払い受諾ユニットID)を(例えば、
図10A~
図10Dに示されるようなタッチスクリーン152上に)表示することができる。ユーザが手動モードである場合、ユーザは、支払い受諾ユニット120を手動で変更することができる。
【0094】
説明のためのシナリオ
図7、
図8A~
図8G、及び
図9A~
図9E(並びに他の図)を使用して、本明細書に記載されるモバイルデバイス-機械支払い処理システムの詳細なシナリオを理解することができる。通信及びステップの流れについて、これら(及び他の図)を参照して以下に概説する。代替のシナリオは、例えば、実行されるステップの順序変更を含み得ることに留意されたい。
【0095】
自販トランザクション前、ユーザは、モバイルアプリケーション140をモバイルデバイス150にダウンロードし、アカウントを作成し、例えば資金調達ソースサーバ160を介して、資金調達ソースを構成する。資金調達ソースは、例えば、デビットカード、クレジットカード、キャンパスカード、報償ポイント、銀行口座、支払いサービス(例えば、PayPal(登録商標))、又は他の支払いオプション若しくは既知の若しくはこれから開発される支払いオプションの組み合わせであり得る。資金調達ソースは、本明細書に記載される経済システムに統合される従来及び/又は非従来の支払いソースであり得、資金のソースとして間接的に使用され得る。資金調達ソースからの資金は、好ましくは、AuthRequestがサーバ130によって受信された場合にサーバ130が購入のための資金を認可するAuthGrantを送信することができるように、サーバ130に保持される。
【0096】
ユーザは、学校又は仕事場にある自販機等の定期的に訪れ得る1つ又は複数の「お気に入り」アダプタモジュール100(支払い受諾ユニット120に対して1対1の関係を有する)を指定することができる。お気に入りのアダプタモジュール100は、予めフィルタリングされたリストに表示され、ハンズフリー支払い等の追加の豊富な特徴が可能である。
【0097】
支払い受諾ユニット120には、Bluetooth(又は他の「信号」、「通信」、及び/又は「伝送」)を介してその可用性を常に宣伝しているアダプタモジュール100を備え得る。この進行中の宣伝及びアダプタモジュールのスキャンを
図8Aに示す。示されるように、モバイルデバイス150は、Bluetooth(又は他の「信号」、「通信」、及び/又は「伝送」)範囲内の任意のアダプタモジュール100について常にスキャンしている。ユーザがアダプタモジュール100の範囲内にいる場合、モバイルデバイス150は、所定の「認可ゾーン」閾値が達成されるまで信号強度を追跡及び監視する。
【0098】
図8B及び
図9Aは、一般に、認可ゾーン閾値に達した場合、モバイルデバイス150が認可ゾーンに入り(ブロック302)、アダプタモジュール100を登録することを示す。モバイルデバイス150は、サーバ130に接続する(ブロック304)。モバイルデバイス150上のアプリケーション140は、認可要求(AuthRequest)を作成し、適切な通信技術(例えば、GSM、CDMA、Wi-Fi等)を使用してAuthRequestをサーバ130に渡す(ブロック306)。サーバ130は、特定のアダプタモジュールの秘密鍵で暗号化された認可承諾(AuthGrant)で応答する(ブロック306)。この認可トークンは、少なくともユーザ識別子(ID)、装置ID(アダプタモジュール100の)、認可金額、及び期限切れ時間を含み得る。モバイルデバイス150は、AuthGrantをサーバ130から受信し、モバイルデバイス150が支払いをアダプタモジュール100に対して発行する準備ができるまで保持する。モバイルデバイス150は、幾つのアダプタモジュール100が範囲内にあるかに応じて1つ又は複数であり得る保留中の全てのAuthGrantを収集する。期限切れした未使用AuthGrantは、モバイルデバイス150及びサーバ130からパージされる。AuthGrantは、サーバ130及びアダプタモジュール100のみが知るアダプタモジュールの一意の秘密鍵で暗号化されるため、モバイルデバイス150がAuthGrantを読み取れないことに留意することが重要である。これは、アダプタモジュール100がサーバ130によって発行されたAuthGrantのみを信用し、AuthGrantは、モバイルデバイス150によっても、又はサーバとアダプタモジュール100との間のいかなる他の存在によっても読み取られ得ないか又は変更され得ないため、システムにおけるセキュリティの好ましい主要要素を提供する。追加のモバイルデバイス150が認可ゾーン104に入り得る(ブロック308)。
【0099】
ユーザは、特定のアダプタモジュール100に近づくにつれ、支払いゾーン102に入り、モバイルデバイス150によって実行されるヒューリスティックに基づいてイベント閾値がトリガーされる。ブロック310及び312は、認可ゾーン104からのモバイルデバイス150が支払いゾーン102に入るのを待つループステップを示す。ユーザが支払いゾーン102に入らずに認可ゾーン104を出る場合、アダプタモジュール100は、その存在の宣伝に戻る(ブロック300)。
【0100】
図8C及び
図9Bは、一般に、支払いゾーンに入りつつあるユーザを示す。モバイルデバイス150は、期限切れしていない有効なAuthGrantを有することを確認する。AuthGrantが良好ではない場合、AuthGrantを再び要求し得、認可要求プロセスを繰り返す(ブロック315)。AuthGrantが良好である場合、モバイルデバイス150は、有効なAuthGrant(ウォレット残高を含む(ブロック322))をアダプタモジュール100に送信し、トランザクションを開始する。モバイルデバイス150は、ハンズフリーモードがサポートされる(及びデバイスがお気に入りであり(ブロック318)、支払いゾーン102内のデバイスが1つのみであり(ブロック318)、(任意選択的に)認可ゾーン104内のユーザが1人のみである(ブロック320)場合、特定のユーザインタラクションなしでAuthGrantを自動的に発行し得る。これらの要因のいずれかが存在しない場合、モバイルデバイス150は、トランザクションを手動で開始するようにユーザに促し、且つ/又はユーザがトランザクションを手動で開始するのを待つ(ブロック324)。
【0101】
図8D、
図9C、及び
図9Dは、全体的に、トランザクションプロセスを示す。
図9Cに示されるように、アダプタモジュール100は、一連の動作を実行して、ユーザがアプリ内でキャンセルしたか(ブロック326)、ユーザが離れて移動したか(ブロック328)、硬貨返却が押下されたか(ブロック330)、所定の時間期間を超える時間が経過したか(ブロック332)を含む、自販を妨げる任意の問題があるか否かを判断する。これらの問いへのいずれかへの答えが「はい」である場合、トランザクションは進まない。これらの全ての問いへの答えが「いいえ」である場合、ユーザは、現金又はクレジットが支払い受諾ユニット120に提供された場合と比較して同じ又は同様のやり方で、支払い受諾ユニット120上で選択を行う(ブロック334)。機械120は、自販可能な場合(ブロック336)、製品をリリースしようとする。自販に失敗する場合(ブロック338)、機械によって失敗が報告され(ブロック340)、クレジットは仮想ウォレットに返却される(ブロック342)。自販に成功した場合(ブロック338)、機械によって成功が報告される(ブロック344)。換言すれば、トランザクションが完了した後、アダプタモジュール100は、モバイルデバイス150にトランザクションの詳細情報と、モバイルデバイス150を介してサーバ130に送信すべき自販詳細情報を含む暗号化パケットとを返す。任意選択的に、アダプタモジュール100は、支払い受諾ユニットの健全状態、販売データ、エラーコード等のトランザクションに直接関連しない追加情報を渡すことができる。
【0102】
図8D及び
図9Eは、一般に、複数自販機能を示す。機械の複数自販機能が有効化されており(ブロック350)、且つ複数自販限度に達していない場合、プロセスは、ユーザが支払いゾーン内にいるか否かの質問(
図9Aのブロック310)に戻る。機械が、有効化された複数自販機能を有さない(ブロック350)か、又は複数自販限度に達している場合、ウォレットは自販金額だけ減分され、「釣り銭」が仮想ウォレットに返却され(ブロック354)、プロセスは終了する(ブロック356)。
【0103】
図8Eは、ログインプロセス例の概略的な流れ図である。
図8Fは、ブートアッププロセスの概略的な流れ図である。
図8Gは、口座チェック/更新プロセス例の概略的な流れ図である。
【0104】
図の幾つかは、方法及びシステムを示すフローチャートである(例えば、
図9A~
図9E)。これらのフローチャートの各ブロック、これらのフローチャートのブロックの全て若しくは幾つかの構成要素、及び/又はこれらのフローチャート内のブロックの組み合わせは、ソフトウェア(例えば、コーディング、ソフトウェア、コンピュータプログラム命令、ソフトウェアプログラム、サブプログラム、又は他の一連のコンピュータ実行可能若しくはプロセッサ実行可能命令)により、ハードウェア(例えば、プロセッサ、メモリ)により、ファームウェアにより、及び/又はこれらの形態の組み合わせにより、実施され得ることが理解される。一例として、ソフトウェアの場合、コンピュータプログラム命令(コンピュータ可読プログラムコード)がコンピュータにロードされて、コンピュータで実行される命令が、フローチャートの1つ又は複数のブロックにおいて指定される機能を実施する構造をもたらすような、機械を生成し得る。これらのコンピュータプログラム命令は、メモリに記憶することもでき、メモリに記憶された命令が、フローチャートの1つ又は複数のブロックにおいて指定される機能を実施する命令構造を含む製品を生成するような、特定の様式で機能するようにコンピュータに命令することができる。コンピュータプログラム命令は、コンピュータにロードして、コンピュータで又はコンピュータによって一連の動作ステップを実行させて、コンピュータで実行される命令がフローチャートの1つ又は複数のブロックにおいて指定される機能を実施するステップを提供するような、コンピュータ実施プロセスを生成することもできる。したがって、フローチャートのブロックは、指定される機能を実行するステップ、構造、及び/又はモジュールの組み合わせをサポートする。フローチャートの各ブロック及びフローチャート内のブロックの組み合わせが、本発明の範囲に影響せずに分割され、且つ/又はフローチャートの他のブロックと結合され得ることも理解される。これは、例えば、コンピュータ可読プログラムコードが全体的に1つのメモリに記憶されること、又はコンピュータ可読プログラムコードの様々な構成要素が2つ以上のメモリに記憶されることにつながり得る。
【0105】
追加の実装形態
図23は、幾つかの実装形態による、支払い処理システムにおいてトランザクションを実行することに関してユーザを認証するプロセス1000の概略的な流れ図を示す。幾つかの実装形態では、支払い処理システムは、1つ又は複数の支払いモジュール100(例えば、商品及び/又はサービスを提供する自動小売り機等の各支払い受諾ユニット120にそれぞれ関連付けられる)、1つ又は複数のモバイルデバイス150(例えば、フォアグラウンド又はバックグラウンドプロセスのいずれかとして支払い処理システムのアプリケーション140をそれぞれ実行する)、及びサーバ130を含む。サーバ130は、支払い処理システムを管理し、幾つかの場合、1つ又は複数の支払いモジュール100を供給、運営、及び/又は製造するエンティティに関連する。簡潔にするために、プロセス1000について、支払い処理システムにおける1つの支払いモジュール100及び1つのモバイルデバイス150に関して説明する。
【0106】
支払いモジュール100は、短距離通信機能(例えば、BLE)を介して情報のパケット(本明細書では「宣伝情報」と呼ばれることもある)をブロードキャストする(1002)。情報のパケットは、少なくとも認可コード及び支払いモジュール100に関連付けられた識別子(モジュールID)を含む。幾つかの実装形態では、情報のパケットは、支払いモジュール100のファームウェアバージョンと、支払いモジュール100及び/又は支払い受諾ユニット120の1つ又は複数の状態に対応する1つ又は複数のステータスフラグとを更に含む。支払いモジュール100によってブロードキャストされるパケットに含まれる情報について、
図24Aを参照して更に後述する。
【0107】
幾つかの実装形態では、支払いモジュール100は、X秒(例えば、100ms、200ms、500ms等)毎に一意の認可コードを送出する。幾つかの実装形態では、一意の認可コードは、ランダム又は擬似ランダムに生成される数字である。幾つかの実装形態では、支払いモジュール100は、受信した認可承諾トークンが、記憶された認可コードの1つに一致するまで、ブロードキャストされた認可コードを記憶する。幾つかの実装形態では、支払いモジュール100は、ブロードキャストされた認可コードを所定の時間期間(例えば、Y分)にわたって記憶し、その時間後、認可コードは期限切れし、削除される。幾つかの実装形態では、認可コードは、サーバ130に知られているが、支払いモジュール100に一意の共有秘密鍵を用いて暗号化される。幾つかの実装形態では、支払いモジュール100は乱数を初期化し、その場合、認可コードは、この乱数からの順次カウントである。そのような実装形態では、支払いモジュール100は、あらゆる有効な認可コードを記憶する必要なく、最も早期の有効な(期限切れしていない)カウンタを記憶する。幾つかの実装形態では、ブロードキャストされる情報パケットに含まれる認可コードは、ランダム若しくは擬似ランダムに生成される数字又は連番のハッシュ値である。
【0108】
モバイルデバイス150は、ブロードキャストされた情報パケットを受信し、モバイルデバイス150は、長距離通信機能(例えば、GSM、CDMA、Wi-Fi等)を介して認可要求をサーバ130に送信する(1004)。例えば、支払い処理システムが関連付けられたアプリケーション140は、モバイルデバイス150でフォアグラウンド又はバックグラウンドプロセスとして実行されている。この例では、アプリケーション140は、モバイルデバイス150が支払いモジュール100の通信ゾーン(すなわち、BLE範囲)内にあるとき、ブロードキャストされた情報パケットを受信し、認可要求をサーバ130に自動的に送信するか、又はモバイルデバイス150が支払いモジュール100の認可ゾーン内にあるとき、認可要求をサーバ130に送信する。幾つかの実装形態では、ブロードキャストされる情報パケットは、モバイルデバイス150(又はアプリケーション140)が、支払いモジュール100の認可ゾーン内に入る前に観測する必要があるベースラインRSSIを示すベースライン認可ゾーン閾値(すなわち、認可ゾーン基準)を含む。幾つかの実装形態では、モバイルデバイス150(又はアプリケーション140)は、モバイルデバイス150の短距離通信機能(例えば、BLE無線/送受信機)の強度及び/又は受信に基づいて、ベースライン認可ゾーン閾値をオフセットする。幾つかの実装形態では、認可要求は、少なくともブロードキャストされた情報パケットに含まれた認可コード、モバイルデバイス150のユーザ又はモバイルデバイス150のユーザがアプリケーション140にログインしたユーザアカウントに関連付けられた識別子(ユーザID)、及び支払いモジュール100に関連付けられた識別子(モジュールID)を含む。幾つかの実装形態では、認可要求に含まれる認可コードは、平文のハッシュ値である。認可要求について、
図24Bを参照して更に後述する。
【0109】
認可要求を受信した後、サーバ130は、認可要求を処理する(1006)。幾つかの実装形態では、サーバ130は、支払いモジュール100に対応する共有される秘密鍵を用いて、認可要求に含まれる認可コードを復号化する。幾つかの実装形態では、サーバ130は、認可要求内のユーザIDに関連付けられたユーザが、支払い処理システムのそのユーザの口座に、認可要求内のモジュールIDに対応する支払いモジュール100に関連付けられた機械120においてトランザクションを実行するのに十分な資金を有するか否かを判断する。
【0110】
サーバ130は、長距離通信機能(例えば、GSM、CDMA、Wi-Fi等)を介して認可承諾トークンをモバイルデバイス150に送信する(1008)。幾つかの実装形態では、サーバ130は、支払いモジュール100に対応する共有秘密鍵を用いて認可要求内の認可コードを復号化することができない(例えば、認可コードが破損しているか、又はハッキングされている)場合、認可承諾トークンを送信しない。幾つかの実装形態では、サーバ130は、認可要求内のユーザIDに関連付けられたユーザが口座に十分な資金を有さない場合、認可承諾トークンを送信しない。幾つかの実装形態では、認可承諾トークンに加えて、サーバ130は、支払いモジュール100に対応する共有秘密鍵を用いて暗号化されていないメッセージをモバイルデバイス150に直接送信する。メッセージを受信した後、モバイルデバイス150は、不十分な残高又は認可拒否等の適切なメッセージをユーザに表示する。幾つかの実装形態では、サーバ130は、ゼロに等しい金額の認可承諾トークンを送信し、その場合、支払いモジュール100は、不十分な残高又はクレジット(これらに限定はされるものではない)を含む任意の数の理由に起因し得る認可の拒否又は認可の失敗としてこれを解釈する。
【0111】
モバイルデバイス150は、認可承諾トークンを受信し、続けてトリガー条件を検出する(1010)。幾つかの実装形態では、モバイルデバイス150(又はアプリケーション140)は、ハンズフリーモード(例えば、支払いモジュール100の支払いゾーンに入ったとき)又は手動モード(例えば、支払いモジュール100が関連付けられた支払い受諾ユニットとトランザクションを開始するために、アプリケーション140のユーザインターフェースとインタラクションすること)を介して、トリガー条件を検出する。
【0112】
幾つかの実装形態では、使用されなかった認可承諾(例えば、トリガー条件がなかった場合又は期限切れした場合)は、未使用認可承諾に対応するキャンセルメッセージをサーバ130に送信することにより、モバイルデバイス150によってキャンセルされる。幾つかの実装形態では、サーバ130は、モバイルデバイス150に送信された認可承諾であって、認可が未処理の認可承諾について、トランザクション情報又はキャンセルを受信するまで、複数の認可許諾がモバイルデバイス150に送信されることを拒絶するか、又は認可承諾の数を制限する。
【0113】
トリガー条件の検出に応答して、モバイルデバイス150は、短距離通信機能(例えば、BLE)を介して認可承諾トークンを支払いモジュール100に送信する(1012)。続けて、機械120は、クレジットをユーザに表示し(例えば、
図19に示されるディスプレイ122又は124の一方を介して)、ユーザは、機械120の入力機構とインタラクションして(例えば、
図19に示されるボタン126又はタッチスクリーンディスプレイ124を介して)製品及び/又はサービスを購入する。
【0114】
図24Aは、幾つかの実装形態による、支払いモジュール100によってブロードキャストされる(例えば、
図23におけるプロセス1000のステップ1002において)情報のパケット1100のブロック図を示す。幾つかの実装形態では、パケット1100は、少なくともモジュールID1102及び認可コード1104を含む。幾つかの実装形態では、パケット110は、ファームウェアバージョン1106及び1つ又は複数のステータスフラグ1108を更に含む。
【0115】
幾つかの実装形態では、モジュールID1102は、パケット1100をブロードキャストする支払いモジュール100(本明細書では「アダプタモジュール100」と呼ばれることもある)に対応する一意の識別子である。
【0116】
幾つかの実装形態では、認可コード1104は、平文のハッシュ値である。幾つかの実装形態では、支払いモジュール100は、ランダム若しくは擬似ランダムに数字を生成するか、又は連番を決定し(
図23におけるプロセス1000のステップ1002を参照されたい)、数字に対して所定のハッシュ関数(例えば、SHA-256)を実行して、認可コード1104としてハッシュ値を生成する。幾つかの実装形態では、認可コード1104は、支払いモジュール100に対応する秘密暗号鍵で暗号化される一意のコードである。秘密暗号鍵は、サーバ130と共有され、サーバ130が認可コード1104を復号化し、認可承諾トークンを暗号化できるようにするが、モバイルデバイス150はそうすることができない。幾つかの実装形態では、サーバ130と支払いモジュール100との間の暗号化は、2対の公開/秘密鍵によって達成される。
【0117】
幾つかの実装形態では、ファームウェアバージョン情報1106は、支払いモジュール100の現在のファームウェアバージョン1112を識別する。幾つかの実装形態では、ファームウェアバージョン情報1106は、ファームウェアを更新するために支払いモジュール100が受信する1つ若しくは複数のパケットを示す、又は支払いモジュール100がファームウェアを更新するのに必要な1つ若しくは複数のパケットを示す、更新ステータス情報1114も含む。幾つかの実装形態では、1つ又は複数のステータスフラグ1108は、支払いモジュール100及び/又は支払いモジュール100に関連付けられた支払い受諾ユニット120の状態を示す。幾つかの実装形態では、1つ又は複数のステータスフラグ1108は、支払いモジュール100がサーバ130にアップロードする情報(例えば、1つ又は複数の中断トランザクションのトランザクション情報)を有することを示すアップロード情報インジケータ1116等、支払いモジュール100の状態を示す。幾つかの実装形態では、アップロード情報インジケータ1116は、モバイルデバイス150による支払いモジュール100への接続を即時にトリガーする(例えば、サーバ130にアップロードする中断トランザクション情報を有する場合)。幾つかの実装形態では、1つ又は複数のステータスフラグ1108は、エラーインジケータ1118(例えば、支払い受諾ユニット120の紙幣及び/又は硬貨受け入れ機が詰まり、エラーコード、又は誤作動を表していることを示す)、現在レベルインジケータ1120(例えば、支払い受諾ユニット120の紙幣及び/又は硬貨受け入れ機の格納庫のレベルが一杯又は空であることを示す)、及び/又は在庫レベルインジケータ1122(例えば、支払い受諾ユニット120の1つ又は複数の製品を示す)。幾つかの実装形態では、1つ又は複数のステータスフラグ1108は、MDBを介して支払い受諾ユニット120によって発行されるエラーコードである。
【0118】
幾つかの実装形態では、ゾーン基準情報1110は、認可ゾーン基準1124(例えば、支払いモジュール100の認可ゾーンに入る前にモバイルデバイス150(又はアプリケーション140)が観測する必要があるベースラインRSSIを示すベースライン認可ゾーン閾値)及び/又は支払いゾーン基準1126(例えば、支払いモジュール100の支払いゾーンに入る前にモバイルデバイス150(又はアプリケーション140)が観測する必要があるベースラインRSSIを示すベースライン支払いゾーン閾値)を指定する。幾つかの実装形態では、ベースライン認可ゾーン閾値及びベースライン支払いゾーン閾値は、サーバ130によって決定されるか、又はアプリケーション140によって変数として記憶されるデフォルト値であり、その場合、認可ゾーン基準1124及び支払いゾーン基準1126は、支払いモジュール100の短距離通信機能(例えば、BLE無線/送受信機)の強度及び/又は受信を補償するオフセットである。代替的に、ゾーン基準情報1110は、ベースライン認可ゾーン閾値とベースライン支払いゾーン閾値との間に隔たりを含む。したがって、モバイルデバイス150(又はアプリケーション140)は、隔たり値と、ベースライン認可ゾーン閾値又はベースライン支払いゾーン閾値のいずれかのデフォルト値とに基づいて、ベースライン認可ゾーン閾値及びベースライン支払いゾーン閾値を特定する。例えば、隔たりは-10dbを示し、デフォルトベースライン支払いゾーン閾値は-90dbであり、したがってベースライン認可ゾーン閾値は-80dbである。この例を続けると、ベースライン認可ゾーン閾値及びベースライン支払いゾーン閾値を特定した後、モバイルデバイス150(又はアプリケーション140)は、短距離通信機能(すなわち、BLE無線/送受信機)の強度及び/又は受信に基づいて、認可ゾーン閾値及び/又は支払いゾーン閾値を更に調整し得る。
【0119】
図24Bは、幾つかの実装形態による、モバイルデバイス150によってサーバ130に送信される(例えば、
図23におけるプロセス1000のステップ1004において)認可要求1130のブロック図である。幾つかの実装形態では、認可要求1130は、少なくともモジュールID1102、ユーザID1134、及び認可コード1104を含む。
【0120】
幾つかの実装形態では、モジュールID1102は、認可コード1104を含んだ1100をブロードキャストした支払いモジュール100に対応する一意の識別子である。
【0121】
幾つかの実装形態では、ユーザID1134は、認可要求1130をサーバ130に送信するモバイルデバイス150のユーザに関連付けられた識別子である。幾つかの実装形態では、ユーザID1134には、モバイルデバイス150のユーザがアプリケーション140にログインしたユーザアカウントが関連付けられる。
【0122】
幾つかの実装形態では、認可コード1130は、支払いモジュール100によってブロードキャストされた情報のパケット1100に含まれる認可コード1104を含む。
【0123】
図24Cは、幾つかの実装形態によるサーバ130によってモバイルデバイス150に送信される(例えば、
図23におけるプロセス1000のステップ1008において)認可承諾トークン1140のブロック図である。幾つかの実装形態では、モバイルデバイス150からの認可要求1130に含まれる認可コード1136が有効であり、モバイルデバイス150に関連付けられたユーザが支払い処理システムのその口座に十分な資金を有するという判断に従って、サーバ130は、認可承諾トークン1140を生成する。幾つかの実装形態では、認可承諾トークン1140は、少なくともモジュールID1102、ユーザID1134、認可金額1146、(任意選択的)期限切れ期間オフセット1148、及び(任意選択的)認可コード1104を含む。
【0124】
幾つかの実装形態では、モジュールID1102は、認可コード1104に含まれるパケット1100をブロードキャストする支払いモジュール100に対応する一意の識別子である。
【0125】
幾つかの実装形態では、ユーザID1134は、認可要求1130をサーバ130に送信したモバイルデバイス150のユーザに関連付けられた識別子である。
【0126】
幾つかの実装形態では、認可金額1146は、モバイルデバイス150のユーザが認可承諾トークン1140を使用するトランザクションの認可された最高金額を示す。例えば、認可金額1146は、日毎の限度に基づいて、又はユーザの合計口座残高に基づいて、又はユーザID1134に対応するユーザのリスクプロファイルに基づいて、モバイルデバイス150のユーザによって又はサーバ130によって予め定義される。
【0127】
幾つかの実装形態では、期限切れ期間1148オフセットは、支払いモジュール100に関連付けられた機械120とトランザクションを開始するために、支払いモジュール100が認可承諾トークン1140を有効なまま保持する時間量へのオフセットを示す。例えば、期限切れ期間オフセット1148は、モバイルデバイス150のユーザの履歴及びクレジット又はモバイルデバイス150のユーザによって予め定義される期間に依存する。
【0128】
幾つかの実装形態では、認可承諾トークン1140は、認可要求1130に含まれた認可コード1104を更に含む。幾つかの実装形態では、認可コード1104がハッシュ値である場合、サーバ130は、支払いモジュール100に関連付けられた共有秘密暗号鍵を用いて、ハッシュ値を含む認可承諾トークン1140を暗号化する。続けて、モバイルデバイス150が、トリガー条件を検出した後、認可承諾トークン1140を支払いモジュール100に送信すると、支払いモジュール100は、サーバ130及び支払いモジュール100のみが分かっている秘密鍵を使用して認可承諾トークン1140を復号化し(メッセージ及び認可承諾を証明し)、次に復号化された認可承諾トークン1140に含まれたハッシュ値を、前にブロードキャストされた有効な(期限切れではない)ハッシュ値(すなわち、認可コード)と照合し、(支払いモジュール100のみが分かっている)それの有効性を判断する。
【0129】
図24Dは、幾つかの実装形態による支払いモジュール100によって生成されるトランザクション情報1150(例えば、
図25Bにおけるプロセス1250のステップ1254において)のブロック図を示す。幾つかの実装形態では、トランザクション情報1150は、各トランザクションのトランザクションID1152、モジュールID1154、ユーザID1156、(任意選択的)認可コード1158、トランザクションステータス情報1160、トランザクション金額1162、及び他の情報1164を含む。
【0130】
幾つかの実装形態では、トランザクションID1152は、各トランザクションに対応する一意の識別子である。幾つかの実装形態では、トランザクションID1152は、各トランザクションが行われた時刻及び/又は日付並びに場所に基づいて又は関連して符号化される。
【0131】
幾つかの実装形態では、モジュールID1154は、各トランザクションを実行した支払いモジュール100に対応する一意の識別子である。
【0132】
幾つかの実装形態では、ユーザID1156は、各トランザクションを開始したモバイルデバイス150のユーザに関連付けられた識別子である。
【0133】
幾つかの実装形態では、認可コード1158は、各トランザクションの開始に使用されたオリジナルの認可コード(例えば、
図24A~
図24Cの認可コード1104)及び/又は認可承諾トークン(例えば、
図24Cの認可承諾トークン1140)に対応する。幾つかの実装形態では、認可コード1156は、支払いモジュール100に対応する一意の暗号鍵で暗号化される。
【0134】
幾つかの実装形態では、トランザクションステータス情報1160は、各トランザクションが完了したか、又は未完了であるか、又は中止されたかを示す情報を含む。例えば、詰まりが支払い受諾ユニット120において生じ、ユーザが各トランザクションに関連付けられた製品を受け取らなかった場合、各トランザクションは未完了である。例えば、ユーザが、各トランザクションで金銭を戻した後、支払い受諾ユニット120から離れて移動する場合、各トランザクションは中止される。別の例では、ユーザが支払い受諾ユニット120において製品を選択することができないため、各トランザクションが所定の時間期間後に時間切れする場合、各トランザクションは中止される。別の例では、ユーザが支払い受諾ユニット120の紙幣又は硬貨返却機構を作動させた場合、各トランザクションは中止される。
【0135】
幾つかの実装形態では、トランザクション金額1162は、各トランザクションの金額又は複数のトランザクションのそれぞれの金額(例えば、複数自販シナリオにおいて)を示す。幾つかの実装形態では、トランザクション金額1162は、支払いモジュール100に対応する一意の暗号鍵で暗号化される。
【0136】
幾つかの実装形態では、他の情報1164は、支払い受諾ユニット120によって提供されたアイテム及びトランザクションのタイプ(例えば、硬貨、紙幣、クレジットカード、手動モード、ハンズフリーモード等)等の各トランザクションに関連する他の情報を含む。幾つかの実装形態では、他の情報1164は、支払いモジュール100及び/又は支払いモジュール100に関連付けられた支払い受諾ユニット120に関連する他の情報を含む。例えば、他の情報1164は、新しいファームウェアを実装するためのサーバ130への確認要求を含む。別の例では、他の情報1164は、1つ又は複数の前に中断されたトランザクションからのトランザクション情報を含む。別の例では、他の情報1164は、紙幣及び/又は硬貨を介して支払われた1つ又は複数のトランザクションのトランザクション情報を含む。別の例では、他の情報1164は、支払い受諾ユニット120の1つ又は複数の製品についての在庫情報を含む。
【0137】
図25Aは、幾つかの実装形態によるモバイルデバイスにおける機械イベントの表現を提供するプロセス1200の概略的な流れ図を示す。幾つかの実装形態では、支払い処理システムは、1つ又は複数の支払いモジュール100(例えば、商品及び/又はサービスを提供する自動小売り機等の各支払い受諾ユニット120にそれぞれ関連付けられる)、1つ又は複数のモバイルデバイス150(例えば、フォアグラウンド又はバックグラウンドプロセスのいずれかとして支払い処理システムのアプリケーション140をそれぞれ実行する)、及びサーバ130を含む。サーバ130は、支払い処理システムを管理し、幾つかの場合、1つ又は複数の支払いモジュール100を供給、運営、及び/又は製造する。簡潔にするために、プロセス1200について、支払い処理システムにおける1つの支払い受諾ユニット120(本明細書では「機械120」と呼ばれることもある)に関連付けられた各支払いモジュール100及び1つのモバイルデバイス150に関して説明する。
【0138】
幾つかの実装形態では、プロセス1200は、モバイルデバイス150が
図8CにおいてAuthGrantを送信した後に行われる。幾つかの実装形態では、プロセス1200は、モバイルデバイス150が
図23におけるプロセス1000の動作1012において認可承諾を支払いモジュール100に送信した後に行われる。
【0139】
支払いモジュール100は、機械120におけるイベントに対応する指示情報を取得する(1202)。例えば、
図23におけるプロセス1000後、モバイルデバイス150のユーザは、機械120の1つ又は複数の入力機構(例えば、
図19に示されるボタン126又はタッチスクリーンディスプレイ124)とインタラクションすることによって機械120から購入する製品を選択し、機械120は、選択された製品を提供する。この例を続けると、製品が提供された後、トランザクションは完了し、支払いモジュール100は、機械から、完了したトランザクションを示す情報を取得する。幾つかの実装形態では、指示情報は、トランザクションの金額と、(任意選択的に)支払い受諾ユニット120の1つ又は複数の製品に関する在庫情報等の機械120に関連付けられた機械ステータス情報とを含む。幾つかの実装形態では、指示情報は、トランザクションが中止された(例えば、機械120での硬貨返却機構の作動を介して)こと、又はトランザクションにエラーがあったこと(例えば、自販の詰まり若しくは機械120に伴う他の誤作動)を示すステータス情報を含む。
【0140】
第1のトランザクションの完了に対応する指示情報を取得した後、支払いモジュール100は、機械120におけるイベントに対応する通知を生成する(1204)。
【0141】
支払いモジュール100は、短距離通信機能(例えば、BLE)を介して通知をモバイルデバイス150に送信する(1206)。幾つかの実施形態では、機械120におけるイベントに対応する通知に加えて、支払いモジュール100は、トランザクションを開始したAuthGrant又は認可承諾トークンに含まれるトランザクションID又はユーザIDに基づいて、モバイルデバイス150のユーザをターゲットとしたプロモーション又は宣伝をモバイルデバイス150に送信する。幾つかの実施形態では、機械120におけるイベントに対応する通知に加えて、支払いモジュール100は、支払いモジュール100によって記憶されたプロモーション又は宣伝の組から選択される、擬似ランダムに選択されたプロモーション又は宣伝をモバイルデバイス150に送信する。例えば、プロモーションは、モバイルデバイス150のユーザによる機械120からの10の炭酸飲料の購入に続く無料炭酸飲料のクーポンである。例えば、プロモーションは、ランダムな50%オフクーポン又は無料炭酸飲料クーポンである。例えば、トランザクションは、自販される炭酸飲料に対応し、宣伝は、自販される炭酸飲料を生成する同じ企業からの新しい炭酸飲料に対応する。
【0142】
モバイルデバイス150は、通知の表現を提供する(1208)。例えば、
図26Aにおいて、モバイルデバイス150は、第1のトランザクションが完了したことを示すメッセージ1306と共に、ユーザインターフェース1302をタッチスクリーン152に表示する。例えば、
図26Cにおいて、モバイルデバイス150は、トランザクションが中止されたことを示すメッセージ1322と共に、ユーザインターフェース1320をタッチスクリーン152に表示する。例えば、
図26Dにおいて、モバイルデバイス150は、トランザクションに伴うエラーがあったことを示すメッセージ1332と共に、ユーザインターフェース1330をタッチスクリーン152に表示する。例えば、モバイルデバイス150はまた、宣伝のプロモーションの表現をアプリケーション140のユーザインターフェースに表示する。
【0143】
図25Bは、幾つかの実装形態による肯定応答情報を処理するプロセス1250の概略的な流れ図を示す。幾つかの実装形態では、支払い処理システムは、1つ又は複数の支払いモジュール100(例えば、商品及び/又はサービスを提供する自動小売り機等の各支払い受諾ユニット120にそれぞれ関連付けられる)、1つ又は複数のモバイルデバイス150(例えば、フォアグラウンド又はバックグラウンドプロセスのいずれかとして支払い処理システムのアプリケーション140をそれぞれ実行する)、及びサーバ130を含む。サーバ130は、支払い処理システムを管理し、幾つかの場合、1つ又は複数の支払いモジュール100を供給、運営、及び/又は製造する。簡潔にするために、プロセス1250について、支払い処理システムにおける1つの支払い受諾ユニット120(機械120)に関連付けられた1つの支払いモジュール100及び1つのモバイルデバイス150に関して説明する。
【0144】
幾つかの実装形態では、プロセス1250は、モバイルデバイス150が
図8CにおいてAuthGrantを送信した後に行われる。幾つかの実装形態では、プロセス1250は、モバイルデバイス150が
図23におけるプロセス1000の動作1012において認可承諾を支払いモジュール100に送信した後に行われる。
【0145】
支払いモジュール100は、機械120から第1のトランザクションの完了に対応する指示情報を取得する(1252)。例えば、
図23におけるプロセス1000後、モバイルデバイス150のユーザは、機械120の1つ又は複数の入力機構(例えば、
図19に示されるボタン126又はタッチスクリーンディスプレイ124)とインタラクションすることによって機械120から購入する製品を選択し、機械120は、選択された製品を提供する。この例を続けると、製品が提供された後、トランザクションは完了し、支払いモジュール100は、完了したトランザクションの機械からの指示情報を取得する。幾つかの実装形態では、指示情報は、トランザクションの金額と、(任意選択的に)支払い受諾ユニット120の1つ又は複数の製品に関する在庫情報等の機械120に関連付けられた機械ステータス情報とを含む。
【0146】
第1のトランザクションの完了に対応する指示情報を取得した後、支払いモジュール100は、指示情報に基づいて第1のトランザクション情報を有する第1の通知を生成し(1254)、支払いモジュール100は、第1のトランザクション情報を記憶する。幾つかの実装形態では、第1のトランザクション情報は、第1のトランザクションのトランザクションID、支払いモジュール100に対応するモジュールID、モバイルデバイス150に対応するユーザID、第1のトランザクションが完了したことを示すトランザクションステータス情報、及び指示情報によって示されるトランザクション金額を含む。幾つかの実装形態では、支払いモジュール100は、オリジナルのブロードキャストされたパケットに含まれる認可コード及び/又は認可承諾トークンを保持し、認可コードを第1のトランザクション情報に含める。幾つかの実装形態では、認可コードは、支払いモジュール100に対応する秘密鍵で暗号化され、秘密鍵はサーバ130と共有されるが、モバイルデバイス150と共有されない。幾つかの実装形態では、第1のトランザクション情報は、第1の通知に含まれる機械ステータス情報又は前に中断されたトランザクションに対応するトランザクション情報等の他の情報を更に含む。トランザクション情報1150に関する更なる考察について、
図24D及び付随するテキストを参照されたい。
【0147】
支払いモジュール100は、短距離通信機能(例えば、BLE)を介して、第1のトランザクション情報を有する第1の通知をモバイルデバイス150に送信する(1256)。幾つかの実施形態では、機械120における第1のトランザクションの完了に対応する第1のトランザクション情報に加えて、第1の通知は、トランザクションを開始したAuthGrant又は認可承諾トークンに含まれるトランザクションID又はユーザIDに基づいて、モバイルデバイス150のユーザをターゲットとしたモバイルデバイス150へのプロモーション又は宣伝を含む。幾つかの実装形態では、機械120における第1のトランザクションの完了に対応する第1のトランザクション情報に加えて、第1の通知は、支払いモジュール100によって記憶されたプロモーション又は宣伝の組から選択される、モバイルデバイス150への擬似ランダムに選択されたプロモーション又は宣伝を含む。例えば、プロモーションは、モバイルデバイス150のユーザによる機械120からの10の炭酸飲料の購入に続く無料炭酸飲料のクーポンである。例えば、プロモーションは、ランダムな50%オフクーポン又は無料炭酸飲料クーポンである。例えば、トランザクションは、自販される炭酸飲料に対応し、宣伝は、自販される炭酸飲料を生成する同じ企業からの新しい炭酸飲料に対応する。
【0148】
モバイルデバイス150は、第1の通知の表現を提供する(1258)。例えば、
図26Aにおいて、モバイルデバイス150は、第1のトランザクションが完了したことを示すメッセージ1306と共に、ユーザインターフェース1302をタッチスクリーン152に表示する。例えば、モバイルデバイス150はまた、宣伝のプロモーションの表現をアプリケーション140のユーザインターフェースに表示する。
【0149】
モバイルデバイス150は、長距離通信機能(例えば、GSM、CDMA、Wi-Fi等)を介して第1のトランザクション情報をサーバ130に送信する(1260)。
【0150】
サーバ130は、第1のトランザクション情報を処理する(1262)。例えば、サーバ130は、第1のトランザクション情報におけるユーザIDに関連付けられたユーザの口座から、第1のトランザクション情報によって示される金額を引き落とす。
【0151】
サーバ130は、長距離通信機能(例えば、GSM、CDMA、Wi-Fi等)を介して第1の肯定応答情報をモバイルデバイス150に送信する(1264)。幾つかの実装形態では、第1の肯定応答情報は、サーバ130が第1のトランザクション情報を受信したことを示す。幾つかの実装形態では、第1の肯定応答情報は、ユーザID、モジュールID、トランザクションID、及び(任意選択的)トランザクション情報に含まれる認可承諾(例えば、
図24Dの認可承諾1158)を含む。
【0152】
第1の肯定応答情報を受信した後、モバイルデバイス150は、短距離通信機能(例えば、BLE)を介して第1の肯定応答情報を支払いモジュール100に送信する(1266)。
【0153】
第1の肯定応答情報を受信した後、支払いモジュール100は、記憶された第1のトランザクション情報を削除する(1268)。
【0154】
ここで、ゼロ以上のスピーカ、ゼロ以上のマイクロホン、及びディスプレイを有するモバイルデバイス150で実施され得るユーザインターフェース及び関連プロセスの実装形態に注目する。例えば、ディスプレイは、1つ又は複数の接触を受け取り、情報(例えば、メディアコンテンツ、ウェブサイト及びそのウェブページ、アプリケーション140のユーザインターフェース、及び/又はアプリケーションのユーザインターフェース)を表示することが可能なタッチスクリーン(本明細書では「タッチスクリーンディスプレイ」と呼ばれることもある)である。
図26A~
図26Dは、幾つかの実装形態によるモバイルデバイスにおける機械イベントの表現を提供するユーザインターフェース例を示す。
【0155】
図26A~
図26Dは、モバイルデバイス150(例えば、携帯電話)に表示されるユーザインターフェースを示すが、
図26A~
図26Dに示されるユーザインターフェースが他の同様の計算デバイスでも実施可能であることを当業者は理解する。
図26A~
図26Dにおけるユーザインターフェースは、
図25A、
図25B、
図27A、及び
図27Bに関して説明したプロセスを含め、本明細書に記載されるプロセスを説明するために使用される。
【0156】
例えば、モバイルデバイス150のユーザは、機械120(例えば、
図10A~
図10Dに示される自販機78x928)に近づき、アプリケーション140をモバイルデバイス150で実行して、機械120との電子的なインタラクションを実行する。例えば、
図10C及び
図10Dを参照すると、モバイルデバイス150のユーザは、ドル紙幣の表現に対応する場所においてスワイプジェスチャ(例えば、ドル紙幣の表現に対応する場所からモバイルデバイス150の上縁部への略垂直なスワイプジェスチャ)を実行することにより、機械120(例えば、自販機78x928)とのトランザクションを開始する。
【0157】
図26Aは、モバイルデバイス150のユーザが機械120とのトランザクションを開始し実行した後の、タッチスクリーン152上のアプリケーション140のユーザインターフェース1302を表示しているモバイルデバイス150を示す。
図26Aにおいて、ユーザインターフェース1302は、
図10C及び
図10Dにおけるプリペイド残高と比較して、機械120とのトランザクションを実行した後、プリペイド残高から$1.00が差し引かれたことを示すプリペイド残高1304を含む(すなわち、
図10C及び
図10Dでは$9.00であり、
図26Aでは$8.00である)。
図26Aでは、ユーザインターフェース1302は、機械120とのトランザクションが完了したことを示すメッセージ1306も含む。
【0158】
図26Bは、モバイルデバイス150のユーザが機械120とのトランザクションを開始し、トランザクションに伴うエラーが生じるか、又はトランザクションが中止された後の、タッチスクリーン152上のアプリケーション140のユーザインターフェース1310を表示しているモバイルデバイス150を示す。
図26Bでは、ユーザインターフェース1310は、タッチスクリーン152上にスライドしているドル紙幣の表現を示す(例えば、実質的に上から下に)。
図26Bでは、インターフェース1310は、
図10C及び
図10Dにおけるプリペイド残高と比較して、機械120とのトランザクションの実行後、プリペイド残高から金銭が差し引かれていないことを示すプリペイド残高1312を含む(すなわち、
図10C及び
図10Cでは$9.00であり、
図26Bでは$9.00である)。
【0159】
図26Cは、トランザクションが中止されたことに起因した、
図26Bにおけるタッチスクリーン152上へのドル紙幣の表現のスライド後の、タッチスクリーン152上のアプリケーション140のユーザインターフェース1320を表示しているモバイルデバイス150を示す。例えば、ユーザは、機械120の硬貨返却機構を作動させることにより、トランザクションを中止する。別の例では、ユーザは、アプリケーション140のインターフェース上の中止アフォーダンス(図示せず)を選択することにより、トランザクションを中止する。
図26Cにおいて、ユーザインターフェース1320は、機械120とのトランザクションが中止され、中止されたトランザクションでユーザの口座が差し引かれなかったことを示すメッセージ1322を含む。
【0160】
図26Dは、トランザクションに伴うエラーの発生に起因した、
図26Bにおけるタッチスクリーン152上へのドル紙幣の表現のスライド後の、タッチスクリーン152上のアプリケーション140のユーザインターフェース1330を表示しているモバイルデバイス150を示す。例えば、機械120に伴う誤作動(例えば、自販機の詰まり又はアイテムの詰まり)がエラーを生じさせる。
図26Dにおいて、ユーザインターフェース1330には、モバイルデバイス150で実行されるアプリケーション140が関連付けられる。
図26Dでは、ユーザインターフェース1330は、機械120とのトランザクション中にエラーが発生したこと、及びユーザの口座がそのトランザクションで差し引かれなかったことを示すメッセージ1332を含む。
【0161】
図27A及び
図27Bは、幾つかの実装形態による支払い受諾ユニットイベントの表現を提示する方法1400のフローチャート図を示す。幾つかの実装形態では、方法1400は、1つ又は複数のプロセッサ、メモリ、1つ又は複数の出力デバイス、及び2つ以上の通信機能を有するデバイスによって実行される。例えば、幾つかの実装形態では、方法1400は、モバイルデバイス150(
図5及び
図21)又はその構成要素(例えば、アプリケーション140)によって実行される。幾つかの実装形態では、方法1400は、非一時的コンピュータ可読記憶媒体(例えば、
図21のメモリ860)に記憶される命令によって制御され、命令は、デバイスの1つ又は複数のプロセッサ(例えば、
図21の処理ユニット850)によって実行される。任意選択的な動作は、破線(例えば、破線の境界線を有する枠)で示される。
【0162】
第1の通信機能を介して、支払いモジュールに関連付けられた支払い受諾ユニット(例えば、自販機又はキオスク等のオフライン支払い動作機)とのトランザクションを開始する要求を、支払いモジュールに送信した後、モバイルデバイスは、第1の通信機能を介して支払いモジュールから通知を取得し(1402)、通知は、支払いモジュールに関連付けられた支払い受諾ユニットにおけるイベントを示す。幾つかの実装形態では、方法1400は、モバイルデバイス150が
図8CにおいてAuthGrantを送信した後に行われる。幾つかの実装形態では、方法1400は、モバイルデバイス150が
図23におけるプロセス1000の動作1012において認可承諾を支払いモジュール100に送信した後に行われる。
図25Aの動作1206は、例えば、モバイルデバイス150が、第1の通信機能(例えば、BLE等の短距離通信技術/プロトコル)を介して支払いモジュール100(例えば、
図5及び
図20のアダプタモジュール100)によって送信された通知を受信することを示す。通知は、支払いモジュール100に関連付けられた支払い受諾ユニット(例えば、
図5及び
図19の支払い受諾ユニット120)(本明細書では「機械120」とも呼ばれることもある)におけるイベントを示す。
【0163】
幾つかの実装形態では、第1の通信機能は、短距離通信プロトコルに対応する(1404)。上述したように、短距離通信プロトコルは、BLE、NFC、及び/又は非永続的な通信チャネルを利用する他のプロトコルを含む。
【0164】
通知の取得に応答して、モバイルデバイスは、モバイルデバイスの1つ又は複数の出力デバイスを介してモバイルデバイスのユーザに通知の表現を提供する(1406)。例えば、
図26Aでは、モバイルデバイス150は、第1のトランザクションが完了したことを示すメッセージ1306と共に、タッチスクリーン152にユーザインターフェース1302を表示する。例えば、
図26Cでは、モバイルデバイス150は、トランザクションが中止されたことを示すメッセージ1322と共に、タッチスクリーン152にユーザインターフェース1320を表示する。例えば、
図26Dでは、モバイルデバイス150は、トランザクションに伴うエラーがあったことを示すメッセージ1332と共に、タッチスクリーン152にユーザインターフェース1330を表示する。
【0165】
幾つかの実装形態では、モバイルデバイスの1つ又は複数の出力デバイスは、ディスプレイ、1つ又は複数のスピーカ、1つ又は複数のLED、及びバイブレーション機構の少なくとも1つを含む(1408)。例えば、モバイルデバイス150は、ディスプレイ(例えば、
図10A~
図10Dのタッチスクリーン152)、1つ又は複数のスピーカ、1つ又は複数のLED、及びバイブレーション機構の1つ又は複数を含む。
【0166】
幾つかの実装形態では、通知の表現は、モバイルデバイスのディスプレイに表示されるメッセージ、モバイルデバイスのディスプレイに表示されるバナー通知、モバイルデバイスのバイブレーション機構からのバイブレーションアラート、モバイルデバイスの1つ又は複数のスピーカからの音声アラート、及びモバイルデバイスの1つ又は複数のLEDからの視覚的アラートの少なくとも1つである(1410)。例えば、
図26B~
図26Dでは、通知の表現は、モバイルデバイス150のタッチスクリーン152に表示されるメッセージ1306、1322、及び1332を含む。別の例では、通知の表現は、モバイルデバイス150のバイブレーション機構によって提供される予め定義されるシーケンスのバイブレーションである。別の例では、通知の表現は、モバイルデバイス150の1つ又は複数のスピーカによって提供される予め定義されるシーケンスのトーンである。別の例では、通知の表現は、モバイルデバイス150の予め定義されるシーケンスのLEDの明滅である。
【0167】
幾つかの実装形態では、通知は、モバイルデバイスのユーザによって開始されたトランザクションの中止を示す(1412)。
図26Cでは、例えば、ユーザインターフェース1320は、トランザクションが中止されたことを示すメッセージ1322を含む。例えば、ユーザは、機械120の硬貨返却機構を作動させることにより、トランザクションを中止する。別の例では、ユーザは、アプリケーション140のインターフェース上で中止アフォーダンス(図示せず)を選択することにより、トランザクションを中止する。
【0168】
幾つかの実装形態では、通知は、モバイルデバイスのユーザと支払い受諾ユニットとの間のトランザクションの完了を示す(1414)。
図26Aでは、例えば、ユーザインターフェース1302は、モバイルデバイス150のユーザによって開始された機械120とのトランザクションのその完了を示すメッセージ1306を含む。
【0169】
幾つかの実装形態では、トランザクションの完了を示す通知は、少なくとも完了したトランザクションの金額を含む(1416)。
図26Aでは、例えば、ユーザインターフェース1302は、
図10C及び
図10Dにおけるプリペイド残高と比較して、機械120とのトランザクションを実行した後、$1.00がプリペイド残高から差し引かれたことを示すプリペイド残高1304を含む(すなわち、
図10C及び
図10Dでは$9.00であり、
図26Aでは$8.00である)。
【0170】
幾つかの実装形態では、モバイルデバイスは、第1の通信機能とは別個の第2の通信機能を介して通知の少なくとも一部をサーバに送信する(1418)。
図25Bの動作1260は、例えば、第2の通信機能(例えば、Wi-Fi、CDMA、GSM等の長距離通信プロトコル)を介して、完了したトランザクションについての第1のトランザクション情報をサーバ130に送信するモバイルデバイス150を示す。例えば、第1のトランザクション情報は、少なくとも第1の完了したトランザクションの金額を含む。
【0171】
幾つかの実装形態では、第1の通信機能は、短距離通信プロトコルに対応し(1420)、第2の通信機能は、長距離通信プロトコルに対応する。例えば、モバイルデバイス150の第1の通信機能は、BLE、NFC等の1つ又は複数の短距離通信プロトコル(すなわち、非永続的な通信チャネル)を介して通信するための無線/送受信機手段である。例えば、モバイルデバイス150の第2の通信機能は、Wi-Fi、CDMA、GSM等の1つ又は複数の長距離通信プロトコルを介して通信するための無線/送受信機手段である。
【0172】
幾つかの実装形態では、通知は、モバイルデバイスのユーザによって開始されたトランザクションの失敗又は支払い受諾ユニットに関連する誤作動を示す(1422)。
図26Dでは、例えば、ユーザインターフェース1330は、トランザクションに伴うエラーがあったことを示すメッセージ1332を含む。例えば、トランザクションは、自販機の詰まり又は他の誤作動に起因して失敗する。別の例では、支払い受諾ユニットは、オープンドア等に起因して誤作動を経験する。幾つかの実装形態では、失敗/誤作動通知の少なくとも一部は、サーバ130に送信され、続けてアラートがサーバ130によって支払い受諾ユニット(例えば、機械120)のオペレータに送信される。
【0173】
図27A及び
図27Bにおける動作が説明された特定の順序は、単に例を目的としたものであり、記載される順序は、動作を実行することができる唯一の順序であることを示すことが意図されないことを理解されたい。本明細書に記載される動作を順序替えする様々な方法を当業者は認識する。更に、本明細書に記載される他の方法に関して本明細書に記載される他のプロセスの詳細はまた、
図27A及び
図27Bに関して上述した方法1400に対して同様に適用可能であることに留意されたい。
【0174】
図28Aは、幾つかの実装形態によるオフライン支払い動作機1500のブロック図を示す。例えば、オフライン支払い動作機1500(例えば、機械120の一形態)は、いかなるネットワーク(例えば、電話、セルラ、又はWi-Fi)にも接続されない、通貨(例えば、硬貨)を受け入れ可能な電子機械機である。例えば、オフライン支払い動作機1500は、セルフ式の洗濯機又は乾燥機、パーキングメータ、洗車支払いキオスク、ビデオゲーミングコンソール(すなわち、硬貨動作式アーケードゲーム)、硬貨動作式玉突き台、硬貨動作式ダーツ機、硬貨動作式真空ポンプ又はエアポンプ(ガソリンスタンドで一般に見られるもの等)、又は商品(例えば、機械1500に格納された製品)を提供及び/又はサービスを提供する(例えば、ビデオゲームのプレイ、洗濯機及び乾燥機の使用等のサービスをユーザが使用できるようにする)、他のオフライン支払いで動作する機械である。オフライン支払い動作機は、幾つかの状況では、機械が通常通り動作している間、オペレータが物理的に機械の近傍にいないという意味で無人である。したがって、これらの機械は、本明細書では「無人機」、「無人硬貨動作式機械」、及び「無人オフライン支払い動作機」とも呼ばれる。
【0175】
図28Aでは、オフライン支払い動作機1500は、マイクロスイッチ1502、制御ユニット1506、電源1508、トランジスタ1510、及び動作ユニット1512を含む。
図28Aにおけるオフライン支払い動作機1500の構成要素は例であり、様々な他の構成要素がオフライン支払い動作機1500に包含され得、又はそれから除外され得ることを当業者は理解する。
【0176】
図28Aでは、マイクロスイッチ1502は、レバー1504を有するてこで作用するマイクロスイッチである。例えば、マイクロスイッチ1502は、通常開かれた端子(「NO」)、通常閉じられた端子(「NC」)、及び共通端子を有するCHERRY BRAND(商標)マイクロスイッチである。例えば、レバー1504は、オフライン支払い動作機1500の硬貨スロットに組み込まれ、硬貨が硬貨スロットを下に摺動してオフライン支払い動作機1500の硬貨格納庫(図示せず)内に落ちるときに常に押下される。例えば、レバー1504が押下され、マイクロスイッチ1502が、
図28Aに示されるようにNO構成で配線される場合、スイッチは閉じられる。この例を続けると、スイッチが閉じられているとき、制御ユニット1506は、米国25セント硬貨(すなわち、$0.25)又は別の価値の硬貨の受け取りによるレバー1504の押下を示すパルス(すなわち、支払い受諾信号)をマイクロスイッチ1502の共通端子から受信する。
【0177】
幾つかの実装形態では、制御ユニット1506が、マイクロスイッチ1502によって受け取られているプリセットされた数の硬貨を示すプリセットされたシーケンスの支払い受諾信号を受信する場合、制御ユニット1506は、オフライン支払い動作機1500の動作を示す。例えば、プリセットされたシーケンスの支払い受諾信号(例えば、3枚の米国25セント硬貨の受け取りを示す3つのパルス)を受信した後、制御ユニット1506は、電流をトランジスタ1510のゲートに印加することにより、オフライン支払い動作機1500の動作を開始し、印加により、電流は、電源1508から動作ユニット1512に流れる。例えば、動作ユニット1512は、電源1508から電流が流れると回転を開始する乾燥機のモータである。
【0178】
図28Aでは、支払いモジュール1520(例えば、
図5及び
図20のアダプタモジュール100の一形態)は、オフライン支払い動作機1500に設置されて、電子支払いを受け入れることができるようにオフライン支払い動作機1500を変更するように構成される。幾つかの実装形態において、支払いモジュール1520は、本明細書ではパルス提供デバイス1520(
図31~
図33を参照して後述するように)と呼ばれる。幾つかの実装形態では、支払いモジュール1520は、処理ユニット750、メモリ760、セキュリティユニット755、及び通信ユニット770等の
図20におけるアダプタモジュール100に含まれる構成要素の全て又は幾つかを含む。幾つかの実装形態では、支払いモジュール1520は、第1のインターフェースモジュール1522、第2のインターフェースモジュール1524、及びオフライン支払い動作機1500の電源1508から電力を引き込むリード1536も含む。
【0179】
図28Aでは、第1のインターフェースモジュール1522は、オフライン支払い動作機1500のリード1532を介してマイクロスイッチ1502(例えば、硬貨受け取りスイッチ)から支払い受諾信号をサンプリングするように構成される。例えば、支払い受諾信号は、レバー1504を押下するマイクロスイッチ1502によって硬貨が受け取られていることを示す。
図28Aでは、第2のインターフェースモジュール1524は、プリセットされた数の硬貨を示すマイクロスイッチ1502(例えば、硬貨受け取りスイッチ)からのプリセットされたシーケンスの支払い受諾信号の受け取りに応答して、オフライン支払い動作機の動作(例えば、トランジスタ1510のゲートへの電流の印加)を開始するリード1534を介して、オフライン支払い動作機1500の制御ユニット1506からの制御信号をサンプリングするように構成される。
【0180】
幾つかの実装形態では、特定の無人機(例えば、
図28Aの1500)がいかなるネットワークに接続されず、オペレータが特定の無人機の近傍にいないにも関わらず、無人機は、それでもなおサーバにおいて構成される遠隔構成オプション(例えば、マルチクレジット価格オプション)であって、携帯電話との暗号化された情報交換を介して特定の無人機に結合されたパルス提供デバイス1520に送信される遠隔構成オプションを受け入れることができる。幾つかの実装形態では、暗号化される情報交換は、モバイルデバイスのユーザによって選択された(例えば、
図32に示されるように、アプリケーション140内のユーザインターフェース表示を介して)遠隔構成オプションに従って決定される電気パルスを、パルス提供デバイス1520が提供できるようにする命令又はデータを含む。更なる詳細も
図31~
図33を参照して以下に提供する。
【0181】
図28Bは、幾つかの実装形態による支払いモジュール1520によってサンプリングされた信号を示す。
図28Bでは、サンプル1550は、マイクロスイッチ1502から制御ユニット1506に送信される、リード1532を介して第1のインターフェースモジュール1522によってサンプリングされた、プリセットされたシーケンスの支払い受諾信号を表す。例えば、プリセットされた数の硬貨を示すプリセットされたシーケンスの支払い受諾信号は、パルス(すなわち、支払い受諾信号)1552、1554、1556、及び1558を含む。例えば、時間1582、1584、1586、及び1588におけるパルス1552、1554、1556、及び1558の立ち上がりエッジは、
図28Aに示されるようにNO構成で配線された場合にスイッチを閉じる、マイクロスイッチ1502による硬貨の受け取りを示す。
図28Bでは、サンプル1570は、制御ユニット1506からトランジスタ1510に送信される、リード1534を介して第2のインターフェースモジュール1524によってサンプリングされた制御信号を表す。
図28Bでは、サンプル1570は、マイクロスイッチ1502からプリセットされたシーケンスの支払い受諾信号(すなわち、パルス1552、1554、1556、及び1558)を受信した後、時間1590において制御ユニット1506からトランジスタ1510に送信されるパルス1572を含む。
【0182】
図29A及び
図29Bは、幾つかの実装形態による、電子支払いを受け入れるようにオフライン支払い動作機を改造する方法のフローチャート図を示す。幾つかの実装形態では、方法1600は、1つ又は複数のプロセッサ及びメモリを有する支払いモジュールによって実行される。幾つかの実装形態では、支払いモジュールは、短距離通信プロトコル(例えば、BLE、NFC等の非永続的な通信チャネル)に対応する短距離通信機能も含み、短距離通信機能は、1つ又は複数のモバイルデバイスと通信するように構成され、1つ又は複数のモバイルデバイスのそれぞれは、相補的な短距離通信機能、及び長距離通信プロトコル(例えば、Wi-Fi、CDMA、GSM等)に対応する長距離通信機能を備えるように構成される。
【0183】
幾つかの実装形態では、支払いモジュールは、セルフ式の乾燥機又は洗濯機、パーキングメータ、洗車支払いキオスク等のオフライン支払い動作機(例えば、
図5及び
図19の支払い受諾ユニット120(本明細書では「機械120」と呼ばれることもある)又はオフライン支払い動作機1500、
図28A)と結合される。幾つかの実装形態では、オフライン支払い動作機は、硬貨受け取りスイッチ(例えば、
図28Aのマイクロスイッチ1502)及び制御ユニット(例えば、
図28Aの制御ユニット1506)を含む。幾つかの実装形態では、支払いモジュールは、(A)オフライン支払い動作機の硬貨受け取りスイッチからの支払い受諾信号をサンプリングするように構成される第1のインターフェースモジュールであって、信号は、硬貨受け取りスイッチによって受け取られたコインを示す、第1のインターフェースモジュール(例えば、
図28Aの第1のインターフェースモジュール1522)、及び(B)プリセットされた数の硬貨を示す硬貨受け取りスイッチからのプリセットされたシーケンスの支払い受諾信号の受信に応答して、オフライン支払い動作機の動作を開始する、オフライン支払い動作機の制御ユニットからの制御信号をサンプリングするように構成される第2のインターフェースモジュール(例えば、
図28Aの第2のインターフェースモジュール1524)を更に含む。これらの信号をサンプリングし記憶することにより、支払いモジュール1520は、正確な/プリセットされた数の硬貨の受け取りに応答して各硬貨受け取りスイッチの動作をシミュレートして、電子支払いの完了に応答してオフライン支払い動作機の動作をトリガーすることが可能である。
【0184】
例えば、幾つかの実装形態では、方法1600は、アダプタモジュール100(
図5及び
図20)又は支払いモジュール1520(
図28A)によって実行される。幾つかの実装形態では、方法1600は、非一時的コンピュータ可読記憶媒体(例えば、
図20のメモリ760)に記憶される命令によって制御され、命令は、支払いモジュールの1つ又は複数のプロセッサ(例えば、
図20の処理ユニット750)によって実行される。任意選択的な動作は、破線(例えば、破線の境界線を有する枠)で示される。
【0185】
幾つかの実装形態では、支払いモジュールは、第1のインターフェースモジュールを介して、オフライン支払い動作機の動作を制御ユニットに開始させる、硬貨受け取りスイッチからのプリセットされたシーケンスの支払い受諾信号を検出し(1602)、プリセットされたシーケンスの支払い受諾信号は、硬貨受け取りスイッチによって受け取られたプリセットされた数の硬貨を示す。例えば、
図28A及び
図28Bを参照すると、支払いモジュール1520の第1のインターフェースモジュール1522は、マイクロスイッチ1502から制御ユニット1506へのリード1532を介して支払い受諾信号をサンプリングする。例えば、各支払い受諾信号は、マイクロスイッチ1502による硬貨の受け取りを示す。この例を続けると、支払いモジュール1520の第2のインターフェースモジュール1524は、制御ユニット1506からトランジスタ1510へのリード1534を介して制御信号をサンプリングする。支払いモジュール1520は、制御ユニット1506に電流をトランジスタ1510のゲートに印加させる、マイクロスイッチ1502からのプリセットされたシーケンスの支払い受諾信号(例えば、制御信号)を検出する。例えば、プリセットされたシーケンスの支払い受諾信号は、オフライン支払い動作機1500を動作させる、マイクロスイッチ1502によって受け取られたプリセットされた数の硬貨を示す。例えば、電流をトランジスタ1510のゲートに印加することにより、電流は、電源1508から動作ユニット1512に流れることができ、それにより、動作である。例えば、動作ユニット1512は、電流が電源1508から流れると回転を開始する乾燥機のモータである。
【0186】
幾つかの実装形態では、支払いモジュールは、予め定義された信号シーケンスを決定して(1604)、硬貨受け取りスイッチからのプリセットされたシーケンスの支払い受諾信号をエミュレートする。幾つかの実装形態では、制御ユニット1506にオフライン支払い動作機1500の動作を開始させるプリセットされたシーケンスの支払い受諾信号を検出した後、支払いモジュール1520は、予め定義された信号シーケンスを決定して、プリセットされたシーケンスの支払い受諾信号をエミュレートする。幾つかの実装形態では、オフライン支払い動作機1500の動作を開始するプリセットされた数の硬貨を示す、マイクロスイッチ1502からのプリセットされたシーケンスの支払い受諾信号内の各パルスに関連付けられた金銭価値は、支払いモジュール1520のファームウェアにおいて設定されるデフォルト通貨(例えば、米ドル)及び金額(例えば、$0.25)である。幾つかの実装形態では、オフライン支払い動作機1500の動作を開始するプリセットされた数の硬貨を示す、マイクロスイッチ1502からのプリセットされたシーケンスの支払い受諾信号内の各パルスに関連付けられた金銭価値は、サーバ130によって設定され、通信の橋渡しとしてモバイルデバイス150を使用して、パルスの価値を示す情報をサーバ130からモバイルデバイス150に第2の通信機能(例えば、GSM、CDMA、又はWi-Fi)を介して送信し、その情報をモバイルデバイスから支払いモジュール1520に第1の通信機能(例えば、BLE)を介して転送することにより、遠隔から変更することができる。例えば、大半の場合、各パルスは、米国$0.25である。オフライン支払い動作機でオプションを遠隔から構成することに関する更なる詳細も
図31~
図33を参照して以下に提供される。
【0187】
幾つかの実装形態では、予め定義される信号シーケンスの決定は、現在のシーケンスの支払い受諾信号内のパルスのカウントを識別すること、現在のシーケンスの支払い受諾信号内のパルスの振幅を識別すること、現在のシーケンスの支払い受諾信号内のパルスの形状を識別すること、及びパルスの間隔を識別することの少なくとも1つを含む(1606)。幾つかの実装形態では、プリセットされたシーケンスの支払い受諾信号(例えば、
図28Bのサンプル1550)を検出した後、支払いモジュール1520は、予め定義される信号シーケンスを決定して、プリセットされたシーケンスの支払い受諾信号内のパルスのカウント、プリセットされたシーケンスの支払い受諾信号内のパルスの間隔、プリセットされたシーケンスの支払い受諾信号内のパルスの形状、及びプリセットされたシーケンスの支払い受諾信号内のパルスの振幅を識別することにより、プリセットされたシーケンスの支払い受諾信号をエミュレートする。
【0188】
支払いモジュールは、短距離通信機能を介して、オフライン支払い動作機の動作を実行する要求を各モバイルデバイスから受信する(1608)。例えば、
図8Cを参照すると、支払いモジュール1520(
図28A)は、短距離通信機能(例えば、BLE)を介して、モバイルデバイス150のユーザがオフライン支払い動作機1500(
図28A)の動作の実行を望むことを示すAuthGrantをモバイルデバイス150から受信する。例えば、
図23の動作1012を参照すると、支払いモジュール1520(
図28A)は、短距離通信機能(例えば、BLE)を介して、モバイルデバイス150のユーザがオフライン支払い動作機1500(
図28A)の動作の実行を望むことを示す認可承諾トークンをモバイルデバイス150から受信する。
【0189】
支払いモジュールは、要求が有効であることを確認する(1610)。要求が有効であることの確認は、各モバイルデバイスが、支払い動作を開始することへの、長距離通信機能を介したリモートサーバによる許可を有することを示す(1612)。幾つかの実装形態では、支払いモジュール1520は、AuthGrant又は認可承諾トークンが有効な認可コードを含むか否かを判断することにより、モバイルデバイス150からの要求が有効であることを確認する。
【0190】
要求が有効であるという判断に従って、支払いモジュールは、予め定義された信号シーケンスを制御ユニットに発行することにより、支払い動作機に動作を実行させ(1614)、予め定義された信号シーケンスは、プリセットされた数の硬貨の受け取りに応答して硬貨受け取りスイッチによって発行される信号シーケンスをエミュレートする。例えば、
図28Bを参照すると、支払いモジュール1520は、第1のインターフェースモジュール1522を用いて、
図28Bにおけるサンプル1550をエミュレートする予め定義された信号シーケンスを制御ユニット1506に発行する。この例を続けると、支払いモジュール1520からの予め定義された信号シーケンスの受信に応答して、制御ユニット1506は、電流をトランジスタ1510のゲートに印加し、電流を電源1508から動作ユニット1512に流すことにより、オフライン支払い動作機1500の動作を開始させる。幾つかの実装形態では、制御ユニット1506は、プリセットされた数の硬貨に対応する時間量にタイマを設定し、それにより、設定された時間量にわたって電流をトランジスタ1510のゲートに流すことにより、動作を開始させる。例えば、硬貨のプリセット数は、デフォルト時間量だけオフライン支払い動作機1500を実行させるのに必要な硬貨数であり、続く硬貨を追加して、オフライン支払い動作機1500が動作する時間量を拡張し得る。幾つかの実装形態では、硬貨のプリセット数は、オフライン支払い動作機1500に洗濯洗剤等の購入品を提供するのに必要な硬貨数である。
【0191】
代替的に、幾つかの実装形態では、要求が有効であるという判断に従って、オフライン支払い動作機1500は、クレジットをユーザに表示し(例えば、
図19に示されるディスプレイ122又は124の一方を介して)、ユーザは、オフライン支払い動作機1500 120の入力機構とインタラクションし(例えば、
図19に示されるボタン126又はタッチスクリーンディスプレイ124を介して)、機械の動作を実行する。例えば、オフライン支払い動作機1500が乾燥機である場合、モバイルデバイス150のユーザは、乾燥機の入力機構を介して適切な回転サイクルを選択し、モバイルデバイス150のユーザが乾燥機の開始/実行入力機構を選択すると、乾燥機の制御ユニット1506は、乾燥機の動作を開始させる(例えば、
図28Aにおける動作ユニット1512に対応するモータを開始する)。
【0192】
幾つかの実装形態では、予め定義された信号シーケンスを制御ユニットに発行する代わりに、パルス提供デバイス1520は、モバイルデバイスを介してユーザによって提供される支払いに対応する遠隔構成信号シーケンス(すなわち、オペレータによって遠隔から構成され、認可承諾と共にモバイルデバイスを介してパルス提供デバイス1520に送信される)を発行する。幾つかの実装形態では、遠隔構成信号シーケンスは、等しい数の硬貨に予め定義される信号シーケンスに対応しない。例えば、ユーザが1ドルの支払いを無人機に送信することを選択する場合(パルス提供デバイス1520を介して)、パルス提供デバイス1520によって観測される予め定義される信号シーケンスは、無人機による4枚の米国25セント硬貨の受け取りに応答して提供されるパルスをシミュレートするために、4つの予め定義されるパルスが提供されるべきであることを示し得るが、それらの4つの予め定義されるパルスを提供する代わりに、パルス提供デバイス1520は、代わりに5つの遠隔構成パルスを送信し得る。このようにして、オペレータは、遠隔に配置された無人機と物理的にインタラクションする必要なく、新しい価格オプションを容易に構成することが可能である。更なる詳細が
図31~
図33を参照して以下に提供される。
【0193】
幾つかの実装形態では、動作情報を送信する前、且つ予め定義された信号シーケンスを制御ユニットに発行することによってオフライン支払い動作機に動作を実行させた後、支払いモジュールは、オフライン支払い動作機の動作の開始及びプリセットされた数の硬貨を示す通知をオフライン支払い動作機から取得する(1616)。例えば、プリセットされた信号シーケンスを制御ユニット1506に発行した後、支払いモジュール1520(
図28A)は、予め定義された信号シーケンスの受信に応答して制御ユニット1506がオフライン支払い動作機1500の動作を開始する制御信号を送信したことを示す通知を取得する。例えば、通知は、制御ユニット1506によって送信された制御信号(例えば、電流を電源1508から動作ユニット1512に流すトランジスタ1510のゲートへの電流の印加)をサンプリングする第2のインターフェースモジュール1524によって取得される(例えば、
図28Bのサンプル1570)。
【0194】
通知の受信に応答して、支払いモジュールは、少なくとも部分的に通知に基づいて動作情報を生成し、生成された動作情報をメモリに記憶する(1618)。例えば、通知を取得した後、支払いモジュール1520(
図28A)は、動作の実行及び予め定義された信号シーケンスに関連付けられた硬貨のプリセット数(例えば、オフライン支払い動作機1500の動作を開始するために必要な金額)に対応する動作情報を作成し、支払いモジュール1520のローカルメモリ(例えば、
図20のメモリ760)に動作情報を記憶する。
【0195】
幾つかの実装形態では、支払いモジュールは、短距離通信機能を介して、動作に対応する動作情報を各モバイルデバイスに送信する(1620)。例えば、動作1618後、支払いモジュール1520(
図28A)は、BLE、NFC等の1つ又は複数の短距離通信プロトコル(すなわち、非永続的な通信チャネル)を介して通信する無線/送受信機手段等のモバイルデバイス150の第1の通信機能を介して動作情報をモバイルデバイス150に送信する。
【0196】
図29A及び
図29Bにおける動作が説明された特定の順序は、単に例を目的としたものであり、記載される順序は、動作を実行することができる唯一の順序であることを示すことが意図されないことを理解されたい。本明細書に記載される動作を順序替えする様々な方法(例えば、
図30における方法1700及び/又は
図32の方法3200からの詳細を含むことによる)を当業者は認識する。更に、本明細書に記載される他の方法(例えば、
図30の方法1700又は
図32の方法3200)に関して本明細書に記載される他のプロセスの詳細はまた、
図29A及び
図29Bに関して上述した方法1600に対して同様に適用可能であることに留意されたい。
【0197】
図30は、幾つかの実装形態による、支払い動作機が電子支払いを受け入れられるようにする方法1700のフローチャート図を示す。幾つかの実装形態では、方法1700は、セルフ式の乾燥機又は洗濯機、パーキングメータ、洗車支払いキオスク等のオフライン支払い動作機(例えば、
図5及び
図19の支払い受諾ユニット120(本明細書では「機械120」と呼ばれることもある)又はオフライン支払い動作機1500、
図28A)によって実行される。
【0198】
幾つかの実装形態では、オフライン支払い動作機は、制御ユニット(例えば、
図28Aの制御ユニット1506)、メモリ、及び硬貨受け取りスイッチ(例えば、
図28Aのマイクロスイッチ1502)を含む。幾つかの実装形態では、オフライン支払い動作機は、短距離通信プロトコル(例えば、BLE、NFC等の非永続的な通信チャネル)に対応する短距離通信機能も含み、短距離通信機能は、1つ又は複数のモバイルデバイスと通信するように構成され、1つ又は複数のモバイルデバイスのそれぞれは、相補的な短距離通信機能、及び長距離通信プロトコル(例えば、Wi-Fi、CDMA、GSM等)に対応する長距離通信機能を備えるように構成される。例えば、幾つかの実装形態では、方法1700は、機械120(
図5及び
図19)によって実行される。幾つかの実装形態では、方法1700は、非一時的コンピュータ可読記憶媒体に記憶される命令によって制御され、命令は、オフライン支払い動作機の制御ユニットによって実行される。
【0199】
オフライン支払い動作機は、短距離通信機能を介して、オフライン支払い動作機の動作を実行させる要求を各モバイルデバイスから受信する(1702)。例えば、
図8Cを参照すると、支払いモジュール1520(
図28A)は、短距離通信機能(例えば、BLE)を介して、モバイルデバイス150のユーザがオフライン支払い動作機1500(
図28A)の動作の実行を望むことを示すAuthGrantをモバイルデバイス150から受信する。例えば、
図23の動作1012を参照すると、支払いモジュール1520(
図28A)は、短距離通信機能(例えば、BLE)を介して、モバイルデバイス150のユーザがオフライン支払い動作機1500(
図28A)の動作の実行を望むことを示す認可承諾トークンをモバイルデバイス150から受信する。
【0200】
オフライン支払い動作機は、要求が有効であることを確認する(1704)。要求が有効であることは、各モバイルデバイスが、支払い動作を開始することへの、長距離通信機能を介したリモートサーバによる許可を有することを示す(1706)。幾つかの実装形態では、支払いモジュール1520は、AuthGrant又は認可承諾トークンが有効な認可コードを含むか否かを判断することにより、モバイルデバイス150からの要求が有効であることを確認する。
【0201】
要求が有効であるという判断に従って、オフライン支払い動作機は、予め定義された信号シーケンスを制御ユニットに発行することによって動作を実行し(1708)、予め定義された信号シーケンスは、硬貨受け取りスイッチによるプリセットされた数の硬貨の受け取りをエミュレートする。例えば、要求が有効であるという判断に従って、オフライン支払い動作機又はその構成要素は、
図28Bにおけるサンプル1550をエミュレートする予め定義された信号シーケンスを制御ユニット1506に発行する。この例を続けると、支払いモジュール1520からの予め定義された信号シーケンスの受信に応答して、制御ユニット1506は、電流をトランジスタ1510のゲートに印加し、電流を電源1508から動作ユニット1512に流すことにより、オフライン支払い動作機1500の動作を開始させる。別の例では、要求が有効であるという判断に従って、制御ユニット1506は、電流をトランジスタ1510のゲートに印加し、電流を電源1508から動作ユニット1512に流すことにより、オフライン支払い動作機1500の動作を開始させる。
【0202】
図30における動作が説明された特定の順序は、単に例を目的としたものであり、記載される順序は、動作を実行することができる唯一の順序であることを示すことが意図されないことを理解されたい。本明細書に記載される動作を順序替えする様々な方法(例えば、方法1600又は方法3200からの詳細を含むことによる)を当業者は認識する。更に、本明細書に記載される他の方法(例えば、
図29A及び29Bの方法1600及び
図32の方法3200)に関して本明細書に記載される他のプロセスの詳細はまた、
図30に関して上述した方法1700に対して同様に適用可能であることに留意されたい。
【0203】
図31は、幾つかの実装形態による、無人機の遠隔構成オプションに基づいて無人機に提供する電気パルスを決定するプロセス3100の概略的な流れ図である。
【0204】
幾つかの実装形態では、無人機に提供する電気パルスを決定するプロセス3100は、本明細書に記載される支払い処理システムの1つ又は複数の構成要素を介して実行される。
図31に示されるように、1つ又は複数の構成要素は、無人機1500(
図28A)、モジュール(例えば、無人機の内部インターフェースを介して無人機と結合されるパルス提供デバイス1520)、モバイルデバイス150で実行中のアプリケーション140(例えば、モバイル支払いアプリケーション)、及びサーバ130を含む。
【0205】
幾つかの実装形態では、アプリケーション140は、無人機1520と結合されるパルス提供デバイス1520と通信する(例えば、bluetooth low energy信号(BLE)等のBluetooth信号の伝送を介して)。パルス提供デバイス1520は認可コードを宣伝し(3102)、アプリケーション140は、パルス提供デバイス1520から宣伝されたブロードキャストを受信する。次に、アプリケーション140は、サーバ130に認可を要求する(3104)。幾つかの実装形態では、サーバ130は、機械のデフォルト価格オプションを使用して認可承諾を作成し、認可承諾を暗号化し、モバイルデバイスに送信する(3106)。認可要求及び認可承諾の作成について、上記、特に
図8A~
図8Gを参照して詳細に説明している。
【0206】
ユーザは、この時点で、デフォルト価格オプションに対応する支払い金額をパルス提供デバイス1520に送信するか、又は代替として、サーバから受信した別の価格オプションから選択する(3108)ことを選択し得る。幾つかの実装形態では、モバイルデバイス150で実行中のアプリケーション140は、サーバから受信された価格オプションから選択できるようにするユーザインターフェースも表示する(ユーザインターフェース例を
図32に示す)。
【0207】
ユーザは、例えば、ユーザインターフェース内に表示される第3のオプション(例えば、
図33に示される「4クレジット:$1.00」のオプション)を選択し得る。次に、アプリケーション140は、モバイルデバイス150に、今回はインデックス値3が付随した新しい認可要求をサーバに送信させる(3110)。認可要求を受信した後、サーバは、その特定の機械のインデックス3を有する価格オプションの値を特定し、新しい認可承諾を作成し、それをモバイルデバイスに送信する(3112)。
【0208】
幾つかの実装形態では、トリガー条件を満たした後(例えば、パルス提供デバイス1520へのモバイルデバイス150の近接性に基づく近接性ベースのトリガー条件又はアプリケーション140内で受信されるユーザ入力(スワイプジェスチャ等)に基づくユーザ入力ベースのトリガー条件)、続いて支払いが無人機1520に送信される(3114)。幾つかの実装形態では、支払いモジュールに送信された認可承諾(3116)は、インデックス値3によって参照される価格額の価格を含む。
【0209】
更に、認可承諾は、パルス提供デバイス1520が無人機1520に送信すべきパルス数(及び幾つかの場合、上述したパルス幅等のパルスの特性)についての情報も含む。パルス提供デバイス1520は、認可承諾を復号化し、提供するパルス数についての情報を取得し、取得された情報に従って、続いてパルスを無人機に提供する(3118)。次に、ユーザは、無人機とインタラクションすることができる(例えば、ビデオゲームコンソールでユーザが支払った分のプレイをするため、コインランドリー機をユーザによって提供される支払いに基づく回数にわたって使用可能にするため、及び無人機1520のタイプに基づくインタラクションのため等)。
【0210】
ユーザの口座から適宜引き落とされることを保証するために、プロセス3100は、トランザクション完了情報を送信し、その情報をサーバ130にアップロードすること(3122~3124)も含む。トランザクション完了情報(動作情報とも呼ばれる)の処理及び送信に関する詳細は、
図29Bの動作1616~1620を参照して上記に提供されている。
【0211】
幾つかの実装形態では、価格とパルスとを分離して、様々な価格オプションを作成するデータ構造が利用される。より詳細には、以下のような価格表が可能であり得る:25セント=1パルス=1クレジット、50セント=2パルス=2クレジット、1.00=5パルス=5クレジット、及び2.00=12パルス=12クレジット。
【0212】
幾つかの実装形態では、モバイルデバイス150及びアプリケーション140は、受け取るべきクレジット数を無人機に伝えることに関して信頼されない。これらの構成要素は、クレジット額を決定することに関しても信頼されない。幾つかの実装形態では、全てのその情報は、代わりにサーバ130において構成される。ユーザは、クレジット数(
図32に示される等のアプリケーション140内に示されるユーザインターフェースに提示される)を含む価格マトリクスについての情報にアクセスすることができ、ユーザにとって選択がモバイルアプリで行われているように見えるが、幾つかの実装形態では、ユーザは、単にインデックス値を選択している。幾つかの実装形態では、インデックス値は、サーバ130に送信され、サーバ130は、価格及びクレジットを検索し、詳細を暗号化し、その特定の無人機(認可承諾が生成された)と結合された特定のパルス提供デバイス1520によってのみ読み取ることができる暗号鍵と共に、再びアプリケーション140に送信される(例えば、認可承諾として)。
【0213】
幾つかの実装形態では、全ての価格オプションの認可は、元の認可要求のとき(例えば、
図31の3104等、デフォルト認可承諾について要求された認可がサーバ130によって受信されるとき)に、アプリケーションに送信することができる(サーバ130から)。幾つかの実装形態では、アプリケーション140内でユーザに提供されるユーザインターフェース(例えば、
図32に示される)を介してインデックス値が続けて選択される場合、適切なインデックス付き認可承諾がパルス提供デバイス1520に送信される。幾つかの実装形態では、全ての認可承諾は、同じ認可コードを有し、したがって同じ認可コードを有する認可承諾がパルス提供デバイス1520に送信されると、パルス提供デバイス1520は、同じ認可コードを有する1つのみの認可承諾を受け入れる(
図8A~
図8Gを参照して上記で詳細に説明したように)ため、残りの認可承諾が無効化される。
【0214】
幾つかの実装形態では、パルスの量及び数は分離され、パルスの値から独立して任意の数にできる。
【0215】
幾つかの実装形態では、パルス長(幅)は各クレジット金額で異なることができ、パルスはアレイ内にあり得る(例えば、3つのパルスを1つのスワイプで送信する場合、最初のパルスは10ms、2番目のパルスは50ms、3番目は10msである)。
【0216】
幾つかの実装形態では、機械全体のオファーがある場合、即時認可をユーザに提供することができ(例えば、認可要求をモバイルデバイスから受信した後)、ユーザが最初に支払う(残高を有する)必要なく、適切な認可承諾を無人機1500に送信することができる(モバイルデバイス及びパルス提供デバイスを介して)。
【0217】
このようにして、プロセス3100を使用することにより、アプリケーション140、ユーザ、及びパルス提供デバイス1520間に信頼関係を作らずに、ユーザによって様々な価格オプションを選択することができる。ユーザは、クレジット数(これらはサーバ130において予め定義される)において自由形式の入力を行うことができず、ユーザは、単にインデックス値を選択しており、インデックス値は、次にサーバ130によって解釈され、次に、選択されたインデックス値に関連付けられたクレジット/パルスデータがパルス提供デバイスに送信される(すなわち、モバイルデバイス150は、単にサーバ130からパルス提供デバイス1520にクレジット/パルスデータをルーティングするための通信媒体として使用される)。
【0218】
図32は、幾つかの実装形態による、無人機の遠隔構成オプションの1つを選択するのに使用されるモバイルデバイスのユーザインターフェースの一例を示す。
【0219】
図32に示されるように、幾つかの実装形態では、ユーザインターフェースは、無人機の幾つかの価格オプションを含む。
図31を参照して上述したように、価格オプションは、モバイルデバイス150のユーザからの認可要求に応答してサーバ130から受信される。幾つかの実装形態では、価格オプションは、ウェブベースのインターフェースを介して無人機のオペレータによって構成される(したがって、オペレータは、無人機の新しい価格オプションを作成して提供するために、無人機の物理的な近傍にいる必要がない)。これも上述したように、ユーザインターフェースは、ユーザが価格オプションの1つを選択した後、無人機に提供されることになる電気パルスに関する詳細を提供しない。
【0220】
幾つかの実装形態では、ユーザインターフェースは、特別なプロモーション又は無人機へのオファーに関する詳細(例えば、
図32に示されるように、「7つ購入すると1つ無料で入手」という利用可能なオファー)も含む機械固有のカード(例えば、機械固有カード3202)である。ユーザは、利用可能なオファーを選択した後、7硬貨動作クレジットに等しい支払いを提供することができるが、7回のみの代わりに8回のプレイを受け取る。これは、サーバ130が、7硬貨動作クレジットに等しい支払いの受け取りに応答して、8パルスを無人機に提供すべきである(パルス提供デバイス1520を介して)ことを示す情報を記憶しているためである。
【0221】
幾つかの実装形態では、強調表示された利用可能なオファーが、オペレータによって機械固有カードの前面の状態で組み入れられるように選択され、機械固有カードを裏返すことにより、追加のオファーも利用可能である。機械固有カードを裏返すことは、「特別なオファー」タブのユーザ選択に応答して実行され、次に無人機の1つ又は複数の追加のオファーを示す機械固有カードの裏面が明らかになる。
【0222】
幾つかの実装形態では、ユーザインターフェースは、インタラクション中の無人機のラベルも含む(例えば、「ストリートファイター」のラベルが
図32のユーザインターフェースの上部に示される)。幾つかの実装形態では、ユーザインターフェースは、無人機の表現(例えば、オペレータによって撮影され、次にアプリケーション140を介したユーザへの続く提示のためにサーバ130にアップロードされる無人機の写真)も含む。
【0223】
これも
図32に示されるように、他の無人機の機械固有カードの部分も示される(例えば、機械固有カード3204及び3206)。機械固有カード上を横方向にスワイプすることで、ユーザは、他の無人機の機械固有カードにアクセスすることができる。他の無人機の1台の新しい機械固有カードにアクセスした後、認可要求をサーバ130に提出して、利用可能な価格オプション及びこれらの他の無人機で利用可能な価格オプションに対応する認可承諾を受信する(
図31のプロセス3100に関して上述したように)。幾つかの実装形態では、ユーザが適切な横方向にスワイプする前に、他の無人機のそれぞれのデフォルト認可承諾が受信される(このようにして、デフォルト価格情報が事前ロードされ、ユーザが他の無人機の他のインデックスの1つを選択する場合、当該他のインデックスについての特定の価格データは後に取得することができる)。
【0224】
図33は、幾つかの実装形態による、無人機の遠隔構成オプションに基づいて無人機に提供する電気パルスを決定する方法の流れ図である。便宜上、方法3300について、モバイルデバイス(例えば、上述したモバイルデバイス150)で実行中のアプリケーション(例えば、上述したアプリケーション140)によって実行されるものとして以下に説明する。
【0225】
方法3300は、無人機の遠隔構成オプションに基づいて無人機に提供する電気パルスを決定できるようにする。上述したように、無人機は、特定のクレジット値において特定の硬貨のみを受け入れるようにハードワイヤードされるため、リアルタイム又は構成可能な価格オプションを受け入れることができない。パルス提供デバイス1520(上述)を用いて無人機を変更することにより、無人機のオペレータは、新しい価格オプションを確立し、アプリケーション140を介してユーザに提供することが可能である。このようにして、方法3300を実施することにより、無人機の機能が改善され、無人機でのユーザ経験が改善し、オペレータは新しい収益の流れを開くことができる。
【0226】
図33に示されるように、方法3300は、アプリケーションが、無人機に結合されたパルス提供デバイスから受信したブロードキャストに基づいて、モバイルデバイスの近傍の無人機の存在を検出する(3302)と開始される。例えば、ブロードキャストは、パルス提供デバイスによって送信されるbluetooth low energy(BLE)伝送であり、その伝送は、認可コード(
図8A~
図8Gを参照して詳細に上述)を含む。
【0227】
無人機の存在を検出した後、アプリケーションは、サーバ(例えば、上述したサーバ130)から、無人機とインタラクションするための第1の組の遠隔構成オプションについての情報を受信する(3304)。幾つかの実装形態では、無人機はネットワーク接続を有さないため、サーバ130は、無人機と直接通信することができない。
【0228】
幾つかの実装形態では、遠隔構成オプションは、価格オプションである。幾つかの実装形態では、遠隔構成オプションは、予め定義される価格表に従って決定される価格オプションである。幾つかの実装形態では、予め定義される価格表は、サーバにおける現在の日時に基づいて決定される(このようにして、モバイルデバイスを介して受信又は通信された日時又はタイムゾーン情報は信頼されず、潜在的に悪意のある挙動を回避又は軽減するために、サーバ130からのそのようなタイミング情報のみが利用される)。幾つかの実装形態では、遠隔構成オプションは、無人機とのいかなる物理的なインタラクションも必要とせずに、無人機のオペレータによって構成される(例えば、オペレータは、ウェブベースのインターフェースを介する等、サーバを通してオプションを構成するのみでよく、無人機のいかなる動作又はインターフェースも物理的に変更する必要がない)。
【0229】
幾つかの実装形態では、遠隔構成オプションは、無人機との機械的なインタラクションを介して(無人機への硬貨の挿入を介して)利用可能な価格オプションと異なる。例えば、オペレータは、1個の値段で2個買える取引、時間に基づく取引(特定の日時後、その前、又はその間に機械を使用することに対する値引き)、ロイヤルティ取引(複数の日数、連続して無人機を使用することに対する値引き)、最新の活動に基づく取引(所定の非活動期間を超えて使用されていなかった無人機の使用に戻ることに対する値引き)等を確立することができ、これらのオプションは、ユーザがアプリケーション140及びパルス提供デバイス1520を介して無人機とインタラクションするまで利用可能でない(これらのオプションは、本明細書において説明されるように、サーバ130との通信を通して無人機に動的に伝達されなければならないため)。
【0230】
第1の組の遠隔構成オプションについての情報の受信に応答して、アプリケーションは、モバイルデバイスで実行中である間、アプリケーションにおいて、第1の組の遠隔構成オプション内の各オプションの選択を可能にするユーザインターフェースオブジェクトを表示する(3306)。ユーザインターフェースの一例を
図32に示す(
図31及び
図32を参照して上述している)。
【0231】
アプリケーションはまた、第1の組の遠隔構成オプション内の第1のオプションに対応する第1のユーザインターフェースオブジェクトの選択を検出する(3308)。第1のユーザインターフェースオブジェクトの選択を検出した後(又は検出に応答して)、アプリケーションは、サーバから、無人機における第1のオプションへの認可承諾を含む情報を受信し(3310)、情報は、第1のオプションに従ってパルス提供デバイスによって無人機に提供される電気パルスに関する仕様を含む。トリガー条件が満たされたという判断に従って、アプリケーションは、認可承諾及び仕様を含む情報をパルス提供デバイスに送信する(3312)。認可承諾及びパルス情報をパルス提供デバイスに送信した後、アプリケーションは、パルス提供デバイスから、電気パルスが仕様に従って無人機に提供されたという指示情報(
図31を参照して上述したように、トランザクション完了又は動作情報等)を受信する(3314)。
【0232】
幾つかの実装形態では、アプリケーションは、遠隔構成オプションがもはや現在のものではないという第2の指示情報をサーバから受信する。例えば、サーバは、遠隔構成オプション(第1の組等)に関連付けられた第1のハッシュ値を、サーバで利用可能な最新の遠隔構成オプションに関連付けられた第2のハッシュ値と比較する。ハッシュ値が一致しない場合、サーバは、指示情報を送信する(アプリケーション140に)。第2の指示情報をサーバから受信することに応答して、アプリケーションは、第1の組の遠隔構成価格オプションとは別個の更新された組の遠隔構成価格オプションを受信する。幾つかの実装形態では、第1の組の遠隔構成オプション(この時点では古い)に基づいてユーザによって無人機に送信された任意の支払いは、キャンセルされ、更新された組の遠隔構成オプションを介して提供される新しいオプションを選択できるようにするユーザインターフェースオブジェクトがユーザに提供される。
【0233】
方法3300の動作は、本明細書に記載される他の方法(例えば、方法1600及び1700)の動作に基づいて再編成、置換、又は変更が可能であることを当業者は認識する。
【0234】
相対的な用語は、本技術の理解を促進することが意図され、本発明の範囲の限定を意図しないことに留意されたい。同様に、特に別段のことが示される場合を除き、ラベルに使用される用語(例えば、「第1の」、「第2の」、及び「第3の」)は、単に区別を意図され、順序又は限定を意図しない。語句「短距離」における用語「短」(技術的に固有の意味を有することに加えて)は、語句「長距離」における用語「長」と相対する。
【0235】
用語「し得る」、「し得るであろう」、「することができる」、及び「することができるであろう」は、代替及び任意選択的な特徴を示すのに使用され、特に特許請求の範囲に含まれる場合にのみ限定として解釈されるべきである。
【0236】
別段のことが指定される場合を除き、用語「又は」は、非排他的な形態で使用されることに留意されたい(例えば、「A又はB」は、A、B、A及びB、又はそれらの任意の組み合わせを含むが、これらの可能性の全てを包含する必要はない)。別段のことが指定される場合を除き、「及び/又は」も同様に使用されることに留意されたい(例えば、「A及び/又はB」は、A、B、A及びB、又はそれらの任意の組み合わせを含むが、これらの可能性の全てを包含する必要はない)。別段のことが指定される場合を除き、用語「包含する」及び「有する」は、「含む」を意味することに留意されたい(例えば、A及びBを包含する、有する、又は含むデバイスは、A及びBを含むが、任意選択的にCを含み得、又はA及びB以外の追加の構成要素を含み得る)。別段のことが指定される場合を除き、単数形「1つの(a)」、「1つの(an)」、及び「その(the)」は、文脈によって明らかに別段のことが示される場合を除き、1つ又は2つ以上を指すことに留意されたい。
【0237】
本明細書に記載された発明、例、及び実装形態は、特定の例示された材料、方法、及び/又は構造に限定されないことを理解されたい。本明細書に記載された発明、例、及び実装形態は、そのように特に識別されるか否かに関係なく、好ましい発明、例、及び実装形態と見なされるべきであることを理解されたい。
【0238】
上記明細書で利用した用語及び表現は、限定ではなく説明の用途として使用され、示され且つ説明される特徴の均等物の除外を意図しない。上記は、本発明の選択された実装形態の詳細な説明であるが、様々な代替形態、変更形態、適合形態、変形形態、及び/又は組み合わせ、並びに均等物を使用して本発明を実施することが可能である。同じ目的を達成するように計算された任意の構成が、示された特定の実施形態を置換し得ることが当業者に理解される。以下の特許請求の範囲は、本明細書に記載される本発明の一般的な特徴及び特定の特徴の全て、並びに言語の問題としてそれらの間に入ると言うことができる本発明の範囲の全ての記述を包含することが意図されることも理解されたい。