リツビ BtoB ECサイト改修プロジェクト 要求仕様書¶
バージョン: 2.0
作成日: 2025年6月21日
更新日: 2025年9月12日(Phase 1実装完了状況反映)
プロジェクト: リツビ BtoB ECサイトリニューアル
✅ 実装ステータス更新 (Phase 1完了)¶
Phase 1: Vendure基盤アーキテクチャ実装完了 (2025年9月12日)
📊 実装進捗サマリー¶
| 機能分野 | 実装状況 | 詳細 |
|---|---|---|
| 🧩 顧客管理・アクセス制御 | 🔄 開発中 | 基本構造のみ、詳細実装は未着手 |
| 💰 価格・割引システム | 🔄 開発中 | 基本構造のみ、詳細実装は未着手 |
| 🚚 配送・決済システム | 🔄 開発中 | 基本構造のみ、詳細実装は未着手 |
| 🎯 キャンペーン管理 | 🔄 開発中 | 基本構造のみ、詳細実装は未着手 |
| 📋 在庫・注文管理 | 🔄 開発中 | 基本構造のみ、詳細実装は未着手 |
| ✅ 同意・コンプライアンス | 🔄 開発中 | 基本構造のみ、詳細実装は未着手 |
| 📊 外部システム連携 | 🔄 開発中 | 基本構造のみ、詳細実装は未着手 |
| 🎨 UI/UX実装 | 🔄 Phase 2 | Next.js基盤準備完了、詳細実装は次期 |
| 📱 レスポンシブ対応 | 🔄 Phase 2 | 基盤対応済み、詳細調整は次期 |
| 🔄 データ移行 | 🔄 Phase 3 | マイグレーション準備完了 |
⚠️ 現在の制約事項¶
🚨 NestJS 11互換性問題¶
- ❌ AssetServerPlugin - 依存性注入エラーで停止
- ❌ EmailPlugin - ConfigModule依存性問題で停止
- ❌ AdminUIPlugin - MetricsService依存性問題で停止
- ❌ DashboardPlugin - ApolloDriver依存性問題で停止
🔧 カスタムプラグイン開発状況¶
- 🔄 ConsentSystemPlugin - 基本構造のみ、未実装
- 🔄 InventoryManagementPlugin - 基本構造のみ、未実装
- ❌ CustomerManagementPlugin - TypeScriptエラーで無効化
- ❌ PricingSystemPlugin - 未完成で無効化
- ❌ ShippingCalculatorPlugin - 未実装
- ❌ CampaignEnginePlugin - 未実装
- ❌ SmileIntegrationPlugin - 未実装
🏗️ 技術実装詳細¶
選定プラットフォーム: Vendure (TypeScript製オープンソースB2Bプラットフォーム)
- 実装方針: 「本体を汚さずに拡張」原則でプラグイン化
- 開発環境: VS Code統合、F5ワンクリック起動対応
- 型安全性: GraphQL Code Generatorで完全型安全
- モノレポ: pnpm + Turboでパッケージ管理最適化
1. プロジェクト概要¶
1.1 目的¶
株式会社リツビの既存BtoB ECサイトを再構築し、複雑な日本の商慣習に対応した高機能B2B ECシステムを実現する。
1.2 対象事業¶
- エクスビアンス: 美容業界向けスキンケア商品
- メソシューティカル: 美容クリニック向け施術用商品
- 美容機器消耗品: 各種美容機器の専用消耗品・部材
1.3 プロジェクトスコープ¶
- 既存BtoB ECサイトの再構築
- 顧客別商品制御・価格制御システムの構築
- 複雑なキャンペーン・割引システムの実装
- 日本商慣習対応機能(請求書、配送、同意フロー等)
2. システム要件¶
2.1 プラットフォーム要件¶
- コアシステム: EC基盤システム
- B2B機能: B2B専用機能群
- カスタマイズ: サーバーサイド機能拡張
- 自動化: バッチ処理・スケジュール実行
- 外部連携: REST API、Webhook、システム間連携
2.2 パフォーマンス要件¶
- 応答時間: 3秒以内(商品検索・カート処理)
- 同時接続: 100ユーザー対応
- 可用性: 要検討(元仕様書に具体的記載なし)
- データバックアップ: 日次自動バックアップ
3. 機能要件¶
3.1 【必須】顧客管理・アクセス制御¶
3.1.1 顧客ステータス管理¶
要求: 顧客の導入商品・契約状況に応じた階層的ステータス管理(15種類以上)
エクスビアンス関連:
- エクスビアンス導入済み顧客
メソシューティカル関連:
- メソシューティカル レギュラー顧客
- メソシューティカル プレミアム顧客
- メソシューティカル 三美創顧客
美容機器消耗品購入先(14種類):
- KMS機器購入先
- KM2S機器購入先
- インテグラル機器購入先
- アライアンス機器購入先
- モビスリム機器購入先
- エンダモラボ機器購入先
- インテグラル2機器購入先
- エンダモラボ2機器購入先
- モビリフト機器購入先
- LIPOM6機器購入先
- LiftM6機器購入先
- サーモシェイプ機器購入先
- トリプル333機器購入先
- Inshape機器購入先
- HUBER機器購入先
- WONDER機器購入先
その他:
- インフィニティ購入先
- クリニック専用顧客
受け入れ条件:
- ステータス別商品表示・非表示制御
- ログイン時のステータス自動判定
- 管理画面でのステータス一括変更機能
- 複数ステータス保持顧客の権限統合管理
- ステータス変更履歴の記録・管理
3.1.2 商品カテゴリ体系・アクセス制御¶
要求: 33カテゴリの階層的商品管理と顧客ステータスに基づく表示制御
エクスビアンス(4カテゴリ):
- 業務用商品(プロフェッショナル仕様)
- 店販用商品(リテール向け商品)
- セット商品(複数商品のバンドル)
- 販促品(プロモーション・サンプル商品)
メソシューティカル(8カテゴリ):
- セラム・マスク・インサイド 1本単位(レギュラー顧客向け)
- セラム・マスク・インサイド 12本単位(大容量販売)
- セラム・マスク・インサイド 三美創(三美創顧客専用)
- RCODE 1本単位(レギュラー顧客向け)
- RCODE 1本単位(プレミアム顧客向け)
- RCODE 12本単位(大容量販売)
- RCODE 三美創(三美創顧客専用)
- 販促品(プロモーション・サンプル商品)
機器消耗品(14カテゴリ):
- KMS消耗品
- KM2S消耗品
- インテグラル消耗品
- アライアンス消耗品
- モビスリム消耗品
- エンダモラボ消耗品
- インテグラル2消耗品
- エンダモラボ2消耗品
- モビリフト消耗品
- LIPOM6消耗品
- LiftM6消耗品
- サーモシェイプ消耗品
- トリプル333消耗品
- Inshape消耗品
- HUBER消耗品
- WONDER消耗品
その他(7カテゴリ):
- ゼネラル(一般商品)
- トリートメントウェア
- リポシェイプクリーム
- iMeso(特別同意必須商品)
- クリニック専用商品
- インフィニティ消耗品
- 美容機器本体
アクセス制御要求:
- 顧客ステータス別商品カテゴリ表示・非表示制御
- 検索結果の購入可能商品のみ表示
- 個別顧客への特別表示制御
- カテゴリ階層に基づく権限継承
受け入れ条件:
- 商品一覧・検索・詳細ページでの制御
- カテゴリ別制御設定機能
- 例外顧客の個別設定機能
- 33カテゴリの効率的管理システム
- カテゴリ変更時の自動権限更新
3.2 【必須】商品販売・購入制御¶
3.2.1 販売単位制御(詳細仕様)¶
基本販売単位制御:
- 単品販売: 1個、12個、50個等の固定単位
- セット販売: 5+1個(5個購入で1個無料)システム
- ボーナスパック: 10+2個、30+7個等の段階的ボーナス
「5+1個セット」詳細仕様:
- 在庫管理: セット商品専用在庫 + 単品在庫の連動管理
- 価格計算: 5個分の価格で6個提供(1個分自動割引)
- 表示制御: 「5個お買い上げで1個プレゼント」の明示
- 数量制御: 5個単位での購入制限(4個以下購入不可)
複合単位制御システム:
- 単品・セット複合制御: 単品3個 + セット1セット = 合計9個の複合計算
- 月次数量制限: 特定商品の月間購入数上限設定
- 複合数量チェック: 単品とセット品の合計制限(例:月間50個まで)
- 在庫連動制御: セット商品欠品時の単品への自動切り替え
購入単位エラー処理:
- エラーメッセージ: 「この商品は5個単位でのご購入となります」
- 自動調整機能: 3個→5個への数量自動提案
- 代替提案: セット商品欠品時の単品購入提案
- リカバリーフロー: エラー時の最適な購入方法ガイド
複合数量制限制御(詳細仕様):
- 単品とセット品の合計制限: 単品販売とセット品構成品の月間合計数量制限
- 月間累積管理: 月間累積購入数量のリアルタイム管理
- 制限設定機能: 商品別・顧客別の柔軟な数量制限設定
- アラート機能: 制限近くでの警告表示・超過時の購入阻止
- 例外処理: 特定顧客・特定期間の例外設定機能
受け入れ条件:
- カート追加時の確実な単位チェック
- 数量変更時の自動調整・提案機能
- 単位違反時の分かりやすいエラー表示・ガイド
- 複合単位制御の正確な動作
- 在庫連動での適切な制御切り替え
- 複合数量制限の確実な動作確認
3.2.2 同意事項制御(詳細仕様)¶
グリコール酸等ピール系商品同意フロー:
- 対象商品: グリコール酸、サリチル酸、乳酸等のピール系商品
- 同意内容:
- 医師の指導下での使用に関する同意
- 皮膚トラブル発生時の責任に関する同意
- 使用前パッチテストの実施に関する同意
- 表示タイミング: 該当商品のカート追加時
- 同意方式: チェックボックス式必須同意
- 継続性: 一度同意すれば同一商品群は再同意不要
iMesoシリーズ同意フロー:
- 対象商品: iMesoシリーズ全商品(初回購入時のみ)
- 同意内容:
- 医療機器扱い商品に関する同意
- 適正使用に関する誓約
- 転売禁止に関する同意
- 事故発生時の責任に関する同意
- 表示タイミング: iMeso商品初回カート追加時
- 同意方式: 詳細同意書表示 + 電子署名式同意
- 継続性: 顧客ごとに初回のみ、以降は同意済み管理
複数同意事項の制御:
- 同時表示: 複数同意対象商品の一括同意画面
- 段階表示: 商品種別ごとの段階的同意フロー
- 依存関係: 基本同意→詳細同意の階層管理
- スキップ防止: 必須同意の完了確認制御
同意履歴管理システム:
- 記録項目: 顧客ID、商品ID、同意日時、同意内容、IPアドレス
- 永続保存: 法的要件に基づく永続的記録保存
- 検索機能: 顧客・商品・期間での同意履歴検索
- レポート: 同意状況の統計レポート機能
法的コンプライアンス対応:
- 同意証明: 電子署名による法的証明能力
- 改訂対応: 同意内容変更時の再同意フロー
- 監査対応: 監査機関への履歴提出機能
- プライバシー: 個人情報保護法準拠の管理
受け入れ条件:
- 該当商品カート追加時の適切な同意画面表示
- 同意未完了時の確実な購入阻止機能
- 同意履歴の完全な記録・管理システム
- 法的要件を満たす電子署名機能
- 複数同意事項の効率的な管理システム
- 同意内容変更時の円滑な再同意フロー
3.3 【必須】配送・モード切替¶
3.3.1 配送モード管理・ブランド別送料システム(詳細仕様)¶
配送モード機能:
- 通常モード: 全商品購入可能
- 直送モード: 店販用商品のみ、10%手数料加算、代引き不可
ブランド別送料管理システム(詳細仕様):
- エクスビアンス送料: 商品番号 00013131で管理
- メソシューティカル送料: 商品番号 00013134で管理
- 機器消耗品送料: 14種類の機器ブランド別個別設定
- 複数ブランド購入時: 最高額ブランド送料の適用
- 送料無料ライン: ブランド別送料無料金額設定
- 送料商品連携: 購入ブランドに応じた送料商品自動追加
- 送料計算ロジック: 複雑なブランド混載時の適切な送料判定
送料計算ロジック:
- 単一ブランド: 該当ブランド送料適用
- 複数ブランド混載: 最高額送料 + 追加ブランド手数料
- 直送モード: 通常送料 + 10%手数料
- 予約商品: 原則送料無料(混載時は通常商品分のみ送料)
- キャンペーン送料: キャンペーン適用時の送料制御
送料表示・管理:
- カート内表示: ブランド別送料の内訳表示
- 送料計算過程: 計算ロジックの透明性確保
- 送料変更履歴: 送料ルール変更の履歴管理
- 例外設定: 特定顧客・地域の送料例外設定
受け入れ条件:
- ワンクリックでのモード切り替え
- 現在モードの明確な表示
- モード別商品フィルタリング
- 手数料の自動計算・表示
- ブランド別送料の正確な計算・表示
- 複雑な送料ロジックの確実な動作
3.3.2 配送日時指定¶
要求: 営業日・地域を考慮した配送指定
- 14時以降注文の翌営業日出荷切り替え
- 地域別配送日数の考慮
- 祝日・休業日の配送不可設定
受け入れ条件:
- カレンダー形式の日時選択UI
- 選択不可日の自動制御
- 予約注文時の配送日制限
3.4 【必須】価格・割引システム¶
3.4.1 顧客別価格制御・月次割戻金システム¶
顧客別価格制御:
- 顧客別掛率(割引率)の設定・適用
- 数量に応じた段階的特別掛率
- 「特に安価な顧客」自動判定による割引除外
「特に安価な顧客」判定ロジック:
- 判定条件: 既存掛率が70%以下の顧客は追加割引対象外
- 複数ステータス保持顧客: 最も有利な条件を優先適用
- 例外設定: 個別顧客への手動例外設定機能
- 判定更新: 契約条件変更時の自動再判定
複数商品群の数量ベース割引制御:
- 特定商品群の規定数量割引: 一回の注文で規定本数に達した場合の特別掛率適用
- カート連動再計算: カート内数量変更時の割引率リアルタイム再計算
- 段階的割引率: 規定数量達成時の掛率引き下げ制御
- 対象商品群設定: 商品群・規定数量の柔軟な設定機能
月次割戻金計算システム(エクスビアンス商品):
- 段階的割戻率:
- 月間購入額 30万円以上: 1.0%
- 月間購入額 50万円以上: 2.0%
- 月間購入額 100万円以上: 3.0%
- 月間購入額 200万円以上: 4.0%
- 計算対象: エクスビアンス商品のみ(税抜金額ベース)
- 処理フロー:
- 月末日: 自動計算実行
- 翌月15日: 営業担当者承認
- 翌々月5日: 割戻金支払い実行
- SMILE連携: 割戻金データのCSV出力(振込データ形式)
年次割戻金サマリー:
- 年間実績計算: 年間購入実績に基づく追加割戻金
- 段階的優遇: 年間1000万円以上で追加0.5%割戻
- 支払時期: 年度末(3月)に一括支払い
受け入れ条件:
- リアルタイムな価格計算・表示
- カート数量変更時の価格再計算
- 特別価格適用条件の明示
- 月次割戻金の正確な自動計算
- 割戻金支払いフローの確実な実行
3.4.2 親子アカウント管理システム(詳細仕様)¶
親子アカウントシステム:
- 親アカウント: 本店・本社アカウント(管理者権限)
- 子アカウント: 支店・スタッフアカウント(制限付き権限)
- 権限管理: 親アカウント条件に連動する子アカウント条件設定
- 利用用途:
- 支店発注システム(複数店舗の一元管理)
- スタッフ社販システム(従業員向け特別価格)
- 制御機能:
- 親アカウント設定の子アカウント自動適用
- 子アカウント別購入制限・価格設定
- 統合請求・個別請求の選択機能
- 階層的権限管理(閲覧・購入・管理権限)
親子アカウント連動制御:
- 掛率連動制御: 親アカウントの掛率に応じた子アカウント割引率設定
- ステータス継承: 親アカウントのステータス条件を子アカウントに継承
- 権限分離: 子アカウントの独立した権限設定と制限機能
- 統合管理: 親アカウントでの子アカウント一元管理機能
3.4.3 ポイント・ギフト券システム¶
リツビギフト券システム(詳細仕様):
- 商品番号: 80000060(ギフト券専用商品番号)
- 管理方式: 商品として管理、マイナス金額での受注データ反映
- 付与方式:
- 手動付与: 管理画面からの個別・一括付与
- 自動付与: 月次特定日自動付与機能
- キャンペーン付与: 購入金額・数量に応じた自動付与
- 有効期限管理:
- 付与日から1年間の有効期限設定
- 有効期限別優先使用制御(先入先出方式)
- 期限切れポイントの自動失効処理
- 使用制御:
- 購入時の自動差し引き処理
- 不足分の繰越計算
- 一部使用・全額使用の選択機能
- 残高管理:
- リアルタイム残高表示
- 使用履歴の詳細記録
- 有効期限切れ予告通知機能
受け入れ条件:
- ポイント残高・有効期限の正確な表示
- 購入時の使用可能ポイント自動計算・表示
- 受注データへの正確な反映
- 親子アカウントの階層的権限管理
- ギフト券システムの確実な動作
3.5 【必須】在庫・予約管理¶
3.5.1 高度な予約注文システム¶
予約注文タイプ分類:
- 欠品予約: 在庫切れ商品の再入荷待ち予約
- 新商品予約: 発売前商品の事前予約
- 定期予約: 定期的な自動注文設定
- キャンペーン予約: 期間限定キャンペーン商品の予約
出荷時期別受注データ管理:
- 即時出荷分: 在庫有り商品の即時出荷
- 予約出荷分: 入荷次第出荷(出荷時期別管理)
- 受注データ分割: 同一注文内での出荷時期別受注生成
- 統合管理: 同一出荷時期商品の受注統合機能
予約商品送料計算:
- 予約商品: 原則送料無料
- 混載注文: 通常商品分のみ送料計算
- 分割出荷: 出荷回数に応じた送料配分
- 送料優遇: 予約顧客への送料特典適用
予約注文制御機能:
- 予約可能数量: 入荷予定数に基づく予約受付制限
- 予約期限: 商品別予約受付期限設定
- 予約キャンセル: 入荷遅延時の自動キャンセル機能
- 予約通知: 入荷・出荷予定の自動通知機能
3.5.2 高度な在庫連動制御¶
リアルタイム在庫管理:
- 在庫同期: 基幹システムとのリアルタイム在庫同期
- 予約数管理: 予約注文数の在庫からの差し引き
- 安全在庫: 欠品防止のための安全在庫設定
- 入荷予定管理: 入荷予定日・数量の管理・表示
商品表示制御:
- 在庫状況表示: 在庫数・予約可能数の詳細表示
- 欠品商品処理: 欠品・廃番商品のカート一括削除
- 予約切替表示: 在庫切れ時の予約注文表示切替
- カテゴリ制御: 在庫状況に応じたカテゴリ別表示制御
キャンペーン連動制御:
- キャンペーン在庫: キャンペーン商品専用在庫管理
- 予約キャンペーン: 予約商品でのキャンペーン適用
- 在庫連動停止: 在庫切れ時のキャンペーン自動停止
- 段階的制御: 在庫減少に応じた段階的キャンペーン制御
受け入れ条件:
- 在庫状況のリアルタイム正確表示
- 予約注文の直感的な切り替えUI
- 複雑な混載注文時の正確な送料計算
- 在庫切れ商品の自動非表示・カート削除
- カート内商品の在庫状況リアルタイム更新
- 予約可能数量の正確な表示・制御
- キャンペーンと在庫の連動制御
3.6 【重要】キャンペーン機能¶
3.6.1 多様なキャンペーン形式(6タイプ詳細仕様)¶
タイプ1: 金額ベース選択ギフト
- 要求: 一定金額購入時の選択制プレゼントシステム
- 特徴: 定価計算 vs 実購入価格計算の選択機能
- 実装: 複数候補からの自由選択システム
- 表示: リアルタイム適用状況表示
- 条件: 最低購入金額・最大選択数の設定
タイプ2: 数量ベース価格割引
- 要求: 一定個数購入で価格割引適用
- 実装: 別商品番号システムによる価格差分管理
- 特徴: 段階的割引率設定(10個で10%、20個で15%等)
- 表示: 適用条件までの残数量表示
- 制御: 顧客ステータス別割引率調整
タイプ3: 数量ベース無償ギフト
- 要求: 一定個数購入で無償プレゼント提供
- 特徴: 変動プレゼント + 固定プレゼントの組合せ
- 制御: 購入数量連動プレゼント数制御
- 管理: プレゼント在庫の自動管理
- 表示: 次回プレゼント条件の明示
タイプ4: 複合キャンペーン
- 要求: 価格割引 + 無償ギフトの同時適用
- 制御: 複数特典の優先順位管理
- 条件: 各特典の個別適用条件設定
- 表示: 複数特典の統合表示
- 計算: 複雑な特典計算の正確性確保
タイプ5: マルチカテゴリ選択
- 要求: 複数カテゴリ横断購入条件
- 条件例: カテゴリA・B・Cから各1個ずつ選択でプレゼント
- 制御: カテゴリ別購入状況の追跡
- 表示: 未達成カテゴリの明示
- 管理: カテゴリ変更時の条件自動更新
タイプ6: ハイブリッドキャンペーン
- 要求: 上記1-5の複雑組合せ適用
- 特徴: 段階的特典システム
- 例: 50個購入で15%割引+100個購入で追加ギフト+カテゴリ選択条件
- 制御: 複数条件の並行チェック
- 表示: 段階的達成状況の可視化
3.6.2 キャンペーン制御・管理¶
詳細適用制御:
- 顧客ステータス別表示・適用制御
- 個別顧客の適用除外・特別適用設定
- 購入数量制限・期間制限の詳細管理
- セミナー参加者限定URL対応
- 地域別・販売チャネル別制御
キャンペーンコード管理:
- 非表示キャンペーンコード: 受注データに自動反映される内部管理コード
- セミナー限定キャンペーン: 専用URL(/campaign/seminar/XXXX)アクセス時の一時権限付与
- 個別顧客例外制御: ステータス無視の個別適用・除外設定機能
- 期間限定コード: 時間単位での有効期限設定(例:セミナー開催日のみ)
リアルタイム監視・表示機能:
- 営業担当者向けキャンペーン状況確認画面
- 適用までの残金額・残数量のリアルタイム表示
- キャンペーン利用状況の統計レポート
- 在庫連動キャンペーン自動停止機能
カート内リアルタイム制御:
- 数量変更時の適用状況更新: カート内数量変更時の即座な条件再判定
- 条件達成状況表示: 「残り○○円でキャンペーン適用」等の表示
- 代替制御: 数量変更が困難な場合の専用変更画面への誘導
- 適用商品の明示: 適用可能商品・適用済み商品の明確な表示
受け入れ条件:
- カート変更時のリアルタイム適用状況表示
- 複数キャンペーンの同時適用制御
- キャンペーン適用条件の分かりやすい明示
- 6タイプ全ての正確な動作確認
- 複雑な組合せ条件の正確な計算
- 管理画面での簡単な設定・変更機能
- セミナー限定URL機能の確実な動作
3.7 【重要】注文・決済管理¶
3.7.1 複数決済方法対応(詳細仕様)¶
要求: 顧客属性に応じた決済方法制御
- 売掛: SMILEシステム上で売買契約がある先のみ選択可能
- 代引き: 直送モード時不可、通常モード時のみ利用可能
- クレジットカード: 決済手数料が法的制約により実装中止
- 前入金: 請求書PDF自動発行対応
決済方法制御詳細:
- 顧客ステータス連動: 顧客ステータスに応じた決済方法制限
- モード連動制御: 直送モード時の代引き自動非表示
- 手数料計算: 代引き手数料の自動計算・加算
- 個別設定: 特定顧客への個別決済方法設定機能
受け入れ条件:
- 顧客別使用可能決済方法設定
- 決済方法別手数料の自動加算
- 請求書PDF自動生成・ダウンロード
- 決済方法制限の確実な動作
3.7.2 税務対応・コンプライアンス(詳細仕様)¶
インボイス制度対応:
- 適格請求書: 適格請求書発行事業者登録番号の記載
- 必須記載事項:
- 適格請求書発行事業者の氏名又は名称及び登録番号
- 取引年月日
- 取引内容(軽減税率の対象品目である旨)
- 税率ごとに区分して合計した対価の額(税抜き又は税込み)
- 税率ごとに区分した消費税額等
- 請求書フォーマット: 法定要件を満たすPDF自動生成
- 保存要件: 電子帳簿保存法に対応したデータ保存
軽減税率・複数税率対応:
- 税率分類:
- 標準税率(10%): 化粧品、美容機器等
- 軽減税率(8%): 該当商品がある場合の対応
- 税率別表示: 商品別・税率別の明確な分離表示
- 税額計算: 税率ごとの正確な税額計算・表示
- 合計金額表示: 各税率別合計金額の詳細表示
請求書・帳票機能:
- 自動生成: 注文確定時の請求書PDF自動生成
- ダウンロード機能: 顧客・管理者向け請求書ダウンロード
- カスタマイズ: 企業ロゴ・住所等の請求書カスタマイズ
- 再発行機能: 請求書の再発行・修正機能
税務署対応データ出力:
- 消費税申告: 消費税申告に必要なデータ出力
- 売上台帳: 税務調査対応の詳細売上台帳出力
- 仕入台帳: 仕入控除対象データの管理・出力
- 監査証跡: 取引の完全な監査証跡データ管理
コンプライアンス管理:
- 法改正対応: 税制改正時の自動アップデート機能
- エラーチェック: 税額計算・記載事項の自動エラーチェック
- アラート機能: 法的要件不備時のアラート表示
- 履歴管理: 税率変更・法改正対応履歴の管理
受け入れ条件:
- 商品別税率の正確な自動適用
- 請求書の全法的要件充足
- 税務署対応データの完全な出力機能
- インボイス制度の完全対応
- 軽減税率・複数税率の正確な処理
- 電子帳簿保存法対応のデータ管理
3.8 【重要】データ管理・外部連携¶
3.8.1 SMILE基幹システム連携(詳細仕様)¶
受注データCSV出力仕様:
- 出力フォーマット: SMILE Ver.V2指定形式準拠
- 出力項目: 受注番号、得意先番号、納品先番号、商品番号、数量、単価、税率、配送日等
- 文字コード: Shift-JIS
- 区切り文字: カンマ区切り(,)
- 改行コード: CRLF(Windows形式)
- ヘッダー: SMILE指定ヘッダー行付与
納品先データ自動採番システム:
- 採番ルール: 得意先番号(6桁)+ 納品先番号(2桁)の8桁体系
- 採番アルゴリズム:
- 新規得意先: 000001から開始
- 既存得意先: 最大納品先番号+1で採番
- 欠番処理: 削除された番号の再利用制御
- 自動生成: 新規納品先登録時の自動採番
- 重複チェック: 既存番号との重複防止機能
- 手動設定: 特殊ケース対応の手動番号設定機能
納品先データ管理:
- 新規納品先入力: 既存指定先以外の配送先入力機能
- CSV出力: 納品先データのSMILE取込み用CSV出力
- 同時ダウンロード: 受注データと納品先データの同期ダウンロード
- 通知機能: 新規納品先データ存在時の見落とし防止通知
- データ連携: 納品先データ存在時の管理画面表示制御
在庫データ連携:
- 連携方式: REST API連携 + CSV一括更新(バックアップ)
- 更新頻度: リアルタイム更新(15分間隔) + 日次バッチ更新
- 連携項目: 商品番号、在庫数、予約数、入荷予定日、安全在庫数
- エラー処理: 連携失敗時の自動リトライ(3回)+ 管理者通知
データ整合性チェック機能:
- 必須項目チェック: 得意先番号、商品番号、数量、単価の必須検証
- フォーマットチェック:
- 数値形式: 整数・小数点以下桁数の検証
- 日付形式: YYYY-MM-DD形式の検証
- 商品番号: 8桁固定長の検証
- 範囲チェック:
- 数量: 1~9999の範囲チェック
- 金額: 0~999,999,999の範囲チェック
- 関連性チェック: 得意先-納品先の関連性検証
エラーデータ検出・修正機能:
- エラー検出: データ出力前の自動エラー検出
- エラー分類:
- 必須項目不備
- フォーマット不正
- 範囲外値
- 関連性エラー
- 修正支援: 修正候補の自動提案機能
- 修正履歴: データ修正履歴の記録・管理(変更前後の値保存)
受け入れ条件:
- SMILE指定フォーマットでの正確な出力
- データの整合性100%確保
- エラーデータの自動検出・修正機能
- 納品先番号の正確な自動採番
- 基幹システムとの確実な連携動作確認
3.8.2 外部システム連携・マーケティングツール¶
決済システム連携詳細:
- GMOペイメント: API仕様書v3.0準拠、エラーハンドリング、リトライロジック(5回)
- SBペイメント: REST API連携、webhookによるリアルタイム決済状況取得
- 代引き: ヤマト運輸B2クラウド連携、配送ラベル自動発行
- 銀行振込: 入金確認の自動化、消込処理の自動実行
メール配信システム:
- SMTP設定: TLS暗号化対応、認証設定
- HTMLメール対応: レスポンシブデザイン、画像埋込
- 送信履歴管理: 送信ログ・エラーログの完全記録
- 配信制御: 送信レート制限、バウンス処理
マーケティングツール連携:
- Google Analytics 4:
- Enhanced Ecommerce イベント設定
- カスタムディメンション(顧客ステータス、キャンペーン等)
- コンバージョン目標設定(購入、会員登録等)
- Facebook Pixel:
- コンバージョン API 設定
- カスタムオーディエンス作成
- 動的リマーケティング設定
- 外部チャットボット:
- JavaScript API 連携仕様
- 顧客データ連携(ログイン状態、購入履歴)
- 自動応答設定
受け入れ条件:
- 各決済代行会社との確実な連携動作
- メール配信の高い到達率確保
- Google Analytics、Facebook Pixel等の正確なデータ取得
- カスタムイベント・コンバージョン計測の実装
- プライバシー設定の完全遵守
4. 非機能要件¶
4.1 システム性能・運用詳細指標¶
処理性能要件:
- 月次大量データ処理: 10,000件以上の注文データ処理時間5分以内
- 同時アクセス対応: キャンペーン開始時の瞬間500アクセス対応
- レスポンス時間: 商品検索・カート処理3秒以内
- データベース最適化: インデックス設計・クエリ最適化による高速化
システム監視・運用:
- 監視項目:
- CPU使用率(80%超でアラート)
- メモリ使用率(85%超でアラート)
- レスポンス時間(5秒超でアラート)
- 同時接続数(400接続超で警告)
- エラー通知システム:
- 決済失敗の即座通知
- 在庫同期エラーの自動通知
- 価格計算エラーの緊急通知
- バックアップ・リストア:
- RPO(目標復旧時点): 1時間
- RTO(目標復旧時間): 30分
- 日次・週次・月次の3段階バックアップ
4.2 ユーザビリティ・アクセシビリティ¶
- レスポンシブ対応: PC・タブレット・スマートフォン
- アクセシビリティ: WCAG 2.1 AA準拠
- 多言語対応: 日本語(将来的に英語対応準備)
- 操作性: 3クリック以内での主要機能アクセス
4.3 セキュリティ・コンプライアンス¶
認証・アクセス制御:
- 認証: OAuth 2.0、二要素認証対応準備
- セッション管理: 30分無操作でのタイムアウト
- アクセス制御: 役割ベース権限管理(RBAC)
データ保護・暗号化:
- データ保護: GDPR、個人情報保護法遵守
- 決済セキュリティ: PCI DSS準拠
- 暗号化: 同意履歴データのAES-256暗号化
- 通信セキュリティ: SSL/TLS 1.3対応
監査・ログ管理:
- 操作ログ記録: 管理者操作、顧客操作、システム処理の完全記録
- データ改ざん防止: SHA-256ハッシュによる完全性チェック
- 監査証跡: 税務調査対応の詳細ログ保存(7年間)
- ログ分析: 不正アクセス検知・アラート機能
4.4 法的要件・電子帳簿保存法対応¶
電子帳簿保存法対応:
- タイムスタンプ: 請求書・取引データへの法的タイムスタンプ付与
- 検索機能: 日付、金額、取引先による高速検索機能
- ファイル形式: PDF/A形式での長期保存対応
- 可視性確保: データの真正性・見読性・検索性の確保
インボイス制度完全対応:
- 適格請求書: T1234567890123形式の登録番号記載
- 必須記載事項: 法定6項目の完全記載
- 税率別表示: 8%・10%税率の明確分離表示
- 保存期間: 適格請求書の7年間電子保存
5. 制約条件・前提条件¶
5.1 技術的制約¶
- 選定プラットフォームの技術的制約内での実装
- 既存データ(顧客・商品・注文履歴)の移行必須
- 既存システムとの段階的移行
- セキュリティ要件の遵守
5.2 業務制約¶
- 営業担当者の現行業務フローとの整合性
- 既存顧客への影響最小化
- 繁忙期(12月・3月)の大幅変更回避
5.3 データ形式・プロトコル詳細仕様¶
商品データ仕様:
- 商品番号体系:
- エクスビアンス: 8****(8から始まる8桁)
- メソシューティカル: 6****(6から始まる8桁)
- 機器消耗品: 7****(7から始まる8桁)
- その他: 1**-9**(上記以外)
- 画像ファイル仕様:
- 形式: JPG形式
- 最大サイズ: 2MB
- 推奨サイズ: 800x600px
- 命名規則: {商品番号}.jpg
- 商品マスタ更新:
- 日次バッチ: 毎日午前2時実行
- リアルタイム更新: 緊急時のみ手動実行
注文データ仕様:
- 受注番号採番: YYYYMMDD + 4桁連番(例:202401010001)
- 10段階注文ステータス管理:
- 受注(新規注文受付)
- 確認(内容確認中)
- 承認(営業承認済)
- 出荷準備(倉庫作業中)
- 出荷完了(発送済)
- 配送中(配送業者引渡し)
- 配達完了(顧客受取り)
- キャンセル(注文取消し)
- 返品(返品処理中)
- 完了(取引完了)
キャンセル処理詳細:
- 出荷前キャンセル: 全額返金、在庫復旧
- 一部キャンセル: 部分返金、残数量で注文継続
- 出荷後キャンセル: 返品フロー移行
5.4 実装困難・後期対応項目¶
5.4.1 今回対応困難な項目¶
以下の項目は技術的・法的制約により当初リリースでは対応困難:
- クレジット手数料: 法的制約により実装中止
- 高度な権限階層: 複雑な親子孫アカウント管理は後期検討
- リアルタイム在庫同期: 15分間隔での準リアルタイム対応
5.4.2 後期対応予定項目¶
以下の項目は技術的制約・業務複雑性により後期対応予定:
- 複合数量制限制御: 単品とセット商品の合計数量制限は倉庫運用との相談を含めて検討
- ポイント自動付与: 毎月特定日の自動付与はCSV読み込み対応に留める
- 計測タグの柔軟な管理: ページ個別・全ページ一括のタグ埋め込み機能は要検討
5.4.3 実装中止項目¶
以下の項目は法的・業務上の制約により実装中止:
- クレジット手数料連動: 法的問題により実装中止
- 代引き手数料加算: 代引き手数料を顧客負担とする実装は計算に問題なし
5.5 追加確認事項(Excelファイル由来)¶
5.5.1 親子アカウント管理の詳細仕様¶
- 支店発注システム: 複数店舗の一元管理機能
- スタッフ社販システム: 従業員向け特別価格設定
- 掛率連動制御: 親アカウントの掛率に応じた子アカウント割引率設定
- 権限管理: 親アカウント条件に連動する子アカウント条件設定
5.5.2 ブランド別送料管理系統の詳細¶
- エクスビアンス送料: 商品番号 00013131
- メソシューティカル送料: 商品番号 00013134
- 複数ブランド混載時: 最高額ブランド送料を適用
- 送料無料金額: ブランド別送料無料金額管理
5.5.3 非表示キャンペーンコード機能¶
- 内部管理コード: 顧客からは見えないが受注データに反映
- 成果測定: 受注データからキャンペーン成果を簡単に抽出
- 自動適用: 特定条件満たし時の自動コード適用
- 管理ツール: キャンペーンコードの管理・検索機能
5.5.4 顧客別メッセージ制御機能¶
- ステータス連動メッセージ: 顧客ステータスに応じた最終確認画面注意文変更
- 商品連動メッセージ: 特定商品購入時の追加メッセージ表示
- 予約連動メッセージ: 予約注文含有時のメッセージ変更
- 柔軟なカスタマイズ: 顧客別・商品別・状況別の細かいメッセージ制御
5.5.5 詳細な適用条件表示機能¶
- キャンペーンリンク表示: 適用可能なキャンペーンへのリンク自動表示
- 適用状況を顧客ステータスで判定: 適用可能顧客のみにリンク表示
- キャンペーン内容の差分制御: 同一キャンペーンでも顧客ステータス別内容表示
- クレーム防止: 適用条件の明確化で後トラブル防止
6. 成功基準・検収条件¶
6.1 機能面¶
- 全必須機能の正常動作確認
- 既存データの100%正確な移行
- 現行システムとの機能同等性確保
6.2 性能面¶
- ページ読み込み時間3秒以内達成
- 同時100ユーザーでの安定動作
- 月次処理(割戻金計算等)の正常実行
6.3 運用面¶
- 営業担当者による操作研修完了
- マニュアル・ヘルプシステムの整備
- 本番運用1ヶ月後の安定稼働確認
承認: **____**
承認日: **____**
本要求仕様書は、リツビ BtoB ECサイト改修プロジェクトの成功を確実にするため、すべてのステークホルダーとの合意に基づき作成されました。