Skip to main content

Understand business discovery states

Business discovery can present businesses after Customer App has a session and selected ordering context. A visible list is a returned presentation, not proof that every business, fee, estimate, schedule, product, or cart action is current or eligible.

:::warning Important limits Address, order type, ordering moment, account, project, connectivity, and returned data can settle separately. When these layers disagree, keep discovery stale or unknown rather than issuing another consequential action. :::

Ordering context and presentation

The header can present an address, cart entry, order type, ordering moment, and map handoff. Each is a separate state owner. Changing one can make previously shown business results stale before a replacement list settles.

StateSafe interpretation
No selected locationBusiness discovery is not established.
Context visibleAddress/type/moment presentation exists; authorization and freshness remain separate.
Context changingPreviously shown businesses and estimates can be stale.
Cart badgeLocal/cart quantity presentation only; no checkout readiness.
Map handoffNavigation intent only; map/provider state is separate.

Independent discovery sections

Depending on returned data and presentation configuration, the screen can show a promotional banner, sponsored businesses, business-type controls, a main business list, and an order-progress preview. These sections settle independently. One missing section does not prove the entire discovery read failed.

An order preview is a passive, minimal handoff state. Its status or estimated time does not prove order freshness, tracking, or delivery settlement.

Business card states

A card can present a name, imagery or placeholder, returned review count, open/closed state, fulfillment estimate, fee, distance, favorite control, discount, ribbon, or preorder label. Optional fields and card variants can differ.

The displayed review number is a returned count on this surface, not an average rating. Remote images, card text, schedule state, fees, estimates, favorite state, and list position can settle separately.

Open, closed, and preorder handoffs

Card stateSafe boundary
Open businessA business-page handoff can be available; destination data and actions remain separately owned.
Closed businessThe card can remain inert and show closed feedback.
Preorder labelA scheduling handoff can be available; no valid candidate or reservation is guaranteed.
Order previewAn Order Details handoff can be available; navigation does not change or reconcile the order.

No business-card handoff adds a product, changes a cart, or places an order.

Loading, pagination, empty, error, and stale states

StateSafe interpretation
Initial loadingPlaceholder presentation; request result remains pending.
Additional-page loadingExisting and incoming pages can have different freshness.
EmptyNo businesses are displayed for the current returned state.
Error/empty convergenceThe interface may not distinguish the cause; nonexistence is unproved.
Retained prior rowsTheir current authorization and freshness are unknown.
Context changed during workLate results belong to an older generation and must not become current.

Do not use repeated refreshes to diagnose an unknown result. Use only value-free states such as “business discovery stale” or “business list unresolved.”

Privacy, providers, and accessibility

Device-location warnings, maps, banners, remote media, analytics, sockets, and order previews are separate effect and privacy boundaries. A warning or provider result does not change the selected address by itself.

Business cards, section headings, loading/error/empty states, horizontal controls, closed/preorder feedback, order previews, focus order, large text, screen-reader semantics, reduced motion, and platform Back require independent current-platform verification.

Safe troubleshooting

  • If the ordering context changed, keep the prior list stale until current state reconciles.
  • If empty and error are indistinguishable, keep the cause unknown.
  • If an optional section or card detail is absent, do not infer main-list failure.
  • If a handoff does not settle, use only an already-present verified in-app return control; do not repeat a product, cart, order, or provider effect.
  • Support reports must contain only a value-free state class, never project, timing, address, order-type, business, account, device, or provider details.

Recertification triggers

Recheck this reference when ordering-context ownership, business reads, pagination, section/card configuration, closed/preorder handling, order-preview reads, sockets, location warnings, maps/media/providers, navigation, or shared accessibility primitives change.

Related guides: Understand business search and filter states · Explore businesses on a map · Choose order type and time · Understand favorite states