Ecommerce and POS integration is finished when the voice can answer the question

Every page on this topic describes the same two-system handshake: a storefront pulls items and pushes orders, a register settles them. That is table stakes. The interesting work starts the moment a third channel, the phone, joins the same POS contract. The catalog object has to grow fields the web connector never carried, because callers ask questions a product page answered visually.

P
PieLine Team
12 min read
4.9from 200+ restaurants
95%+ order accuracy on cuisine-specific menus (half-and-half pizzas, spice tiers, protein subs)
Direct order write into Clover, Square, Toast, NCR Aloha, Revel, plus 45+ more
Same-day go-live: menu scraped, POS item IDs mapped, voice enrichment layered

The thing most guides on this topic stop short of

Open the popular articles about ecommerce and POS integration. They cover the same ground: connect Shopify or BigCommerce to Toast or Square, set a sync cadence, write back orders through an idempotent POST, reconcile inventory, split reporting by channel tag. That is a real and useful playbook. Every merchant who sells on the web and in a physical store needs it. None of it is wrong.

What those guides do not address is what happens when a voice channel also sits on that contract. A web PDP answers the caller's question with a photograph, an ingredient list, and an allergen icon. The voice has none of those. The voice has the catalog record, and only the catalog record. If the record has SKU, title, price, variant, and stock, the voice can take an order but it cannot answer whether the palak paneer is spicy, whether the Caesar has anchovies, whether the vegan option swaps out the cheese, or whether the half-and-half on the pizza is allowed. The integration is not finished when the POST works. It is finished when the voice can answer the question.

Two shapes of the same POS item ID

The record below is a real POS catalog shape. The first block is what a standard ecommerce-to-POS connector cares about. The second is what PieLine layers on top of the same item ID so the voice can actually answer a caller.

Ecommerce-to-POS connector (Shopify, BigCommerce, web)

web-catalog.json

PieLine voice catalog (layered on the same POS item ID)

voice-catalog.json

Ecommerce catalog vs voice catalog, same POS item ID

Narrow comparison: what each channel needs from the catalog record before it can do its job.

FeatureEcommerce catalogVoice catalog (PieLine)
Item identitySKU, title, variantPOS item ID as the join key, spoken name, pronunciation hint
Price and availabilityPrice, inventory count, visible flagRead from the POS record directly, never duplicated
DescriptionHTML prose, often marketing copyIngredients in plain English, parsed from kitchen shorthand
Dietary informationSometimes in the prose, sometimes nowhereStructured flags: vegan, vegetarian, GF, DF, nut-free, halal, Jain
Spice or heatNot a catalog field0-4 scale, used to reason about 'is this spicy?'
PronunciationNot a catalog fieldHint used by text-to-speech so the voice says the menu right
Modifier logicVariant options on the PDPHalf-and-half rules, protein substitutions, combo compatibility
Allergen handlingIcon on the PDP, computed from ingredient listStructured flags, computed from the ingredient list and reviewed
Upsell hintsRelated-products widget driven by merch rulesAdjacency map per item, used at end of order, AOV up 15-20%
Who maintains itMerch team in the storefront adminPieLine onboarding, refreshed against POS catalog changes

Where the enrichment sits in the overall integration

The POS is still the source of truth. Shopify still pulls from it, the register still writes to it, and the voice catalog layers on top of the same item IDs. Every channel writes orders back through the same order-injection API, with a channel tag so reporting splits cleanly.

One POS contract, three channels, two catalog shapes

Shopify / BigCommerce
In-store register
Phone caller
Menu scrape + enrichment
POS catalog + order API
Web orders
Register orders
Phone orders
Channel revenue report

The anchor: what PieLine's onboarding actually does to a menu

The line below is verbatim from PieLine's public documentation at aiphoneordering.com/llms.txt. It is the exact description of how the voice catalog gets built on top of your existing POS integration.

Anchor fact, aiphoneordering.com/llms.txt

"PieLine's onboarding team scrapes your online menu, maps items to POS item IDs, and configures rules (delivery zones, minimum orders, hours, specials). Includes detailed dish descriptions covering spiciness, sweetness, ingredients, and dietary info."

Read it carefully. Three distinct passes in one sentence. First pass: scrape the live menu, which is already normalized on the web side. Second pass: map every scraped item to a POS item ID, so the voice channel is joined to the same catalog root your Shopify or BigCommerce connector uses. Third pass, and this is the part that is not in any standard ecommerce-to-POS connector: enrich every item with descriptive metadata the voice needs to answer caller questions. That third pass is what makes the integration work for a voice channel.

Standard ecommerce-to-POS connector

0 passes

Pull catalog from POS, push orders to POS. Good enough for web, insufficient for voice. No descriptive metadata layered.

PieLine onboarding

0 passes

Scrape menu, map item IDs, enrich with spice, ingredients, dietary flags, and pronunciation. Third pass is what the voice channel needs.

6 extra fields

Most guides on ecommerce and POS integration stop at SKU, price, and inventory. A voice channel on the same contract has to answer the question the product page used to answer with a photo.

PieLine onboarding notes, April 2026

The six fields the voice channel actually needs

These are the fields PieLine layers onto every POS item ID during onboarding. None of them are part of a default Toast, Square, or Clover catalog object. All of them show up in the first 50 calls on any cuisine-specific menu.

Spice and heat

A 0-4 scale the voice can compare against the caller's ask. 'Is this spicy?' becomes a deterministic lookup, not a guess.

Ingredients in plain English

Parsed from kitchen shorthand into prose the voice can read aloud. Allergen flags computed from the ingredient list.

Dietary flags

Vegan, vegetarian, gluten-free, dairy-free, nut-free, halal, Jain. Flags the caller will actually ask for, not a generic 'healthy' tag.

Combo compatibility

Whether this item can be halved on a pizza, paired with a specific side, or swapped for a different protein in a combo.

Pronunciation hints

For menu items that the default text-to-speech says wrong. Matters for South Indian, Korean, Ethiopian, and any menu with transliterated names.

Upsell adjacency

Which side, drink, or dessert is the right suggestion after this item lands in the cart. Lifts average order value 15 to 20 percent.

One caller asks one question: the end-to-end path

The voice does not guess. Every answer is a deterministic lookup against the enriched record, with the POS item ID as the join key. The sequence below is what the system does when a caller asks the single most common spice question.

Caller, voice, voice catalog, POS

CallerVoiceVoice catalogPOS'is the palak paneer spicy?'lookup by spoken name -> POS item IDspiceScale: 1, scale: 0-4 (mild)'it is mild, not very spicy. want me to keep it mild?''yes, one palak paneer, full size'resolve modifiers, add combo rulesPOST order with item ID + spice modifierorder accepted, channel tag = phonetotal read back, ETA, upsell naan
0%+Order accuracy on cuisine-specific menus
0Simultaneous calls handled per location
0%Calls handled end-to-end by voice
0+POS systems supported

How the onboarding actually builds the voice catalog

The operator does about 10 minutes of work. The rest happens on PieLine's side, same business day on supported POS systems.

1

Scrape the live online menu

PieLine pulls your published menu (from Shopify, Square Online, Toast Online Ordering, Olo, ChowNow, BentoBox, or your own headless site). This is the canonical consumer-facing menu, not the raw POS export. Item names match what the caller says out loud.

2

Map every scraped item to a POS item ID

The join key for everything that follows. Price, inventory, availability, modifier groups, and tax treatment are read from the POS record, never duplicated. When the POS catalog changes, the voice catalog reads the change, it does not get rewritten.

3

Layer descriptive enrichment on each item

Spice scale, sweetness scale, ingredients in plain English, dietary flags (vegan, vegetarian, gluten-free, dairy-free, nut-free, halal, Jain), combo compatibility, pronunciation hints, and upsell adjacency. Built from the existing menu prose plus cuisine-specific knowledge. Reviewed before go-live.

4

Configure operational rules

Delivery zones, minimum order values, hours, specials, and 86'd-item propagation. These are not catalog fields, they are channel rules, and they live alongside the enriched catalog so the voice applies them automatically during an order.

5

Go live, monitor, refine

Phone line forwarded to PieLine, or set as overflow when staff cannot pick up. Active call monitoring and AI refinement run in the first month at no extra cost. Any enrichment gap a real caller finds (a new dietary question, a spice boundary, a combo rule) closes against production traffic.

The five integration-level rules that keep all three channels honest

The enrichment is what makes the voice channel work. These five rules are what keep the enrichment, the web store, and the register from drifting apart.

Minimum contract for voice on an ecommerce-to-POS integration

  • Channel tag on every order: web posts as the Shopify app name, register posts as register, phone posts as phone. One revenue-by-channel report.
  • Idempotency on every write: required on Square, supported on Toast and Clover via client-assigned IDs. Network retries stop double-posting.
  • Inventory decrement at order creation, not at pickup: so a phone order taking the last unit is visible to the web store within seconds, not eleven minutes.
  • POS catalog is source of truth for items, prices, modifiers, and availability. The voice catalog adds fields, never overwrites them.
  • Refunds and voids through the POS refund flow, regardless of channel: the customer-service screen is the same for a web refund and a phone refund.
POS item ID as join key
Spice 0-4 scale
Dietary flags structured
Ingredients in plain English
Pronunciation hints
Combo compatibility
Upsell adjacency map
Channel tag on every order
Idempotency keys
Same-day go-live
Direct write to Clover, Square, Toast, Aloha, Revel

How to tell whether your current integration covers voice

If you already have Shopify, BigCommerce, or a custom web checkout wired to your POS, the hard part of ecommerce and POS integration is done. The audit for whether voice fits on the same contract is short.

  1. Open any item in your POS catalog and look for a spice scale, a dietary flag set, and a pronunciation hint. If those fields are not on the record, your voice vendor has to layer them. That is normal. The question is whether they do it against the POS item ID or against a parallel menu file.
  2. Ask your voice vendor which POS endpoint they call on order creation. If the answer matches the endpoint your web connector uses (Toast POST /orders/v2/orders, Square POST /v2/orders with idempotency_key, Clover POST /v3/merchants/{mId}/orders plus /line_items), you are on the same contract. If it is an email, a fax, or a tablet, you are not.
  3. Place a test phone call for an item that is also on your web store, and ask a question the web PDP answers visually (spice, allergens, combo). If the voice guesses, the enrichment layer is missing. If the voice answers correctly, the integration is doing its job on all three channels.
  4. Pull your last 30 days of POS orders grouped by channel tag. Phone should show up as its own source, alongside the Shopify or BigCommerce source your ecommerce connector sets. If phone is missing from the report, you have a reporting gap on top of whatever integration gap already exists.

The goal is the same as on the web side: one catalog, one order object, one refund flow, one channel-tagged report. The voice catalog is the thing that makes that goal reachable when the third channel is the phone.

See a voice catalog layered on your real POS menu

Bring a Toast, Square, Clover, NCR Aloha, or Revel merchant ID and a live menu URL. We will map a handful of items end to end and answer a spice, allergen, and combo question live on a phone call.

Book a 15 minute demo

Extend your ecommerce-to-POS integration to the phone

Fifteen minutes, your menu scraped, POS item IDs mapped, a handful of items enriched with spice and allergens, and a live call where the voice answers a question your web PDP usually answers with a photo.

Book a call

Frequently asked questions

What does ecommerce and POS integration normally cover?

A storefront (Shopify, BigCommerce, WooCommerce, a custom headless build) and a point-of-sale (Toast, Square, Clover, NCR Aloha, Revel) agreeing on one catalog and one order object. The storefront pulls items, prices, variants, and inventory from the POS on a schedule. The storefront pushes orders into the POS through an order-injection API when a web shopper checks out. Payment settles on the POS side. Refunds go back through the POS. That is the standard two-system contract, and it is well covered by connectors and docs. The thing that is not well covered is what happens when a third channel, the phone, joins the same contract.

Why does adding a voice channel change the catalog object?

Because callers ask questions a product page answers visually. On a web PDP, a photo, an ingredient list, and an allergen icon do most of the work. On the phone, the same caller asks 'is the palak paneer spicy?' or 'what is in the Caesar?' or 'can I do a half-and-half pizza?' or 'does the teriyaxx bowl have gluten?' None of those are answerable from SKU, title, price, variant, and stock count alone. The catalog record has to carry descriptive metadata (spice scale, ingredient list, dietary flags, combo compatibility, pronunciation hints) that a Shopify-to-POS connector does not ship. The integration is not finished when the POST works. It is finished when the voice can answer the question.

What fields does a voice channel need that a standard POS catalog object does not carry?

Six that come up every week on real restaurant menus. First, spice or heat level on a scale the voice can reason about (mild, medium, hot, very hot, or 0-4). Second, sweetness for dessert and drink menus. Third, ingredient list in plain English, not kitchen shorthand. Fourth, dietary flags the caller will actually ask for (gluten-free, vegan, vegetarian, dairy-free, nut-free, halal, Jain). Fifth, combo and modifier compatibility: whether this item can be halved on a pizza, paired with a specific side, or swapped for a different protein. Sixth, pronunciation hints for menu items that are hard for text-to-speech to say correctly. None of these live in the default Toast, Square, or Clover catalog schema. They have to be enriched onto the POS item ID during onboarding.

Does PieLine replace my existing ecommerce-to-POS integration?

No. PieLine sits on top of the same POS item IDs your web connector already reads. During onboarding, PieLine's team scrapes your live menu (the one your Shopify or ordering page already shows), maps every scraped item to the matching POS item ID, and then layers voice-only enrichment (spice, allergens, pronunciation, combo rules) on top of that mapping. When a phone order is built, it is written into the POS through the same order-injection API your web store uses (Toast POST /orders/v2/orders, Square POST /v2/orders with an idempotency key, Clover POST /v3/merchants/{mId}/orders plus /line_items). One contract, one catalog root, a thicker record on top.

How is the enriched voice catalog kept in sync when the POS catalog changes?

The POS item ID is the join key. When the POS catalog changes (new item, price change, 86'd out-of-stock flag, seasonal special), the enrichment layer re-reads the POS catalog and reconciles. New items are flagged for enrichment during the next onboarding pass. Price, modifier, and availability changes on existing items flow through automatically because the voice catalog points at the POS record, not a snapshot of it. The operator never maintains a second menu.

Can my existing ecommerce platform send the same enrichment data?

Sometimes part of it. Shopify product descriptions often carry ingredient prose and dietary tags because the web merchandising team wrote them. BigCommerce and custom headless builds can carry a metafield for spice level if the team added one. In practice, almost nobody has pronunciation hints, combo compatibility, or consistent allergen flagging on the web catalog, because the web presentation does not need them. PieLine's onboarding normalizes whatever already exists in the ecommerce description and fills in the gaps, rather than forcing the web team to rebuild their PDP copy.

What happens when a caller asks a question that is not in the voice catalog?

Two paths. If the question is about something the catalog does cover but the voice is uncertain (an ambiguous modifier, a near-match item name, a pronunciation the speech-to-text mangled), the voice asks a clarifying question. If the question is genuinely outside the catalog (a catering quote, a complaint, a one-off dietary concern the flags do not capture), PieLine transfers the call to a designated human with the full transcript and customer context already attached, so the staff member does not ask the caller to start over. About 90 percent of calls get handled end-to-end by the voice; roughly 10 percent transfer.

How long does the voice-catalog enrichment take during onboarding?

Same business day on supported POS systems. PieLine's onboarding team scrapes the online menu, maps items to POS item IDs, configures rules (delivery zones, minimum orders, hours, specials), and adds dish descriptions covering spiciness, sweetness, ingredients, and dietary info. The operator forwards the phone line or sets PieLine as overflow in about 10 minutes. Active call monitoring and AI refinement run in the first month at no extra cost, so any enrichment gap surfaced by real calls is closed against production traffic, not a made-up test set.

Which POS systems does PieLine write voice orders into through the same contract my ecommerce integration uses?

Clover, Square, Toast, NCR Aloha, and Revel are the deepest integrations, with the same order injection APIs your web connector uses. Fifty-plus more POS systems are supported on the standard tier. Orders are tagged with a channel source so phone shows up as a distinct line in the revenue-by-channel report your ecommerce team already reads.

What should I ask a voice vendor to prove they are on my ecommerce-to-POS contract?

Five questions. Which POS endpoint do you call on order creation. Do you set a channel tag on the order so reporting can split phone from web and in-store. Do you pass an idempotency key. Do you read menu and stock state directly from the POS rather than maintaining a separate menu file. And what enrichment fields do you layer on top of the POS item ID for voice use. If any of those answers is vague, the voice channel is running off-contract and your integration story is only two-thirds real.

The voice channel does not need a second integration

It needs the same POS item IDs your web connector already trusts, plus six fields layered on top so the voice can answer the question a caller would have answered for themselves by scrolling a product page. Pilot it on one restaurant; the first month is money-back.

Book a demo