E-commerce
June 30, 2026
"The website shows 3 in stock in Lyon, I'm here, and the salesperson tells me it's out of stock. Who is right?" This message arrives as soon as a DTC brand opens shops without cross-channel support processes.
Shopify Enterprise points out that unified POS + online inventory is the foundation of omnichannel: without reliable sync, the customer compares two conflicting truths in real time (Shopify, omnichannel POS 2026). Digital Applied estimates that a real-time stock display reduces shopping cart abandonment by 15 to 25% on hybrid journeys (Digital Applied, omnicanal 2026).
This guide #271 covers store vs online availability from the support side: answering when channels diverge, guiding to the right order channel, and avoiding impossible promises. It complements Click & Collect (#177) (BOPIS pickup) and omnichannel POS support with the perspective of cross-channel stock queries before purchase, complemented by the omnichannel chatbot (#272) for AI automation.
Summary
Why do the store and the website not show the same stock levels?
Cross-channel availability depends on inventory rules that the customer does not see: BOPIS buffers, Shopify locations, counter sales not yet synced, warehouse reservations.
Four causes of site vs. shelf discrepancy
Sync latency: POS sale 8 min ago, site still updated with the old qty
Safety stock buffer: online shows 0 while the store keeps 2 units for walk-ins
Reserved channel: web-only warehouse stock, store not supplied for this SKU
Multi-location: total network qty OK, but no single store covers the BOPIS order
Typical ticket volume
For a brand with 2 to 6 points of sale + DTC, expect 6 to 12% of pre-purchase tickets to be related to "store availability / site availability" once the network is open. Peaks during sales and limited-edition store collections.
Cost of a poor response
Forrester notes that 29% of BOPIS users in the US abandoned at least one pickup order over three months, often following a false stock promise (Forrester, BOPIS abandonment). An agent who confirms without checking the location multiplies disputes and "stock scam" reviews.
How does this guide differ from Click & Collect and omnichannel?
Five neighboring pieces of content, five moments of the journey.
Click & Collect (#177)
BOPIS Support (#177): pickup status, counter hours, "order not ready" dispute. The #271 comes into play before the order: "where to buy", "which channel has stock", "is the site lying".
Omnichannel POS Support
Omnichannel POS Guide: unified return policies, store/chat contradictions. Here: inventory lookup and purchase channel guidance.
Stockout Bot (#245)
OOS Alternatives Bot (#245): substitute when online is sold out. The #271 covers the online OOS + store OK case (ship-from-store, stockroom) before bot automation (#272).
Restock (#167)
Restock Times (#167): warehouse ETA. The #271: stock available elsewhere in the network, not replenishment date.
#271 Promise
Cross-channel scenario matrix, verbatims, 7-step agent protocol, AVAIL macros, Shopify multi-location rules, disputes, KPI tags, 2-week playbooks.
Which cross-channel stock scenario matrix should be used?
The store vs online availability matrix prevents agent-by-agent improvisation.
Six scenarios to tag
avail_online_ok_store_ok: customer wants to know where to buy the fastestavail_online_oos_store_ok: site out of stock, store has units (most frequent case)avail_online_ok_store_oos: walk-in refused, web still availableavail_bopis_blocked: network total qty OK, pick-up impossible (multi-location)avail_buffer_hidden: site 0, store 1-2 reserved at counteravail_ship_from_store: web order shipped from store
Support action by scenario
online OOS / store OK: offer BOPIS, 24h reservation, or ship-from-store if enabled. online OK / store OOS: guide to web purchase + delivery, explain store buffer if policy allows. BOPIS blocked: explain Shopify's "one location = total line qty" rule, suggest delivery or alternative store.
DTC-mode numerical example
Bestseller jacket, warehouse 0, Lyon 2, Paris 1. Customer wants M for pickup in Lyon: OK. Customer wants 3 units for pickup in Lyon: BOPIS disappears (insufficient qty at single location). Support offers 2 for pickup + 1 shipped from warehouse D+3, or 3 shipped from Paris if ship-from-store exists.
Which customer verbatims should be tagged as a priority?
Ten cross-channel availability intents to recognize from Day 1 in the helpdesk.
Ten real formulations
"Do you have it in [City] store?"
"The site says out of stock, the salesperson says yes"
"Can I order online and pick up today?"
"How many in stock at [Boutique]?"
"Why doesn't the checkout offer store pickup?"
"I am in the store, the app says 0, the shelf has them"
"Do you ship from the nearest store?"
"Can you reserve a size for me in-store without paying online?"
"Does online stock include store stock?"
"Another color available only in store, web order?"
Helpdesk tags
avail_store_lookup, avail_channel_mismatch, avail_bopis_eligibility, avail_reserve_request, avail_sfs. Cross-reference with Shopify location. See support ticket taxonomy.
Routing
Tier 1: inventory lookup + AVAIL macro. Tier 2: discrepancy > 15 min sync or site promise dispute. Tier 3: customer compensation + ops alert if recurring discrepancy on a SKU.
What is the seven-step agent protocol to check stock?
The cross-channel availability protocol mandates a sequence before any promise to the customer.
Seven steps
Identify SKU/variant: size, color, exact reference
Consult Shopify inventory: on-hand by location, not just aggregate online qty
Apply internal buffer: subtract instore safety stock if policy (e.g., −1 walk-in unit)
Check desired channel: shipping, BOPIS, counter purchase
Test BOPIS eligibility: location qty ≥ ordered line (Shopify, pickup in store)
Propose realistic option: channel, timeframe, identical price
Document ticket: location, qty viewed, promise made
Prohibited
"I think there is some left" without lookup. "Go check in store" without confirming qty. "The website is always right" when the customer is already at the counter.
Recommended internal tool
Helpdesk view with multi-location inventory widget (Shopify Inventory Level API). If unavailable: macro with shared ops admin link, reply under 15 min SLA.
Which AVAIL-* macros should be used on a daily basis?
Six online store availability macros cover 80% of cross-channel pre-purchase tickets.
AVAIL-CONFIRM-STORE
"Hello [First Name], at the [City] store there are [X] [SKU] unit(s) available for [delivery time pickup / over-the-counter purchase]. Would you like me to send you the pickup order link or would you prefer a 24-hour reservation?"
AVAIL-ONLINE-OOS-STORE-OK
"The web warehouse stock is sold out, but [City] has [X] unit(s). You can order online with in-store pickup (delay [Y]) or go directly to the counter. Link: [URL]."
AVAIL-MISMATCH-APOLOGY
"The website and store displayed different information. I apologize. Confirmed real stock: [X] in [City], [Y] online deliverable. Options: (1) [channel A], (2) [channel B], (3) goodwill gesture [amount] if the trip was unnecessary."
AVAIL-BOPIS-NO-ELIGIBILITY
"Store pickup is not appearing because Shopify requires a single store to hold the total quantity ordered. You are ordering [N]; [City] has [M]. Alternatives: free delivery, partial pickup + balance, another store [List]."
AVAIL-RESERVE-24H
"I am holding [X] unit(s) at the [City] store until [date/time]. Present this email or order #[number] at the counter. After this time, the stock will be released."
AVAIL-SFS
"We can ship from [City]: estimated delivery [Z] business days, same shipping fees as the warehouse. I will initiate the ship-from-store order once you confirm the address."
Which Shopify rules does the agent need to know?
The Shopify omnichannel inventory rules explain 80% of "stock bugs" perceived by the customer.
Pickup in store
By default, pickup only displays if one location holds the total qty of each line item. If a customer orders 9, store A has 8 and B has 3: no standard pickup (Shopify Community, multi-location).
Shared POS + online inventory
With unified inventory, every over-the-counter sale decreases the stock visible online. Typical sync delay is 1 to 15 min depending on POS connection. During peak sales, display "indicative stock, store confirmation within 15 min" on fast-moving item pages.
Locations and fulfillment
Web warehouse, retail stores, pop-ups: each location has a role. Ship-from-store activates a boutique as a shipping source. Support must know which locations supply the web channel versus store-exclusive items.
Operational prevention
BOPIS buffer (only offer pickup if qty > 2), 5-minute sync during peaks, Slack alert if site/POS discrepancy > 5% on top 20 SKUs. See dynamic delivery estimation.
How to handle disputes and promises between the website and the counter?
Cross-channel stock disputes require rapid recognition and a clear compensatory option.
Decision Tree
Customer on-site, website was wrong: apologies, live shelf check (store call), item reservation, or refund of travel expenses if applicable
Store was wrong, website OK: guide towards web purchase, do not blame the sales advisor to the customer; internal note for POS training
Both were right at T0, sale in the meantime: transparency on sync latency, propose alternative location or priority delivery
Manager Escalation Script
“I am taking personal charge of this. Stock confirmed at [time]: [status]. We offer you [solution] within [timeframe]. A store manager will call you back if you prefer a phone conversation.”
Glance CX Reminder
93% of consumers sometimes have to repeat themselves when switching channels (Glance CX, 2025). Central support must see the POS counter note in the customer profile to avoid asking the same questions again.
Which CRM tags and KPIs should be tracked every month?
Measure the cross-channel availability support performance separately from the post-order BOPIS volume (#177).
Monthly KPIs
avail_* tickets / total pre-purchase: target stable or decrease after ops sync
First contact resolution rate: target > 75 % with inventory lookup
Confirmed site/POS discrepancies: count and top offender SKUs
Ticket → order conversion: tracked link in AVAIL macro
CSAT tag avail_channel_mismatch: monitor below 4/5
Ops + support ritual
Bi-weekly 20 min meeting: top 5 SKUs in discrepancy, buffer actions or temporary BOPIS disabling on unstable references. Shopify "inventory adjustment by location" export to correlate with tickets.
What support errors should be avoided in cross-channel inventory?
Five online store availability anti-patterns inflate disputes and negative reviews.
Frequent Errors
Circular redirection: chat says "call the store," counter says "order on the website"
Aggregated qty without location: "yes in stock" when only the remote warehouse has units
Informal reservation promise without ticket or POS note
Ignoring ship-from-store when warehouse is OOS
No store training on buffer and multi-qty BOPIS rules
Quick Fixes
One-page intranet cheat sheet "Stock: what the site says vs. the shelf." Direct inventory support number for POS sales associates. Bookmarked AVAIL-MISMATCH macro playbook. Monthly test: 5 random SKUs, compare site / admin / store call.
How does Qstomy unify cross-channel stock responses?
Qstomy connects Shopify multi-location inventory, AVAIL macros, and POS history to respond in a single interaction.
Capabilities
Lookup location: qty per store in the agent widget
Intents avail_*: auto-routing to the suitable macro
Omnichannel profile: web + POS orders in the same thread
Drift alert: recurring ticket for the same SKU → ops flag
Preparation #272: intents base for omnichannel bot (#272)
Quantified DTC Scenario
Fashion brand, 4 stores + DTC, 2,200 tickets/month with 14% cross-channel avail. Before Qstomy: FCR 58%, 89 "misleading stock" disputes/quarter. After 7-step protocol + 6 AVAIL macros + inventory widget: FCR 81%, disputes −67%, conversion of BOPIS-oriented tickets +23%, average handling time −4.2 min.
Explore AI customer support, Shopify, request a demo.
Which playbooks can be deployed in two weeks?
Playbook 1: Scenario Matrix (1 d)
Support + ops workshop: validate the 6 scenarios in section 3, buffers by location, 24 h reserve policy.
Playbook 2: Protocol + Macros (2 d)
Import 7-step protocol and 6 AVAIL macros into the helpdesk. Train 8 agents on Shopify multi-location lookup.
Playbook 3: Inventory Sync (3 d)
POS latency audit, BOPIS buffers for top 50 SKUs, 5% discrepancy alert. Link BOPIS (#177).
Playbook 4: Store Training (1 d)
30 min for sales associates: how to read admin stock, log avail tickets, do not promise without verifying.
Playbook 5: KPI and Ritual (ongoing)
Dashboard with avail_* tags, bi-weekly review of section 9. Correct 1 top offender SKU per sprint.
Playbook 6: Bot Preparation (#272)
Export 20 resolved avail_* conversations as a test corpus for omnichannel bot (#272). Linking: OOS bot (#245), POS omnichannel, restock (#167).
Cross-channel availability is not just a technology issue: it is a consistent promise, verifiable in 60 seconds, regardless of the channel chosen by the customer.

Enzo
June 30, 2026





