SKUs whose on-hand count differs between S/4HANA Cloud (system of record) and commerce platform. Sync-failure detector.
At a glance
Materials whose on-hand quantity differs between S/4HANA Cloud (the financial and operational system of record) and the commerce platform’s storefront-side inventory display. Sync-failure detector. Each row shows the SAP quantity, the commerce-side quantity, the drift in units, and the affected commerce platforms.
| What it counts | For each material mapped between SAP and a commerce platform, compare MARC.LABST (SAP plant-level on-hand) to the commerce-platform’s inventory_quantity (or equivalent). Drift = absolute difference in units. Card flags drift > 5 units (configurable). |
| Tax treatment | n/a, this is a unit-count comparison. |
| Shipping | n/a. |
| Discounts | n/a. |
| Refunds | n/a. |
| Cancelled / voided orders | Open Sales Documents reduce SAP-side available-to-promise; commerce platforms typically reflect this in their displayed inventory. The card uses unrestricted on-hand (LABST) by default; configurable to ATP. |
| Currency | n/a. |
| Plant / Channel scope | Per plant per commerce platform. |
| Time window | RT |
| Alert trigger | any SKU drift >5 units |
| Roles | owner, operations |
Calculation
Calculated automatically from your SAP data. See the At a glance summary above for what the metric tracks and the worked example below for a typical reading.Worked example
A US enterprise B2B distributor on S/4HANA Cloud. Snapshot 03 May 26. Headline: 38 materials with drift > 5 units across 3 commerce platforms. Estimated lost-sale exposure: $84,000 if drift causes inability to fulfil. Top 8 drift cases:| Material | Plant (SAP) | Commerce platform | SAP qty | Commerce qty | Drift | Drift dir | Likely cause |
|---|---|---|---|---|---|---|---|
| MAT-A23 | 1010 | Shopify Plus | 142 | 220 | 78 | Commerce overstated | Sync delayed; SAP shipped stock not reflected on Shopify |
| MAT-B41 | 1010 | BigCommerce | 84 | 0 | 84 | Commerce understated | Webhook lost when SAP received stock |
| MAT-C18 | 1020 | Adobe Commerce | 320 | 380 | 60 | Commerce overstated | Sales not yet reflected (commerce shows pre-sale qty) |
| MAT-D62 | 1010 | Shopify Plus | 14 | 32 | 18 | Commerce overstated | Stock-in-transit double-counted |
| MAT-E55 | 2010 | BigCommerce | 0 | 12 | 12 | Commerce overstated | Plant scope mis-mapped |
| MAT-F09 | 1020 | Adobe Commerce | 88 | 80 | 8 | Commerce understated | Recent goods receipt not yet pushed |
| MAT-G82 | 1010 | Shopify Plus | 240 | 248 | 8 | Commerce overstated | Cycle-count adjustment in SAP not synced |
| MAT-H14 | 1010 | BigCommerce | 64 | 58 | 6 | Commerce understated | Inbound shipment landing tomorrow |
- MAT-A23: 78-unit drift, commerce overstated. Shopify is showing 220 units available; SAP says 142. If a customer orders 200, Shopify accepts the order but SAP’s ATP fails when the Sales Document arrives. The order ends up on inventory hold, then escalates to either a stock-out apology or an emergency replenishment. Root cause: sync from SAP -> Shopify is delayed by 3+ hours when a goods issue posts.
- MAT-B41: 84-unit drift, commerce understated. SAP just received 84 units (movement type 101) but the BigCommerce-side webhook lost the message. Customers see “out of stock” on a product that actually has 84 units. This is direct lost demand; the OOS-with-demand card surfaces the impact.
- MAT-E55: plant scope mis-mapping. Plant 2010 (Toronto) has 0 units of this material; commerce shows 12. The integration is wrongly pulling from a different plant. Configuration fix: align plant-to-channel mapping in the integration.
- The pattern matters more than individual rows. If drift is consistently “commerce overstated”, the SAP -> commerce sync is failing; if consistently “commerce understated”, the commerce -> SAP sync is failing.
- Action playbook:
- Configure SAP outbound IDoc / OData event triggers on goods movements (movement types 101, 161, 261, 601, 651) so commerce platforms see updates within minutes.
- Configure inbound webhooks from commerce platforms when an order ships; SAP creates the Sales Document immediately rather than batch-syncing.
- Add a periodic full reconciliation (overnight) as a safety net.
Sibling cards merchants should reference together
| Card | Why pair it with Inventory Sync Drift |
|---|---|
| Total Inventory Value | The financial source of truth for inventory. |
| Low Stock Alerts | Drift can mask real low-stock conditions. |
| OOS with Open Sales Document Demand | The customer-facing impact of failed syncs. |
| Open Sales Document Value | Inventory blocks driving Sales Document hold-ups. |
Reconciling against the vendor’s own dashboard
Where to look in S/4HANA Cloud:
Stock Overview transaction MMBE / MB52 -> SAP-side ground truth
Material Inventory Values Fiori app
Embedded Analytics: CDS view I_MaterialStock
Direct deep-link: https://my{tenant}.s4hana.cloud.sap/sap/bc/ui2/flp#MaterialInventoryValues-display
Why our list may legitimately differ from a manual MMBE check:
| Reason | Direction | Why |
|---|---|---|
| Stock type | Either | Card uses unrestricted on-hand by default. Commerce platforms may use ATP (subtracting open orders). Toggle in field map. |
| Plant scope | Either | Card respects dashboard CC scope. |
| Polling cadence | Small | Card refreshes every 15 minutes. Drift can self-resolve in minutes if syncs catch up. |
| Stock-in-transit | Either | Owned in-transit visible to SAP but rarely published to commerce. Configurable. |
| Source | Role |
|---|---|
S/4HANA Cloud I_MaterialStock | SAP qty source of truth |
| Shopify / BigCommerce / Adobe Commerce / SAP Commerce Cloud | Commerce-side qty |