種々の実施形態では、支払振替を処理するためのシステムおよび方法が、開示される。本システムは、第1のユーザ(例えば、送金側)が、金銭を第2のユーザ(例えば、受取側)に振り替えることを有効にする。例えば、例示的実践的用途では、送金側は、顧客から成ってもよく、受取側は、販売業者から成ってもよい。顧客は、販売業者への金銭振替(例えば、支払振替)を開始および完了し、販売業者との取引を完了してもよい(例えば、商品、サービス等を購入するために)。その点に関して、本システムは、送金側および/または受取側によって使用されるプラットフォーム、取引口座、ならびに/もしくは銀行にかかわらず、金銭の振替が完了されることを有効にすることによって、典型的金銭振替プラットフォームおよびプロセスに提示される技術的問題に対する技術的ソリューションを提供する。例えば、送金側および受取側はそれぞれ、異なるタイプの取引口座(例えば、当座、普通、掛売等)を使用して、異なる銀行および/または振出人を通してもよい。受取側は、デジタル形態(例えば、デジタルトークン、デジタルウォレット等)を使用して、または物理的取引手段を介して、支払振替を受け取ってもよい。
本システムは、支払振替の詐欺および/または振込リスク査定を提供する、別の実践的用途を含んでもよい。査定は、送金側および/または受取側が、本システムを不正に使用しないことを確実にし得る。査定は、送金側が、受取側との支払振替を完了するために必要な資金を有することを確実にし得る。査定はまた、送金側が、資金を正しい受取側に振り替えることを確実にし得る。種々の実施形態では、支払振替を完了する前に、詐欺リスクおよび/または振込リスクを査定することによって、本システムはまた、本システムが支払振替を完了することに応答して、資金が受取側に利用可能になるように、支払振替が、リアルタイムまたはほぼリアルタイムで完了されることを確実にし得る。
種々の実施形態では、本システムはさらに、コンピュータおよび支払ネットワークの機能を改良する。例えば、本明細書に説明されるプロセスを使用して、データを伝送し、記憶し、それにアクセスすることによって、データのセキュリティは、改良され、これは、コンピュータまたはネットワークが危殆化されるリスクを減少させる。実施例として、支払を伝送する前に、送金側を認証する付加的ステップを提供することによって、支払振替のセキュリティが、改良され、金銭が正しくない当事者に振り替えられる、または第三者が金銭振替を不正に開始もしくは傍受するリスクを減少させる。
種々の実施形態では、本明細書に説明されるプロセスを使用して、支払振替を処理することによって、本システムは、取引における当事者間でより少ない取扱に注意を要する情報を伝送し得る。例えば、ユーザが、当座預金口座番号および銀行コードを販売業者に提供する、典型的ACHプロセスの代わりに、販売業者は、取引識別子および取引と関連付けられるメタデータのみを受信してもよい。したがって、取扱に注意を要する情報のセキュリティは、典型的金銭振替システムと比較して増加される。さらに、システム内で必要とされる支払情報は、支払システムのみによって処理および記憶されてもよい。その点に関して、記憶の必要性は、販売業者システムにとって低減され、販売業者システムは、より少ないデータを処理する結果として、コンピューティング効率(例えば、CPU、メモリ等)を増加させ得る。
種々の実施形態では、販売業者は、システムに登録し、支払振替を顧客が取引を完了するために選択するためのオプションとして有効にしてもよい。種々の実施形態では、登録プロセスは、販売業者システムにとって非侵害的であって、したがって、販売業者が本明細書に説明されるプロセスを使用して支払振替を有効にするための処理の必要性および必要とされる持続時間を低減させ得る。例えば、販売業者システムは、単に、ボタン、画像、リンク、または同等物を販売業者のウェブサイトに追加してもよく、好適なプログラミング言語と互換性があり得る。顧客が、精算プロセスの間、ボタン、画像、リンク、または同等物を選択(例えば、クリック)することに応答して、本システムは、本明細書に説明されるプロセスを使用して、支払振替を開始してもよい。
さらに、種々の実施形態によると、本明細書に説明されるプロセスを使用して、支払振替を処理することによって、ユーザは、より少ないコンピュータ機能を実施し、より少ない手動入力を提供し得る。その点に関して、ユーザによってアクセスされるユーザデバイスは、データ記憶およびメモリを節約し得、これは、典型的金銭振替システムと比較して、処理を加速させる。より少ない手動入力を提供することによって、ユーザはまた、バッテリソースによって動作されるユーザデバイス内のバッテリ使用量を節約し得る。
種々の実施形態では、既存の支払ネットワークへの直接統合を提供することによって、本システムは、付加的インフラストラクチャ(例えば、コンピューティングリソース(CPU/メモリ)、記憶装置、インターフェース等)を支払プラットフォーム上に追加する必要性を排除する。
種々の実施形態では、図1を参照すると、支払振替を処理するためのシステム100が、開示される。システム100は、ユーザデバイス110、販売業者システム120、決定プロセッサ130、リスクおよび詐欺査定プラットフォーム140、トークン化システム150、支払プロセッサ160、送金側銀行193、および/または受取側銀行195のうちの1つまたはそれを上回るものを備えてもよい。システム100はまた、ウェブサービス、ユーティリティコンピューティング、パーベイシブおよび個別化されたコンピューティング、セキュリティおよび識別ソリューション、自動コンピューティング、クラウドコンピューティング、コモディティコンピューティング、モビリティおよび無線ソリューション、オープンソース、バイオメトリック、グリッドコンピューティング、および/またはメッシュコンピューティングと関連付けられた使用を検討してもよい。
種々の実施形態では、ユーザ(例えば、送金側)は、ユーザデバイス110にアクセスし、それと相互作用し、取引を開始し、支払振替を開始および完了し、取引を完了してもよい。ユーザデバイス110は、ユーザインターフェース(UI)125および/または決定プロセッサ130を介して、販売業者システム120と電子通信してもよい。ユーザデバイス110は、データを送信、受信、および記憶することが可能な任意の好適なハードウェア、ソフトウェア、および/またはデータベースコンポーネントを備えてもよい。例えば、ユーザデバイス110は、パーソナルコンピュータ、携帯情報端末、セルラー電話、スマートフォン(例えば、IPHONE(登録商標)、BLACKBERRY(登録商標)、および/または同等物)、IoTデバイス、および/または同等物を備えてもよい。ユーザデバイス110は、例えば、WINDOWS(登録商標)モバイルオペレーティングシステム、ANDROID(登録商標)オペレーティングシステム、APPLE(登録商標) IOS(登録商標)、BLACKBERRY(登録商標)オペレーティングシステム、LINUX(登録商標)オペレーティングシステム、および同等物等のオペレーティングシステムを備えてもよい。ユーザデバイス110はまた、ユーザデバイス110上にインストールされ、ユーザデバイス110を介して、システム100内の種々のシステム、サービス、およびコンポーネントにアクセスすることを可能にするように構成される、ソフトウェアコンポーネントを備えてもよい。例えば、ユーザデバイス110は、ユーザデバイス110がUI125にアクセスすることを可能にするように構成される、ウェブブラウザ(例えば、MICROSOFT INTERNET EXPLORER(登録商標)、GOOGLE CHROME(登録商標)等)、アプリケーション、マイクロアプリまたはモバイルアプリケーション、または同等物を備えてもよい。
種々の実施形態では、ユーザデバイス110は、種々のユーザデバイス特性(例えば、ユーザデバイスデータ)を備えてもよい。ユーザデバイス特性は、ユーザデバイス110のソフトウェア、ハードウェア、および/または物理的パラメータならびに設定に対応し得る。例えば、ユーザデバイス110は、一意のデバイスID、IPアドレス、オペレーティングシステムタイプ(例えば、WINDOWS(登録商標)、ANDROID(登録商標)、APPLE(登録商標) IOS(登録商標)、LINUX(登録商標)等)、ウェブブラウザタイプ(例えば、MICROSOFT INTERNET EXPLORER(登録商標)、GOOGLE CHROME(登録商標)等)、有効にされる言語(例えば、英語、スペイン語、イタリア語等)、画面の解像度設定、スクリプト設定(例えば、JAVACRIPT(登録商標)対応ウェブブラウザ)、匿名のIPインジケータ、および/または同等物を備えてもよい。種々の実施形態では、1つまたはそれを上回るユーザデバイス特性は、本明細書でさらに議論されるように、取引および/または支払振替の開始に応答して、リスクおよび詐欺査定プラットフォーム140によって捕捉されてもよい。
種々の実施形態では、販売業者システム120は、販売業者(例えば、受取側)が、取引要求をユーザから受信し、取引認可要求を支払ネットワークおよび/または振出人システムに提出し、取引に認可し、ならびに/もしくはユーザと相互作用し、商品および/またはサービスを販売もしくは供与することを有効にするように構成されてもよい。販売業者システム120は、1つまたはそれを上回るハードウェア、ソフトウェア、および/またはデータベースコンポーネントを組み込んでもよい。例えば、販売業者システム120は、1つまたはそれを上回るネットワーク環境、サーバ、コンピュータベースのシステム、プロセッサ、データベース、データセンタ、および/または同等物を備えてもよい。種々の実施形態では、販売業者システム120は、コンピュータベースであってもよく、プロセッサ、有形非一過性コンピュータ可読メモリ、および/またはネットワークインターフェースを、他の好適なシステムソフトウェアおよびハードウェアコンポーネントとともに、備えてもよい。有形非一過性メモリ上に記憶される命令は、販売業者システム120が、本明細書に説明されるように、種々の動作を実施することを可能にし得る。
販売業者システム120は、ユーザが、販売業者システム120にアクセスすることを有効にするように構成される、グラフィカルユーザインターフェース(「GUI」)、ソフトウェアモジュール、論理エンジン、種々のデータベース、および/または同等物を含んでもよい。例えば、販売業者システム120は、UI125を備え、および/またはそれと電子通信してもよい。UI125は、ユーザが、アクセスし、販売業者によって利用可能な商品および/またはサービスを閲覧し、販売業者と取引を開始および完了し、ならびに/もしくは支払振替を使用して、取引のために支払うことを選択するための、ウェブベースのインターフェースを提供するように構成されてもよい。UI125はまた、本明細書でさらに議論されるように、支払振替を完了するために、1つまたはそれを上回るプロンプトをユーザに表示するように構成されてもよい。
種々の実施形態では、決定プロセッサ130は、本明細書でさらに議論されるように、リスクおよび詐欺査定データをリスクおよび詐欺査定プラットフォーム140から受信し、査定に基づいて、支払振替の処理をトリガするように構成されてもよい。決定プロセッサ130は、ユーザデバイス110、UI125、トークン化システム150、リスクおよび詐欺査定プラットフォーム140、および/または支払プロセッサ160と電子通信してもよい。決定プロセッサ130は、1つまたはそれを上回るハードウェア、ソフトウェア、および/またはデータベースコンポーネントを備えてもよい。例えば、決定プロセッサ130は、1つまたはそれを上回るネットワーク環境、サーバ、コンピュータベースのシステム、プロセッサ、データベース、および/または同等物を備えてもよい。決定プロセッサ130は、コンピュータまたはプロセッサもしくはコンピュータ/プロセッサのセットの形態における、少なくとも1つのコンピューティングデバイスを備えてもよいが、例えば、サーバ、ウェブサーバ、プールされたサーバ、または同等物等の他のタイプのコンピューティングユニットもしくはシステムが、使用されてもよい。決定プロセッサ130はまた、本明細書で議論される種々の動作を実施するように構成される、サービス、API、SDK、および同等物等のソフトウェアを含んでもよい。種々の実施形態では、決定プロセッサ130は、1つまたはそれを上回るプロセッサおよび/または1つまたはそれを上回る有形非一過性メモリを含み、論理を実装することが可能であってもよい。プロセッサは、本明細書でさらに議論されるように、命令、例えば、非一過性有形コンピュータ可読媒体上に記憶される命令の実行に応答して、種々の論理動作を実装するように構成されてもよい。
種々の実施形態では、決定プロセッサ130はまた、本明細書でさらに議論されるように、リスクおよび詐欺査定プラットフォーム140によって完了されたリスクおよび詐欺査定に基づいて、認証チャレンジをユーザデバイス110に伝送するように構成されてもよい。認証チャレンジは、任意の好適な伝送チャネル(例えば、SMS、MMS、電子メール、プッシュ通知、電話呼等)を介して、ユーザデバイス110に伝送されてもよい。伝送チャネルは、ユーザによって選択されてもよい、またはユーザと関連付けられる履歴口座または支払情報に基づいてもよい。認証チャレンジは、多要素認証チャレンジを備えてもよい。例えば、ユーザが、バイオメトリック入力、ユーザ名およびパスワード、または同等物を使用して、システム100に以前に登録されている場合、認証チャレンジは、ユーザデバイス110を介して、ユーザのパスワードとともに、バイオメトリック入力を入力する(例えば、2要素認証)ように、ユーザにプロンプトするデータを備えてもよい。決定プロセッサ130は、受信された入力と記憶されるバイオメトリックデータ、ユーザ名およびパスワードデータ、または同等物を比較し、ユーザの応答を検証し、ユーザを認証する。さらなる実施例として、2要素認証は、伝送チャネルを介して、認証番号(例えば、PIN、コード、6桁の数字、ワンタイムパスワード等)を送信し、認証番号をユーザデバイス110の中に入力するように、ユーザにプロンプトするステップを含んでもよい。決定プロセッサ130は、入力認証番号と伝送チャネルを介してユーザに伝送される認証番号を比較し、ユーザの応答を検証し、ユーザを認証してもよい。
種々の実施形態では、トークン化システム150は、支払振替と併用するための一意の識別子を生成および/または提供するように構成されてもよい。例えば、トークン化システム150は、ユーザがUI125を介して支払振替を開始することに応答して、一意の識別子を生成してもよい。トークン化システム150は、任意の好適なまたは所望の技法もしくはプロセスを使用して、一意の識別子を生成してもよい。トークン化システム150は、一意の識別子を決定プロセッサ130に伝送してもよい。一意の識別子は、支払の処理全体を通して、支払振替を識別および/または追跡するために使用されてもよい。一意の識別子は、支払振替に一意の任意の好適なID、番号、デジタルトークン、および/または同等物を備えてもよい。種々の実施形態では、トークン化システム150は、金融機関、振出人システム、銀行、および/または同等物によって使用される旧来のシステムならびに環境と互換性があるように、一意の識別子を生成してもよい。その点に関して、システム100は、新しい識別システムを導入する必要なく、既存のシステムおよびコンピューティング環境と互換性があり得る。例えば、一意の識別子は、当座預金口座番号、普通預金口座番号、クレジットカード番号、商業用口座番号、商業用チャージ式カード番号、直接預金口座番号、および/または旧来のシステムにおいて以前から存在する任意の他の番号もしくは識別子(例えば、旧来の識別子)を備えてもよい。
トークン化システム150は、決定プロセッサ130と電子通信してもよい。トークン化システム150は、1つまたはそれを上回るハードウェア、ソフトウェア、および/またはデータベースコンポーネントを備えてもよい。例えば、トークン化システム150は、1つまたはそれを上回るネットワーク環境、サーバ、コンピュータベースのシステム、プロセッサ、データベース、および/または同等物を備えてもよい。トークン化システム150は、コンピュータまたはプロセッサもしくはコンピュータ/プロセッサのセットの形態における、少なくとも1つのコンピューティングデバイスを備えてもよいが、例えば、サーバ、ウェブサーバ、プールされたサーバ、または同等物等の他のタイプのコンピューティングユニットもしくはシステムが、使用されてもよい。トークン化システム150はまた、本明細書で議論される種々のトークン化動作を実施するように構成される、サービス、API、SDK、および同等物等のソフトウェアを含んでもよい。種々の実施形態では、トークン化システム150は、1つまたはそれを上回るプロセッサおよび/または1つまたはそれを上回る有形非一過性メモリを含み、論理を実装することが可能であってもよい。プロセッサは、本明細書でさらに議論されるように、命令、例えば、非一過性有形コンピュータ可読媒体上に記憶される命令の実行に応答して、種々の論理動作を実装するように構成されてもよい。
種々の実施形態では、リスクおよび詐欺査定プラットフォーム140は、1つまたはそれを上回るリスクおよび/または詐欺査定を支払要求上で実施するように構成されてもよい。リスクおよび詐欺査定プラットフォーム140は、UI125および/または決定プロセッサ130と電子通信してもよい。リスクおよび詐欺査定プラットフォーム140は、1つまたはそれを上回るハードウェア、ソフトウェア、および/またはデータベースコンポーネントを備えてもよい。例えば、リスクおよび詐欺査定プラットフォーム140は、1つまたはそれを上回るネットワーク環境、サーバ、コンピュータベースのシステム、プロセッサ、データベース、および/または同等物を備えてもよい。リスクおよび詐欺査定プラットフォーム140は、コンピュータまたはプロセッサもしくはコンピュータ/プロセッサのセットの形態における、少なくとも1つのコンピューティングデバイスを備えてもよいが、例えば、サーバ、ウェブサーバ、プールされたサーバ、または同等物等の他のタイプのコンピューティングユニットもしくはシステムが、使用されてもよい。リスクおよび詐欺査定プラットフォーム140はまた、本明細書で議論される種々のトークン化動作を実施するように構成される、サービス、API、SDK、および同等物等のソフトウェアを含んでもよい。種々の実施形態では、リスクおよび詐欺査定プラットフォーム140は、1つまたはそれを上回るプロセッサおよび/または1つまたはそれを上回る有形非一過性メモリを含み、論理を実装することが可能であってもよい。プロセッサは、本明細書でさらに議論されるように、命令、例えば、非一過性有形コンピュータ可読媒体上に記憶される命令の実行に応答して、種々の論理動作を実装するように構成されてもよい。
種々の実施形態では、リスクおよび詐欺査定プラットフォーム140は、本明細書でさらに議論されるように、リスクおよび詐欺査定能力を提供するように構成される、種々のシステム、エンジン、インターフェース、および同等物を備えてもよい。例えば、図2を参照すると、リスクおよび詐欺査定プラットフォーム140は、銀行検証エンジン253、照合サービス255、および/またはリスク決定エンジン257を備えてもよい。各サービス、エンジン、または同等物は、特定の実施例に従った用途に応じて、種々の手段によって実装されてもよい。例えば、そのような方法論は、ハードウェア、ファームウェア、ソフトウェア、またはそれらの組み合わせ内に実装されてもよい。ハードウェア実装では、例えば、コントローラまたは処理ユニットは、1つまたはそれを上回る特定用途向け集積回路(ASIC)、デジタル信号プロセッサ(DSP)、デジタル信号処理デバイス(DSPD)、プログラマブル論理デバイス(PLD)、フィールドプログラマブルゲートアレイ(FPGA)、プロセッサ、コントローラ、マイクロコントローラ、マイクロプロセッサ、電子デバイス、本明細書に説明される機能を実施するように設計される他のデバイスユニット、またはそれらの組み合わせ内に実装されてもよい。ソフトウェア実装では、例えば、種々のウェブサービス、API、SDK、または同等物が、本明細書に説明される種々の動作を実施するように構成されてもよい。
種々の実施形態では、銀行検証エンジン253は、詐欺およびリスク査定のために、ユーザの入力銀行情報を検証、照合、ならびに認証し、送金側銀行データ(例えば、捕捉された送金側銀行データ)を提供するように構成されてもよい。銀行検証エンジン253は、ユーザ銀行データを検証するように構成されてもよい。銀行検証エンジン253は、任意の好適なプロセスまたは技法を使用して、ユーザ銀行データを検証してもよい。例えば、銀行検証エンジン253は、1つまたはそれを上回る送金側銀行193と電子通信してもよく、各送金側銀行193と通信し、支払振替データからのユーザ銀行データを検証、照合、および認証するように構成されてもよい。種々の実施形態では、ユーザ銀行データ検証は、ユーザによって入力された送金側銀行ログイン情報を照合および検証し、ユーザを認証し、ユーザが金銭形態を引き出すことを所望する口座を決定し、口座が取引を完了するための十分な資金を有することを検証し、および/または同等物を行うステップを含んでもよい。銀行検証エンジン253は、リスク決定エンジン257に、送金側銀行データが検証されるかどうかと、口座は金銭を受取側に振り替えることが可能であるかどうかとを示す、データ(例えば、「合格」、「不合格」、「不十分な資金」等)を返してもよい。ユーザ銀行データ検証はまた、氏名、住所、電話番号、電子メールアドレス、アドレスデータ、または同等物等のユーザと関連付けられるデータを返してもよい。ユーザ銀行データ検証はまた、銀行名、口座名、口座タイプ、口座番号、銀行コード、および/または同等物等の引き出しのために使用される銀行と関連付けられるデータを返してもよい。種々の実施形態では、銀行検証エンジン253は、Plaid, Inc.によって提供されるPLAID(登録商標)ソフトウェア等の金融サービス統合サービスを備えてもよい。
種々の実施形態では、照合サービス255は、1つまたはそれを上回る詐欺検出動作を実施するように構成されてもよい。例えば、照合サービス255は、リスク査定をユーザデバイス110上で実施し、ユーザデバイス110、ユーザが支払要求を提出するための電子メールアカウント、または同等物が、第三者によって危殆化されている尤度を決定するように構成されてもよい。本明細書にさらに議論されるように、照合サービス255は、ユーザが支払振替を開始することに応答して、ユーザデバイス特性(例えば、捕捉されたユーザデバイスデータ)をユーザデバイス110から捕捉するように構成されてもよい。照合サービス255は、ユーザデバイス特性をユーザデバイス110から読み出し、捕捉するように構成される、XMLスクリプトを実行することによって、ユーザデバイス特性を捕捉するように構成されてもよい。本明細書にさらに議論されるように、照合サービス255は、捕捉されたユーザデバイス特性をリスク決定エンジン257に伝送してもよい。
種々の実施形態では、照合サービス255は、Auth, Inc.によって提供されるINAUTH SECURITY PLATFORMTM等のモバイルデバイス認証および詐欺防止ソフトウェアソリューションを備えてもよい。モバイルデバイス認証および詐欺防止ソフトウェアソリューションは、例えば、捕捉されたユーザデバイスデータに基づく詐欺スコアの生成等、付加的詐欺検出サービスを提供してもよい。
種々の実施形態では、リスク決定エンジン257は、リスクおよび詐欺決定プロセスを実行し、ユーザからの支払要求を含む通信(ユーザデバイス110を介して)が、詐欺行為であって、および/またはユーザが取引を完了するために不十分な資金を有するリスクを負うかどうかを決定するように構成されてもよい。リスク決定エンジン257は、取引データ、捕捉された送金側銀行データ、捕捉されたユーザデバイスデータ、および/または任意の他の好適なもしくは所望のデータに基づいて、リスクおよび詐欺決定プロセスを実施してもよい。
例えば、照合サービス255から捕捉されたユーザデバイスデータの受信に応答して、リスク決定エンジン257は、種々の動作を捕捉されたユーザデバイスデータ上で実施し、捕捉されたユーザデバイスデータが、可能性として考えられる詐欺を示すかどうかを決定するように構成されてもよい。例えば、リスク決定エンジン257は、履歴取引詐欺データを読み出す、またはクエリしてもよい。履歴取引詐欺データは、詐欺行為源から生じることが既知の種々のデバイスデータ特性、デバイスデータと関連付けられる詐欺率、および/または同等物を備えてもよい。その点に関して、リスク決定エンジン257は、捕捉されたユーザデバイスデータと履歴取引詐欺データを比較し、捕捉されたユーザデバイスデータが、詐欺行為源から生じることが既知のデータを備えるかどうかを決定してもよい。例えば、履歴取引詐欺データが低詐欺率を備える(または既存のものではない)ことに応答して、リスク決定エンジン257は、捕捉されたユーザデバイスデータが詐欺行為源から生じるものではないことを決定してもよい。履歴取引詐欺データが捕捉されたユーザデバイスデータに合致し、高詐欺率を有することに応答して、リスク決定エンジン257は、捕捉されたユーザデバイスデータが詐欺行為源からのものであることを決定してもよい。
さらなる実施例として、種々の実施形態によると、リスク決定エンジン257は、捕捉されたユーザデバイスデータが可能性として考えられる詐欺を示すかどうかを決定するように構成される、if-then論理を備えてもよい。if-then論理は、捕捉されたユーザデバイスデータのうちの1つまたはそれを上回るものに対応する、種々の詐欺閾値を備えてもよい。例えば、例示的if-then論理は、「捕捉されたIPアドレスが、1日に5回以上捕捉されている場合、その取引は、詐欺行為である」、「画面の解像度設定が、低く、有効にされる言語が、フランス語である場合、その取引は、詐欺行為である」、および/または任意の他の好適なif-then論理を備えてもよい。
さらなる実施例として、種々の実施形態によると、リスク決定エンジン257は、統計的モデル、機械学習、人工知能、および同等物を実装し、可能性として考えられる詐欺を識別することを補助してもよい。その点に関して、捕捉されたユーザデバイスデータは、統計的モデル、機械学習モデル、または人工知能モデルの中に入力され、詐欺のリスクを決定してもよい。例えば、種々の実施形態によると、モデルは、捕捉されたユーザデバイスデータ、履歴取引詐欺データ、および/または非デバイス関連属性(例えば、取引のリスクレベル、時刻、取引口座上での保守アクティビティ等)を消費してもよい。データ消費に基づいて、モデルは、支払要求が詐欺行為デバイスから生じるかどうかを予測するために活用されてもよい。
リスク決定エンジン257は、リスク査定を生成することによって、詐欺の決定を分類するように構成されてもよい。リスク査定は、例えば、「低リスク」、「中リスク」、または「高リスク」、数値、もしくは同等物等、任意の好適なスケールを備えてもよい。例えば、「高リスク」リスク査定は、銀行検証エンジン253が、ユーザ口座が十分な資金を有していないことを決定し、照合サービス255が、不正に取得されたユーザデバイスが支払振替を開始するために使用されたことを示すユーザデバイス特性を捕捉することに応答して、決定されてもよい。さらなる実施例として、「中リスク」は、銀行検証エンジン253が、ユーザ口座を照合し、ユーザ口座が支払振替を完了するための十分な資金を備えることを検証し、照合サービス255が、支払振替が不正に開始されている可能性があることを示すユーザデバイス特性を捕捉することに応答して、決定されてもよい。さらなる実施例として、「低リスク」は、銀行検証エンジン253が、ユーザ口座を照合し、ユーザ口座が支払振替を完了するための十分な資金を備えることを検証し、照合サービス255が、支払振替が不正に開始されていないことを示すユーザデバイス特性を捕捉することに応答して、決定されてもよい。
リスク決定エンジン257は、リスク査定を決定プロセッサ130に伝送してもよい。決定プロセッサ130は、本明細書でさらに議論されるように、リスク査定の受信に応答して、支払振替を拒否または認可し、および/または付加的認証を要求するように構成されてもよい。
種々の実施形態では、再び、図1を参照すると、支払プロセッサ160は、支払振替を処理するように構成されてもよい。例えば、決定プロセッサ130が、支払振替を認可することに応答して、決定プロセッサ130は、支払処理要求を支払プロセッサ160に伝送してもよい。本明細書にさらに議論されるように、支払プロセッサ160は、資金を送金側銀行193から引き落とし、資金を受取側銀行195に振り込むことによって、支払処理要求を完了してもよい。支払プロセッサ160は、決定プロセッサ130、送金側銀行193、および/または受取側銀行195と電子通信してもよい。
支払プロセッサ160は、1つまたはそれを上回るハードウェア、ソフトウェア、および/またはデータベースコンポーネントを備えてもよい。例えば、支払プロセッサ160は、1つまたはそれを上回るネットワーク環境、サーバ、コンピュータベースのシステム、プロセッサ、データベース、および/または同等物を備えてもよい。支払プロセッサ160は、コンピュータまたはプロセッサまたはコンピュータ/プロセッサのセットの形態における、少なくとも1つのコンピューティングデバイスを備えてもよいが、例えば、サーバ、ウェブサーバ、プールされたサーバ、または同等物等の他のタイプのコンピューティングユニットもしくはシステムが、使用されてもよい。支払プロセッサ160はまた、本明細書で議論される種々のトークン化動作を実施するように構成される、サービス、API、SDK、および同等物等のソフトウェアを含んでもよい。種々の実施形態では、支払プロセッサ160は、1つまたはそれを上回るプロセッサおよび/または1つまたはそれを上回る有形非一過性メモリを含み、論理を実装することが可能であってもよい。プロセッサは、本明細書でさらに議論されるように、命令、例えば、非一過性有形コンピュータ可読媒体上に記憶される命令の実行に応答して、種々の論理動作を実装するように構成されてもよい。
送金側銀行193は、ユーザ(例えば、送金側)が取引口座を有する、金融機関、銀行、または同等物から成ってもよい。例えば、送金側銀行193は、ユーザが資金をそこから伝送するために使用することを所望する、当座預金口座、普通預金口座、または同等物等の取引口座を備え、維持し得る。本明細書にさらに議論されるように、送金側銀行193は、支払プロセッサ160からの命令の受信に応答して、ユーザと関連付けられる取引口座から引き落とすように構成されてもよい。受取側銀行195は、販売業者(例えば、受取側)が、取引口座、販売業者口座、または同等物を有する、金融機関、銀行、もしくは同等物から成ってもよい。例えば、受取側銀行195は、販売業者が支払振替の一部として資金を受け取るために使用することを所望する、取引口座、販売業者買掛口座、または同等物を備え、維持し得る。本明細書にさらに議論されるように、受取側銀行195は、支払プロセッサ160からの命令の受信に応答して、販売業者と関連付けられる口座に振り込むように構成されてもよい。
種々の実施形態では、送金側銀行193および受取側銀行195は、異なる銀行または金融機関から成ってもよい。種々の実施形態では、送金側銀行193および受取側銀行195は、同一銀行または金融機関、もしくは相互にパートナーシップ関係にある、別個の銀行または金融機関から成ってもよい。
種々の実施形態では、支払プロセッサ160は、本明細書でさらに議論されるように、リスク査定および/または詐欺査定能力を提供するように構成される、種々のシステム、エンジン、インターフェース、および同等物を備えてもよい。例えば、図3を参照すると、支払プロセッサ160は、送金側支払プロセッサ363および/または受取側支払プロセッサ365を備えてもよい。各プロセッサは、特定の実施例に従った用途に応じて、種々の手段によって実装されてもよい。例えば、そのような方法論は、ハードウェア、ファームウェア、ソフトウェア、またはそれらの組み合わせ内に実装されてもよい。ハードウェア実装では、例えば、コントローラまたは処理ユニットは、1つまたはそれを上回る特定用途向け集積回路(ASIC)、デジタル信号プロセッサ(DSP)、デジタル信号処理デバイス(DSPD)、プログラマブル論理デバイス(PLD)、フィールドプログラマブルゲートアレイ(FPGA)、プロセッサ、コントローラ、マイクロコントローラ、マイクロプロセッサ、電子デバイス、本明細書に説明される機能を実施するように設計される他のデバイスユニット、またはそれらの組み合わせ内に実装されてもよい。ソフトウェア実装では、例えば、種々のウェブサービス、API、SDK、または同等物が、本明細書に説明される種々の動作を実施するように構成されてもよい。
種々の実施形態では、支払プロセッサ160が支払処理要求371を受信する(例えば、決定プロセッサ130から)ことに応答して、支払プロセッサ160は、支払振替を完了するために、送金側支払プロセッサ363および受取側支払プロセッサ365を呼び出してもよい。支払処理要求371は、例えば、送金側データ、受取側データ、および/または取引データ等の支払振替に関するデータを備えてもよい。送金側データは、送金側銀行(例えば、口座番号、銀行コード、ACH銀行コード、口座上の名義等)に関するデータ、送金側(例えば、氏名、住所、電話番号等)に関するデータ、および/または送金側に対応する任意の他のデータを備えてもよい。受取側データは、受取側銀行(例えば、口座番号、銀行コード、ACH銀行コード、口座上の名義または事業者名等)、受取側に関するデータ(例えば、販売業者名またはID、住所、電話番号等)、および/または受取側に対応する任意の他のデータに関するデータを備えてもよい。取引データは、一意の識別子(例えば、トークン化システム150によって割り当てられるように)、取引額、および/または任意の他の取引データを備えてもよい。
支払プロセッサ160は、取引額を送金側銀行193における送金側の取引口座から引き落とすために、送金側支払プロセッサ363を呼び出してもよく、取引額を受取側銀行195における受取側の取引口座に振り込むために、受取側支払プロセッサ365を呼び出してもよい。種々の実施形態では、支払プロセッサ160は、同時またはほぼ同時に、かつ支払振替の同日に、資金が、送金側の口座から引き出され、受取側の口座に振り込まれ得るように、同時またはほぼ同時に(例えば、近接近した時間周期内に)、各プロセッサを呼び出してもよい(例えば、資金が送金側の口座から適切に引き出されることを確実にするために遅延を要求する、典型的支払プラットフォームと対照的に)。例えば、引落プルが、第1の時間に伝送されてもよく、振込プッシュが、第2の時間に伝送されてもよい。第1の時間は、第2の時間と同一または近接し得る。
送金側支払プロセッサ363は、支払プロセッサ160が資金を送金側銀行193における送金側の口座から引き落とすことを有効にするように構成される、種々のコンポーネント、システム、エンジン、または同等物を備えてもよい。例えば、送金側支払プロセッサ363は、送金システム、売掛金システム、または同等物を備えてもよい。種々の実施形態では、送金側支払プロセッサ363のサブシステムコンポーネントは、金融機関、振出人システム、または支払プロセッサ160を動作させる同等物に依存し得る。
呼び出されることに応答して、送金側支払プロセッサ363は、引落プル373を生成し、送金側銀行193に伝送するように構成されてもよい。引落プル373は、資金の引出を送金側銀行193から開始してもよい。例えば、引落プル373は、取引額を送金側銀行193における送金側口座から引き出すためのACHプルから成ってもよい。引落プル373は、送金側(例えば、送金側銀行データ、送金側氏名、送金側住所等)および引落額(例えば、取引額に基づいて)に関するデータを備えてもよい。
引落プル373の受信に応答して、送金側銀行193は、送金側の口座からの引落額の引出を開始してもよい。引落を開始することに応答して、送金側銀行193は、引落通知374を送金側支払プロセッサ363に返信してもよい。引落通知374は、引落が正常に開始および/または完了されたことを示す、データを備えてもよい。
受取側支払プロセッサ365は、支払プロセッサ160が資金を受取側銀行195における受取側の口座に振り込むことを有効にするように構成される、種々のコンポーネント、システム、エンジン、または同等物を備えてもよい。例えば、送金側支払プロセッサ363は、提出システム、支払サービスシステム、メッセージングリアルタイム捕捉システム、販売業者システム、および/または同等物を備えてもよい。種々の実施形態では、受取側支払プロセッサ365のサブシステムコンポーネントは、金融機関、振出人システム、または支払プロセッサ160を動作させる同等物に依存し得る。
呼び出されることに応答して、受取側支払プロセッサ365は、振込プッシュ376を生成し、受取側銀行195に伝送するように構成されてもよい。振込プッシュ376は、受取側銀行195への資金の伝送を開始するように構成されてもよい。例えば、振込プッシュ376は、取引額を受取側銀行195における受取側口座に伝送するためのACHプッシュから成ってもよい。振込プッシュ376は、受取側(例えば、受取側銀行データ、受取側事業者データ等)および振込額(例えば、取引額に基づいて)に関するデータを備えてもよい。
振込プッシュ376の受信に応答して、受取側銀行195は、受取側の口座への振込額の伝送を開始してもよい。振込を開始することに応答して、受取側銀行195は、振込通知377を受取側支払プロセッサ365に返信してもよい。振込通知377は、振込が正常に開始および/または完了されたことのデータを備えてもよい。
種々の実施形態では、受取側支払プロセッサ365は、振込額をシステムリポジトリから引き出してもよい。例えば、支払プロセッサ160が、支払ネットワーク、振出人システム、金融機関、または同等物の一部であることに応答して、支払プロセッサ160は、振込額を、支払ネットワーク、振出人システム、金融機関、もしくは同等物によって所有または運営される、銀行、システムリポジトリ、もしくは同等物から引き出してもよい。引落資金を送金側銀行193から受け取ることに応答して、本システムは、振込プッシュ376に関して引き出された資金を調整および補填してもよい。
種々の実施形態では、送金側支払プロセッサ363および受取側支払プロセッサ365を呼び出し、引落プル373および振込プッシュ376を開始することに応答して、支払プロセッサ160は、支払通知を販売業者システム120に伝送してもよい。支払通知は、一意の識別子と、支払振替が正常に完了されたことを示す、データ、メタデータ、または同等物を備えてもよい。種々の実施形態では、引落プル373、振込プッシュ376、および支払通知は、同時またはほぼ同時に(例えば、相互に時間的に近接する)、伝送されてもよい。
種々の実施形態では、支払プロセッサ160はまた、性能試験プラットフォーム382および/または会計プラットフォーム384と電子通信してもよい。支払プロセッサ160は、支払プロセスの間、データを各プラットフォームに伝送するように構成されてもよい。
性能試験プラットフォーム382は、支払振替プロセスに基づいて、1つまたはそれを上回る性能試験および/または分析動作を実施するように構成されてもよい。例えば、性能試験プラットフォーム382は、支払振替を追跡し、正常に完了または破棄された支払の数を決定してもよい。例えば、完了された支払は、支払が正常に引き落とされ、振り込まれたことを示す、引落通知および振込通知からのデータを備えてもよい。破棄された支払は、引落通知または振込通知のうちの少なくとも1つを備えていない場合がある。支払振替が破棄されたことの決定に応答して、性能試験プラットフォーム382は、例えば、支払が破棄されたプロセス中のステップ、破棄の理由(例えば、不十分な資金、ユーザによる中止、システムエラー等)、および/または同等物等の破棄に関するデータを集めるように構成されてもよい。その点に関して、性能試験プラットフォーム382は、システム100の性能試験および支払振替プロセスの成功に関するデータを記憶ならびに維持してもよい。性能試験プラットフォーム382はまた、任意の他の所望の性能試験および/または分析動作を実施するように構成されてもよい。
会計プラットフォーム384は、処理された支払振替のための会計サービスを提供するように構成されてもよい。例えば、支払プロセッサ160は、支払処理要求371、引落プル373、引落通知374、振込プッシュ376、および/または振込通知377を会計プラットフォーム384に伝送するように構成されてもよい。支払プロセッサ160は、リアルタイムで、支払振替の完了に応答して、または任意の他の好適なもしくは所望の時間インターバルにおいて、データを伝送してもよい。会計プラットフォーム384は、データを追跡および維持し、支払が正常に完了されたことを確実にするための動作を実施するように構成されてもよい。例えば、会計プラットフォーム384は、支払を追跡し、送金側銀行193からの引落額が、受取側銀行195への振込額に等しく、必要な資金が、正常に引き出され、預金されたことを確実にするように構成されてもよい。種々の実施形態では、会計プラットフォーム384はまた、送金側銀行193から受け取られた引落額が、振込額を受取側銀行195に提供するために引き出された資金に等しいことを確実にし得る。その点に関して、会計プラットフォーム384は、引き出され、預金された資金を調整し、引落額全額が受け取られたことを確実にし得る。会計プラットフォーム384はまた、支払振替に基づいて、任意の他の所望の会計プロセスを実施してもよい。
種々の実施形態では、再び、図1を参照すると、1つまたはそれを上回るシステム100コンポーネントは、支払ネットワークおよび/または振出人システムの一部であってもよい。例えば、決定プロセッサ130、トークン化システム150、リスクおよび詐欺査定プラットフォーム140、および/または支払プロセッサ160のうちの1つまたはそれを上回るものは、支払ネットワークならびに/もしくは振出人システムの一部であってもよい。
種々の実施形態では、支払ネットワークおよび/または振出人システムは、ハードウェア、ソフトウェア、および/またはデータベースコンポーネントの任意の好適な組み合わせを備えてもよい。例えば、支払ネットワークおよび/または振出人システムは、1つまたはそれを上回るネットワーク環境、サーバ、コンピュータベースのシステム、プロセッサ、データベース、および/または同等物を備えてもよい。支払ネットワークおよび/または振出人システムは、コンピュータまたはプロセッサもしくはコンピュータ/プロセッサのセットの形態における、少なくとも1つのコンピューティングデバイスを備えてもよいが、例えば、サーバ、ウェブサーバ、プールされたサーバ、または同等物等の他のタイプのコンピューティングユニットもしくはシステムが、使用されてもよい。支払ネットワークおよび/または振出人システムはまた、1つまたはそれを上回るデータセンタ、クラウド記憶装置、もしくは同等物を含んでもよく、本明細書で議論される種々の動作を実施するように構成される、API等のソフトウェアを含んでもよい。種々の実施形態では、支払ネットワークおよび/または振出人システムは、1つまたはそれを上回るプロセッサおよび/または1つまたはそれを上回る有形非一過性メモリを含み、論理を実装することが可能であってもよい。プロセッサは、本明細書でさらに議論されるように、命令、例えば、非一過性有形コンピュータ可読媒体上に記憶される命令の実行に応答して、種々の論理動作を実装するように構成されてもよい。
種々の実施形態では、支払ネットワークおよび/または振出人システムは、従来的支払ネットワークまたは取引ネットワークを備え、もしくはそれと相互作用し、購入および支払を促進し、取引を認可し、取引を決済し、同等物を行ってもよい。例えば、支払ネットワークおよび/または振出人システムは、現在、クレジットカード、デビットカード、ならびに/もしくは他のタイプの取引口座または取引手段のための取引に適応している、既存の専有ネットワークを表し得る。支払ネットワークおよび/または振出人システムは、傍受者からセキュアな閉鎖されたネットワークであってもよい。種々の実施形態では、支払ネットワークおよび/または振出人システムは、AMERICAN EXPRESS(登録商標)、VISANET(登録商標)、MASTERCARD(登録商標)、DISCOVER(登録商標)、INTERAC(登録商標)、Cartes Bancaires、JCB(登録商標)、プライベートネットワーク(例えば、百貨店ネットワーク)、および/または任意の他の支払ネットワーク、取引ネットワーク、振出人システム、もしくは同等物等の例示的取引ネットワークを備えてもよい。支払ネットワークおよび/または振出人システムは、例えば、1つまたはそれを上回る認可エンジン、認証エンジンおよびデータベース、決済エンジンおよびデータベース、売掛金システムおよびデータベース、買掛金システムおよびデータベース、および/または同等物等の金融および/または取引システムおよびプロセスに関連する、システムおよびデータベースを含んでもよい。種々の実施形態では、支払ネットワークおよび/または振出人システムはまた、本明細書でさらに議論されるように、取引を認可することが可能な取引口座振出人の信用認可制度(「CAS」)を備えてもよい。支払ネットワークおよび/または振出人システムは、取引を認可および決済し、取引口座部材データベース、売掛金データベース、買掛金データベース、または同等物を維持するように構成されてもよい。
本開示は、支払ネットワークおよび/または振出人システムを参照するが、本開示の原理は、任意の好適な数の支払ネットワークおよび/または振出人システムを有する、支払振替を処理するためのシステムに適用されてもよいことを理解されたい。例えば、システム100は、それぞれ、種々のシステム100コンポーネントを有し、それぞれ、異なる振出人システムまたはネットワークに対応する、もしくはそれと関連付けられる、1つまたはそれを上回る支払ネットワークおよび/または振出人システムを備えてもよい。
ここで図4および5を参照すると、描写されるプロセスフローは、単に、実施形態であって、本開示の範囲を限定することを意図するものではない。例えば、方法またはプロセス説明のいずれかに列挙されるステップは、任意の順序で実行されてもよく、提示される順序に限定されない。以下の説明は、図4および5に描写されるステップならびに要素だけではなく、また、図1-3を参照して上記に説明されるような種々のシステムコンポーネントを適切に参照することを理解されたい。初めに、例示的実施形態が、図に図示され、下記に説明されるが、本開示の原理は、現在既知であるかどうかにかかわらず、任意の数の技法を使用して実装されてもよいことを理解されたい。本開示は、いかようにも、図面に図示され、下記に説明される例示的実装および技法に限定されるべきではない。別様に具体的に述べられない限り、図面に描写される物品は、必ずしも、正確な縮尺で描かれていない。
種々の実施形態では、図4を具体的に参照すると、支払振替を処理するための方法401が、開示される。方法401は、ユーザ(例えば、送金側)が、金銭を販売業者(例えば、受取側)に振り替え、販売業者との取引を完了することを有効にしてもよい。方法401は、販売業者が、リアルタイムまたはほぼリアルタイムで、当事者が、共通振替プラットフォーム等に参加するために、特殊ソフトウェアまたはハードウェアを有することを必要とせずに(例えば、PAYPAL(登録商標)、ZELLE(登録商標)等によって提供される共通振替プラットフォームと対照的に)、振替を受け取ることを可能にし得る。
方法401は、支払要求を受信するステップ(ステップ402)を含んでもよい。支払要求は、送金側データ、受取側データ、および/または取引データを備えてもよい。送金側データは、例えば、送金側銀行データ(例えば、口座番号、銀行コード、ACH銀行コード、口座上の名義等)、送金側個人データ(例えば、氏名、住所、電話番号等)、および/または同等物等のユーザが支払要求を提出することに対応するデータを備えてもよい。受取側データは、例えば、受取側銀行データ(例えば、口座番号、銀行コード、ACH銀行コード、口座上の名義または事業者名等)、受取側事業データ(例えば、販売業者氏名またはID、住所、電話番号等)、および/または受取側に対応する任意の他のデータ等の販売業者が支払振替を受け取ることに対応するデータを備えてもよい。取引データは、例えば、取引額、取引条件、および/または任意の他の好適な取引データ等の取引に対応するデータを備えてもよい。
種々の実施形態では、ユーザは、ユーザデバイス110を介して、UI125と相互作用し、支払要求を開始してもよい。例えば、ユーザは、UI125を介して、販売業者システム120と相互作用し、販売業者から利用可能な商品および/またはサービスを購入してもよい。販売業者システム120との取引を開始することに応答して、ユーザは、支払振替を使用して取引を完了するように入力または選択してもよい。UI125がユーザ入力または選択を受信することに応答して、UI125は、単独で、または決定プロセッサ130を介して、リスクおよび詐欺査定プラットフォーム140を呼び出し、UI125を介して、支払ウィンドウを提示してもよい。例えば、支払ウィンドウは、iFrameとして、または任意の他の好適なディスプレイウィンドウを使用して、ロードされてもよい。支払ウィンドウは、ユーザが支払振替を完了するために使用することを所望する、送金側銀行についての詳細を入力するように、ユーザにプロンプトしてもよい。例えば、支払ウィンドウは、銀行(例えば、CHASE(登録商標)、WELLS FARGO(登録商標)、BANK OF AMERICA(登録商標)等)を選択し、銀行特有のログイン証明書(例えば、ユーザ名、パスワード、PIN、バイオメトリック入力等)を入力し、支払詳細(例えば、支払をそこから引き出すためのユーザ口座、支払を受け取るための販売業者の氏名、支払額等)を確認し、および/または同等物を行うように、ユーザにプロンプトしてもよい。種々の実施形態では、銀行特有のログイン証明書は、ユーザが銀行特有のログイン証明書を入力することに応答して、リスクおよび詐欺査定プラットフォーム140によって、銀行検証エンジン253を介して照合されてもよい(例えば、本明細書でさらに議論されるような図5の方法501のステップ504を簡単に参照されたい)。
方法401は、一意の識別子を生成するステップ(ステップ404)を含んでもよい。例えば、支払要求の受信に応答して、決定プロセッサ130は、トークン化システム150を呼び出し、一意の識別子を生成してもよい。一意の識別子は、任意の好適な方法を使用して生成されてもよく、支払振替に割り当てられ、取引の完了を通して、支払振替を追跡してもよい。一意の識別子を生成することに応答して、トークン化システム150は、一意の識別子を決定プロセッサ130に伝送してもよい。決定プロセッサ130は、一意の識別子を支払要求に付加してもよい。その点に関して、支払要求は、一意の識別子を使用して、プロセス全体を通して、識別、記憶、および維持され得る。
方法401は、リスク分析を支払要求上で実施するステップ(ステップ406)を含んでもよい。例えば、決定プロセッサ130は、リスクおよび詐欺査定プラットフォーム140を呼び出し、リスク分析を完了してもよい。決定プロセッサ130は、支払要求をリスクおよび詐欺査定プラットフォーム140に伝送することによって、リスクおよび詐欺査定プラットフォーム140を呼び出してもよい。種々の実施形態では、リスクおよび詐欺査定プラットフォーム140はまた、例えば、銀行検証エンジン253が送金側銀行データを検証するために使用されることに応答して等、支払振替データの少なくとも一部を前もって受信している場合がある。リスクおよび詐欺査定プラットフォーム140は、任意の好適な技法またはプロセスを使用して、リスク分析を実施してもよい。例えば、種々の実施形態によると、図5を具体的に参照すると、支払振替におけるリスクを分析するための方法501が、開示される。
方法501は、リスク査定要求を受信するステップ(ステップ502)を含んでもよい。リスクおよび詐欺査定プラットフォーム140は、リスク査定要求を決定プロセッサ130から受信してもよい。リスク査定要求は、支払振替データを備えてもよい。リスク査定要求の受信に応答して、リスクおよび詐欺査定プラットフォーム140は、種々のリスクおよび/または詐欺査定を実施し、支払振替が不正に開始されるかどうか、ユーザが支払振替を完了するための十分な資金を有するかどうか、および/または同等物を決定するように構成されてもよい。
方法501は、ユーザ銀行データを支払振替データから検証するステップ(ステップ504)を含んでもよい。銀行検証エンジン253は、ユーザ銀行データを検証するように構成されてもよい。銀行検証エンジン253は、任意の好適なプロセスまたは技法を使用して、ユーザ銀行データを検証してもよい。例えば、銀行検証エンジン253は、1つまたはそれを上回る送金側銀行193と電子通信してもよく、各送金側銀行193と通信し、支払振替データからのユーザ銀行データを検証および照合するように構成されてもよい。種々の実施形態では、ユーザ銀行データ検証は、ユーザによって入力された送金側銀行ログイン情報を照合および検証し、ユーザが金銭形態を引き出すことを所望する口座を決定し、口座が取引を完了するための十分な資金を有することを検証し、および/または同等物を行うステップを含んでもよい。銀行検証エンジン253は、リスク決定エンジン257に、送金側銀行データが検証されるかどうかと、口座が金銭を受取側に振り替えることが可能であるかどうかとを示す、データ(例えば、「合格」、「不合格」、「不十分な資金」等)を返してもよい。ユーザ銀行データ検証はまた、さらなるユーザ照合のために使用されるために、氏名、住所、電話番号、電子メールアドレス、または同等物等のユーザと関連付けられるデータを返してもよい。
方法501は、デバイス照合査定を実施するステップ(ステップ506)を含んでもよい。例えば、照合サービス255は、デバイス照合査定をユーザデバイス110上で実施するように構成されてもよい。デバイス照合査定は、ユーザデバイス110、ユーザが支払要求を提出するための電子メールアカウント、または同等物が、第三者によって危殆化されている尤度を決定するために実施されてもよい。種々の実施形態では、ユーザが支払要求を入力する(例えば、図4のステップ402を簡単に参照されたい)ことに応答して、照合サービス255は、ユーザデバイス特性(例えば、捕捉されたユーザデバイスデータ)をユーザデバイス110から捕捉するように構成されてもよい。種々の実施形態では、照合サービス255は、決定プロセッサ130が、リスク査定を完了するために、リスクおよび詐欺査定プラットフォーム140を呼び出すことに応答して、ユーザデバイス特性を捕捉するように構成されてもよい。捕捉されたユーザデバイス特性は、ユーザによって支払要求を提出するために使用される、ユーザデバイス110のソフトウェア、ハードウェア、および/または物理的パラメータならびに設定に対応し得る。例えば、ユーザデバイス110は、一意のデバイスID、IPアドレス、オペレーティングシステムタイプ(例えば、WINDOWS(登録商標)、ANDROID(登録商標)、APPLE(登録商標) IOS(登録商標)、LINUX(登録商標)等)、ウェブブラウザタイプ(例えば、MICROSOFT INTERNET EXPLORER(登録商標)、GOOGLE CHROME(登録商標)等)、有効にされる言語(例えば、英語、スペイン語、イタリア語等)、画面の解像度設定、スクリプト設定(例えば、JAVACRIPT(登録商標)対応ウェブブラウザ)、匿名のIPインジケータ、および/または同等物を備えてもよい。照合サービス255は、捕捉されたユーザデバイス特性をリスク決定エンジン257に伝送してもよい。
方法501は、支払リスク分析を実施するステップ(ステップ508)を含んでもよい。リスク決定エンジン257は、支払リスク分析を実施および実行するように構成されてもよい。支払リスク分析は、支払要求からの取引データ、ユーザ銀行データ検証、および/または捕捉されたユーザデバイス特性のうちの少なくとも1つに基づいてもよい。例えば、照合サービス255から捕捉されたユーザデバイス特性の受信に応答して、リスク決定エンジン257は、種々の動作を捕捉されたユーザデバイス特性上で実施し、捕捉されたユーザデバイス特性が可能性として考えられる詐欺を示すかどうかを決定するように構成されてもよい。例えば、リスク決定エンジン257は、履歴取引詐欺データを読み出す、またはクエリしてもよい。履歴取引詐欺データは、詐欺行為源から生じることが既知である種々のデバイスデータ特性、デバイスデータと関連付けられる詐欺率、および/または同等物を備えてもよい。その点に関して、リスク決定エンジン257は、捕捉されたユーザデバイス特性と履歴取引詐欺データを比較し、捕捉されたユーザデバイス特性が詐欺行為源から生じることが既知のデータを備えるかどうかを決定してもよい。例えば、低詐欺率を備える(または既存のものではない)、履歴取引詐欺特性に応答して、リスク決定エンジン257は、捕捉されたユーザデバイス特性が詐欺行為源からのものではないことを決定してもよい。履歴取引詐欺データが、捕捉されたユーザデバイス特性に合致し、高詐欺率を有することに応答して、リスク決定エンジン257は、捕捉されたユーザデバイス特性が詐欺行為源からのものであることを決定してもよい。
さらなる実施例として、種々の実施形態によると、リスク決定エンジン257は、捕捉されたユーザデバイス特性が可能性として考えられる詐欺を示すかどうかを決定するように構成される、if-then論理を備えてもよい。if-then論理は、捕捉されたユーザデバイス特性のうちの1つまたはそれを上回るものに対応する、種々の詐欺閾値を備えてもよい。例えば、例示的if-then論理は、「捕捉されたIPアドレスが、1日に5回以上捕捉されている場合、その取引は、詐欺行為である」、「画面の解像度設定が、低く、有効にされる言語が、フランス語である場合、その取引は、詐欺行為である」、および/または任意の他の好適なif-then論理を備えてもよい。
さらなる実施例として、種々の実施形態によると、リスク決定エンジン257は、統計的モデル、機械学習、人工知能、および同等物を実装し、可能性として考えられる詐欺を識別することを補助してもよい。その点に関して、捕捉されたユーザデバイス特性は、統計的モデル、機械学習モデル、または人工知能モデルの中に入力され、詐欺のリスクを決定してもよい。例えば、種々の実施形態によると、モデルは、捕捉されたユーザデバイス特性、履歴取引詐欺データ、および/または非デバイス関連属性(例えば、取引のリスクレベル、時刻、取引口座上での保守アクティビティ等)を消費してもよい。データ消費に基づいて、モデルは、支払要求が詐欺行為デバイスから生じるかどうかを予測するために活用されてもよい。
リスク決定エンジン257は、リスク査定を生成することによって、詐欺の決定を分類するように構成されてもよい。リスク査定は、例えば、「低リスク」、「中リスク」、または「高リスク」、数値、もしくは同等物等の任意の好適なスケールを備えてもよい。例えば、「高リスク」リスク査定は、銀行検証エンジン253が、ユーザ口座が十分な資金を有していないことを決定し、照合サービス255が、不正に取得されたユーザデバイスが支払振替を開始するために使用されたことを示すユーザデバイス特性を捕捉することに応答して、決定されてもよい。さらなる実施例として、「中リスク」は、銀行検証エンジン253が、ユーザ口座を照合し、ユーザ口座が支払振替を完了するための十分な資金を備えることを検証し、照合サービス255が、支払振替が不正に開始されていることを示すユーザデバイス特性を捕捉することに応答して、決定されてもよい。さらなる実施例として、「低リスク」は、銀行検証エンジン253が、ユーザ口座を照合し、ユーザ口座が支払振替を完了するための十分な資金を備えることを検証し、照合サービス255が、支払振替が不正に開始されていないことを示すユーザデバイス特性を捕捉することに応答して、決定されてもよい。
方法501は、支払リスク分析に基づいて、リスク査定を返すステップ(ステップ510)を含んでもよい。リスク決定エンジン257は、支払リスク分析を決定プロセッサ130に返すように構成されてもよい。
種々の実施形態では、再び、図4を参照すると、方法401は、支払リスク分析のリスクレベルを決定するステップを含んでもよい。決定プロセッサ130は、リスクおよび詐欺査定プラットフォーム140によって返される支払リスク分析に基づいて、リスクレベルを決定するように構成されてもよい。
リスクが「高リスク」を備えることに応答して、方法401は、支払要求を拒否するステップ(ステップ407)を含んでもよい。決定プロセッサ130は、UI125を介して、支払拒否通知をユーザデバイス110に伝送してもよい。支払拒否通知は、支払要求が拒否されたことを示す、データを備えてもよい。種々の実施形態では、支払拒否通知はまた、取引を完了するための支払の別の形態を選択するように、ユーザにプロンプトしてもよい。
リスクが「中リスク」を備えることに応答して、方法401は、認証チャレンジを伝送するステップ(ステップ408)を含んでもよい。決定プロセッサ130は、認証チャレンジをユーザデバイス110に伝送するように構成されてもよい(例えば、直接、および/またはUI125を介して表示される)。認証チャレンジは、任意の好適な伝送チャネル(例えば、SMS、MMS、電子メール、プッシュ配信通知、電話呼等)を介して、ユーザデバイス110に伝送されてもよい。伝送チャネルは、ユーザによって選択されてもよい、またはユーザと関連付けられる履歴口座または支払情報に基づいてもよい。認証チャレンジは、多要素認証チャレンジを備えてもよい。例えば、ユーザが、バイオメトリック入力、ユーザ名およびパスワード、または同等物を使用して、システム100に以前に登録されている場合、認証チャレンジは、バイオメトリック入力を、ユーザデバイス110を介して、ユーザのパスワード(例えば、2要素認証)とともに入力するように、ユーザにプロンプトするデータを備えてもよい。認証チャレンジは、2要素認証を備えてもよい。決定プロセッサ130は、伝送チャネルを介して、認証番号(例えば、PIN、コード、6桁の数字、ワンタイムパスワード等)を伝送し、ユーザデバイス110を介して、認証番号をUI125の中に入力するように、ユーザにプロンプトしてもよい。
方法401は、認証要求に基づいて、認証チャレンジ応答を受信するステップ(ステップ409)を含んでもよい。決定プロセッサ130は、認証チャレンジ応答をユーザデバイス110から受信してもよい(例えば、直接、またはUI125を介して)。決定プロセッサ130は、認証チャレンジ応答と記憶されるバイオメトリックデータ、ユーザ名およびパスワードデータ、認証番号、または同等物を比較し、ユーザの応答を検証し、ユーザを認証してもよい。
種々の実施形態では、認証チャレンジ応答が検証を失敗する(例えば、認証チャレンジ応答が認証チャレンジに合致しなかった)ことに応答して、決定プロセッサ130は、支払要求を拒否する前に、第2の認証チャレンジ(または任意の他の所望の数の認証チャレンジ)を伝送するように構成されてもよい(例えば、ステップ407)。
種々の実施形態では、リスクが「低リスク」を備えることに応答して、または認証チャレンジ応答を検証することに応答して(例えば、ステップ409)、方法401は、支払処理要求を生成するステップ(ステップ410)を含んでもよい。例えば、リスクが「低リスク」を備えることに応答して、または認証チャレンジ応答を検証することに応答して、決定プロセッサ130は、支払処理要求371を生成し、支払処理要求371を支払プロセッサ160に伝送することによって、支払プロセッサ160を呼び出すように構成されてもよい。支払処理要求371は、例えば、送金側データ、受取側データ、および/または取引データ等の支払振替に関するデータを備えてもよい。送金側データは、送金側銀行(例えば、口座番号、銀行コード、ACH銀行コード、口座上の名義等)、送金側(例えば、氏名、住所、電話番号等)に関するデータ、および/または送金側に対応する任意の他のデータに関するデータを備えてもよい。受取側データは、受取側銀行(例えば、口座番号、銀行コード、ACH銀行コード、口座上の名義または事業者名等)、受取側(例えば、販売業者名またはID、住所、電話番号等)に関するデータ、および/または受取側に対応する任意の他のデータに関するデータを備えてもよい。取引データは、一意の識別子(例えば、トークン化システム150によって割り当てられるように)、取引額、および/または任意の他の取引データを備えてもよい。
呼び出されることに応答して、支払プロセッサ160は、送金側支払プロセッサ363を呼び出し、取引額を送金側銀行193における送金側の口座から引き落としてもよく、受取側支払プロセッサ365を呼び出し、取引額を受取側銀行195における受取側の取引口座に振り込んでもよい。種々の実施形態では、支払プロセッサ160は、資金が、同時またはほぼ同時に、かつ支払振替と同日に、送金側の口座から引き出され、受取側の口座に振り込まれ得るように、同時またはほぼ同時に(例えば、近接近した時間周期内に)、各プロセッサを呼び出してもよい(例えば、資金が送金側の口座から適切に引き出されることを確実にするための遅延を要求する典型的支払プラットフォームと対照的に)。
方法401は、引落プルを送金側銀行に伝送するステップ(ステップ412-1)を含んでもよい。例えば、呼び出されることに応答して、送金側支払プロセッサ363は、引落プル373を生成し、送金側銀行193に伝送するように構成されてもよい。引落プル373は、送金側銀行193からの資金の引出を開始してもよい。例えば、引落プル373は、取引額を送金側銀行193における送金側口座から引き出すためのACHプルを備えてもよい。引落プル373は、送金側(例えば、送金側銀行データ、送金側氏名、送金側住所等)および引落額(例えば、取引額に基づいて)に関するデータを備えてもよい。種々の実施形態では、引落プル373はまた、振り込まれた資金がそこから引き出される、システムリポジトリ、銀行、または同等物と関連付けられる、データを備えてもよい。その点に関して、送金側銀行193は、引落額をシステムリポジトリ、銀行、または同等物に送金し、引き出される資金を補填してもよい。
引落プル373の受信に応答して、送金側銀行193は、送金側の口座からの引落額の引出を開始してもよい。引落を開始することに応答して、送金側銀行193は、引落通知374を送金側支払プロセッサ363に返信してもよい。引落通知374は、引落が正常に開始および/または完了されたことを示す、データを備えてもよい。
方法401は、振込プッシュを受取側銀行に伝送するステップ(ステップ412-2)を含んでもよい。例えば、呼び出されることに応答して、受取側支払プロセッサ365は、振込プッシュ376を生成し、受取側銀行195に伝送するように構成されてもよい。振込プッシュ376は、受取側銀行195への資金の伝送を開始するように構成されてもよい。例えば、振込プッシュ376は、取引額を受取側銀行195における受取側口座に伝送するためのACHプッシュ配信を備えてもよい。本明細書にさらに議論されるように、取引額は、システムリポジトリ、銀行、または同等物から引き出され、送金側銀行193からの引落額の受取に応答して補填されてもよい。振込プッシュ376は、受取側(例えば、受取側銀行データ、受取側事業データ等)および振込額(例えば、取引額に基づいて)に関するデータを備えてもよい。
振込プッシュ376の受信に応答して、受取側銀行195は、受取側の口座への振込額の伝送を開始してもよい。振込の開始に応答して、受取側銀行195は、振込通知377を受取側支払プロセッサ365に返信してもよい。振込通知377は、振込が正常に開始および/または完了されたことのデータを備えてもよい。
方法401は、支払要求を完了するステップ(ステップ414)を含んでもよい。例えば、種々の実施形態によると、決定プロセッサ130が、支払プロセッサ160を呼び出し、引落プル373を送金側銀行193に、振込プッシュ376を受取側銀行195に伝送することに応答して、決定プロセッサ130は、直接、またはUI125を介して、支払確認をユーザデバイス110に、および/または販売業者システム120に伝送してもよい。その点に関して、支払確認は、引落プル373および振込プッシュ376が伝送されるのと同時またはほぼ同時に(例えば、時間的に近接して)、伝送されてもよい。さらなる実施例として、種々の実施形態によると、支払確認はまた、任意の他の好適な時間に伝送されてもよい。例えば、引落通知374および振込通知377の受信に応答して、支払プロセッサ160は、支払振替が正常に完了されたことを示す、データを決定プロセッサ130に返してもよい。決定プロセッサ130は、直接、またはUI125を介して、支払確認をユーザデバイス110に、および/または販売業者システム120に伝送してもよい。その点に関して、販売業者システム120およびユーザデバイス110は、取引を完了し得る。
種々の実施形態では、引落プル373または振込プッシュ376のうちの少なくとも1つが失敗することに応答して、支払プロセッサ160は、支払振替が失敗したことを示す、データを決定プロセッサ130に返してもよい。決定プロセッサ130は、支払拒否通知をユーザデバイス110に伝送してもよい(例えば、直接、またはUI125を介して表示される)。支払拒否通知は、支払要求が拒否または失敗されたことを示す、データを備えてもよい。種々の実施形態では、支払拒否通知はまた、取引を完了するための支払の別の形態を選択するように、ユーザにプロンプトしてもよい。
種々の実施形態では、支払要求を完了することに応答して、および/または支払プロセスの間、支払プロセッサ160はまた、分析のために、データを性能試験プラットフォーム382および/または会計プラットフォーム384に転送してもよい。
性能試験プラットフォーム382は、支払振替プロセスに基づいて、1つまたはそれを上回る性能試験および/または分析動作を実施するように構成されてもよい。例えば、性能試験プラットフォーム382は、支払振替を追跡し、正常に完了または破棄された支払の数を決定してもよい。支払振替が破棄されたことの決定に応答して、性能試験プラットフォーム382は、例えば、支払が破棄されたプロセス中のステップ、破棄の理由(例えば、不十分な資金、ユーザによる中止、システムエラー等)、および/または同等物等の破棄に関するデータを集めるように構成されてもよい。
会計プラットフォーム384は、支払振替を処理するための会計サービスを提供するように構成されてもよい。例えば、支払プロセッサ160は、支払処理要求371に関するデータ、引落プル373、引落通知374、振込プッシュ376、および/または振込通知377を会計プラットフォーム384に伝送するように構成されてもよい。会計プラットフォーム384は、データを追跡および維持し、支払が正常に完了されたことを確実にするための動作を実施するように構成されてもよい。例えば、会計プラットフォーム384は、支払を追跡し、送金側銀行193からの引落額が受取側銀行195への振込額に等しく、必要な資金が正常に引き出され、預金されたことを確実にするように構成されてもよい。
本明細書における種々の実施形態の詳細な説明は、例証としての種々の実施形態を示す、付随の図面および写真を参照する。これらの種々の実施形態は、当業者が本開示を実践することを可能にするために十分に詳細に説明されるが、他の実施形態も、実現され得、論理的かつ機械的変更が、本開示の精神および範囲から逸脱することなく、行われ得ることを理解されたい。したがって、本明細書の発明を実施するための形態は、限定ではなく、例証目的のためだけに提示される。例えば、方法またはプロセス説明のいずれかに列挙されるステップは、任意の順序で実行されてもよく、提示される順序に限定されない。さらに、機能またはステップのいずれも、1人またはそれを上回る第三者に外部委託される、もしくは彼らによって実施されてもよい。修正、追加、または省略が、本開示の範囲から逸脱することなく、本明細書に説明されるシステム、装置、および方法に行われてもよい。例えば、本システムおよび装置のコンポーネントは、統合または分離されてもよい。さらに、本明細書に開示されるシステムおよび装置の動作は、より多い、より少ない、または他のコンポーネントによって実施されてもよく、説明される方法は、より多い、より少ない、または他のステップを含んでもよい。加えて、ステップは、任意の好適な順序で実施されてもよい。本書で使用されるように、「各」は、セットの各部材またはセットのサブセットの各部材を指す。さらに、単数形のいずれの言及も、複数実施形態を含み、1つを上回るコンポーネントのいずれの言及も、単数形実施形態を含んでもよい。具体的利点が、本明細書に列挙されたが、種々の実施形態は、列挙される利点のいくつかを含む、いずれも含まない、または全てを含んでもよい。
システム、方法、およびコンピュータプログラム製品が、提供される。本明細書における詳細な説明では、「種々の実施形態」、「一実施形態」、「ある実施形態」、「例示的実施形態」等に対する言及は、説明される実施形態が、特定の特徴、構造、または特性を含み得ることを示すが、全ての実施形態がその特定の特徴、構造、もしくは特性を必ずしも含むとは限らない。さらに、そのような語句は、同じ実施形態を必ずしも言及するとは限らない。さらに、特定の特徴、構造または、特性が、実施形態と関連して記載されている場合、そのような特徴、構造、または特性を他の実施形態と関連して実施することは、それが明確に記載されているかどうかにかかわらず、当業者の知識の範囲内であることが思量される。説明を熟読後、代替実施形態において本開示を実装する方法が、当業者には明らかとなるであろう。
本明細書で使用されるように、「~を伝送する」は、電子データの少なくとも一部をあるシステム100コンポーネントから別のコンポーネントに送信することを含み得る。加えて、本明細書で使用されるように、「データ」、「情報」、または同等物は、デジタルもしくは任意の他の形態におけるコマンド、クエリ、ファイル、メッセージ、記憶のためのデータ、および同等物等の情報の包含を含み得る。
本明細書で使用されるように、「電子通信」は、システム100コンポーネントがデータを伝送および受信することを可能にすることが可能な物理的結合および/または非物理的結合を含み得る。例えば、「電子通信」は、CANバスプロトコル、Ethernet(登録商標)物理層プロトコル(例えば、10BASE-T、100BASE-T、1000BASE-T等を使用したもの)、IEEE1394インターフェース(例えば、FireWire)、デジタルネットワークのための統合されたサービス(ISDN)、デジタル加入者回線(DSL)、802.1la/b/g/n/ac信号(例えば、Wi-Fi)、短波長UHF無線波を使用して、少なくとも部分的に、IEEE802.15.1によって定義される、無線通信プロトコル(例えば、Bluetooth(登録商標) Special Interest Groupによって維持される、BLUETOOTH(登録商標)プロトコル)、少なくとも部分的に、IEEE802.15.4によって定義される、無線通信プロトコル(例えば、ZigBee allianceによって維持される、ZIGBEE(登録商標)プロトコル)、セルラープロトコル、赤外線プロトコル、光学プロトコル、または有線もしくは無線接続を介して、情報を伝送することが可能な任意の他のプロトコル等の有線または無線プロトコルを指し得る。
システム100コンポーネントのうちの1つまたはそれを上回るものは、ネットワークを介して、電子通信してもよい。本明細書で使用されるように、用語「ネットワーク」はさらに、ハードウェアおよび/またはソフトウェアコンポーネントを組み込む、任意のクラウド、クラウドコンピューティングシステム、または電子通信システムもしくは方法を含んでもよい。ノード間の通信は、例えば、電話ネットワーク、エクストラネット、イントラネット、インターネット、相互作用点デバイス(携帯情報端末、携帯電話、キオスク、タブレット等)、オンライン通信、衛星通信、オフライン通信、無線通信、トランスポンダ通信、ローカルエリアネットワーク(LAN)、広域ネットワーク(WAN)、仮想プライベートネットワーク(VPN)、ネットワーク化またはリンクされたデバイス、キーボード、マウスおよび/または任意の好適な通信もしくはデータ入力モダリティ等の任意の好適な通信チャネルを通して遂行されてもよい。さらに、本システムは、本明細書では、繰り返し、TCP/IP通信プロトコルを用いて実装されるものとして説明されるが、本システムはまた、インターネットワークパケット交換(IPX)、APPLETALK(登録商標)プログラム、IP-6、NetBIOS、OSI、任意のトンネリングプロトコル(例えば、IPsec、SSH等)、または任意の数の既存もしくは将来的プロトコルを使用して実装されてもよい。ネットワークが、インターネット等のパブリックネットワークの性質を持つ場合、ネットワークは、非セキュアであって、傍受者に曝されていると想定することが有利であり得る。インターネットに関連して利用されるプロトコル、規格、およびアプリケーションソフトウェアに関連する具体的情報は、概して、当業者に公知であって、したがって、本明細書で詳述される必要はないものとする。
「クラウド」または「クラウドコンピューティング」は、最小限の管理労力またはサービスプロバイダ相互作用を伴って、迅速にプロビジョニングおよびリリースされ得る、構成可能コンピューティングリソース(例えば、ネットワーク、サーバ、記憶装置、アプリケーション、およびサービス)の共有プールへの便宜的オンデマンドネットワークアクセスを可能にするためのモデルを含む。クラウドコンピューティングは、場所独立コンピューティングを含んでもよく、それによって、共有サーバは、リソース、ソフトウェア、およびデータをコンピュータならびに他のデバイスにオンデマンドで提供する。クラウドコンピューティングに関するさらなる情報に関しては、クラウドコンピューティングのNIST(National Institute of Standards and Technology)の定義を参照されたい。
種々のシステムコンポーネントは、独立して、別個に、または集合的に、例えば、典型的には、標準モデム通信、ケーブルモデム、DISH NETWORKS(登録商標)、ISDN、DSL、または種々の無線通信方法と併用されるようなローカルループを経由した、インターネットサービスプロバイダ(ISP)への接続を含む、データリンクを介して、ネットワークに好適に結合されてもよい。ネットワークは、双方向テレビ(ITV)ネットワーク等の他のタイプのネットワークとして実装されてもよいことに留意されたい。さらに、本システムは、本明細書に説明される類似機能性を有する、任意のネットワークを経由した、任意の商品、サービス、または情報の使用、販売、もしくは流通も検討する。
ネットワークは、非セキュアであり得る。したがって、ネットワークを経由した通信は、データ暗号化を利用してもよい。暗号化は、当技術分野において現在利用可能である、または利用可能になり得る、技法のいずれかの方法によって実施されてもよく、例えば、Twofish、RSA、El Gamal、Schorrシグネチャ、DSA、PGP、PKI、GPG(GnuPG)、HPEフォーマット保存暗号化(FPE)、Voltage、Triple DES、Blowfish、AES、MD5、HMAC、IDEA、RC6、ならびに対称および非対称暗号システムが挙げられる。ネットワーク通信はまた、SHAシリーズ暗号化方法、楕円曲線暗号法(例えば、ECC、ECDH、ECDSA等)、および/または開発中の他のポスト量子暗号法アルゴリズムを組み込んでもよい。
簡潔性目的のために、システム100の従来のデータネットワーキング、アプリケーション開発、および他の機能側面は、本明細書に詳細に説明されない場合がある。さらに、本明細書に含有される種々の図に示される接続線は、種々の要素間の例示的機能関係および/または電子通信を表すように意図される。多くの代替または付加的機能関係もしくは電子通信が、実践的システム内に存在してもよいことに留意されたい。
本明細書で使用されるように、「~を充足する」、「~を満たす」、「~に合致する」、「~と関連付けられる」、または類似語句は、完全合致、部分的合致、ある基準を満たすこと、データのサブセットに合致すること、相関、ある基準を充足すること、対応、関連付け、アルゴリズム関係、および/または同等物を含み得る。同様に、本明細書で使用されるように、「~を認証する」または類似用語は、正確な認証、部分的認証、データのサブセットを認証すること、対応、ある基準を充足すること、関連付け、アルゴリズム関係、および/または同等物を含んでもよい。
「~を関連付ける(associate)」および/または「~を関連付けている(associating)」に類似する用語および語句は、例えば、(i)取引口座ならびに(ii)アイテム(例えば、オファー、報酬、ディスカウント等)および/またはデジタルチャネル等のタグを付ける、フラグを付ける、相関させる、ルックアップテーブルを使用する、または要素間の関係を示す、もしくは作成するための任意の他の方法またはシステムを含み得る。さらに、関連付けは、任意の好適なアクション、イベント、または時間周期に応答して、任意の時点で生じ得る。関連付けは、所定のインターバルで、周期的に、ランダムに、1回、1回以上、または好適な要求もしくはアクションに応答して、生じ得る。情報のいずれかは、ソフトウェア対応リンクを介して配信および/またはアクセスされてもよく、リンクは、電子メール、テキスト、投稿、ソーシャルネットワーク入力、および/または当技術分野において公知の任意の他の方法を介して、送信されてもよい。
本明細書で議論される種々のシステムコンポーネントは、以下のうちの1つまたはそれを上回るものを含んでもよい。デジタルデータを処理するためのプロセッサを含む、ホストサーバまたは他のコンピューティングシステム、デジタルデータを記憶するためにプロセッサに結合されるメモリ、デジタルデータを入力するためにプロセッサに結合される入力デジタイザ、プロセッサによるデジタルデータの処理を命令するために、メモリ内に記憶され、プロセッサによってアクセス可能なアプリケーションプログラム、プロセッサによって処理されるデジタルデータから導出された情報を表示するためにプロセッサおよびメモリに結合されるディスプレイデバイス、ならびに複数のデータベース。本明細書で使用される種々のデータベースは、クライアントデータ、販売業者データ、金融機関データ、および/またはシステムの動作において有用な類似データを含んでもよい。当業者が理解するように、ユーザコンピュータは、オペレーティングシステム(例えば、WINDOWS(登録商標)、UNIX(登録商標)、LINUX(登録商標)、SOLARIS(登録商標)、MACOS(登録商標)等)、ならびに典型的にはコンピュータと関連付けられる、種々の従来のサポートソフトウェアおよびドライバを含んでもよい。
本システムまたはその任意の部分もしくは機能は、ハードウェア、ソフトウェア、またはそれらの組み合わせを使用して実装されてもよく、1つまたはそれを上回るコンピュータシステムもしくは他の処理システム内に実装されてもよい。しかしながら、実施形態によって実施される操作は、多くの場合、一般に、人間のオペレータによって実施される知的動作と関連付けられる、合致または選択等の用語で言及されていた。人間のオペレータのそのような能力は、本明細書に説明される動作のいずれかにおける大部分の場合、必要ない、または望ましくない。むしろ、動作は、機械動作であってもよい、または動作のいずれかは、人工知能(AI)もしくは機械学習によって行われる、または向上され得る。人工知能は、概して、それらの周囲の世界を知覚し、計画を形成し、その目標を達成するための決定を行う、エージェント(例えば、機械、コンピュータベースのシステム等)の研究を指し得る。AIの基盤は、数学、論理、哲学、確率、言語学、神経科学、および決定理論を含む。コンピュータビジョン、ロボット、機械学習、および自然言語処理等の多くの分野が、AIの亜種に該当する。種々の実施形態を実施するための有用な機械は、汎用デジタルコンピュータまたは類似デバイスを含む。
本明細書で議論される、任意の通信、伝送、通信チャネル、チャネル、および/または同等物は、コンテンツ(例えば、データ、情報、メタデータ等)を送達するための任意のシステムまたは方法、ならびに/もしくはコンテンツ自体を含んでもよい。コンテンツは、任意の形態または媒体で提示されてもよく、種々の実施形態では、コンテンツは、電子的に送達される、および/または電子的に提示されることが可能であってもよい。例えば、チャネルは、ウェブサイト、モバイルアプリケーション、またはデバイス(例えば、FACEBOOK(登録商標)、YOUTUBE(登録商標)、PANDORA(登録商標)、APPLE TV(登録商標)、Microsoft(登録商標) XBOX(登録商標)、ROKU(登録商標)、AMAZON FIRE(登録商標)、GOOGLE CHROMECASTTM、SONY(登録商標) PLAYSTATION(登録商標)、NINTENDO(登録商標) SWITCH(登録商標)等)、統一資源ロケータ(「URL」)、ドキュメント(例えば、Microsoft(登録商標) WORDTMまたはEXCEL(登録商標)、ADOBE(登録商標)ポータブルドキュメントフォーマット(PDF)ドキュメント等)、「eBook」、「eMagazine」、アプリケーションまたはマイクロアプリケーション(本明細書に説明されるように)、SMSまたは他のタイプのテキストメッセージ、電子メール、FACEBOOK(登録商標)メッセージ、TWITTER(登録商標)ツイート、マルチメディアメッセージングサービス(MMS)、および/または他のタイプの通信技術を備えてもよい。種々の実施形態では、チャネルは、データパートナによってホストまたは提供されてもよい。種々の実施形態では、配信チャネルは、販売業者ウェブサイト、ソーシャルメディアウェブサイト、提携会社またはパートナウェブサイト、外部ベンダ、モバイルデバイス通信、ソーシャルメディアネットワーク、および/または場所ベースのサービスのうちの少なくとも1つを備えてもよい。配信チャネルは、販売業者ウェブサイト、ソーシャルメディアサイト、提携会社またはパートナウェブサイト、外部ベンダ、およびモバイルデバイス通信のうちの少なくとも1つを含んでもよい。ソーシャルメディアサイトの実施例は、FACEBOOK(登録商標)、FOURSQUARE(登録商標)、TWITTER(登録商標)、LINKEDIN(登録商標)、INSTAGRAM(登録商標)、PINTEREST(登録商標)、TUMBLR(登録商標)、REDDIT(登録商標)、SNAPCHAT(登録商標)、WHATSAPP(登録商標)、FLICKR(登録商標)、VK(登録商標)、QZONE(登録商標)、WECHAT(登録商標)、および同等物を含む。提携会社またはパートナウェブサイトの実施例は、AMERICAN EXPRESS(登録商標)、GROUPON(登録商標)、LIVINGSOCIAL(登録商標)、および同等物を含む。さらに、モバイルデバイス通信の実施例は、テキスティング、電子メール、およびスマートフォンのためのモバイルアプリケーションを含む。
さらに、プロセスフローの例証およびその説明は、ユーザのWINDOWS(登録商標)アプリケーション、ウェブページ、ウェブサイト、ウェブフォーム、プロンプト等を参照し得る。実践者は、本明細書に説明される図示されるステップが、WINDOWS(登録商標)アプリケーション、ウェブページ、ウェブフォーム、ポップアップWINDOWS(登録商標)アプリケーション、プロンプト、および同等物の使用を含む、任意の数の構成を備えてもよいことを理解されるであろう。さらに、図示および説明されるような複数のステップは、単一ウェブページおよび/またはWINDOWS(登録商標)アプリケーションに組み合わせられてもよいが、単純性目的のために拡張されていることを理解されたい。他の場合では、単一プロセスステップとして図示および説明されるステップは、複数のウェブページおよび/またはWINDOWS(登録商標)アプリケーションに分離されてもよいが、便宜上、組み合わせられている。
種々の実施形態では、システム100の種々のコンポーネント、モジュール、および/またはエンジンは、マイクロアプリケーションまたはマイクロアプリとして実装されてもよい。マイクロアプリは、典型的には、例えば、WINDOWS(登録商標)モバイルオペレーティングシステム、ANDROID(登録商標)オペレーティングシステム、APPLE(登録商標) iOSオペレーティングシステム、BLACKBERRY(登録商標)社のオペレーティングシステム、および同等物を含む、モバイルオペレーティングシステムとの関連で展開される。マイクロアプリは、種々のオペレーティングシステムおよびハードウェアリソースの動作を統制する一式の所定のルールを介して、より大型のオペレーティングシステムおよび関連付けられたハードウェアのリソースを活用するように構成されてもよい。例えば、マイクロアプリが、モバイルデバイスまたはモバイルオペレーティングシステム以外のデバイスまたはネットワークと通信することを所望する場合、マイクロアプリは、モバイルオペレーティングシステムの所定のルール下、オペレーティングシステムおよび関連付けられたデバイスハードウェアの通信プロトコルを活用してもよい。さらに、マイクロアプリが、ユーザからの入力を所望する場合、マイクロアプリは、種々のハードウェアコンポーネントを監視し、次いで、検出された入力をハードウェアからマイクロアプリに通信する、オペレーティングシステムからの応答を要求するように構成されてもよい。
種々の実施形態では、本システムは、ミドルウェアを実装し、ソフトウェアアプリケーションおよびサービスを提供し、および/またはオペレーティングシステム、データベース、アプリケーション、ならびに同等物等のコンピュータベースのシステム内のソフトウェアコンポーネントをブリッジしてもよい。ミドルウェアは、異種コンピューティングシステム間の通信および/またはプロセス取引を促進するように好適に構成される、任意のハードウェアならびに/もしくはソフトウェアを含んでもよい。ミドルウェアコンポーネントは、市販されており、当技術分野において公知である。ミドルウェアは、市販のハードウェアおよび/またはソフトウェアを通して、カスタムハードウェアならびに/もしくはソフトウェアコンポーネントを通して、またはそれらの組み合わせを通して実装されてもよい。ミドルウェアは、種々の構成において常駐してもよく、独立型システムとして存在してもよく、またはインターネットサーバ上に常駐するソフトウェアコンポーネントであってもよい。ミドルウェアは、本明細書に開示される目的のいずれかのために、アプリケーションサーバの種々のコンポーネントと任意の数の内部または外部システムとの間の取引を処理するように構成されてもよい。IBM(登録商標), Inc.(Armonk, NY)によるWEBSPHERE(登録商標) MQTM(以前のMQSeries)は、市販のミドルウェア製品の実施例である。エンタープライズサービスバス(「ESB」)アプリケーションは、ミドルウェアの別の実施例である。
本明細書に開示される、システム、コンピュータ、コンピュータベースのシステム、および同等物は、ユーザによってアクセス可能な好適なウェブサイトまたは他のインターネットベースのグラフィカルユーザインターフェースを提供してもよい。実践者は、データをブラウザベースのドキュメント内に表示するためのいくつかの方法が存在することを理解するであろう。データは、標準的テキストとして、または固定リスト、スクロール可能リスト、ドロップダウンリスト、編集可能テキストフィールド、固定テキストフィールド、ポップアップウィンドウ、および同等物内に表されてもよい。同様に、例えば、キーボードを使用した自由テキスト入力、メニューアイテムの選択、チェックボックス、選択肢ボックス、および同等物等、ウェブページ内のデータを修正するために利用可能ないくつかの方法も存在する。
本明細書で議論される、通信、入力、記憶装置、データベース、またはディスプレイのいずれかは、ウェブページを有するウェブサイトを通して、促進され得る。本明細書で使用されるような用語「ウェブページ」は、ユーザと相互作用するために使用され得る、ドキュメントおよびアプリケーションのタイプを限定することを意味するものではない。例えば、典型的ウェブサイトは、標準的HTMLドキュメントに加え、種々の形態のJAVA(登録商標)アプレット、JAVASCRIPT(登録商標)プログラム、アクティブサーバページ(ASP)、共通ゲートウェイインターフェーススクリプト(CGI)、拡張マークアップ言語(XML)、動的HTML、カスケードスタイルシート(CSS)、AJAX(非同期JAVASCRIPT(登録商標)およびXML)プログラム、ヘルパアプリケーション、プラグイン、および同等物を含み得る。サーバは、要求をウェブサーバから受信する、ウェブサービスを含んでもよく、要求は、URLおよびIPアドレス(192.168.1.1)を含む。ウェブサーバは、適切なウェブページを読み出し、ウェブページのためのデータまたはアプリケーションをIPアドレスに送信する。ウェブサービスは、インターネット等の通信手段を経由して他のアプリケーションと相互作用可能なアプリケーションである。ウェブサービスは、典型的には、XML、SOAP、AJAX、WSDL、およびUDDI等の規格またはプロトコルに基づく。ウェブサービス方法は、当技術分野において周知であって、多くの標準的テキストにおいて網羅されている。さらなる実施例として、代表的な状態転送(REST)またはRESTfulウェブサービスは、アプリケーション間の相互運用性を可能にする1つの方法を提供し得る。
一実施形態では、Microsoft(登録商標)社のインターネット情報サービス(IIS)、取引サーバ(MTS)サービス、およびSQL SERVER(登録商標)データベースが、MICROSOFT(登録商標)オペレーティングシステム、WINDOWS NT(登録商標)ウェブサーバソフトウェア、SQL SERVER(登録商標)データベース、およびMICROSOFT(登録商標)コマースサーバと併用される。加えて、ACCESS(登録商標)ソフトウェア、SQL SERVER(登録商標)データベース、ORACLE(登録商標)ソフトウェア、SYBASE(登録商標)ソフトウェア、INFORMIX(登録商標)ソフトウェア、MYSQL(登録商標)ソフトウェア、INTERBASE(登録商標)ソフトウェア等のコンポーネントが、アクティブデータオブジェクト(ADO)準拠データベース管理システムを提供するために使用されてもよい。一実施形態では、APACHE(登録商標)ウェブサーバが、LINUX(登録商標)オペレーティングシステム、MYSQL(登録商標)データベース、およびPERL(登録商標)、PHP、Ruby、および/またはPYTHON(登録商標)プログラミング言語と併用される。
種々の実施形態では、サーバは、アプリケーションサーバ(例えば、WEBPHERE(登録商標)、WEBLOGIC(登録商標)、JBOSS(登録商標)、POSTGRES PLUS ADVANCED SERVER(登録商標)等)を含んでもよい。種々の実施形態では、サーバは、ウェブサーバ(例えば、Apache、IIS、GOOGLE(登録商標)ウェブサーバ、SUN JAVA(登録商標)システムウェブサーバ、LINUX(登録商標)またはWINDOWS(登録商標)オペレーティングシステム上で起動するJAVA(登録商標)仮想機械)を含んでもよい。
ユーザ、システム、コンピュータベースのシステム、または同等物は、ウェブクライアントを介して、サーバと通信してもよい。ウェブクライアントは、例えば、本明細書で議論される任意のデバイスまたはソフトウェア等の任意のネットワークを介して通信する、任意のデバイスまたはソフトウェアを含む。ウェブクライアントは、コンピューティングユニットまたはシステム内にインストールされ、オンライン取引および/または通信を行う、インターネットブラウジングソフトウェアを含んでもよい。これらのコンピューティングユニットまたはシステムは、コンピュータまたはコンピュータのセットの形態をとってもよいが、パーソナルコンピュータ、ラップトップ、ノートブック、タブレット、スマートフォン、携帯電話、携帯情報端末、サーバ、プールされたサーバ、メインフレームコンピュータ、分散型コンピューティングクラスタ、キオスク、端末、店頭(POS)デバイスまたは端末、テレビ、もしくはネットワークを経由してデータを受信することが可能な任意の他のデバイスを含む、他のタイプのコンピューティングユニットまたはシステムが、使用されてもよい。ウェブクライアントは、オペレーティングシステム(例えば、WINDOWS(登録商標)、WINDOWS MOBILE(登録商標)オペレーティングシステム、UNIX(登録商標)オペレーティングシステム、LINUX(登録商標)オペレーティングシステム、APPLE(登録商標) OS(登録商標)オペレーティングシステム等)ならびに、典型的には、コンピュータと関連付けられる、種々の従来のサポートソフトウェアおよびドライバを含んでもよい。ウェブ-クライアントはまた、MICROSOFT(登録商標) INTERNET EXPLORER(登録商標)ソフトウェア、MOZILLA(登録商標) FIREFOX(登録商標)ソフトウェア、GOOGLE(登録商標) CHROME(登録商標)ソフトウェア、APPLE(登録商標) SAFARI(登録商標)ソフトウェア、またはインターネットをブラウジングするために利用可能な任意の他の多数のソフトウェアパッケージを起動してもよい。
当業者が、理解するであろうように、ウェブクライアントは、サーバ(例えば、本明細書に議論されるように、アプリケーションサーバ、ウェブサーバ等)と直接接触する場合とそうではない場合がある。例えば、ウェブクライアントは、インターネットサーバと直接または間接接続を有し得る、別のサーバおよび/またはハードウェアコンポーネントを通して、サーバのサービスにアクセスしてもよい。例えば、ウェブクライアントは、ロードバランサを介して、サーバと通信してもよい。種々の実施形態では、ウェブクライアントアクセスは、商業的に利用可能なウェブ-ブラウザソフトウェアパッケージを通した、ネットワークまたはインターネットを通したものである。その点に関して、ウェブクライアントは、ネットワークまたはインターネットへのアクセスを伴う、自宅もしくは事業環境にあってもよい。ウェブクライアントは、セキュアソケット層(SSL)および輸送層セキュリティ(TLS)等のセキュリティプロトコルを実装してもよい。ウェブクライアントは、HTTP、HTTPS、FTP、およびSFTPを含む、いくつかのアプリケーション層プロトコルを実装してもよい。
本明細書で議論される任意のデータベースは、関係、階層、グラフィカル、ブロックチェーン、オブジェクト指向構造、および/または任意の他のデータベース構成を含んでもよい。任意のデータベースはまた、データが、インデックス化のための構造および記録間の構造関係を伴わない、行ならびに列の形態における単一ファイル内に記憶され得る、フラットファイル構造を含んでもよい。例えば、フラットファイル構造は、区切られたテキストファイル、CSV(コンマ分離値)ファイル、および/または任意の他の好適なフラットファイル構造を含んでもよい。データベースを実装するために使用され得る、一般的データベース製品は、IBM(登録商標)(Armonk, NY)によるDB2(登録商標)、ORACLE(登録商標) Corporation(Redwood Shores, CA)から利用可能な種々のデータベース製品、Microsoft(登録商標) Corporation(Redmond, Washington)によるMICROSOFT ACCESS(登録商標)またはMICROSOFT SQL SERVER(登録商標)、MYSQL AB(Uppsala, Sweden)によるMYSQL(登録商標)、MONGODB(登録商標)、Redis、Apache Cassandra(登録商標)、APACHE(登録商標)によるHBASE(登録商標)、MAPR(登録商標)corporationによるMapR-DB、または任意の他の好適なデータベース製品を含む。さらに、任意のデータベースは、例えば、データテーブルまたはルックアップテーブルとして、任意の好適な様式において編成されてもよい。各記録は、単一ファイル、一連のファイル、リンクされた一連のデータフィールド、または任意の他のデータ構造であってもよい。
本明細書で議論される任意のデータベースは、ピアツーピアネットワークを経由して、複数のコンピューティングデバイス(例えば、ノード)によって維持される、分散型台帳を備えてもよい。各コンピューティングデバイスは、分散型台帳のコピーおよび/または部分的コピーを維持し、ネットワーク内の1つまたはそれを上回る他のコンピューティングデバイスと通信し、データを検証し、分散型台帳に書き込む。分散型台帳は、例えば、データの共有項ベースの検証、不変性、および暗号論的連鎖ブロックを含む、ブロックチェーン技術の特徴ならびに機能性を使用してもよい。ブロックチェーンは、データを含有する、相互接続されるブロックの台帳を備えてもよい。ブロックチェーンは、各ブロックが、個々の取引および任意のブロックチェーン実行ファイルの結果を保持し得るため、向上されたセキュリティを提供し得る。各ブロックは、前のブロックにリンクしてもよく、タイムスタンプを含んでもよい。ブロックは、各ブロックが、ブロックチェーン内の前のブロックのハッシュを含み得るため、リンクされ得る。リンクされたブロックは、チェーンを形成し、1つのみの後続ブロックのみが、単一チェーンのために、相互の先行ブロックにリンクすることを可能にされる。分岐が、発散チェーンが、以前は均一であったブロックチェーンから確立される場合、可能性として考えられ得るが、典型的には、発散チェーンのうちの1つのみが、共有項チェーンとして維持されるであろう。種々の実施形態では、ブロックチェーンは、データワークフローを非一元型様式において施行する、スマートコントラクトを実装してもよい。本システムはまた、例えば、コンピュータ、タブレット、スマートフォン、モノのインターネットデバイス(「IoT」デバイス)等のユーザデバイス上で展開される、アプリケーションを含んでもよい。アプリケーションは、ブロックチェーンと通信し(例えば、直接、またはブロックチェーンノードを介して)、データを伝送し、読み出してもよい。種々の実施形態では、統制組織または団体が、ブロックチェーン上に記憶されたデータへのアクセスを制御してもよい。管理組織への登録は、ブロックチェーンネットワーク内に関与することを可能にし得る。
ブロックチェーンベースのシステムを通して実施されるデータ転送は、実装される具体的ブロックチェーン技術のブロック作成時間によって決定され得る、持続時間内に、ブロックチェーンネットワーク内で接続されるピアに伝搬してもよい。例えば、ETHEREUM(登録商標)ベースのネットワーク上では、新しいデータエントリが、書込の時点から約13~20秒以内に利用可能になり得る。HYPERLEDGER(登録商標)Fabric1.0ベースのプラットフォーム上では、持続時間は、数秒以内に選定および実施され得る、具体的共有項アルゴリズムによって駆動される。その点に関して、本システム内の伝搬時間は、既存のシステムと比較して改良され得、実装コストおよび市場に出るまでの時間もまた、著しく低減され得る。本システムはまた、少なくとも部分的に、ブロックチェーン内に記憶されるデータの不変性質に起因して、増加されたセキュリティをもたらし、種々のデータ入力および出力に伴う不正開封の確率を低減させる。さらに、本システムはまた、ブロックチェーンに関するデータを記憶することに先立って、暗号化プロセスをデータ上で実施することによって、データの増加されたセキュリティをもたらし得る。したがって、本明細書に説明されるシステムを使用して、データを伝送し、記憶し、それにアクセスすることによって、データのセキュリティは、改良され、これは、コンピュータまたはネットワークが危殆化されるリスクを減少させる。
種々の実施形態では、本システムはまた、共通データ構造を提供することによって、データベース同期誤差を低減させ、したがって、少なくとも部分的に、記憶されたデータの完全性を改良し得る。本システムはまた、各ノードが、記憶されたデータの完全コピーとともに動作する、したがって、少なくとも部分的に、特定されたネットワーク停電およびハードウェア障害に起因する、休止時間を低減させるため、従来的データベース(例えば、関係データベース、分散型データベース等)に優る、増加された信頼性およびフォルトトレランスをもたらす。本システムはまた、各ノードが、メッセージを全ての接続されるピアにブロードキャストするため、信頼性があるおよび信頼性がないピアを有する、ネットワーク環境内のデータ転送の信頼性を増加させ得、各ブロックが、前のブロックへのリンクを備えるため、ノードは、欠落ブロックを迅速に検出し、欠落ブロックへの要求をブロックチェーンネットワーク内の他のノードに伝搬し得る。ブロックチェーンの特徴および機能性を実装する分散型台帳に関するさらなる情報に関しては、「SYSTEMS AND METHODS FOR BLOCKCHAIN BASED PAYMENT NETWORKS」と題され、2016年9月15日に出願された、米国特許出願第15/266,350号、「SYSTEMS AND METHODS FOR DATA FILE TRANSFER BALANCING AND CONTROL ON BLOCKCHAIN」と題され、2017年8月21日に出願された、米国特許出願第15/682,180号、「SYSTEMS AND METHODS FOR LOYALTY POINT DISTRIBUTION」と題され、2017年10月9日に出願された、米国特許出願第15/728,086号、「MESSAGING BALANCING AND CONTROL ON BLOCKCHAIN」と題され、2017年10月17日に出願された、米国特許出願第15/785,843号、「API REQUEST AND RESPONSE BALANCING AND CONTROL ON BLOCKCHAIN」と題され、2017年10月17日に出願された、米国特許出願第15/785,870号、「SINGLE SIGN-ON SOLUTION USING BLOCKCHAIN」と題され、2017年11月28日に出願された、米国特許出願第15/824,450号、「TRANSACTION AUTHORIZATION PROCESS USING BLOCKCHAIN」と題され、2017年11月28日に出願された、米国特許出願第15/824,513号、「TRANSACTION PROCESS USING BLOCKCHAIN TOKEN SMART CONTRACTS」と題され、2018年4月2日に出願された、米国特許出願第15/943,168号、「FRAUD MANAGEMENT USING A DISTRIBUTED DATABASE」と題され、2018年4月2日に出願された、米国特許出願第15/943,271号、「BUYER-CENTRIC MARKETPLACE USING BLOCKCHAIN」と題され、2018年6月19日に出願された、米国特許出願第16/012,598号、「System and Method for Transaction Account Based Micro-Payments」と題され、2018年7月31日に出願された、米国特許出願第16/051,126号、および「PROCUREMENT SYSTEM USING BLOCKCHAIN」と題され、2018年8月1日に出願された、米国特許出願第16/052,416号(その内容はそれぞれ、参照することによってその全体として組み込まれる)を参照されたい。
あるデータの関連付けは、当技術分野において公知のものまたは実践されているもの等、任意の所望のデータ関連付け技法を通して遂行されてもよい。例えば、関連付けは、手動または自動のいずれかにおいて、遂行されてもよい。自動関連付け技法は、例えば、データベース検索、データベースマージ、GREP、AGREP、SQL、高速検索のためのテーブル内でのキーフィールドの使用、全テーブルおよびファイルを通した順次検索、ルックアップを単純化するための既知の順序に従うファイル内の記録のソート、および/または同等物を含んでもよい。関連付けステップは、例えば、事前に選択されたデータベースまたはデータセクタ内で「キーフィールド」を使用して、データベースマージ機能によって遂行されてもよい。種々のデータベース調整ステップが、データベース性能を最適化するために検討される。例えば、インデックス等の頻繁に使用されるファイルは、別個のファイルシステム上に置かれ、入/出力(「I/O」)ボトルネックを低減させてもよい。
より具体的には、「キーフィールド」は、キーフィールドによって定義されたオブジェクトの高レベルクラスに従って、データベースをパーティション化する。例えば、あるタイプのデータは、複数の関連データテーブル内のキーフィールドとして指定されてもよく、データテーブルは、次いで、キーフィールド内のデータのタイプに基づいて、リンクされてもよい。リンクされたデータテーブルのそれぞれ内のキーフィールドに対応するデータは、好ましくは、同一または同一タイプである。しかしながら、キーフィールド内に類似するが同じではないデータを有する、データテーブルもまた、例えば、AGREPを使用することによってリンクされてもよい。一実施形態によると、任意の好適なデータ記憶技法は、標準的フォーマットを伴わずに、データを記憶するために利用されてもよい。データセットは、例えば、ISO/IEC7816-4ファイル構造を使用して個々のファイルを記憶すること、ドメインを実装し、それによって、1つまたはそれを上回るデータセットを含有する1つまたはそれを上回る基本ファイルを暴露する専用ファイルが選択されること、階層ファイリングシステムを使用して、個々のファイル内に記憶されるデータセットを使用すること、単一ファイル内に記録として記憶されるデータセット(圧縮、SQLアクセス可能、1つまたはそれを上回るキーを介したハッシュ化、数値、第1のタプルによるアルファベット等を含む)、Binary Large Object(BLOB)として記憶されるデータ、ISO/IEC7816-6データ要素を使用してエンコードされたグループ化されていないデータ要素として記憶されるデータ、ISO/IEC8824および8825におけるようなISO/IEC Abstract Syntax Notation(ASN.1)を使用してエンコードされたグループ化されていないデータ要素として記憶されるデータ、フラクタル圧縮方法、画像圧縮方法等を含み得る、他の専有技法を含む、任意の好適な技法を使用して記憶されてもよい。
種々の実施形態では、異なるフォーマットにおいて様々な情報を記憶する能力は、情報をBLOBとして記憶することによって促進される。したがって、任意のバイナリ情報が、データセットと関連付けられた記憶空間内に記憶されることができる。上記に議論されるように、バイナリ情報は、本システムと関連付けられて記憶される、またはシステムの外部であるが、それと連携されてもよい。BLOB方法は、固定記憶配分、循環キュー技法、またはメモリ管理に関する最良実践(例えば、最長時間未使用のページ化メモリ等)のいずれかを使用して、固定メモリオフセットを介して、バイナリのブロックとしてフォーマットされたグループ化されていないデータ要素としてデータセットを記憶し得る。BLOB方法を使用することによって、異なるフォーマットを有する種々のデータセットを記憶する能力は、データセットの複数のまたは非関連所有者による、データベース内の、もしくはシステムと関連付けられるデータの記憶を促進する。例えば、記憶され得る第1のデータセットは、第1の当事者によって提供されてもよく、記憶され得る第2のデータセットは、非関連の第2の当事者によって提供されてもよく、さらに記憶され得る第3のデータセットは、第1および第2の当事者と非関連の第三者によって提供されてもよい。これらの3つの例示的データセットはそれぞれ、異なるデータ記憶フォーマットおよび/または技法を使用して記憶される、異なる情報を含有してもよい。さらに、各データセットは、他のサブットとも異なり得る、データのサブットを含有してもよい。
上記に記載されるように、種々の実施形態では、データは、共通フォーマットに関係なく記憶されることができる。しかしながら、データセット(例えば、BLOB)は、データベースまたはシステム内のデータを操作するために提供されるとき、標準的様式で注釈が付けられ得る。注釈は、種々のデータセットを管理する際に有用な情報を伝達するように構成される、各データセットに関連した短いヘッダ、トレーラ、または他の適切なインジケータを備えてもよい。例えば、注釈は、本明細書では「状態ヘッダ」、「ヘッダ」、「トレーラ」、または「ステータス」と呼ばれ得、データセットのステータスのインジケーションを備えてもよく、もしくはデータの具体的振出人もしくは所有者に相関された識別子を含んでもよい。一実施例では、各データセットBLOBの最初の3バイトは、その特定のデータセットのステータスを示すように構成される、または構成可能であってもよい。例えば、LOADED、INITIALIZED、READY、BLOCKED、REMOVABLE、またはDELETEDである。データの後続バイトは、例えば、振出人、ユーザ、取引/メンバーシップ口座識別子、または同等物の識別を示すために使用されてもよい。これらの状態注釈はそれぞれ、本明細書でさらに議論される。
注釈はまた、他のタイプのステータス情報ならびに種々の他の目的のために使用されてもよい。例えば、データセット注釈は、アクセスレベルを確立するセキュリティ情報を含んでもよい。アクセスレベルは、例えば、ある個人、従業員のレベル、会社、もしくは他の実体のみが、データセットにアクセスすることを許可する、または取引、業者、振出人、ユーザ、もしくは同等物に基づいて、具体的データセットへのアクセスを許可するように構成されてもよい。さらに、セキュリティ情報は、データセットへのアクセス、修正、および/または削除等のあるアクションのみを制限/許可してもよい。一実施例では、データセット注釈は、データセット所有者またはユーザのみが、データセットを削除することが許可されることを示し、種々の識別されたユーザは、読取のためにデータセットにアクセスすることが許可されてもよく、その他は、データセットへのアクセスから完全に除外されてもよい。しかしながら、他のアクセス制限パラメータもまた、使用され、種々の実体が、必要に応じて、種々の許可レベルを用いてデータセットにアクセスすることを可能にしてもよい。
ヘッダまたはトレーラを含む、データは、ヘッダまたはトレーラに従って、データを追加、削除、修正、もしくは拡張するように構成される、独立型相互作用デバイスによって受信されてもよい。したがって、一実施形態では、ヘッダまたはトレーラは、関連付けられた振出人所有データとともに、取引デバイス上に記憶されず、代わりに、適切なアクションが、独立型デバイスにおいて、ユーザに行われるべきアクションの適切な選択肢を提供することによって行われてもよい。本システムは、データのヘッダもしくはトレーラまたはヘッダもしくはトレーラ履歴が適切なデータに関連してシステム、デバイス、または取引手段上に記憶される、データ記憶配列を検討してもよい。
当業者はまた、セキュリティ上の理由から、本システムの任意のデータベース、本システム、デバイス、サーバ、および/または他のコンポーネントが、単一場所もしくは複数の場所において、任意のそれらの組み合わせから成ってもよく、各データベース、本システム、デバイス、サーバ、および/または他のコンポーネントが、ファイアウォール、アクセスコード、暗号化、暗号解読、圧縮、解凍、および/または同等物等の種々の好適なセキュリティ特徴のいずれかを含むことを理解するであろう。
暗号化は、当技術分野において現在利用可能である、または利用可能になり得る、技法のいずれかの方法によって実施されてもよく、例えば、Twofish、RSA、El Gamal、Schorrシグネチャ、DSA、PGP、PKI、GPG(GnuPG)、HPEフォーマット保存暗号化(FPE)、Voltage、Triple DES、Blowfish、AES、MD5、HMAC、IDEA、RC6、ならびに対称および非対称暗号システムが挙げられる。本システムおよび方法はまた、SHAシリーズ暗号化方法、楕円曲線暗号法(例えば、ECC、ECDH、ECDSA等)、および/または開発中の他のポスト量子暗号法アルゴリズムを組み込んでもよい。
ファイアウォールは、CMSコンポーネントおよび/または企業コンピューティングリソースを他のネットワークのユーザから保護するように好適に構成される、任意のハードウェアおよび/またはソフトウェアを含んでもよい。さらに、ファイアウォールは、ウェブサーバを通して接続するウェブクライアントのためのファイアウォールの背後の種々のシステムおよびコンポーネントへのアクセスを限定または制限するように構成されてもよい。ファイアウォールは、とりわけ、ステートフルインスペクション、プロキシベース、アクセス制御リスト、およびパケットフィルタリングを含む、変動構成内に常駐してもよい。ファイアウォールは、ウェブサーバまたは任意の他のCMSコンポーネント内に統合されてもよい、もしくはさらに、別個のエンティティとして常駐してもよい。ファイアウォールは、ネットワークアドレス変換(「NAT」)および/またはネットワークアドレスポート変換(「NAPT」)を実装してもよい。ファイアウォールは、種々のトンネリングプロトコルに適応し、仮想プライベートネットワーキングにおいて使用されるもの等のセキュア通信を促進し得る。ファイアウォールは、非武装地帯(「DMZ」)を実装し、インターネット等のパブリックネットワークとの通信を促進し得る。ファイアウォールは、ソフトウェアとして、インターネットサーバ、任意の他のアプリケーションサーバコンポーネント内に統合されてもよい、または別のコンピューティングデバイス内に常駐してもよい、もしくは独立型ハードウェアコンポーネントの形態をとってもよい。
システムおよび方法は、機能ブロックコンポーネント、スクリーンショット、随意の選択、ならびに種々の処理ステップの観点から本明細書に説明され得る。そのような機能ブロックは、規定された機能を実施するように構成される、任意の数のハードウェアおよび/またはソフトウェアコンポーネントによって実現され得ることを理解されたい。例えば、本システムは、種々の集積回路コンポーネント、例えば、これは、1つまたはそれを上回るマイクロプロセッサもしくは他の制御デバイスの制御下、種々の機能を行い得る、メモリ要素、処理要素、論理要素、ルックアップテーブル、および同等物を採用してもよい。同様に、本システムのソフトウェア要素は、C、C++、C#、JAVA(登録商標)、JAVASCRIPT(登録商標)、JAVASCRIPT(登録商標) Object Notation(JSON)、VBScript、Macromedia COLD FUSION、COBOL、MICROSOFT(登録商標)社のActive Server Pages、assembly、PERL(登録商標)、PHP、ask、PYTHON(登録商標)、Visual Basic、SQL Stored Procedures、PL/SQL、任意のUNIX(登録商標)シェルスクリプト、および種々のアルゴリズムが、データ構造、オブジェクト、プロセス、ルーチン、または他のプログラミング要素の任意の組み合わせを用いて実装されている、拡張マークアップ言語(XML)等の任意のプログラミングまたはスクリプト言語を用いて実装されてもよい。さらに、本システムは、データ伝送、シグナリング、データ処理、ネットワーク制御、および同等物のために、任意の数の従来の技法を採用してもよいことに留意されたい。なおもさらに、本システムは、JAVASCRIPT(登録商標)、VBScript、または同等物等のクライアント側スクリプト言語に関するセキュリティ問題点を検出または防止するために使用され得る。暗号法およびネットワークセキュリティ方法は、当技術分野において周知であって、多くの標準的テキストにおいて網羅されている。
種々の実施形態では、本システムのソフトウェア要素はまた、NODE.JS(登録商標)コンポーネントを使用して実装されてもよい。NODE.JS(登録商標)プログラムは、いくつかのモジュールを実装して、種々のコア機能性をハンドリングしてもよい。例えば、NPM(登録商標)等のパッケージ管理モジュールが、オープンソースライブラリとして実装され、第三者NODE.JS(登録商標)プログラムのインストールおよび管理を編成することを補助してもよい。NODE.JS(登録商標)プログラムはまた、例えば、パラレルマルチスレッドマシン(「PM2」)、リソースおよび性能監視ツール、例えば、ノードアプリケーションメトリック(「アプリメトリック」)、ユーザインターフェースを構築するためのライブラリモジュール、および/または任意の他の好適ならびに/もしくは所望のモジュール等のプロセスマネージャを実装してもよい。
当業者によって理解されるであろうであろうように、本システムは、既存のシステム、アドオン製品、アップグレードされたソフトウェアを実行する処理装置、独立型システム、分散型システム、方法、データ処理システム、データ処理のためのデバイス、および/またはコンピュータプログラム製品のカスタマイズとして具現化されてもよい。故に、本システムまたはモジュールの任意の部分は、コードを実行する処理装置、インターネットベースの実施形態、全体的にハードウェアの実施形態、またはインターネット、ソフトウェア、およびハードウェアの側面を組み合わせる実施形態の形態をとってもよい。さらに、本システムは、記憶媒体内に具現化されるコンピュータ可読プログラムコード手段を有する、コンピュータ可読記憶媒体上のコンピュータプログラム製品の形態をとってもよい。ハードディスク、CD-ROM、SONY BLU-RAY DISC(登録商標)、光学記憶デバイス、磁気記憶デバイス、および/または同等物を含む、任意の好適なコンピュータ可読記憶媒体が、利用されてもよい。
用語「非一過性」は、伝搬する一過性信号自体のみを請求項の範囲から除外するように理解されるべきであって、伝搬する一過性信号自体のみではない、全ての標準的コンピュータ可読媒体に対する権利を放棄するわけではない。換言すると、用語「非一過性コンピュータ可読媒体」および「非一過性コンピュータ可読記憶媒体」の意味は、In re Nuijtenにおいて、35U.S.C.§101下の特許可能な主題の範囲外に該当すると見出された、それらのタイプの一過性コンピュータ可読媒体のみを除外すると解釈されるべきである。
利益、他の利点、および問題の解決策が、具体的実施形態に関して本明細書に説明された。しかしながら、任意の利益、利点、またはソリューションを生じさせる、もしくはより顕著にさせ得る、利益、利点、問題の解決策、および任意の要素は、本開示の重要、必須、または不可欠な特徴もしくは要素として解釈されるべきではない。本開示の範囲は、故に、添付の請求項以外によって限定されるべきではなく、単数形における要素の参照は、明示的にそのように述べられない限り、「1つかつ1つのみ」を意味することを意図するものではなく、むしろ、「1つまたはそれを上回る」ことを意味する。さらに、「A、B、およびCのうちの少なくとも1つ」または「A、B、もしくはCのうちの少なくとも1つ」に類似する語句が、請求項または明細書において使用される場合、その語句が、Aのみがある実施形態では存在し得、Bのみがある実施形態では存在し得、Cのみがある実施形態では存在し得、または要素A、B、およびCの任意の組み合わせが、単一実施形態に存在し得ることを意味するものと解釈されるように意図される。例えば、AおよびB、AおよびC、BおよびC、またはAおよびBおよびCである。
本開示は、方法を含むが、磁気もしくは光学メモリまたは磁気もしくは光ディスク等の有形コンピュータ可読担体上のコンピュータプログラム命令として具現化されてもよいことが検討される。当業者に公知の前述の種々の実施形態の要素に対する全ての構造、機械、電気、および機能的均等物は、参照することによって本明細書に明示的に組み込まれ、本請求項によって包含されることが意図される。さらに、デバイスまたは方法が、本開示によって解決されることが模索されるあらゆる問題に対処することは必要ではなく、本請求項によって包含されることも必要ではない。さらに、本開示における要素、コンポーネント、または方法ステップは、要素、コンポーネント、または方法ステップが、請求項に明示的に列挙されるかどうかにかかわらず、公開されることが意図されるものではない。本明細書の請求項要素は、その要素が語句「means for」または「step for」を使用して明示的に列挙されない限り、35U.S.C.112(f)の規定下で解釈されるものではない。本明細書で使用されるように、用語「comprises(~を備える)」、「comprising(~を備える)」、またはその任意の他の変形例は、要素のリストを備える、プロセス、方法、物品、もしくは装置が、それらの要素のみを含むだけではなく、明示的に列挙されない、もしくはそのようなプロセス、方法、物品、または装置に固有ではない、他の要素を含み得るように、非排他的含有を網羅することを意図するものではない。