【実施例1】
【0017】
この実施例の購入履歴管理装置は、インターネットに接続して、ユーザーに購入履歴管理サービスを提供する購入履歴管理サーバーとして実装されている。
【0018】
図1は、この購入履歴管理サーバー1による購入履歴管理サービスの実施態様を説明するためのネットワーク図である。ここで、インターネットには、購入履歴管理サーバー1の他に、複数のオンラインショップのサーバー5、メールサーバー7と、ユーザーがオンラインショップからの商品を購入する際に利用するパーソナルコンピュータ3が接続している。この購入履歴管理サービスを利用するユーザーは、インターネット上の複数のオンラインショップを利用しており、夫々のオンラインショップに電子メール情報を含む個人情報を登録している。
【0019】
また、ユーザーは、購入履歴管理サービスを利用する為に、予め各々のオンラインショップでの商品購入に利用する電子メールのアカウント情報を購入履歴管理サーバー1に登録しておく。このアカウント情報は、ユーザーIDとパスワードを含み、購入履歴管理サーバー1は、自由にユーザー宛の電子メールを取得することができる。
【0020】
購入履歴管理サーバー1は、後述の購入履歴データベースを備えており、個々のユーザー毎に、オンラインショップでの商品購入データをの履歴を保存管理している。
【0021】
なお、ユーザーは例えば法人であり、その場合、一つの法人について商品購入に関わる担当者は一般に複数存在している。従って、商品購入に利用する電子メールのアカウントも複数登録され、この複数の電子メール宛の商品購入に関する情報は、この法人ユーザーの情報として扱われる。
【0022】
商品購入を行うには、ユーザーは、例えばパーソナルコンピュータ3から、オンラインショップのサーバー5が配信するWebサイトへログインして、商品購入の申し込みを行う。これに対して、オンラインショップのサーバー5は、登録してあるメールアドレスへ、商品購入の申し込みを受理した旨の返信メールを送信する。この電子メールは、メールサーバー7を介して、ユーザーのパーソナルコンピュータ3へ送信される。電子メールは、一定期間メールサーバー7に保存される。
【0023】
購入履歴管理サーバー1は、定期的にメールサーバー7へアクセスして、このユーザー宛の電子メールを取得する。そして、この電子メールの内容から商品購入データを抽出して、購入履歴データベースを更新する。
【0024】
図2および
図3に、この購入履歴データベースを構成する2つのテーブルを示す。
図2は1つの注文が一つのレコードとなっている注文テーブルを示し、
図3は一つの購入商品が一つのレコードとなっている購入商品テーブルを示している。
【0025】
注文テーブルは、ドメイン名、注文番号、ユーザーID、発注メールアドレス、注文日、送料、合計金額および支払い方法のフィールドを含んでいる。ドメイン名は、この注文を行った発注先のオンラインショップのドメイン名である。注文番号は、このオンラインショップで当該注文に割り振った識別番号である。ユーザーIDは、この購入履歴管理サービスのユーザーIDである。発注メールアドレスは、この注文を行ったユーザーのメールアドレス(返信メールの宛先アドレス)である。注文日は、この注文を行った日時である。送料は、この注文で請求される送料である。合計金額は、この注文で購入する商品の価格の合計額である。
【0026】
上記各テーブルのフィールドの値は、オンラインショップからの返信メールを解析することで取得される。オンラインショップからの返信メールは、そのオンラインショップ毎に決まった定形の様式となっている。購入履歴管理サーバー1の返信メール解析プログラムには、主なオンラインショップの定形様式に応じて作成されたサブルーチンが設けられており、このサブルーチンによって上記各テーブルのフィールドの値が抽出される。例えば、文頭から検索して最初の文字列「合計」の後に空白をおいて続く数値を表す文字列を、合計金額として抽出する。なお、これらの主なオンラインショップを登録サイトと呼ぶ。
【0027】
図4は、購入履歴管理サーバー1が、購入履歴データベースを更新するプロセスを示すフローチャートである。まず、購入履歴管理サーバー1は、メールクライアントとしてメールサーバー7にアクセスしてユーザー宛の電子メールを取得する(ステップS1)。取得した電子メールの送信元を確認し、登録サイトであるか否かを決定する(ステップS2)。登録サイトであれば、対応するサブルーチンによって、商品購入データすなわち上記各テーブルのフィールドの値が抽出される(ステップS3)。そして、この商品購入データによって購入履歴データベースを更新する(ステップS4)。
【0028】
ステップS2で、取得した電子メールの送信元が登録サイトでなければ、取得した電子メールの内容を解析し、オンラインショップの返信メールであるか否かを決定する。それには、電子メールの内容を解析し、一般的な返信メールに含まれるキーワードや表現などを検索し、商品購入データの抽出を試みる(ステップS5)。
【0029】
例えば、「注文番号」や「発注番号」というキーワードを電子メールの内容から検索し、それに続く番号があれば、それを注文番号の値であるとする。また、「商品名」や「注文内容」というキーワードに続いて、何らかの商品の名前があれば、それが商品名であるとする。その他のフィールドの値も、同様の解析で取得する。
【0030】
商品購入データの抽出に成功すれば、オンラインショップの返信メールであると判断する。そして、この商品購入データによって購入履歴データベースを更新する(ステップS4)。商品購入データの抽出に失敗すれば、この電子メールは、商品購入の返信メールではないと判断し、処理を終了する(ステップS6)。
【0031】
なお、ステップS5において、電子メールの内容解析によっても一部のフィールドの値が得られなくても、全体の内容から返信メールであると判断できる場合には、返信メールであると推定し、その内容を購入履歴データベースに反映させる。例えば、電子メールの内容が
図5のようなものである場合には、「ご注文を承りました」、「ありがとうございます」といった文字列や、「注文」、「購入」、「商品」といったキーワードが存在する。これは、当該メールが返信メールであるとする傍証となりえる。この場合、得られなかった一部のフィールドの値は空欄としておく。
【0032】
また、上記実施例で、購入履歴管理サーバー1が処理する返信メールは、登録サイトから送信された返信メールに限定しても良い。その場合、登録サイト以外のサイトで購入した際には、商品購入データ(フィールドの値)を、購入履歴管理サーバー1の専用のWebページで、手動で入力するようにする。
【0033】
入力された商品購入データの内容と、元の返信メールを比較して、データ位置のプロシージャを求める。例えば、入力された商品名(フィールドの値)が、メール文頭から2個めの「商品」の後の単語となっている場合、「商品」と「2」の組み合わせがプロシージャを決定するパラメータとなる。すなわち、このプロシージャでは、文頭から「商品」を2回検索し、2度めの「商品」の直後のスペースや記号を挟んで続く単語を商品名として取得する。
【0034】
このようにしてプロシージャが求まると、以後、このサイトは、この購入履歴管理サービス全体の登録サイトとして扱われる。従って、初めて利用するサイトであっても、他のユーザーが既に利用し、登録を行っていれば、自動で購入履歴データベースに反映させられることになる。なお、プロシージャは機械学習やAIの活用で自動化の精度を上げていくことができる。
【0035】
次に、ユーザーがこの購入履歴管理サービスを利用する際の手順を説明する。購入履歴管理サーバー1は、Webサーバーとして機能し、購入履歴データベースに格納されている情報に基づいて、ユーザーの購入履歴に関する情報をWebページとして提供する。
【0036】
まず、パーソナルコンピュータ3やスマートフォンなどの端末を用いて、インターネット上の購入履歴管理サーバー1へログインする。その際には、この購入履歴管理サーバー1に登録してあるユーザーIDとパスワードを用いる。
【0037】
購入履歴管理サーバー1へログインすると、最初に、ユーザーのパーソナルコンピュータ1の画面には
図6に示したようなWebページが表示される。ここには、ユーザーが過去に購入した商品の一覧が表示されている。初期画面としては、表示される購入商品は新しい順にならんでいる。
【0038】
ここで、購入商品をキーワードで検索すると、表示される商品を絞り込むことができる。
図7の例では、「用紙A4」というキーワードで検索された結果が示されている。また、
図8に示されているように、並べ替えを「低価格順」に変更すると、価格の安い順に表示される。その他、購入先で絞り込んだり、指定した期間の購入で絞り込んだりできるが、その技術は一般的によく知られているので、その詳細は省略する。
【0039】
なお、企業内で、担当者以外の社員が、自分のメールアドレスを用いてオンラインショップから商品の購入を行うことがある。しかし、購入履歴管理サーバー1の登録アドレスではないため、購入履歴管理サーバー1は、この購入を購入履歴データベースに反映させることができない。
【0040】
そこで購入履歴管理サーバー1は、このような例外的な購入も受付け、購入履歴データベースに反映させる為のメールアドレスを設けている。当該担当者以外の社員は、購入履歴管理サーバー1のこのメールアドレス宛に、このオンラインショップの返信メールを転送する。すると、購入履歴管理サーバー1は、この転送された返信メールを、登録されたメールアドレス宛の返信メールと同様に処理し、購入履歴データベースを更新する。