You are here:
Configure Speech Recognition (Beta) in Point of Sale
Turn on speech recognition in the POS app to streamline workflows. With voice commands, users can efficiently access features, turning on hands-free operation, and enhancing accessibility. Configure custom voice commands and deep links in CMS to tailor the experience for different languages and actions within the app.
Access to the feature is limited to the , , and POS app screens.
Prerequisites
- Modern POS App Build: 9.3.1 or greater
- Platform Support: iPad
- Offline Support: no
Configure Speech Recognition in Point of Sale CMS
Set up speech recognition in CMS so that users can use voice commands within the Point of Sale (POS) app. Turn on speech recognition in the app settings. Then, use Voice Command Deep Linking to set up verbs, nouns, and adjectives for speech recognition that works for you in different languages.
Tun On Speech Recognition
To permit voice commands on the app:
- In CMS, go to .
- Edit the app configuration to have speech recognition.
- Go to .
- Turn on .
-
Save the changes.
“” replaced “” in the POS app from v9.3.1. Users can use enhanced voice features regardless of the value of “”.
Voice Command Deep Linking
The feature allows merchants to define their own verbs, nouns, and adjectives for customized Speech Recognition within the app across various languages. As app configs are language-specific, Speech Recognition can also be tailored to each language. For example, if an app configuration is configured in Spanish, select that configuration to define verbs, nouns, and adjectives in Spanish.
This enhancement is available on the POS app. To use better speech recognition in the POS app, turn on the UseEnhancedVoiceCommands setting. Make sure there's at least one deep link set up under the setting in CMS, starting from v9.4.1.
To configure deep linking:
- In CMS, go to .
- Edit the app configuration to have speech recognition.
- Go to .
-
Select the pencil icon to the right of .
- Under , enter action verbs that can trigger commands for retrieving, adding, updating, and removing information (for example show, create, manage, delete).
-
Under , configure and turn on keywords that'll be used in conjunction with the
configured verbs to trigger deep links. See the example screenshot:
- Set and save your changes.
Configure all keywords for deep links as lowercased
For easier UI navigation, select the ellipses to the right of . You can turn on or turn off all deep links. Additionally, you can expand or
collapse all sections. 
Deep Links Noun Sets
Leverage deep links, verbs, and nouns in the POS app to fulfill voice commands.
All deep links configured can be accessed irrespective of their accessibility via the UI of the POS app.
Here’s the reorganized table, sorted alphabetically by :
| Deep Link String | Verb | Nouns | Adjectives |
|---|---|---|---|
| adsloyalty | GET | ["loyalty"] | |
| analytics | GET | ["analytic"] | |
| blindreceiving | GET | ["blind", "receiving"] | |
| cashtender | ADD | ["cash"] | |
| cashpaidinorout | GET | ["cash", "paid"] | |
| cashpickup | GET | ["cash", "pick"] | |
| changeordertype | GET | ["order", "type"] | |
| clientelingprofile | GET | ["profile"] | |
| clientnotes | GET | ["note"] | |
| collections | GET | ["collection"] | |
| corptostoretransfers | GET | ["corp", "store", "transfer"] | |
| createPO | ADD | ["purchase", "order"] | |
| createQuoteFromCart | ADD | ["quote", "cart"] | |
| createclientnote | ADD | ["note"] | |
| createtill | ADD | ["till"] | |
| creditcardtender | ADD | ["credit", "card"] | |
| cyclecount | ADD | ["cycle", "count"] | |
| cyclecountshistory | GET | ["cycle", "count"] | |
| devicemanager | GET | ["device", "manager"] | |
| drawerhistory | GET | ["drawer", "history"] | |
| employeeDiscount | ADD | ["employee", "discount"] | |
| financetender | ADD | ["finance"] | |
| giftCardAddValue | ADD | ["value", "gift", "card"] | |
| giftCardCashOut | CUSTOM | ["cash", "gift", "card"] | |
| giftCardManage | UPDATE | ["gift", "card"] | |
| giftCardPurchase | ADD | ["gift", "card"] | |
| giftcardtender | ADD | ["gift", "card"] | |
| gmvReport | GET | ["gmv", "report"] | |
| hourlyReport | GET | ["hourly", "report"] | |
| itemNotOnFileReport | GET | ["item", "file", "report"] | |
| loyaltylookup | GET | ["loyalty", "id"] | |
| loyaltyrewardtender | ADD | ["loyalty", "reward"] | |
| managertillsummary | GET | ["active", "tills"] | |
| messageinbox | GET | ["message", "inbox"] | |
| multitender | ADD | ["multi"] | |
| notonfileitem | ADD | ["not", "file"] | |
| nosale | GET | ["no", "sale"] | |
| offlinemode | GET | ["network", "mode"] | |
| outgoingincomingtransfershistory | GET | ["inventory", "transfer"] | |
| outgoingtransfershistory | GET | ["inventory", "transfer"] | |
| paybylinkTenderInStore | ADD | ["store", "pay", "link"] | |
| paybylinkTenderRemote | ADD | ["remote", "pay", "link"] | |
| poHistory | GET | ["purchase", "order"] | |
| quoteLookupallcustomers | GET | ["quote", "all"] | |
| quoteLookupcurrentcustomer | GET | ["quote", "current"] | |
| receivedshipmentshistory | GET | ["received", "shipment", "history"] | |
| receiveshipments | GET | ["shipmentId"] | |
| reconcileTill | UPDATE | ["till"] | |
| reconReport | GET | ["recon", "report"] | |
| returnsandexchanges | GET | ["return", "exchange"] | |
| rewardtender | ADD | ["reward"] | |
| rewards | GET | ["reward"] | |
| safemanagement | GET | ["safe", "management"] | |
| salesReport | GET | ["sale", "report"] | |
| salesattribution | ADD | ["sale", "attribution"] | |
| savedcartscurrentcustomer | GET | ["cart", "current"] | "saved" |
| savedcartsallcustomers | GET | ["cart", "all"] | "saved" |
| setTransactionOrderType | GET | ["transaction", "order", "type"] | |
| showOrderSearchByCreditCard | GET | ["order", "credit", "card"] | |
| showOrderSearchByCustomer | GET | ["order", "customer"] | |
| showOrderSearchByProduct | GET | [“orders”, “product”] | |
| showOrderSearchByReceipt | GET | ["order", "receipt"] | |
| showOrderSearchFilters | GET | ["order", "filter"] | |
| storeanalyticsdashboard | GET | ["analytic", "dashboard"] | |
| storeandforward | GET | ["pending", "order"] | |
| storecredittender | ADD | ["store", "credit"] | |
| storefulfillorderreadytoship | GET | ["order", "ready", "shipped"] | "fulfill" |
| storefulfillordertobepacked | GET | ["order", "packed"] | "fulfill" |
| storefulfilledorderhistory | GET | ["order", "history"] | "fulfill" |
| storepickuporderready | GET | ["order", "ready"] | "pick" |
| storepickupordertobepacked | GET | ["order", "packed"] | "pick" |
| storepickeduporderhistory | GET | ["order", "history"] | "pick" |
| storetostoretransfers | GET | ["store", "transfer"] | |
| switchbarcodescanner | GET | ["barcode", "scanner"] | |
| switchcardreader | GET | ["card", "reader"] | |
| switchprinter | GET | ["printer"] | |
| taxoverride | ADD | ["tax", "override"] | |
| transactiondiscount | ADD | ["transaction", "discount"] | |
| unlinkLoyalty | DELETE | ["loyalty"] | |
| voidcartbeforetendering | ADD | ["void", "cart"] | |
| wishlist | GET | ["wishlist"] |
Example Commands
For a list of example commands, see the table:
| POS App Screen | Command |
|---|---|
| Home |
|
| Cart |
|
View Speech Recognition in the POS app
Use the speech recognition capability on the Point of Sale (POS) app.
On the home, cart, or client profile screen, tap the voice icon on the bottom
right.
To go to a specific screen, such as the , say the voice command, "Display cycle count report."

View Speech Recognition Error Handling and Known Issues
Understand how to troubleshoot Speech Recognition errors and understand its limitations.
The table shows a list of potential errors with their reasons.
| Error Message | Description |
|---|---|
| Unable to find matching nouns for this text | Nouns found from phrase text don’t match any of in deep link nouns set |
| Unable to find matching adjective for this text | Nouns found from phrase text match with deep link nouns set but adjectives don’t match |
| Can't perform action on this screen. Go to <CartName> screen | Nouns and adjectives found from phrase text match with deep link nouns and adjectives set but the current screen isn't linked to the action |
| <ACTIONNAME> action is not supported for this context | Nouns and adjectives found from phrase text match with deep link nouns and adjectives set, and correct screen, but action verb is not supported |
| Can't find new verb mentioned for this action. Check in the CMS and add new verbs for the respective action. | Nouns and adjectives found from phrase text match with deep link nouns and adjectives set and correct screen; but any of the verbs mentioned in the phrase text don't match with verbs set for the action |
| Speech recognization authorization denied | Turn on speech recognition for the POS app on the device (Settings > PS POS > Speech Recognition) |
| Unable to find microphone icon | Turn on speech recognition for the POS app on the device (Settings > PS POS > Speech Recognition) |
Known Issues and Restrictions
- Some deep links, particularly in the report and inventory modules, don't support date and status filters.
- On screens not supported for deep links, navigating to the correct screen won't be possible.
- In Phase One implementation, deep links are supported for only the , , and screens.
- Order search and customer search are based on first names.
- English is the only supported language as of build 9.3.1.
- Voice search isn’t supported in offline mode.

