以下に、本願に係る情報処理装置、情報処理方法及び情報処理プログラムを実施するための形態(以下、「実施形態」と呼ぶ)について図面を参照しつつ詳細に説明する。なお、この実施形態により本願に係る情報処理装置、情報処理方法及び情報処理プログラムが限定されるものではない。また、以下の各実施形態において同一の部位には同一の符号を付し、重複する説明は省略する。
〔1.情報処理の一例〕
まず、図1を用いて、実施形態に係る情報処理の一例について説明する。図1は、実施形態に係る情報処理の一例を示す図である。図1に示す情報処理は、ユーザ端末10と店舗端末20と配送会社サーバ50と情報処理装置100とによって行われる。
ユーザ端末10は、電子商店街を利用するユーザにより使用される情報処理装置である。ユーザ端末10は、例えば、スマートフォンや、タブレット型端末や、ノート型PC(Personal Computer)や、携帯電話機や、PDA(Personal Digital Assistant)等により実現される。なお、以下では、ユーザ端末10をユーザと同一視する場合がある。すなわち、以下では、ユーザをユーザ端末10と読み替えることもできる。
また、以下では、ユーザID「U1」により特定されるユーザを「ユーザU1」とする場合がある。このように、以下では、「ユーザU*(*は任意の数値)」と記載した場合、そのユーザはユーザID「U*」により特定されるユーザであることを示す。例えば、「ユーザU2」と記載した場合、そのユーザはユーザID「U2」により特定されるユーザである。
また、以下では、ユーザ端末10を利用するユーザに応じて、ユーザ端末10をユーザ端末10-1、10-2として説明する。例えば、ユーザ端末10-1は、ユーザU1により使用されるユーザ端末10である。また、例えば、ユーザ端末10-2は、ユーザU2により使用されるユーザ端末10である。また、以下では、ユーザ端末10-1、10-2について、特に区別なく説明する場合には、ユーザ端末10と記載する。
店舗端末20は、電子商店街に出店している店舗の管理者により使用される情報処理装置である。例えば、店舗端末20は、スマートフォンや、タブレット型端末や、ノート型PCや、携帯電話機や、PDA等である。なお、以下では、店舗端末20を店舗の管理者と同一視する場合がある。また、以下では、店舗を店舗の管理者と同一視する場合がある。すなわち、以下では、店舗を店舗端末20と読み替えることもできる。
また、以下では、店舗ID「S1」により特定される店舗を「店舗S1」とする場合がある。店舗S1は、電子商店街に出店している店舗である。また、管理者ID「A1」により特定される管理者を「管理者A1」とする場合がある。
また、以下では、店舗端末20を利用する店舗の管理者に応じて、店舗端末20を店舗端末20-1、20-2として説明する。例えば、店舗端末20-1は、店舗S1の管理者A1により使用される店舗端末20である。また、例えば、店舗端末20-2は、店舗S2の管理者A2により使用される店舗端末20である。また、以下では、店舗端末20-1、20-2について、特に区別なく説明する場合には、店舗端末20と記載する。
配送会社サーバ50(図5参照)は、配送会社によって管理されるサーバ装置である。配送会社サーバ50は、配送方法に関する各種の情報を提供する。具体的には、配送会社サーバ50は、配送方法に関する情報を配信するサービスを提供しており、API(Application Programming Interface)を介して、配送方法に関する各種情報を情報処理装置100に配信する。
また、以下では、配送会社サーバ50を管理する配送会社に応じて、配送会社サーバ50を配送会社サーバ50-1、50-2として説明する。例えば、配送会社サーバ50-1は、配送会社#1により管理される配送会社サーバ50である。また、例えば、配送会社サーバ50-2は、配送会社#2により管理される配送会社サーバ50である。また、以下では、配送会社サーバ50-1、50-2について、特に区別なく説明する場合には、配送会社サーバ50と記載する。
情報処理装置100は、インターネットを介して商品を販売する複数の店舗の商品販売ページを一つのサービスにまとめて、様々な商品を販売する、いわゆる電子商店街(あるいは電子モール)と称されるサービスを提供するサーバ装置である。図1に示す例では、情報処理装置100は、電子商取引で取り扱われる商品に関する商品情報と商品の配送方法に関する配送情報とを対応付けて商品毎に記憶部に記憶する。そして、情報処理装置100は、記憶部に記憶された商品情報と配送情報とに基づいて、注文者によって選択された複数の商品の配送情報を商品毎に抽出する。
ここから、図1を用いて、情報処理の流れについて説明する。図1は、実施形態に係る情報処理の一例を示す図である。図1に示す例では、情報処理装置100は、商品に関する商品情報と商品に対応する配送セットに関する配送セット情報とを各店舗の店舗端末20から取得する(ステップS11)。具体的には、情報処理装置100は、小型の商品である商品M1(靴下#1)に関する商品情報と商品M1に対応する配送セットDS1に関する配送セット情報とを商品M1の出品者である店舗S1の店舗端末20-1から取得する。また、情報処理装置100は、大型の商品である商品M2(冷蔵庫#2)に関する商品情報と商品M2に対応する配送セットDS2に関する配送セット情報とを商品M2の出品者である店舗S2の店舗端末20-2から取得する。
続いて、情報処理装置100は、複数の商品の注文を注文者から受け付ける(ステップS12)。具体的には、情報処理装置100は、電子商店街のカートに複数の商品を追加した注文者から、複数の商品の注文を一つにまとめて配送する注文を受け付ける。より具体的には、情報処理装置100は、靴下である商品M1と冷蔵庫である商品M2の注文O1に関する注文情報をユーザ端末10から取得する。ここで、電子商取引の業界では、複数の注文を一つにまとめて配送することを同梱と称する場合がある。例えば、注文者は、複数の注文を一つにまとめることで荷物の受取りが1回となり、また送料及び決済手数料などの負担も1回分となるメリットがある。なお、情報処理装置100は、所定期間内に同一の注文者から受け付けた注文であれば、複数の商品の注文を別々に受け付けた場合であっても、複数の商品の注文を一つの注文として取り扱ってもよい。例えば、情報処理装置100は、所定期間内に同一の注文者から商品M1の注文と商品M2の注文を受け付けた場合は、商品M1の注文と商品M2の注文を一つの注文ID「O1」で識別される一つの注文として取り扱ってもよい。
続いて、情報処理装置100は、注文を受け付けた複数の商品について、商品の配送方法の組である配送セットに関する配送セット情報を商品毎に抽出する(ステップS13)。具体的には、情報処理装置100は、商品M1について、配送方法D1、配送方法D2、配送方法D3の3つの配送方法の組である配送セットDS1に関する配送セット情報を抽出する。また、情報処理装置100は、商品M2について、配送方法D1と配送方法D2の2つの配送方法の組である配送セットDS2に関する配送セット情報を抽出する。
続いて、情報処理装置100は、商品毎に抽出した配送セットに含まれる配送方法の中に共通する配送方法が存在する場合には、共通する配送方法を抽出する(ステップS14)。具体的には、情報処理装置100は、商品M1について抽出した配送セットDS1に含まれる配送方法(配送方法D1、配送方法D2、配送方法D3)と商品M2について抽出した配送セットDS2に含まれる配送方法(配送方法D1、配送方法D2)とを比較して、共通する配送方法である配送方法D1と配送方法D2を抽出する。
続いて、情報処理装置100は、商品のお届け日の候補日であるお届け指定可能日を配送方法毎に抽出する。具体的には、情報処理装置100は、商品M1を配送方法D1によって配送する場合のお届け指定可能日MD11を特定する。続いて、情報処理装置100は、カレンダーの日付の中から特定したお届け指定可能日MD11を抽出する。また、情報処理装置100は、商品M2を配送方法D1によって配送する場合のお届け指定可能日MD12を特定する。続いて、情報処理装置100は、カレンダーの日付の中から特定したお届け指定可能日MD12を抽出する。このように、情報処理装置100は、配送方法D1について、複数の商品のお届け指定可能日を抽出する(ステップS15-1)。また、情報処理装置100は、商品M1を配送方法D2によって配送する場合のお届け指定可能日MD21を特定する。続いて、情報処理装置100は、カレンダーの日付の中から特定したお届け指定可能日MD21を抽出する。また、情報処理装置100は、商品M2を配送方法D2によって配送する場合のお届け指定可能日MD22を特定する。続いて、情報処理装置100は、カレンダーの日付の中から特定したお届け指定可能日MD22を抽出する。このように、情報処理装置100は、配送方法D2について、複数の商品のお届け指定可能日を抽出する(ステップS15-2)。
続いて、情報処理装置100は、複数の商品の間で共通するお届け指定可能日が存在する場合には、共通するお届け指定可能日を複数の商品のお届け指定可能日として配送方法毎に抽出する。言い換えると、情報処理装置100は、複数の商品の注文の間で共通するお届け指定可能日が存在する場合には、共通するお届け指定可能日を、複数の商品の注文を一つにまとめて配送する場合のお届け指定可能日として配送方法毎に抽出する。具体的には、情報処理装置100は、商品M1を配送方法D1によって配送する場合のお届け指定可能日MD11と商品M2を配送方法D1によって配送する場合のお届け指定可能日MD12とを比較して、共通するお届け指定可能日RD1を抽出する。このように、情報処理装置100は、配送方法D1によって、商品M1と商品M2をお届けする場合のお届け指定可能日RD1を決定する(ステップS16-1)。また、情報処理装置100は、商品M1を配送方法D2によって配送する場合のお届け指定可能日MD21と商品M2を配送方法D2によって配送する場合のお届け指定可能日MD22とを比較して、共通するお届け指定可能日RD2を抽出する。このように、情報処理装置100は、配送方法D2によって、商品M1と商品M2をお届けする場合のお届け指定可能日RD2を決定する(ステップS16-2)。
続いて、情報処理装置100は、複数の商品のお届け指定可能日として配送方法毎に決定したお届け指定可能日を配送方法毎にユーザU1に対して提案する(ステップS17)。具体的には、情報処理装置100は、商品M1と商品M2を配送方法D1によって一緒にお届けする場合のお届け指定可能日RD1をユーザU1に対して提案する。また、情報処理装置100は、商品M1と商品M2を配送方法D2によって一緒にお届けする場合のお届け指定可能日RD2をユーザU1に対して提案する。
なお、情報処理装置100は、お届け指定可能日とともに、商品の代金の支払方法を配送方法毎に抽出する。そして、情報処理装置100は、抽出した支払方法をお届け指定可能日とともに配送方法毎にユーザU1に対して提案する。具体的には、情報処理装置100は、お届け指定可能日RD1とともに、商品M1と商品M2を配送方法D1によって一緒にお届けする場合の商品の代金の支払方法をユーザU1に対して提案する。また、情報処理装置100は、お届け指定可能日RD2とともに、商品M1と商品M2を配送方法D2によって一緒にお届けする場合の商品の代金の支払方法をユーザU1に対して提案する。
上述したように、情報処理装置100は、電子商取引で取り扱われる商品に関する商品情報と商品の配送方法に関する配送情報とを対応付けて商品毎に記憶部に記憶する。そして、情報処理装置100は、記憶部に記憶された商品情報と配送情報とに基づいて、注文者によって選択された複数の商品の配送情報を商品毎に抽出する。これにより、情報処理装置100は、複数の商品を選択した注文者に対して、商品毎に配送方法を選択することを可能にする。したがって、情報処理装置100は、電子商取引におけるユーザビリティを向上させることができる。
(データベースの構造の一例)
次に、図2を用いて、実施形態に係るデータベースの構造について説明する。図2を用いて、実施形態に係るデータベースの構造の一例を示す図である。なお、実施形態に係るデータベースとは、具体的には、記憶部120(図6参照)を指す。情報処理装置100は、電子商取引で取り扱われる商品に関する商品情報と商品の配送方法に関する配送情報とを対応付けて商品毎に記憶部120に記憶する。
一般的に、配送会社によって、実施されている配送方法の種類は異なる。また、配送方法の種類には、宅配便、メール便、冷凍便等が存在する。そこで、以下では、配送方法の種類が同じであっても、配送会社が異なれば、異なる配送方法として取り扱う。例えば、配送方法の種類が同じ宅配便であっても、配送会社#1による宅配便は「宅配便#1」(以下、適宜「配送方法D1」と記載する。)、配送会社#2による宅配便は「宅配便#2」(以下、適宜「配送方法D2」と記載する。)のように異なる配送方法として記載する。
また、一般的に、配送方法の種類の数は限られている。そこで、情報処理装置100は、商品の配送方法の組である配送セットを生成する。例えば、情報処理装置100は、ある商品について、宅配便#1(配送方法D1)、宅配便#2(配送方法D2)、メール便#3(配送方法D3)の3つの配送方法が可能である場合、配送方法D1、配送方法D2、配送方法D3の3つの配送方法の組である配送セットDS1を生成する。続いて、情報処理装置100は、配送セットDS1を生成すると、配送方法D1、配送方法D2、配送方法D3の3つの配送方法と配送セットDS1とを対応付けて記憶部120に記憶する。
図2では、情報処理装置100は、商品1と配送セットDS1とを紐づけて記憶部120に記憶する。このように、情報処理装置100は、配送情報として、商品の配送方法の組である配送セットに関する配送セット情報と商品情報とを対応付けて商品毎に記憶部120に記憶する。例えば、情報処理装置100は、商品情報である商品IDと配送セット情報である配送セットIDとを対応付けて商品毎に記憶部120に記憶する。
また、一般的に、送料は、配送方法毎に異なる。また、送料は、商品のお届け先の住所である都道府県毎に異なる。例えば、同一の配送方法によって同一の商品を配送する場合であっても、お届け先の住所が東京都である場合と、北海道である場合とでは、送料が異なる。また、送料は、商品のサイズ(又は重さ)によっても異なる。例えば、大型の商品である冷蔵庫#2の送料は、小型の商品である靴下#1の送料に比べると、高い場合が多いと考えられる。また、送料は、商品が在庫として保管されている倉庫の所在地によって異なる。例えば、商品である靴下#1は、大阪府の倉庫に在庫が保管されているとする。また、商品である冷蔵庫#2は、東京都の倉庫に在庫が保管されているとする。このような場合、同一の配送方法によって同一のお届け先に商品を配送する場合であっても、靴下#1は大阪府から出荷され、冷蔵庫#2は東京都から出荷されるため、送料が異なる。なお、以下では、配送方法が同じであっても、商品の出荷元である倉庫の所在地が異なれば、異なる配送方法として取り扱う。例えば、配送方法が同じ配送会社#1による宅配便#1であっても、倉庫の所在地が大阪府である宅配便は「宅配便#1(大阪)」、倉庫の所在地が東京都である宅配便は「宅配便#1(東京)」のように異なる配送方法として記載する。
図2では、情報処理装置100は、配送方法D1と送料とを紐づけた組の情報である送料情報を記憶部120に記憶する。また、情報処理装置100は、送料情報と配送セットDS1とを紐づけて記憶部120に記憶する。また、情報処理装置100は、配送セットDS1と商品1とを紐づけて記憶部120に記憶する。このように、情報処理装置100は、商品の送料と配送方法とを配送方法毎に対応付けた組の情報である送料情報と商品情報とを対応付けて商品毎に記憶部120に記憶する。
また、一般的に、商品の代金の支払方法は、配送方法毎に異なる。例えば、商品を宅配便によって配送する場合には、一般的に、クレジットカード払い(以下、「クレジットカード」と記載する。)、代金引換(以下、「代引き」と記載する。)、銀行振込による支払(以下、「銀行振込」と記載する。)、コンビニでの支払(以下、「コンビニ払い」と記載する。)等によって商品の代金を支払うことができる。一方、商品をメール便によって配送する場合には、一般的に、代引きによって商品の代金を支払うことはできない。より具体的には、配送方法が宅配便#1である場合の支払方法としては、クレジットカード、代引き、銀行振込の3つが可能である。また、配送方法がメール便#3である場合の支払方法としては、クレジットカードのみが可能である。このように、各配送方法には、一の支払方法の組が対応する。
また、一般的に、支払方法の種類の数は限られている。そこで、情報処理装置100は、商品の代金の支払方法の組である支払セットを生成する。例えば、情報処理装置100は、ある配送方法について、クレジットカード、代引き、銀行振込の3つの支払方法が可能である場合、クレジットカード(支払方法P1)、代引き(支払方法P2)、銀行振込(支払方法P3)の3つの支払方法の組である支払セットPS1を生成する。続いて、情報処理装置100は、支払セットPS1を生成すると、支払方法P1、支払方法P2、支払方法P3の3つの支払方法と支払セットPS1とを対応付けて記憶部120に記憶する。
図2では、情報処理装置100は、配送方法D1と商品代金の支払方法とを紐づけた組の情報である第1セット情報を記憶部120に記憶する。また、情報処理装置100は、第1セット情報と配送セットDS1とを紐づけて記憶部120に記憶する。また、情報処理装置100は、配送セットDS1と商品1とを紐づけて記憶部120に記憶する。このように、情報処理装置100は、商品の代金の支払方法に関する支払情報と配送情報とを配送方法毎に対応付けた組の情報である第1セット情報と商品情報とを対応付けて商品毎に記憶部120に記憶する。例えば、情報処理装置100は、第1セット情報として、支払情報である支払セットIDと配送情報である配送方法IDとを配送方法毎に対応付けた組の情報を記憶部120に記憶する。また、情報処理装置100は、配送方法IDと配送セットIDとを対応付けた組の情報を記憶部120に記憶する。また、情報処理装置100は、商品情報である商品IDと配送セット情報である配送セットIDとを対応付けて商品毎に記憶部120に記憶する。
一般的に、商品の配送スケジュールの型(タイプ)は、配送方法毎に異なる。具体的には、商品の出荷から商品のお届けまでに要する日数である配送所要日数は、配送方法毎に異なる。また、配送所要日数は、商品のお届け先の住所である都道府県毎に異なる。例えば、同一の配送方法によって同一の商品を配送する場合であっても、お届け先の住所が東京都である場合と、北海道である場合とでは、配送所要日数が異なる。また、配送所要日数は、商品が在庫として保管されている倉庫の所在地によって異なる。例えば、商品である靴下#1は、大阪府の倉庫に在庫が保管されているとする。また、商品である冷蔵庫#2は、東京都の倉庫に在庫が保管されているとする。このような場合、同一の配送方法によって同一のお届け先に商品を配送する場合であっても、靴下#1は大阪府から出荷され、冷蔵庫#2は東京都から出荷されるため、配送所要日数が異なる。
図2では、情報処理装置100は、配送方法D1と商品の配送スケジュールとを紐づけた組の情報である第2セット情報を記憶部120に記憶する。また、情報処理装置100は、第2セット情報と配送セットDS1とを紐づけて記憶部120に記憶する。また、情報処理装置100は、配送セットDS1と商品1とを紐づけて記憶部120に記憶する。このように、情報処理装置100は、商品の配送スケジュールの型に関するスケジュール情報と配送情報とを配送方法毎に対応付けた組の情報である第2セット情報と商品情報とを対応付けて商品毎に記憶部120に記憶する。例えば、情報処理装置100は、第2セット情報として、スケジュール情報であるスケジュール型IDと配送情報である配送方法IDとを配送方法毎に対応付けた組の情報を記憶部120に記憶する。また、情報処理装置100は、配送方法IDと配送セットIDとを対応付けた組の情報を記憶部120に記憶する。また、情報処理装置100は、商品情報である商品IDと配送セット情報である配送セットIDとを対応付けて商品毎に記憶部120に記憶する。
また、情報処理装置100は、商品の注文を当日注文として受け付ける締め切り時間である配送締め時間と配送情報とを配送方法毎に対応付けた組の情報である第1サブセット情報と商品情報とを対応付けて商品毎に記憶部120に記憶する。具体的には、情報処理装置100は、配送締め時間とスケジュール型IDとを対応付けた組の情報を記憶部120に記憶する。また、情報処理装置100は、スケジュール型IDと配送情報である配送方法IDとを配送方法毎に対応付けた組の情報を記憶部120に記憶する。このようにして、情報処理装置100は、第1サブセット情報として、配送締め時間と配送情報である配送方法IDとを配送方法毎に対応付けた組の情報を記憶部120に記憶する。また、情報処理装置100は、配送方法IDと配送セットIDとを対応付けた組の情報を配送情報記憶部122に記憶する。また、情報処理装置100は、商品情報である商品IDと配送セット情報である配送セットIDとを対応付けて商品毎に記憶部120に記憶する。
また、情報処理装置100は、商品の出荷から商品のお届けまでに要する日数である配送所要日数と配送情報とを配送方法毎に対応付けた組の情報である第2サブセット情報と商品情報とを対応付けて商品毎に記憶部120に記憶する。具体的には、情報処理装置100は、配送所要日数テーブルIDとスケジュール型IDとを対応付けた組の情報を記憶部120に記憶する。また、情報処理装置100は、配送所要日数テーブルIDと配送所要日数テーブルとを対応付けた組の情報を記憶部120に記憶する(図示略)。また、情報処理装置100は、スケジュール型IDと配送情報である配送方法IDとを配送方法毎に対応付けた組の情報を記憶部120に記憶する。このようにして、情報処理装置100は、第2サブセット情報として、配送所要日数と配送情報である配送方法IDとを配送方法毎に対応付けた組の情報を記憶部120に記憶する。また、情報処理装置100は、配送方法IDと配送セットIDとを対応付けた組の情報を配送情報記憶部122に記憶する。また、情報処理装置100は、商品情報である商品IDと配送セット情報である配送セットIDとを対応付けて商品毎に記憶部120に記憶する。
また、情報処理装置100は、商品を配送可能な期間の日数である配送可能期間と配送情報とを配送方法毎に対応付けた組の情報である第3サブセット情報と商品情報とを対応付けて商品毎に記憶部120に記憶する。具体的には、情報処理装置100は、配送可能期間とスケジュール型IDとを対応付けた組の情報を記憶部120に記憶する。また、情報処理装置100は、スケジュール型IDと配送情報である配送方法IDとを配送方法毎に対応付けた組の情報を記憶部120に記憶する。このようにして、情報処理装置100は、第3サブセット情報として、配送可能期間と配送情報である配送方法IDとを配送方法毎に対応付けた組の情報を記憶部120に記憶する。また、情報処理装置100は、配送方法IDと配送セットIDとを対応付けた組の情報を記憶部120に記憶する。また、情報処理装置100は、商品情報である商品IDと配送セット情報である配送セットIDとを対応付けて商品毎に記憶部120に記憶する。
(配送セットの具体例)
次に、図3を用いて、配送セットの具体例について説明する。図3は、実施形態に係る配送セットの一例を示す図である。図3の左側図は、配送セットDS1が、小型の商品の配送に適した配送方法の組であることを示す。また、配送セットDS1は、配送方法D1と配送方法D2と配送方法D3の3つの配送方法の組であることを示す。図3の中央図は、配送セットDS2が、大型の商品の配送に適した配送方法の組であることを示す。また、配送セットDS2は、配送方法D1と配送方法D2の2つの配送方法の組であることを示す。図3の右側図は、配送セット3がメール便のみの商品の配送方法であることを示す。図3に示すように、情報処理装置100は、各店舗が各商品の配送セットを選択しやすいように、各商品のタイプに適した配送セットを用意する。また、情報処理装置100は、店舗端末20から取得した商品情報に基づいて、各商品のサイズ(重さ)や生鮮食品であるといった各商品のタイプを判定する。続いて、情報処理装置100は、判定した商品のタイプに基づいて、商品のタイプに適した配送セットがデフォルトで設定されるように配送方法-送料設定画面に対応するコンテンツを生成する。例えば、情報処理装置100は、商品M1は靴下であるので、小型の商品であると判定する。続いて、情報処理装置100は、商品M1は小型の商品であると判定したので、商品M1の配送セットのデフォルトの設定を配送セットDS1に決定する。また、情報処理装置100は、商品M2は冷蔵庫であるので、大型の商品であると判定する。続いて、情報処理装置100は、商品M2は大型の商品であると判定したので、商品M2の配送セットのデフォルトの設定を配送セットDS2に決定する。なお、図3に示したのは、配送セットの一例である。図3に示した配送セットの他にも、組み合わせ可能な配送方法の組である配送セットが存在する。
(複数の商品の注文を一つにまとめて配送する場合の具体例)
次に、図4を用いて、複数の商品の注文を一つにまとめて配送する際の配送方法の決定の仕方について具体的に説明する。図4は、実施形態に係る情報処理の一例を示す図である。図4では、複数の商品の注文を一つにまとめて配送する際の一例として、小型商品と大型商品とを同梱するケースについて説明する。小型商品には、配送セットDS1が紐づいている。また、大型商品には、配送セットDS2が紐づいている。情報処理装置100は、配送セットDS1と配送セットDS2に共通する配送方法が存在するか否かを判定する。情報処理装置100は、共通する配送方法が存在する場合は、配送セットDS1と配送セットDS2に共通する配送方法D1と配送方法D2を同梱する際の配送方法の候補として決定する。情報処理装置100は、共通しない配送方法である配送方法D3は同梱する際の配送方法の候補から除外する。一方、情報処理装置100は、共通する配送方法が存在しない場合は、それぞれの商品を別々に配送することを決定する。つまり、情報処理装置100は、共通する配送方法が存在しない場合は、同梱しないことを決定する。
〔2.情報処理システムの構成〕
次に、図5を用いて情報処理システム1の構成について説明する。図5は、実施形態に係る情報処理システムの構成例を示す図である。図5に示すように、情報処理システム1には、ユーザ端末10と、店舗端末20と、配送会社サーバ50と、情報処理装置100とが含まれる。ユーザ端末10と、店舗端末20と、配送会社サーバ50と、情報処理装置100とは所定のネットワークNを介して、有線または無線により通信可能に接続される。なお、図5に示す情報処理システム1には、任意の数のユーザ端末10と、任意の数の店舗端末20と、任意の数の配送会社サーバ50と、任意の数の情報処理装置100とが含まれてもよい。
ユーザ端末10は、ユーザの操作に応じて、電子商店街に出店している店舗が出品している商品に対する注文を行うためのコンテンツの配信要求を情報処理装置100に送信する。情報処理装置100は、ユーザ端末10の要求に応じて、店舗が出品している商品に対する注文を行うためのコンテンツをユーザ端末10に配信する。ユーザ端末10は、店舗が出品している商品に対する注文を行うためのコンテンツを受信すると、ユーザ端末10の画面に受信したコンテンツを表示する。続いて、ユーザ端末10は、ユーザの操作によってコンテンツに含まれる注文確定ボタンが押下されると、店舗が出品している商品に対するユーザの注文に関する注文情報を情報処理装置100に送信する。
店舗端末20は、電子商店街に出店している店舗を運営するための店舗運営ツールを介して、出品予定の商品に関する商品情報を情報処理装置100に送信する。具体的には、店舗端末20は、店舗S1の管理者A1の操作に応じて、店舗運営ツールを利用するためのコンテンツの配信要求を情報処理装置100に送信する。情報処理装置100は、店舗端末20の要求に応じて、店舗運営ツールを利用するためのコンテンツを店舗端末20に配信する。店舗端末20は、店舗運営ツールを利用するためのコンテンツを受信すると、受信したコンテンツを店舗端末20の画面に表示する。続いて、店舗端末20は、画面に表示されたコンテンツに対する店舗S1の管理者A1による操作に従って、電子商店街に出品する商品に関する商品情報を情報処理装置100に送信する。
例えば、店舗端末20は、店舗運営ツールのタブの中から、店舗S1の管理者A1によって、商品の配送方法及び送料を設定可能な画面である配送方法-送料設定画面に関するタブが選択されると、配送方法-送料設定画面に対応するコンテンツの配信要求を情報処理装置100に送信する。情報処理装置100は、店舗端末20の要求に応じて、配送方法-送料設定画面に対応するコンテンツC1を店舗端末20に配信する。例えば、情報処理装置100は、商品毎に配送セットを選択し、選択した配送セットを商品毎に設定可能な操作画面に対応するコンテンツC1を店舗端末20に配信する。店舗端末20は、配送方法-送料設定画面に対応するコンテンツC1を受信すると、店舗端末20の画面に受信したコンテンツC1を表示する。
続いて、店舗端末20は、商品情報として、商品に適用可能な配送方法の組である配送セットに関する配送セット情報を商品毎に情報処理装置100に送信する。例えば、商品M1(靴下#1)を出品している店舗S1の管理者A1は、商品M1(靴下#1)は小型の商品であるので、商品M1の配送セットとしてデフォルトに設定されていた配送セットDS1をそのまま選択する。続いて、店舗端末20-1は、店舗S1の管理者A1の操作にしたがって、商品M1と配送セットDS1とを対応付けて、情報処理装置100に送信する。また、商品M2(冷蔵庫#2)を出品している店舗S2の管理者A2は、商品M2(冷蔵庫#2)は大型の商品であるので、商品M2の配送セットとしてデフォルトに設定されていた配送セットDS2をそのまま選択する。続いて、店舗端末20-1は、店舗S2の管理者A2の操作にしたがって、商品M2と配送セットDS2とを対応付けて、情報処理装置100に送信する。
情報処理装置100は、商品に関する商品情報を店舗端末20から取得する。具体的には、情報処理装置100は、商品情報として、商品ID、商品名、商品の出品元である店舗の店舗ID、商品の注文を受け付けてから商品を出荷するまでに要する日数である出荷準備所要日数、後述する配送セットIDを商品毎に取得する。例えば、情報処理装置100は、小型の商品である商品M1(靴下#1)に関する商品情報と商品M1に対応する配送セットDS1に関する配送セット情報とを商品M1の出品者である店舗S1の店舗端末20-1から取得する。また、情報処理装置100は、大型の商品である商品M2(冷蔵庫#2)に関する商品情報と商品M2に対応する配送セットDS2に関する配送セット情報とを商品M2の出品者である店舗S2の店舗端末20-2から取得する。続いて、情報処理装置100は、商品情報と配送セット情報とを取得すると、商品情報と配送セット情報とを対応付けて商品毎に記憶部120に記憶する。
また、情報処理装置100は、APIを介して、商品の配送方法に関する配送情報を配送会社サーバ50から取得する。具体的には、情報処理装置100は、配送情報として、商品の配送を行う配送会社と配送方法の種類とを対応付けた組の情報を取得する。続いて、情報処理装置100は、配送会社と配送方法の種類とを対応付けた組の情報を取得すると、配送会社と配送方法の種類とを対応付けた組の情報に対して、配送方法IDを付与する。続いて、情報処理装置100は、配送方法IDを付与すると、配送会社と配送方法の種類とを対応付けた組の情報と配送方法IDとを対応付けて配送方法毎に記憶部120に記憶する。
また、情報処理装置100は、配送情報として、商品の代金の支払方法に関する支払情報を配送方法毎に配送会社サーバ50から取得する。また、一般的に、支払方法の種類の数は限られている。そこで、情報処理装置100は、支払情報を取得すると、商品の代金の支払方法の組である支払セットを生成する。例えば、情報処理装置100は、ある配送方法について、クレジットカード、代引き、銀行振込の3つの支払方法が可能である場合、クレジットカード、代引き、銀行振込の3つの支払方法の組である支払セットPS1を生成する。また、情報処理装置100は、ある配送方法について、クレジットカードのみの支払方法が可能である場合、クレジットカードのみの支払方法である支払セットPS3を生成する。まず、情報処理装置100は、商品の代金の支払方法の各々に対して、支払方法IDを付与する。続いて、情報処理装置100は、支払セットを生成すると、生成した支払セットに対して、支払セットIDを付与する。例えば、情報処理装置100は、支払方法であるクレジットカードに対して支払方法ID「P1」を、支払方法である代引きに対して支払方法ID「P2」を、支払方法である銀行振込に対して支払方法ID「P3」を付与する。続いて、情報処理装置100は、クレジットカード、代引き、銀行振込の3つの支払方法の組である支払セットPS1に対して、支払セットID「PS1」を付与する。続いて、情報処理装置100は、支払セットPS1の支払セットID「PS1」と、支払方法P1の支払方法ID「P1」及び支払方法名「クレジットカード」、支払方法P2の支払方法ID「P2」及び支払方法名「代引き」、支払方法P3の支払方法ID「P3」及び支払方法名「銀行振込」とを対応付けて記憶部120に記憶する。
具体的には、情報処理装置100は、商品の代金の支払方法に関する支払情報と配送情報とを配送方法毎に対応付けた組の情報である第1セット情報を取得する。続いて、情報処理装置100は、第1セット情報を取得すると、支払情報と配送情報とを対応付けて記憶部120に記憶する。例えば、情報処理装置100は、支払情報である支払セットPS1のID「PS1」と配送情報である配送方法D1のID「D1」とを対応付けて配送情報記憶部122に格納する。また、情報処理装置100は、支払情報である支払セットPS2のID「PS2」と配送情報である配送方法D2のID「D2」とを対応付けて配送情報記憶部122に格納する。また、情報処理装置100は、支払情報である支払セットPS3のID「PS3」と配送情報である配送方法D3のID「D3」とを対応付けて記憶部120に記憶する。
また、情報処理装置100は、配送情報として、送料に関する送料情報を配送方法毎に配送会社サーバ50から取得する。具体的には、情報処理装置100は、送料情報として、商品のお届け先の住所である都道府県毎の送料のテーブルである送料テーブルを配送方法毎に取得する。また、情報処理装置100は、都道府県毎であることに加えて、商品のサイズ(又は重さ)毎の送料を商品のサイズ(又は重さ)と対応付けた送料テーブルを配送方法毎に取得してもよい。続いて、情報処理装置100は、送料テーブルを取得すると、送料テーブルに対して、送料テーブルIDを付与する。例えば、情報処理装置100は、配送方法D1の送料テーブルに対して、送料テーブルID「PT1」を付与する。続いて、情報処理装置100は、配送方法D1の送料テーブルに送料テーブルID「PT1」を付与すると、付与した送料テーブルID「PT1」と配送方法D1の配送方法ID「D1」とを対応付けて記憶部120に記憶する。なお、情報処理装置100は、送料テーブルIDと送料テーブルのデータとを対応付けて記憶部120に記憶する(図示略)。
また、情報処理装置100は、配送情報として、商品の配送スケジュールの型(タイプ)に関するスケジュール情報を配送方法毎に配送会社サーバ50から取得する。具体的には、情報処理装置100は、商品の配送スケジュールの型に関するスケジュール情報と配送情報とを配送方法毎に対応付けた組の情報である第2セット情報を取得する。続いて、情報処理装置100は、第2セット情報を取得すると、スケジュール情報と配送情報とを対応付けて記憶部120に記憶する。例えば、情報処理装置100は、スケジュール情報を取得すると、スケジュール情報に対して、スケジュール型IDを付与する。例えば、情報処理装置100は、配送方法D1のスケジュール情報に対して、スケジュール型ID「SC1」を付与する。続いて、情報処理装置100は、配送方法D1のスケジュール情報にスケジュール型ID「SC1」を付与すると、付与したスケジュール型ID「SC1」と配送方法D1の配送方法ID「D1」とを対応付けて記憶部120に記憶する。なお、情報処理装置100は、スケジュール型IDとスケジュール情報のデータとを対応付けて記憶部120に記憶する。
また、情報処理装置100は、スケジュール情報として、商品の注文を当日注文として受け付ける締め切り時間である配送締め時間と配送情報とを配送方法毎に対応付けた組の情報である第1サブセット情報を取得する。続いて、情報処理装置100は、第1サブセット情報を取得すると、配送締め時間と配送情報とを対応付けて記憶部120に記憶する。例えば、情報処理装置100は、スケジュール型ID「SC1」と配送方法D1の配送締め時間「SD1」(時)とを対応付けてスケジュール情報記憶部123に格納する。なお、配送締め時間について説明を補足する。例えば、配送締め時間が午後15:00である場合、その日の午前0時から午後15:00までに受け付けられた注文は、その日の当日の注文として受け付けられる。一方、その日の午後15:00以降に受け付けられた注文は、翌日の注文として受け付けられる。
また、情報処理装置100は、スケジュール情報として、商品の出荷から商品のお届けまでに要する日数である配送所要日数と配送情報とを配送方法毎に対応付けた組の情報である第2サブセット情報を取得する。より具体的には、情報処理装置100は、配送所要日数に関する配送所要日数情報として、商品のお届け先の住所である都道府県毎の配送所要日数のテーブルである配送所要日数テーブルを配送方法毎に取得する。続いて、情報処理装置100は、第2サブセット情報を取得すると、配送所要日数と配送情報とを対応付けて記憶部120に記憶する。より具体的には、情報処理装置100は、配送所要日数テーブルを取得すると、配送所要日数テーブルを記憶部120に記憶する(図示略)。また、情報処理装置100は、配送所要日数テーブルを取得すると、配送所要日数テーブルに対して、配送所要日数テーブルIDを付与する。続いて、情報処理装置100は、スケジュール型ID「SC1」と配送方法D1の配送所要日数テーブルID「DT1」とを対応付けて記憶部120に記憶する。
また、情報処理装置100は、スケジュール情報として、商品を配送可能な期間の日数である配送可能期間と配送情報とを配送方法毎に対応付けた組の情報である第3サブセット情報を取得する。続いて、情報処理装置100は、第3サブセット情報を取得すると、配送可能期間と配送情報とを対応付けて記憶部120に記憶する。例えば、情報処理装置100は、スケジュール型ID「SC1」と配送方法D1の配送可能期間「DE1」(日)とを対応付けて記憶部120に記憶する。なお、配送可能期間は、言い換えると、注文者によるお届け指定可能日の開始日から終了日までの日数を示す。
ここから、図1に示した複数の商品のお届け指定可能日の決定方法について詳しく説明する。情報処理装置100は、複数の商品のお届け指定可能日を配送方法毎に決定する。具体的には、情報処理装置100は、記憶部120に記憶された第2セット情報と商品情報とに基づいて、注文者によって選択された複数の商品のスケジュール情報を商品毎に抽出する。より具体的には、情報処理装置100は、商品情報記憶部121を参照して、商品M1の配送セットID「DS1」を抽出する。続いて、情報処理装置100は、配送情報記憶部122を参照して、商品M1の配送セットID「DS1」に対応するスケジュール型ID「SC1」を抽出する。
続いて、情報処理装置100は、記憶部120に記憶された第1サブセット情報と商品情報とに基づいて、注文者によって選択された複数の商品の配送締め時間を商品毎に抽出する。例えば、情報処理装置100は、記憶部120を参照して、商品M1のスケジュール型ID「SC1」に対応する配送締め時間「SD1」(時)を抽出する。例えば、情報処理装置100は、配送締め時間「SD1」の具体的な時刻として、配送締め時間(時)「午後16:00」を抽出する。また、情報処理装置100は、記憶部120を参照して、商品M1の注文日時「注文日時#1」を抽出する。例えば、情報処理装置100は、注文日時「注文日時#1」の具体的な日時として、注文日時「2018年11月1日 午後15:00」を抽出する。続いて、情報処理装置100は、配送締め時間(時)「SD1」と注文日時「注文日時#1」とに基づいて、店舗によって注文が受け付けられた日である注文日を算出する。具体的には、情報処理装置100は、注文を受け付けた時刻「午後15:00」が配送締め時間(時)「午後16:00」より前なので、商品M1に係る注文O1を「2018年11月1日」当日に受け付けたと判定する。また、情報処理装置100は、記憶部120を参照して、商品M1の出荷準備日数「1」(日)を抽出する。続いて、情報処理装置100は、注文を受け付けたと判定した日付(以下、適宜「注文日」と記載する。)に商品M1の出荷準備日数「1」(日)を加算した日付を商品M1の出荷日と算出する。具体的には、情報処理装置100は、注文日である「2018年11月1日」に商品M1の出荷準備日数「1」(日)を加算した日付である「2018年11月2日」を商品M1の出荷日と算出する。
続いて、情報処理装置100は、記憶部120に記憶された第2サブセット情報と商品情報とに基づいて、注文者によって選択された複数の商品の配送所要日数を商品毎に抽出する。例えば、情報処理装置100は、記憶部120を参照して、商品M1のスケジュール型ID「SC1」に対応する配送所要日数テーブルID「DT1」(時)を抽出する。続いて、情報処理装置100は、記憶部120の配送所要日数テーブルID「DT1」に対応する配送所要日数テーブルを参照して、商品M1のお届け先の住所の都道府県に対応する配送所要日数を抽出する。例えば、情報処理装置100は、配送所要日数の具体的な日数として配送所要日数「3」(日)を抽出する。続いて、情報処理装置100は、商品M1の出荷日に配送所要日数を加算した日付を商品M1の最短のお届け指定可能日として算出する。具体的には、情報処理装置100は、商品M1の出荷日である「2018年11月2日」に配送所要日数である「3」(日)を加算した日付である「2018年11月5日」を商品M1の最短のお届け指定可能日として算出する。
続いて、情報処理装置100は、記憶部120に記憶された第3サブセット情報と商品情報とに基づいて、注文者によって選択された複数の商品の配送可能期間を商品毎に抽出する。例えば、情報処理装置100は、記憶部120を参照して、商品M1のスケジュール型ID「SC1」に対応する配送可能期間「DE1」(日)を抽出する。例えば、情報処理装置100は、配送可能期間「DE1」の具体的な日数として配送可能期間「7」(日)を抽出する。続いて、情報処理装置100は、商品M1の最短のお届け指定可能日に配送可能期間を加算した日付を商品M1のお届け指定可能日の最終日として算出する。具体的には、情報処理装置100は、最短のお届け指定可能日である「2018年11月5日」に配送可能期間「7」(日)を加算した日付である「2018年11月12日」を商品M1のお届け指定可能日の最終日として算出する。
続いて、情報処理装置100は、商品M1の最短のお届け指定可能日である「2018年11月5日」から商品M1のお届け指定可能日の最終日である「2018年11月12日」の期間を、配送方法D1による商品M1のお届け指定可能日MD11として決定する。また、情報処理装置100は、お届け指定可能日MD11と同様の算出方法によって、配送方法D1による商品M2のお届け指定可能日MD12を決定する。また、情報処理装置100は、お届け指定可能日MD11と同様の算出方法によって、配送方法D2による商品M21のお届け指定可能日MD21を決定する。また、情報処理装置100は、お届け指定可能日MD11と同様の算出方法によって、配送方法D2による商品M2のお届け指定可能日MD22を決定する。
続いて、情報処理装置100は、商品毎に抽出した配送セット情報に含まれる配送方法の中に複数の商品の間で共通する配送方法が存在する場合には、複数の商品の間で共通する配送方法を抽出し、抽出した配送方法毎に複数の商品のお届け指定可能日を決定する。具体的には、情報処理装置100は、複数の商品の間で共通するお届け指定可能日が存在する場合には、複数の商品の間で共通するお届け指定可能日を複数の商品のお届け指定可能日として配送方法毎に決定する。より具体的には、情報処理装置100は、商品M1のお届け指定可能日MD11と商品M2のお届け指定可能日MD12とに共通するお届け指定可能日RD1を、配送方法D1によって商品M1と商品M2を同梱してお届けする場合のお届け指定可能日として決定する。また、情報処理装置100は、商品M1のお届け指定可能日MD21と商品M2のお届け指定可能日MD22とに共通するお届け指定可能日RD2を、配送方法D2によって商品M1と商品M2を同梱してお届けする場合のお届け指定可能日として決定する。続いて、情報処理装置100は、複数商品のお届け指定可能日を配送方法毎に決定すると、決定したお届け指定可能日を配送方法毎にユーザU1に対して提案する。
また、情報処理装置100は、お届け指定可能日とともに、支払方法を配送方法毎に抽出する。具体的には、情報処理装置100は、記憶部120に記憶された第1セット情報と商品情報とに基づいて、注文者によって選択された複数の商品の支払情報を商品毎に抽出する。より具体的には、情報処理装置100は、商品情報記憶部121を参照して、商品M1の配送セットID「DS1」を抽出する。続いて、情報処理装置100は、配送情報記憶部122を参照して、商品M1の配送セットID「DS1」に対応する支払セットID「PS1」を抽出する。続いて、情報処理装置100は、支払セットID「PS1」に含まれる支払方法ID「P1」を抽出する。続いて、情報処理装置100は、支払方法ID「P1」に対応する支払方法「クレジットカード」を抽出する。また、情報処理装置100は、支払セットID「PS1」に含まれる支払方法ID「P2」に対応する支払方法「代引き」を抽出する。また、情報処理装置100は、支払セットID「PS1」に含まれる支払方法ID「P3」に対応する支払方法「銀行振込」を抽出する。続いて、情報処理装置100は、抽出した支払方法をお届け指定可能日とともに配送方法毎にユーザU1に対して提案する。
〔3.情報処理装置の構成〕
次に、図6を用いて、実施形態に係る情報処理装置100の構成について説明する。図6は、実施形態に係る情報処理装置100の構成例を示す図である。図6に示すように、情報処理装置100は、通信部110と、記憶部120と、制御部130とを有する。なお、情報処理装置100は、情報処理装置100の管理者等から各種操作を受け付ける入力部(例えば、キーボードやマウス等)や、各種情報を表示するための表示部(例えば、液晶ディスプレイ等)を有してもよい。
(通信部110)
通信部110は、例えば、NIC(Network Interface Card)等によって実現される。そして、通信部110は、ネットワークと有線または無線で接続され、例えば、ユーザ端末10と、店舗端末20と、配送会社サーバ50との間で情報の送受信を行う。
(記憶部120)
記憶部120は、例えば、RAM(Random Access Memory)、フラッシュメモリ(Flash Memory)等の半導体メモリ素子、または、ハードディスク、光ディスク等の記憶装置によって実現される。記憶部120は、図6に示すように、商品情報記憶部121と、配送情報記憶部122と、スケジュール情報記憶部123と、注文情報記憶部124と、コンテンツ記憶部125とを有する。
(商品情報記憶部121)
商品情報記憶部121は、商品に関する各種の情報を記憶する。図7に、実施形態に係る商品情報記憶部の一例を示す。図7に示す例では、商品情報記憶部121は、「商品ID」、「商品名」、「店舗ID」、「出荷準備所要日数(日)」、「配送セットID」といった項目を有する。
「商品ID」は、電子商店街に出品されている商品を識別する識別情報を示す。「商品名」は、商品の名称を示す。「店舗ID」は、商品を出品している店舗を識別する識別情報を示す。「出荷準備所要日数(日)」は、店舗が商品の注文を受け付けてから商品を出荷するまでに要する日数を示す。「配送セットID」は、商品の配送方法の組である配送セットを識別する識別情報を示す。配送セットは、商品を取り扱う店舗によって、商品毎に決定される。
図7の1レコード目に示す例では、商品ID「M1」で識別される商品(商品M1)は、図1に示す商品M1に対応する。商品名「靴下#1」は、商品M1の名称が靴下#1であることを示す。店舗ID「S1」で識別される店舗(店舗S1)は、電子商店街に商品M1を出品している店舗が店舗S1であることを示す。出荷準備所要日数(日)「1」は、店舗S1が商品M1の注文を受け付けてから商品M1を出荷するまでに要する日数が1日であることを示す。配送セットID「DS1」で識別される配送セット(配送セットDS1)は、図1に示す配送セットDS1に対応する。
(配送情報記憶部122)
配送情報記憶部122は、配送方法に関する各種の情報を記憶する。図8に、実施形態に係る配送情報記憶部の一例を示す。図8に示す例では、配送情報記憶部122は、「配送セットID」、「配送セット名」、「配送方法ID」、「配送方法名」、「配送会社」、「支払セットID」、「支払方法ID」、「支払方法名」、「送料テーブルID」、「スケジュール型ID」といった項目を有する。
「配送セットID」は、配送セットを識別する識別情報を示す。「配送セット名」は、配送セットの名称を示す。「配送方法ID」は、配送セットに含まれる商品の配送方法を識別する識別情報を示す。「配送方法名」は、商品の配送方法の名称を示す。
「支払セットID」は、支払い方法セットを識別する識別情報を示す。「支払方法ID」は、支払セットに含まれる商品の代金の支払方法を識別する識別情報を示す。「支払方法名」は、商品の代金の支払方法の名称を示す。具体的には、「支払方法名」には、クレジットカード、代引き、銀行振込、コンビニ払い等の支払方法の種類に応じた通称名が格納される。「送料テーブルID」は、商品の送料テーブルを識別する識別情報を示す。「スケジュール型ID」は、商品の配送スケジュールの型を識別する識別情報を示す。
図8に示す例では、配送セットID「DS1」で識別される配送セット(配送セットDS1)は、図1に示す配送セットDS1に対応する。配送セット名「配送セットDS1」は、配送セットDS1の名称が配送セットDS1であることを示す。配送方法ID「D1」で識別される配送方法(配送方法D1)は、配送セットDS1に含まれる配送方法の一つである。配送方法名「配送方法D1」は、配送方法D1の名称が配送方法D1であることを示す。配送方法D1は、図1に示す配送方法D1に対応する。配送セットDS1は、配送方法D1、配送方法D2、配送方法D3の3つの配送方法の組である。配送方法D2、配送方法D3は、それぞれ、図1に示す配送方法D2、配送方法D3に対応する。配送会社「配送会社#1」は、配送方法D1によって商品の配送を行う配送会社の名称が配送会社#1であることを示す。
支払セットID「PS1」(支払セットPS1)は、支払セットPS1を識別する識別情報が「PS1」であることを示す。支払セットPS1は、配送方法D1に対応する支払セットである。支払方法ID「P1」(支払方法P1)は、支払セットPS1に含まれる商品の代金の支払方法を識別する識別情報が「P1」であることを示す。支払方法名「クレジットカード」は、支払方法P1に対応する支払方法の名称が「クレジットカード」であることを示す。支払セットPS1は、支払方法P1(クレジットカード)、支払方法P2(代引き)、支払方法P3(銀行振込)の3つの支払方法の組である。
送料テーブルID「PT1」(送料テーブルPT1)は、配送方法D1に対応する送料テーブルを識別する識別情報が「PT1」であることを示す。スケジュール型ID「SC1」は、配送方法D1に対応する配送スケジュールの型を識別する識別情報が「SC1」であることを示す。
(スケジュール情報記憶部123)
スケジュール情報記憶部123は、配送スケジュールの型(タイプ)に関する各種の情報を記憶する。図9に、実施形態に係るスケジュール情報記憶部の一例を示す。図9に示す例では、スケジュール情報記憶部123は、「スケジュール型ID」、「スケジュール型名」、「配送締め時間(時)」、「配送所要日数テーブルID」、「配送可能期間(日)」といった項目を有する。
「スケジュール型ID」は、配送スケジュールの型(タイプ)を識別する識別情報を示す。「スケジュール型名」は、配送スケジュールの型(タイプ)の名称を示す。「配送締め時間(時)」は、商品の注文を当日注文として受け付ける締め切り時間を示す。具体的には、「配送締め時間(時)」には、午後15:00、午後16:00等の具体的な時刻が格納される。「配送所要日数テーブルID」は、配送所要日数テーブルを識別する識別情報を示す。「配送可能期間(日)」は、商品を配送可能な期間の日数を示す。具体的には、配送可能期間には、「7(日)」、「10(日)」等の具体的な日数の数字が格納される。
図9の1レコード目に示す例では、スケジュール型ID「SC1」(スケジュール型SC1)は、スケジュール型名「SN1」(スケジュール型名SN1)で示される配送スケジュールの型(タイプ)を識別する識別情報を示す。配送締め時間(時)「SD1」は、スケジュール型SC1の配送スケジュールにおける配送締め時間が「SD1」(時)であることを示す。配送可能期間(日)「DE1」は、スケジュール型SC1の配送スケジュールにおける配送可能期間が「DE1」(日)であることを示す。
(注文情報記憶部124)
注文情報記憶部124は、注文に関する各種の情報を記憶する。図10に、実施形態に係る注文情報記憶部の一例を示す。図10に示す例では、注文情報記憶部124は、「注文ID」、「注文日時」、「ユーザID」、「商品ID」といった項目を有する。
「注文ID」は、注文を識別する識別情報を示す。「注文日時」は、注文を受け付けた日時を示す。具体的には、注文日時には、「2018年11月1日 午後16:00」等の具体的な日時が格納される。「ユーザID」は、注文者であるユーザを識別する識別情報を示す。「商品ID」は、注文の対象となった商品を識別する識別情報を示す。
図10に示す例では、注文ID「O1」で識別される注文(注文O1)は、図1のステップS12に示すユーザU1から受け付けた複数の商品の注文に対応する。注文日時「注文日時#1」は、注文O1を受け付けた日時が「注文日時#1」であることを示す。ユーザID「U1」で識別されるユーザ(ユーザU1)は、注文O1を行った注文者であることを示す。なお、ユーザID「U1」で識別されるユーザ(ユーザU1)は、図1に示すユーザU1に対応する。商品ID「M1」で識別される商品(商品M1)は、ユーザU1から受け付けた注文O1の対象となった複数の商品のうちの一つである。商品ID「M1」で識別される商品(商品M1)は、図1に示す商品M1(靴下)に対応する。商品ID「M2」で識別される商品(商品M2)は、ユーザU1から受け付けた注文O1の対象となった複数の商品のうちの一つである。なお、商品ID「M2」で識別される商品(商品M2)は、図1に示す商品M2(冷蔵庫)に対応する。
(コンテンツ記憶部125)
コンテンツ記憶部125は、種々のコンテンツを記憶する。具体的には、コンテンツ記憶部125は、注文者であるユーザが商品に対する注文を行うためのコンテンツを記憶する。また、コンテンツ記憶部125は、店舗が店舗運営ツールを利用するためのコンテンツを記憶する。例えば、コンテンツ記憶部125は、店舗運営ツールを利用するためのコンテンツとして、配送方法-送料設定画面に対応するコンテンツを記憶する。例えば、コンテンツ記憶部125は、情報処理装置100によって決定されたお届け指定可能日が配送方法毎に表示されるコンテンツを記憶する。例えば、コンテンツ記憶部125は、情報処理装置100によって抽出された支払方法がお届け指定可能日とともに配送方法毎に表示されるコンテンツを記憶する。
(制御部130)
図6の説明に戻って、制御部130は、コントローラ(controller)であり、例えば、CPU(Central Processing Unit)やMPU(Micro Processing Unit)等によって、情報処理装置100内部の記憶装置に記憶されている各種プログラム(生成プログラムの一例に相当)がRAMを作業領域として実行されることにより実現される。また、制御部130は、コントローラであり、例えば、ASIC(Application Specific Integrated Circuit)やFPGA(Field Programmable Gate Array)等の集積回路により実現される。
図6に示すように、制御部130は、サービス提供部131と、取得部132と、抽出部133と、決定部134とを有し、以下に説明する情報処理の作用を実現または実行する。なお、制御部130の内部構成は、図6に示した構成に限られず、後述する情報処理を行う構成であれば他の構成であってもよい。
(サービス提供部131)
サービス提供部131は、電子商店街(あるいは電子モール)と称されるサービスを提供する。具体的には、サービス提供部131は、ユーザ端末10の要求に応じて、店舗が出品している商品に対する注文を行うためのコンテンツをユーザ端末10に配信する。また、サービス提供部131は、店舗端末20の要求に応じて、店舗運営ツールを利用するためのコンテンツを店舗端末20に配信する。例えば、サービス提供部131は、店舗運営ツールを利用するためのコンテンツとして、配送方法-送料設定画面に対応するコンテンツC1を店舗端末20に配信する。
また、サービス提供部131は、決定部134が複数商品のお届け指定可能日を配送方法毎に決定すると、決定したお届け指定可能日を配送方法毎にユーザに対して提案する。具体的には、サービス提供部131は、決定部134によって決定されたお届け指定可能日が配送方法毎に表示されるコンテンツ生成する。続いて、サービス提供部131は、生成したコンテンツをユーザ端末10に配信する。また、サービス提供部131は、抽出部133によって抽出された支払方法をお届け指定可能日とともに配送方法毎にユーザに対して提案する。具体的には、サービス提供部131は、抽出部133によって抽出された支払方法がお届け指定可能日とともに配送方法毎に表示されるコンテンツを生成する。続いて、サービス提供部131は、生成したコンテンツをユーザ端末10に配信する。
(取得部132)
取得部132は、種々の情報を取得する。取得部132は、商品に関する商品情報を店舗端末20から取得する。具体的には、取得部132は、商品情報として、商品ID、商品名、商品の出品元である店舗の店舗ID、商品の注文を受け付けてから商品を出荷するまでに要する日数である出荷準備所要日数、後述する配送セットIDを商品毎に取得する。取得部132は、商品情報を取得すると、取得した商品情報を図7に示す商品情報記憶部121に格納する。
また、取得部132は、APIを介して、商品の配送方法に関する配送情報を配送会社サーバ50から取得する。具体的には、取得部132は、配送情報として、商品の配送を行う配送会社と配送方法の種類とを対応付けた組の情報を取得する。続いて、取得部132は、配送会社と配送方法の種類とを対応付けた組の情報を取得すると、配送会社と配送方法の種類とを対応付けた組の情報に対して、配送方法IDを付与する。図8に示す例では、取得部132は、配送方法D1に対して配送方法ID「D1」を、配送方法D2に対して配送方法ID「D2」を付与する。また、取得部132は、配送方法D3に対して配送方法ID「D3」を付与する。
また、取得部132は、商品の配送方法の組である配送セットを生成する。例えば、取得部132は、ある商品について、宅配便#1(配送方法D1)、宅配便#2(配送方法D2)、メール便#3(配送方法D3の3つの配送方法が可能である場合、配送方法D1、配送方法D2、配送方法D3の3つの配送方法の組である配送セットDS1を生成する。取得部132は、配送セットを生成すると、配送方法D1、配送方法D2、配送方法D3の3つの配送方法と配送セットDS1とを対応付けて配送情報記憶部122に記憶する。例えば、取得部132は、配送セットDS1に対して、配送セットID「DS1」を付与する。続いて、取得部132は、配送セットIDを付与すると、配送セットDS1の配送セットID「DS1」と、配送方法D1の配送方法ID「D1」、配送方法D2の配送方法ID「D2」、配送方法D3の配送方法ID「D3」とを対応付けて配送情報記憶部122に格納する。
また、取得部132は、配送情報として、商品の代金の支払方法に関する支払情報を配送方法毎に配送会社サーバ50から取得する。取得部132は、支払情報を取得すると、商品の代金の支払方法の組である支払セットを生成する。例えば、取得部132は、ある配送方法について、クレジットカード、代引き、銀行振込の3つの支払方法が可能である場合、クレジットカード、代引き、銀行振込の3つの支払方法の組である支払セットPS1を生成する。また、取得部132は、ある配送方法について、クレジットカードのみの支払方法が可能である場合、クレジットカードのみの支払方法である支払セットPS3を生成する。まず、取得部132は、商品の代金の支払方法の各々に対して、支払方法IDを付与する。続いて、取得部132は、支払セットを生成すると、生成した支払セットに対して、支払セットIDを付与する。また、図8に示す例では、取得部132は、支払方法であるクレジットカードに対して支払方法ID「P1」を、支払方法である代引きに対して支払方法ID「P2」を、支払方法である銀行振込に対して支払方法ID「P3」を付与する。続いて、取得部132は、クレジットカード、代引き、銀行振込の3つの支払方法の組である支払セットPS1に対して、支払セットID「PS1」を付与する。図8に示す例では、取得部132は、支払セットPS1の支払セットID「PS1」と、支払方法P1の支払方法ID「P1」及び支払方法名「クレジットカード」、支払方法P2の支払方法ID「P2」及び支払方法名「代引き」、支払方法P3の支払方法ID「P3」及び支払方法名「銀行振込」とを対応付けて配送情報記憶部122に格納する。
具体的には、取得部132は、商品の代金の支払方法に関する支払情報と配送情報とを配送方法毎に対応付けた組の情報である第1セット情報を取得する。続いて、取得部132は、第1セット情報を取得すると、支払情報と配送情報とを対応付けて配送情報記憶部122に格納する。図8に示す例では、取得部132は、支払情報である支払セットPS1のID「PS1」と配送情報である配送方法D1のID「D1」とを対応付けて配送情報記憶部122に格納する。また、取得部132は、支払情報である支払セットPS2のID「PS2」と配送情報である配送方法D2のID「D2」とを対応付けて配送情報記憶部122に格納する。また、取得部132は、支払情報である支払セットPS3のID「PS3」と配送情報である配送方法D3のID「D3」とを対応付けて配送情報記憶部122に格納する。
また、取得部132は、配送情報として、送料に関する送料情報を配送方法毎に配送会社サーバ50から取得する。具体的には、取得部132は、送料情報として、商品のお届け先の住所である都道府県毎の送料のテーブルである送料テーブルを配送方法毎に取得する。また、取得部132は、都道府県毎であることに加えて、商品のサイズ(又は重さ)毎の送料を商品のサイズ(又は重さ)と対応付けた送料テーブルを配送方法毎に取得してもよい。続いて、取得部132は、送料テーブルを取得すると、送料テーブルに対して、送料テーブルIDを付与する。図8に示す例では、取得部132は、配送方法D1の送料テーブルに対して、送料テーブルID「PT1」を付与する。続いて、取得部132は、配送方法D1の送料テーブルに送料テーブルID「PT1」を付与すると、付与した送料テーブルID「PT1」と配送方法D1の配送方法ID「D1」とを対応付けて配送情報記憶部122に格納する。なお、取得部132は、送料テーブルIDと送料テーブルのデータとを対応付けて記憶部(図示は省略する)に格納する。
また、取得部132は、配送情報として、商品の配送スケジュールの型(タイプ)に関するスケジュール情報を配送方法毎に配送会社サーバ50から取得する。具体的には、取得部132は、商品の配送スケジュールの型に関するスケジュール情報と配送情報とを配送方法毎に対応付けた組の情報である第2セット情報を取得する。続いて、取得部132は、第2セット情報を取得すると、スケジュール情報と配送情報とを対応付けて配送情報記憶部122に格納する。例えば、取得部132は、スケジュール情報を取得すると、スケジュール情報に対して、スケジュール型IDを付与する。図8に示す例では、取得部132は、配送方法D1のスケジュール情報に対して、スケジュール型ID「SC1」を付与する。続いて、取得部132は、配送方法D1のスケジュール情報にスケジュール型ID「SC1」を付与すると、付与したスケジュール型ID「SC1」と配送方法D1の配送方法ID「D1」とを対応付けて配送情報記憶部122に格納する。なお、取得部132は、スケジュール型IDとスケジュール情報のデータとを対応付けて図9に示すスケジュール情報記憶部123に格納する。
また、取得部132は、スケジュール情報として、商品の注文を当日注文として受け付ける締め切り時間である配送締め時間と配送情報とを配送方法毎に対応付けた組の情報である第1サブセット情報を取得する。続いて、取得部132は、第1サブセット情報を取得すると、配送締め時間と配送情報とを対応付けて図9に示すスケジュール情報記憶部123に格納する。図9の1レコード目に示す例では、取得部132は、スケジュール型ID「SC1」と配送方法D1の配送締め時間「SD1」(時)とを対応付けてスケジュール情報記憶部123に格納する。なお、配送締め時間について説明を補足する。例えば、配送締め時間が午後15:00である場合、その日の午前0時から午後15:00までに受け付けられた注文は、その日の当日の注文として受け付けられる。一方、その日の午後15:00以降に受け付けられた注文は、翌日の注文として受け付けられる。
また、取得部132は、スケジュール情報として、商品の出荷から商品のお届けまでに要する日数である配送所要日数と配送情報とを配送方法毎に対応付けた組の情報である第2サブセット情報を取得する。より具体的には、取得部132は、配送所要日数に関する配送所要日数情報として、商品のお届け先の住所である都道府県毎の配送所要日数のテーブルである配送所要日数テーブルを配送方法毎に取得する。続いて、取得部132は、第2サブセット情報を取得すると、配送所要日数と配送情報とを対応付けて図9に示すスケジュール情報記憶部123に格納する。より具体的には、取得部132は、配送所要日数テーブルを取得すると、配送所要日数テーブルに対して、配送所要日数テーブルIDを付与する。続いて、図9の1レコード目に示す例では、取得部132は、スケジュール型ID「SC1」と配送方法D1の配送所要日数テーブルID「DT1」とを対応付けてスケジュール情報記憶部123に格納する。
また、取得部132は、スケジュール情報として、商品を配送可能な期間の日数である配送可能期間と配送情報とを配送方法毎に対応付けた組の情報である第3サブセット情報を取得する。続いて、取得部132は、第3サブセット情報を取得すると、配送可能期間と配送情報とを対応付けて図9に示すスケジュール情報記憶部123に格納する。図9の1レコード目に示す例では、取得部132は、スケジュール型ID「SC1」と配送方法D1の配送可能期間「DE1」(日)とを対応付けてスケジュール情報記憶部123に格納する。
また、取得部132は、電子商取引で取り扱われる商品に関する商品情報と商品の配送方法に関する配送情報とを対応付けて商品毎に記憶部120に記憶する。具体的には、取得部132は、配送情報として、商品の配送方法の組である配送セットに関する配送セット情報と商品情報とを対応付けて商品毎に記憶部120に記憶する。より具体的には、取得部132は、商品情報である商品IDと配送セット情報である配送セットIDとを対応付けて商品毎に商品情報記憶部121に記憶する。
また、取得部132は、商品の代金の支払方法に関する支払情報と配送情報とを配送方法毎に対応付けた組の情報である第1セット情報と商品情報とを対応付けて商品毎に記憶部120に記憶する。具体的には、取得部132は、第1セット情報として、支払情報である支払セットIDと配送情報である配送方法IDとを配送方法毎に対応付けた組の情報を配送情報記憶部122に記憶する。また、取得部132は、配送方法IDと配送セットIDとを対応付けた組の情報を配送情報記憶部122に記憶する。また、取得部132は、商品情報である商品IDと配送セット情報である配送セットIDとを対応付けて商品毎に商品情報記憶部121に記憶する。このようにして、取得部132は、第1セット情報と商品情報とを対応付けて商品毎に記憶部120に記憶する。
また、取得部132は、商品の配送スケジュールの型に関するスケジュール情報と配送情報とを配送方法毎に対応付けた組の情報である第2セット情報と商品情報とを対応付けて商品毎に記憶部に記憶する。具体的には、取得部132は、第2セット情報として、スケジュール情報であるスケジュール型IDと配送情報である配送方法IDとを配送方法毎に対応付けた組の情報を配送情報記憶部122に記憶する。また、取得部132は、配送方法IDと配送セットIDとを対応付けた組の情報を配送情報記憶部122に記憶する。また、取得部132は、商品情報である商品IDと配送セット情報である配送セットIDとを対応付けて商品毎に商品情報記憶部121に記憶する。このようにして、取得部132は、第2セット情報と商品情報とを対応付けて商品毎に記憶部120に記憶する。
また、取得部132は、商品の注文を当日注文として受け付ける締め切り時間である配送締め時間と配送情報とを配送方法毎に対応付けた組の情報である第1サブセット情報と商品情報とを対応付けて商品毎に記憶部120に記憶する。具体的には、取得部132は、配送締め時間とスケジュール型IDとを対応付けた組の情報をスケジュール情報記憶部123に記憶する。また、取得部132は、スケジュール型IDと配送情報である配送方法IDとを配送方法毎に対応付けた組の情報を配送情報記憶部122に記憶する。このようにして、取得部132は、第1サブセット情報として、配送締め時間と配送情報である配送方法IDとを配送方法毎に対応付けた組の情報を記憶部120に記憶する。また、取得部132は、配送方法IDと配送セットIDとを対応付けた組の情報を配送情報記憶部122に記憶する。また、取得部132は、商品情報である商品IDと配送セット情報である配送セットIDとを対応付けて商品毎に商品情報記憶部121に記憶する。このようにして、取得部132は、第1サブセット情報と商品情報とを対応付けて商品毎に記憶部120に記憶する。
また、取得部132は、商品の出荷から商品のお届けまでに要する日数である配送所要日数と配送情報とを配送方法毎に対応付けた組の情報である第2サブセット情報と商品情報とを対応付けて商品毎に記憶部120に記憶する。具体的には、取得部132は、配送所要日数テーブルIDとスケジュール型IDとを対応付けた組の情報をスケジュール情報記憶部123に記憶する。また、取得部132は、配送所要日数テーブルIDと配送所要日数テーブルとを対応付けた組の情報を記憶部120に記憶する(図示略)。また、取得部132は、スケジュール型IDと配送情報である配送方法IDとを配送方法毎に対応付けた組の情報を配送情報記憶部122に記憶する。このようにして、取得部132は、第2サブセット情報として、配送所要日数と配送情報である配送方法IDとを配送方法毎に対応付けた組の情報を記憶部120に記憶する。また、取得部132は、配送方法IDと配送セットIDとを対応付けた組の情報を配送情報記憶部122に記憶する。また、取得部132は、商品情報である商品IDと配送セット情報である配送セットIDとを対応付けて商品毎に商品情報記憶部121に記憶する。このようにして、取得部132は、第1サブセット情報と商品情報とを対応付けて商品毎に記憶部120に記憶する。
また、取得部132は、商品を配送可能な期間の日数である配送可能期間と配送情報とを配送方法毎に対応付けた組の情報である第3サブセット情報と商品情報とを対応付けて商品毎に記憶部120に記憶する。具体的には、取得部132は、配送可能期間とスケジュール型IDとを対応付けた組の情報をスケジュール情報記憶部123に記憶する。また、取得部132は、スケジュール型IDと配送情報である配送方法IDとを配送方法毎に対応付けた組の情報を配送情報記憶部122に記憶する。このようにして、取得部132は、第3サブセット情報として、配送可能期間と配送情報である配送方法IDとを配送方法毎に対応付けた組の情報を記憶部120に記憶する。また、取得部132は、配送方法IDと配送セットIDとを対応付けた組の情報を配送情報記憶部122に記憶する。また、取得部132は、商品情報である商品IDと配送セット情報である配送セットIDとを対応付けて商品毎に商品情報記憶部121に記憶する。このようにして、取得部132は、第3サブセット情報と商品情報とを対応付けて商品毎に記憶部120に記憶する。
また、取得部132は、商品の注文に関する注文情報をユーザ端末10から取得する。より具体的には、取得部132は、注文情報として、注文日時、注文者であるユーザのユーザID、注文対照である商品の商品IDをユーザ端末10から取得する。続いて、取得部132は、注文情報を取得すると、取得した注文情報に対して注文IDを付与する。図1に示す例では、取得部132は、注文日時を示す「注文日時#1」、ユーザIDを示す「U1」、商品IDを示す「M1」と商品IDを示す「M2」をユーザ端末10-1から取得する。続いて、取得部132は、注文情報を取得すると、取得した注文情報に対して注文ID「O1」を付与する。取得部132は、注文情報を取得すると、取得した注文情報を図10に示す注文情報記憶部124に格納する。
(抽出部133)
抽出部133は、種々の情報を抽出する。抽出部133は、記憶部120に記憶された商品情報と配送情報とに基づいて、注文者によって選択された複数の商品の配送情報を商品毎に抽出する。例えば、抽出部133は、記憶部120に記憶された配送セット情報と商品情報とに基づいて、注文者によって選択された複数の商品の配送セット情報を商品毎に抽出する。続いて、抽出部133は、商品毎に抽出した配送セット情報に含まれる配送方法毎に商品のお届け日の候補日であるお届け指定可能日を抽出する。
具体的には、抽出部133は、記憶部120に記憶された第2セット情報と商品情報とに基づいて、注文者によって選択された複数の商品のスケジュール情報を商品毎に抽出する。より具体的には、抽出部133は、商品情報記憶部121を参照して、複数の商品のうちの一の商品の商品IDに対応する配送セットIDを抽出する。続いて、抽出部133は、配送情報記憶部122を参照して、抽出した配送セットIDに対応するスケジュール型IDを抽出する。
続いて、抽出部133は、記憶部120に記憶された第1サブセット情報と商品情報とに基づいて、注文者によって選択された複数の商品の配送締め時間を商品毎に抽出する。例えば、抽出部133は、図9に示すスケジュール情報記憶部123を参照して、抽出したスケジュール型IDに対応する配送締め時間を抽出する。例えば、抽出部133は、配送締め時間(時)として「午後16:00」を抽出する。また、抽出部133は、図10に示す注文情報記憶部124を参照して、商品の商品IDに対応する注文の注文IDに対応する注文日時を抽出する。例えば、抽出部133は、注文日時として「2018年11月1日 午後15:00」を抽出する。続いて、抽出部133は、抽出した配送締め時間と抽出した注文日時とに基づいて、店舗によって注文が受け付けられた日である注文日を算出する。例えば、抽出部133は、注文を受け付けた時刻「午後15:00」が配送締め時間(時)「午後16:00」より前なので、商品の商品IDに対応する注文の注文IDに対応する注文を「2018年11月1日」当日に受け付けたと判定する。また、抽出部133は、図7に示す商品情報記憶部121を参照して、商品の商品IDに対応する商品の出荷準備日数を抽出する。例えば、抽出部133は、商品の出荷準備日数として「1」(日)を抽出する。続いて、抽出部133は、注文を受け付けたと判定した日付に商品の出荷準備日数を加算した日付を商品の出荷日と算出する。例えば、抽出部133は、注文日である「2018年11月1日」に商品の出荷準備日数「1」(日)を加算した日付である「2018年11月2日」を商品の出荷日と算出する。
続いて、抽出部133は、記憶部120に記憶された第2サブセット情報と商品情報とに基づいて、注文者によって選択された複数の商品の配送所要日数を商品毎に抽出する。例えば、抽出部133は、図9に示すスケジュール情報記憶部123を参照して、抽出した商品のスケジュール型IDに対応する配送所要日数テーブルIDを抽出する。続いて、抽出部133は、図9に示すスケジュール情報記憶部123の配送所要日数テーブルIDに対応する配送所要日数テーブルを参照して、商品のお届け先の住所の都道府県に対応する配送所要日数を抽出する。例えば、抽出部133は、配送所要日数の具体的な日数として配送所要日数「3」(日)を抽出する。続いて、抽出部133は、算出した商品の出荷日に抽出した配送所要日数を加算した日付を商品の最短のお届け指定可能日として算出する。例えば、抽出部133は、商品の出荷日である「2018年11月2日」に配送所要日数である「3」(日)を加算した日付である「2018年11月5日」を商品の最短のお届け指定可能日として算出する。
続いて、抽出部133は、記憶部120に記憶された第3サブセット情報と商品情報とに基づいて、注文者によって選択された複数の商品の配送可能期間を商品毎に抽出する。例えば、抽出部133は、図9に示すスケジュール情報記憶部123を参照して、抽出した商品のスケジュール型IDに対応する配送可能期間を抽出する。例えば、抽出部133は、配送可能期間の具体的な日数として配送可能期間「7」(日)を抽出する。続いて、抽出部133は、算出した商品の最短のお届け指定可能日に抽出した配送可能期間を加算した日付を商品のお届け指定可能日の最終日として算出する。例えば、抽出部133は、最短のお届け指定可能日である「2018年11月5日」に配送可能期間「7」(日)を加算した日付である「2018年11月12日」を商品M1のお届け指定可能日の最終日として算出する。
また、抽出部133は、お届け指定可能日とともに、支払方法を配送方法毎に抽出する。具体的には、抽出部133は、記憶部120に記憶された第1セット情報と商品情報とに基づいて、注文者によって選択された複数の商品の支払情報を商品毎に抽出する。より具体的には、抽出部133は、商品情報記憶部121を参照して、複数の商品のうちの一の商品の商品IDに対応する配送セットIDを抽出する。続いて、抽出部133は、配送情報記憶部122を参照して、抽出した商品の配送セットIDに対応する支払セットIDを抽出する。続いて、抽出部133は、抽出した支払セットIDに含まれる支払方法IDを抽出する。続いて、抽出部133は、抽出した支払方法IDに対応する支払方法を抽出する。
また、抽出部133は、商品毎に抽出した配送セット情報に含まれる配送方法の中に複数の商品の間で共通する配送方法が存在する場合には、複数の商品の間で共通する配送方法を抽出し、抽出した配送方法毎に複数の商品のお届け指定可能日を抽出する。また、抽出部133は、複数の商品の間で共通するお届け指定可能日が存在する場合には、複数の商品の間で共通するお届け指定可能日を複数の商品のお届け指定可能日として配送方法毎に抽出する。図1に示す例では、抽出部133は、配送セットDS1と配送セットDS2に共通する配送方法である配送方法D1と配送セットDS2を抽出する。具体的には、抽出部133は、配送セットDS1と配送セットDS2に共通する配送方法が存在するか否かを判定する。抽出部133は、共通する配送方法が存在する場合は、配送セットDS1と配送セットDS2に共通する配送方法D1と配送方法D2を同梱する際の配送方法の候補として抽出する。続いて、抽出部133は、商品M1のお届け指定可能日MD11と商品M2のお届け指定可能日MD12とに共通するお届け指定可能日RD1を、配送方法D1によって商品M1と商品M2を同梱してお届けする場合のお届け指定可能日として抽出する。また、抽出部133は、商品M1のお届け指定可能日MD21と商品M2のお届け指定可能日MD22とに共通するお届け指定可能日RD2を、配送方法D2によって商品M1と商品M2を同梱してお届けする場合のお届け指定可能日として抽出する。
(決定部134)
決定部134は、複数の商品の間で共通するお届け指定可能日が存在する場合には、複数の商品の間で共通するお届け指定可能日を複数の商品のお届け指定可能日として配送方法毎に決定する。図1に示す例では、抽出部133は、商品M1のお届け指定可能日MD11と商品M2のお届け指定可能日MD12とに共通するお届け指定可能日RD1を、配送方法D1によって商品M1と商品M2を同梱してお届けする場合のお届け指定可能日として決定する。また、抽出部133は、商品M1のお届け指定可能日MD21と商品M2のお届け指定可能日MD22とに共通するお届け指定可能日RD2を、配送方法D2によって商品M1と商品M2を同梱してお届けする場合のお届け指定可能日として決定する。
〔4.情報処理のフロー〕
次に、図11を用いて、実施形態に係る情報処理の手順について説明する。図11は、実施形態に係る情報処理手順を示すフローチャートである。図11に示す例では、情報処理装置100は、注文者から複数の商品の注文を受け付けたか否かを判定する(ステップS101)。情報処理装置100は、複数の商品の注文を受け付けていない場合(ステップS101;No)、複数の商品の注文を受け付けるまで待機する。
一方、情報処理装置100は、複数の商品の注文を受け付けた場合(ステップS101;Yes)、複数の商品の配送セット情報を商品毎に抽出する(ステップS102)。続いて、情報処理装置100は、複数の商品の間で共通する配送方法が存在するか否かを判定する(ステップS103)。情報処理装置100は、複数の商品の間で共通する配送方法が存在する場合(ステップS103;Yes)、共通する配送方法を抽出する(ステップS104)。続いて、情報処理装置100は、お届け指定可能日を配送方法毎に抽出する(ステップS105)。続いて、情報処理装置100は、複数の商品の間で共通するお届け指定可能日を複数の商品のお届け指定可能日として抽出する(ステップS106)。続いて、情報処理装置100は、抽出したお届け指定可能日を注文者に対して提案する(ステップS107)。
一方、情報処理装置100は、複数の商品の間で共通する配送方法が存在しない場合(ステップS103;No)、配送方法を商品毎に抽出する(ステップS108)。続いて、情報処理装置100は、お届け指定可能日を配送方法毎に抽出する(ステップS109)。続いて、情報処理装置100は、抽出したお届け指定可能日を注文者に対して提案する(ステップS107)。
〔5.効果〕
上述してきたように、実施形態に係る情報処理装置100は、記憶部120と抽出部133とを備える。記憶部120は、電子商取引で取り扱われる商品に関する商品情報と商品の配送方法に関する配送情報とを対応付けて商品毎に記憶する。抽出部133は、記憶部120に記憶された商品情報と配送情報とに基づいて、注文者によって選択された複数の商品の配送情報を商品毎に抽出する。
これにより、情報処理装置100は、配送方法を商品毎に決定することを可能にする。したがって、情報処理装置100は、電子商取引におけるユーザビリティを向上させることができる。
また、記憶部120は、配送情報として、商品の配送方法の組である配送セットに関する配送セット情報と商品情報とを対応付けて商品毎に記憶する。抽出部133は、記憶部120に記憶された配送セット情報と商品情報とに基づいて、注文者によって選択された複数の商品の配送セット情報を商品毎に抽出する。
これにより、情報処理装置100は、配送方法を商品毎に管理するのを容易にすることができる。これにより、情報処理装置100は、ユーザがお届け指定日を商品毎に選択できるようにする。
また、抽出部133は、商品毎に抽出した配送セット情報に含まれる配送方法毎に商品のお届け日の候補日であるお届け指定可能日を抽出する。
これにより、情報処理装置100は、ユーザがお届け指定日を商品毎に選択できるようにする。したがって、情報処理装置100は、電子商取引におけるユーザビリティを向上させることができる。
また、抽出部133は、商品毎に抽出した配送セット情報に含まれる配送方法の中に複数の商品の間で共通する配送方法が存在する場合には、複数の商品の間で共通する配送方法を抽出し、抽出した配送方法毎に複数の商品のお届け指定可能日を抽出する。また、抽出部133は、複数の商品の間で共通するお届け指定可能日が存在する場合には、複数の商品の間で共通するお届け指定可能日を複数の商品のお届け指定可能日として配送方法毎に抽出する。
これにより、情報処理装置100は、複数の商品を注文したユーザが複数の商品のお届け指定日を同時に選択できるようにする。したがって、情報処理装置100は、電子商取引におけるユーザビリティを向上させることができる。
また、記憶部120は、商品の代金の支払方法に関する支払情報と配送情報とを配送方法毎に対応付けた組の情報である第1セット情報と商品情報とを対応付けて商品毎に記憶する。抽出部133は、記憶部120に記憶された第1セット情報と商品情報とに基づいて、注文者によって選択された複数の商品の支払情報を商品毎に抽出する。
これにより、情報処理装置100は、複数の商品を注文したユーザが商品毎に支払方法を選択できるようにする。
また、記憶部120は、商品の配送スケジュールの型に関するスケジュール情報と配送情報とを配送方法毎に対応付けた組の情報である第2セット情報と商品情報とを対応付けて商品毎に記憶する。抽出部133は、記憶部120に記憶された第2セット情報と商品情報とに基づいて、注文者によって選択された複数の商品のスケジュール情報を商品毎に抽出する。
これにより、情報処理装置100は、配送スケジュールを商品毎に決定することを可能にする。これにより、情報処理装置100は、ユーザがお届け指定日を商品毎に選択できるようにする。
また、記憶部120は、商品の注文を当日注文として受け付ける締め切り時間である配送締め時間と配送情報とを配送方法毎に対応付けた組の情報である第1サブセット情報と商品情報とを対応付けて商品毎に記憶する。抽出部133は、記憶部120に記憶された第1サブセット情報と商品情報とに基づいて、注文者によって選択された複数の商品の配送締め時間を商品毎に抽出する。
これにより、情報処理装置100は、配送締め時間を商品毎に決定することを可能にする。これにより、情報処理装置100は、ユーザがお届け指定日を商品毎に選択できるようにする。
また、記憶部120は、商品の出荷から商品のお届けまでに要する日数である配送所要日数と配送情報とを配送方法毎に対応付けた組の情報である第2サブセット情報と商品情報とを対応付けて商品毎に記憶する。抽出部133は、記憶部120に記憶された第2サブセット情報と商品情報とに基づいて、注文者によって選択された複数の商品の配送所要日数を商品毎に抽出する。
これにより、情報処理装置100は、配送所要日数を商品毎に決定することを可能にする。これにより、情報処理装置100は、ユーザがお届け指定日を商品毎に選択できるようにする。
また、記憶部120は、商品を配送可能な期間の日数である配送可能期間と配送情報とを配送方法毎に対応付けた組の情報である第3サブセット情報と商品情報とを対応付けて商品毎に記憶する。抽出部133は、記憶部120に記憶された第3サブセット情報と商品情報とに基づいて、注文者によって選択された複数の商品の配送可能期間を商品毎に抽出する。
これにより、情報処理装置100は、配送可能期間を商品毎に決定することを可能にする。これにより、情報処理装置100は、ユーザがお届け指定日を商品毎に選択できるようにする。
〔6.ハードウェア構成〕
また、上述してきた実施形態に係る情報処理装置100は、例えば図12に示すような構成のコンピュータ1000によって実現される。図12は、情報処理装置100の機能を実現するコンピュータの一例を示すハードウェア構成図である。コンピュータ1000は、CPU1100、RAM1200、ROM1300、HDD1400、通信インターフェイス(I/F)1500、入出力インターフェイス(I/F)1600、及びメディアインターフェイス(I/F)1700を備える。
CPU1100は、ROM1300またはHDD1400に格納されたプログラムに基づいて動作し、各部の制御を行う。ROM1300は、コンピュータ1000の起動時にCPU1100によって実行されるブートプログラムや、コンピュータ1000のハードウェアに依存するプログラム等を格納する。
HDD1400は、CPU1100によって実行されるプログラム、及び、かかるプログラムによって使用されるデータ等を格納する。通信インターフェイス1500は、所定の通信網を介して他の機器からデータを受信してCPU1100へ送り、CPU1100が生成したデータを所定の通信網を介して他の機器へ送信する。
CPU1100は、入出力インターフェイス1600を介して、ディスプレイやプリンタ等の出力装置、及び、キーボードやマウス等の入力装置を制御する。CPU1100は、入出力インターフェイス1600を介して、入力装置からデータを取得する。また、CPU1100は、生成したデータを入出力インターフェイス1600を介して出力装置へ出力する。
メディアインターフェイス1700は、記録媒体1800に格納されたプログラムまたはデータを読み取り、RAM1200を介してCPU1100に提供する。CPU1100は、かかるプログラムを、メディアインターフェイス1700を介して記録媒体1800からRAM1200上にロードし、ロードしたプログラムを実行する。記録媒体1800は、例えばDVD(Digital Versatile Disc)、PD(Phase change rewritable Disk)等の光学記録媒体、MO(Magneto-Optical disk)等の光磁気記録媒体、テープ媒体、磁気記録媒体、または半導体メモリ等である。
例えば、コンピュータ1000が実施形態に係る情報処理装置100として機能する場合、コンピュータ1000のCPU1100は、RAM1200上にロードされたプログラムを実行することにより、制御部130の機能を実現する。コンピュータ1000のCPU1100は、これらのプログラムを記録媒体1800から読み取って実行するが、他の例として、他の装置から所定の通信網を介してこれらのプログラムを取得してもよい。
以上、本願の実施形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、発明の開示の欄に記載の態様を始めとして、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。
〔7.その他〕
また、上記実施形態及び変形例において説明した各処理のうち、自動的に行われるものとして説明した処理の全部または一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部または一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。例えば、各図に示した各種情報は、図示した情報に限られない。
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。
また、上述してきた実施形態及び変形例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
また、上述してきた「部(section、module、unit)」は、「手段」や「回路」などに読み替えることができる。例えば、抽出部は、抽出手段や抽出回路に読み替えることができる。