B2C Commerce でのイベント処理の設定 (パイロット)
B2C Commerce のイベントを使用すると、Commerce Cloud 環境で特定のデータイベントや処理イベントが発生したときに通知を受け取ることができます。イベントタイプを有効にし、コネクターを構成するには、Business Manager を使用します。B2C Commerce は、構成済みのコネクターにイベントを直接ルーティングします。
必要なエディション
| 使用可能なソリューション: B2C Commerce |
イベントでは、B2C Commerce で特定の変更が発生したときに通知が表示されるため、プラットフォーム外のキャッシュの無効化、外部の検索システムや注文システムへのデータの同期、下流の注文ワークフローやマーケティングワークフローの実行など、外部システムでビジネスプロセスをトリガーできます。これにより、ストアフロントの正確性が保たれ、プラットフォーム操作の完了日時の手動追跡が減り、ビジネスロジックがプラットフォームの操作から切り離されます。これは、ハイブリッドまたはヘッドレスのストアフロント実装で特に便利です。イベントは、プラットフォームイベントに反応する顧客デベロッパーおよびマーチャンダイザーを対象としています。
イベント処理では、B2C Commerce でデータイベントや処理イベントが発生したときに自社のシステム (または外部サービス) に通知する方法と、他の Commerce Cloud サービスに通知する方法の 2 つの主要なユースケースがサポートされています。B2C Commerce では、設定した宛先にのみイベントが配信されます。パイロットの場合、個別のイベントバスはありません。B2C Commerce は、プラットフォーム内から構成済みのコネクタ (Webhook など) にイベントを直接ルーティングします。
テナントで関心のあるイベントタイプを有効にしてから、Business Manager で 1 つ以上のコネクター (Webhook URL など) を構成します。有効なイベントが発生すると、B2C Commerce はそのイベントを構成済みの各コネクタに非同期で送信します。有効なイベントタイプのみが、設定したコネクタにのみ送信されます。イベントの種類に対してコネクタを構成しない場合、その種類に対する通知は送信されません。
イベントタイプ : フレームワークは、データイベントと処理イベントをサポートします。現在のパイロット スコープでは、初期イベントの種類はレプリケーション処理イベントです。この 2 つのレプリケーションイベントタイプは、B2C Commerce リリース 26.6 で使用できます。
| イベント ID | 説明 | 発射時 |
|---|---|---|
sf.cc.replication.completed |
レプリケーションは正常に完了しました | レプリケーション処理がCOMPLETED状態に達した場合 |
sf.cc.replication.failed |
レプリケーションに失敗しました | レプリケーション処理がFAILED状態に達した場合 |
HTTP ヘッダー : すべてのレプリケーションイベントには、標準の Commerce Cloud プラットフォームヘッダーが含まれます。
| ヘッダー | 説明 | 例 |
|---|---|---|
x-sf-cc-timestamp (英語) |
イベントが生成された ISO-8601 タイムスタンプ | 2026-03-11T13:31:13.755934395Z |
x-sf-cc-インスタンス ID |
インスタンス識別子 (小文字) | zzzz_prd |
x-sf-cc-サイト ID |
サイト識別子 (組織レベルの操作では空) | RefArchまたは"" |
x-sf-cc-相関 ID |
システム間で追跡するための相関 ID | 550e8400 - e29b - 41d4 - a716 - 446655440000 |
x-sf-cc-イベント ID |
イベント・タイプ識別子 | sf.cc.replication.completed |
JSON ペイロード構造 : すべてのレプリケーションイベントには、次の共通フィールドが含まれます。
| フィールド | タイプ | 必要あり | 説明 |
|---|---|---|---|
プロセス ID | string | あり | レプリケーション処理の一意の識別子 |
uuid | string | あり | レプリケーション処理の UUID |
type | string | あり | レプリケーション処理のタイプ (処理タイプを参照) |
targetSystem (ターゲットシステム) | string | あり | ターゲット・システム名(通常は「開発」または「本番」) |
state | string | あり | プロセスの現在の状態 (プロセスの状態を参照) |
isDataReplication (英語) | ブール値 | あり | データのレプリケーションの場合はtrue、コードのレプリケーションの場合はfalse |
成功 | ブール値 | あり | 完了したイベントの場合はtrue、失敗したイベントの場合はfalse |
description | string | なし | レプリケーション処理に関するユーザー指定の説明 |
codeVersion (コードバージョン) | string | なし | コードレプリケーションのコードバージョン識別子 |
レプリケーショングループ {{れぷりけーしょんぐるー | 配列 | あり | 含まれるレプリケーショングループのリスト (レプリケーショングループを参照) |
開始日 | string | あり | プロセス開始時の ISO-8601 タイムスタンプ |
終了日 | string | あり | 処理終了時の ISO-8601 タイムスタンプ |
エラー固有のフィールド : 失敗したイベント ( sf.cc.replication.failed ) には、マシンで読み取り可能なエラー状態コードであるerrorStateが含まれます。
プロセスタイプ : typeフィールドはレプリケーション操作を示します。
| データレプリケーションの価値 | 説明 |
|---|---|
レプリケーションパブリケーション | データ転送と即時公開 |
レプリケーション | データ転送のみ (2 段階レプリケーション) |
論文発表 | 以前に転送したデータの公開 |
元に戻す | 以前のレプリケーションを元に戻す |
| コードレプリケーション値 | 説明 |
|---|---|
CodeReplicationPublication (英語) | コードの転送と即時発行 |
コードレプリケーション | コードの転送のみ |
コードパブリケーション | 以前に転送したコードの公開 |
コード元に戻す | 以前のコードレプリケーションを元に戻す |
プロセスの状態 : 状態フィールドはプロセスの状態を示します。
| 値 | 説明 |
|---|---|
待機中 | プロセスが作成され、開始する準備が整いました |
初期化中 | プロセスは実行の準備をしています |
実行中 | 処理が進行中です |
ファイナライズ | プロセスが完了しています |
完了しました | 処理は正常に完了しました |
失敗 | プロセスに失敗しました |
CANCELEDは非推奨であり、新しいイベントには表示されません。レプリケーショングループ : replicationGroups配列は、レプリケートされた内容を記述します。
| フィールド | タイプ | 必要あり | 説明 |
|---|---|---|---|
id | string | あり | 機械可読グループ識別子 |
type | string | あり | グループの範囲:ORGANIZATION、SITE、またはREPOSITORY |
分野 | string | なし | リポジトリを対象範囲とするグループのドメイン名 |
組織レベルのグループ ID
| ID | 説明 |
|---|---|
ORGANIZATION_CATALOG | すべてのカタログ |
ORGANIZATION_CATALOG_STATIC | すべてのカタログの静的コンテンツ |
ORGANIZATION_CSC_SETTINGS | Customer Service Center 設定 |
ORGANIZATION_CSRF_WHITELIST_PIPELINES | CSRF 許可リストのパイプライン/開始ノード |
ORGANIZATION_CUSTOMERLIST | すべての顧客リスト |
ORGANIZATION_CUSTOM_OBJECT | 組織のカスタムオブジェクト |
ORGANIZATION_TYPE_DEFINITION | カスタムオブジェクトタイプとシステム拡張 |
ORGANIZATION_REFERENCE_DATA | 位置情報データ |
ORGANIZATION_LIBRARY | すべての共有ライブラリ |
ORGANIZATION_OAUTH_PROVIDERS | OAuth プロバイダー |
ORGANIZATION_OCAPI_SETTINGS (組織__設定) | グローバル OCAPI 設定 |
ORGANIZATION_PAGE_META_TAGS | ページのメタタグ定義 |
ORGANIZATION_PREFERENCE | 組織の基本設定 |
ORGANIZATION_PREFERENCE_CUSTOM | カスタム環境設定のみ |
ORGANIZATION_PREFERENCE_SYSTEM | システム環境設定のみ |
ORGANIZATION_PRICE_BOOK | すべての価格表 |
ORGANIZATION_SITE | すべてのサイト |
ORGANIZATION_STATIC_CONTENT | グローバル静的コンテンツ |
ORGANIZATION_WEBDAV_CLIENT_PERMISSIONS | クライアントの WebDAV 許可 |
ORGANIZATION_SORTING | グローバル並べ替えルール |
ORGANIZATION_PAYMENTS_CONFIG | 支払いの設定 |
ORGANIZATION_ASSIGNMENT | 割り当てと限定子 |
サイトレベルのグループ ID
| ID | 説明 |
|---|---|
SITE_ABTEST | A/B テストと体験 |
SITE_ABTEST_ONLY | A/B テストのみ |
SITE_ACTIVEDATAFEED | アクティブデータフィードの定義 |
SITE_CACHE_SETTINGS | キャッシュ設定 |
SITE_CONTENT | コンテンツライブラリ |
SITE_COUPON | クーポン |
SITE_CUSTOMER_GROUP | 顧客グループ |
SITE_CUSTOM_OBJECT | サイト固有のカスタムオブジェクト |
SITE_DYNAMIC | 動的コンテンツ |
SITE_OCAPI_SETTINGS (サイト__設定) | サイトの OCAPI 設定 |
SITE_PAYMENT_METHOD | 支払設定 |
SITE_PREFERENCE | サイト環境設定 |
SITE_PREFERENCE_SYSTEM | サイトシステム環境設定 |
SITE_PREFERENCE_CUSTOM | サイトのカスタム環境設定 |
SITE_PROMOTION | キャンペーンおよびプロモーション |
SITE_SEARCH_INDEX | 検索インデックス |
SITE_SHIPPING_METHOD | 配送方法 |
SITE_SLOT | コンテンツスロット |
SITE_SORTING | サイト固有の並べ替え |
SITE_SOURCECODE | ソースコード |
SITE_STORE | 店舗 |
SITE_TAX | 課税設定 |
SITE_URL | ストアフロント URL |
SITE_URL_CATEGORY | カタログ URL |
SITE_URL_FOLDER | コンテンツ URL |
SITE_URL_PIPELINE | パイプライン URL |
SITE_URL_REDIRECT | URL リダイレクト |
リポジトリレベルのグループ ID
| ID | 説明 |
|---|---|
カタログ | 特定のカタログ (ドメインにカタログ名が含まれる) |
CATALOG_STATIC | 特定のカタログ静的コンテンツ |
サイト | 特定のサイト (ドメインにサイト名が含まれる) |
図書室 | 特定のライブラリ (ドメインにライブラリ名が含まれる) |
PRICE_BOOK | 特定の価格表 (ドメインに価格表名が含まれる) |
エラー状態 : 失敗したイベントには、機械で読み取り可能なerrorState値が含まれます。
| 値 | 説明 |
|---|---|
ERROR_INITIALIZATION | レプリケーション プロセスを初期化できませんでした |
ERROR_STAGING_PROCESS_CREATION | ステージング プロセスを作成できませんでした |
ErrorInternalLive (エラー内部ライブ) | ターゲット・システムの内部エラー |
ErrorInternalEdit (エラー内部編集) | ソース・システムの内部エラー |
ErrorNonStagedParentSites (エラー非ステージング親サイト) | 選択したコンテンツは、まだレプリケートされていないサイトに属しています |
ErrorConnectLiveSystem(エラーコネクトライブシステム) | ターゲット・システムに接続できませんでした |
エラー作成LiveStagingProcess | ターゲット・システムでプロセスの初期化に失敗しました |
ErrorExecutingEditingStagingPipeline | ソース・システム・パイプラインの内部エラー |
エラーLiveStagingProcessKilled | ターゲット・システムでプロセスが中止されました |
ErrorEditingStagingProcessKilled (エラー編集ステージングプロセスキル) | ソース・システムでプロセスが中止されました |
ErrorStagingProcessCancelled (エラーステージングプロセスキャンセル) | 処理が取り消されました |
NoStagingProcessCreated (ステージングプロセス作成なし) | プロセスを初期化できませんでした |
ErrorStagingProcessModeNotSupported (サポートされていないエラーステージングプロセスモード) | プロセス モードはサポートされていません |
エラーテーブルロック | ロックされたデータベーステーブル |
エラーStagingProcessors の初期化 | プロセッサを初期化できませんでした |
ErrorCallingLivePipeline (英語) | ターゲット・システムへの接続に失敗しました |
ErrorSynonymState (エラーシノニムステート) | ターゲット上のクリティカル無効な内部状態 |
エラーAcquiringEditingLocks | ソース・システムでロックを取得できませんでした |
エラーLiveLocksの取得 | ターゲット・システムでロックを取得できませんでした |
エラー準備 | ソース・システムで準備に失敗しました |
エラーリフレッシュキャッシュ | ターゲット・システムでキャッシュの更新に失敗しました |
エラーレプリケーション | ターゲット・システムへのデータ転送に失敗しました |
エラーパブリケーション | 転送されたデータの公開に失敗しました |
イベントタイプの設定
コネクタを構成したら、テナントのイベントの種類を確認して有効にします。次のサンプルペイロードは、完了、失敗、およびコードレプリケーションイベントに対してコネクタが受信するイベントデータを示しています。
レプリケーション成功イベント
{
"eventType": "sf.cc.replication.completed",
"timestamp":"2026-03-11T13:31:13.755934395Z",
"tenantId": "zzzz_stg",
"payload": {
"processId":"12345",
"uuid":"550e8400-e29b-41d4-a716-446655440000",
"type":"ReplicationPublication",
"targetSystem":"Production",
"state":"COMPLETED",
"isDataReplication": true,
"success": true,
"description":"Weekly catalog update",
"replicationGroups": [
{
"id":"ORGANIZATION_CATALOG",
"type":"ORGANIZATION"
},
{
"id":"CATALOG",
"type":"REPOSITORY",
"domain": "storefront-catalog-m-en"
}
],
"startDate":"2026-03-11T13:31:03Z",
"endDate":"2026-03-11T13:31:13.727Z"
}
}
レプリケーションの失敗イベント
{
"eventType": "sf.cc.replication.failed",
"timestamp":"2026-03-11T14:22:18.442Z",
"tenantId": "zzzz_prd",
"payload": {
"processId":"12346",
"uuid":"660e8400-e29b-41d4-a716-446655440001",
"type":"Replication",
"targetSystem":"Production",
"state":"FAILED",
"isDataReplication": true,
"success": false,
"description":"Emergency content update",
"errorState":"ErrorConnectLiveSystem",
"replicationGroups": [
{
"id":"SITE_CONTENT",
"type":"SITE"
},
{
"id":"SITE",
"type":"REPOSITORY",
"domain":"RefArch"
}
],
"startDate":"2026-03-11T14:22:15Z",
"endDate":"2026-03-11T14:22:18.442Z"
}
}
コード レプリケーション イベント
{
"eventType": "sf.cc.replication.completed",
"timestamp":"2026-03-11T15:05:32.118Z",
"tenantId": "zzzz_prd",
"payload": {
"processId":"12347",
"uuid":"770e8400-e29b-41d4-a716-446655440002",
"type":"CodeReplicationPublication",
"targetSystem":"Development",
"state":"COMPLETED",
"isDataReplication": false,
"success": true,
"codeVersion": "version1",
"replicationGroups": [],
"startDate":"2026-03-11T15:00:00Z",
"endDate":"2026-03-11T15:05:32.118Z"
}
}
実装上の注意
- すべてのタイムスタンプは、タイムゾーンインジケーター付きの ISO-8601 形式を使用します。
- インスタンス ID は小文字に正規化されます。
- 組織レベルの操作ではサイト ID が空です (レプリケーション処理は組織レベルです)。
説明フィールドは、オプションのユーザー指定のテキストです。- 空の
replicationGroups配列は、コードのみのレプリケーションを示します。 - エラー状態は機械で読み取り可能なコードであり、ローカライズされたテキストではありません。
コネクタ :コネクターは、B2C Commerce がイベント通知を送信する宛先です (たとえば、指定した URL への HTTP Webhook など)。配信は、内部のイベントディスパッチコンポーネントを介してほぼリアルタイムで非同期です。パイロットの場合、プラットフォームはベストエフォートの配信を保証します。Salesforce では、パイロット以外にも、再試行のメカニズムと、より堅牢なエラー処理を追加する予定です。認証とセキュリティ制御は、イベントへのアクセスを制御します。有効なイベントの種類のみが通知を生成し、イベントは構成したコネクタにのみ送信されます。現在の設計では、プッシュ モデルが使用されています。B2C Commerce によってエンドポイントへの HTTP リクエストが開始されます。イベントを受け入れて処理したときに、エンドポイントが正常な応答 (HTTP 200 など) を返すことを確認します。B2C Commerce Connector の詳細については、「B2C Commerce Connector」を参照してください。
イベントを設定するには、次の手順を実行します。
-
Business Manager で、イベントエリアまたはインテグレーションエリアを開きます (パスはリリースによって異なる場合があります)。
B2C Commerce でイベント通知を配信するコネクター (Webhook) に必要な情報を追加します。複数のコネクタを構成して、異なるイベントが異なるシステムに送信されるようにします。
- URL— URL — 完全なエンドポイント URL( など)を入力します。Commerce Cloud にはエンドポイントへのアクセスが必要です。Commerce Cloud が URL を呼び出せるようにファイアウォールルールを設定します。プレースホルダー: Webhook が受信する HTTP リクエストの例。入手可能な場合は、実際のサンプルと交換してください。POST /events HTTP/1.1 ホスト: your-system.example.com Content-Type: application/json
- 認証— エンドポイントで認証が必要な場合は、メソッド (API キー、OAuth、相互トランスポート層セキュリティ (TLS) など) と、Business Manager UI によって提供される認証情報またはトークンを構成します。資格情報を安全に保管します。それらを共有しないでください。
-
ヘッダー— エンドポイントで特定の HTTP ヘッダー (カスタム API キーヘッダーなど) が必要な場合は、コネクタ設定で構成します。プラットフォームでは、標準ヘッダー (
Content-Type: application/jsonなど) を自動的に追加できます。
-
使用可能なイベントの種類とその説明の一覧を確認します。

-
使用するイベントの種類ごとに、テナントに対して有効にします。
有効なイベントタイプのみが通知を生成します。無効な型はイベントを送信しません。イベントタイプはいつでも有効または無効にできます。関心のあるイベントの種類に必要な既存のコネクタ (Webhook) を指定するだけです。注: イベントタイプを有効にする場合は、既存の Webhook からのみ選択できるため、その前にステップ 1 が完了していることを確認してください。変更内容を保存します。
B2C Commerce Log Center を使用して、配信またはエンドポイントの問題を監視および診断します。Log Center を参照してください。

