コンテンツにスキップ

商流ルール移行メモ

このページは旧キャンペーンエンジン資料の置き換えです。

現状

  • CampaignEnginePlugin は廃止済み
  • PricingSystemPlugin も廃止済み
  • 現在は packages/plugins/src/rule-engine/commercial/CommercialRulesPlugin が単一の正本です

移行先

  • 実装: packages/plugins/src/rule-engine/commercial/
  • 実装層構造: 4 層 (L0 domain → L1 engine → L2 adapter → L3 application → L4 Vendure 統合)。詳細は pricing-system.md 「実装層の構造」
  • Admin API: commercialRules, commercialRule, createCommercialRule, updateCommercialRule, deleteCommercialRule, simulateCommercialRules
  • Shop API: activeOrderCommercialState
  • React Dashboard: /commercial-rules

対象商品の選び方

  • 業務上の選定・除外・変更管理は docs/specifications/2026-05-campaign-target-product-selection.md を参照する
  • 実装上の対象商品は ProductVariant 単位で扱い、通常 SKU とバンドル親 ProductVariant を同じ対象リストに入れる
  • CMS 投稿、バナー、Collection は導線や候補抽出に使えるが、販促適用の最終判定は Vendure 側の商流ルール条件で行う

業務概念との関係

  • 仕様上は pricing rule(恒常価格)と campaign(期間販促・特典)は分けて考える
  • 実装上は両者を CommercialRulesPlugin が共通エンジンとして評価する
  • campaign は価格制御そのものではなく、単価変更・注文調整・ギフト付与などを含む販促施策の概念
  • React Dashboard の業務導線は「価格・販促 > 価格・販促ルール」とし、内部パス /commercial-rules を利用する
  • 表示制御ルール / 表示ロジックプレビューは「ポリシー管理」で扱う

商流ルールで扱う内容

  • 対象商品・対象コレクションに対する単価変更
  • カート税抜小計 / 対象商品小計 / 数量しきい値での tier 判定
  • 注文調整 (add_order_amount)
  • 特典ギフト (add_gift_items)
  • highest_only / cumulative
  • combine / exclusive

補足

campaign ディレクトリは削除済みです。新規実装や調査は 商流ルール を参照してください。