(58)【調査した分野】(Int.Cl.,DB名)
フォーミュラフィールドを前記支払いフォームに関連付けるステップをさらに含み、前記フォーミュラフィールドは前記電子署名文書が署名のために前記ユーザに表示されると評価される数式を含むことを特徴とする請求項1に記載の方法。
前記演算子は、前記電子署名文書の署名の際、前記電子署名文書のフィールドに入力された、少なくとも1つのデータ項目に基づき、前記ユーザのクライアントデバイスによって評価されることを特徴とする請求項3に記載の方法。
前記関連付けられた支払いプロセッサを前記支払いに関連付けるステップは、前記支払いデータをサードパーティの支払いシステムへと送信することを含むことを特徴とする請求項1に記載の方法。
前記支払いプロセッサは、クレジットカード支払い、デビットカード支払い、電子資金取引、及び/又はポイント還元支払いのうちの少なくとも1つを処理するべく構成されることを特徴とする請求項1に記載の方法。
コンピュータシステムによって実行されるときに、以下の方法を実行することによって電子署名文書を介して支払いを容易にするコンテンツを含むコンピュータ可読メディアであって、
方法は、
電子署名文書とそれらの書類に対応する署名の指示を安全に保存するべく構成された電子署名サービスにおいて、
送信者から前記電子署名文書を受領するステップと、
支払いフォームコントロール部を含むユーザインターフェイスを前記送信者に表示するステップであって、前記支払いフォームコントロール部は前記送信者によってインタラクティブに前記電子署名文書の表示上にドラッグされることが可能である、ステップと、
前記ユーザインターフェースを介して受け取った入力に応答して、支払いフォームを電子署名文書に関連付けるステップであって、前記支払いフォームは、関連する支払いプロセッサを介して支払いを処理するようにプログラムされ、且つ、ユーザからの支払いデータを入手するべく構成されたステップと、
署名のために、前記支払いフォームを含む前記電子署名文書をユーザに表示するステップと、
前記支払いフォームを介して前記ユーザから支払いデータを受領するステップと、
前記関連付けられた支払いプロセッサに、前記支払いフォームを介して受領された前記支払いデータに基づき、支払いの処理をさせる方法を実行するステップと、を含むことを特徴とするコンピュータ可読メディア。
前記電子署名文書は、前記電子署名文書の別のフィールドで特定された1つ以上のデータ項目に基づき前記支払い金額を決定するために、数式を評価するべく構成されたフォーミュラフィールドを含むことを特徴とする請求項10に記載のコンピュータ可読メディア。
送信者は前記ユーザに電子メールを送信し、前記電子メールは前記電子署名文書を添付データとして含み、前記ユーザは、前記添付データを開く際に、前記電子署名文書及び前記支払いフォームとインタラクトし、且つ、前記支払いは、前記コンピュータシステムを経由することなく、前記ユーザのクライアントコンピュータから、前記関連付けられた支払いプロセッサへの前記支払いデータの転送によって処理されることを特徴とする請求項15に記載のコンピュータシステム。
前記モジュールはフォーミュラフィールドを前記支払いフォームに関連付けるようにさらに構成され、前記フォーミュラフィールドは、前記電子署名文書が署名のために前記ユーザに表示されるときに評価されるための数式を含むことを特徴とする請求項15に記載のコンピュータシステム。
【発明を実施するための形態】
【0009】
ここに記述される実施形態は、電子文書署名を容易にするべく改良されたコンピュータ及びネットワークをベースとした方法及びシステムを提供する。例示の実施形態は、文書及び対応する電子署名の作成、保存、管理を容易にするべく構成された電子署名サービス(「ESS」)を提供する。ESSを使用することにより、第1のユーザ(「送信者」)は署名されるべき文書(「署名文書」)を提供又はアップロードでき、一方で第2のユーザ(「署名者」)はアップロードされた文書にアクセス、検証、署名することができる。
【0010】
ESSのある実施形態は、電子署名文書を介して支払い処理を容易にする。ある実施形態においては、電子署名文書は、支払いフォーム(payment form、別の実施形態では「ペイフォーム(PayForm)」とも呼ばれる)、支払いフィールド又は支払い要素を含み、又は関連付けられる。署名文書が署名者によってアクセスされると、署名者には支払いに関する情報が表示され(例えば、支払い金額、受取人)、それに応じて名前、住所、会員番号、有効期限、暗証番号など、支払いフォームから要求された支払いデータを提供する。次に(又は、署名プロセスの最後などもっと後の段階で)署名者は要求される支払いを確認するべく求められる。ユーザが支払いを確認すると、支払いは、署名者の支払いデータをPayPal、クレジットカードネットワーク、銀行、デビットカード、電子資金取引、電信送金、自動決済機関(ACH)などの支払いプロセッサ又は支払い機構へと伝送することにより処理される。署名/支払いプロセスが完了すると、ESSは、署名者の署名と、日付、時間、会員情報、照合コード、確認コードなどを含む支払いデータを包含する、署名プロセスに関連する情報を安全に保存する。
【0011】
ある実施形態では、電子署名文書は1つ以上のフォーミュラフィールド(formula field)を含みうる。フォーミュラフィールド(For)は、例えば文書署名の最中など、フィールド作成後のタイミングで計算、評価、又は決定されるフォーミュラ、又は数式を含みうる。ある実施形態では、電子署名文書に関連付けられた支払いフォームは1つ以上のフォーミュラフィールドを含み、それにより、支払い明細(例えば支払額又は日付など)は、署名者が文書に署名し、及び該当する支払いを承認するタイミング、又はおおよそそのタイミングで同時に決定されうる。フォーミュラフィールドは、他のフィールド、数学演算子(例えば、プラス、マイナス、以上、以下など)、論理演算子(if、and,or,not)などを参照して、1つ以上の値を含むフォーミュラ又は表現(例えば、数字、文字、文字列、日付など)を含みうる。ある実施形態では、フォーミュラフィールドは、例えばフィールドを処理し、循環参照(circlar reference)を処理し、エラーに反応するための規則、命令、指示も含みうる。
【0012】
上記の支払いフォーム技術は、支払い処理と、安全なオンライン環境での文書とフォームの実行(署名)とを融合する。支払いフォームはプログラミングをせずに作成することができ、あらゆる文書に付加できる。これらの文書は署名のために(例えば電子メール経由で)送信されることが可能であり、あるいは顧客がアクセス、完了及び支払い可能であるように、ウェブサイトに載せることができる。故に、支払いフォームによって、いかなる文書も支払い取引を作成又は開始することが可能となる。文書作成者は支払いフォームと文書とを関連付けるだけでよく、e−コマースのウェブサイトをセットアップしたり、あるいは支払いプロセッサとの独自のインタラクションをプログラムしたりする必要はない。これは、ビジネスのe−コマースの「表面積」が、HTMLのショッピングカート上のクレジットカードのみから、ビジネスに含まれるあらゆる文書にまで拡大されうることを意味する。これにより、顧客には劇的に改善された安全性、管理、及びさらなる利便性がもたらされる。
【0013】
図1は電子署名サービスの一例の実施形態のブロック図を図示している。具体的には、
図1は、署名文書20の電子署名を実行するために、送信者ユーザ10及び署名者ユーザ11によって使用されるESS110を表している。
【0014】
図示されるシナリオでは、送信者10は、電子文書20(例えば、請求書、契約書又は同意書など)をESS110に提供(例えば、アップロード、転送など)するために、送信者クライアントデバイス160を作動する。ESS110では該電子文書20は安全に保存される。電子文書は基となる文書20に関連付けられた支払いの処理を容易にするべく構成された支払いフォーム(「PayForm」)21を含む。
【0015】
支払いフォーム21は支払い処理に関連する複数のフィールドを含んでもよく、その際、氏名、住所、会員番号、カード失効日、照合コード、商品に関する記載、数量、支払額などが含まれる。先述のとおり、少なくともいくつかのフィールドは、その後の処理で計算されるフォーミュラ又は数式といったフォーミュラフィールドであるか、又はそのようなフォーミュラフィールドを含みうる。例えば、支払額フィールドは、商品価格、現地の税率、及び送料に基づいたフォーミュラフィールドであってもよく、それらはすべて、文書20に含まれるフィールドであってもよく、及び/又は電子商取引システム、顧客関係管理システムなどのサードパーティのシステムによって提供されてもよい。
【0016】
支払いフォームフィールド21を設定した後、署名者11は文書20にアクセスする。ある実施形態では、送信者10は、ESS110に、署名者11に対してESS110が保持する文書20の参照先(例えばURL)を含むメッセージ(例えば電子メール)を送信させることによって、署名者11に通知する。別の例として、送信者10は署名者11に直接送信される電子メール又は他のメッセージに文書20を含みうる。さらに別の例では、文書20は商取引の一部として、署名者に対して自動的に表示されうる。例えば、e−コマースシステムは、e−コマースシステム又は対応するウェブサイトを介して購入された商品/サービスのための商取引中、または該商取引の一部として、文書20を表示させることがある。
【0017】
通常、署名者11は、ESS110を介して文書20にアクセス及び検証するために、署名者クライアントデバイス161を実行するウェブブラウザ又は他のクライアントモジュールを作動する。例えば、署名者11が文書20へのリンクを含む電子メールを受信すると、該署名者は文書20を検証及び署名するために、ESS110にアクセスするためのリンクをクリックできる。あるいは、署名者11が送信者10から直接文書20を受信した場合、文書を開くことによって、ユーザは要求される署名情報を提供するために、ESS110にアクセスさせられる。
【0018】
署名者11が文書20にアクセスすると、文書20内のあらゆるフォーミュラフィールド及び/又は支払いフォーム21は、評価、計算、あるいは処理(resolved)される。フォーミュラフィールドはローカルで(例えば、署名者クライアントデバイス161上で実行するJavaScript(登録商標)エンジン又は他の解釈プログラム)、及び/又は署名者クライアントデバイス161に関連しては遠隔で(例えば、ESS110の構成要素により)計算されうる。次に、ユーザは、要求に応じて、支払いデータを支払いフォーム21を介して提供する。文書20、支払いフォーム21及び関連するデータが署名者11の望みどおりに修正及び検証されると、署名者は電子署名を文書20に添付(又は添付する指示又は命令を提供)する。このタイミング(例えば、署名の直前又は直後)で、署名者は支払いの詳細を確認するように要求される場合がある。
【0019】
署名が完了すると、支払い処理のための様々なアプローチが検討される。あるアプローチでは、署名者が署名を添付した後、該署名者は支払いプロセッサ165を通じて支払いを開始する。これは、例えば、ESS110を介した送信を行わないように、ESS110を介することなく、(支払いフォーム21から得られた)支払いデータを署名者クライアントデバイス161から支払いプロセッサ165へと送信することを含みうる。支払いプロセッサ165は、支払いは問題なく処理されたか否か、あるいは商取引識別子などを示すステータス情報を返戻する。そして署名者11は、完了した商取引を確認し、又は処理をやり直すために取り消しすることができる。
【0020】
支払い処理のための別のアプローチでは、支払いはESS110によって円滑化される。例えば、署名者が署名を添付した後(又は署名者11が支払いを確認した後)、ESS110は支払いフォーム21及び署名者11によって提供された対応するデータに従って、支払いを開始する。具体的には、ESS110は、支払いフォーム21を介して支払いプロセッサ165へと収集されたデータを伝送しうる。支払いプロセッサ165はステータス情報(例えば、商取引番号、完了ステータス、照合コードなど)をESS110に返戻する。該ステータス情報は、署名者11から入手された署名及び支払いデータと関連付けられて保存される。ESS110は署名者11に対する確認メッセージを作成及び/又は提供するしてもよい。
【0021】
図2Aから2Fは、一実施形態に従った、支払いフォームを設定するためのユーザインターフェイス画面を図示している。
【0022】
図2Aは、電子署名文書202及び対応するエンベロープ(例えば、送信者、署名者、メッセージに関する情報など)を作成するべく構成された画面200を図示している。ユーザは、署名コントロール部(signature controls)をパレット204から文書202へとドラッグアンドドロップできる。一例として、ユーザは氏名コントロール部208を、該人物の氏名が必要とされる文書202上に配置している。別の例として、ユーザは支払いフォームを関連付けるために、支払いフォームコントロール部206を文書202上にドラッグできる。さらに、
図3Aから3Bについて以下に記載されるように、ユーザはフォーミュラフィールドを文書に関連付けるために、フォーミュラコントロール部209を文書202上にドラッグできる。
【0023】
図2Bは、支払いフォームと対応する支払いプロバイダ/ゲートウェイを設定するための画面210を図示している。画面210は、支払いフォームを介して支払いを受領したいユーザによって操作される。コントロール部206を文書202にドラッグする際(
図2A)、画面210が表示され、それによりユーザは適切な支払いプロバイダ(例えば、PayPal、DiBSなど)を選択し、署名者から要求されるフィールドを特定することができる。画面210はユーザアカウントのための全体的な構成の一部として、同時に/又は単体で表示される。このことにより、コントロール部206は署名文書上にドラックされるときはいつでも、画面210で定義された設定が使用される。
【0024】
画面210の目的の1つは、ユーザに特定のゲートウェイアカウントの選択肢一式を提供し、該ゲートウェイ(たとえば、カード番号、有効期限、氏名など)に必要なフィールドを、署名文書202の対応するフィールドに配置することである。この例では、ユーザは自身のアカウント名(bob@testhost.com)を提供するなどして、アカウントの詳細を提供し、それにより支払いプロセッサに振込先(destination for crediting)又は支払いの手付金(depositing payments)を提供する。また、画面210は画面左側で、支払いプロセッサによって要求される支払い情報項目を表示し、そこには、カード番号、有効期限などが含まれる。画面右側では、画面210は、左側の支払い情報項目に対応するドロップダウンメニューを表示する。ドロップダウンメニューの各々は、署名文書202で定められるフィールドのリストを含む。ユーザは、支払いプロセッサによって要求される、該当する支払い情報項目のためのデータソースとして作動する署名文書202から、フィールドを選択又は特定するために、ドロップダウンメニューを使用できる。例えば、ユーザは、文書202の「Card Number(カード番号)」と呼ばれるフィールドが「Number(番号)」と呼ばれる支払い情報フィールドに対応する、と特定するために、メニュー212を操作している。
【0025】
図2Cは、電子署名文書202に署名するために設定された画面220を図示している。画面220は署名202の署名者によって作動されるウェブブラウザによって、または該ウェブブラウザ内で表示されうる。この例では、署名者は、自身の氏名など、要求される情報を特定するために、署名コントロール部(例えばコントロール部208)を作動している。さらに、ユーザは、上記のとおり、文書202に関連付けられた支払いフォームから要求される情報(例えば、請求書送付先、クレジットカードの氏名、カード番号など)を提供している。
【0026】
図2Dは、画面220に表示される署名文書202の署名完了に応じて表示される、確認画面230である。確認画面230は署名者に、文書202の支払いフォームに関連付けられた支払いの確認を促す。
【0027】
図2Eは、上記確認画面230を介して受領された、署名者の確認に応じて表示される完了画面240を図示している。支払いは、文書202に関連付けられたワークフローにのっとり、例えば、文書が1つ以上の追加署名を必要とする場合、支払いはそれらの署名が入手されるまで遅延されうる。このような状況では、支払い情報はワークフローが完了し、すべての必要な署名が入手されるまで、ESS110(又は他のエンティティ)に保持される(「エンベロープ完了」)。要求される署名を収集するために許された制限時間は、文書202に関連付けられた制限時間に基づく。例えば、文書送信者は制限時間を24時間と設定し、すべての署名がその時間内に収集されなかった場合、支払いは処理されず、及び/又は保留中の支払い(held payment)は自動的にキャンセル又は中止される。
【0028】
図2Fは完了認証250を図示している。完了認証250は署名文書202の完了に関する情報を含む。また、認証250はカードの種類、番号、額などの支払い確認情報252を含む。認証250は、支払いが行われ、文書が署名されたことを証明、照合、確認又は実例説明するために使用されうる。
【0029】
図2Gは、電子署名文書262に署名するために設定された画面260を図示している。図示されたシナリオは
図2Cと同様である。この例では、ユーザは支払い情報を(
図2Cのように)文書262に入力していない。その代わりに、ユーザが署名264を添付した後、支払い画面265が表示される。ユーザは表示された支払いオプション(この例では、PayPal又はクレジットカード支払い)から1つを選択し、要求される支払い情報を提供し、支払いを開始する。支払いが処理されると、コントロール部は画面260に戻り、ユーザは、自身の署名を確認し、署名されて完了された文書262の写しを受領する機会が与えられうる。
【0030】
図3Aから3Bは、例示の実施形態に従って、フォーミュラフィールドを設定するためのユーザインターフェイス画面を図示している。ここに記載されるユーザインターフェイス画面はウェブブラウザ(例えば、ESSから与えられるウェブページ)、又はスタンドアローン型の実行ファイル(例えば、デスクトップアプリケーション、モバイルアプリ)などで表示される。
【0031】
図3Aはフォーミュラタグのプロパティ(formula tag properties)を設定するための画面300を図示している。画面300は、署名文書上のフォーミュラコントロール部の配置に伴って表示されうる(例えば、
図2Aに示されるフォーミュラコントロール部209)。ユーザは、個別のフォーミュラフィールドに関するプロパティ及びフォーミュラを特定するために、画面300を操作する。例えば、ユーザはラベル、ツールチップ、及びフォーミュラを特定できる。様々なフォーミュラがサポートされ、定数(例えば、9.5、「テスト」など)、変数、数学演算子(例えば、+、−、*、/など)、論理演算子(例えば、if、and、or、notなど)、関数呼び出し(例えば、date()、time()など)、書式設定演算子(例えば、固定幅の表示など)を含む数式である。あるケースでは、フォーミュラはJavaScript(登録商標)コードブロックのような任意符号系列(arbitrary code sequence)を含みうる。また、値は、単独文書内で(例えば、購入注文から商品数フィールドにアクセスすることにより)、別の文書から(例えば、顧客の入手文書からの会員番号にアクセスすることにより)、任意のデータソースから(例えば、ウェブサービスにアクセスするURL経由で)参照されうる。
【0032】
図3Bは、データフィールドタグのプロパティを設定するための画面310を図示している。画面310は署名文書へのデータフィールドコントロール部の配置に応じて表示されうる。ある実施形態では、フォーミュラは、例えば、購入注文文書内の、商品個数を入力するためのデータフィールドと関連付けられうる。
【0033】
ここに記載される支払いフォーム技術は数多くの利点をもたらす。ビジネスユーザにおいては、購入者は支払い前に承認され(おそらく複数のレベルによる承認)、該購入者は支払いを行う際に明らかに同意書に署名するため、購入者に対してより強力な証拠を提供することとなる。さらに、商取引は、同意と支払いの操作を異なるユーザインターフェイスにまたがるように分割するのではなく、同意と支払いを込み合わせた単独のステップで実施される。さらに、商取引は署名されるため、購入者は支払い拒否に関してより困難を伴うことから、入金取り消しの数は減少しうる。また、ビジネスユーザは、支払いフォームを活用するために、支払いモジュールを統一したり、あるいは高額なカスタムプログラムの代金を支払ったりする必要がない。
【0034】
図4は電子署名取引と関連する支払いを容易にするための一例の処理400のフロー図である。
図4の処理はESS110によって実行されてもよい。
【0035】
図示された処理はブロック402から始まり、該処理は支払いフォームと電子署名文書とを関連付ける。支払いフォームはユーザから支払いデータを入手するべく構成され、また、通常、関連付けられた支払いプロセッサを有する。
【0036】
ブロック404では、処理は署名のためにユーザに対して電子署名文書を表示する。ユーザへの文書の表示は、ESSの文書にアクセスするために使用されうる、文書の転送(例えば電子メール経由で)、又は識別子(例えばリンク)の添付された電子メールの転送を含む。
【0037】
ブロック406では、該処理は支払いフォームを介してユーザから支払いデータを受領する。ユーザが支払いデータを検証及び署名するために、文書をやりとりする際、ユーザは支払いフォームから要求される支払いデータを提供する。この支払いデータは該処理によって受領され、支払いプロセッサによって支払いを開始するために使用される。
【0038】
ブロック408では、処理は、支払いフォームに関連付けられた支払いプロセッサに、支払い処理をさせる。処理は、追加の署名が入手される、制限時間切れなどの1つ以上の状況が発生するまで、支払い処理を遅らせうる。
【0039】
図5は一実施形態に従った、電子署名サービスを実施するための一例のコンピュータシステムのブロック図である。具体的には、
図5はESS110を実行するために使用されうるコンピュータシステム100を図示している。
【0040】
留意すべきであるが、ESS110を実行するために、1又は複数の汎用又は特殊用途のコンピュータシステム/装置が使用されてもよい。また、コンピュータシステム100は、1又は複数の独自のコンピュータシステム/装置を備えてもよく、そして、配信場所(distributed locations)を拡大してもよい。さらに、示した各ブロックは、特定の実施形態に対して1つ以上のブロックを適宜表示しうる。又は他のブロックとの組み合わせで表示してもよい。また、ここに説明される性能を実現するために、ESS110はソフトウェア、ハードウェア、ファームウェア又はそれらの組み合わせによって実施されうる。
【0041】
ここに示される実施形態では、コンピュータシステム100は、コンピュータメモリ(メモリ)101、ディスプレイ102、1又は複数の中央処理装置(CPU)103、入力/出力装置104(例えば、キーボード、マウス、CRT又はLCDディスプレイなど)、他のコンピュータ可読メディア105、及び、ネットワーク150に接続されたネットワーク接続106を含む。ESS110はメモリ101に内在するように図示されている。他の実施形態では、コンテンツの一部、ESS110のいくつかの又はすべての構成要素(コンポーネント)は他のコンピュータ可読メディア105に保存及び/又は伝送されてもよい。ESS110の構成要素は、好ましくは、1つ以上のCPU103上で実行し、且つ、ここに説明される支払い処理を含む電子署名処理を管理する。また、他のコード又はプログラム130(例えば、管理用インターフェイスやウェブサーバなど)、及び、データリポジトリ(data repository)120のような、他の可能性のあるデータリポジトリが、メモリ101に内在して、好ましくは1つ以上のCPU103で実行する。留意すべきであるが、
図5の1つ以上の構成要素は、特定の実施において存在しなくてもよい。例えば、ある実施形態は、他のコンピュータ可読メディア105又はディスプレイ102を含まないことがある。
【0042】
ESS110は、サービスマネージャ111、ユーザインターフェイス(UI)マネージャ112、電子署名サービスアプリケーションプログラムインターフェイス(API)113、支払いマネージャ114、及び電子署名サービスデータ保存部115を含む。
【0043】
一般的に、ESS110は、サービスマネージャ111及び関連するロジックを介して、送信者クライアントデバイス160及び/又は署名者クライアントデバイス161を操作するユーザのために又は該ユーザの代わりに、電子署名関連機能を実行する。一実施形態では、送信者クライアントデバイス160を操作する送信者は、電子署名されるべき文書をESS110内にインポート(例えば、伝送、アップロード、送信)する。ESS110は文書をデータ保存部115に確実(安全)に保存する。安全な文書保存は、ハッシュ、メッセージダイジェスト(message digests)等の生成のような、文書改ざんを検出するための暗号技術を使用することを含む。
【0044】
署名クライアントデバイス161を操作する署名者は、ESS110によって保存された文書にアクセスし、該文書を閲覧し、且つ、該文書に署名する。ある実施形態では、ESS110は、署名者クライアントデバイス161に文書の画像又は他の表示形態を伝送し、続いて、署名者の署名(又は署名の意思)の表示をESS110に伝送する。そうすると、ESS110はデータ保存部115内の文書に関連づけられた署名者の署名を安全に保存する。
【0045】
ここに記載されるように、支払いマネージャ114は電子署名文書を介した支払いを円滑にする。最初に、送信者クライアントデバイス160を操作する送信者又は他のユーザが、支払いフォーム及び任意に1つ以上のフォーミュラフィールドと、データ保存部115に保存された電子署名文書とを関連付けうる。次に、署名クライアントデバイス161を操作する署名者は、署名文書に関連付けられた支払いフォームを介して、クレジットカード情報などの支払いデータを提供しうる。そして、支払いマネージャ114は提供された支払いデータを支払いプロセッサ165に転送し、支払いが処理される。さらに、支払いマネージャ114は、署名者クライアントデバイス161から受領された支払いデータ115と、支払いプロセッサ165から受領された商取引情報とをデータ保存部115に安全に保存する。
【0046】
UIマネージャ112は、ESS110及びその様々な構成要素とのユーザ相互作用を容易にするビュー及びコントローラを提供する。例えば、UIマネージャ112は、ESS110に対話型アクセスをもたらし、これによりユーザは署名のための文書をアップロード又はダウンロードし、文書を検証及び変更し、署名された文書を受領者に伝送又は提供することができる。ある実施形態では、UIマネージャ112の機能へのアクセスは、場合によりその他のプログラム130の1つとして実行するウェブサーバを介して行われうる。このような実施形態では、クライアントデバイス160又は161の一方で実行するウェブブラウザ(又は他のクライアント)を操作するユーザは、UIマネージャ112を介してESS110にインタラクト(相互作用)可能である。
【0047】
API113はESS110の1以上の機能へのプログラム的アクセスを提供する。例えば、API113は、他のプログラム130のうちの1つ又はいくつかの他のモジュールによって起動されうるESS110の1つ以上の機能に対して、プログラムインターフェイスを提供することができる。このように、API113は、(例えば、ESS110の機能をウェブアプリケーションに統合するための)ユーザインターフェイス、プラグイン、ニュースフィード、アダプタといった、サードパーティのソフトウェアの開発を助ける。さらに、少なくともいくつかの実施形態では、API113は、ESS110の様々な機能にアクセスするために、支払いプロセッサ165のような遠隔エンティティ(remote entities)を介して起動又はアクセスされてもよい。例えば、支払いプロセッサ165は毎日の商取引ログをAPI113経由でESSへ転送又はインポートしてもよい。
【0048】
データ保存部115はESS110の他のモジュールによって情報を保存及び/又は通信することに使用される。ESS110の構成要素は、文書、署名、追跡されたフォームエントリ(追跡フォーム入力、tracked form entries)などを含む、様々な種類の情報を記録することに、データ保存部115を使用する。ESS110の構成要素は、主にデータ保存部115を通って通信するように記載されているが、メッセージ受け渡し、関数呼び出し、パイプ、ソケット、共有メモリなど、その他の通信方法も考慮される。
【0049】
ESS110は、ネットワーク150を介して、クライアントデバイス160、161及び支払いプロセッサ165と相互作用する。ネットワーク150は、1つ以上のメディア(例えば、ツイストペア、同軸ケーブル、光ファイバー、無線周波数)、ハードウェア(例えば、ルータ、スイッチ、リピータ、トランスシーバ)、及び、遠隔に位置する人間及び/又は装置の間の通信を容易にする1つ以上のプロトコル(例えば、TCP/IP、UDP、Ethernet(登録商標)、Wi−Fi、WiMAX)の組み合わせでよい。ある実施形態では、ネットワーク150は複数の異なる通信チャネル又は機構(例えばケーブルベース又はワイヤレス)であってもよく、あるいは、これらを含んでもよい。クライアントデバイス160及び161は、パソコン、ラップトップコンピュータ、スマートフォン、携帯端末、タブレット型コンピュータなどを含む。
【0050】
例示の実施形態では、ESS110の構成要素/モジュールは標準的なプログラミング技術を使って実行される。例えば、電子署名サービス110は、CPU103上で作動する「固有の(native)」実行ファイルとして、1つ以上の静的又は動的ライブラリに準じて実行されうる。別の実施形態では、ESS110は、他のプログラム130の1つとして実行する仮想記憶デバイス(virtual machine)によって命令が処理されるときに実行されうる。一般的に、この分野で知られる広範なプログラミング言語を、この例示の実施形態を実行するために採用可能であり、それは様々なプログラミング言語パラダイムの代表的な実装を含む。該プログラミング言語パラダイムは、以下に限定されないが、オブジェクト指向言語(例えば、Java(登録商標) C++、C#、Visual Basic.Net、Smalltalkなど)、関数型言語(例えば、ML、Lisp、Schemeなど)、プロシージャ言語(例えば、C、Pascal、Ada、Modulaなど)、スクリプト言語(例えば、Perl、Ruby、Python、JavaScript(登録商標)、VBScriptなど)、及び、宣言型言語(例えば、SQL、Prologなど)を含む。
【0051】
上記の実施形態は、既知の又は独占所有権を有する同期又は非同期のクライアントサーバコンピュータ技術を使用しうる。また、多様な構成要素は、例えば、単体のCPUコンピュータシステム上で作動する実行ファイルのような、より単純なプログラミング技術を使って実行されてもよい。あるいは、多様な構成要素は、当業者に知られている様々な構築技術を使用して分解されてもよい。この様々な構築技術は、以下に限定されないが、それぞれが1つ以上のCPUを備える1つ以上のコンピュータシステムで作動する、マルチ・プログラミング、マルチスレッディング、クライアント―サーバ、又はピアツーピアを含む。ある実施形態は、同時かつ非同期に実行し、且つ、メッセージ受け渡し技術を利用して通信してもよい。また、同様の同期の実施形態もサポートされる。また、他の機能は、各構成要素/モジュールによって実施及び/又は実行可能であり、異なる命令においても、及び、異なる構成要素/モジュールによっても、ここに説明した機能を実現可能である。
【0052】
さらに、データ保存部118のような、ESS110の一部として保存されるデータに対するプログラミングインターフェイスは、例えば、C、C++、C#、Java(登録商標) APIを通して;ファイル、データベースもしくは他のデータリポジトリへのアクセスのためのライブラリによる;XMLのようなスクリプト言語を通して;又は、ウェブサーバ、FTPサーバ、又は保存データへのアクセスを提供する他の種類のサーバを通して、標準的機構(スタンダードメカニズム)によって利用可能である。図示されるデータ保存部118は、1つ以上のデータベースシステム、ファイルシステム、又は、このような情報を保存するための1つ以上の任意の技術、あるいは、上記の組み合わせとして実施され、普及しているコンピュータ技術を使用した実施を含んでいる。
【0053】
プログラム及びデータの異なる構成及び記憶場所(location)は、上記の技術の使用のために考慮される。広く知られている様々なコンピュータ技術は、以下に限定されないが、TCP/IPソケット、RPC、RMI、HTTP、ウェブサーバ(XIL−RPC、JAX-−RPC、SOAPなど)を含む既知の方法で、図示された実施形態の構成要素を実行するのに適切である。他の変形例も可能である。また、他の機能性が各構成要素/モジュールによって提供可能であり、あるいは、既存の機能性が異なる方法によって構成要素/モジュールの中に分配可能である。この場合においても、ここに説明した機能を達成する。
【0054】
さらに、ある実施形態では、ESS110のいくつか又はすべての構成要素は、少なくとも部分的なファームウェア及び/又はハードウェアのような、他の手段で実行又は提供されてもよい。これは、以下に限定されないが、1つ以上の特定用途向け集積回路(「ASIC」)、標準集積回路、適切な命令を実行するコントローラを含み、且つ、マイクロコンロトーラ及び/又は内蔵コントローラ、フィールドプログラマブルゲートアレイ(「FPGA」)、複合プログラム可能論理デバイス(「CPLD」)などを含む。いくつかの又はすべてのシステム構成要素及び/又はデータ構造は、コンピュータ可読メディア(例えば、ハードディスク;メモリ;コンピュータネットワークもしくは無線セルラーネットワーク又は他のデータ伝送メディア、あるいは、DVDもしくはフラッシュメモリデバイスのような、該当ドライブからの読み取られる、又は、該当接続を介して読み取られる携帯媒体)にコンテンツとして(例えば、実行ファイル又は他のマシン可読ソフトウェアの命令又は構築データとして)記録されうる。これにより、コンピュータ可読メディア及び/又は1つ以上の関連するコンピュータシステム又は装置が、説明した技術の少なくともいくつかを実行するようにコンテンツを実行、使用又は提供することを可能とし、又は、そのように設定する。また、いくつかの又はすべてのシステム構成要素及びデータ構造は、様々なコンピュータ可読伝達メディアにデジタル信号として(例えば、搬送波の一部としてエンコードされることにより、又は、アナログ又はデジタル伝播信号の一部として含まれることにより)記録されることができる。そして、それらは無線ベースのメディア、及び有線/ケーブルベースのメディアを通じて伝送され、様々な形式(例えば、単一もしくは多重化アナログ信号の一部、又は、複数の個別デジタルパケットもしくはフレーム)を有し得る。このようなコンピュータプログラム製品は、別の実施形態では異なる形態を取る可能性もある。したがって、この開示の形態は他のコンピュータシステム構造で実施されてもよい。
【0055】
当業者がここに記される発明の思想とは離れて、既出の修正を除く多数の修正を加えることが可能であることは明らかである。さらに、明細書及びクレームを解釈する際、すべての用語は文脈に一致する最大限に考え得る方法で解釈されるべきである。具体的には、「含む」「備える」などの用語は、言及される要素、構成要素又は手段が、明確に言及されていないその他の要素、構成要素、又は手段を表示、使用又はそれらと組み合わされることを示し、よって要素、構成要素又は手段を非排他的な方法で言及すると解釈されるべきである。明細書及び請求書がA、B、C・・・Nから成るグループから選択された少なくとも何か1つを言及する場合、テキストは(A、B、C)のグループから1つ以上の要素をNに加えるという解釈ではなく、(A、B、C・・・N)のグループからただ1つの要素を要求していると解釈されるべきである。
【0056】
2012年3月22日に出願された米国仮出願61/614,383、発明の名称「SYSTEM AND METHOD FOR FORMULA CALCULATION AND PAYMENT AUTHORIZATION WITH ELECTRONIC SIGNATURE」を含む、上記で引用されたすべての参考文書は、全体として言及することにより組み込まれている。組み込まれた参考文書における用語の定義又は使用が一致しない、又はここで提示される用途の定義に反している場合、ここで提示される該用語の定義が優先される。
【0057】
上記のとおり、本発明の好ましい実施形態が図示、記載されているが、本発明の思想及び技術範囲から逸脱することなく多数の変更がなされうる。したがって、本発明の技術範囲は、好ましい実施形態の開示によって限定されるものではない。代わりに、本発明は添付の請求項を参照して決定される。