E-commerce
July 1, 2026
"I am 6 km away from your shop, do you deliver today?" "If I order in 15 minutes, will I receive it this afternoon?" "Is my zip code 69003 covered by local delivery?" Three pre-purchase questions where a customer without online zone verification abandons the cart or orders via national express even though local delivery was available.
A local delivery e-commerce AI chatbot does not replace LOCAL-FLOW agents (#429). It reads LOCAL-MAP, answers go/no-go zip code zones, cites same-day cut-off times, available slots and fees before checkout, and then routes POD disputes or post-delivery no-shows to #429.
This guide #430 covers intents bot_local_*, flow LOCAL-BOT and KPI local_bot. Distinct from local customer service (#429) and the express bot (#339): here, use case AI hyperlocal eligibility: km radius, same-day cut-off and delay before purchase.
Summary
Why check the local zone by bot before purchasing?
Local delivery is the most geographically constrained promise at checkout. A bot that answers "yes today" without radius data turns a pre-purchase question into a post-delivery POD dispute.
Three Costs of a Local Over-Promise
Lost Conversion: Eligible customer ignores the local option
Cart Abandonment: Out-of-zone discovery available at checkout only
Support Ticket #429: "I was told you delivered"
Shopify local delivery allows a km radius or a list of postal codes per location (Shopify, local delivery 2026). Onfleet estimates that 35-48% of pre-purchase last-mile questions concern zone eligibility or same-day cut-off, which can be resolved by a grounded lookup without an agent (Onfleet, last-mile 2026).
Angle #430 vs. Neighboring Content
Local Support #429: LOCAL-FLOW POD redelivery refund. #430 = tier 1 bot eligibility postal code pre-purchase cut-off.
Express Bot #339: national hub cut-off tomorrow. #430 = neighborhood fleet 5-25 km radius same-day.
Slot Bot #428: carrier time-slot post-purchase. #430 = local window checkout preview.
Click & Collect #177: in-store pickup. #430 = local home delivery, bot routes to C&C if out of radius.
Shipping Bot #203: general shipping FAQ. #430 = dedicated bot_local_* eligibility intents.
DTC Example
Gourmet grocery store in Paris 15th, 10 km radius, 11:30 AM cut-off. Without a local bot: 22% of "do you deliver to my home?" chats escalated, 14% agent over-promises. After LOCAL-BOT: local_bot_eligible_resolution 86%, local_pre_purchase_conversion +8%, local_ticket_delta -41%.
Critical Same-Day Timing
Peak for pre-purchase local questions: 10 AM-12 PM on weekdays. Live cut-off bot answers in 3 s what takes an agent 2 min to verify in Shopify + LOCAL-MAP.
Baymard Delay Perception
Baymard warns that poorly communicated delivery times pre-purchase drive cart abandonment (Baymard, checkout 2025). The local eligibility bot reduces the friction of discovering zone constraints late in the process.
How does LOCAL-BOT differ from LOCAL-FLOW #429?
Local pre-purchase bot eligibility and post-delivery POD agent playbook: two layers on LOCAL-MAP #429.
Local bot to role matrix
#430 LOCAL-BOT: PC zone go/no-go, cut-off, ETA window, fee, C&C fallback
#429 LOCAL-FLOW: POD dispute, redelivery, refund, driver no-show execute
#339 EXPRESS-BOT: national express cut-off tomorrow
#428 SLOT-BOT: post-order carrier slot modify
Upstream router
“Deliver 75015”, “same day if ordered now”, “local fee”, “afternoon window”, “out of zone alternative” → LOCAL-BOT. “POD wrong address”, “driver did not show up refund”, “lukewarm fresh”, “local chargeback” → handoff #429 LL-6 execute. “Express tomorrow?” → #339.
LOCAL-BOT data
LOCAL-MAP JSON #429, Shopify local delivery zones per location, cut_off table, window_options, local_fee, fulfillment_location stock, cart PC session.
Promise #430
LOCAL-BOT policy, 12 bot_local_* intents, flow LB-1 to LB-8, no zone invent guardrails, local_bot_* KPIs.
Pre-purchase vs post-purchase scope
bot_local_zone_eligible: visitor PC without order. Post-order POD tracking → handoff #429, not bot refund execute.
Which bot_local_* intents should be configured?
Twelve local delivery bot intents cover tier 1 pre-purchase and limited post-order routing.
Twelve bot_local intents
bot_local_zone_eligible: ZIP code or address within LOCAL-MAP radius
bot_local_cutoff_now: same-day if ordered now
bot_local_eta: local delivery time if ordered today
bot_local_windows: 12pm-2pm, 6pm-8pm slots available
bot_local_fee: local delivery zone rate
bot_local_not_available: out of zone, standard or C&C alternatives
bot_local_cart_eligible: full cart eligible for local (fresh, oversize)
bot_local_fresh_requirement: mandatory fresh slots local_fresh
bot_local_vs_collect: compare home local vs Click & Collect #177
bot_local_vs_express: redirect express #339 vs local same-day
bot_local_countdown: remaining time before same-day cut-off
bot_local_handoff_429: POD dispute, no-show, post-order chargeback
Session tags
local_bot, local_bot_eligible_yes, local_bot_eligible_no, local_bot_cutoff_missed, local_bot_resolved, local_bot_handoff_429. Distinct express_bot, slot_bot, cnc_bot.
Triggers T1-T5
T1: PDP "local delivery available for my ZIP?" proactive chip. T2: keyword local/same day/delivery today/radius. T3: cart shipping step widget ZIP detected. T4: /pages/local-delivery FAQ. T5: cut-off < 30 min proactive cart countdown.
How to apply the LOCAL-BOT flow in eight steps?
The LOCAL-BOT flow guides eligibility grounded in LOCAL-MAP #429 and Shopify zones.
Eight steps LB-1 to LB-8
LB-1 Home: "I verify local delivery: zone, cut-off, delay."
LB-2 Collect PC: postal code or session cart address
LB-3 Classifier intent: bot_local_* section 3
LB-4 Match LOCAL-MAP: zone, type, cut_off, windows, fee, fleet
LB-5 Compute eligibility: radius distance, cut-off passed, stock location
LB-6 Respond: eligible yes/no + ETA window fee | LOCAL-ZONE variant | alternatives
LB-7 CTA: checkout local shipping | /pages/local-delivery | C&C #177 link
LB-8 Close/handoff: POD no-show chargeback post-order → #429 LL-6
LB-5 zone_eligible
Geocode PC vs fulfillment_location coordinates. If distance <= LOCAL-MAP radius → eligible. If PC list mode: exact match only. Borderline 9.8 km radius 10 km → eligible cite exact distance.
LB-5 cutoff_now
Compare server time Europe/Paris vs cut_off. If before → bot_local_cutoff_now yes + window today. If after → next_day local or standard shipping cite honest.
LB-6 not_available
bot_local_not_available: standard ETA + Click & Collect same store if stock. Never invent "we can make an exception" bot.
LB-5 cart_eligible
Check SKU tags oversize, fresh, preorder. local_oversize may exclude same-day. local_fresh requires local_fresh window match cart contents.
Multi-location disambiguation
Boutique A Paris + B Lyon: LB-4 match nearest fulfillment_location to PC. Prevent wrong city cut-off cite.
Franco threshold bot cite
LB-6 eligible yes: if cart subtotal + local_fee vs franco LOCAL-MAP, bot cite "add €X for free local delivery" conversion nudge.
Which LOCAL-BOT policy should be documented?
The LOCAL-BOT local delivery policy governs deterministic eligibility and handoffs.
Eight LOCAL-BOT rules
LOCAL-MAP only: radius, cut_off, windows, fees from JSON #429
Deterministic eligibility: LB-5 compute, LLM cites result, do not invent distance
Cut-off live timezone: Europe/Paris NTP sync, cache max 5 min
No zone promise if excluded: bot_local_not_available honest alternatives
Fresh window cite: local_fresh SKUs → bot_local_fresh_requirement mandatory
No POD refund bot: post-order dispute → handoff #429 LL-6
C&C fallback offer: out of zone → bot_local_vs_collect link #177 if stock
Max 6 turns local pre-purchase: then checkout CTA or handoff
Corpus RAG sources
/pages/local-delivery, LOCAL-MAP #429, LOCAL-SUP #429, Shopify local delivery zone export per location.
Sync ops
LOCAL-MAP radius update → bot glossary same hour. local_delivery_suspended flag → bot_local_not_available auto all zones.
Monthly review
Audit: wrong city zone cite, cutoff hallucination, eligible yes when CP excluded, refund promise bot.
Holiday capacity bot
Holiday peak: cut_off may advance or same-day suspended. Bot cites LOCAL-MAP holiday row, not default weekday cut_off.
What guardrails protect the zone and the cut-off?
The authorized vs. unauthorized local bot matrix protects conversion and post-delivery ops.
Authorized bot actions
Compute CP vs LOCAL-MAP radius deterministic LB-5
Cite cut_off countdown bot_local_countdown live
List window_options today and next_day
Cite local_fee franco threshold from LOCAL-MAP
Offer C&C #177 and standard shipping alternatives
Route express #339 vs local bot_local_vs_express compare
Handoff #429 POD no-show chargeback post-order
Unauthorized bot actions
Promise local zone if CP outside LOCAL-MAP
Promise same-day after cut_off passed
Execute redelivery or refund POD dispute
Share driver personal phone post-order
Override local_oversize exclusion without agent
Invent distance km without geocode compute
Anti-hallucination eligibility
Response template: "CP [X]: [eligible yes/no], distance [Y] km, cut-off [time], window [window]." All fields from LB-5 JSON, LLM formats only.
Borderline CP ops exception
Bot never promise exception. "Contact us" handoff agent if client insists 10.2 km radius 10 km documented.
Fresh chain pre-purchase
bot_local_fresh_requirement: cite window + "fresh products: receipt within 2 h". No medical or food safety advice beyond LOCAL-MAP policy cite.
How to connect LOCAL-MAP #429 and Shopify local delivery?
The Shopify local bot integration combines LOCAL-MAP, location coordinates and shipping profiles.
Required Shopify Sources
Local delivery zones: radius km or postal codes per location
Location coordinates: lat/lng ship-from store
Local delivery rate: fee, min order, free shipping
Inventory location: stock available for local fulfill
Complementary LOCAL-MAP Sources
cut_off table: JSON per local_type same_day
window_options: slots per day weekday/weekend
local_fleet capacity: flag suspended if fleet max
SKU exclusions: oversize, preorder block local same-day
Shopify local delivery setup guide (Shopify, local delivery 2026).
LB-4 geocode path
PC → lat/lng via geocoder cache. Haversine distance vs location. Match Shopify zone rules : min(bot compute, Shopify checkout rule) for conservative eligible.
Cart context session
Cart/checkout widget: read shipping PC if entered. Anonymous PDP: ask PC LB-2 before LB-5.
Multi-location inventory
Nearest location with stock + eligible zone wins LB-4. Out of stock nearest → next location or not_available honest.
Integration Qstomy
See Shopify integration for location read + LOCAL-MAP RAG sync webhook.
What are the PDP, cart, and UX triggers for LOCAL-BOT?
The LOCAL-BOT UX deployment maximizes local pre-purchase conversion.
Five widget placements
PDP chip: T1 "Local delivery my postal code?"
Cart shipping step: T3 auto-check eligible postal code
/pages/local-delivery: T4 interactive zone map FAQ
Cut-off countdown: T5 cart banner < 30 min
Homepage local promo: T2 "same-day Paris 15e" keyword boost
PDP eligibility chip
Chip opens bot_local_zone_eligible + bot_local_cutoff_now one-shot. Reduce checkout surprise local unavailable historical 45 % DTC cohort.
Cart postal code auto-detect
Shipping address entered → proactive "Local delivery available: today 18h-20h, 4.90 €" if eligible. InsiderOne note personalized delivery bots reduce abandonment 10-15 % in rushed segments (InsiderOne, chatbots 2026).
C&C fallback UX
Out of zone: bot_local_vs_collect compares drive time vs standard ETA. Link Click & Collect (#177) store hours.
A/B test
T1 PDP chip vs passive FAQ: local_bot_eligible_resolution + local_pre_purchase_conversion 4 weeks.
Mobile geo optional
Browser geolocation opt-in: pre-fill approximate postal code. User confirm before LB-5 compute privacy.
Fresh PDP badge sync
PDP local_fresh SKU: chip T1 auto-open bot_local_fresh_requirement. Align fresh window promise PDP and bot response same LOCAL-MAP row.
Which local bot KPIs should be measured?
Local delivery bot KPIs link pre-purchase deflection and local shipping conversion.
Eight key metrics
local_bot_resolution_rate: resolved without handoff / local_bot sessions
local_bot_eligible_yes_rate: eligible yes / zone checks
local_pre_purchase_conversion: local shipping orders / bot eligible yes sessions
local_ticket_delta: decrease in tickets #429 vs baseline
local_cutoff_missed_bot_rate: bot said yes same-day after cut_off errors
local_bot_collect_fallback_rate: C&C clicks / eligible no sessions
local_handoff_429_rate: post-order disputes routed to agents
local_bot_csat: satisfaction tag local_bot resolved
DTC Benchmark
local_bot_resolution 82-92 %, local_pre_purchase_conversion +6-12 %, local_cutoff_missed_bot < 1 %, local_bot_csat > 4.3/5.
Weekly dashboard
Intent breakdown, postal code top checks, eligible no → C&C convert, handoff reasons post-order.
Transcript audit
20 sessions/month: distance always cited, no zone invent, cut-off correct TZ, handoff #429 post-order only.
Local select checkout correlation
Track bot eligible yes → checkout local shipping selected rate. Target > 55 % same session.
Which anti-patterns should be avoided on a local bot?
Ten local delivery bot anti-patterns to ban.
1. Yes zone without geocode compute
Rule 2 LB-5 mandatory. "We probably deliver to you" is forbidden.
2. Same-day after cut_off
Rule 3 live time. bot_local_cutoff_now no + next_day cite.
3. Post-order bot refund POD
Rule 6 handoff #429. Zero bot refund execute.
4. Confusing express #339
bot_local_vs_express redirect. National hub ≠ neighborhood fleet.
5. Confusing slot #428
Post-order Colissimo slot ≠ local same-day preview checkout.
6. Skipping LOCAL-SUP #429 prerequisite
/pages/local-delivery LOCAL-MAP before bot. Empty RAG = wrong zones.
7. Fresh window omitted
local_fresh cart → bot_local_fresh_requirement mandatory rule 5.
8. Wrong location city cite
Multi-location LB-4 nearest match. Postcode Lyon ≠ Paris cut_off.
9. Bot exception zone promise
Borderline → agent handoff, not bot "we'll see".
10. 12-turn conversation
Max 6 turns rule 8. Local checkout CTA LB-7.
11. Oversize same-day silent block
local_oversize SKU → explain next_day or standard, not eligible yes same-day.
12. C&C omitted out of zone
bot_local_not_available always offer #177 if stock same store.
How does Qstomy verify the area and local cut-off?
Qstomy on Shopify: LOCAL-BOT geocode postal code, LOCAL-MAP cut_off live, window fee cite, C&C fallback link, cart eligible check, handoff #429 pre-filled fields post-order POD dispute.
Qstomy local bot capabilities
local_zone_compute: LB-5 radius distance deterministic
local_cutoff_live: countdown Europe/Paris sync
local_map_cite: windows, fee, carriage-free LOCAL-MAP
local_cart_check: fresh oversize SKU gate
local_collect_fallback: C&C #177 link if no zone
local_handoff_429: post-order dispute fields LL-4
Pipeline #430 → #429
Bot tier 1 eligibility pre-purchase cut-off. Agents POD redelivery refund post-delivery. Shared LOCAL-MAP.
Encrypted DTC Scenario
Grocery store Paris 15th 410 local orders/month, 52 tickets baseline #429.
After Qstomy LOCAL-BOT: local_bot_resolution 88%, local_pre_purchase_conversion +9%, local_ticket_delta -43%, local_bot_csat 4.5/5.
Explore customer support and request a demo.
Sync corpus training
See train Shopify chatbot for LOCAL-MAP RAG sync on postal code radius update webhook.
What is the checklist for deploying LOCAL-BOT?
LOCAL-BOT Checklist (12 steps)
Validate LOCAL-SUP #429 + LOCAL-MAP /pages/local-delivery
Export LOCAL-MAP JSON + Shopify local zones per location
Configure 12 bot_local_* intents section 3
Implement flows LB-1 to LB-8 + geocode LB-5 compute
Enable guardrails: no zone invent + cut-off live + no refund bot
Route local vs #429 #339 #428 #177
Placements: PDP chip T1 + cart T3 + /pages/local-delivery T4
Trigger T5 cut-off countdown cart < 30 min
Staging tests 8 scenarios: eligible yes, eligible no, cutoff before, cutoff after, fresh window, oversize block, C&C fallback, handoff post-order
Multi-location nearest match LB-4 validated
Dashboard KPI local_bot weekly + cutoff error audit
A/B test T1 PDP chip vs passive 4 weeks
Summary
#430 = local pre-purchase bot, #429 POD post-delivery agents
LOCAL-MAP grounded: radius, cut-off, windows, fee
LOCAL-BOT: ZIP → compute → eligible + CTA checkout
Deterministic LB-5: no LLM-invented eligibility
KPI local_bot_resolution: target > 85%
FAQ
Difference with #429?
#429 order support, POD, redelivery, refund, no-show. #430 bot zone, cut-off, eligibility before payment.
Does the bot confirm same-day delivery after cut-off?
No. bot_local_cutoff_now no + honest next_day or standard citation.
Express vs local?
bot_local_vs_express: local is neighborhood fleet same-day. #339 is national hub tomorrow.
What to do if out of zone?
bot_local_not_available: standard shipping + Click & Collect #177 if in stock.
POD dispute via bot?
Post-order only → bot_local_handoff_429 #429 agents. No refund bot execution.
Go further
This week: sync LOCAL-MAP bot per location, configure LB-5 geocode staging, test cut-off before/after paths, activate PDP chip T1 + cart countdown T5.
Share this guide #430 with ops and marketing: a bot that quotes "yes today 6pm-8pm, cut-off 11:30am" at 11am is worth ten more local orders before noon.
Slot #428 vs local #430?
#430 pre-purchase zone cut-off. #428 post-purchase carrier slot modify. Checkout explains both if offered.

Enzo
July 1, 2026





