詳細情報:
注文在庫
注文在庫設定では、配送用にエクスポートされていない注文在庫を計上できます。このトピックは、B2C Commerce に該当します。
在庫リストに基づいて注文予約の動作を制御します。この構成方法は、ストアフロントでのチェックアウトプロセス後に注文が通常どのように処理されるかによって異なります。
在庫リストのインポートとエクスポート
在庫リストのインポートでは、注文在庫のオプション値が考慮されます。注文在庫の値がない場合:
- 新規リストの場合、注文在庫は有効化されません。
- 既存リストの場合、注文在庫は変更されません。
在庫リストのエクスポートでは、常に注文在庫の設定が考慮されます。
サイト環境設定のインポートとエクスポート
注文中の設定は、サイト環境設定ではなく在庫リストに関連しているため:
- サイト環境設定のエクスポートでは、注文在庫の設定はエクスポートされません。
- サイト環境設定のインポートでは、注文在庫の設定は考慮されませんが、次のような警告がログされます: 「Attribute OnOrderInventoryEnabled is deprecated and was ignored, it's now part of the ProductInventoryList import.」(属性 OnOrderInventoryEnabled は廃止予定のため無視されました。現在は ProductInventoryList インポートの一部となっています。)
注文在庫を使用する場合
- ストアフロントで注文が確定した直後に注文を配送用にエクスポートする場合は、この設定を無効にします (デフォルト)。この場合、注文が確定した場合に売上数を増やすのが理にかなっています。
- 配送用にエクスポートする前に注文を一定の期間保留する場合は、この設定を有効にします。この場合、注文中の数量で予約済み在庫を保持し、在庫が配送済みになった時点で売上数を増やすのが理にかなっています。
この設定を有効にした場合、注文が確定すると、その在庫は次の 2 段階のプロセスで処理されます。
- 注文の作成によって注文中の数量が増加。注文の削除、キャンセル、失敗で注文中の数量が減少。
- 注文をエクスポートすると、注文中の数量が減少し、売上数が同じ数だけ増加します。変更は注文のステータスがエクスポート済みに設定された時点でトリガーされます。このタイミングは、配送プロセスの統合によって異なります。通常、配送を担当するバックエンドシステムに注文がエクスポートにされた時点で、ステータスが変更されます。
割り当てレベルがリセットされると、売上数の値はゼロに設定されますが、注文中の値は変わりません。
(任意で使用を選択した場合) 注文中の数量は、発注済みだがまだ配送用にエクスポートされていない注文の数量を表します。売上数には注文中の数量は含まれません。売上数は前回の在庫の更新ごに配送された数量を表すためです。配送可能な商品ユニットを決定する場合、Salesforce B2C Commerce は (配送可能 = max(0、割り当て - 売上数) の数式を使用します。
在庫レベルは、現在発注済みのすべての注文の配送を計算に入れた後の販売可能なユニット数を表します: 在庫レベル = max(0, 割り当て - 売上数 – 注文中)
例
注文在庫が無効に設定されている場合:
| ステップ | 割り当て | 取り寄せの割り当て | 売上数 | 注文中 | 在庫レベル | 配送可能 | 販売可能 |
|---|---|---|---|---|---|---|---|
| 在庫割り当てを 20 にリセット | 20 | 10 | 0 | 未使用 | 20 | 20 | 30 |
| 顧客が注文 1 (数量 5) を発注 | 20 | 10 | 5 | 未使用 | 15 | 15 | 25 |
| 顧客が注文 2 (数量 2) を発注 | 20 | 10 | 7 | 未使用 | 13 | 13 | 23 |
| 両方の注文が配送用にエクスポートされる | 20 | 10 | 7 | 未使用 | 13 | 13 | 23 |
| 在庫を 11 にリセット | 11 | 10 | 0 | 未使用 | 11 | 11 | 21 |
注文在庫が有効に設定されている場合:
| ステップ | 割り当て | 取り寄せの割り当て | 売上数 | 注文中 | 在庫レベル | 配送可能 | 販売可能 |
|---|---|---|---|---|---|---|---|
| 在庫割り当てを 20 にリセット | 20 | 10 | 0 | 0 | 20 | 20 | 30 |
| 顧客が注文 1 (数量 5) を発注 | 20 | 10 | 0 | 5 | 15 | 20 | 25 |
| 注文 1 が配送用にエクスポートされる | 20 | 10 | 5 | 0 | 15 | 15 | 25 |
| 顧客が注文 2 (数量 2) を発注 | 20 | 10 | 5 | 2 | 13 | 15 | 23 |
| 在庫割り当てを 11 にリセット | 11 | 10 | 0 | 2 | 9 | 11 | 19 |
| 注文 2 が配送用にエクスポートされる | 11 | 10 | 2 | 0 | 9 | 9 | 19 |
キャンセルの例
これらの例における割り当てのリセットのタイミングに注目してください。B2C Commerce の在庫レコードは、以前の allocationResetDate で更新されます。
注文在庫が無効に設定されている場合:
| ステップ | 割り当て | 取り寄せの割り当て | 売上数 | 注文中 | 在庫レベル | 配送可能 | 販売可能 |
|---|---|---|---|---|---|---|---|
| 在庫割り当てを 20 にリセット | 20 | 10 | 0 | 未使用 | 20 | 20 | 30 |
| 顧客が注文 1 (数量 5) を発注 | 20 | 10 | 5 | 未使用 | 15 | 15 | 25 |
| 注文 1 が配送用にエクスポートされる | 20 | 10 | 5 | 未使用 | 15 | 15 | 25 |
| 在庫割り当てを 11 にリセット、ただし B2C Commerce にはまだインポートされていない | 20 | 10 | 5 | 未使用 | 15 | 15 | 25 |
| 顧客が注文 2 (数量 2) を発注 | 20 | 10 | 7 | 未使用 | 13 | 13 | 23 |
| 注文 2 が配送用にエクスポートされる | 20 | 10 | 7 | 未使用 | 13 | 13 | 23 |
| 在庫割り当てのリセットが、Order2.exportDate より以前の inventoryRecord.allocaionResetDate で B2C Commerce にインポートされる | 11 | 10 | 2 | 未使用 | 9 | 9 | 19 |
| 注文 1 をキャンセル | 11 | 10 | 2 | 未使用 | 9 | 9 | 19 |
| 注文 2 をキャンセル | 11 | 10 | 0 | 未使用 | 11 | 11 | 21 |
注文在庫が有効に設定されている場合:
| ステップ | 割り当て | 取り寄せの割り当て | 売上数 | 注文中 | 在庫レベル | 配送可能 | 販売可能 |
|---|---|---|---|---|---|---|---|
| 在庫割り当てを 20 にリセット | 20 | 10 | 0 | 0 | 20 | 20 | 30 |
| 顧客が order1 (支払は未収集)、qty 5 を作成 | 20 | 10 | 0 | 5 | 15 | 20 | 25 |
| 顧客が order2 (支払を収集済み)、qty 2 を作成して確定 | 20 | 10 | 0 | 7 | 13 | 20 | 23 |
| 在庫割り当てを 11 にリセット、ただし B2C Commerce にはまだインポートされていない | 20 | 10 | 0 | 7 | 13 | 20 | 23 |
| 注文 2 が配送用にエクスポートされる | 20 | 10 | 2 | 5 | 13 | 18 | 23 |
| 在庫割り当てのリセットが、Order2.exportDate より以前の inventoryRecord.allocaionResetDate で B2C Commerce にインポートされる | 11 | 10 | 2 | 5 | 4 | 9 | 14 |
| 注文 1 が失敗 | 11 | 10 | 2 | 0 | 9 | 9 | 19 |
| 注文 2 をキャンセル | 11 | 10 | 0 | 0 | 11 | 11 | 21 |
| 注文 1 の失敗を元に戻す | 11 | 10 | 0 | 5 | 6 | 11 | 16 |
| 注文 2 のキャンセルを元に戻す | 11 | 10 | 2 | 5 | 4 | 9 | 14 |
