Shopwareの顧客管理機能を知る

今回はShopwareの顧客管理機能について紹介したいと思います。
顧客管理機能は商品管理機能や注文管理機能と並んで、ECサイトの運用ではよく使う機能の一つです。
機能としてはあまり複雑なものではありませんが、Shopware独自の要素が少しあるので注意が必要です。

顧客管理機能にアクセスするには

顧客管理機能にアクセスするには、Shopwareの管理画面にログインした状態で、

Customers > Overview

を選択します。
Shopware上にデータの存在する顧客一覧が表示され、会員とゲスト顧客の状況を確認することができます。

Shopware-顧客管理-顧客一覧

顧客一覧画面の特徴

顧客一覧画面では、

  • 顧客ID
  • 顧客氏名・住所
  • 顧客グループ
  • ゲストなどの区分

が表示されます。

Shopwareの顧客管理で特徴的なものとしては、

ゲストでもデータベースに個人情報が記録される

という点です。

これにはきちんとアプリケーションの設計上の理由があり、意味もなくデータベースに記録しているわけではありません。
なぜこのような動きをするのか、という点については「Shopwareの個人情報管理とセキュリティ関係の設定とは」で解説しています。

顧客登録画面

顧客情報を管理画面から登録したい場合は、「Add customer」ボタンをクリックします。

  • Account
  • Addresses

の2つのエリアがある登録画面が表示されます。

Account

まず最初はAccountです。
下図のように顧客情報(住所以外)を入力します。

新規顧客登録フォーム

各項目については下表のとおりです(わかりにくいものだけに限定しています)。

項目名 概要
Customer Type 顧客種別。Commercialの場合はVAT登録番号欄が有効になる。
Saltation 敬称。任意
Title 役職名。任意
Customer Group 顧客グループ。定義済みのものから選択。
Sales Channel 顧客が属するセールスチャネル。定義済みのものから選択。
VAT Reg. No. VAT登録番号。顧客種別がCommercialの場合のみ
Payment method デフォルトの支払方法。利用可能なものから選択。
Customer number 顧客番号。デフォルト値は自動採番。任意に変更可能。
Tags タグ。既存のタグ候補から選択またはフリーテキストで追加可能

Addresses

次は住所です。

住所登録フォーム

新規顧客登録時は1件しか登録できません。項目については比較的住所登録フォームでよく見られるものが用意されています。

顧客編集画面

登録済みの顧客情報を編集する場合は、一覧画面から編集したいデータの行を選択してください。
次のような画面が表示されます。

顧客情報

  • General
  • Addresses
  • Orders

の3つのタブがあり、このうちGeneralとAddressesでは顧客情報や住所情報の編集ができます。
編集したい場合は、右上の「Edit」ボタンをクリックします。
画面が切り替わり、編集フォームが下図のように表示されます。

顧客編集フォーム

住所の追加・編集

住所の追加、変更をしたい場合はAddressesタブを選択します。
登録済みの住所が下図のように表示されます。

住所リスト

編集可能な状態の場合は、「Add address」ボタンが有効になります。新しく住所を登録したい場合はこのボタンをクリックしてください。
登録済みの住所に対しては、行の右端にある「...」をクリックするとサブメニューが開きます。

サブメニュー

編集が終わったら、「Save」ボタンをクリックします。

ゲスト顧客のクリーンアップ方法

ゲスト顧客は放置するとデータベース上にたまり続けます。
不要なゲスト顧客を削除する方法としては、

  • 管理画面から対象データを指定して削除する
  • コマンドラインから一括削除する

という2通りの方法が用意されています。

ここではコマンドラインからの一括削除について説明します。

customer:delete-unused-guests コマンド

ShopwareはPHPフレームワークのSymfonyを利用して構築・開発されている関係上、多くのコマンドライン機能を有しています。
そのうちの一つに、「ゲスト顧客の一括削除」が用意されており、「customer:delete-unused-guests」という名前となっています。
このコマンドはShopwareのインストールディレクトリから次のように実行します。

php bin/console customer:delete-unused-guests

実行すると、削除対象のデータをデータベースから抽出し、削除してよいかを聞いてきます。
削除を実行すると、対象データは物理的にデータベースから削除されます。

残念ながら、Shopware6.5の時点ではこのコマンドを完全自動運用することはできず、常にコマンド実行時に確認が必要となっています。