商品目錄中的 inventory
欄位代表可在 Facebook 商店或 Instagram 購物帳號上銷售之每項商品的庫存量。此值會反映在「商品詳情頁面」(PDP)中,幫助買家瞭解有多少商品可銷售。保持數量準確和最新狀態對使用體驗很有幫助,因為這可以指出商品何時缺貨,如果不正確,可能會導致超售。
注意:inventory
欄位將停用,並以新的 quantity_to_sell_on_facebook
欄位取代。雖然我們在短期內會支援舊欄位名稱,但建議您使用新名稱。如需這項更新的詳細資訊,請參閱支援的商品欄位 - 高效速成+ 目錄廣告和商務。
注意:未設定庫存的商品無法供標註或購買。不過,您還是可以在不結帳的情況下,將其用於高效速成+ 目錄廣告。
inventory
欄位是動態的,這表示其值會隨著用戶從您的 Facebook 商店或 Instagram 購物帳號購買商品而波動。每當用戶下單時,對應商品的庫存量就會遞減。
如果是用戶進行取消,商務平台會自動增加此值或將商品加回庫存。如果是賣家進行取消,您可以在取消時將商品加回庫存,並設定取消 API 端點的 restock_items
欄位來增加對應的庫存量。
您透過商品目錄上傳或其他技術(詳情請參閱庫存更新策略)提供的值會視為真實來源,並且一律用來覆寫我們後端快取的值。
我們這一端會保留下列類型的庫存計數:
若要進一步瞭解這些庫存類型,請參閱商品生命週期。
當用戶在您的 Facebook 商店或 Instagram 購物帳號上購買商品時,inventory
值會隨之遞減。當此值達到 0
時,我們會將商品標示為「缺貨」,並限制任何人購買額外的單位。您應該盡力定期補充商品,因為「缺貨」商品會對用戶體驗和您的品牌認知產生負面影響。
如果買家發現缺貨商品,我們會根據您商品目錄中該商品的不同款式 inventory
值,盡量將「商品詳情」頁面切換到「有存貨」的單位款式。
停賣商品時,您可能會想要直接將其從商品目錄中刪除。我們不建議這麼做。
從目錄中刪除商品可能會導致不良影響,例如商品標籤和圖像消失。強烈建議您過了很長的時間(幾個月)後再刪除商品。
您應該將停賣商品的 visibility
欄位設定為 staging
,而不是刪除商品。如此可確保商務平台能夠將商品連結回已知實體,並從容地管理不同的情況。
您每次更新庫存時,我們都會更新提供的庫存。此數值不會對應至可供顧客購買的商品數量。我們會追蹤傳入的訂單(可能處於不同狀態)並減去未確認的訂單,以計算最終的可用庫存。此數值不會在我們的平台之外曝光。
可用的庫存 = 提供的庫存 - 未確認的訂單。
訂單確認後,有 30 分鐘的緩衝時間可讓您處理訂單及更新庫存量(透過目錄),之後我們就會從計數器移除那些已確認的訂單。
為了將商務平台擴展到數以千計的商家,我們刻意決定不支援同步庫存管理。因此,我們不支援在只有極少量購買交易時,即同步減少您倉庫中的庫存量。如果您的庫存在多個通路之間共享,可能會意外地在 Facebook 或 Instagram 上超售商品。可銷售數量有限的熱銷商品可能就會發生這種情形。
當您因為超售而無法履行訂單時,應該進行取消並將 reason_code
設定為 OUT_OF_STOCK
。
如果您經常面臨超售的情況,可以增加處理訂單的頻率,並視情況調整商品的庫存量。
您可以根據正在進行的整合類型,以不同方式更新庫存:
由於分散式系統的非同步本質,無論您更新庫存量的速度有多快,商品目錄中的 inventory
值都可能會不同步。以下是為了盡量減少競速條件,您可能需要考量的一些技術。
避免超售的最有效方法是為您的 Facebook 商店或 Instagram 購物通路預先分配庫存。為每個銷售通路指定庫存,可確保在任何個別通路發生的銷售作業不會相互干擾。此策略可以套用於部分或整個商品目錄。
對於以正常速度銷售的商品,或庫存量較大的商品,超售的風險相對較低。在這種情況下,您可以讓商品目錄更新策略保持簡單:
inventory
值。對於庫存較少或極不穩定的熱銷商品,您可以更及時更新 inventory
等易變欄位。您可以使用即時批次 API 來達成此目的。以下是您可以遵循的一般策略:
inventory
等易變欄位。此摘要的目的是更新本質上較為靜態的欄位,並使用即時 API 延遲更新易變欄位。 inventory
等易變欄位。為了一致性,請勿將使用此技術進行更新的欄位包含在您的摘要中,這一點很重要。以下是使用即時批次 API 進行更新的範例:
curl \ -d @body.json \ -H "Content-Type: application/json" { "access_token": "<ACCESS_TOKEN>", "item_type": "PRODUCT_ITEM", "requests": [ { "method": "UPDATE", "retailer_id": "SKU1234567", "data": { "inventory": "1337", } } ] } https://graph.facebook.com/<CATALOG_ID/batch
批次 API 要求為非同步。您應該要檢查要求狀態及其結果,確認您的所有更新都成功。如需詳細資訊,請參閱批次 API 文件。
如果您要管理少量商品,也可以直接使用圖形 API 來個別更新每項商品,而不使用即時批次 API。因為圖形 API 限速和節流的關係,這種方式只適用於少量商品。可使用此方法來更新的商品確切數量,取決於套用於 Facebook 應用程式的配額。有個很好的經驗法則,就是如果您一次要更新十幾個商品以上,就應該使用即時批次 API。
若要更新商品中的特定欄位,您可以進行下列 API 呼叫:
curl -d "inventory=1337" -X POST https://graph.facebook.com/<FACEBOOK_PRODUCT_ID> access_token: PAGE_ACCESS_TOKEN
如果是使用圖形 API,請使用 Facebook 商品編號。如果是使用批次 API,請使用您自己的編號,也就是 retailer_id
。
另一種防止超售的常用技術,是對庫存分配採取謹慎的態度。例如,當您在倉庫中發現特定品項快要缺貨時,可以將「商品目錄」中的庫存量設定為零。實際上這是低價出售時的最佳化做法,但如果超售是個問題,這也會有所幫助。
如果您知道每項商品的銷售速度,可以將商品劃分至不同儲存區,並根據銷售概況為每個儲存區套用不同的閾值。熱銷商品通常需要較高的閾值,而滯銷商品可能會使用較低的閾值來標示缺貨。