System and method for enabling online ordering using unique identifiers
09747630 · 2017-08-29
Assignee
Inventors
Cpc classification
G06Q30/0637
PHYSICS
G06Q30/0643
PHYSICS
International classification
Abstract
A system and method for automatically submitting an online order from a customer to a restaurant. Input data and customer data is used by an order engine to select a deployment platform, such as social media networks, search engines, mobile applications, and related websites, for a user interface. The order engine provides a unique identifier for each restaurant. The unique identifier can be used by third parties, such as online content providers, to return the menu for the restaurant included in the third party content. The user interface automatically populates the restaurant's menu options and business data, allowing the customer to build an order. The order engine submits the order to the restaurant via a non-verbal communication platform.
Claims
1. A system comprising at least one hardware computing device coupled to a network and comprising at least one processor executing specific computer-executable instructions that, when executed, cause the system to: receive, from a client computing device coupled to the network, a request to execute a script referenced within an HTML script tag of a source code for a web page displayed on a web browser running on the client computing device, the HTML script tag comprising at least one script source attribute referencing a URL for the script, which, when executed: identifies, within the source code content of the web page, a business identification data for a business; and transmits the business identification data to the at least one hardware computing device; execute a database query to identify, within a database coupled to the network; a unique business identifier associated, in the database, with the business identification data and the business; and a supplemental or modified content to be displayed on the web page providing access to a business offering data associated in the database with the unique business identifier; transmit the web page, including the supplemental or modified content, for display on the client computing device; receive, from the client computing device, an online order, comprising a selection of the business offering data, to be placed with the business; submit the online order to the business; and provide at least one response option for the business to communicate acceptance of the online order.
2. The system as recited in claim 1, wherein the script is configured to run in a web browser.
3. The system as recited in claim 1, wherein the script is configured to run as a browser extension to enable a user operating the client computing device to engage a web-link to return the business offering data to the user.
4. The system as recited in claim 1, wherein the business offering data includes at least one of a business menu including a plurality of business offerings, a business location, a business phone number, a business fax number, a business email address, business delivery hours, business pick-up hours, photographs of the plurality of business offerings, and feedback data.
5. The system as recited in claim 1, wherein the unique business identifier is a numerical value.
6. The system as recited in claim 1, wherein the processor is further configured to automatically determine the unique business identifier corresponding to the business by scanning a content displayed on the client computing device.
7. The system as recited in claim 1, wherein the computer-executable instructions are further configured to carry out the step of providing the business an option to establish a business relationship for subsequent online orders from potential customers.
8. The system as recited in claim 1, wherein the computer-executable instructions are further configured to carry out the steps of: determining whether a user has an existing account corresponding to the business indicated within the content displayed on the client computing device; prompting the user to generate a new account when no existing account associated with the user is present; and receiving data related to the user to be stored in the database, the user data configured to automatically be generated for subsequent online orders.
9. The system as recited in claim 1, wherein the computer-executable instructions are further configured to carry out the step of providing an estimated cost of the online order the estimated cost based on items selected by the user from the business offering data.
10. The system as recited in claim 1, wherein the online order is submitted via a non-verbal communication platform and the at least one response option to the business includes at least one of a repeat message option, an accept order option, a connect to customer option, a connect to a service provider option, a decline order option, and an opt-out option.
11. A method comprising the steps of: receiving, by at least one hardware computing device coupled to a network and comprising at least one processor executing specific computer-executable instructions, from a client computing device coupled to the network, a request to execute a script referenced within an HTML script tag of a source code for a web page displayed on web browser running on the client computing device, the HTML script tag comprising at least one script source attribute referencing a URL for the script, which, when executed: identifies, within the source code content of the web page, a business identification data for a business; and transmits the business identification data to the at least one hardware computing device; executing a database query to identify, within a database coupled to the network: a unique business identifier associated, in the database, with the business identification data and the business; and a supplemental or modified content to be displayed on the web page providing access to a business offering data associated in the database with the unique business identifier; transmitting the web page, including the supplemental or modified content, for display on the client computing device; receiving, from the computing device, an online order, comprising a selection of the business offering data, to be placed with the business; submitting the online order to the business; and providing at least one response option for the business to communicate acceptance of the online order.
12. The method as recited in claim 11, further comprising the step of running the script in a web browser.
13. The method as recited in claim 11, further comprising the step of configuring the script to run as a browser extension to enable a user operating the client computing device to engage a web-link to return the business offering data to the user.
14. The method as recited in claim 11, wherein the business offering includes at least one of a business menu including a plurality of business offerings, a business location, a business phone number, a business fax number, a business email address, business delivery hours, business pick-up hours, photographs of the plurality of business offerings, and feedback data.
15. The method as recited in claim 11, wherein the unique business identifier is a numerical value.
16. The method as recited in claim 11, further comprising the step of determining the unique business identifier corresponding to the business automatically by scanning a content displayed on the client computing device.
17. The method as recited in claim 11, further comprising the step of providing the business an option to establish a business relationship for subsequent online orders from potential customers.
18. The method as recited in claim 11, further comprising the steps of: determining whether a user has an existing account corresponding to the business indicated within the content displayed on the client computing device; prompting the user to generate a new account when no existing account associated with the user is present; and receiving data related to the user to be stored in the database, the user data configured to automatically be generated for subsequent online orders.
19. The method as recited in claim 11, further comprising the step of providing an estimated cost of the online order, the estimated cost based on items selected by the user from the business offering data.
20. The method as recited in claim 11, further comprising the step of submitting the online order via a non-verbal communication platform and providing the at least one response option to the business in the form of at least one of a repeat message option, an accept order option, a connect to customer option, a connect to a service provider option, a decline order option, and an opt-out option.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
(1)
(2)
(3)
(4)
(5)
(6)
(7)
(8)
(9)
DETAILED DESCRIPTION OF THE INVENTION
(10) This description primarily discusses illustrative embodiments as being implemented in conjunction with restaurant menus. It should be noted, however, that discussion of restaurant menus simply is one example of many different types of unstructured data items that apply to illustrative embodiments. For example, various embodiments may apply to unstructured listings from department stores, salons, health clubs, supermarkets, banks, movie theaters, ticket agencies, pharmacies, taxis, and service providers, among other things. Accordingly, discussion of restaurant menus is not intended to limit various embodiments of the invention.
(11) Referring now to
(12) As described in more detail below, the order engine 20 may be configured to receive the input data 12 and consumer related data 14 to determine which deployment platforms 22, such as search engines or social media networks, for example, the business's online ordering interface should be provided on in order to improve online ordering efficiency and increase online orders. As will be further described, the business input data 12 may include, but is not limited to, the business menu including a plurality of business offerings, the business location, the business phone number, the business fax number, the business delivery hours, the business pick-up hours, photographs of the plurality of business offerings, feedback data, and the like. The consumer related data 14 may include, but is not limited to, the consumer's first name, the consumer's email address, the consumer's street address, the consumer's phone number, an estimated delivery time for the online order, an estimated pick-up time for the online order, and the like.
(13) The order engine 20 may include a deployment platform selector 24 that chooses, based upon, but not limited to the business input data 12, the consumer related data 14 and, as will be described, feedback from the business 26, which deployment platforms 22 to provide the online ordering interface on for customers to build and submit an online order (i.e., delivery order, take-out order, and the like) to the business. A dynamic order resource manager 28 may be configured to receive consumer related data 14 that corresponds to the consumer activity generated on the targeted deployment platforms 22 and determine which deployment platforms 22 increase online orders for a particular business (i.e., a restaurant). Based on the quantity of online orders, the order engine 20 may adjust the deployment platforms 22 to increase the business's online orders.
(14) Referring now to
(15) The business input data may also include a location of the business as shown at block 106. The business location 106 may include a business and/or home address, city, state, zip code and country, for example. A business phone number and/or fax number, as shown at block 108, may be another form of business input data retrieved at process block 102. In addition, a business email address, as shown at block 110 may be yet another from of business input data. Business hours, as shown at block 112, is business input data that may include the business's normal operating hours, specific delivery hours, specific hours for take-out orders, and the like. The business hours 112, along with the other business input data, is provided to the order engine 20 of
(16) The above-described business input data described with respect to blocks 104, 106, 108, 110, and 112 is used by the order engine 20 of
(17) Several deployment platforms are available for the order engine to choose from at process block 114. Some non-limiting examples are provided in
(18) Once the deployment platform(s) has been determined at process block 114, the order engine may provide the online ordering interface to customers on the deployment platform at process block 126. An example online ordering interface is shown in
(19) Returning to
(20) To build the online order at process block 130, the customer may be provided the restaurant menu 202 on the user interface 200, as shown in
(21) Still referring to
(22) Returning to
(23) The user interface 300 may provide a summary of the online order 316 with an estimated total for the selected menu items, for example. In addition, the user interface 300 may display the business input data 302 for the business, including the business name, business address, business phone number, and business hours (not shown). A name section 304 may also be provided for the customer to enter a name to be associated with the online order. Similarly, a phone number section 306 may be provided on the user interface 300 for the customer to enter a phone number in case the customer would need to be contacted about the online order. An email section 308 may also be provided for the customer to provide an email address to be associated with the online order. The email address may be required prior to the customer submitting an online order, such that a confirmation email from the order engine may be sent to the customer. The customer may manually enter the customer related data into the name section 304, the phone number section 306, and the email section 308 of the user interface 300. However, if the customer has an existing customer account, as determined at decision block 128, or the customer generated a customer account at decision block 134, the customer related data may automatically be populated on the user interface 300.
(24) Still referring to
(25) With reference again to
(26) However, if the order engine determines that the business has previously received online orders from the order engine at decision block 150, the order engine simply submits the online order to the restaurant via a communication platform at process block 152. To provide a more seamless experience, the communication platform provides contact information through a medium allowing written communication, for example. Thus, the recipient (i.e., the business) of the online order can process the order reliably, without requiring verbal communication. Some non-limiting examples of communication platforms for submitting the online order at process block 152 include email, as shown at block 156, such that the order engine sends an email containing the online order to the business. Alternatively a fax, as shown at block 158, including the online order may be sent to the business's fax machine from the order engine. Similarly, the order engine may send the online order to a printer, as shown at block 160, located at the business. Or, the order engine may send a text message, as shown at block 162, including the online order to the business.
(27) Once the order engine submits the online order to the business at process block 152, the order engine generates an automated confirmation call at process block 164. The automated confirmation call may be generated, for example, to ensure someone at the business is made aware of the online order. The automated call may provide information related to the online order such as, the take-out service company providing the order, and the method through which the restaurant should have received the order (i.e., fax, email, print, etc.) at process block 152. The automated call may also provide information related to the online order such as, a common identifier for the customer issuing the order, such as the customer's first name 140 obtained at process block 138. Additionally, or alternatively, the time at which the customer will come and pick up the order or time desired for the delivery may be information that is provided by the automated confirmation call. Lastly, in one non-limiting example, an estimate of the amount to be paid for the online order may be provided in the automated confirmation call to the business at process block 164. By providing the amount of the online order, the order engine (i.e., service provider) can instill more confidence that the automated confirmation call is legitimate and that the business should attend to the online order.
(28) Once the automated confirmation call to the business is generated at process block 164, the order engine determines if the confirmation call was received by the business at decision block 166. For example, if the automated call fails due to a busy signal or the detection of an incorrect phone number for the business, the order engine determines that the call was not received at decision block 166. Thus, if the call is not received at decision block 166, the order engine may attempt to submit the online order to the business again at process block 152. This process may continue until the order engine determines that the automated confirmation call is received by the business at decision block 166. However, if the order engine continues to determine that the confirmation call was not received by the business, the online order may be sent to a specialist that will attempt to reach the restaurant manually to update the status of the order. If the specialist cannot get through to the business, the consumer who issued the online order may be notified of the failed attempt to get his/her order through. Thus, the order engine does not issue a confirmation to the customer until confirmation that the business has received the details of the order via the communication platform is determined at decision block 166.
(29) If the order engine determines that the automated confirmation call is received by the business at decision block 166, response options are provided to the business at process block 168. The response options include, but at not limited to, repeat the message, as shown at block 170, accept the order, as shown at block 172, connect to the customer, as shown at block 174, connect to the service provider (e.g., the order engine), as shown at block 176, decline the order, as shown at block 178, and opt-out from receiving future online orders from the order engine, as shown at block 180. Once the automated confirmation call has provided the response options to the business at process block 168, the order engine receives a response from the business at process block 182. The response from the business at process block 182 may be one or more of the response options provided at process block 168.
(30) Turning now to
(31) However, if the business chooses to accept the order, as shown at process block 185, the order engine may be configured to automatically send an order confirmation message to the customer via the communication platform, as shown at process block 191. The order confirmation message may communicate to the customer that the online order will be processed by the business. The communication platform used to notify the customer may be email, phone, or text message, for example. Once the order confirmation message is sent to the customer at process block 191, the customer can expect the online order to be delivered at the pre-specified time (i.e., if the order was scheduled as a delivery). If the online order was a take-out order for pick-up, the customer can arrange to pick-up the order at the time identified on the user interface 300 of
(32) At process block 186, the business may choose to connect to the service provider. For example, if the business is hesitant about the online order received by the order engine, connecting to the service provider can reassure the business that the online order received at process block 152 of
(33) At process block 187, the business may choose to connect to the customer. Before the order engine connects the business to the customer, the order engine may be configured to contact the customer via one of the communication platforms, as shown at process block 194, to verify that customer would like to connect with the business. If the customer confirms the connection at decision block 195, the order engine connects the customer and the business to complete the online order transaction at process block 196. However, if the customer does not confirm the connection to the business at decision block 195, the order engine may automatically notify the customer via the communication platform that the online order will not be processed by the business at process block 193, and the order engine may suggest that the customer contact the business directly.
(34) Lastly, at process block 188, the business may choose to opt-out from receiving further online orders from the order engine. Once the business opts-out, the order engine may automatically notify the customer via the communication platform that the online order will not be processed by the business at process block 198, and the order engine may suggest that the customer contact the business directly.
(35) Once the online order is complete, the business may decide to enroll in the services provided by the order engine. The business may contact the service provider operating the order engine from the enrollment information received at process block 154 of
(36) If the business decides to enroll in the services provided by the service engine, the business may receive synchronous feedback with asynchronous ordering to bring more take-out traffic to the business. This can be accomplished by configuring the order engine to track business metrics, such as recording the quantity of consumer orders related to the different deployment platforms that the online ordering interfaces are provided on, as well as, tracking revenues received from the consumer orders. As a result of the consumer orders, consumer related data 14 shown in
(37) In one non-limiting example, search engine data, such as keywords searched by consumers on the deployment platforms, may be consumer related data obtained and used by the dynamic order resource manager to generate a search engine optimization (SEO) strategy for the business. The SEO strategy may include, for example, generating a list of business specific keywords based upon some, or all, of the business input data obtained at process block 102 of
(38) Once the SEO strategy is generated, the deployment platform(s) is determined for the online ordering interface. The deployment platform may include, but is not limited to, search engines, social media networks, mobile applications, and business related websites, as previously described. Thus, the SEO strategy can bring more take-out traffic to select businesses, and the take-out service provider can optionally drive more traffic to take-out web-pages, for example by purchasing relevant keywords for the business. By driving traffic to specific businesses and in conjunction with limits on orders for a particular business, the take-out service provider can sign-up more businesses for its service. In one non-limiting example, the SEO strategy may use customizable JavaScript based menu widgets. The JavaScript may run in the customer's browser. Additionally, or alternatively, if the JavaScript is a Google Chrome Extension, the online ordering interface including the business's menu could be returned with the search results entered by the customer.
(39) The take-out service provider can optionally provide businesses the ability to enable ordering capability directly from the business's own website, mobile site or Facebook page, mobile applications (e.g., running on the IOS or ANDRIOD operating system), and the like. Thus, the order engine can provide the business with an SEO friendly stylized widget powered menu, for example, on its website having built-in take-out functionality. Furthermore, if the take-out service provider powers menu widgets on third party company websites or drives content in mobile applications, for example, it can further expand the reach of its service by enabling take-out widgets on these online properties or mobile applications.
(40) In another non-limiting example, the order engine can utilize a unique identifier, such as a number, for each business that it has stored in the remote content source 10 of
(41) Referring now to
(42) <script src=“http://widget.locu.com/?locu_id={{locu_business_id}}”>
(43) Where the “locu_business_id” corresponds to the unique identifier provided by the order engine. The unique identifier may be an alphanumeric value, for example. Thus, to start the process, the order engine may receive a request from the browser including a business identifier (i.e., the identifier provided by the third party for a particular business) at process block 402. In response to the browser request, the browser may identify a widget tag, for example, in the HTML. In one non-limiting example, the widget tag may be stored by the local browser and may have the following format:
(44) TABLE-US-00001 <scriptsrc=“http://widget.locu.com/?locu_id=1234” element=“menu_content”>
(45) Once the browser identifies the widget tag, the order engine may provide the unique identifier at process block 404 that corresponds to the business identifier provided by the third party. Next, at process block 406, the order engine may receive a browser request for the widget code from the remote content source, for example. In response, at process block 408, the order engine may retrieve the data (in this non-limiting example, menu data, “menu_content,” identified in the widget tag) from the remote content source based on the unique identifier provided at process block 404 and included in the widget tag.
(46) Next, at process block 410, the order engine may be configured to create an interactive file, for example a JavaScript file, using the widget code and the menu data embedded in the widget tag. Once the file is created, which may be an executable file, the order engine may provide the file to be run at process block 412. For example, the browser may run the widget code and find the menu data (i.e., the menu_content element identified in the widget tag) within the content provided. Then at process block 414, the menu data is displayed for the business corresponding to the unique identifier. Thus, the user is provided with an interactive widget, for example, for the business identified in the content provided by the third party.
(47) In other cases, the unique identifier may not be known or stored by the third party and, thus, it may be desirable to provide input data to a customer despite the third party not knowing or storing the unique identifiers. In this case, the third party may provide business input data, such as a business name, address, and phone number as the business identifier, but not have a unique identifier to communicate to the order engine. The order engine may then map the business input data provided by the third party with the unique identifiers accessible by the order engine. The order engine may further provide widget code, for example, that supplements the third party's online content with further interactive business information. In one non-limiting example, the widget code may be stored on the remote content source 10 of
(48) TABLE-US-00002 <script src=“http://widget.locu.com/?name={{name}}&address={{address}}&city={{city }}”>
(49) Where the “name” corresponds to the business name provided by the third party. The “address” corresponds to the business address provided by the third party, and the “city” corresponds to the business city provided by the third party. Thus, the order engine matches the business input data (i.e., business name, address, and phone number) with the business input data stored on the remote content source. In some cases, the business input data may be inconsistent with the business input data stored, and accessible to the order engine, on the remote content source. For example, several phone numbers may be available for a particular restaurant. Therefore, the business phone number provided by the third party may be different from the business phone number for the same restaurant that is stored on the remote content source for the order engine. In such cases, a machine learning algorithm and elastic search strategy may be utilized, as will be described in further detail below.
(50) Specifically, turning now to
(51) TABLE-US-00003 <script src=“http://widget.locu.com/?name=Bistro+Central+parc&address=560+sutter +st&city=San+Francisco” element=“menu_content”>
(52) Once the browser identifies the widget tag, the order engine may receive the corresponding business input data from the third party at process block 504 that corresponds to the business identifier information. Next, at process block 506, the order engine may receive a browser request for the widget code, for example. Next, at process block 508, the order engine matches the given business input data provided to the business input data stored on the remote content source 10, for example, of
(53) In one non-limiting example, a machine learning algorithm and elastic search strategy, as shown at block 513, may be configured to initiate the order engine to search for and discover new keywords corresponding to the business input data. Thus, the machine learning algorithm and elastic search strategy may be used by the order engine to compensate for any discrepancies between the business input data provided and the business input data available to the order engine. In one example, the machine learning algorithm and elastic search strategy at block 513 may be based on genetic mutations, for example, that use a set of mutation functions, such as phrase splitting, word joining, word stemming, order changing, and so on, to compensate for any discrepancies between the business input data provided by the third party and the business input data provided by the order engine.
(54) Another example of the machine learning algorithm and elastic search strategy at block 513 may be a phrase extension mutator. The phrase extension mutator may be configured to combine keywords identified in the business input data provided by the third party and the business input data provided by the order engine. For example, if the business name provided by the third party includes “bistro,” “central,” and “park,” for example, the phrase extension mutator may combine the keywords into the complete business name “bistro central park”, which may be the business name stored on the remote content source accessible by the order engine. Additionally, or alternatively, the phrase extension mutator may combine keywords with a set of handpicked verbs or phrases for the particular business.
(55) Another example of the machine learning algorithm and elastic search strategy at block 513 may be a synonym finder. The synonym finder may be configured to randomly substitute words in a given phrase for known synonyms or similar items and categories associated with the keyword corresponding to the business input data. In so doing, the synonym finder will likely indicate to the order engine that the word “street” may be substituted with “st.”. Thus, if the third party provides business input data including a business address that includes the word “street,” and the business input data provided by the order engine includes a business address with the abbreviation “st.”, the machine learning algorithm and elastic search strategy will compensate for this discrepancy in order for the order engine to provide the correct unique identifier at process block 508. Additionally, or alternatively, the machine learning algorithm and elastic search strategy may be a keyword generalizer, for example. The keyword generalize may be configured to remove pluralization or stop words, for example, from the business input data that may vary between the third party and the order engine.
(56) Once the unique identifier is determined at process block 508, at process block 510, the order engine may retrieve the menu data (i.e., the menu_content identified in the widget tag) from the remote content source based on the unique identifier. Next, at process block 512, the order engine may be configured to create an interactive or executable file, for example a JavaScript file, using the widget code and the business data, such as menu data, embedded in the widget tag. Once the interactive file is created, the order engine may provide the interactive file to run on the browser at process block 514. Thus, the browser runs the widget code and finds the business data (i.e., the menu_content element identified in the widget tag) within the content provided by the third party. Then at process block 516, the business data is displayed for the business corresponding to the unique identifier. Thus, the user is provided with an interactive menu, for example, for the business identified in the content provided by the third party.
(57) In some cases, the third party choose not to work with or be capable of communicating with the order engine to obtain the unique identifier corresponding to each business. In this case, a program, application, script, extension, or similar construct may be used to determine the unique identifier or otherwise connect the order engine with the content and provide the content to the end user. The script may be a JavaScript, for example, that automatically determines the unique identifier for each business by scanning the content of the third party. Thus, the third party can run the script so that menus, for example, can be provided for the businesses referenced in the third party's content.
(58) In yet another non-limiting example, if the third party chooses not to use the unique identifier or actively participate in connecting the content with information, such as menus, available using the unique identifier, a user-side script, application, or widget, for example, may be used. For example, if the user is accessing an online newspaper from a computer, the client-side script, application, or widget can be used to scan the content of the online news paper to identify businesses or business information and access the unique identifiers corresponding to each business. Once the unique identifiers are obtained, the order engine may provide the business information, such as a menu, for the business to the user.
(59) Turning now to
(60) <script src=“http://widget.locu.com/auto”>
(61) The corresponding business input data is determined by scanning the third party's online content to identify business input data (i.e., business name, address, and phone number) and then matched with the business input data stored on the remote content source. As previously described, the business input data identified within the third party content may be inconsistent with the business input data stored and accessible to the order engine on the remote content source. Therefore, a machine learning algorithm and elastic search strategy may be utilized.
(62) Returning to
(63) <script src=“http://widget.locu.com/auto>
(64) Once the browser identifies the widget tag, the order engine may receive a browser request for the automatic widget code from the remote content source at process block 604. The order engine may then provide the automatic widget code to the browser and run the automatic widget code at process block 606. Running the automatic widget code enables a scan of the third party content and acquisition of the business input data (e.g., business name, address, and phone number) from the online content at process block 608.
(65) In one non-limiting example, the automatic widget code may scan the third party contents to find a business name and address, such as “Bistro Central Park, 560 Central St, San Francisco, Calif. 94117”. The automatic widget code may be configured to identify microformats, for example, to standardize how the automatic widget codes scans the online content for business input data. For example, the online content may be scanned for suitably formatted hCards to allow the order engine to automatically process the business input data, such as the address. Additionally, or alternatively, the order engine may use third party-specific modifications to identify the business input data within the third party content. Further still, the order engine may simply scan and determine the business input data despite any clear indicators of business input data within the third party content. In this case, contextual analysis may be performed, such as looking for proximately located information that generally matches an address format or the like.
(66) Once the business input data is acquired at process block 608, the order engine may be configured to insert another widget tag, including the identified business input data at process block 610. The browser may identify the widget tag, for example, in the HTML. In one non-limiting example, the widget tag may be stored by the local browser and may have the following format:
(67) TABLE-US-00004 <script src=“http://widget.locu.com/?name=Bistro+Central+parc&address=560+sutter +st&city=San+Francisco”>
(68) Next, at process block 612, the order engine matches the business input data identified by the automatic widget code to the business input data stored on the remote content source 10, for example, of
(69) Once the unique identifier is provided at process block 612, at process block 614, the order engine may retrieve the menu data from the remote content source corresponding to the unique identifier. Next, at process block 616, the order engine may be configured to create an interactive or executable file, for example a JavaScript file, using the widget code and the menu data embedded in the widget tag. Once the interactive file is created, the order engine may provide the interactive file to run on the browser at process block 618. Thus, the browser runs the widget code. Thus, at process block 620, the menu data is displayed for the business information found within the third party content. That is, the user is provided with an interactive menu, for example, for the business identified in the content provided by the third party.
(70) The above described script, application, and/or widget used to identify businesses included in the third party's content is not limited to online newspapers. Additionally, or alternatively, the script, application, and/or widget may be deployed in web browsers as a browser extension. For example, the browser extension may be a Google Chrome Extension that provides a user the ability to hover over a web-link, for example, to return the menu corresponding to one or more businesses displayed by the web browser. Thus, the user may be provided the business menu and the ability to place an online order for the business through the order engine.
(71) The above described systems and methods enable businesses, such as restaurants, to receive more business via existing communication methods and provides the opportunity for a restaurant to enroll in a take-out service. An additional benefit to the resulting service is that it allows the take-out order service's company to acquire new restaurant customers for its services at a low cost and at scale provided the prerequisites are met.
(72) The present invention has been described in terms of one or more preferred embodiments, and it should be appreciated that many equivalents, alternatives, variations, and modifications, aside from those expressly stated, are possible and within the scope of the invention.