概要
本明細書において説明されている例は、ユーザコンピューティングデバイスのロケーションデータおよびドライブスルーロケーションにおけるビーコンデバイスからの信号強度インジケータデータに基づきドライブスルーロケーションの特定の地点におけるユーザコンピューティングデバイスロケーションを識別するためのコンピュータ実装技術を実現する。
一例において、マーチャントは支払処理システムに登録する。マーチャントシステムは、マーチャントビーコンデバイスおよびマーチャント販売時点情報管理デバイスをマーチャントシステムロケーションに設置する。一例において、ユーザは、支払処理システムにアカウントを確立し、支払アプリケーションをユーザに関連付けられているユーザコンピューティングデバイス上にダウンロードする。一例において、ユーザは、ユーザコンピューティングデバイス上の支払アプリケーションを介してユーザアカウントに関連付ける支払アカウント情報を入力する。ユーザのユーザコンピューティングデバイスは、ユーザコンピューティングデバイスのロケーションを決定し、Bluetooth low energy(「BLE」)ネットワーク上の信号を探索する。ユーザコンピューティングデバイスは、ユーザコンピューティングデバイスがマーチャント販売時点情報管理デバイスに関連付けられているジオフェンス境界に入ったと決定した後、またはマーチャントビーコンデバイスによってブロードキャストされるマーチャントビーコンデバイス識別子を識別した後にアクティブ状態に入る。ユーザコンピューティングデバイスは、マーチャントビーコンデバイスの信号強度を監視し、ユーザコンピューティングデバイスロケーションを監視する。ユーザコンピューティングデバイスがマーチャントビーコンデバイスから第1の閾値距離より短い距離にあり、マーチャントビーコンデバイス信号強度が第1の閾値信号強度より大きい場合、ユーザコンピューティングデバイスは、マーチャント販売時点情報管理デバイスにチェックインし、ユーザアカウント識別子をマーチャント販売時点情報管理デバイスに伝送する。別の例において、ユーザコンピューティングデバイスは、支払処理システムにチェックインし、ネットワーク上でユーザアカウント識別子を支払処理システムに伝送する。この例では、マーチャント販売時点情報管理デバイスは、ネットワーク上でユーザアカウント識別子を受信する。ユーザコンピューティングデバイスは、ユーザコンピューティングデバイスのロケーションおよびマーチャントビーコンデバイスの信号強度を監視し続けて、ユーザコンピューティングデバイスがジオフェンス境界内に留まっているかどうかを決定し、ユーザコンピューティングデバイスがいつネクストインラインポイントに到達するかを決定する。ユーザコンピューティングデバイスは、ユーザコンピューティングデバイスがマーチャントビーコンデバイスから第2の閾値距離より短い距離にあると決定したことに応答し、およびマーチャントビーコンデバイス信号強度が第2の閾値信号強度より大きいと決定したことに応答して、ユーザコンピューティングデバイスがネクストインラインポイントに到達していると決定し、BLEネットワーク上でマーチャント販売時点情報管理デバイスにネクストインライン信号を送信する。一例において、第2の閾値距離は第1の閾値距離より短く、第2の閾値信号強度は第1の閾値信号強度より大きい。ユーザコンピューティングデバイスは、ネクストインライン信号およびユーザアカウント識別子をマーチャント販売時点情報管理デバイスに伝送する。マーチャント販売時点情報管理機能の操作者は、ユーザ識別情報を確認し、ユーザが支払データを選択するのを補助し、マーチャント販売時点情報管理デバイスを介して決済の詳細を確認する。マーチャント販売時点情報管理デバイスは、ユーザアカウント識別子と、決済で使用するためのユーザ選択済み支払アカウント情報と、決済の詳細とを、受信された情報に基づき支払決済を処理する支払処理システムに伝送する。
一例において、マーチャントシステムは支払処理システムに登録する。マーチャントシステムの操作者は、マーチャント販売時点情報管理デバイス上に支払アプリケーションをインストールする。別の例では、マーチャントシステムの操作者は、支払アプリケーションをマーチャントシステムロケーションにある複数のマーチャント販売時点情報管理デバイス上にインストールする。マーチャントビーコンデバイスは、支払処理システムからビーコン識別子を受信する。たとえば、マーチャントシステムの操作者は、1つまたは複数のマーチャントビーコンデバイスをマーチャントシステムロケーションに設置する。マーチャントビーコンデバイスは、マーチャントシステムロケーションにおいてワイヤレス通信を介してマーチャントビーコン識別子をブロードキャストする。マーチャントシステムの操作者は、マーチャントビーコンデバイス識別子に対応するようにマーチャント販売時点情報管理デバイスをマーチャントシステムロケーションに設置する。別の例では、複数のマーチャント販売時点情報管理デバイスがマーチャントシステムロケーションに設置され、各マーチャント販売時情報管理デバイスは特定のマーチャントビーコンデバイス識別子に対応する。さらに別の例では、特定のマーチャントビーコンデバイス識別子が、2つまたはそれ以上の特定のマーチャント販売時点情報管理デバイスに対応し得る。別の例において、マーチャント販売時点情報管理デバイスは、マーチャントビーコンデバイスの代わりに、マーチャントビーコン識別子をブロードキャストする。支払処理システムは、マーチャント販売時点情報管理デバイス識別子を受信し、それをマーチャントビーコンデバイスまたはマーチャント販売時点情報管理デバイスによってブロードキャストされた対応するビーコン識別子に関連付ける。
一例において、ユーザは支払処理システムに登録する。たとえば、ユーザは、ユーザに関連付けられているユーザコンピューティングデバイスを介して支払処理システムウェブサイトにアクセスする。ユーザは、支払処理システムに登録し、支払アプリケーションをユーザコンピューティングデバイス上にダウンロードする。ユーザは、支払アプリケーションを使用して支払アカウント情報をユーザアカウントに入力する。たとえば、支払アカウント情報は、ユーザの1つまたは複数のクレジットアカウント(credit account)、銀行口座(bank account)、マーチャントストアアカウント(merchant store account)、または他の支払アカウント(payment account)に関連付けられている情報を含む。一例において、支払アカウント情報は、口座番号、口座名義人名、有効期限、および他の関連する情報などの支払アカウントで決済を処理するために必要な情報を含む。ユーザは、支払アプリケーションを使用してユーザアカウントに関連付けられている許可(permission)および設定を構成する。たとえば、ユーザは、決済で使用するために特定の支払アカウントを関連付けるものとしてよい。この例では、ユーザは、決済の際に販売時点情報管理デバイスにおいて支払アカウント情報を選択する必要はなく、その代わりに、関連付けられている特定の支払アカウントが、マーチャントロケーションにおいてユーザによって開始されたすべての決済において使用される。
ユーザは、ユーザコンピューティングデバイス上の支払アプリケーションにサインインする。ユーザは、マーチャント販売時点情報管理デバイスに関連付けられているジオフェンス境界内でユーザコンピューティングデバイスを携帯する。ユーザコンピューティングデバイスは、ユーザコンピューティングデバイスのロケーションを決定し、ユーザコンピューティングデバイスのアンテナを介してBLEネットワーク上の信号を探索する。ユーザコンピューティングデバイスは、ユーザコンピューティングデバイスがマーチャント販売時点情報管理デバイスに関連付けられているジオフェンス境界に入ったと決定した後、またはマーチャントビーコンデバイスによってブロードキャストされるマーチャントビーコンデバイス識別子を識別した後に非アクティブ状態からアクティブ状態に遷移する。別の例では、ユーザコンピューティングデバイスは、ユーザコンピューティングデバイスがジオフェンス境界に入っていると決定した後に非アクティブ状態から半アクティブ状態に遷移する。ユーザコンピューティングデバイスの例示的な半アクティブ状態は、ユーザコンピューティングデバイスが定期的間隔でBLE、Wi-Fi、またはNFCネットワーク上のワイヤレス信号を探索する状態を含む。ユーザコンピューティングデバイスの例示的なアクティブ状態は、ユーザコンピューティングデバイスが半アクティブ状態に入ったときよりも短い持続時間の間隔でBLE、Wi-Fi、またはNFCネットワーク上のワイヤレス信号を探索する状態を含む。ユーザコンピューティングデバイスの例示的な非アクティブ状態は、ユーザコンピューティングデバイスがアクティブ状態と半アクティブ状態の両方に入ったときよりも短い持続時間の間隔でBLE、Wi-Fi、またはNFCネットワーク上のワイヤレス信号を探索する状態を含む。
一例において、マーチャントビーコンデバイス識別子は、ユーザコンピューティングデバイスのBLEスキャンを介して受信される。ユーザコンピューティングデバイスは、マーチャントビーコンデバイスの信号強度を監視し、ユーザコンピューティングデバイスロケーションを監視する。ユーザコンピューティングデバイスが、ログに記録されているロケーションデータおよびログに記録されている信号強度データに基づき、ユーザコンピューティングデバイスがマーチャントビーコンデバイスから第1の閾値距離より短い距離にあり、マーチャントビーコンデバイス120の信号強度が最小閾値信号強度より大きいと決定したときに、ユーザコンピューティングデバイスは、ユーザアカウント識別子を含むチェックイン信号をマーチャント販売時点情報管理デバイスに送信する。
ユーザは、マーチャント販売時点情報管理デバイスに接近する。販売時点情報管理デバイスの操作者は、ユーザの購入品目を合計する。マーチャント販売時点情報管理デバイスの操作者は、ユーザに支払オプションを選択するよう求める。ユーザは、支払アプリケーションを介して決済を開始するようにマーチャント販売時点情報管理デバイスの操作者に指図する。たとえば、前に説明されているように、支払アプリケーションは、マーチャント販売時点情報管理デバイスおよびユーザコンピューティングデバイスの両方にインストールされる。マーチャント販売時点情報管理デバイスの操作者は、支払アプリケーションを使用して決済を開始する、マーチャント販売時点情報管理デバイス上のオプションを選択する。
一例において、ユーザコンピューティングデバイスからマーチャントビーコンデバイスまでの第1の閾値距離およびユーザコンピューティングデバイスによって検出されたようなマーチャントビーコンデバイスの第1の閾値信号強度は、ユーザコンピューティングデバイスがチェックイン信号を送信する「チェックインポイント」に対応する。また、第2の閾値距離および/または第2の閾値信号強度は、ユーザコンピューティングデバイスが、ユーザコンピューティングデバイスがマーチャントロケーションにおけるドライブスルーウィンドウで支払いのためにネクストインラインであるとみなすロケーションに対応する。一例において、第1の閾値距離は第2の閾値距離より長く、第1の閾値信号強度は第2の閾値信号強度より小さい。さらに、一例において、マーチャントロケーションに関連付けられているジオフェンス境界は、マーチャントビーコンデバイスから第1の閾値距離に等しい、または第1の閾値距離より遠い距離にある。一例において、第1の信号強度閾値は、ユーザコンピューティングデバイスがチェックイン信号を送信するチェックインポイントに相関し、第2の信号強度閾値は、ユーザコンピューティングデバイスが、ユーザコンピューティングデバイスがマーチャントロケーションにおけるドライブスルーウィンドウで支払いのためにネクストインラインであるとみなすロケーションに相関する。
一例において、ユーザの移動、運転、または他の行動に応じて、ユーザコンピューティングデバイスは、ジオフェンス境界もしくはその中、ジオフェンス境界とチェックインポイントとの間、チェックインポイントとネクストインラインポイントとの間、またはネクストインラインポイント内にあるように位置を変更し得る。マーチャントビーコンデバイスから検出された信号強度インジケータおよびユーザコンピューティングデバイスによってログに記録されたロケーションデータを使用して、ユーザコンピューティングデバイスは、ユーザコンピューティングデバイスが適切なアクションを実行するためにどの境界および/または距離閾値の間に配置されているかを決定し得る。前に説明されているように、ユーザコンピューティングデバイスが、ロケーションデータに基づきマーチャントビーコンデバイス識別子を検出することで、それがジオフェンス境界に入ったと判断した場合に、ユーザコンピューティングデバイスは、非アクティブ状態からアクティブ状態に遷移する。さらに、ユーザコンピューティングデバイスが、信号強度が第1の閾値信号強度より大きく、マーチャントビーコンデバイスからの距離が第1の閾値距離より短いと決定したことに基づきユーザコンピューティングデバイスがチェックインポイントとネクストインラインポイントとの間にあると判断した場合に、ユーザコンピューティングデバイスは、BLEネットワーク上でマーチャントドライブスルーウィンドウにおいてチェックイン信号をマーチャントPOSデバイスに送信する。別の例において、ユーザコンピューティングデバイスは、ネットワークを介してチェックイン信号を支払処理システムに送信し、支払処理システムは、ネットワークを介してチェックイン信号をマーチャントPOSデバイスに伝送し、マーチャントPOSデバイスは、ネットワークを介してチェックイン信号を受信する。例示的なチェックイン信号は、ユーザデバイス識別子を含む。別の例では、マーチャントロケーションは、チェックインポイントを含まず、ネクストインラインポイントのみを含み、ユーザコンピューティングデバイスは、信号強度が第1の閾値信号強度より大きく、マーチャントビーコンデバイスからの距離が第1の閾値距離より短い距離にあると決定するか、またはチェックイン信号を伝送する。一例において、ユーザコンピューティングデバイスが、信号強度が第2の閾値信号強度より大きく、マーチャントビーコンデバイスからの距離が第2の閾値距離より短いと決定したことに基づきユーザコンピューティングデバイスがチェックインポイント内にあると判断した場合に、ユーザコンピューティングデバイスは、BLEネットワークを介してネクストインライン信号をマーチャントPOSデバイスに伝送する。別の例において、ユーザコンピューティングデバイスは、ネットワーク上でネクストインライン信号を支払処理システムに伝送し、支払処理システムは、ネットワークを介してネクストインライン信号をマーチャントPOSデバイスに伝送し、マーチャントPOSデバイスは、ネットワークを介してネクストインライン信号を受信する。例示的なネクストインライン信号は、ユーザアカウント識別子を含む。
ユーザは、マーチャントPOSデバイスを含むドライブスルーウィンドウに到達し、マーチャントPOSデバイスの操作者は、ユーザの購入品目を合計する。マーチャントPOSデバイスの操作者は、ユーザに支払オプションを選択することを求め、ユーザは支払アプリケーションを介して、マーチャントPOSデバイスの操作者に決済を開始することを指図する。マーチャントPOSデバイスの操作者は、支払アプリケーションを使用して決済を開始する、マーチャントPOSデバイス上のオプションを選択する。支払アプリケーションを使用して決済を開始するオプションの選択の入力を受け取った後、マーチャントPOSデバイスは、ネクストインラインステータスメッセージを発信したユーザコンピューティングデバイスに関連付けられているユーザアカウント識別情報を表示する。マーチャントPOSデバイスの操作者は、ユーザ識別情報を確認し、ユーザアカウントにより決済を行うオプションを選択し、マーチャントPOSデバイスは、ユーザアカウント識別子および支払アカウント情報要求を支払処理システムに伝送する。一例において、ユーザ識別情報を確認するステップは、マーチャントPOSデバイスの操作者がユーザの身分証明書を要求し、身分証明書に載っているデータをマーチャントPOSデバイス上に表示されているユーザアカウントデータと比較するステップを含み得る。
一例において、支払処理システムは、マーチャントPOSデバイスからのユーザの識別情報の指示、および支払アカウント情報要求を受信する。たとえば、マーチャントPOSデバイスは、ネットワークを介してユーザの識別情報の指示を支払処理システムに伝送し、支払処理システムは、ネットワークを介してユーザの識別情報の指示を受信する。支払処理システムは、識別されたユーザに対応するアカウント情報をマーチャント販売時点情報管理デバイスに伝送する。たとえば、マーチャントPOSデバイスからユーザの識別情報を受信した後に、支払処理システムは、識別されたユーザの1つまたは複数アカウントに関連付けられている支払アカウント情報を伝送する。マーチャント販売時点情報管理デバイスは、識別されたユーザの1つまたは複数のアカウントに関連付けられている情報の一部または全部を表示する。マーチャント販売時点情報管理デバイスの操作者は、ユーザの指図の後、決済に対する特定のユーザアカウントを選択し、ユーザの許可により決済を確認するマーチャント販売時点情報管理デバイスは、ネットワーク上で支払処理システムに決済の詳細を伝送する。たとえば、決済の詳細は、決済の合計額、決済で使用するための選択されたユーザアカウント、決済で使用するためのマーチャントのアカウント、および他の有用なもしくは関連性のある情報を含み得る。たとえば、支払処理システムは、マーチャントPOSデバイスからネットワーク上で決済の詳細を受信する。支払処理システムは、ネットワーク上で決済許可要求を発行人システムに伝送する。たとえば、発行人システムは、ネットワーク上で支払処理システムから決済許可要求を受信する。一例において、発行人システムは、決済で使用するため選択されたユーザ支払アカウントに関連付けられる。発行人システムは、決済許可要求を認可し、ネットワーク上で決済許可の認可を支払処理システムに伝送する。支払処理システムは、ネットワーク上で決済許可認可を受信し、ネットワーク上で決済受領書をマーチャント販売時点情報管理デバイスに伝送する。
本明細書で説明されている方法およびシステムを使用し、頼りにすることによって、支払処理システム、マーチャントビーコンデバイス、ユーザコンピューティングデバイス、およびマーチャント販売時点情報管理デバイスは、ユーザが決済を実施することを、一部の最新の技術で要求されているようにユーザがマーチャント販売時点情報管理デバイスにおいてユーザコンピューティングデバイスをインタラクティブに操作することなく、可能にする。そのようなものとして、本明細書で説明されているシステムおよび方法は、ユーザコンピューティングデバイスを介してユーザによって必要とされる入力およびユーザを識別するためにマーチャント販売時点情報管理デバイスの操作者によって必要とされる入力を減らし得る。
例示的なシステムアーキテクチャ
次に図面を見ると、類似の番号は、図全体を通して似た(ただし、必ずしも同一でない)要素を指示しており、そこで、例が詳しく説明されている。
図1は、いくつかの例による、ユーザ101の顔認識により決済を行うためのシステム100を示すブロック図である。図1に示されているように、システム100は、1つまたは複数のネットワーク140を介して互いに通信するように構成されているネットワークコンピューティングデバイス110、120、130、150、および160を含む。いくつかの実施形態において、デバイスに関連付けられているユーザは、本明細書で説明されている技術の利点を得るために、アプリケーションをインストールし、および/または特徴選択を行わなければならない。
例において、ネットワーク140は、ローカルエリアネットワーク(「LAN」)、ワイドエリアネットワーク(「WAN」)、イントラネット、インターネット、ストレージエリアネットワーク(「SAN」)、パーソナルエリアネットワーク(「PAN」)、メトロポリタンエリアネットワーク(「MAN」)、ワイヤレスローカルエリアネットワーク(「WLAN」)、仮想プライベートネットワーク(「VPN」)、セルラーまたは他のモバイル通信ネットワーク、Bluetooth(登録商標)、Bluetooth low energy(「BLE」)、近距離無線通信(「NFC」)、もしくはこれら任意の組合せ、または信号、データ、および/またはメッセージの通信を円滑にする他の適切なアーキテクチャもしくはシステムを含み得る。例の説明全体を通して、「データ」および「情報」という用語は、本明細書において、テキスト、画像、音声、動画、またはコンピュータベースの環境内に存在し得る他の任意の形態の情報を指すために入れ替えて使用することができることが理解されるであろう。
各ネットワークコンピューティングデバイス110、120、130、150、および160は、ネットワーク140上でデータを伝送し、受信することができる通信モジュールを有するデバイスを備える。たとえば、各ネットワークコンピューティングデバイス110、120、130、150、および160は、サーバ、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、1つまたは複数のプロセッサが中に組み込まれている、および/または結合されているテレビ、スマートフォン、ハンドヘルドコンピュータ、携帯情報端末(「PDA」)、または任意の他の有線もしくは無線プロセッサ駆動デバイスを含み得る。図1に示されている例において、ネットワークコンピューティングデバイス110、120、130、150、および160は、それぞれ、ユーザ101、マーチャントビーコンデバイス120の操作者、マーチャント販売時点情報管理(「POS」)デバイス130の操作者、発行人システム150の操作者、および支払処理システム160によって操作される。
例示的なユーザコンピューティングデバイス110は、アンテナ111と、Bluetooth low energy(「BLE」)コントローラ112と、支払アプリケーション113と、ユーザインターフェース115と、データ記憶装置ユニット116と、全地球測位システム(「GPS」)コンポーネント117と、ウェブブラウザ118と、通信アプリケーション119とを備える。
一例において、アンテナ111は、ユーザコンピューティングデバイス110とマーチャントビーコンデバイス120との間の通信の手段である。一例において、Bluetooth low energy(「BLE」)コントローラ112は、アンテナ111を通じて、無線信号を出力するか、またはマーチャントビーコンデバイス120からの無線信号を監視する。別の例では、Wi-Fiコントローラまたは近距離無線通信(「NFC」)コントローラが使用される。
一例において、BLEコントローラ112は、データを送受信し、認証および暗号化機能を実行し、ユーザコンピューティングデバイス110がマーチャントビーコンデバイス120からの伝送をどのように監視するかを指図するか、またはBLE指定手順に従ってユーザコンピューティングデバイス110を様々な省電力モードに構成することができる。別の例では、ユーザコンピューティングデバイス110は、Wi-Fiコントローラまたは類似の機能を実行することができるNFCコントローラを備える。例示的なBLEコントローラ112は、支払アプリケーション113と通信し、ワイヤレス、BLE通信チャネル上でデータの送受信を行うことができる。別の例では、Wi-Fiコントローラ112またはNFCコントローラ112が、Wi-FiもしくはNFCプロトコルを使用してBLEコントローラ112として類似の機能を実行する。一例において、BLEコントローラ112はアンテナ111をアクティブ化して、ユーザコンピューティングデバイス110とマーチャントビーコンデバイス120との間にワイヤレス通信チャネルを形成する。ユーザコンピューティングデバイス110は、アンテナ111を介してマーチャントビーコンデバイス120と通信する。一例において、ユーザコンピューティングデバイス110がアクティブ化されたときに、BLEコントローラ112は、アンテナ111を通じて、無線信号をポーリングするか、またはマーチャントビーコンデバイス120からの無線信号を監視する。
一例において、支払アプリケーション113は、ユーザコンピューティングデバイス110上に存在し、ユーザコンピューティングデバイス110に対してそのオペレーションを実行するプログラム、機能、ルーチン、アプレット、または類似のエンティティである。いくつかの例において、ユーザ101は、本明細書で説明されている技術の利点を得るために、ユーザコンピューティングデバイス110に支払アプリケーション113をインストールし、および/またはユーザコンピューティングデバイス110上で特徴選択を行わなければならない。一例において、ユーザ101は、ユーザインターフェース115を介して、ユーザコンピューティングデバイス110上の支払アプリケーション113にアクセスし得る。一例において、支払アプリケーション113は、支払処理システム160に関連付けられ得る。別の例では、支払アプリケーション113は、マーチャントビーコンデバイス120およびマーチャント販売時点情報管理デバイス130に関連付けられているマーチャントシステムに関連付けられ得る。さらに別の例では、2つの支払アプリケーション113が存在し、一方はマーチャントシステムに関連付けられ、もう一方は支払処理システム160に関連付けられている。
一例において、ユーザインターフェース115は、ユーザ101が支払アプリケーション113および/またはウェブブラウザ118をインタラクティブに操作することを可能にする。たとえば、ユーザインターフェース115は、タッチスクリーン、音声ベースのインターフェース、またはユーザ101がユーザコンピューティングデバイス110上のアプリケーションまたはモジュールから入力を提供し、出力を受け取ることを可能にする他のインターフェースであってよい。一例において、ユーザ101は、ユーザインターフェース115を介して、支払アプリケーション113および/またはウェブブラウザ118をインタラクティブに操作して、支払処理システム160上にユーザ101のアカウントを構成する。この例では、ユーザ101は、ユーザインターフェース115上の1つまたは複数の対象を作動させることによって支払アプリケーション113を介してユーザ101に関連付けられている支払アカウント情報の追加、削除、および/または修正を行い得る。別の例では、ユーザ101は、ユーザインターフェース115を介して、支払アプリケーション113および/またはウェブブラウザ118をインタラクティブに操作して、必要な場合に、支払を可能にする。一例において、ユーザインターフェース115は、ユーザ101がユーザ101の署名を支払アプリケーション113および/または支払処理システム160にサブミットすることを可能にする。たとえば、ユーザインターフェース115は、支払アプリケーション113および/または支払処理システム160にサブミットするためにユーザコンピューティングデバイス110のユーザインターフェース115にユーザ101が署名を手書きすることを可能にするペンパッドを備えていてもよい。
一例において、データ記憶装置ユニット116は、情報を記憶するのに適しているユーザコンピューティングデバイス110からアクセス可能なローカルまたはリモートデータ記憶装置構造体を含む。一例において、HTML5ローカル記憶装置などの、データ記憶装置ユニット116は暗号化された情報を記憶する。
一例において、全地球測位システム(「GPS」)コンポーネント117は、ユーザコンピューティングデバイス110の任意のコンポーネント、アプリケーション、または機能であってよい。
一例において、ユーザ101は、ウェブブラウザ118アプリケーションまたはスタンドアロンアプリケーションなどの通信アプリケーション119を使用して、分散ネットワーク140を介してドキュメントもしくはウェブページを閲覧し、ダウンロードし、アップロードし、または他の何らかの方法でアクセスすることができる。
一例において、ウェブブラウザ118は、ユーザ101がユーザコンピューティングデバイス110を使用してウェブページをインタラクティブに操作することを可能にすることができる。一例において、ユーザ101は、ウェブブラウザ118を介して支払処理システム160によって維持されているユーザ101のアカウントにアクセスし得る。別の例では、ユーザ101は、ウェブブラウザ118を介してマーチャントシステムウェブサイトにアクセスし得る。本明細書において説明されているいくつかの例において、支払アプリケーション113によって実行される1つまたは複数の機能は、支払処理システム160に関連付けられているウェブブラウザ118アプリケーションによっても実行され得る。
一例において、通信アプリケーション119は、ユーザコンピューティングデバイス110およびマーチャントシステムのウェブサーバを含む、ネットワーク140に接続されたウェブサーバまたは他のコンピューティングデバイスとインタラクティブにやり取りすることができる。
いくつかの例において、支払アプリケーション113によって実行されるものとして本明細書において説明されている1つまたは複数の機能は、ウェブブラウザ118アプリケーション、たとえば、マーチャントシステムウェブサイトに関連付けられているか、または支払処理システム160に関連付けられているウェブブラウザ118アプリケーションによっても実行され得る。いくつかの例において、支払アプリケーション113によって実行されるものとして本明細書で説明されている1つまたは複数の機能は、ユーザコンピューティングデバイス110のオペレーティングシステムによっても実行され得る。いくつかの例において、ウェブブラウザ118を介して実行されるものとして本明細書で説明されている1つまたは複数の機能は、支払アプリケーション113を介しても実行され得る。
例示的なマーチャントビーコンデバイス120は、アンテナ121とBLEコントローラ122とを備える。一例において、マーチャントシステムロケーションは、マーチャントシステムロケーションに設置された1つまたは複数のマーチャントビーコンデバイス120を含む。一例において、設置された各マーチャントビーコンデバイス120は、支払処理システム160によって、マーチャントロケーションに設置されている特定のマーチャント販売時点情報管理デバイス130に関連付けられる。一例において、マーチャントビーコンデバイス120は、マーチャントシステムロケーションにおけるドライブスルーウィンドウの付近に設置される。一例において、支払処理システム160は、マーチャントビーコンデバイス120識別子をマーチャント販売時点情報管理デバイス130識別子と相関させるデータベースを備え得る。たとえば、マーチャント販売時点情報管理デバイス130識別子は、シリアル番号またはMAC IDなどのデバイスに特有のハードウェア識別子を含み得る。別の例では、マーチャントビーコンデバイス120識別子は、ビーコンデバイスに特有のハードウェア識別子または支払処理システム160によって生成され、マーチャントビーコンデバイス120に記憶されている識別子を含み得る。例示的なマーチャントビーコンデバイス120は、特定のマーチャントビーコンデバイス120識別子を、ワイヤレスネットワーク140、たとえば、BLEネットワーク上で、ワイヤレスネットワーク140を維持するために必要な閾値距離内にある任意のユーザコンピューティングデバイス110にブロードキャストするか、送信するか、または他の何らかの方法で伝送するようにプログラムされる。たとえば、ワイヤレスネットワークは、BLEネットワーク140、Wi-Fiネットワーク140、Bluetooth(登録商標)ネットワーク140、NFCネットワーク140、または他の適切なワイヤレスネットワーク140を含み得る。
一例において、アンテナ121は、ユーザコンピューティングデバイス110とマーチャントビーコンデバイス120との間の通信の手段である。一例において、BLEコントローラ122は、アンテナ121を通じて、無線信号を出力するか、またはユーザコンピューティングデバイス110からの無線信号を監視する。別の例では、Wi-Fiコントローラ、Bluetooth(登録商標)コントローラ、または近距離無線通信(「NFC」)コントローラが使用される。一例において、BLEコントローラ122は、アンテナ121を通じて、無線信号を出力するか、またはユーザコンピューティングデバイス110からの無線信号を監視する。
一例において、BLEコントローラ122は、データを送受信し、認証および暗号化機能を実行し、マーチャントビーコンデバイス120がユーザコンピューティングデバイスからの伝送をどのように監視するかを指図するか、またはBLE指定手順に従ってマーチャントビーコンデバイス120を様々な省電力モードに構成することができる。別の例では、マーチャントビーコンデバイス120は、Wi-Fiコントローラ、Bluetooth(登録商標)コントローラ、または類似の機能を実行することができるNFCコントローラを備える。例示的なBLEコントローラ122は、支払アプリケーション113と通信し、ワイヤレス、Wi-Fi通信チャネル上でデータの送受信を行うことができる。別の例では、Wi-Fiコントローラ122またはNFCコントローラ122が、Wi-FiもしくはNFCプロトコルを使用してBLEコントローラ122として類似の機能を実行する。一例において、BLEコントローラ122はアンテナ121をアクティブ化して、ユーザコンピューティングデバイス110とマーチャントビーコンデバイス120との間にワイヤレス通信チャネルを形成する。マーチャントビーコンデバイス120は、アンテナ121を介してユーザコンピューティングデバイス110と通信する。一例において、マーチャントビーコンデバイス120がアクティブ化されたときに、BLEコントローラ122は、アンテナ121を通じて、無線信号をポーリングするか、またはユーザコンピューティングデバイス110からの無線信号を監視する。
例示的なマーチャント販売時点情報管理(「POS」)デバイス130は、支払アプリケーション133と、ユーザインターフェース135と、データ記憶装置ユニット136と、通信アプリケーション139とを備える。
一例において、支払アプリケーション133は、マーチャント販売時点情報管理デバイス130上に存在し、マーチャント販売時点情報管理デバイス130に対してそのオペレーションを実行するプログラム、機能、ルーチン、アプレット、または類似のエンティティである。いくつかの例において、POSデバイスの操作者102または他のマーチャントシステムの操作者は、本明細書で説明されている技術の利点を得るために、マーチャントPOSデバイス130に支払アプリケーション133をインストールし、および/またはマーチャントPOSデバイス130上で特徴選択を行わなければならない。一例において、マーチャントPOSデバイスの操作者102は、ユーザインターフェース135を介してマーチャントPOSデバイス130上の支払アプリケーション133にアクセスし得る。一例において、支払アプリケーション133は、支払処理システム160に関連付けられ得る。別の例では、支払アプリケーション133は、マーチャントビーコンデバイス120に関連付けられているマーチャントシステムに関連付けられ得る。さらに別の例では、2つの支払アプリケーション133が存在し、一方はマーチャントシステムに関連付けられ、もう一方は支払処理システム160に関連付けられている。
一例において、ユーザインターフェース135は、マーチャントPOSデバイスの操作者102が、マーチャントPOSデバイス130をインタラクティブに操作することを可能にする。たとえば、ユーザインターフェース135は、タッチスクリーン、音声ベースのインターフェース、またはマーチャントPOSデバイスの操作者102がマーチャントPOSデバイス130上のアプリケーションから入力を提供し、出力を受け取ることを可能にする他のインターフェースであってもよい。一例において、マーチャントPOSデバイスの操作者102は、ユーザインターフェース135を介して支払アプリケーション133をインタラクティブに操作する。
一例において、データ記憶装置ユニット136は、情報を記憶するのに適しているマーチャントPOSデバイス130からアクセス可能なローカルまたはリモートデータ記憶装置構造体を含む。一例において、HTML5ローカル記憶装置などの、データ記憶装置ユニット136は暗号化された情報を記憶する。
一例において、ウェブブラウザアプリケーションまたはスタンドアロンアプリケーションなどの通信アプリケーション139は、マーチャントPOSデバイス130の操作者が分散ネットワーク140を介してドキュメントもしくはウェブページを閲覧し、ダウンロードし、アップロードし、または他の何らかの方法でアクセスすることを可能にする。たとえば、通信アプリケーション139は、支払処理システム160によりネットワーク140上の通信を可能にし得る。
例示的な発行人システム150は、支払処理システム160から受信された支払許可要求を認可するか、または拒否する。一例において、発行人システム150は、ネットワーク140上で支払処理システム160と通信する。一例において、発行人システム150は、取得者システム(acquirer system)と通信して、与信許可(credit authorization)を認可し、支払処理システム160および/またはマーチャントシステムへの支払を行う。たとえば、取得者システムは、第三者支払処理会社である。
例示的な支払処理システム160は、アカウント管理コンポーネント161と、データ記憶装置ユニット166と、決済処理コンポーネント167と、サーバ168と、ウェブサイト169とを備える。
一例において、アカウント管理コンポーネント161は、1つまたは複数のユーザ101のアカウントを管理する。一例において、ユーザ101のアカウントは、デジタルウォレットアカウント、電子メールアカウント、ソーシャルネットワーキングアカウント、またはシステム160に関連付けられている他の適切なアカウントを含み得る。一例において、アカウント管理コンポーネント161は、支払処理システム160によりユーザ101のアカウントを有するユーザ101に関連付けられているユーザコンピューティングデバイス110上で動作する支払アプリケーション113と通信する。一例において、ユーザ101は、支払アプリケーション113を介して支払アカウント情報をユーザ101のアカウントに入力し、アカウント管理コンポーネント161は、ネットワーク140上で支払アカウント情報を受信し、受信済み支払アカウント情報をユーザ101のアカウントに関連付ける。
一例において、データ記憶装置ユニット166は、情報を記憶するのに適している支払処理システム160からアクセス可能なローカルまたはリモートデータ記憶装置構造体を含む。一例において、HTML5ローカル記憶装置などの、データ記憶装置ユニット166は暗号化された情報を記憶する。
一例において、決済処理コンポーネント167は、マーチャントPOSデバイス130からの決済の詳細と決済を開始する要求とを受信する。例示的な決済の詳細は、マーチャントシステムアカウント情報と、決済の合計金額と、支払処理システム160によるユーザ101のアカウントに関連付けられているユーザ101の支払アカウントのユーザ101の選択とを含む。たとえば、ユーザ101のアカウントは、ユーザ101の1つまたは複数のそれぞれの支払アカウントに対応する1つまたは複数の支払アカウント情報を含むデジタルウォレットアカウントである。一例において、決済処理コンポーネント167は、マーチャントPOSデバイス130から決済の詳細で受信されたユーザ101の支払アカウントのユーザ101の選択に対応するユーザ101のアカウントから支払アカウント情報を抽出する。一例において、決済処理コンポーネント167は、支払許可要求を発行人システム150または決済で使用するためにユーザ101によって選択された支払アカウントに関連付けられている他の適切な金融機関に伝送する。例示的な支払許可要求は、マーチャントシステム支払アカウント情報と、ユーザ101の支払アカウント情報と、決済の合計金額とを含み得る。一例において、発行者システム150が支払許可要求を処理した後に、決済処理コンポーネント167は、ネットワーク140上で発行人システム150から支払許可要求の認可または拒否を受信する。一例において、決済処理コンポーネント167は、マーチャントPOSデバイス130および/またはユーザコンピューティングデバイス110に決済の要約を含む受領書を伝送する。
一例において、ウェブサーバ168は、ユーザコンピューティングデバイス110上のウェブブラウザ118および/または支払アプリケーション113を通じてユーザ101によってアクセス可能な、限定はしないがhtml文書、画像、スタイルシート、およびスクリプトを含む、コンテンツを提供する。一例において、サーバ168は、支払処理システムウェブサイト169をサポートする。
一例において、支払処理システムウェブサイト169は、ユーザ101がユーザコンピューティングデバイス110上でウェブブラウザ118および/または支払アプリケーション113を介してアクセスし得るウェブサイトを含む。一例において、ユーザ101は、支払処理システムウェブサイト695を介してユーザ101のデジタルウォレットアカウントにアクセスし得る。
図に示されているネットワーク接続は例であり、コンピュータとデバイスとの間の通信リンクを確立する他の手段が使用できることは理解されるであろう。さらに、本開示を利用できる当業者であれば、図1に示されているユーザコンピューティングデバイス110、マーチャントビーコンデバイス120、販売時点情報管理デバイス130、発行者システム150、および支払処理システム160が、いくつかの他の好適なコンピュータシステム構成のうちのどれかをとり得ることを理解するであろう。たとえば、携帯電話またはハンドヘルドコンピュータとして具現化されているユーザコンピューティングデバイス110は、上で説明されているすべての構成要素を備える場合も備えない場合もある。
例では、ネットワークコンピューティングデバイスおよび本明細書で提示されている技術に関連付けられている他のコンピューティングマシンは、限定はしないが、図9に関してより詳しく説明されているものなどの任意のタイプのコンピューティングマシンであってよい。さらに、本明細書で説明されているモジュールまたは本明細書に提示されている技術に関連付けられている他のモジュール(スクリプト、ウェブコンテンツ、ソフトウェア、ファームウェア、もしくはハードウェア)などの、これらのコンピューティングマシンのうちのどれかに関連付けられているモジュールは、図9に関してより詳しく説明されているモジュールのうちのどれかであってよい。本明細書で説明されているコンピューティングマシンは、ネットワーク140などの、1つまたは複数のネットワーク上で、互いに、さらには他のコンピューティングマシンまたは通信システムと通信し得る。ネットワーク140は、図9に関して説明されているネットワーク技術のうちのどれかを含む、任意のタイプのデータまたは通信ネットワークを含み得る。
例示的なプロセス
図2〜図8に示されている例示的な方法は、例示的な動作環境100のコンポーネントに関して以下で説明される。図2〜図8の例示的な方法は、他のシステムとともに、および他の環境内で実行されてもよい。
図2は、いくつかの例による、ユーザコンピューティングデバイス110のロケーションデータおよびマーチャントビーコンデバイス120からの信号強度インジケータデータに基づきマーチャントドライブスルーロケーションにおけるユーザ101を識別するための方法200を示すブロック図である。方法200は、図1に例示されているコンポーネントを参照しつつ説明される。
ブロック210において、マーチャントシステムは、支払処理システム160に登録し、マーチャントロケーションにハードウェアを設置する。マーチャントシステムによって、支払処理システム160に登録し、ハードウェアをマーチャントシステムロケーションに設置するための方法は、図3で説明されている方法を参照しつつ以下でより詳しく説明される。
図3は、いくつかの例による、マーチャントシステムによって支払処理システム160に登録し、ハードウェアをマーチャントシステムロケーションに設置するための方法210を示すブロック図である。方法210は、図1に例示されているコンポーネントを参照しつつ説明される。
本明細書で説明されている例において、マーチャントシステムは、マーチャントドライブスルーウィンドウ、たとえば、ファーストフード店のドライブスルーウィンドウにハードウェアを設置する。しかしながら、本明細書で説明されている方法は、発券カウンタ、食料品店レジ、またはユーザが決済を行うために列に並んで待つか、または他の何らかの形で所定の物理的経路に沿ってマーチャント販売時点情報管理デバイスに接近する他のマーチャントロケーションなどの、他のマーチャントロケーションに適用可能である。本明細書で説明されている例では、マーチャントシステムは、特定の順序で例示的なマーチャントシステムロケーションにハードウェアを設置する必要はない。方法210では、ハードウェアをマーチャントロケーションに設置する1つの例示的な方法を説明する。しかしながら、マーチャントシステムまたはマーチャントハードウェアを設置する他のシステムは、マーチャントPOSデバイス130またはマーチャントビーコンデバイス120を本明細書で説明されている順序で設置する必要はない。
ブロック310において、マーチャントシステムは、支払処理システム160に登録する。一例において、マーチャントシステムのエージェントは、支払処理システムウェブサイト160のウェブサイト169にアクセスし、ウェブサイト169を介してマーチャントシステムアカウントについて支払処理システム160に登録する。一例において、マーチャントシステムは、支払アカウント情報を支払処理システム160によって管理されるマーチャントアカウントに追加する。一例において、マーチャントシステムは、1つまたは複数のマーチャントシステムロケーションを備える。たとえば、マーチャントシステムは、1つまたは複数の実ストアロケーションを備え得る。例示的なマーチャントロケーションは、1つまたは複数のマーチャント販売時点情報管理(「POS」)デバイス130を含む。一例において、1つまたは複数のマーチャントPOSデバイスの操作者102は、マーチャントシステムロケーションにある1つまたは複数のマーチャントPOSデバイス130を操作する。
ブロック320において、マーチャントシステムの操作者は、支払アプリケーション133をマーチャントPOSデバイス130にインストールする。別の例では、マーチャントシステムの操作者は、マーチャントPOSデバイス130上にプリインストールされている支払アプリケーション133を使って支払処理システム160からマーチャントPOSデバイス130を購入するか、または他の何らかの形で入手する。一例において、マーチャントPOSデバイス130は、ネットワーク140を介して支払処理システム160と通信することができる。一例において、マーチャントPOSデバイス130は、支払アプリケーション133を介して支払処理システム160と通信する。たとえば、マーチャントPOSデバイス130は、ネットワーク140上で支払アプリケーション133を介して決済の詳細を支払処理システム160に伝送し、支払処理システム160が決済を処理することを可能にすることができるものとしてよい。別の例では、マーチャントPOSデバイス130は、決済が成功したかどうかをマーチャントPOSデバイスの操作者102に通知する受領書を支払処理システム160から受信することができるものとしてよい。一例において、マーチャントシステムは、マーチャントシステムロケーションにおけるドライブスルーウィンドウの内側の近くにマーチャントPOSデバイス130を設置する。別の例において、マーチャントシステムは、マーチャントシステムロケーションのチェックアウト領域にマーチャントPOSデバイス130を設置する。
ブロック330において、マーチャントビーコンデバイス120は、支払処理システム160からビーコン識別子を受信する。一例において、マーチャントシステムは、支払処理システム160からビーコン識別子を受信し、マーチャントビーコンデバイス120上にビーコン識別子をインストールするか、または他の何らかの形でビーコン識別子を保存する。別の例では、ビーコン識別子は、マーチャントシステムがマーチャントビーコンデバイス120識別子を受信し、インストールする前にマーチャントビーコンデバイス120上に保存される。一例において、マーチャントビーコンデバイス120は、支払処理システム160からネットワーク140上でビーコン識別子を受信する。別の例では、マーチャントビーコンデバイス120は、マーチャント販売時点情報管理デバイス130を介して支払処理システム160からビーコン識別子を受信するか、または他の何らかの形でビーコンデバイス識別子を受信する。一例において、マーチャントシステムの操作者は、マーチャントビーコンデバイス120を、マーチャントPOSデバイス130に近接して設置する。一例において、マーチャントシステムの操作者は、複数のマーチャントビーコンデバイス120を設置し、各マーチャントビーコンデバイス120は1つまたは複数の関連付けられているマーチャントPOSデバイス130に近接している。例示的なマーチャントビーコンデバイス120は、ビーコンデバイス識別子を含む信号を、BLEネットワーク140または他のワイヤレス通信ネットワークを介して、マーチャントビーコンデバイス120への閾値近接度の範囲内に配置されている1つまたは複数のユーザコンピューティングデバイス110にブロードキャストすることができる。たとえば、閾値近接度は、マーチャントビーコンデバイス120によって利用されるネットワーク140通信プロトコルに依存する。別の例において、マーチャントビーコンデバイス120によって実行されるものとして説明されている1つまたは複数の機能は、その代わりに、マーチャントPOSデバイス130によって実行され得る。一例において、マーチャントシステムは、マーチャントビーコンデバイス120を、マーチャントPOSデバイス130に近接して設置する。たとえば、マーチャントシステムは、マーチャントシステムロケーションにおけるドライブスルーウィンドウのマーチャントPOSデバイス130の近くにマーチャントビーコンデバイス120を設置する。
ブロック340において、マーチャントビーコンデバイス120は、マーチャントシステムのロケーションにおいてワイヤレス通信を介してビーコン識別子をブロードキャストする。たとえば、マーチャントビーコンデバイス120は、Bluetooth low energy(「BLE」)、Wi-Fi、Bluetooth(登録商標)、近距離無線通信(「NFC」)、または信号を伝送するように動作可能である他の適切な通信プロトコルを介してビーコン識別子を含むデータをマーチャントシステムロケーションのところの1つまたは複数のユーザコンピューティングデバイス110にブロードキャストするか、送信するか、もしくは他の何らかの形で伝送するか、またはマーチャントビーコンデバイス120とマーチャントビーコンデバイス120への閾値近接度の範囲内にあるマーチャントシステムロケーションに配置されている1つまたは複数のユーザコンピューティングデバイス110との間のネットワーク140接続を確立するものとしてよい。
ブロック350において、マーチャントシステムの操作者は、マーチャントビーコンデバイス120に対応するようにマーチャントPOSデバイス130をマーチャントシステムロケーションに設置する。一例において、マーチャントビーコンデバイス120は、特定のマーチャントPOSデバイス130に近接して設置される。別の例では、マーチャントビーコンデバイス120は、2つまたはそれ以上の特定のマーチャントPOSデバイス130に近接して設置される。本明細書で説明されている例において、マーチャントシステムは、マーチャントドライブスルーウィンドウ、たとえば、ファーストフード店のドライブスルーウィンドウにハードウェアを設置する。しかしながら、他の例では、マーチャントシステムは、発券カウンタ、食料品店レジ、またはユーザが決済を行うために列に並んで待つか、または他の何らかの形で所定の物理的経路に沿ってマーチャント販売時点情報管理デバイスに接近する別のマーチャントロケーションにハードウェアを設置する。たとえば、ドライブスルーロケーションの所定の物理的経路は、マーチャントPOSデバイス130およびマーチャントビーコンデバイス120が配置されている購入ウィンドウに接近するためにユーザがマーチャントロケーションの側面に沿って運転するときにユーザ101の自動車が取る経路を含む。
ブロック360において、支払処理システム160は、マーチャント販売時点情報管理デバイス130識別子を受信し、それをマーチャントビーコンデバイス120の対応するビーコン識別子に関連付ける。一例において、マーチャントシステムおよび/または支払処理システム160は、マーチャント販売時点情報管理デバイス130がネットワーク140上で支払処理システム160と通信できるようにマーチャント販売時点情報管理デバイス130を構成する。例示的なマーチャント販売時点情報管理デバイス130識別子は、ハードウェア識別子、媒体アクセス制御(「MAC」)アドレス、またはマーチャント販売時点情報管理デバイス130に関連付けられている他の有用なもしくは関連する識別子を含む。一例において、支払処理システム160は、マーチャント販売時点情報管理デバイス130識別子および特定のマーチャントシステムロケーションに対するマーチャントビーコンデバイス120識別子に対する関連付けられたビーコン識別子を含むデータベースを備える。一例において、マーチャント販売時点情報管理デバイス130は、マーチャントビーコンデバイス120識別子コードを支払処理システム160に伝送する。たとえば、マーチャント販売時点情報管理デバイス130は、セットアップおよびインストールのプロセスにおいて、マーチャントビーコンデバイス120とのネットワーク140接続を確立し、ネットワーク140上でマーチャントビーコンデバイス120識別子を受信する。別の例では、支払処理システム160は、マーチャント販売時点情報管理デバイス130識別子を受信し、データベースから1つまたは複数のマーチャントビーコンデバイス120識別子を抽出し、マーチャント販売時点情報管理デバイス130識別子を1つまたは複数の抽出されたマーチャントビーコンデバイス120識別子に関連付ける。さらに別の例では、マーチャントシステムの操作者は、1つまたは複数のマーチャント販売時点情報管理デバイス130を設置した後に1つまたは複数のマーチャントビーコンデバイス120を設置する。この例では、支払処理システム160は、マーチャント販売時点情報管理デバイス130識別子に関連付けるマーチャントビーコンデバイス識別子を生成し、生成されたマーチャントビーコンデバイス120識別子をマーチャントシステムに伝送する。この例では、マーチャントシステムの操作者は、ネットワーク140上で支払処理システム160によって割り当てられたマーチャントビーコンデバイス120識別子をブロードキャストするか、送信するか、または他の何らかの形で伝送するようにマーチャントビーコンデバイス120を構成する。
一例において、マーチャントビーコンデバイス120識別子は、利用可能なBLE、Bluetooth(登録商標)、Wi-Fi、またはNFCネットワークのスキャンを実行するユーザコンピューティングデバイス110によって検出可能なネットワーク名を含む。たとえば、ジョージア州アトランタ、ピーチツリー通り123(123 Peachtree St. Atlanta, GA)に所在する「merchant A」店では、マーチャントビーコンデバイス120識別子は、「Merchant A 123 Peachtree St.」もしくは「Merchant A Peachtree St. Atlanta」と読めるもの、またはマーチャントロケーションを識別する他の適切な名称であってよい。この例では、マーチャントビーコンデバイス120まで十分な近接度の範囲内にあるユーザコンピューティングデバイス110は、BLEネットワーク140または他のワイヤレスネットワーク140上で他にも識別子があるがとりわけマーチャントビーコンデバイス120識別子を受信し得る。
いくつかの例において、マーチャントビーコンデバイス120は、マーチャントPOSデバイス130の一コンポーネントであるか、またはマーチャントPOSデバイス130にワイヤレス方式で、または物理的に接続され、マーチャントPOSデバイス130の1つまたは複数のプロセッサによって制御される。いくつかの例において、マーチャントビーコンデバイス120によって実行されるものとして本明細書で説明されているいくつかの機能も、マーチャントPOSデバイス130によって実行され得る。
方法210は、ブロック360から図2のブロック220に進む。
図2に戻って参照すると、ブロック220において、ユーザ101は支払処理システム160に登録する。ユーザ101によって、アカウントのために支払処理システム160に登録するための方法は、図4で説明されている方法220を参照しつつ以下でより詳しく説明される。
図4は、いくつかの例による、アカウントのためにユーザ101によって支払処理システム160に登録するための方法220を示すブロック図である。方法220は、図1に例示されているコンポーネントを参照しつつ説明される。
ブロック410において、ユーザ101は、支払処理システム160ウェブサイト169にアクセスする。たとえば、ユーザ101は、ユーザコンピューティングデバイス110のウェブブラウザ118を介して支払処理システム160にアクセスする。別の例では、ユーザ101は、他の何らかの方法で、支払処理システム160と接触し、ユーザ101のアカウントに登録し得る。
ブロック420において、ユーザ101は、支払処理システム160に登録する。ユーザ101は、ユーザアカウント番号を取得するか、ユーザコンピューティングデバイス110上にインストールする適切なアプリケーションおよびソフトウェアを受け取るか、支払処理に参加する許可を要求するか、または支払処理システム160に必要なアクションを実行して、支払処理システム160とのユーザ101のアカウントを確立するものとしてよい。ユーザ101は、ユーザインターフェース115およびウェブブラウザ118などの、ユーザコンピューティングデバイス110の機能を利用して、ユーザ101のアカウントを登録し、構成し得る。
ブロック430において、ユーザ101は、支払アプリケーション113をユーザコンピューティングデバイス110にダウンロードする。別の例では、ユーザ101は、ユーザコンピューティングデバイス110上にプリインストールされている支払アプリケーション113を備えるユーザコンピューティングデバイス110を購入するか、または他の何らかの形で入手する。一例において、ユーザコンピューティングデバイス110上で動作している支払アプリケーション113は、ネットワーク140上で支払処理システム160と通信することができる。
ブロック440において、ユーザ101は、支払アプリケーション113を使用して支払アカウント情報をユーザ101のアカウントに入力する。一例において、ユーザ101は、1つまたは複数のユーザ101の支払アカウント、たとえば、1つまたは複数のクレジットアカウント、1つまたは複数の銀行口座、1つまたは複数のストアドバリューアカウント(stored value account)、および/または他の適切なアカウントに関連付けられている支払アカウント情報を支払処理システム160によって維持されるユーザ101のアカウントに入力するものとしてよい。たとえば、ユーザ101のクレジットアカウントに関連付けられている支払アカウント情報を入力するために、ユーザ101は、支払アプリケーション113を介してクレジットカード番号、有効期限、住所、クレジットカードに記載されているユーザ101の名前、および/またはクレジットアカウントに関連付けられている他の適切な情報を入力する。この例では、支払アプリケーション113は、ネットワーク140を介してユーザ101によって入力されたクレジットアカウントデータを処理システム160に伝達し、支払処理システム160は、クレジットアカウントデータをユーザ101のアカウントに関連付ける。
ブロック450において、ユーザ101は、支払アプリケーション113を使用してユーザ101のアカウントに関連付けられている許可および設定を構成する。一例において、ユーザ101は、支払アプリケーション113を介してユーザ101のアカウント設定を構成するか、または支払アカウント情報を入力するか、削除するか、もしくは編集し得る。一例において、ユーザ101は、決済を処理する支払処理システム160の許可を有効化または無効化するオプションを選択し得る。たとえば、決済は、ユーザ101がユーザコンピューティングデバイス110をインタラクティブに操作する必要がないか、またはマーチャントシステムとの決済を開始するためにユーザコンピューティングデバイス110との最小限度のユーザ101のインタラクションを必要とする決済を含む。
方法220は、ブロック450から図2のブロック230に進む。
ブロック230に戻り、図2において、ユーザ101は、マーチャントシステムロケーションに入る前または入った後のいずれかに、ユーザコンピューティングデバイス110を介して支払アプリケーション113にサインインする。一例において、支払アプリケーション113にサインインすることによって、ユーザ101は、支払処理システム160がマーチャントシステムロケーションにおいてユーザ101によって開始された決済を処理し、支払アプリケーション113を介してユーザコンピューティングデバイス110のロケーションデータをログに記録することを有効化する。別の例では、ユーザ101は、ユーザコンピューティングデバイス110上で支払アプリケーション113を開き、ユーザコンピューティングデバイス110がすでに支払アプリケーション113にサインインしている状態でマーチャントシステムロケーションに入る。別の例では、ユーザ101は、マーチャントシステムロケーションに入る前の時点において支払アプリケーション113にサインインし、支払処理システム160が決済を処理し、ユーザコンピューティングデバイス110のロケーションデータをログに記録することを許可するように支払アプリケーション113上で1つまたは複数の設定を構成する。この例では、ユーザ101は、決済を有効化するためにマーチャントロケーションにいる間にサインインしなくてもよい。一例において、マーチャントロケーションに入るステップは、車両で、マーチャントシステムロケーションにおけるドライブスルーレーンに入るステップを含む。それに加えて、ユーザ101は、支払アプリケーション113にアクセスし、支払処理システム160が決済を処理する許可を取り消す、またはユーザコンピューティングデバイス110のロケーションデータをログに記録する操作を他の何らかの形で無効化するように1つまたは複数の設定を構成し得る。
一例において、ユーザ101は、支払処理システムによって維持されるユーザ101のアカウントに関連付けられているユーザ名およびパスワードを有しているものとしてよい。一例において、ユーザ101は、ユーザコンピューティングデバイス110上で支払アプリケーション113を開き、ユーザインターフェース115を介してユーザ名および/またはパスワードを入力して、支払アプリケーション113にサインインする。一例において、ユーザ101が支払アプリケーション113にサインインしたときに、支払アプリケーションは、ネットワーク140上で支払処理システム160と通信することができる。この例では、ユーザ101が支払アプリケーション113にサインインしていないときに、支払アプリケーションは、ネットワーク140接続が利用可能である場合でも支払処理システム160と通信しない。一例において、ユーザ101は、ユーザコンピューティングデバイス110のユーザインターフェース115上で1つまたは複数の対象を作動させることによっていつでも支払アプリケーション113からサインアウトし得る。一例において、支払アプリケーション113にサインインした後、ユーザ101は、1つまたは複数のユーザ101のアカウント設定を構成するか、ユーザ101の支払アカウント情報を追加するか、編集するか、もしくは削除し、および/またはユーザ101のプリファレンスを変更する。いくつかの例において、ユーザ101は、本明細書で説明されている技術の利点を得るために特徴選択を行う必要があり得る。たとえば、ユーザ101は、本明細書において説明されている方法に従って1つまたは複数のユーザ101のアカウント設定を有効化し、決済を有効化しなければならない場合がある。
一例において、支払アプリケーション113は、オプション、データ、構成可能なアラート、および他の好適な特徴をユーザ101に提供し得る。たとえば、支払アプリケーション113は、本明細書で説明されている方法のうちの1つまたは複数により支払い決済に参加するマーチャントシステムおよびマーチャントロケーションのリスティングを含み得る。リスティングは、支払処理システム160から定期的に更新され得る。支払アプリケーション113は、ユーザ101が参加しているマーチャントシステムの構成された位置の付近に入ったときにそのことをユーザ101に通知するものとしてよい。支払アプリケーション113は、ユーザ101に、支払プリファレンスを更新するオプションを提供し得る。支払アプリケーション113は、ユーザ101に最近の決済のリスティングを提供し得る。支払アプリケーション113は、他の好適な情報をユーザ101に提供し得る。
ブロック240において、ユーザコンピューティングデバイス110は、マーチャントドライブスルーロケーションにチェックインする。ユーザコンピューティングデバイス110によって、マーチャントドライブスルーロケーションにチェックインする方法は、図5で説明されている方法240を参照しつつ以下でより詳しく説明される。本明細書で説明されている例では、ユーザ101がユーザコンピューティングデバイス110を介してマーチャントドライブスルーロケーションにチェックインすることを説明している。しかしながら、他の例では、ユーザ101は、ユーザコンピューティングデバイス110を介して食料品店、発券カウンタ、または他のマーチャントロケーションを含むマーチャントロケーションにチェックインする。
図5は、ユーザコンピューティングデバイスによって、マーチャントドライブスルーロケーションにチェックインするための方法240を示すブロック図である。方法240は、図1に例示されているコンポーネントを参照しつつ説明される。
本明細書で説明されている例において、ユーザコンピューティングデバイス110は、最初は、非アクティブ状態にある。一例において、非アクティブ状態において、ユーザコンピューティングデバイス110は、ユーザコンピューティングデバイス110がアクティブ状態または半アクティブ状態にあるときより長い間隔でユーザコンピューティングデバイス110のロケーションを決定する。この例では、非アクティブ状態において、ユーザコンピューティングデバイス110は、ユーザコンピューティングデバイス110がアクティブ状態または半アクティブ状態にあるときより長い間隔でBLEネットワーク上の信号を探索する。たとえば、ユーザコンピューティングデバイス110は、非アクティブ状態にある間は5分間隔で、アクティブ状態にある間は15秒間隔で、ユーザコンピューティングデバイス110のロケーションを決定する。別の例では、ユーザコンピューティングデバイス110は、非アクティブ状態では3分間隔で、半アクティブ状態では30秒間隔で、アクティブ状態にある間は5秒間隔で、BLEネットワーク上の信号を探索する。別の例では、ユーザコンピューティングデバイス110は、ロケーションデータをログに記録する場合にはアクティブまたは半アクティブ状態、BLEネットワーク140上で信号を探索することに関しては非アクティブ状態にあるものとしてよい。さらに別の例では、ユーザコンピューティングデバイス110は、ロケーションデータをログに記録する場合には非アクティブ状態、およびBLEネットワーク140上で信号を探索することに関してはアクティブまたは半アクティブ状態にあるものとしてよい。一例において、ユーザコンピューティングデバイス110は、マーチャントPOSデバイス130に関連付けられているジオフェンス境界の外側にある間は非アクティブ状態のままであり、ジオフェンス境界とチェックインポイントとの間に移動するときに非アクティブ状態から半アクティブ状態に遷移し、チェックインポイント内に移動するときに半アクティブ状態からアクティブ状態に遷移する。この例では、ユーザコンピューティングデバイス110は、チェックインポイント内にある間はアクティブ状態のままであり、チェックインポイントとマーチャントPOSデバイス130に関連付けられているジオフェンス境界との間に移動するときにアクティブ状態から半アクティブ状態に遷移し、ジオフェンス境界の外側に移動するときに半アクティブ状態から非アクティブ状態に遷移する。
ブロック510において、ユーザコンピューティングデバイス110は、ユーザコンピューティングデバイス110のロケーションを決定する。一例において、ユーザコンピューティングデバイス110のロケーションを決定するステップは、ユーザコンピューティングデバイス110によって、ユーザコンピューティングデバイス110のGPSコンポーネント117を使用してユーザコンピューティングデバイス110の現在の経度および緯度をログに記録するステップを含む。別の例では、ユーザコンピューティングデバイス110のロケーションを決定するステップは、ユーザコンピューティングデバイス110の範囲内にある近くのワイヤレス通信デバイスのIPアドレスを決定するステップを含む。一例において、ユーザ101は、ユーザコンピューティングデバイス110上のナビゲーションアプリケーションを起動し、マーチャントロケーションを目的地として入力する。この例では、ユーザコンピューティングデバイス110は、ユーザ101がユーザコンピューティングデバイス110によって算出されたルートに沿って進行するときにユーザコンピューティングデバイス110のロケーションを連続的にまたは定期的に決定する。
ブロック520において、ユーザコンピューティングデバイス110は、BLEネットワーク140上の信号を探索する。ユーザコンピューティングデバイス110は、マーチャントシステムのロケーションにおいてワイヤレス通信を介してマーチャントビーコンデバイス120からの信号を含むBLEネットワーク140上でブロードキャストされた信号を認識し得る。ユーザコンピューティングデバイス110は、ビーコンまたは他のワイヤレス信号を探索するように構成され得る。一例において、ユーザコンピューティングデバイス110およびマーチャントビーコンデバイス120はBLEワイヤレスネットワーク140接続を確立する。他の例では、ユーザコンピューティングデバイス110およびマーチャントビーコンデバイス120は、Bluetooth(登録商標)、Wi-Fi、NFC、または他の適切なネットワーク140接続を確立するか、またはマーチャントビーコンデバイス120からBluetooth(登録商標)、Wi-Fi、NFC、または他の適切なネットワーク140接続上でデータもしくは信号を他の何らかの形で受信する。マーチャントビーコンデバイス120の信号の範囲内に入った後、ユーザコンピューティングデバイス110は、マーチャントビーコンデバイス120識別子を受信する。
ブロック530において、ユーザコンピューティングデバイス110は、ユーザコンピューティングデバイス110がマーチャントPOSデバイス130に関連付けられているジオフェンス境界に入ったと決定した後、またはマーチャントビーコンデバイス120によってブロードキャストされるマーチャントビーコンデバイス120識別子を識別した後にアクティブ状態に入る。別の例では、ユーザコンピューティングデバイス110は、ユーザコンピューティングデバイス110がマーチャントPOSデバイス130に関連付けられているジオフェンス境界に入ったと決定した後、またはマーチャントビーコンデバイス120によってブロードキャストされるマーチャントビーコンデバイス120識別子を識別した後に半アクティブ状態に入る。
前に説明されているように、本明細書で説明されている例において、ユーザコンピューティングデバイス110は、最初は、非アクティブ状態にある。一例において、非アクティブ状態において、ユーザコンピューティングデバイス110は、ユーザコンピューティングデバイス110がアクティブ状態にあるときより長い間隔でユーザコンピューティングデバイス110のロケーションを決定する。この例では、非アクティブ状態において、ユーザコンピューティングデバイス110は、ユーザコンピューティングデバイス110がアクティブ状態または半アクティブ状態にあるときより長い間隔でBLEネットワーク上の信号を探索する。たとえば、ユーザコンピューティングデバイス110は、非アクティブ状態にある間は5分間隔で、アクティブ状態にある間は15秒間隔で、BLEネットワーク140上の信号を探索する。別の例では、ユーザコンピューティングデバイス110は、非アクティブ状態では3分間隔で、半アクティブ状態では30秒間隔で、アクティブ状態にある間は5秒間隔で、BLEネットワーク上の信号を探索する。
一例において、非アクティブ状態にある間にユーザコンピューティングデバイス110のロケーションをログに記録したことに応答して、ユーザコンピューティングデバイス110は、ネットワーク140上で、ユーザコンピューティングデバイス110の付近にあるマーチャントロケーションに関連付けられている支払処理システム160に、ジオフェンス境界を要求し、ユーザコンピューティングデバイス110のログに記録されたロケーションを支払処理システム160に伝送する。この例では、支払処理システム160は、ネットワーク140上でユーザコンピューティングデバイス110からユーザコンピューティングデバイス110のログに記録されたロケーションおよびジオフェンス境界に対する要求を受信する。この例では、支払処理システム160は、マーチャントPOSデバイス130に関連付けられているジオフェンス境界を支払処理システム160のデータベース内に記憶する。例示的なジオフェンス境界は、特定のマーチャントPOSデバイス130の周りの地理的境界を含む。一例において、ジオフェンス境界は、特定のマーチャントPOSデバイス130の周りの事前定義された半径の円形境界を含む。一例において、支払処理システム160は、ジオフェンス境界が記憶されているデータベースにアクセスし、ログに記録されているユーザコンピューティングデバイス110ロケーションの事前定義済みの近接度の範囲内にある1つまたは複数のジオフェンス境界を抽出し、抽出された1つまたは複数のジオフェンス境界をネットワーク140上でユーザコンピューティングデバイス110に伝送する。
一例において、ユーザコンピューティングデバイス110は、非アクティブ状態にあるユーザコンピューティングデバイス110のロケーションデータをログに記録したことに応答して、ログに記録されたロケーションデータに基づきユーザコンピューティングデバイス110が関連付けられているマーチャントPOSデバイス130の特定のジオフェンス境界に入ったと決定する。たとえば、ユーザコンピューティングデバイス110は、一番最近にログに記録されたユーザコンピューティングデバイス110ロケーションがマーチャントPOSデバイス130に関連付けられているジオフェンス境界内にあると決定するか、またはBLEネットワーク140上でマーチャントビーコンデバイス120を検出する。一例において、ユーザコンピューティングデバイス110がジオフェンス境界内に入ったと決定したことに応答して、またはBLEネットワーク140上でマーチャントビーコンデバイス120を検出したことに応答して、ユーザコンピューティングデバイス110は、非アクティブ状態からアクティブ状態または半アクティブ状態に遷移する。たとえば、ユーザコンピューティングデバイス110は、BLEネットワーク140上の信号をアクティブまたは半アクティブに探索することを開始する。一例において、ユーザコンピューティングデバイス110は、非アクティブ状態にある間に、マーチャントドライブスルーロケーションにあるマーチャントビーコンデバイス120によってブロードキャストされたマーチャントビーコンデバイス120識別子を検出する。この例では、ユーザコンピューティングデバイス110は、マーチャントビーコンデバイス120識別子を検出したことに応答して、非アクティブ状態からアクティブ状態または半アクティブ状態に遷移する。たとえば、ユーザコンピューティングデバイス110は、BLEネットワーク140上で信号をアクティブに探索することを開始するが、これはBLEネットワーク140上でマーチャントビーコンデバイス120からユーザコンピューティングデバイス110によって受信された信号の信号強度をアクティブに監視するステップを含む。
ブロック540において、ユーザコンピューティングデバイス110は、マーチャントビーコンデバイス120信号強度およびユーザコンピューティングデバイス110ロケーションを監視する。一例において、ユーザコンピューティングデバイス110は、BLEネットワーク140上で信号をアクティブに探索することを開始するが、これはアクティブ状態または半アクティブ状態にある間にBLEネットワーク140上でマーチャントビーコンデバイス120からユーザコンピューティングデバイス110によって受信された信号の信号強度をアクティブに監視するステップを含む。信号強度インジケータは、相対的信号強度を記述する程度、大きさ、または他の数を含み得る。例示的な信号強度インジケータは、ユーザコンピューティングデバイス110とマーチャントビーコンデバイス120との間の距離に相関し得る。たとえば、より高い信号強度は、ユーザコンピューティングデバイス110がマーチャントビーコンデバイス120に物理的により近いことを示すが、より低い信号強度は、ユーザコンピューティングデバイス110がマーチャントビーコンデバイス120から遠く離れていることを示す。
一例において、ユーザコンピューティングデバイス110が、そのロケーションがマーチャントビーコンデバイス120まで第1の閾値距離より短い距離にあり、ユーザコンピューティングデバイス110によって決定されたマーチャントビーコンデバイス120信号強度が、第1の閾値信号強度よりも高いと決定した場合、ユーザコンピューティングデバイス110は、BLEネットワーク140または他の利用可能なワイヤレスネットワーク140上でユーザ101のアカウント識別子を含むチェックイン信号をマーチャントPOSデバイス130に伝送する。別の例では、ユーザコンピューティングデバイス110が、そのロケーションがマーチャントビーコンデバイス120まで第1の閾値距離より短い距離にあり、ユーザコンピューティングデバイス110によって決定されたマーチャントビーコンデバイス120信号強度が、第1の閾値信号強度よりも高いと決定した場合、ユーザコンピューティングデバイス110は、ネットワーク140上でユーザ101のアカウント識別子を含むチェックイン信号を支払処理システム160に伝送する。本明細書で説明されている例では、ユーザコンピューティングデバイス110は、最初に、それがマーチャントビーコンデバイス120まで第1の閾値距離より短い距離にあるかどうかを決定し、次いで、マーチャントビーコンデバイス120の信号強度が第1の閾値信号強度より高いかどうかを決定する。他の例では、ユーザコンピューティングデバイス110は、マーチャントビーコンデバイス120の信号強度が第1の閾値信号強度より高く、ロケーションデータに依存しないと決定したことに応答してチェックイン信号を伝送することを決定する。しかしながら、他の例では、ユーザコンピューティングデバイス110は、最初に、マーチャントビーコンデバイス120の信号強度が第1の閾値信号強度より高いかどうかを決定し、次いで、ユーザコンピューティングデバイス110は、ロケーションデータに基づきそれがマーチャントビーコンデバイス120まで第1の閾値距離より短い距離にあるかどうかを決定する。さらに他の例では、ユーザコンピューティングデバイス110は、マーチャントビーコンデバイス120の信号強度が第1の閾値信号強度より高いかどうかを決定し、それと同時に、ユーザコンピューティングデバイス110がロケーションデータに基づきマーチャントビーコンデバイス120まで第1の閾値距離より短い距離にあるかどうかを決定する。他の例では、チェックイン信号を伝送する代わりに、またはそれに加えて、ユーザコンピューティングデバイス110は、半アクティブ状態からアクティブ状態に遷移する。
ブロック550において、ユーザコンピューティングデバイス110は、現在のユーザコンピューティングデバイス110ロケーションがマーチャントビーコンデバイス120まで第1の閾値距離より短い距離にあるかどうかを決定する。一例において、第1の閾値距離は、マーチャントドライブスルーウィンドウに配置されているマーチャントビーコンデバイス120から半径100メートルまたは適切な半径である。この例では、現在のユーザコンピューティングデバイス110ロケーションは、ユーザコンピューティングデバイス110によって一番最近にログに記録されたロケーションデータを含む。一例において、ユーザコンピューティングデバイス110が、そのロケーションがマーチャントビーコンデバイス120まで第1の閾値距離より短い距離にあり、ユーザコンピューティングデバイス110によって決定されたマーチャントビーコンデバイス120信号強度が、第1の閾値信号強度よりも高いと決定した場合、ユーザコンピューティングデバイス110は、BLEネットワーク140または他の利用可能なワイヤレスネットワーク140上でユーザ101のアカウント識別子を含むチェックイン信号をマーチャントPOSデバイス130に伝送する。
一例において、第1の閾値距離は、ユーザコンピューティングデバイス110が、チェックイン信号を送信する「チェックインポイント」に対応し、第2の閾値距離は、ユーザコンピューティングデバイス110が、ユーザコンピューティングデバイス110がマーチャントロケーションのドライブスルーウィンドウで支払いのためのネクストインラインであるとみなすロケーションに対応する。一例において、第1の信号強度閾値は、ユーザコンピューティングデバイス110が、チェックイン信号を送信する「チェックインポイント」に相関し、第2の信号強度閾値は、ユーザコンピューティングデバイス110が、ユーザコンピューティングデバイス110がマーチャントロケーションのドライブスルーウィンドウで支払いのためのネクストインラインであるとみなすロケーションに相関する。たとえば、第1の閾値距離は第2の閾値距離より長く、第1の信号強度閾値は第2の信号強度閾値より小さい。物理的マーチャントドライブスルーロケーションにおいて、チェックインポイントは、ドライブスルー駐車場にあってよく、ネクストインポイント(next in point)は、ドライブスルー支払い窓口の10フィート以内のロケーションであってよい。
ユーザコンピューティングデバイス110が、現在のユーザコンピューティングデバイス110ロケーションがマーチャントビーコンデバイス120まで第1の閾値距離以上の距離にあると決定した場合、方法240はブロック540に戻る。たとえば、ユーザ101は、マーチャントドライブスルーロケーションのマーチャントPOSデバイス130のジオフェンス境界のところ、またはその中にいるが、ユーザコンピューティングデバイス110がチェックイン信号およびユーザ101のアカウント識別子をマーチャントPOSデバイス130または支払処理システム160に送信できるほど十分にはマーチャントドライブスルーウィンドウのマーチャントビーコンデバイス120に近いところにいない。
ブロック540において、ユーザコンピューティングデバイスは、マーチャントビーコンデバイス120信号強度およびユーザコンピューティングデバイス110ロケーションを監視する。一例において、ユーザコンピューティングデバイス110は、半アクティブ状態またはアクティブ状態のままであり、ユーザコンピューティングデバイス110のロケーションをログに記録し、マーチャントビーコンデバイス120からの信号を探索し、マーチャントビーコンデバイス120から受信された信号の信号強度を監視することを続ける。一例において、ユーザコンピューティングデバイス110は、前に説明したように、マーチャントビーコンデバイス120信号強度およびユーザコンピューティングデバイス110ロケーションを、ユーザコンピューティングデバイス110が非アクティブ状態に遷移するか、またはチェックイン信号およびユーザ101のアカウント識別子をマーチャントPOSデバイス130に伝送することを決定するまで監視し続ける。いくつかの例において、チェックイン信号を伝送することに加えて、またはその代わりに、ユーザコンピューティングデバイス110は、半アクティブ状態からアクティブ状態に遷移する。
ブロック550に戻り、ユーザコンピューティングデバイス110が、現在のユーザコンピューティングデバイス110ロケーションがマーチャントビーコンデバイス120まで第2の閾値距離より短い距離にあると決定した場合、方法240はブロック560に進む。たとえば、ユーザ101は、マーチャントドライブスルーロケーションにいて、マーチャントビーコンデバイス120が配置されているマーチャントドライブスルーウィンドウに接近し始めている。一例において、ユーザ101は、マーチャントドライブスルーロケーションのネクストインラインポイントの範囲内に移動する。
ブロック560において、ユーザコンピューティングデバイス110は、現在のマーチャントビーコンデバイス120信号強度が第1の閾値信号強度より高いかどうかを決定する。一例において、ユーザコンピューティングデバイス110が、そのロケーションがマーチャントビーコンデバイス120まで第1の閾値距離より短い距離にあり、ユーザコンピューティングデバイス110によって決定されたマーチャントビーコンデバイス120信号強度が、第1の閾値信号強度よりも高いと決定した場合、ユーザコンピューティングデバイス110は、BLEネットワーク140または他の利用可能なワイヤレスネットワーク140上でユーザ101のアカウント識別子を含むチェックイン信号をマーチャントPOSデバイス130に伝送する。
ユーザコンピューティングデバイス110が、現在のマーチャントビーコンデバイス120信号強度が第1の閾値信号強度より高くないと決定した場合、方法240はブロック540に戻る。たとえば、ユーザ101は、マーチャントドライブスルーロケーションのところにいるが、ユーザコンピューティングデバイス110がチェックイン信号およびユーザ101のアカウント識別子をマーチャントPOSデバイス130または支払処理システム160に送信し、および/または半アクティブ状態に遷移するほど十分にはマーチャントドライブスルーウィンドウのマーチャントビーコンデバイス120に近いところにいない。
ブロック540において、ユーザコンピューティングデバイス110は、マーチャントビーコンデバイス120信号強度およびユーザコンピューティングデバイス110ロケーションを監視する。一例において、ユーザコンピューティングデバイス110は、半アクティブ状態またはアクティブ状態のままであり、ユーザコンピューティングデバイス110のロケーションをログに記録し、マーチャントビーコンデバイス120からの信号を探索し、マーチャントビーコンデバイス120から受信された信号の信号強度を監視することを続ける。一例において、ユーザコンピューティングデバイス110は、前に説明したように、マーチャントビーコンデバイス120信号強度およびユーザコンピューティングデバイス110ロケーションを、ユーザコンピューティングデバイス110が非アクティブ状態に遷移するか、またはチェックイン信号およびユーザ101のアカウント識別子をマーチャントPOSデバイス130または支払処理システム160に伝送することを決定するまで監視し続ける。
ブロック560に戻り、ユーザコンピューティングデバイス110が、マーチャントビーコンデバイス120信号強度が第1の閾値信号強度より高いと決定した場合、方法240はブロック570に進む。この例では、ユーザ101は、マーチャントビーコンデバイス120が配置されているドライブスルーウィンドウに十分近いか、または他の何らかの形で、ユーザコンピューティングデバイス110が、マーチャントPOSデバイス130がユーザ101による潜在的な決済の準備を行えるようにチェックイン信号およびユーザ101のアカウント識別子をマーチャントPOSデバイス130に送信するほど十分にマーチャントビーコンデバイス120に近い
ブロック570において、ユーザコンピューティングデバイス110は、マーチャントPOSデバイス130にチェックインし、ユーザ101のアカウント識別子をマーチャントPOSデバイス130に伝送する。一例において、ユーザコンピューティングデバイス110は、マーチャントPOSデバイス130にチェックインし、一番最近にログに記録されたユーザコンピューティングデバイス110ロケーションがマーチャントビーコンデバイス120まで第1の閾値距離より短い距離にあることと、ユーザコンピューティングデバイス110によって決定されたマーチャントビーコンデバイス120信号強度が第1の閾値信号強度より高いことの両方を決定したことに応答してBLEネットワーク140を介してユーザ101のアカウント識別子をマーチャントPOSデバイス130に伝送する。別の例において、BLEネットワーク140を介してチェックイン信号を直接マーチャントPOSデバイス130に伝送する代わりに、ユーザコンピューティングデバイス110はチェックイン信号を支払処理システム160に伝送し、支払処理システム160はネットワーク140を介してチェックイン信号を受信し、支払処理システム160はネットワーク140を介してチェックイン信号をマーチャントPOSデバイス130に伝送し、マーチャントPOSデバイス130はネットワーク140を介してチェックイン信号を受信する。一例において、チェックインするステップは、BLEネットワーク140を介して、またはネットワーク140上の支払処理システム160を介して、ユーザ101のアカウント識別子を含むチェックイン要求をマーチャントPOSデバイス130に伝送するステップを含む。別の例において、ユーザコンピューティングデバイス110が、そのロケーションがマーチャントビーコンデバイス120まで第1の閾値距離より短い距離にあり、ユーザコンピューティングデバイス110によって決定されたマーチャントビーコンデバイス120信号強度が、第1の閾値信号強度よりも高いと決定した場合、ユーザコンピューティングデバイス110は、BLEネットワーク140または他の利用可能なワイヤレスネットワーク140上でユーザ101のアカウント識別子を含むチェックイン信号をマーチャントPOSデバイス130に伝送し、マーチャントPOSデバイス130は、BLEネットワーク140上でチェックイン信号を受信する。一例において、BLEネットワーク140を介してチェックイン信号およびユーザ101の識別子を直接マーチャントPOSデバイス130に伝送する代わりに、ユーザコンピューティングデバイス110は、ネットワーク140を介してチェックイン信号およびユーザ101の識別子を支払処理システム160に伝送する。この例では、支払処理システム160は、ユーザコンピューティングデバイス110からチェックイン信号およびユーザ101の識別子を受信した後に、ネットワークを介して、受信されたチェックイン信号およびユーザ101のアカウント識別子をマーチャントドライブスルーロケーションにあるマーチャントPOSデバイス130に転送し、マーチャントPOSデバイス130は、ネットワーク140上で支払処理システム160から転送されたチェックイン信号および転送されたユーザ101のアカウント識別子を受信する。チェックイン信号はユーザ101のアカウント識別子を含み得るか、ユーザ101のアカウント識別子はチェックイン信号を含み得るか、またはチェックイン信号はユーザ101のアカウント識別子から分離しており、ユーザ101のアカウント識別子がユーザコンピューティングデバイス110によって伝送される前、それと同時に、またはその後にマーチャントPOSデバイス130に伝送され得る。
ブロック580において、マーチャントPOSデバイス130は、チェックイン信号およびユーザ101のアカウント識別子を受信する。たとえば、マーチャントPOSデバイス130は、直接ユーザコンピューティングデバイス110からBLEネットワーク140を介してチェックイン信号を受信するか、または前に説明したようにネットワーク140を介して支払処理システム160を介してユーザコンピューティングデバイス110から発信するチェックイン信号を受信する。
一例において、マーチャントPOSデバイス130は、ユーザ101のアカウント識別子およびチェックイン信号を受信し、ユーザの潜在的決済を処理する際に使用するネットワーク140上で支払処理システム160に支払アカウント情報を要求する。この例では、マーチャントPOSデバイス130は、支払処理システム160からユーザ101の要求された支払アカウント情報を受信し、ユーザ101のアカウントに関連付けられている受信された支払アカウント情報を一時的に記憶する。一例において、マーチャントPOSデバイス130は、閾値期間内に、たとえば、15分以内にマーチャントPOSデバイス130によって使用されない場合に、受信されたユーザ101の支払アカウント情報を削除する。別の例において、マーチャントPOSデバイス130は、マーチャントPOSデバイス130がチェックイン信号を受信したときにこの時点でユーザ101の支払アカウント情報を要求せず、ユーザ101の支払アカウント情報に対する要求を支払処理システム160に伝送する前にユーザコンピューティングデバイス110から「ネクストインライン」信号を受信するまで待つ。
方法240は、ブロック580から図2のブロック250に進む。
図2に戻り、ブロック250において、ユーザコンピューティングデバイス110は、マーチャントPOSデバイス130に、それがマーチャントドライブスルーロケーションにおいてネクストインラインであることを通知する。ユーザコンピューティングデバイス110によって、マーチャントPOSデバイス130に、ユーザコンピューティングデバイス110がマーチャントドライブスルーロケーションでネクストインラインであることを通知する方法は、図6で説明されている方法250を参照しつつ以下でより詳しく説明される。
図6は、ユーザコンピューティングデバイス110によって、マーチャントPOSデバイス130にユーザコンピューティングデバイス110がマーチャントドライブスルーロケーションにおいてネクストインラインであることを通知するための方法250を示すブロック図である。方法250は、図1に例示されているコンポーネントを参照しつつ説明される。
前に説明したように、一例において、ユーザコンピューティングデバイス110の、マーチャントビーコンデバイス120までの第1の閾値距離は、ユーザコンピューティングデバイス110がチェックイン信号を送信する「チェックインポイント」に対応し、第2の閾値距離は、ユーザコンピューティングデバイス110が、ユーザコンピューティングデバイス110がマーチャントロケーションのドライブスルーウィンドウで支払いのためネクストインラインであるとみなすロケーションに対応する。さらに、一例において、マーチャントロケーションにおいてマーチャントPOSデバイス130に関連付けられているジオフェンス境界は、マーチャントビーコンデバイス120から第1の閾値距離に等しいか、または第1の閾値距離より遠い距離にある。たとえば、第1の信号強度閾値はマーチャントビーコンデバイス120から30フィート離れたところのロケーションを含み、第2の閾値距離はマーチャントビーコンデバイス120から10フィート離れたところのロケーションを含み、ジオフェンス境界はマーチャントPOSデバイス130を中心とする半径150フィートを含む。一例において、第1の閾値信号強度は、ユーザコンピューティングデバイス110が、チェックイン信号を送信する「チェックインポイント」に相関し、第2の閾値信号強度は、ユーザコンピューティングデバイス110が、ユーザコンピューティングデバイス110がマーチャントロケーションのドライブスルーウィンドウで支払いのためのネクストインラインであるとみなすロケーションに相関する。一例において、第1の閾値信号強度は-105dbm(デシベルミリワット)より大きい信号強度を含み、第2の閾値信号強度は-65dbmより大きい信号強度を含む。
いくつかの例において、ユーザ101の移動、運転、または他の行動に応じて、ユーザコンピューティングデバイス110は、ジオフェンス境界もしくはその中、ジオフェンス境界とチェックインポイントとの間、チェックインポイントとネクストインラインポイントとの間、またはネクストインラインポイント内にあるように位置を変更し得る。マーチャントビーコンデバイス120から検出された信号強度インジケータおよびユーザコンピューティングデバイス110によってログに記録されたロケーションデータを使用して、ユーザコンピューティングデバイス110は、ユーザコンピューティングデバイス110が適切なアクションを実行するためにどの境界および/または距離閾値の間に配置されているかを決定し得る。前に説明されているように、ユーザコンピューティングデバイス110が、ロケーションデータに基づき、マーチャントビーコンデバイス120識別子を検出することで、それがジオフェンス境界に入ったと判断した場合に、ユーザコンピューティングデバイス110は、非アクティブ状態からアクティブ状態または半アクティブ状態に遷移する。さらに、ユーザコンピューティングデバイス110が、信号強度が第1の閾値信号強度より大きく、マーチャントビーコンデバイス120からの距離が第1の閾値距離より短いと決定したことに基づきユーザコンピューティングデバイスがチェックインポイントとネクストインラインポイントとの間にあると判断した場合に、ユーザコンピューティングデバイス110は、マーチャントドライブスルーウィンドウにおいてユーザ101のアカウント識別子を含むチェックイン信号をマーチャントPOSデバイス130に送信する。最後に、ユーザコンピューティングデバイス110が、信号強度が第2の閾値信号強度より大きく、マーチャントビーコンデバイス120からの距離が第2の閾値距離より短いと決定したことに基づきユーザコンピューティングデバイス110がチェックインポイント内にあると判断した場合に、ユーザコンピューティングデバイス110は、ネクストインライン信号をマーチャントPOSデバイス130に伝送する。例示的なネクストインライン信号は、ユーザ101のアカウント識別子を含む。
ブロック610において、ユーザコンピューティングデバイス110は、ユーザコンピューティングデバイス110のロケーションおよびマーチャントビーコンデバイス120の信号強度を定期的に決定する。一例において、ユーザコンピューティングデバイス110は、ユーザコンピューティングデバイス110がジオフェンス境界内に留まっている場合にアクティブ状態を維持する。この例では、ユーザコンピューティングデバイス110は、ユーザコンピューティングデバイス110が、それがマーチャントロケーションにあるマーチャントPOSデバイス130のジオフェンス境界の外側に配置されていると決定した場合およびユーザコンピューティングデバイス110がマーチャントビーコンデバイス120から信号を検出しない場合に非アクティブ状態に戻る。たとえば、ユーザコンピューティングデバイス110は、ユーザ101が運転してドライブスルーロケーションから離れるか、または他の何らかの形でそこを後にした場合に非アクティブ状態に戻る。
本明細書で説明されている例では、ユーザコンピューティングデバイス110は、最初に、ユーザコンピューティングデバイス110のログに記録されているロケーションデータに基づきユーザコンピューティングデバイス110がマーチャントビーコンデバイス120に近づいているかどうかを決定し、次いで、ログに記録されているマーチャントビーコンデバイス120信号強度データに基づきマーチャントビーコンデバイス120信号強度が強くなっているかどうかを決定する。しかしながら、他の例では、ユーザコンピューティングデバイス110は、最初に、ログに記録されているマーチャントビーコンデバイス120信号強度データに基づきマーチャントビーコンデバイス120信号強度が強くなっているかどうかを決定し、次いで、ログに記録されているロケーションデータに基づきユーザコンピューティングデバイス110がマーチャントビーコンデバイス120に近づいてきているかどうかを決定する。他の例では、ユーザコンピューティングデバイス110は、ログに記録されているロケーションデータに基づきユーザコンピューティングデバイス110がマーチャントビーコンデバイス120に近づいてきているかどうかのみを決定し、ログに記録されているマーチャントビーコンデバイス120信号強度データを考慮しない。さらに別の例では、ユーザコンピューティングデバイス110は、ログに記録されている信号強度データに基づきマーチャントビーコンデバイス120信号強度が強くなっているかどうかのみを決定し、ユーザコンピューティングデバイス110のログに記録されているロケーションデータを考慮しない。ユーザコンピューティングデバイス110は、信号強度データおよびユーザコンピューティングデバイス110ロケーションデータをアクティブに監視し、適切なチェックインまたはネクストインライン信号を伝送することを決定するか、または省電力非アクティブ状態に遷移することを決定する。
ブロック620において、ユーザコンピューティングデバイス110は、ユーザコンピューティングデバイス110がマーチャントビーコンデバイス120に近づいてきているかどうかを決定する。
ユーザコンピューティングデバイス110が、ユーザコンピューティングデバイス110がマーチャントビーコンデバイス120に近づいてきていないと決定した場合、方法250はブロック630に進む。たとえば、ユーザ101は、ドライブスルーレーン内で一列に並んで待ち、列の中の他の車両の後について待ちながら少しずつ前に進む。
ブロック630において、ユーザコンピューティングデバイス110は、ユーザコンピューティングデバイス110がドライブスルーロケーションにおけるマーチャントPOSデバイス130に関連付けられているジオフェンス境界の外側にあるかどうかを決定する。たとえば、ユーザコンピューティングデバイス110は、ユーザコンピューティングデバイス110の一番最近にログに記録されたロケーションを支払処理システム160から受信されたマーチャントドライブスルーロケーションにあるマーチャントPOSデバイス130に関連付けられているジオフェンス境界と比較する。
ユーザコンピューティングデバイス110が、ユーザコンピューティングデバイス110がジオフェンス境界の外側にあると決定した場合、方法250はブロック660に進む。たとえば、ユーザ101は運転してマーチャントドライブスルーロケーションから離れた。
ブロック660において、ユーザコンピューティングデバイス110は、アクティブ状態から非アクティブ状態に遷移する。一例において、ユーザコンピューティングデバイス110のログに記録されたロケーションデータに基づき、ユーザコンピューティングデバイス110の一番最近にログに記録されたロケーションがマーチャントドライブスルーロケーションにおけるマーチャントPOSデバイス130に関連付けられているジオフェンス境界の外側のロケーションに対応すると判断したことに応答して、ユーザコンピューティングデバイス110は、アクティブ状態または半アクティブ状態から非アクティブ状態に遷移する。たとえば、非アクティブ状態に遷移するステップは、ユーザコンピューティングデバイス110がロケーションデータをログに記録する、またはユーザコンピューティングデバイス110がBLEネットワーク140上の信号を探索する時間間隔を大きくするものとしてよい。
ブロック630に戻り、ユーザコンピューティングデバイス110が、ユーザコンピューティングデバイス110がジオフェンス境界の外側にないと決定した場合、方法250はブロック610に戻る。たとえば、ユーザ101は、ジオフェンス境界の内側にすでに配置されていて、ユーザコンピューティングデバイス110は、ユーザ101がジオフェンス境界の内側にまだいて、したがってアクティブ状態のままであると決定する。
ブロック610において、ユーザコンピューティングデバイスは、ユーザコンピューティングデバイス110のロケーションおよびマーチャントビーコンデバイス120の信号強度を定期的に決定する。一例において、ユーザコンピューティングデバイス110は、ユーザコンピューティングデバイス110がジオフェンス境界内に留まっている場合にアクティブ状態を維持する。この例では、ユーザコンピューティングデバイス110は、ユーザコンピューティングデバイス110が、それがマーチャントロケーションにあるマーチャントPOSデバイス130のジオフェンス境界の外側に配置されていると決定した場合およびユーザコンピューティングデバイス110がマーチャントビーコンデバイス120から信号を検出しない場合に非アクティブ状態に戻る。たとえば、ユーザコンピューティングデバイス110は、ユーザ101が運転してドライブスルーロケーションから離れるか、または他の何らかの形でそこを後にした場合に非アクティブ状態に戻る。
ブロック620に戻り、ユーザコンピューティングデバイス110が、ユーザコンピューティングデバイス110がマーチャントビーコンデバイス120に近づいたと決定した場合、方法250はブロック640に進む。
ブロック640において、ユーザコンピューティングデバイス110は、現在のマーチャントビーコンデバイス120信号強度が強くなっているか、または弱くなっているかを決定する。本明細書で説明されている例では、BLEネットワーク140上でユーザコンピューティングデバイス110によって検出されたマーチャントビーコンデバイス120の信号強度と、ユーザコンピューティングデバイス110とマーチャントビーコンデバイス120との間の距離との間に逆相関が存在する。たとえば、ユーザコンピューティングデバイス110がマーチャントビーコンデバイス120に接近するにつれ、ユーザコンピューティングデバイス110によって検出されるマーチャントビーコンデバイス120の信号強度は強くなる。この例では、ユーザコンピューティングデバイス110がマーチャントビーコンデバイス120から移動して離れるにつれ、ユーザコンピューティングデバイス110によって検出されるマーチャントビーコンデバイス120の信号強度は弱くなる。
ユーザコンピューティングデバイス110が、マーチャントビーコンデバイス120信号強度が弱くなってきていると決定した場合、方法250はブロック650に進む。たとえば、ユーザ101は、運転してマーチャントビーコンデバイス120から離れるか、または他の何らかの形で移動して離れることを開始する。
ブロック650において、ユーザコンピューティングデバイス110は、マーチャントビーコンデバイス120識別子がまだ検出されているかどうかを決定する。
ユーザコンピューティングデバイス110が、マーチャントビーコンデバイス120識別子が検出されないと決定した場合、方法250はブロック660に進む。たとえば、マーチャントビーコンデバイス120識別子を検出しないことは、マーチャントPOSデバイス130に関連付けられているジオフェンス境界から出たことを示す。
ブロック660において、ユーザコンピューティングデバイス110は、アクティブ状態から非アクティブ状態に遷移する。一例において、ユーザコンピューティングデバイス110のログに記録されたロケーションデータに基づき、ユーザコンピューティングデバイス110の一番最近にログに記録されたロケーションがマーチャントドライブスルーロケーションにおけるマーチャントPOSデバイス130に関連付けられているジオフェンス境界の外側のロケーションに対応すると判断したことに応答して、ユーザコンピューティングデバイス110は、アクティブ状態または半アクティブ状態から非アクティブ状態に遷移する。たとえば、非アクティブ状態に遷移するステップは、ユーザコンピューティングデバイス110がロケーションデータをログに記録する、またはユーザコンピューティングデバイス110がBLEネットワーク140上の信号を探索する時間間隔を大きくするものとしてよい。
いくつかの例において、ユーザコンピューティングデバイス110ロケーションデータおよびマーチャントビーコンデバイス110信号強度データを順次考慮する代わりに、ユーザコンピューティングデバイス110は、アクティブ状態に留まるか、非アクティブ状態に遷移するか、またはネクストインライン信号をマーチャントPOSデバイス130に送信するかを決定するときにデータの両方のセットを同時に考慮してよい。
ブロック650に戻り、ユーザコンピューティングデバイス110がマーチャントビーコンデバイス120を検出した場合に、方法250はブロック610に戻る。
ブロック610において、ユーザコンピューティングデバイス110は、ユーザコンピューティングデバイス110のロケーションおよびマーチャントビーコンデバイス120の信号強度を定期的に決定する。この例では、ユーザコンピューティングデバイス110は、ユーザコンピューティングデバイス110が、それがマーチャントロケーションにあるマーチャントPOSデバイス130のジオフェンス境界の外側に配置されていると決定した場合およびユーザコンピューティングデバイス110がマーチャントビーコンデバイス120から信号を検出しない場合に非アクティブ状態に戻る。たとえば、ユーザコンピューティングデバイス110は、ユーザ101が運転してドライブスルーロケーションから離れるか、または他の何らかの形でそこを後にした場合に非アクティブ状態に戻る。
ブロック640に戻り、ユーザコンピューティングデバイス110が、マーチャントビーコンデバイス120信号強度が強くなってきていると決定した場合、方法250はブロック670に進む。
ブロック670において、ユーザコンピューティングデバイス110は、ユーザコンピューティングデバイスがマーチャントビーコンデバイス120まで第2の閾値距離より短い距離にある場合にユーザ101がネクストインラインであると決定し、マーチャントビーコンデバイス120の第2の閾値信号強度より大きい信号強度を含む信号を検出し、ユーザコンピューティングデバイス110は、ユーザ101がネクストインラインであることをマーチャントPOSデバイス130にアドバイスするメッセージをマーチャントPOSデバイス130に伝送する。たとえば、ユーザ101は自分の車両を運転して、マーチャントビーコンデバイス120およびマーチャントPOSデバイス130が配置されている支払い窓口につける。支払い窓口に接近した結果、ユーザコンピューティングデバイス110によって検出されるようなマーチャントビーコンデバイス120の信号強度は、最大信号強度閾値を超えて強くなり、ログに記録されているロケーションデータに基づくユーザコンピューティングデバイス110とマーチャントビーコンデバイス120との間の距離は、ユーザコンピューティングデバイス110がマーチャントビーコンデバイス120から第2の閾値距離より短い距離にあることを指示する。ユーザコンピューティングデバイス110のロケーションがマーチャントビーコンデバイス120から第2の閾値距離より短い距離にあることに基づき、および/またはユーザコンピューティングデバイス110によって検出されるようなマーチャントビーコンデバイス120の信号強度が第2の閾値信号強度より高いことに基づき、ユーザコンピューティングデバイス110は、ユーザ101がネクストインラインであると決定し、BLEネットワーク140を介してネクストインラインステータスメッセージをマーチャントPOSデバイス130に伝送する。別の例において、ユーザコンピューティングデバイス110はネットワーク140を介してネクストインライン信号を支払処理システム160に伝送し、支払処理システム160はネクストインライン信号を受信し、支払処理システム160はネットワーク140を介してネクストインライン信号をマーチャントPOSデバイス130に伝送し、マーチャントPOSデバイス130はネットワーク140を介してネクストインライン信号を受信する。一例において、ネクストインラインステータスメッセージは、ユーザ101のアカウント識別子を含む。
ブロック680において、マーチャントPOSデバイス130は、ユーザ101がネクストインラインであるというメッセージを受信する。一例において、ネクストインラインステータスメッセージは、ユーザ101のアカウント識別子を含み、マーチャントPOSデバイス130は、ユーザ101のアカウント識別子を受信する。いくつかの例では、マーチャントPOSデバイス130は、ユーザコンピューティングデバイス110からチェックイン信号およびユーザ101のアカウント識別子を受信したことに応答して前の時にネットワーク140上で支払処理システム160にユーザ101の支払アカウントデータを要求し、受信した。他の例では、マーチャントPOSデバイス130は、ユーザコンピューティングデバイス110からチェックイン信号を受信したことに応答して支払処理システム160に支払アカウントデータを要求しない。一例において、マーチャントPOSデバイス130は、ユーザ101のアカウント識別子およびネクストインライン信号を受信し、ユーザの潜在的決済を処理する際に使用するネットワーク140上で支払処理システム160に支払アカウント情報を要求する。この例では、マーチャントPOSデバイス130は、支払処理システム160からユーザ101の要求された支払アカウント情報を受信し、ユーザ101のアカウントに関連付けられている受信された支払アカウント情報を一時的に記憶する。一例において、マーチャントPOSデバイス130は、閾値期間内に、たとえば、15分以内にマーチャントPOSデバイス130によって使用されない場合に、受信されたユーザ101の支払アカウント情報を削除する。別の例において、マーチャントPOSデバイス130は、マーチャントPOSデバイス130がネクストインライン信号を受信したときにこの時点でユーザ101の支払アカウント情報を要求せず、ユーザ101が支払アプリケーション113を使用して決済を要求したことに応答してユーザ101に対する支払アカウント情報を要求するマーチャントPOSデバイスの操作者102から入力を受信するまで待つ。
方法250は、ブロック680から図2のブロック260に進む。
図2に戻り、ブロック260において、ユーザ101は、マーチャントドライブスルーウィンドウにおいて決済を開始する。ユーザ101によって、マーチャントドライブスルーウィンドウにおいて決済を開始する方法は、図7で説明されている方法260を参照しつつ以下でより詳しく説明される。
図7は、ユーザ101によって、マーチャントドライブスルーウィンドウで決済を開始するための方法260を示すブロック図である。方法260は、図1に例示されているコンポーネントを参照しつつ説明される。
ブロック710において、ユーザ101は、マーチャントPOSデバイス130に到着する。一例において、マーチャントドライブスルーウィンドウに配置されているマーチャントPOSデバイス130に、車両を運転しながら接近する前のある時点において、ユーザ101は、注文窓口またはマイクロフォンで購入する1つまたは複数の品目を注文する。この例では、ユーザ101は、ユーザコンピューティングデバイス110を携帯して、ドライブスルーレーンに沿って車両を運転し、マーチャントPOSデバイス130およびマーチャントビーコンデバイス120の両方を含むドライブスルーウィンドウに、ユーザ101がマーチャントPOSデバイス130に到達するまで接近する。別の例において、本人が直にマーチャントPOSデバイス130に接近する前のある時点において、ユーザ101は、マーチャントシステムロケーションを見て回り、1つまたは複数の購入品目を選択する。この例では、ユーザ101は、1つまたは複数の品目を集め、1つまたは複数の品目をマーチャントPOSデバイス130のところへ、実際の買い物かごまたはショッピングカートを用いて、運ぶか、または他の何らかの方法で搬送するものとしてよい。
ブロック720において、マーチャント販売時点情報管理デバイス130の操作者102は、ユーザ101の購入品目を合計する。ユーザ101がマーチャントドライブスルーロケーションにおいて1つまたは複数の品目を注文した例では、マーチャントPOSデバイス130の操作者102は、注文窓口またはマイクロフォンで行ったユーザ101の注文を受け取っており、マーチャントPOSデバイス130のユーザインターフェース上の1つまたは複数の対象を作動させ、ユーザ101によって注文された品目を入力し、品目を合計する。別の例において、マーチャントPOSデバイスの操作者102は、1つまたは複数の品目に付けられているバーコードをスキャンするか、または1つまたは複数の品目に関連付けられている記述および価格をマーチャントPOSデバイス130に他の何らかの方法で入力する。一例において、品目をスキャンするか、またはマーチャントPOSデバイス130に手動で入力した後、マーチャントPOSデバイスの操作者102は、マーチャントPOSデバイス130のユーザインターフェース135上の対象を作動させて、マーチャントPOSデバイス130に品目の総計を行うように指令する。一例において、マーチャントPOSデバイス130は、ユーザインターフェース135を介して、その合計をユーザ101に表示する。別の例では、マーチャントPOSデバイス130は、ユーザインターフェース135を介して、その合計をマーチャントPOSデバイスの操作者102に表示し、操作者102は、その合計をユーザ101に知らせる。
ブロック730において、マーチャント販売時点情報管理デバイス130の操作者は、ユーザに支払オプションを選択するよう求める。一例において、マーチャントPOSデバイス130は、ユーザ101が決済で使用するために選択し得る1つまたは複数の支払オプションを表示する。例示的な支払オプションは、支払処理システム160に関連付けられている支払アプリケーション113を介した支払、現金払い、小切手払い、クレジットカード払い、デビットカード払い、および/またはマーチャントシステムがユーザ101から支払のために受け入れることができるか、または受け入れる意思がある他の支払手段を含み得る。一例において、1つまたは複数の支払オプションは、ユーザインターフェース135上に対象として表示され、ユーザ101がマーチャントPOSデバイスの操作者102に選択を行うことを指図したことに応答してマーチャントPOSデバイスの操作者102によって選択可能である。
ブロック740において、ユーザ101は、支払アプリケーション113により決済を開始するようにマーチャント販売時点情報管理デバイスの操作者102に指図する。一例において、支払アプリケーション113を支払オプションとして選択する要求をユーザ101から口頭で受け取ったことに応答して、マーチャントPOSデバイスの操作者102は、支払アプリケーション113の支払オプションに対応するマーチャントPOSデバイス130のユーザインターフェース135上の対象を作動させる。
ブロック750において、マーチャント販売時点情報管理デバイスの操作者102は、支払アプリケーション113を使用して決済を開始する、マーチャント販売時点情報管理デバイス130上のオプションを選択する。一例において、マーチャントPOSデバイス130は、マーチャントPOSデバイスの操作者102が支払アプリケーション113を使用して決済を開始するオプションを選択した後に確認画面を表示する。例示的な確認画面は、潜在的な決済を要約し、決済合計、ユーザ101によって購入される1つまたは複数の品目の記述、およびユーザ101が決済の支払方法として支払アプリケーション113を選択したことを示す指示のうちの1つまたは複数を含む情報を表示し得る。例示的な確認画面は、決済を確認するか、または決済をキャンセルするオプションをさらに表示し得る。一例において、ユーザ101は、確認画面を見直し、確認画面に表示されている情報が正しいと決定し、決済を続けることを決定し、マーチャントPOSデバイスの操作者102に、ユーザインターフェース135を介して決済を確認するオプションを選択することを指図する。
別の例では、ユーザ101は、情報が正しくない、またはユーザ101の気が変わって品目を購入しないと決定した、という理由により決済を中止することを決定する。さらに別の例では、確認画面は、決済の詳細を編集するオプションをさらに含む。この例では、マーチャントPOSデバイスの操作者102は、ユーザ101の指図の後に、決済の詳細を編集するオプションを選択するものとしてよく、次いで、決済における品目のうちの1つまたは複数を編集するか、追加するか、もしくは削除するか、または決済に対する支払詳細もしくは支払方法を編集し得る。
ブロック760において、マーチャントPOSデバイス130は、ネクストインラインステータスメッセージを送信したユーザコンピューティングデバイス110に関連付けられているユーザ101のアカウント識別情報を表示する。一例において、マーチャントPOSデバイス130は、ユーザ101のアカウントに関連付けられているユーザ101の名前、ユーザ101のアカウント識別子、アカウントに関連付けられているユーザ101の写真、またはマーチャントPOSデバイス130の操作者102がユーザ101を識別するために使用することができたユーザ101のアカウントに関連付けられている他の関連データを表示する。別の例では、マーチャントPOSデバイス130は、ユーザ101のアカウント識別情報を表示しない。
ブロック770において、マーチャントPOSデバイス130の操作者102は、ユーザ101の識別情報を確認し、ユーザ101のアカウントにより決済を行うオプションを選択する。一例において、マーチャントPOSデバイス130の操作者102は、ユーザ101のアカウントに関連付けられているユーザ101の表示される画像をユーザ101の外観と比較する。別の例では、マーチャントPOSデバイス130の操作者102は、ユーザ101に身分証明書を要求し、身分証明書に載っている1つまたは複数のデータをユーザ101のアカウントに関連付けられているマーチャントPOSデバイス130上に表示されている1つまたは複数のデータと比較する。一例において、マーチャントPOSデバイスの操作者102は、マーチャントPOSデバイス130のユーザインターフェース上の1つまたは複数の対象を作動させて、ユーザ101の識別情報を確認し、および/またはユーザ101のアカウントにより決済を行うオプションを選択する。
ブロック780において、マーチャントPOSデバイス130は、ユーザ101のアカウント識別情報および支払アカウント情報要求を支払処理システム160に伝送する。一例において、ユーザ101は、支払処理システムによって維持されるユーザ101のアカウントに関連付けられている1つまたは複数の支払オプションから決済で使用する支払データを選択する。この例では、マーチャントPOSデバイス130は、ユーザ101のアカウントにより決済を行うためにマーチャントPOSデバイス130がマーチャントPOSデバイス130ユーザインターフェース上のオプションの選択を受け取ったことに応答してユーザ101のアカウント識別情報および支払アカウント情報要求を伝送する。一例において、マーチャントPOSデバイス130は、ネットワーク140を介してユーザ101のアカウント識別情報および支払アカウント情報要求を伝送する。しかしながら、別の例では、ユーザ101は、決済に使用するように構成されている単一の事前構成された支払オプションを有し、ユーザ101は、決済の時点において支払データを選択する必要はない。この例では、マーチャントPOSデバイス130は、支払アカウント情報要求を伝送せず、ネットワーク140を介してユーザ101のアカウント識別情報を支払処理システム160に伝送するだけである。この例では、マーチャントPOSデバイス130は、ユーザ101のアカウントにより決済を行うためにマーチャントPOSデバイス130がマーチャントPOSデバイス130ユーザインターフェース上のオプションの選択を受け取ったことに応答してユーザ101のアカウント識別情報を支払処理システム160に伝送する。別の例では、マーチャントPOSデバイス130は、ユーザコンピューティングデバイス110からチェックイン信号またはネクストインライン信号を受信した直後のある時点に支払処理システム160から支払アカウント情報を以前に受信していた。この他の例では、支払アカウント情報は、ユーザ101のアカウントに関連付けられている1つの特定支払アカウントオプションを含むか、またはユーザ101のアカウントに関連付けられている2つまたはそれ以上の支払アカウントオプションを含み得る。
別の例では、マーチャントPOSデバイス130の操作者は、ユーザ101に支払アカウント情報を選択することを求めず、その代わりに、決済に使用するためにユーザ101によって事前構成されている特定の支払アカウントに関連付けられている支払アカウント情報を支払処理システム160から受信する。この例では、ユーザ101は、支払アプリケーション113を介して、マーチャントドライブスルーロケーションの決済の前のある時点において、決済に使用する特定の支払アカウントを事前構成する。この例では、支払処理システム160は、特定の支払アカウントをユーザ101のアカウントに関連付ける。この例では、マーチャントPOSデバイス130から支払アカウント情報に対する要求を受信したことに応答して、支払処理システム160は、ユーザ101のアカウントに関連付けられている特定の支払アカウントを決定し、ネットワーク140上で特定の支払アカウントに関連付けられている情報をマーチャントPOSデバイス130に伝送する。
方法260は、ブロック780から図2のブロック270に進む。
図2に戻り、ブロック270において、支払処理システム160は、マーチャントPOSデバイス130から決済情報および支払アカウント情報の選択を受け取り、決済を処理する。支払処理システム160によって、マーチャントPOSデバイス130から支払アカウント情報の選択を受け取り、決済を処理する方法は、図8で説明されている方法270を参照しつつ以下でより詳しく説明される。
図8は、支払処理システム160によって、マーチャントPOSデバイス130から支払アカウント情報の選択を受け取り、決済を処理するための方法270を示すブロック図である。方法270は、図1に例示されているコンポーネントを参照しつつ説明される。しかしながら、いくつかの他の例では、支払処理システム160は、決済の承認のみを必要とし、マーチャントPOSデバイス130を介した特定の支払オプションの選択を必要としないが、それは、ユーザ101のアカウントが決済により特定の支払アカウントを使用するように事前構成されているからである。
ブロック810において、支払処理システム160は、マーチャントPOSデバイス130からのユーザ101の識別情報の指示、および支払アカウント情報要求を受信する。たとえば、支払処理システム160は、ネットワーク140を介して、ユーザ101のアカウント識別子および支払アカウント情報要求を受信する。
ブロック820において、支払処理システム160は、識別されたユーザ101のアカウント情報をマーチャント販売時点情報管理デバイス130に伝送する。一例において、支払処理システム160は、マーチャントPOSデバイス130から受信されたユーザ101のアカウント識別子に基づき現在の決済に関連付けられているユーザ101のアカウントを識別する。たとえば、支払処理システム160を伴うユーザ101のアカウントは、ユーザ101の1つまたは複数の支払アカウントに関連付けられている支払アカウント情報を含む。ユーザ101の例示的な支払アカウントは、クレジットアカウント、銀行口座、ストアドバリューアカウント、ギフトカード、マーチャントシステムのチャージアカウント、または他の関連するユーザ101のアカウントを含む。一例において、マーチャントPOSデバイス130は、ユーザ101の支払アカウントのうちの1つまたは複数に対する完全な支払情報は受信しない。たとえば、支払情報は、難読化されるか、または切り詰められてよい。たとえば、マーチャントPOSデバイス130は、ユーザ101がユーザインターフェース135を介して支払アカウントを識別するのに十分な、短縮された支払情報のみを受信し得る。別の例では、支払処理システム160は、決済で使用するように事前構成されているユーザ101のアカウントに関連付けられている特定の支払アカウントに対するアカウント情報を伝送し、ユーザ101のアカウントに関連付けられているすべての支払アカウントに関連付けられている情報は伝送しない。
ブロック830において、マーチャントPOSデバイス130は、識別されたユーザ101のアカウントを表示する。一例において、マーチャントPOSデバイス130は、ユーザインターフェース135上にユーザ101の完全なアカウント情報は表示しない。たとえば、クレジットカード口座では、マーチャントPOSデバイスのユーザインターフェース135は、クレジットカードに関連付けられている名前、クレジットカード番号の下4桁、および有効期限のみを表示し得る。
ブロック840において、マーチャントPOSデバイスの操作者102は、決済に対するユーザ101の支払アカウントを選択し、ユーザ101の許可により決済を確認する。たとえば、ユーザ101は、ユーザインターフェース135に直接表示されるアカウントオプションを閲覧するか、またはマーチャントPOSデバイスの操作者102がユーザ101の支払アカウントオプションをユーザ101に読み上げるのを聴く。一例において、ユーザ101は、決済で使用する支払アカウントオプションを選択する。たとえば、ユーザ101は、クレジットカード口座を使用することを決定する。一例において、ユーザ101は、決済で使用する支払アカウントの選択をマーチャントPOSデバイスの操作者102に伝達する。一例において、支払アカウントのユーザ101の指示を受信したことに応答して、マーチャントPOSデバイスの操作者102は、マーチャントPOSデバイスのユーザインターフェース135上でユーザ101によって指示されている支払アカウントを選択する。1つの特定の支払アカウントが決済に使用するようにユーザ101によってすでに事前構成されている例において、マーチャントPOSデバイスの操作者102は、決済についてユーザ101の支払アカウントを選択せず、マーチャントPOSデバイス130のユーザインターフェースを介して決済を確認するオプションを選択するのみである。別の例では、ユーザ101の支払アカウントを選択する代わりに、ユーザ101は、決済に使用するように事前構成されている特定のユーザ101の支払アカウントの使用を確認する。
ブロック850において、マーチャントPOSデバイス130は、決済の詳細を支払処理システム160に伝送する。たとえば、マーチャントPOSデバイス130は、決済合計額、マーチャントシステムのアカウント識別子、およびユーザ101のアカウント支払オプションの選択、または決済に使用するように事前構成されている特定の支払アカウントの使用の確認を含む決済の詳細を伝送する。一例において、支払処理システム160は、ネットワーク140上で決済の詳細を受信する。一例において、支払処理システム160は、ユーザ101の支払アカウントの受信済みの選択に対応するユーザ101のアカウントから支払アカウント情報を抽出する。
ブロック860において、支払処理システム160は、決済許可要求を発行人システム150に伝送する。一例において、支払処理システム160は、ユーザ101の支払アカウント情報と、マーチャントシステムの支払アカウント情報と、決済の合計金額とを含む決済許可要求を生成する。一例において、発行人システム150は、ネットワーク140を介して支払処理システム160から決済許可要求を受信する。
ブロック870において、発行人システム150は、決済許可要求を認可し、決済許可の認可を支払処理システム160に伝送する。一例において、発行人システム150は、ユーザ101の現在の勘定残高をユーザ101のクレジットアカウントに関連付けられているユーザ101の与信限度額から差し引く。一例において、与信限度額と与信残高との間の差が決済の総額よりも大きい正数である場合、発行人システム150は、決済許可を認可する。たとえば、ユーザ101は、決済が認可されるとした場合に与信限度額を超えず、したがって、発行人システム150は、決済許可要求を認可する。一例において、支払処理システム160は、発行人システム150から決済許可認可を受信する。別の例では、支払処理システム160は、発行人システム150が決済許可要求を拒否したことに応答して決済許可要求の拒否を受信する。一例において、発行人システム150が決済許可要求を認可した場合に、発行人システム150は、マーチャントシステムアカウントに貸方記入し、ユーザ101のクレジットアカウント明細書、銀行口座明細書、または他の適切な明細書に課金を追加する。
ブロック880において、支払処理システム160は、決済受領書をマーチャント販売時点情報管理デバイス130に伝送する。たとえば、支払処理システム160は、ネットワーク140上で決済の認可の確認または拒否された決済の通知をマーチャントPOSデバイス130に伝送する。一例において、マーチャントPOSデバイス130は、マーチャントPOSデバイス130の一コンポーネントであるか、またはマーチャントPOSデバイス130に通信可能に何らかの方法で結合されるプリンタデバイスを介して成功または不成功の決済の要約を含む受領書を印刷する。別の例では、支払処理システム160は、ユーザコンピューティングデバイス上に表示されるべき決済受領書をユーザコンピューティングデバイス110に伝送し得る。さらに別の例では、マーチャントPOSデバイス130は、ユーザコンピューティングデバイス上に表示されるべき決済受領書をユーザコンピューティングデバイス110に伝送する。
方法270は、ブロック880から図2のブロック280に進む。
図2に戻り、ブロック280において、マーチャントPOSデバイスの操作者は、ドライブスルーウィンドウにおいて商品またはサービスをユーザ101に提供する。たとえば、マーチャントロケーションがドライブスルーレストラン、発券カウンタ、または食料品店レジである場合、マーチャントPOSデバイスの操作者102は、ユーザ101に、ドライブスルーウィンドウを通じて注文された品目、発券カウンタのチケット、または食料品店レジのユーザ101の袋に詰められた食料品類をそれぞれ提供する。一例において、マーチャントPOSデバイス130は、決済を記述した受領書を印刷し、マーチャントPOSデバイスの操作者102は、その受領書をユーザ101に渡す。
他の例
図9は、いくつかの例による、コンピューティングマシン2000およびモジュール2050を示している。コンピューティングマシン2000は、様々なコンピュータ、サーバ、モバイルデバイス、組込みシステム、または本明細書で提示されているコンピューティングシステムのうちのどれかに対応するものとしてよい。モジュール2050は、コンピューティングマシン2000が本明細書において提示されている様々な方法および処理機能を実行するのを円滑にするように構成された1つまたは複数のハードウェアもしくはソフトウェア要素を備え得る。コンピューティングマシン2000は、プロセッサ2010、システムバス2020、システムメモリ2030、記憶媒体2040、入出力インターフェース2060、およびネットワーク2080と通信するためのネットワークインターフェース2070などの様々な内蔵のまたは取り付けられた構成要素を備え得る。
コンピューティングマシン2000は、従来のコンピュータシステム、組込みコントローラ、ラップトップ、サーバ、モバイルデバイス、スマートフォン、セットトップボックス、キヨスク、車両情報システム、テレビに関連付けられている1つまたは複数のプロセッサ、カスタマイズされたマシン、他の任意のハードウェアプラットフォーム、またはこれらの任意の組合せもしくは複数として実装され得る。コンピューティングシステム2000は、データネットワークまたはバスシステムを介して接続された複数のコンピューティングマシンを使用して機能するように構成された分散システムであってよい。
プロセッサ2010は、本明細書で説明されているオペレーションおよび機能を実行し、要求の流れおよびアドレスマッピングを管理するコードもしくは命令を実行し、計算を実行し、コマンドを生成するように構成され得る。プロセッサ2010は、コンピューティングマシン2000の中の構成要素のオペレーションを監視し、制御するように構成され得る。プロセッサ2010は、汎用プロセッサ、プロセッサコア、マルチプロセッサ、再構成可能なプロセッサ、マイクロコントローラ、デジタルシグナルプロセッサ(「DSP」)、特定用途向け集積回路(「ASIC」)、グラフィックスプロセッシングユニット(「GPU」)、フィールドプログラマブルゲートアレイ(「FPGA」)、プログラマブルロジックデバイス(「PLD」)、コントローラ、状態機械、ゲートロジック、ディスクリートハードウェアコンポーネント、他の任意の処理ユニット、またはこれらの任意の組合せもしくは複数であってよい。プロセッサ2010は、単一の処理ユニット、複数の処理ユニット、単一の処理コア、複数の処理コア、専用処理コア、コプロセッサ、またはこれらの任意の組合せであってよい。いくつかの実施形態によれば、プロセッサ2010は、コンピューティングマシン2000の他の構成要素とともに、1つまたは複数の他のコンピューティングマシン内で実行する仮想化されたコンピューティングマシンであってもよい。
システムメモリ2030は、リードオンリーメモリ(「ROM」)、プログラマブルリードオンリーメモリ(「PROM」)、消去可能プログラマブルリードオンリーメモリ(「EPROM」)、フラッシュメモリ、または電力が供給される、もしくは電力が供給されないプログラム命令もしくはデータを記憶することができる他の任意のデバイスなどの不揮発性メモリを含み得る。システムメモリ2030は、ランダムアクセスメモリ(「RAM」)、スタティックランダムアクセスメモリ(「SRAM」)、ダイナミックランダムアクセスメモリ(「DRAM」)、および同期型ダイナミックランダムアクセスメモリ(「SDRAM」)などの揮発性メモリも含み得る。他の種類のRAMも、システムメモリ2030を実装するために使用され得る。システムメモリ2030は、単一のメモリモジュールまたは複数のメモリモジュールを使用して実装され得る。システムメモリ2030は、コンピューティングマシン2000の一部であるものとして図示されているが、当業者であれば、システムメモリ2030は対象技術の範囲から逸脱することなくコンピューティングマシン2000から分離していてもよいことを理解するであろう。また、システムメモリ2030は、記憶媒体2040などの不揮発性記憶装置デバイスを含むか、またはそれと連携して動作し得る。
記憶媒体2040は、ハードディスク、フロッピィディスク、コンパクトディスクリードオンリーメモリ(「CD-ROM」)、デジタル多用途ディスク(「DVD」)、ブルーレイディスク、磁気テープ、フラッシュメモリ、他の不揮発性メモリデバイス、ソリッドステートドライブ(「SSD」)、任意の磁気記憶装置デバイス、任意の光記憶装置デバイス、任意の電気的記憶装置デバイス、任意の半導体記憶装置デバイス、任意の物理ベース記憶装置デバイス、任意の他のデータ記憶装置デバイス、またはこれらの任意の組合せもしくは複数を含み得る。記憶媒体2040は、1つまたは複数のオペレーティングシステム、アプリケーションプログラムおよびモジュール2050などのプログラムモジュール、データ、または他の任意の情報を記憶することができる。記憶媒体2040は、コンピューティングマシン2000の一部であるか、またはコンピューティングマシン2000に接続され得る。記憶媒体2040は、サーバ、データベースサーバ、クラウドストレージ、ネットワーク接続ストレージなどの、コンピューティングマシン2000と通信する1つまたは複数の他のコンピューティングマシンの一部であってもよい。
モジュール2050は、コンピューティングマシン2000が本明細書において提示されている様々な方法および処理機能を実行するのを円滑にするように構成された1つまたは複数のハードウェアもしくはソフトウェア要素を備え得る。モジュール2050は、システムメモリ2030、記憶媒体2040、またはその両方と関連してソフトウェアもしくはファームウェアとして記憶される命令の1つまたは複数のシーケンスを含み得る。記憶媒体2040は、したがって、プロセッサ2010による実行のために命令もしくはコードが記憶され得る機械またはコンピュータ可読媒体の例を表し得る。機械またはコンピュータ可読媒体は、命令をプロセッサ2010に供給するために使用される任意の1つまたは複数の媒体を一般的に指すものとしてよい。モジュール2050に関連付けられているそのような機械またはコンピュータ可読媒体は、コンピュータソフトウェア製品を含み得る。モジュール2050を備えるコンピュータソフトウェア製品も、ネットワーク2080、任意の信号搬送媒体、または任意の他の通信もしくは配信技術を介してモジュール2050をコンピューティングマシン2000に配信するために1つまたは複数のプロセスもしくは方法に関連付けられ得る。モジュール2050は、ハードウェア回路、またはFPGAもしくは他のPLDのためのマイクロコードもしくは構成情報などのハードウェア回路を構成するための情報も含み得る。
入出力(「I/O」)インターフェース2060は、1つまたは複数の外部デバイスに結合し、1つまたは複数の外部デバイスからデータを受信し、1つまたは複数の外部デバイスにデータを送信するように構成され得る。そのような外部デバイスは、様々な内蔵デバイスとともに、周辺デバイスとも称され得る。I/Oインターフェース2060は、様々な周辺デバイスをコンピューティングマシン2000またはプロセッサ2010に動作可能に結合するために電気的接続および物理的接続の両方を備え得る。I/Oインターフェース2060は、周辺デバイス、コンピューティングマシン2000、またはプロセッサ2010の間でデータ、アドレス、および制御信号を伝達するように構成され得る。I/Oインターフェース2060は、小型コンピュータ用周辺機器インターフェース(「SCSI」)、シリアル接続SCSI(「SAS」)、ファイバチャネル、ペリフェラルコンポーネントインターコネクト(「PCI」)、PCI Express(PCIe)、シリアルバス、パラレルバス、アドバンストテクノロジーアタッチメント(「ATA」)、シリアルATA(「SATA」)、ユニバーサルシリアルバス(「USB」)、Thunderbolt、FireWire、様々なビデオバス、および同様のものなどの任意の標準インターフェースを実装するように構成され得る。I/Oインターフェース2060は、ただ1つのインターフェースまたはバス技術を実装するように構成され得る。代替的に、I/Oインターフェース2060は、複数のインターフェースまたはバス技術を実装するように構成され得る。I/Oインターフェース2060は、システムバス2020の一部として、システムバス2020の全部として、またはシステムバス2020と連携して動作するように構成され得る。I/Oインターフェース2060は、1つまたは複数の外部デバイス、内蔵デバイス、コンピューティングマシン2000、またはプロセッサ2010の間で送信をバッファリングするための1つまたは複数のバッファを備え得る。
I/Oインターフェース2060は、コンピューティングマシン2000を、マウス、タッチスクリーン、スキャナ、電子デジタイザ、センサ、受信機、タッチパッド、トラックボール、カメラ、マイクロフォン、キーボード、任意の他のポインティングデバイス、またはこれらの任意の組合せを含む様々な入力デバイスに結合し得る。I/Oインターフェース2060は、コンピューティングマシン2000を、ビデオディスプレイ、スピーカ、プリンタ、プロジェクタ、触覚フィードバックデバイス、オートメーション制御、ロボット構成要素、アクチュエータ、モータ、ファン、ソレノイド、弁、ポンプ、送信機、信号放射体、ライトなどを含む様々な出力デバイスに結合し得る。
コンピューティングデバイス2000は、ネットワーク2080上で1つまたは複数の他のシステムまたはコンピューティングマシンのネットワークインターフェース2070を通じての論理接続を使用してネットワーク環境で動作し得る。ネットワーク2080は、ワイドエリアネットワーク(WAN)、ローカルエリアネットワーク(LAN)、イントラネット、インターネット、無線アクセスネットワーク、有線ネットワーク、携帯電話ネットワーク、電話網、光ネットワーク、またはこれらの組合せを含み得る。ネットワーク2080は、パケット交換、回線交換、任意のトポロジのものであってよく、任意の通信プロトコルを使用し得る。ネットワーク2080内の通信リンクは、光ファイバケーブル、自由空間光学系、導波路、導電体、ワイヤレスリンク、アンテナ、無線周波通信などの様々なデジタルもしくはアナログ通信媒体を伴い得る。
プロセッサ2010は、システムバス2020を通じてコンピューティングマシン2000の他の要素または本明細書で説明されている様々な周辺機器に接続され得る。システムバス2020が、プロセッサ2010内にあるか、プロセッサ2010の外部にあるか、またはその両方であってよいことは理解されるであろう。いくつかの実施形態によれば、プロセッサ2010、コンピューティングマシン2000の他の要素、または本明細書で説明されている様々な周辺機器は、システムオンチップ(「SOC」)、システムオンパッケージ(「SOP」)、またはASICデバイスなどの単一デバイスに一体化され得る。
本明細書で説明されているシステムがユーザに関する個人情報を収集するか、または個人情報を利用し得る状況において、ユーザは、プログラムまたは機能によりユーザ情報(たとえば、ユーザのソーシャルネットワークに関する情報、社会的行為もしくは活動、専門的職業、ユーザの選好、またはユーザの現在の位置)を収集するかどうかを制御する、またはユーザに対してより高い関連性を有する思われるコンテンツをコンテンツサーバから受信するかどうか、および/またはどのように受信するかを制御する機会もしくはオプションを与えられ得る。それに加えて、特定データが、それが記憶されるか、または使用される前に1つまたは複数の方法で処理されるものとしてよく、したがって個人的に識別可能な情報は取り除かれる。たとえば、ユーザの身元は、ユーザに対して個人的に識別可能な情報が決定され得ないように処理され得るか、またはロケーション情報(市名、郵便番号、国家レベルなど)が得られる場合にユーザの地理的ロケーションが一般化されるものとしよく、したがって、ユーザの特定のロケーションが決定され得ない。したがって、ユーザは、コンテンツサーバによってユーザに関して情報がどのように収集され、どのように使用されるかを制御し得る。
実施形態は、本明細書で説明され図示されている機能を具現化するコンピュータプログラムを含むものとしてよく、ここにおいて、コンピュータプログラムは、機械可読媒体に記憶される命令を備えるコンピュータシステムおよびそれらの命令を実行するプロセッサで実装され得る。しかしながら、コンピュータプログラミングで実施形態を実装する異なる多くの方法があり得ることは理解されるべきであり、また実施形態は、一組のコンピュータプログラム命令に限定されるものとして解釈されるべきでない。さらに、熟練プログラマであれば、付属の流れ図およびアプリケーションテキスト内の関連する説明に基づき開示されている実施形態のうちの一実施形態を実装するためにそのようなコンピュータプログラムを書くことができるであろう。したがって、特定の一組のプログラムコード命令の開示は、実施形態を形成し、使用する方法を十分に理解するために必要であるとみなされない。さらに、当業者は、本明細書で説明されている実施形態の1つまたは複数の態様が、1つまたは複数のコンピューティングシステムにおいて具現化され得るように、ハードウェア、ソフトウェア、またはこれらの組合せによって実行され得ることを理解するであろう。さらに、コンピュータによって実行される動作への参照は、複数のコンピュータがその動作を実行し得るように単一のコンピュータによって実行されるものとして考えられるべきでない。
本明細書で説明されている例は、本明細書で説明されている方法および処理機能を実行するコンピュータハードウェアおよびソフトウェアとともに使用され得る。本明細書で説明されているシステム、方法、および手順は、プログラム可能なコンピュータ、コンピュータ実行可能ソフトウェア、またはデジタル回路で具現化され得る。ソフトウェアは、コンピュータ可読媒体上に記憶され得る。たとえば、コンピュータ可読媒体は、フロッピィディスク、RAM、ROM、ハードディスク、取り外し可能媒体、フラッシュメモリ、メモリスティック、光媒体、光磁気媒体、CD-ROMなどを含むことができる。デジタル回路は、集積回路、ゲートアレイ、ビルディングブロックロジック、フィールドプログラマブルゲートアレイ(FPGA)などを含むことができる。
すでに提示されている実施形態において説明されている例示的なシステム、方法、および動作は、説明に役立てるものであり、代替的実施形態において、いくつかの動作は、異なる順序で実行される、互いに並列に実行される、全部省かれる、および/または異なる例の間で組み合わされることが可能であり、および/またはいくつかの追加の動作は、様々な実施形態の範囲および主旨から逸脱することなく、実行され得る。したがって、そのような代替的実施形態は、次に示す請求項の範囲に含まれ、そのような代替的実施形態を包含する最も広い解釈を受けるべきである。
特定な実施形態が、上で詳しく説明されているが、説明は単に例示することのみを目的としている。したがって、上で説明されている多くの態様は、別段に明記されていない限り必要または必須の要素として意図されていないことが理解されるべきである。上で説明されているものに加えて、例の開示されている態様の変更形態、および開示されている態様に対応する同等の構成要素または動作は、以下の請求項において定義されている実施形態の主旨および範囲から逸脱することなく、本開示を利用する当業者によって形成されるものとしてよく、実施形態の範囲はそのような変更形態および同等の構造を包含するように最も広い解釈を与えられるべきである。