OEM事業者向け運用マニュアル
最終更新日: 2026年2月16日
対象読者: OEM事業者(ホワイトラベルパートナー)
バージョン: 3.0
目次
- はじめに(概要・OEM事業者とは)
- 初期セットアップフロー
- クライアント(エンドユーザー)管理
- アフィリエイト管理
- ダッシュボードと分析
- トライアル管理
- 口コミ判断OS(配下クライアント管理用)
- リード管理
- セキュリティ・データ分離
- 日常運用チェックリスト
- よくある質問(FAQ)
- 困ったときのトラブルシューティング
- 用語集
1. はじめに
1.1 本マニュアルについて
本マニュアルは、クチコミキャッチのOEM事業者(ホワイトラベルパートナー)向けの運用ガイドです。初期設定からクライアント管理、日常運用まで、OEM事業者として必要なすべての操作手順を解説しています。
1.2 クチコミキャッチとは
クチコミキャッチは、全業種向けのB2B2C SaaS型アンケート・クチコミ管理プラットフォームです。飲食店、美容室、ネイルサロン、ホテル、医療機関、小売店、整体、エステ・スパなど、幅広い業種に対応しています。
1.3 OEM事業者とは
OEM事業者とは、クチコミキャッチのプラットフォームを自社ブランドとして提供するパートナーです。
┌─────────────────────────────────────────────────────────┐
│ ユーザー階層構造 │
│ │
│ ┌───────────────────┐ │
│ │ システム管理者 │ ← プラットフォーム全体管理 │
│ └────────┬──────────┘ │
│ │ │
│ ┌────────▼──────────┐ │
│ │ OEM事業者(あなた)│ ← ホワイトラベルでサービス提供 │
│ └────────┬──────────┘ │
│ │ │
│ ┌──────┴──────┐ │
│ │ │ │
│ ┌───▼────┐ ┌────▼───────┐ │
│ │アフィリエイト│ │エンドユーザー │ ← 店舗オーナー・管理者 │
│ │(紹介者)│ │(クライアント)│ │
│ └────────┘ └────────────┘ │
└─────────────────────────────────────────────────────────┘
OEM事業者ができること:
| 機能 | 説明 |
|---|---|
| ブランドカスタマイズ | ロゴ・カラー・サービス名を自社仕様に変更 |
| 独自ドメイン | 自社ドメインでサービスを提供 |
| クライアント管理 | エンドユーザー(店舗オーナー)を登録・管理 |
| アフィリエイト管理 | 紹介パートナーを管理・コミッション設定 |
| 独自メール配信 | 自社SMTPサーバーでメール送信 |
| 独自決済 | 自社Stripeアカウントで課金 |
| 独自AI設定 | 自社OpenAI APIキーでAI機能を提供 |
| 独自Google連携 | 自社Google OAuthでGoogleレビュー連携 |
| 収益管理 | クライアントの売上・コミッションを一元管理 |
| 口コミ判断OS | 全クライアントの解約予兆を一括分析 |
2. 初期セットアップフロー
2.1 セットアップ全体の流れ
以下の順番で初期設定を行ってください。各ステップの詳細は後述します。
┌──────────────────────────────────────────────────────────────┐
│ 初期セットアップフロー │
│ │
│ STEP 1 アカウント登録・ログイン │
│ │ /partner-login │
│ ▼ │
│ STEP 2 2FA設定(必須) │
│ │ /setup-2fa │
│ ▼ │
│ STEP 3 ホワイトラベル設定 │
│ │ /oem/white-label │
│ ▼ │
│ STEP 4 SMTP設定(メール配信) │
│ │ /oem/payment-settings → SMTPタブ │
│ ▼ │
│ STEP 5 Stripe決済設定 │
│ │ /oem/payment-settings → Stripeタブ │
│ ▼ │
│ STEP 6 OpenAI設定(AI機能) │
│ │ /oem/openai-settings │
│ ▼ │
│ STEP 7 Google OAuth設定(Googleレビュー連携) │
│ │ /oem/google-oauth-settings │
│ ▼ │
│ STEP 8 メールテンプレート設定 │
│ │ /oem/email-template-settings │
│ ▼ │
│ ✅ 初期設定完了 → クライアント追加へ │
│ │ /oem/add-client │
│ ▼ │
│ 運用開始! │
└──────────────────────────────────────────────────────────────┘
重要: STEP 1〜3は必須です。STEP 4〜8は、利用する機能に応じて設定してください。設定しない場合はシステム共通の設定が使用されます。
2.2 STEP 1: アカウント登録とログイン
画面: /partner-login
アカウント登録(初回のみ)
- ブラウザで
/oem_registerにアクセスします - 以下の情報を入力します:
| 項目 | 必須 | 説明 |
|---|---|---|
| 会社名 | ✅ | 貴社の正式名称 |
| 担当者名 | ー | 主要担当者のお名前 |
| メールアドレス | ✅ | ログインに使用するメールアドレス |
| 電話番号 | ー | 連絡先電話番号 |
| 業種 | ー | 貴社の業種 |
| ユーザー名 | ✅ | ログインに使用するユーザー名(半角英数字) |
| パスワード | ✅ | 8文字以上の強力なパスワード |
- 「登録」ボタンをクリックします
- 「アカウントが正常に登録されました」と表示されれば完了です
ログイン
- ブラウザで
/partner-loginにアクセスします - ユーザー名(またはメールアドレス)とパスワードを入力します
- 「ログイン」ボタンをクリックします
- 初回ログイン時は、2FA設定画面に自動的にリダイレクトされます
ヒント: パスワードを忘れた場合は、ログイン画面の「パスワードをお忘れですか?」リンクから再設定できます。
2.3 STEP 2: 2FA設定(必須)
画面: /setup-2fa
OEM事業者は、セキュリティ上の理由から2段階認証(2FA)の設定が必須です。設定が完了するまで、他の画面にアクセスすることはできません。
事前準備
スマートフォンに以下のいずれかのアプリをインストールしてください:
| アプリ名 | 推奨度 | 対応OS |
|---|---|---|
| Google Authenticator | ⭐推奨 | iOS / Android |
| Microsoft Authenticator | ○ | iOS / Android |
| Authy | ○ | iOS / Android / PC |
設定手順
- ログイン後、自動的に
/setup-2fa画面が表示されます - 画面にQRコードが表示されます
- スマートフォンの認証アプリを開きます
- アプリの「+」ボタン(またはアカウント追加ボタン)をタップします
- 「QRコードをスキャン」を選択します
- 画面に表示されているQRコードをスマートフォンのカメラで読み取ります
- アプリに表示される6桁のコードを、画面の入力欄に入力します
- 「確認」ボタンをクリックします
- 「2FAが正常に設定されました」と表示されれば完了です
┌────────────────────────────────────────┐
│ 2FA設定の流れ │
│ │
│ PC画面 スマートフォン │
│ ┌──────────┐ ┌──────────┐ │
│ │ │ │ │ │
│ │ QRコード │ ──────→ │ カメラで │ │
│ │ 表示 │ スキャン │ 読み取り │ │
│ │ │ │ │ │
│ └──────────┘ └────┬─────┘ │
│ ▲ │ │
│ │ 6桁コード入力 ▼ │
│ ┌────┴─────┐ ┌──────────┐ │
│ │ │ │ │ │
│ │ コード │ ←────── │ 6桁コード │ │
│ │ 入力欄 │ │ 表示 │ │
│ │ │ │ │ │
│ └──────────┘ └──────────┘ │
└────────────────────────────────────────┘
重要: QRコードの読み取りがうまくいかない場合は、画面下部に表示される「手動入力キー」をアプリに直接入力してください。
注意: 認証アプリを削除したり、スマートフォンを機種変更する場合は、必ず事前にシステム管理者に連絡して2FAをリセットしてもらってください。
2.4 STEP 3: ホワイトラベル設定
画面: /oem/white-label
ホワイトラベル設定では、サービスの外観を貴社ブランドに合わせてカスタマイズします。
設定手順
- サイドメニューから「ホワイトラベル設定」を選択します
- 以下の項目を設定します:
| 項目 | 説明 | 入力例 |
|---|---|---|
| ホワイトラベル有効化 | チェックを入れると有効になります | ✅ |
| 会社名 | 貴社の正式名称 | 株式会社サンプル |
| サービス名 | サービスのブランド名 | レビューマスター |
| ロゴURL | ロゴ画像のURL(HTTPS推奨) | https://example.com/logo.png |
| プライマリカラー | メインの色(16進数) | #667eea |
| セカンダリカラー | サブの色(16進数) | #764ba2 |
| サポートメールアドレス | 顧客からの問い合わせ先 | support@example.com |
| カスタムCSS | 追加のスタイル設定(上級者向け) | ー |
| フッターテキスト | ページ下部に表示するテキスト | © 2026 株式会社サンプル |
| オリジナルブランディング非表示 | 「クチコミキャッチ」の表記を非表示にする | ✅ |
会社情報(任意):
| 項目 | 説明 |
|---|---|
| 代表者名 | 代表取締役のお名前 |
| 設立年月 | 会社の設立年月 |
| 資本金 | 資本金 |
| 所在地 | 会社の住所 |
| 電話番号 | 会社の代表電話番号 |
| メールアドレス | 会社のメールアドレス |
| 事業内容 | 主な事業内容 |
| 会社説明 | 会社概要 |
- 「設定を保存」ボタンをクリックします
- 「ホワイトラベル設定を保存しました」と表示されれば完了です
独自ドメインの設定
独自ドメインでサービスを提供する場合は、以下の手順で設定します:
- 「カスタムドメイン」欄に、使用するドメイン名を入力します(例:
review.example.com) - 設定を保存します
- ドメインのDNS設定で、CNAMEレコードを追加します:
review.example.com CNAME → [システム管理者から指定されたドメイン]
- DNSの反映には最大48時間かかる場合があります
- SSL証明書は自動的に発行されます
ヒント: カラーコードがわからない場合は、Googleで「カラーピッカー」と検索すると、色を選んでコードをコピーできるツールが表示されます。
2.5 STEP 4: SMTP設定(メール配信)
画面: /oem/payment-settings → 「SMTP設定」タブ
SMTP設定を行うと、パスワードリセットメールやアカウント作成通知などを、貴社のメールサーバーから送信できます。
設定手順
- サイドメニューから「決済・メール設定」を選択します
- 「SMTP設定」タブをクリックします
- 以下の項目を入力します:
| 項目 | 説明 | 入力例 |
|---|---|---|
| SMTP有効化 | チェックを入れると有効になります | ✅ |
| SMTPサーバー | メールサーバーのホスト名 | smtp.gmail.com |
| ポート番号 | 接続ポート | 587 |
| 暗号化方式 | TLS または SSL | TLS |
| SMTPユーザー名 | 認証用のユーザー名 | user@example.com |
| SMTPパスワード | 認証用のパスワード | ******** |
| 送信元メールアドレス | メールの差出人アドレス | noreply@example.com |
| 送信元名 | メールの差出人名 | レビューマスター |
- 「設定を保存」ボタンをクリックします
主要メールプロバイダーの設定例
Gmail / Google Workspace:
| 項目 | 設定値 |
|---|---|
| SMTPサーバー | smtp.gmail.com |
| ポート | 587 |
| 暗号化 | TLS |
| ユーザー名 | あなたのGmailアドレス |
| パスワード | アプリパスワード(※) |
※ Gmailではアプリパスワードの生成が必要です。Google アカウント設定 → セキュリティ → 2段階認証 → アプリパスワードで生成できます。
Amazon SES:
| 項目 | 設定値 |
|---|---|
| SMTPサーバー | email-smtp.ap-northeast-1.amazonaws.com |
| ポート | 587 |
| 暗号化 | TLS |
| ユーザー名 | SES SMTP認証情報のユーザー名 |
| パスワード | SES SMTP認証情報のパスワード |
SendGrid:
| 項目 | 設定値 |
|---|---|
| SMTPサーバー | smtp.sendgrid.net |
| ポート | 587 |
| 暗号化 | TLS |
| ユーザー名 | apikey |
| パスワード | 発行されたAPIキー |
SMTP接続テスト
設定保存後、必ず接続テストを実行してください:
- 「テスト送信」ボタンをクリックします
- テスト送信先のメールアドレスを入力します
- 「送信」ボタンをクリックします
- テストメールが受信できれば設定は正しいです
┌──────────────────────────────────────┐
│ SMTP接続テストのフロー │
│ │
│ 設定入力 │
│ │ │
│ ▼ │
│ 「テスト送信」クリック │
│ │ │
│ ├── 成功 → ✅ 設定完了 │
│ │ │
│ └── 失敗 → エラーメッセージ確認 │
│ │ │
│ ├─ 認証失敗 │
│ │ → ユーザー名/PW確認 │
│ │ │
│ ├─ 接続タイムアウト │
│ │ → サーバー名/ポート確認│
│ │ │
│ └─ TLS/SSLエラー │
│ → 暗号化方式を変更 │
└──────────────────────────────────────┘
注意: SMTP設定が未設定の場合、メールはシステム共通のメールサーバーから送信されます。貴社ブランドで送信したい場合は必ず設定してください。
2.6 STEP 5: Stripe決済設定
画面: /oem/payment-settings → 「Stripe設定」タブ
Stripe決済設定を行うと、クライアント(エンドユーザー)の有料プラン課金を、貴社のStripeアカウントで処理できます。
事前準備
- Stripe公式サイト でアカウントを作成します
- Stripeダッシュボードにログインします
- 「開発者」→「APIキー」から公開鍵と秘密鍵をコピーします
- Webhookを設定します(後述)
設定手順
- サイドメニューから「決済・メール設定」を選択します
- 「Stripe設定」タブをクリックします
- 以下の項目を入力します:
| 項目 | 説明 | 入力例 |
|---|---|---|
| Stripe有効化 | チェックを入れると有効になります | ✅ |
| テストモード | テスト環境で動作確認する場合はON | ✅(初回はON推奨) |
| Stripe公開鍵 | Publishable key | pk_test_... または pk_live_... |
| Stripe秘密鍵 | Secret key | sk_test_... または sk_live_... |
| Webhookシークレット | Webhook署名検証用 | whsec_... |
| 価格ID | Stripeの価格ID(月額プラン用) | price_... |
- 「設定を保存」ボタンをクリックします
テストモードと本番モードの切り替え
┌───────────────────────────────────────────────────┐
│ │
│ テストモード(推奨:最初はこちらで確認) │
│ ┌───────────────────────────────────────┐ │
│ │ 公開鍵: pk_test_xxxxxxxxxx │ │
│ │ 秘密鍵: sk_test_xxxxxxxxxx │ │
│ │ テストカード: 4242 4242 4242 4242 │ │
│ │ ※ 実際の課金は発生しません │ │
│ └───────────────────────────────────────┘ │
│ │ │
│ │ 動作確認が完了したら │
│ ▼ │
│ 本番モード │
│ ┌───────────────────────────────────────┐ │
│ │ 公開鍵: pk_live_xxxxxxxxxx │ │
│ │ 秘密鍵: sk_live_xxxxxxxxxx │ │
│ │ 実際のカードで課金が発生します │ │
│ └───────────────────────────────────────┘ │
│ │
└───────────────────────────────────────────────────┘
切り替え手順:
- Stripeダッシュボードで本番モードのAPIキーをコピーします
- 本システムの設定画面で公開鍵と秘密鍵を本番用に変更します
- 「テストモード」のチェックを外します
- 設定を保存します
Webhook設定手順
- Stripeダッシュボードにログインします
- 「開発者」→「Webhook」を開きます
- 「エンドポイントを追加」をクリックします
- エンドポイントURLに以下を入力します:
https://[あなたのドメイン]/stripe-webhook - リッスンするイベントで以下を選択します:
checkout.session.completedcustomer.subscription.updatedcustomer.subscription.deletedinvoice.payment_succeededinvoice.payment_failed- 「エンドポイントを追加」をクリックします
- 表示される「署名シークレット」(
whsec_...)をコピーして、本システムの設定画面に入力します
注意: Stripe決済設定が未設定の場合、クライアントの課金機能は無効になります。
2.7 STEP 6: OpenAI設定(AI機能)
画面: /oem/openai-settings
OpenAI設定を行うと、AI口コミ生成・AI感情分析・AIアンケート生成などのAI機能を、貴社専用のAPIキーで利用できます。
事前準備
- OpenAI公式サイト でアカウントを作成します
- APIキーを発行します:
- ダッシュボード → 「API keys」 → 「Create new secret key」
- 利用料金のクレジットを追加します(従量課金制)
設定手順
- サイドメニューから「OpenAI設定」を選択します
- 以下の項目を入力します:
| 項目 | 説明 | 入力例 |
|---|---|---|
| OpenAI有効化 | チェックを入れると有効になります | ✅ |
| APIキー | OpenAIのAPIキー | sk-proj-... |
- 「設定を保存」ボタンをクリックします
接続テスト
APIキーの設定後、必ず接続テストを実行してください:
- 「接続テスト」ボタンをクリックします
- テストが実行され、結果が表示されます
- 「OpenAI APIへの接続に成功しました」と表示されれば設定は正しいです
自動切替モード
本システムでは、リクエストの複雑度に応じてAIモデルが自動選択されます:
| モデル | 用途 | コスト |
|---|---|---|
| GPT-4o Mini | 簡単なリクエスト(短文レビュー生成など) | 低い |
| GPT-4.1 | 複雑なリクエスト(詳細分析、長文生成など) | 高い |
ヒント: OpenAI設定が未設定の場合、システム共通のAPIキーが使用されます。貴社の利用量管理や課金管理を独立させたい場合は設定をお勧めします。
注意: APIキーは暗号化(Fernet方式)されてデータベースに保存されます。平文で保存されることはありません。
2.8 STEP 7: Google OAuth設定(Googleレビュー連携)
画面: /oem/google-oauth-settings
Google OAuth設定を行うと、クライアントがGoogleビジネスプロフィールと連携してGoogleレビューの取得・返信ができるようになります。
事前準備:GCPコンソールでのセットアップ
- Google Cloud Console にアクセスします
- プロジェクトを作成します:
- 「プロジェクトを選択」→「新しいプロジェクト」
- プロジェクト名を入力して「作成」
- Google My Business APIを有効化します:
- 「APIとサービス」→「ライブラリ」
- 「Google My Business API」を検索して「有効にする」
- OAuth同意画面を設定します:
- 「APIとサービス」→「OAuth同意画面」
- ユーザータイプ:外部
- アプリ名、サポートメール等を入力
- スコープに
https://www.googleapis.com/auth/business.manageを追加 - OAuth 2.0クライアントIDを作成します:
- 「APIとサービス」→「認証情報」→「認証情報を作成」→「OAuthクライアントID」
- アプリケーションの種類:ウェブアプリケーション
- 承認済みリダイレクトURIに以下を追加:
https://[あなたのドメイン]/google-oauth-callback - 「作成」をクリック
- 表示されるクライアントIDとクライアントシークレットをメモします
設定手順
- サイドメニューから「Google OAuth設定」を選択します
- 以下の項目を入力します:
| 項目 | 説明 | 入力例 |
|---|---|---|
| クライアントID | GCPで作成したOAuthクライアントID | 123456789-abc.apps.googleusercontent.com |
| クライアントシークレット | GCPで発行されたシークレット | GOCSPX-xxxxxxxxxx |
- 「設定を保存」ボタンをクリックします
- 「Google OAuth設定を保存しました」と表示されれば完了です
重要: クライアントIDは必ず
.apps.googleusercontent.comで終わる形式です。この形式でない場合はエラーになります。注意: Google OAuth認証情報は暗号化(Fernet方式)されてデータベースに保存されます。
2.9 STEP 8: メールテンプレート設定
画面: /oem/email-template-settings
メールテンプレート設定では、パスワードリセットメールやアカウント作成通知メールの内容をカスタマイズできます。HTML/CSSに対応しており、貴社ブランドに合わせた美しいメールを送信できます。
設定手順
- サイドメニューから「メールテンプレート設定」を選択します
- テンプレートの種類を選択します:
- パスワードリセットメール
- アカウント作成通知メール
- ウェルカムメール
- HTML形式でテンプレートを編集します
- 「プレビュー」ボタンで表示を確認します
- 「保存」ボタンをクリックします
利用可能なプレースホルダー
メールテンプレート内で以下のプレースホルダーを使用できます。送信時に自動的に実際の値に置き換えられます。
| プレースホルダー | 説明 | 置換例 |
|---|---|---|
{user_name} |
ユーザー名 | 田中太郎 |
{email} |
メールアドレス | tanaka@example.com |
{reset_link} |
パスワードリセットリンク | https://... |
{company_name} |
貴社名(ホワイトラベル設定の会社名) | 株式会社サンプル |
{service_name} |
サービス名 | レビューマスター |
{login_url} |
ログインURL | https://... |
{support_email} |
サポートメールアドレス | support@example.com |
{current_year} |
現在の年 | 2026 |
テンプレートの例
<div style="font-family: Arial, sans-serif; max-width: 600px; margin: 0 auto;">
<div style="background-color: #667eea; padding: 20px; text-align: center;">
<h1 style="color: white;">{company_name}</h1>
</div>
<div style="padding: 30px;">
<p>{user_name} 様</p>
<p>パスワードリセットのリクエストを受け付けました。</p>
<p>以下のリンクからパスワードを再設定してください:</p>
<a href="{reset_link}"
style="display: inline-block; padding: 12px 24px;
background-color: #667eea; color: white;
text-decoration: none; border-radius: 4px;">
パスワードを再設定する
</a>
<p style="margin-top: 20px; color: #666;">
このメールに心当たりがない場合は、無視してください。
</p>
</div>
<div style="background-color: #f5f5f5; padding: 15px; text-align: center;">
<p style="color: #999; font-size: 12px;">
© {current_year} {company_name} | {support_email}
</p>
</div>
</div>
3. クライアント(エンドユーザー)管理
3.1 クライアント管理の全体像
┌──────────────────────────────────────────────────┐
│ クライアント管理フロー │
│ │
│ ┌────────────────┐ │
│ │ クライアント追加 │ /oem/add-client │
│ └───────┬────────┘ │
│ │ │
│ ▼ │
│ ┌────────────────┐ │
│ │ 自動アカウント │ メール/パスワード自動生成 │
│ │ 作成 │ ログイン情報をメール送信 │
│ └───────┬────────┘ │
│ │ │
│ ▼ │
│ ┌────────────────┐ │
│ │ クライアント一覧 │ /oem/clients │
│ │ で管理 │ 状態確認・編集 │
│ └───────┬────────┘ │
│ │ │
│ ┌────┴────┐ │
│ ▼ ▼ │
│ ┌────────┐ ┌──────────────┐ │
│ │編集 │ │ダッシュボード │ │
│ │/edit │ │代理閲覧 │ │
│ └────────┘ └──────────────┘ │
└──────────────────────────────────────────────────┘
3.2 クライアント一覧
画面: /oem/clients
クライアント一覧画面では、貴社配下のすべてのクライアント(エンドユーザー)を確認・管理できます。
表示される情報
| 項目 | 説明 |
|---|---|
| ユーザー名 | クライアントのログイン名 |
| メールアドレス | 連絡先メール |
| 会社名/店舗名 | 登録されている会社名 |
| プラン | 現在のプラン(無料/プレミアム等) |
| 店舗数 | 登録している店舗の数 |
| ステータス | アクティブ / 停止中 |
| 最終ログイン | 最後にログインした日時 |
フィルター・検索
- ステータス別フィルター(アクティブ / 停止中 / 全て)
- キーワード検索(ユーザー名、メール、会社名)
3.3 クライアント追加
画面: /oem/add-client
新しいクライアント(エンドユーザー)を追加します。アカウントは自動的に作成され、ログイン情報がメールで送信されます。
追加手順
- サイドメニューから「クライアント管理」→「クライアント追加」を選択します
- 以下の情報を入力します:
| 項目 | 必須 | 説明 |
|---|---|---|
| 会社名/店舗名 | ✅ | クライアントの名称 |
| 担当者名 | ✅ | 担当者のお名前 |
| メールアドレス | ✅ | ログインに使用するメール |
| 電話番号 | ー | 連絡先電話番号 |
| プラン | ✅ | 無料 / スタンダード / プロフェッショナル |
| トライアル期間 | ー | トライアル日数(設定する場合) |
- 「追加」ボタンをクリックします
自動アカウント作成の仕組み
┌──────────────────────────────────────────────────┐
│ 自動アカウント作成フロー │
│ │
│ OEM事業者がフォーム入力・送信 │
│ │ │
│ ▼ │
│ システムが自動処理: │
│ ├─ ① ユーザー名を自動生成 │
│ │ (メールアドレスから生成) │
│ ├─ ② ランダムパスワードを自動生成 │
│ ├─ ③ エンドユーザーアカウント作成 │
│ │ (parent_id = OEM事業者のID) │
│ └─ ④ ログイン情報メール送信 │
│ (設定されたSMTP or システム共通から送信) │
│ │ │
│ ▼ │
│ クライアントがメールを受信 │
│ │ │
│ ▼ │
│ 初回ログイン → パスワード変更推奨 │
└──────────────────────────────────────────────────┘
重要: クライアントは必ず貴社(OEM事業者)の配下に紐づけられます。他のOEM事業者のクライアントは見えません。
3.4 クライアント編集
画面: /oem/edit-client/<id>
既存のクライアント情報を編集します。
編集可能な項目
| 項目 | 説明 |
|---|---|
| 会社名/店舗名 | クライアントの名称を変更 |
| メールアドレス | 連絡先メールを変更 |
| 電話番号 | 電話番号を変更 |
| プラン | 利用プランを変更 |
| ステータス | アクティブ / 停止中を切り替え |
操作手順
- クライアント一覧から対象のクライアントの「編集」ボタンをクリックします
- 必要な項目を変更します
- 「保存」ボタンをクリックします
3.5 クライアントのダッシュボード代理閲覧
画面: /oem/client-dashboard/<id>
クライアント(エンドユーザー)のダッシュボードを、OEM事業者として代理閲覧できます。クライアントのデータや利用状況を確認する際に使用します。
閲覧可能な情報
- アンケート回答数・評価の統計
- 登録店舗の一覧と状態
- 最近のアンケート回答
- AI分析結果
- 口コミ判断OSのリスクスコア
注意: 代理閲覧はあくまで「閲覧」のみです。クライアントの設定を変更する場合は、クライアント編集画面を使用してください。
3.6 プランテンプレート管理
画面: /oem/plan-templates
クライアントに提供するプランのテンプレートを管理します。
プラン構成
| プラン | 店舗数 | 月間回答数 | 主な機能 |
|---|---|---|---|
| 無料(フリー) | 1店舗 | 100件 | 基本アンケート・レビュー機能 |
| スタンダード | 3店舗 | 1,000件 | AI分析・多言語・クーポン等 |
| プロフェッショナル | 10店舗 | 5,000件 | Google連携・Instagram→GBP連携・自動化・競合分析等 |
| エンタープライズ | 100店舗 | 50,000件 | 全機能・優先サポート |
テンプレート設定手順
- サイドメニューから「プランテンプレート」を選択します
- 既存テンプレートの確認、または新規テンプレートの作成を行います
- 各プランで利用可能な機能を設定します
- 「保存」ボタンをクリックします
4. アフィリエイト管理
4.1 アフィリエイト一覧・管理
画面: /oem/affiliates
アフィリエイトとは、新規クライアント獲得を支援する紹介パートナーです。アフィリエイトが紹介したクライアントの売上に応じてコミッション(手数料)が発生します。
アフィリエイト管理画面の操作
- サイドメニューから「アフィリエイト管理」を選択します
- アフィリエイト一覧が表示されます
| 表示項目 | 説明 |
|---|---|
| 名前 | アフィリエイトの名前 |
| メールアドレス | 連絡先メール |
| 紹介クライアント数 | これまでに紹介したクライアント数 |
| コミッション率 | 設定されたコミッション率(%) |
| 累計コミッション | これまでの合計コミッション金額 |
| ステータス | アクティブ / 停止中 |
4.2 コミッション設定
コミッション率の設定
- アフィリエイト一覧から対象のアフィリエイトを選択します
- 「コミッション設定」をクリックします
- コミッション率(%)を入力します
- 「保存」をクリックします
コミッション計算の仕組み
┌──────────────────────────────────────────┐
│ コミッション計算フロー │
│ │
│ アフィリエイトが新規クライアントを紹介 │
│ │ │
│ ▼ │
│ クライアントが有料プランを契約 │
│ │ │
│ ▼ │
│ 利用料 × コミッション率 = コミッション額 │
│ │ │
│ ▼ │
│ コミッション履歴に自動記録 │
└──────────────────────────────────────────┘
5. ダッシュボードと分析
5.1 OEMダッシュボード
画面: /oem/dashboard
OEMダッシュボードは、貴社の事業状況を一目で把握できるメイン画面です。
主要KPIの見方
| KPI | 意味 | 目安 |
|---|---|---|
| エンドユーザー数 | 登録クライアント総数 | ー |
| アフィリエイト数 | 紹介パートナーの数 | ー |
| アクティブ店舗数 | 稼働中の店舗数 | 多いほど良い |
| 月間アンケート回答数 | 当月のアンケート回答総数 | 多いほど良い |
5.2 詳細ダッシュボード
画面: /oem/dashboard-detailed
より詳細なデータを確認できます。
| データ項目 | 説明 |
|---|---|
| エンドユーザー数推移 | 月別のユーザー増減 |
| アクティブ店舗数推移 | 月別の店舗数変化 |
| 月間回答数推移 | 月別のアンケート回答数 |
| プラン別分布 | 無料/有料プランの比率 |
| 最近追加されたクライアント | 直近のクライアント一覧 |
5.3 高度な分析
画面: /oem/analytics
注意: この機能はプレミアム機能です。トライアル期間中は無料で利用できますが、期間終了後は有料プランが必要です。
高度な分析では、以下のような詳細なレポートを確認できます:
- クライアント別利用率ランキング
- 業種別分析
- 解約リスク分析
- 収益予測
5.4 請求・収益管理
画面: /dashboard/billing-revenue
表示される情報
| 項目 | 説明 |
|---|---|
| 月次収益 | 当月の配下ユーザーの合計利用料 |
| 年間収益 | 月次×12の年間見込み |
| アクティブ顧客数 | 有料プランの稼働ユーザー数 |
| コミッション率 | OEM契約に基づく収益分配率 |
収益レポートの見方
┌──────────────────────────────────────────────────┐
│ 月次収益レポート │
│ │
│ ┌─────────────┐ ┌─────────────┐ │
│ │ 月次収益 │ │ 年間予測 │ │
│ │ (合計表示) │ │ (合計表示)│ │
│ └─────────────┘ └─────────────┘ │
│ │
│ ┌─────────────┐ ┌─────────────┐ │
│ │ アクティブ │ │ コミッション │ │
│ │ 顧客数 │ │ 率 │ │
│ └─────────────┘ └─────────────┘ │
└──────────────────────────────────────────────────┘
6. トライアル管理
6.1 エンドユーザーへのトライアル提供
新規クライアントに対して、有料機能の無料トライアル期間を提供できます。
トライアル設定
- クライアント追加時に「トライアル期間」を設定します
- 一般的なトライアル期間: 14日間 または 30日間
- トライアル期間中は、設定されたプランの全機能が利用可能です
トライアルの流れ
┌──────────────────────────────────────────────────┐
│ トライアルフロー │
│ │
│ クライアント追加(トライアル14日設定) │
│ │ │
│ ▼ │
│ トライアル開始 │
│ │ ← 全機能利用可能 │
│ │ │
│ │ [残り7日] アラート通知 │
│ │ [残り3日] 再度通知 │
│ │ │
│ ├── 有料プラン契約 → ✅ 継続利用 │
│ │ │
│ └── 期限切れ → 無料プランに自動移行 │
│ (データは保持、機能制限あり) │
└──────────────────────────────────────────────────┘
6.2 トライアル→有料変換の追跡
ダッシュボードや収益管理画面で、以下の指標を確認できます:
| 指標 | 説明 |
|---|---|
| トライアル中のクライアント数 | 現在トライアル期間中のクライアント数 |
| 変換率 | トライアル→有料に移行した割合 |
| 平均変換日数 | トライアル開始から有料契約までの平均日数 |
7. 口コミ判断OS
7.1 概要
口コミ判断OSは、配下クライアントの全店舗の口コミ状況を分析し、解約リスクや対応優先度を可視化するシステムです。OEM事業者は全クライアントの状況を一括で確認できます。
7.2 ダッシュボード
画面: /decision-os
OEM事業者としてアクセスすると、配下の全クライアントの全店舗のリスク一覧が表示されます。
リスクレベルの見方
| フラグ | スコア範囲 | 意味 | 推奨アクション |
|---|---|---|---|
| 🔴 赤(危険) | 70〜100 | 解約リスクが高い | 即座の対応が必要。クライアントに連絡 |
| 🟡 黄(注意) | 40〜69 | 注意が必要 | 改善施策の提案を検討 |
| 🟢 緑(安全) | 0〜39 | 安定している | 現状維持で問題なし |
ダッシュボードの見方
┌──────────────────────────────────────────────────┐
│ 口コミ判断OSダッシュボード │
│ │
│ リスクサマリー: │
│ ┌────────┐ ┌────────┐ ┌────────┐ │
│ │🔴 危険 │ │🟡 注意 │ │🟢 安全 │ │
│ │ 3店舗 │ │ 8店舗 │ │ 25店舗 │ │
│ └────────┘ └────────┘ └────────┘ │
│ │
│ 店舗一覧(スコア順): │
│ ┌────────────────────────────────────────┐ │
│ │ 1. ○○レストラン新宿店 🔴 スコア: 82 │ │
│ │ 2. △△美容室渋谷店 🔴 スコア: 75 │ │
│ │ 3. ××カフェ表参道店 🔴 スコア: 71 │ │
│ │ 4. ○○ネイル銀座店 🟡 スコア: 65 │ │
│ │ ... │ │
│ └────────────────────────────────────────┘ │
└──────────────────────────────────────────────────┘
7.3 スコア再計算
- ダッシュボード上部の「スコア再計算」ボタンをクリックします
- 全店舗の解約予兆スコアが最新データで再計算されます
- 「○○店舗の解約予兆スコアを更新しました」と表示されます
ヒント: スコアは過去30日間のデータに基づいて計算されます。定期的に再計算を行うことで、最新の状況を把握できます。
7.4 店舗詳細
画面: /decision-os/store/<store_id>
各店舗の解約予兆スコアの内訳を確認できます。
解約予兆スコアの構成要素
| 要素 | 重み | 説明 |
|---|---|---|
| 評価平均 | 25% | 過去30日間の平均評価。低いほどリスク高 |
| 評価変動率 | 20% | 前月比での評価変動。下降するほどリスク高 |
| ネガティブ比率 | 20% | 星2以下のレビューの割合。高いほどリスク高 |
| 返信率 | 15% | レビュー返信率。低いほどリスク高 |
| ボリューム推移 | 10% | レビュー件数の前月比。減少するとリスク高 |
| 未返信数 | 10% | 未返信レビュー数。多いほどリスク高 |
口コミ分類と推奨アクション
店舗詳細画面では、個々の口コミが自動分類され、推奨アクションが表示されます。
| アクション | 意味 | 対応方法 |
|---|---|---|
| 即時対応必要 | 炎上リスクが高い口コミ | 最優先で返信・対応 |
| 優先返信推奨 | 中間評価で未返信 | 早めに返信 |
| 感謝返信推奨 | 高評価で未返信 | お礼の返信 |
| 経過観察 | 返信済み or 特別な対応不要 | 状況を見守る |
| 対応不要 | スパム・定型文 | 無視してOK |
7.5 月次PDFレポート
画面: /decision-os/store/<store_id>/report
各店舗の月次分析レポートをPDF形式でダウンロードできます。
ダウンロード手順
- 店舗詳細画面で「PDFレポートをダウンロード」ボタンをクリックします
- PDFファイルが自動生成されダウンロードされます
- ファイル名:
decision_os_report_[店舗名]_[年月].pdf
レポートの内容
- 解約予兆スコアと内訳
- 口コミ分類サマリー
- カテゴリ別分析(接客、品質、雰囲気、価格など)
- 推奨アクション一覧
- 前月比較
レポートの活用方法
- クライアントへの報告資料: PDFをそのままクライアントに送付できます
- 社内会議資料: 営業チームの戦略立案に活用できます
- 解約防止: リスクの高い店舗のクライアントに先回りして改善提案できます
7.6 OEMブランド反映
月次PDFレポートには、貴社のホワイトラベル設定が自動的に反映されます。
| 反映項目 | 説明 |
|---|---|
| ヘッダー色 | プライマリカラーが使用されます |
| ブランド名 | 会社名・サービス名が表示されます |
| フッター | 貴社の連絡先情報が表示されます |
ヒント: ホワイトラベル設定が未設定の場合は、デフォルトのブランドが使用されます。
8. リード管理
8.1 見込み顧客の追跡
OEM事業者の問い合わせフォーム (/oem_inquiry) から受け付けた見込み顧客(リード)を管理します。
リード管理のフロー
┌──────────────────────────────────────────────────┐
│ リード管理フロー │
│ │
│ 見込み顧客からの問い合わせ受信 │
│ │ │
│ ▼ │
│ リードスコア自動計算 │
│ ┌────────────────────────────────┐ │
│ │ 高スコア(80+)→ 優先度: 高 │ │
│ │ 中スコア(60-79)→ 優先度: 中 │ │
│ │ 低スコア(0-59)→ 優先度: 低 │ │
│ └───────────┬────────────────────┘ │
│ │ │
│ ┌────────┼────────┐ │
│ ▼ ▼ ▼ │
│ ┌──────┐┌──────┐┌──────┐ │
│ │初回 ││資料 ││商談 │ │
│ │連絡 ││送付 ││設定 │ │
│ └──┬───┘└──┬───┘└──┬───┘ │
│ └────────┼────────┘ │
│ ▼ │
│ ┌──────────┐ │
│ │ 契約成立 │ → クライアントとして追加 │
│ └──────────┘ │
└──────────────────────────────────────────────────┘
8.2 営業活動ログ
各リードに対して、以下の営業活動を記録できます:
| 活動タイプ | 説明 |
|---|---|
| 電話 | 電話での連絡記録 |
| メール | メールでのやり取り記録 |
| 面談 | 対面またはオンライン会議の記録 |
| 資料送付 | 資料を送付した記録 |
| デモ | デモンストレーションの記録 |
| その他 | その他の活動記録 |
9. セキュリティ・データ分離
9.1 暗号化
貴社の機密情報は、以下の方式で安全に保護されています。
| 対象 | 暗号化方式 | 説明 |
|---|---|---|
| OpenAI APIキー | Fernet暗号化(AES-128-CBC + HMAC-SHA256) | 保存時に暗号化、使用時に復号化 |
| Google OAuthクライアントID/シークレット | Fernet暗号化 | 同上 |
| Stripe APIキー | データベース保存 | セッション認証で保護 |
暗号化の仕組み
┌──────────────────────────────────────────────────┐
│ APIキーの暗号化フロー │
│ │
│ 入力: sk-proj-abcdefg... (平文APIキー) │
│ │ │
│ ▼ │
│ 暗号化処理 (Fernet) │
│ ┌───────────────────────────────────────┐ │
│ │ 1. 環境変数から暗号化キーを取得 │ │
│ │ 2. AES-128-CBCで暗号化 │ │
│ │ 3. HMAC-SHA256で署名 │ │
│ │ 4. "enc:" プレフィックスを付与 │ │
│ └───────────────────────────────────────┘ │
│ │ │
│ ▼ │
│ 保存: enc:gAAAAABh... (暗号化されたキー) │
│ │
│ ※ データベースには暗号化された値のみ保存されます │
│ ※ 平文のAPIキーが保存されることはありません │
└──────────────────────────────────────────────────┘
9.2 テナント分離の仕組み
OEM事業者間のデータは完全に分離されており、他のOEM事業者のデータにアクセスすることはできません。
分離のポイント
- データベースレベル: 各OEM事業者は独立したレコードとして管理
- アクセス制御: ログインセッションに基づき、自社データのみアクセス可能
- クライアント分離: クライアントは
parent_idで親OEM事業者に紐づけ - API設定分離: 各OEM事業者ごとに独立した外部API認証情報を保持
┌──────────────────────────────────────────────────┐
│ テナント分離の構造 │
│ │
│ ┌─────────────────┐ ┌─────────────────┐ │
│ │ OEM事業者 A │ │ OEM事業者 B │ │
│ │ ┌───────────┐ │ │ ┌───────────┐ │ │
│ │ │ Stripe設定 │ │ │ │ Stripe設定 │ │ │
│ │ │ OpenAI設定 │ │ │ │ OpenAI設定 │ │ │
│ │ │ SMTP設定 │ │ │ │ SMTP設定 │ │ │
│ │ │ OAuth設定 │ │ │ │ OAuth設定 │ │ │
│ │ └───────────┘ │ │ └───────────┘ │ │
│ │ ┌───────────┐ │ │ ┌───────────┐ │ │
│ │ │ クライアント│ │ │ │ クライアント│ │ │
│ │ │ C1, C2 │ │ │ │ C3, C4 │ │ │
│ │ └───────────┘ │ │ └───────────┘ │ │
│ └─────────────────┘ └─────────────────┘ │
│ ↕ 完全に独立(相互アクセス不可) ↕ │
└──────────────────────────────────────────────────┘
9.3 2FA必須の理由
OEM事業者に2FA(2段階認証)が必須である理由:
- クライアントデータの保護: OEM事業者は複数のクライアントのデータにアクセスできるため、アカウント乗っ取りの被害が大きい
- APIキーの保護: Stripe、OpenAI、Google OAuthなどの認証情報が漏洩するリスクを低減
- 課金情報の保護: 決済関連の設定を不正に変更されるリスクを防止
- 業界標準のセキュリティ: SaaS事業者として必要な最低限のセキュリティ基準
10. 日常運用チェックリスト
10.1 毎日のチェック項目
| # | チェック項目 | 画面 | 所要時間 |
|---|---|---|---|
| 1 | OEMダッシュボードで全体状況を確認 | /oem/dashboard |
2分 |
| 2 | 口コミ判断OSで🔴赤フラグの店舗がないか確認 | /decision-os |
3分 |
| 3 | 新しいリード(問い合わせ)がないか確認 | リード管理画面 | 2分 |
| 4 | クライアントからの問い合わせに対応 | サポート画面 | 随時 |
10.2 毎週のチェック項目
| # | チェック項目 | 画面 | 所要時間 |
|---|---|---|---|
| 1 | クライアント一覧でアクティブ率を確認 | /oem/clients |
5分 |
| 2 | 🟡黄フラグの店舗への改善提案を検討 | /decision-os |
15分 |
| 3 | アフィリエイトの活動状況を確認 | /oem/affiliates |
5分 |
| 4 | トライアル期限が近いクライアントに連絡 | トライアル管理 | 10分 |
| 5 | 収益レポートを確認 | /dashboard/billing-revenue |
5分 |
10.3 毎月のチェック項目
| # | チェック項目 | 画面 | 所要時間 |
|---|---|---|---|
| 1 | 月次収益レポートを確認・保存 | /dashboard/billing-revenue |
10分 |
| 2 | 口コミ判断OSのスコアを一括再計算 | /decision-os |
5分 |
| 3 | 主要クライアントの月次PDFレポートをダウンロード | /decision-os/store/*/report |
15分 |
| 4 | 高度な分析レポートを確認 | /oem/analytics |
10分 |
| 5 | SMTP設定の接続テストを実行 | /oem/payment-settings |
3分 |
| 6 | OpenAI接続テストを実行 | /oem/openai-settings |
2分 |
| 7 | Stripeダッシュボードで決済状況を確認 | Stripe管理画面 | 10分 |
| 8 | アフィリエイトのコミッション精算 | /oem/affiliates |
15分 |
| 9 | 長期間ログインのないクライアントに連絡 | /oem/clients |
10分 |
| 10 | パスワードのセキュリティ確認 | ー | 5分 |
11. よくある質問(FAQ)
Q1. ログインできません
A: 以下の点を確認してください:
1. ユーザー名またはメールアドレスが正しいか確認してください
2. パスワードが正しいか確認してください(大文字/小文字の区別があります)
3. Caps Lockがオンになっていないか確認してください
4. パスワードを忘れた場合は「パスワードをお忘れですか?」からリセットしてください
5. アカウントが停止されている場合はシステム管理者に連絡してください
Q2. 2FAのリセット方法を教えてください
A: 2FA(2段階認証)をリセットする必要がある場合(スマートフォン紛失、機種変更など):
1. 自分ではリセットできません
2. システム管理者に連絡してください
3. 本人確認後、管理者が2FAをリセットします
4. リセット後、再度 /setup-2fa で設定し直してください
予防策: 2FA設定時に表示されるバックアップコードは必ずメモして安全な場所に保管してください。
Q3. クライアントのパスワードをリセットしたい
A:
1. クライアント一覧 (/oem/clients) を開きます
2. 対象のクライアントの「編集」ボタンをクリックします
3. 「パスワードリセットメール送信」をクリックします
4. クライアントのメールアドレスにリセットリンクが送信されます
5. クライアントがリンクから新しいパスワードを設定します
Q4. ホワイトラベル設定が反映されません
A: 以下の点を確認してください:
1. 「ホワイトラベル有効化」チェックボックスがONになっているか確認してください
2. 設定保存後にブラウザのキャッシュをクリアしてください(Ctrl+Shift+R)
3. ロゴURLが有効なHTTPS URLであるか確認してください
4. カラーコードが正しい16進数形式(例: #667eea)であるか確認してください
5. カスタムCSSに構文エラーがないか確認してください
6. 変更は即座に反映されますが、CDNキャッシュにより数分かかる場合があります
Q5. SMTP設定がうまくいきません
A: SMTP設定のトラブルシュートを以下の順序で行ってください:
1. サーバー名の確認: ホスト名にタイプミスがないか確認
2. ポート番号の確認: TLSの場合は587、SSLの場合は465が一般的
3. 暗号化方式の確認: ポート587→TLS、ポート465→SSL
4. 認証情報の確認: ユーザー名とパスワードが正しいか確認
5. Gmailの場合: 通常のパスワードではなく「アプリパスワード」が必要
6. ファイアウォール: 送信ポートが開放されているか確認
7. テスト送信: 必ず「テスト送信」ボタンで接続を確認
エラーメッセージ別の対処:
| エラー | 対処 |
|---|---|
| 認証失敗 (Authentication failed) | ユーザー名/パスワードを再確認 |
| 接続タイムアウト (Connection timed out) | サーバー名/ポートを再確認 |
| TLSエラー | 暗号化方式をSSLに変更して試す |
| 送信者拒否 (Sender rejected) | 送信元メールアドレスがSMTPサーバーで許可されているか確認 |
Q6. Stripe決済が動きません
A:
1. Stripe設定が有効か確認: 「Stripe有効化」がONになっているか
2. APIキーの確認: 公開鍵が pk_ で始まり、秘密鍵が sk_ で始まっているか
3. テスト/本番の一致: テストモードONの場合はテスト用キー、OFFの場合は本番用キーを使用
4. Webhookの設定: Stripeダッシュボードでエンドポイントが正しく設定されているか
5. Webhookシークレット: whsec_ で始まる正しい値が入力されているか
6. Stripeダッシュボードのイベントログ: エラーの詳細を確認
7. 価格IDの設定: Stripeで作成した価格IDが正しく設定されているか
Q7. OpenAIに接続できません
A:
1. APIキーの形式: sk- または sk-proj- で始まるキーが正しいか確認
2. 接続テスト実行: /oem/openai-settings で「接続テスト」ボタンをクリック
3. 利用制限: OpenAIアカウントの利用上限に達していないか確認
4. クレジット残高: OpenAIアカウントにクレジットが残っているか確認
5. APIキーの有効性: OpenAIダッシュボードでキーが有効か確認(削除されていないか)
6. 設定の有効化: 「OpenAI有効化」がONになっているか確認
Q8. Google OAuthでエラーが出ます
A:
1. クライアントIDの形式: .apps.googleusercontent.com で終わっているか確認
2. GCPプロジェクトの状態: Google Cloud Consoleでプロジェクトがアクティブか確認
3. APIの有効化: Google My Business APIが有効になっているか確認
4. リダイレクトURI: 承認済みリダイレクトURIに正しいURLが設定されているか確認
5. OAuth同意画面: 同意画面の設定が完了しているか確認
6. スコープ: 必要なスコープ(business.manage)が設定されているか確認
Q9. クライアントの店舗数制限はどうなっていますか
A: プランごとの店舗数上限は以下のとおりです:
| プラン | 店舗数上限 | 月間回答数 |
|---|---|---|
| 無料(フリー) | 1店舗 | 100件 |
| スタンダード | 3店舗 | 1,000件 |
| プロフェッショナル | 10店舗 | 5,000件 |
| エンタープライズ | 100店舗 | 50,000件 |
クライアントが上限に達した場合、店舗追加時に「プランをアップグレードしてください」というメッセージが表示されます。
Q10. プランのアップグレード/ダウングレードはどうすればよいですか
A:
- アップグレード: クライアント編集画面でプランを変更するか、クライアント自身が /plan-selector からアップグレードできます。アップグレードは即座に反映されます。
- ダウングレード: クライアント編集画面でプランを変更します。ダウングレード後は機能が制限されますが、既存データは保持されます。
Q11. 収益レポートの見方がわかりません
A: 収益レポート (/dashboard/billing-revenue) の各項目:
- 月次収益: 当月の有料クライアントの合計利用料
- 年間収益: 月次収益 × 12 の年間見込み額
- アクティブ顧客数: 現在有料プランを利用しているクライアント数
- コミッション率: OEM契約に基づく貴社の収益分配率
- コミッション額: 月次収益 × コミッション率
Q12. PDFレポートが生成されません
A:
1. 店舗にデータがあるか確認: 過去30日間のアンケート回答またはGoogleレビューが必要です
2. ブラウザの設定: ポップアップブロッカーがPDFダウンロードを妨げていないか確認
3. しばらく待つ: 大量のデータがある場合、生成に時間がかかることがあります
4. 別のブラウザで試す: Chrome推奨
5. 再度ダウンロード: ページを更新してもう一度試してください
Q13. 口コミ判断OSのスコアは何を意味していますか
A: 解約予兆スコアは0〜100の値で、クライアントの店舗が解約する可能性を示します。6つの要素の加重平均で計算されます:
| 要素 | 重み | 高スコアの意味 |
|---|---|---|
| 評価平均 | 25% | 低評価が多い |
| 評価変動率 | 20% | 評価が下がっている |
| ネガティブ比率 | 20% | 否定的な口コミが多い |
| 返信率 | 15% | 返信していない |
| ボリューム推移 | 10% | 口コミ数が減っている |
| 未返信数 | 10% | 未返信の口コミが溜まっている |
スコアが70以上の店舗(🔴赤)には、積極的にクライアントへ連絡し、改善支援を行うことをお勧めします。
Q14. 同期エラーが発生しました
A: Google レビューの同期エラーの場合:
1. Google OAuthの認証が有効か確認してください
2. Google APIの利用上限に達していないか確認してください
3. 「再同期」ボタンで手動同期を試してください
4. 問題が継続する場合はシステム管理者に連絡してください
Q15. テストモードと本番モードはどう切り替えますか
A: Stripe決済の切り替え:
1. /oem/payment-settings → 「Stripe設定」タブを開きます
2. テスト→本番: 「テストモード」のチェックを外し、本番用APIキー(pk_live_...、sk_live_...)に変更
3. 本番→テスト: 「テストモード」にチェックを入れ、テスト用APIキー(pk_test_...、sk_test_...)に変更
4. 設定を保存します
注意: 本番モードでは実際の課金が発生します。切り替え前に必ずテストモードで動作確認を完了してください。
Q16. メールが届きません
A:
1. 迷惑メールフォルダを確認: 送信されたメールが迷惑メールに振り分けられていないか確認
2. 送信元メールアドレスの確認: ホワイトリストに追加されているか確認
3. SMTP設定の確認: テスト送信が成功するか確認
4. 送信先メールアドレスの確認: 正しいメールアドレスが登録されているか確認
5. SPF/DKIM設定: メール配信の信頼性向上のため、ドメインのDNSにSPF/DKIMレコードを追加することを推奨
6. SMTP未設定の場合: システム共通のメールサーバーから送信されます。独自SMTPを設定すると到達率が向上します
Q17. 独自ドメインの設定方法を教えてください
A:
1. ホワイトラベル設定 (/oem/white-label) を開きます
2. 「カスタムドメイン」欄に使用するドメインを入力します(例: review.example.com)
3. 設定を保存します
4. ドメインの管理画面(お使いのレジストラ)で以下のDNSレコードを追加します:
タイプ: CNAME
名前: review(サブドメイン部分)
値: [システム管理者から指定されたドメイン]
5. DNSの反映を待ちます(最大48時間)
6. SSL証明書が自動的に発行されます
7. 反映後、設定したドメインでアクセスできるようになります
Q18. APIキーの更新方法を教えてください
A: 各APIキーの更新手順:
OpenAI APIキー:
1. /oem/openai-settings を開きます
2. 新しいAPIキーを入力します
3. 「保存」をクリックします
4. 「接続テスト」で動作を確認します
Stripe APIキー:
1. /oem/payment-settings → 「Stripe設定」タブを開きます
2. 新しい公開鍵・秘密鍵を入力します
3. 「保存」をクリックします
Google OAuth:
1. /oem/google-oauth-settings を開きます
2. 新しいクライアントIDまたはクライアントシークレットを入力します
3. 「保存」をクリックします
ヒント: APIキーを更新しても、既存の接続に影響はありません。新しいキーが保存された時点から新しいキーが使用されます。古いキーは上書きされます。
Q19. データのエクスポート方法を教えてください
A: データのエクスポートには以下の方法があります:
- アンケートデータ: クライアントのダッシュボード代理閲覧から、「エクスポート」ボタンでCSV/Excelファイルをダウンロード
- 口コミ判断OSレポート: 店舗詳細画面から「PDFレポートをダウンロード」でPDFファイルを取得
- 収益データ: 収益管理画面の数値を参照
Q20. サポートへの問い合わせ方法を教えてください
A:
1. 管理画面のサイドメニューから「サポート」(/oem/support) を選択します
2. 問い合わせフォームに以下を記入します:
- 件名
- 問い合わせカテゴリ(技術的な問題 / 機能に関する質問 / 請求に関する問い合わせ / その他)
- 詳細な説明
- 必要に応じてスクリーンショット
3. 「送信」をクリックします
4. 通常2営業日以内に返信いたします
緊急の場合:
- 決済システムの障害やセキュリティに関する問題は、システム管理者に直接連絡してください
Q21. トライアル期間を延長できますか
A: トライアル期間の延長については、システム管理者に依頼してください。クライアントの利用状況や商談の進捗に応じて、個別に対応可能な場合があります。
Q22. 複数のOEM事業者アカウントを持てますか
A: 原則として、1社につき1つのOEM事業者アカウントです。事業部ごとに分けたい場合や特別な事情がある場合は、システム管理者にご相談ください。
Q23. クライアントが自分のアカウントにログインできないと言っています
A:
1. クライアント一覧でアカウントの状態が「アクティブ」であることを確認します
2. メールアドレスが正しいか確認します
3. パスワードリセットメールを送信します(Q3参照)
4. ブラウザのCookieやキャッシュのクリアを案内します
5. 別のブラウザ(Chrome推奨)で試すことを案内します
Q24. ホワイトラベルのカスタムCSSで何ができますか
A: カスタムCSSを使用すると、以下のようなカスタマイズが可能です:
- フォントの変更
- ボタンのスタイル変更
- ヘッダー・フッターのデザイン調整
- 色調の細かい調整
- レイアウトの微調整
ただし、大幅なレイアウト変更はシステムの動作に影響する場合があります。基本的なスタイル変更に留めることをお勧めします。
Q25. OpenAI APIの利用料金はどうなりますか
A:
- 貴社のAPIキーを設定している場合: 利用料金は貴社のOpenAIアカウントに直接課金されます。利用量はOpenAIダッシュボードで確認できます。
- APIキーを設定していない場合: システム共通のAPIキーが使用されます。利用料金はOEM契約に基づいて処理されます。
Q26. Instagram→GBP連携とは何ですか
A:
プロフェッショナルプラン以上のクライアントが利用できる機能です。Instagramに投稿した写真やキャプションを、Googleビジネスプロフィール(GBP)の「最新情報」として再利用できます。クライアントのMEO対策(Googleマップでの露出向上)を支援する機能として、提案材料にお使いいただけます。
クライアント側では、手動接続(Instagramユーザー名のみ)またはAPI接続(Graph APIトークン)の2方式でInstagramアカウントを接続し、投稿をGBPに変換・公開できます。
12. 困ったときのトラブルシューティング
12.1 エラー別対処法(画面別)
ログイン画面 (/partner-login)
| エラー | 原因 | 対処法 |
|---|---|---|
| 「ユーザー名またはパスワードが正しくありません」 | 入力ミス | 入力内容を再確認。パスワードリセットを試す |
| 「アカウントが無効化されています」 | 管理者による停止 | システム管理者に連絡 |
| 画面が表示されない | サーバー障害の可能性 | しばらく待ってから再試行。継続する場合は管理者に連絡 |
2FA検証画面
| エラー | 原因 | 対処法 |
|---|---|---|
| 「認証コードが正しくありません」 | コードの入力ミスまたは期限切れ | 最新のコードを入力(30秒ごとに更新) |
| 「認証コードが正しくありません」が繰り返す | スマートフォンの時刻ずれ | 端末の時刻を自動設定に変更 |
ホワイトラベル設定 (/oem/white-label)
| エラー | 原因 | 対処法 |
|---|---|---|
| 「設定保存中にエラーが発生しました」 | 入力値の問題 | 各フィールドの形式を確認(URLはhttps://、カラーは#xxxxxx) |
| ロゴが表示されない | URL無効 or CORS制限 | HTTPS URLか確認。画像が公開アクセス可能か確認 |
SMTP設定
| エラー | 原因 | 対処法 |
|---|---|---|
| テスト送信失敗: 「Authentication failed」 | 認証情報の誤り | ユーザー名/パスワードを再確認。Gmailはアプリパスワード必須 |
| テスト送信失敗: 「Connection timed out」 | 接続できない | サーバー名/ポート番号を確認。ファイアウォール確認 |
| テスト送信失敗: 「SSL/TLS error」 | 暗号化設定の不一致 | ポート587→TLS、ポート465→SSLに変更 |
Stripe設定
| エラー | 原因 | 対処法 |
|---|---|---|
| 決済が処理されない | APIキーの不一致 | テスト/本番モードとキーが一致しているか確認 |
| Webhookエラー | エンドポイントの問題 | Stripeダッシュボードでログを確認 |
OpenAI設定
| エラー | 原因 | 対処法 |
|---|---|---|
| 接続テスト失敗: 「APIキーが無効」 | キーの形式エラーまたは無効化 | OpenAIダッシュボードで新しいキーを発行 |
| 接続テスト失敗: 「利用上限到達」 | APIの利用制限 | OpenAIダッシュボードで制限を確認・引き上げ |
| 接続テスト失敗: 「クレジット不足」 | 残高なし | OpenAIアカウントにクレジットを追加 |
Google OAuth設定
| エラー | 原因 | 対処法 |
|---|---|---|
| 「無効なクライアントIDです」 | 形式エラー | .apps.googleusercontent.com で終わるIDを入力 |
| OAuth認証エラー | リダイレクトURI不一致 | GCPコンソールのリダイレクトURIを確認 |
口コミ判断OS
| エラー | 原因 | 対処法 |
|---|---|---|
| スコアが0の店舗がある | 過去30日間にデータなし | アンケート回答またはGoogleレビューを収集 |
| レポート生成失敗 | データ不足 | 店舗にアンケート回答/レビューがあるか確認 |
12.2 設定接続テストの使い方
各設定画面には「接続テスト」ボタンがあります。設定保存後に必ずテストを実行してください。
SMTP接続テスト
/oem/payment-settings→ SMTPタブを開きます- 設定を入力・保存します
- 「テスト送信」ボタンをクリックします
- テスト送信先メールアドレスを入力します
- 結果を確認します:
- ✅ 成功: メールが正しく送信されました
- ❌ 失敗: エラーメッセージを確認して設定を修正してください
OpenAI接続テスト
/oem/openai-settingsを開きます- APIキーを入力・保存します
- 「接続テスト」ボタンをクリックします
- 結果を確認します:
- ✅ 成功: 「OpenAI APIへの接続に成功しました」とテストレスポンスが表示されます
- ❌ 失敗: エラーメッセージを確認してAPIキーを再確認してください
12.3 問題解決のステップ
問題が解決しない場合は、以下の手順で対応してください:
┌──────────────────────────────────────────────┐
│ トラブルシューティングフロー │
│ │
│ ① 本マニュアルのFAQを確認 │
│ │ │
│ ├── 解決 → ✅ 完了 │
│ │ │
│ └── 未解決 │
│ │ │
│ ② エラーメッセージをメモして設定を再確認 │
│ │ │
│ ├── 解決 → ✅ 完了 │
│ │ │
│ └── 未解決 │
│ │ │
│ ③ ブラウザのキャッシュクリア&再ログイン │
│ │ │
│ ├── 解決 → ✅ 完了 │
│ │ │
│ └── 未解決 │
│ │ │
│ ④ サポートに問い合わせ(/oem/support) │
│ ┌─────────────────────────────┐ │
│ │ 問い合わせ時に伝える情報: │ │
│ │ ・発生した画面のURL │ │
│ │ ・エラーメッセージの内容 │ │
│ │ ・操作手順(何をしたら起きたか)│ │
│ │ ・スクリーンショット │ │
│ └─────────────────────────────┘ │
└──────────────────────────────────────────────┘
13. 用語集
| 用語 | 説明 |
|---|---|
| OEM事業者 | クチコミキャッチのプラットフォームを自社ブランドとして提供するパートナー企業 |
| ホワイトラベル | 他社の製品やサービスを自社ブランドとして提供すること。ロゴ・色・名称を自社仕様に変更可能 |
| エンドユーザー | 実際にアンケートやレビュー管理を行う店舗オーナーや管理者。OEM事業者の「クライアント」 |
| アフィリエイト | 新規クライアント獲得を支援する紹介パートナー。紹介報酬(コミッション)を受け取る |
| 2FA(二要素認証) | パスワードに加えて、認証アプリの一時コードで本人確認を行うセキュリティ機能。TOTP方式を使用 |
| TOTP | Time-based One-Time Password。時間ベースのワンタイムパスワード。30秒ごとに新しい6桁コードが生成される |
| SMTP | Simple Mail Transfer Protocol。メール送信に使用するプロトコル(通信規約) |
| TLS/SSL | メール通信を暗号化するセキュリティプロトコル。TLSはSSLの後継 |
| Stripe | オンライン決済プラットフォーム。クレジットカード決済を処理する |
| Webhook | 特定のイベントが発生した際に、指定したURLに自動的に通知を送る仕組み |
| 公開鍵(Publishable Key) | Stripeのクライアント側で使用するキー。pk_ で始まる |
| 秘密鍵(Secret Key) | Stripeのサーバー側で使用するキー。sk_ で始まる。外部に漏洩させてはいけない |
| OpenAI | ChatGPTを提供するAI企業。本システムではレビュー生成や感情分析に使用 |
| APIキー | 外部サービスにアクセスするための認証用文字列。パスワードのようなもの |
| OAuth 2.0 | 安全にサードパーティアプリにアクセス権を付与するための認証フレームワーク |
| Google Cloud Console (GCP) | Googleのクラウドサービスを管理するためのウェブコンソール |
| クライアントID | OAuth認証でアプリケーションを識別するためのID |
| クライアントシークレット | OAuth認証の秘密キー。外部に漏洩させてはいけない |
| Fernet暗号化 | AES-128-CBC暗号化とHMAC-SHA256署名を組み合わせた暗号化方式。APIキーの安全な保存に使用 |
| テナント分離 | 複数の利用者(テナント)のデータを相互にアクセスできないよう分離する仕組み |
| プレースホルダー | メールテンプレートなどで、実際の値に置き換えられる仮の文字列。{user_name} など |
| 口コミ判断OS | 口コミデータを分析して解約リスクや対応優先度を判定する意思決定支援システム |
| 解約予兆スコア | 店舗が解約する可能性を0〜100で数値化したスコア。6つの要因の加重平均 |
| KPI | Key Performance Indicator。重要業績評価指標。事業の成果を測定する指標 |
| コミッション | アフィリエイトに支払う紹介手数料。売上の一定割合 |
| CNAME | DNSレコードの一種。ドメイン名を別のドメイン名に転送する設定 |
| SSL証明書 | ウェブサイトの通信を暗号化するための電子証明書。HTTPSを有効にする |
| CSV | Comma-Separated Values。カンマ区切りのテキスト形式。Excelなどで開ける |
| フリーミアム | 基本機能を無料で提供し、高機能版を有料で提供するビジネスモデル |
| トライアル | 有料機能を一定期間無料で試用できる仕組み |
| GPT-4o Mini / GPT-4.1 | OpenAIのAIモデル。Miniは軽量で高速、4.1は高性能で複雑な処理向き |
| 自動切替モード | リクエストの複雑さに応じてAIモデルを自動選択する機能 |
| SPF/DKIM | メール認証の仕組み。送信元ドメインの正当性を証明し、迷惑メール判定を防ぐ |
| DNS | Domain Name System。ドメイン名とIPアドレスを紐づける仕組み |
本マニュアルに関するご不明点やお気づきの点がございましたら、サポート画面 (/oem/support) からお問い合わせください。