Prosecution Insights
Last updated: April 19, 2026
Application No. 18/887,028

System and Method for Multi-Store Price Optimization and Seamless Checkout

Non-Final OA §101§102§103
Filed
Sep 16, 2024
Examiner
SMITH, LINDSEY B
Art Unit
3688
Tech Center
3600 — Transportation & Electronic Commerce
Assignee
Devin Denoux
OA Round
1 (Non-Final)
52%
Grant Probability
Moderate
1-2
OA Rounds
3y 3m
To Grant
99%
With Interview

Examiner Intelligence

Grants 52% of resolved cases
52%
Career Allow Rate
133 granted / 258 resolved
At TC average
Strong +54% interview lift
Without
With
+54.3%
Interview Lift
resolved cases with interview
Typical timeline
3y 3m
Avg Prosecution
31 currently pending
Career history
289
Total Applications
across all art units

Statute-Specific Performance

§101
33.8%
-6.2% vs TC avg
§103
28.5%
-11.5% vs TC avg
§102
11.8%
-28.2% vs TC avg
§112
20.5%
-19.5% vs TC avg
Black line = Tech Center average estimate • Based on career data from 258 resolved cases

Office Action

§101 §102 §103
DETAILED ACTION Notice of Pre-AIA or AIA Status The present application, filed on or after March 16, 2013, is being examined under the first inventor to file provisions of the AIA . Priority Applicant claims priority to provisional U.S. Patent Application No. 63/582,713, filed 9/14/2023. Information Disclosure Statement No IDS has been submitted. Status of Claims Applicant’s claims, filed 9/16/2024, have been entered. Claims 1-20 are currently pending in this application and have been examined. Drawings The drawings are objected to as failing to comply with 37 CFR 1.84(p)(5) because they do not include the following reference sign(s) mentioned in the description: “a bus 208” as described in paragraph [074] of the Specification. Corrected drawing sheets in compliance with 37 CFR 1.121(d) are required in reply to the Office action to avoid abandonment of the application. Any amended replacement drawing sheet should include all of the figures appearing on the immediate prior version of the sheet, even if only one figure is being amended. Each drawing sheet submitted after the filing date of an application must be labeled in the top margin as either “Replacement Sheet” or “New Sheet” pursuant to 37 CFR 1.121(d). If the changes are not accepted by the examiner, the applicant will be notified and informed of any required corrective action in the next Office action. The objection to the drawings will not be held in abeyance. Claim Rejections - 35 USC § 101 35 U.S.C. 101 reads as follows: Whoever invents or discovers any new and useful process, machine, manufacture, or composition of matter, or any new and useful improvement thereof, may obtain a patent therefor, subject to the conditions and requirements of this title. Claims 1-20 are rejected under 35 U.S.C. 101 because the claimed invention is directed to an abstract idea without significantly more. The claim(s) recite(s) an abstract idea. This judicial exception is not integrated into a practical application. The claim(s) does/do not include additional elements that are sufficient to amount to significantly more than the judicial exception. Under Step 1 of the Alice/Mayo test the claims are directed to statutory categories. Specifically, the system, as claimed in claims 1-15, are directed to a machine, the method, as claimed in claims 16-19, are directed to a process, and the non-transitory computer-readable storage medium, as claimed in claim 20, are directed to an article of manufacture (see MPEP 2106.03). Under Step 2A (prong 1), claim 16, taken as representative, recites at least the following limitations (emphasis added) that recite an abstract idea: obtaining a shopping list from a user, wherein the shopping list comprises one or more items; collecting an item information associated with the one or more items from a plurality of stores, wherein the item information comprises a price information for the one or more items offered by the plurality of stores; normalizing the item information to standardized units, formats, and names across the plurality of stores to form a normalized item information; comparing prices of matching items across the plurality of stores based on the normalized item information; determining a lowest price of each item from the one or more items across the plurality of stores based on the comparison; identifying one or more stores from the plurality of stores to purchase the one or more items responsive to determining the lowest price of each item across the plurality of stores; and displaying an information associated with the one or more stores. These limitations recite certain methods of organizing human activity, such as performing commercial interactions (see MPEP 2106.04(a)(2)(II)). Certain methods of organizing human activity are defined by MPEP 2106.04 as including “fundamental economic principles or practices (including hedging, insurance, mitigating risk); commercial or legal interactions (including agreements in the form of contracts; legal obligations; advertising, marketing or sales activities or behaviors; business relations); managing personal behavior or relationships or interactions between people (including social activities, teaching, and following rules or instructions).” In this case, the abstract ideas recited in representative claim 16 are certain methods of organizing human activity because multi-store price optimization by normalizing item information across a plurality of stores and determining a lowest price of each item across the plurality of stores is a commercial or legal interaction because it is a advertising, marketing or sales activity, or business relations. Thus, claim 16 recites an abstract idea. Independent claims 1 and 20 recite the same abstract idea as recited in independent claim 16. As such, the analysis under Step 2A, Prong 1 is the same for independent claims 1 and 20 as described above for independent claim 16. Under Step 2A (prong 2), if it is determined that the claims recite a judicial exception, it is then necessary to evaluate whether the claims recite additional elements that integrate the judicial exception into a practical application of that exception (see MPEP 2106.04). As stated in the MPEP, when “an additional element merely recites the words ‘apply it (or an equivalent) with the judicial exception, or merely uses a computer as a tool to perform an abstract idea,” the judicial exception has not been integrated into a practical application. In this case, claim 1 includes additional elements such as (additional elements are bolded): a user device having a display interface; a processor; and a memory storing instructions that, when executed by the processor, causes the processor to: obtain, via a shopping list collection module, a shopping list from a user, wherein the shopping list comprises one or more items; collect, via a data collection module, an item information associated with the one or more items from a plurality of stores, wherein the item information comprises a price information for the one or more items offered by the plurality of stores; normalize, via a data normalization module, the item information to standardized units, formats, and names across the plurality of stores to form a normalized item information; compare, via a product matching module, prices of matching items across the plurality of stores based on the normalized item information; determine, via a price optimization module, a lowest price of each item from the one or more items across the plurality of stores based on the comparison; identify, via the price optimization module, one or more stores from the plurality of stores to purchase the one or more items responsive to determining the lowest price of each item across the plurality of stores; and display on the display interface, via a display module, an information associated with the one or more stores. In this case, claim 16 includes additional elements such as (additional elements are bolded): obtaining, via a processor, a shopping list from a user through a display interface of a user device, wherein the shopping list comprises one or more items; collecting, via the processor, an item information associated with the one or more items from a plurality of stores, wherein the item information comprises a price information for the one or more items offered by the plurality of stores; normalizing, via the processor, the item information to standardized units, formats, and names across the plurality of stores to form a normalized item information; comparing, via the processor, prices of matching items across the plurality of stores based on the normalized item information; determining, via the processor, a lowest price of each item from the one or more items across the plurality of stores based on the comparison; identifying, via the processor, one or more stores from the plurality of stores to purchase the one or more items responsive to determining the lowest price of each item across the plurality of stores; and displaying, via the processor, an information associated with the one or more stores. In this case, claim 20 includes additional elements such as (additional elements are bolded): A non-transitory computer-readable storage medium having instructions stored thereupon which, when executed by a processor, cause the processor to: obtain a shopping list from a user through a display interface of a user device, wherein the shopping list comprises one or more items; collect an item information associated with the one or more items from a plurality of stores, wherein the item information comprises a price information for the one or more items offered by the plurality of stores; normalize the item information to standardized units, formats, and names across the plurality of stores to form a normalized item information; compare prices of matching items across the plurality of stores based on the normalized item information; determine a lowest price of each item from the one or more items across the plurality of stores based on the comparison; identify one or more stores from the plurality of stores to purchase the one or more items responsive to determining the lowest price of each item across the plurality of stores; and display an information associated with the one or more stores. Although reciting these additional elements, taken alone or in combination these elements are not sufficient to integrate the abstract idea into a practical application. These additional elements merely amount to the general application of the abstract idea to a technical environment (“a user device having a display interface”, “a processor”, “a memory storing instructions that, when executed by the processor”, “via a processor”, “through a display interface of a user device”, “a non-transitory computer-readable storage medium having instructions stored thereupon which, when executed by a processor”) and insignificant pre-and-post solution activity (obtaining information, collecting information, displaying information). The specification makes clear the general-purpose nature of the technological environment. This is because the additional elements of claims 1, 16, and 20 are recited at a high level of generality (i.e., as generic computing hardware) such that they amount to nothing more than the mere instructions to implement or apply the abstract idea on generic computing hardware (or, merely uses a computer as a tool to perform the abstract idea) (see Figs. 2-3; ¶¶070-077). The specification indicates that while exemplary general-purpose systems may be specific for descriptive purposes, any elements capable of implementing the claimed invention are acceptable. That is, the technology used to implement the invention is not specific or integral to the claim. The description demonstrates that these additional elements are merely generic devices such as a generic computer. Further, the additional elements do no more than generally link the use of a judicial exception to a particular environment or field of use (such as the Internet or computing networks). Therefore, considered both individually and as an ordered pair, the additional elements do no more than generally link the use of the abstract idea to a particular technological environment or field of use. That is, given the generality with which the additional elements are recited, the limitations do not implement the abstract idea with, or use the abstract idea in conjunction with, a particular machine or manufacture that is integral to the claim. Additionally, the claims do not reflect an improvement in the functioning of a computer, or an improvement to other technology or technical field, do not transform or reduction of a particular article to a different state or thing; and do not apply or use the abstract idea in some other meaningful way beyond generally linking the use of the abstract idea to a particular technology environment, such that the claim as a whole is more than a drafting effort designed to monopolize the abstract idea into a practical application, and is therefore “directed to” the abstract idea. In addition to the above, the recited obtaining/collecting and displaying steps (even assuming arguendo they do not form part of the abstract idea, which the Examiner does not acquiesce), are at best little more than extra-solution activity (e.g., data gathering, presentation of data) that contributes nominally or insignificantly to the execution of the claimed system (see MPEP 2106.05(g)). In view of the above, under Step 2A (prong 2), claims 1, 16, and 20 do not integrate the recited exception into a practical application. Under Step 2B, examiners should evaluate additional elements individually and in combination to determine whether they provide an inventive concept (i.e., whether the additional elements amount to significantly more than the exception itself). In this case, the claims do not include additional elements that are sufficient to amount to significantly more than the judicial exception. Returning to claims 1, 16, and 20, taken individually or as a whole the additional elements of claims 1, 16, and 20 do not provide an inventive concept (i.e. they do not amount to “significantly more” than the exception itself). As discussed above with respect to the integration of the abstract idea into a practical application, the additional elements used to perform the claimed process amount to no more than the mere instructions to apply the exception using a generic computer and/or no more than a general link to a technological environment. Furthermore, the additional elements fail to provide significantly more also because the claim simply appends well-understood, routine, conventional activities previously known to the industry, specified at a high level of generality, to the judicial exception. For example, the additional elements of claims 1, 16, and 20 utilize operations the courts have held to be well-understood, routine, and conventional (see: MPEP 2106.05(d)(II)), including at least: receiving or transmitting data over a network, storing or retrieving information from memory, presenting offers Even considered as an ordered combination (as a whole), the additional elements of claims 1, 16, and 20 do not add anything further than when they are considered individually. In view of the above, claims 1, 16, and 20 do not provide an inventive concept (“significantly more”) under Step 2B, and is therefore ineligible for patenting. Regarding claims 11-13, 15, and 17-19 Dependent claim(s) 11-13, 15, and 17-19, when analyzed as a whole, are held to be patent ineligible under 35 U.S.C. 101 because they do not add “significantly more” to the abstract idea. More specifically, dependent claim(s) 11-13, 15, and 17-19 merely further define the abstract limitations of claim(s) 1 and 16 or provide further embellishments of the limitations recited in independent claim claim(s) 1 and 16. Claims 11-13, 15, and 17-19 set forth: wherein the memory further stores instructions that, when executed by the processor, causes the processor to: identify, via the product matching module, the matching items equivalent to the one or more items across the plurality of stores based on the normalized item information; compute, via the product matching module, a matching score associated with the matching items; and determine, via the product matching module, whether the matching score is less than a threshold value. wherein the memory further stores instructions that, when executed by the processor, causes the processor to obtain, via the product matching module, a user confirmation on the matching items from the user responsive to a determination that the matching score is less than the threshold value. wherein the memory further stores instructions that, when executed by the processor, causes the processor to compare, via the product matching module, prices of the matching items from the one or more items across the plurality of stores responsive to a determination that the matching score is greater than the threshold value. wherein the information associated with the one or more stores comprises at least one of a price information associated with the one or more items, a total checkout price, and a name or identifier associated with the one or more stores. further comprising obtaining user preferences from the user, wherein the user preferences comprise at least one of store preferences, dietary restrictions, or a budget information. wherein identifying the one or more stores comprises identifying the one or more stores based on the user preferences. wherein the information associated with the one or more stores comprises at least one of a price information associated with the one or more items, a total checkout price, and a name or identifier associated with the one or more stores. Such recitations merely embellish the abstract idea of multi-store price optimization by normalizing item information across a plurality of stores and determining a lowest price of each item across the plurality of stores. The claims do not set forth any further additional limitations, and therefore such abstract embellishments are applied to the additional limitations recited in claim(s) 1 and 16, which do no more than generally link the use of the abstract idea to a particular technological environment, do not integrate the abstract idea into a practical application, and do not provide an inventive concept. Accordingly, the claims do not confer eligibility on the claimed invention and is ineligible for similar reasons to claim(s) 1 and 16. Thus, dependent 11-13, 15, and 17-19 are ineligible. Regarding claims 2-10, and 14 Dependent claim(s) 2-10, and 14 sets forth: wherein the memory further stores instructions that, when executed by the processor, causes the processor to: obtain, via a user preferences module, user preferences from the user, wherein the user preferences comprise at least one of store preferences, dietary restrictions, or a budget information. wherein the processor is configured to obtain the user preferences responsive to obtaining the shopping list from the user. wherein the processor is configured to obtain the user preferences before obtaining the shopping list from the user. wherein the processor is configured to identify the one or more stores based on the user preferences. wherein the memory further stores instructions that, when executed by the processor, causes the processor to: compute, via the price optimization module, a total cost associated with the shopping list across the plurality of stores when the user preferences indicate that the user prefers to purchase the one or more items from a single store; compare, via the price optimization module, the total cost associated with the plurality of stores; select, via the price optimization module, a first store from the plurality of stores based on the comparison, wherein the first store offers a lowest total cost across the plurality of stores; and display, via the display module, the information associated with the first store. wherein the memory further stores instructions that, when executed by the processor, causes the processor to: determine, via the price optimization module, an optimal combination of two or more stores, from the plurality of stores, that collectively offer a minimum cost of the shopping list when the user preferences indicate that the user prefers to purchase the one or more items at an overall lowest total cost and is willing to shop from more than one shop; and display, via the display module, the information associated with the optimal combination of two or more stores. wherein the memory further stores instructions that, when executed by the processor, causes the processor to: aggregate, via a unified cart and payment integration module, the normalized item information associated with the one or more items from the one or more stores into a unified cart; and process, via the unified cart and payment integration module, a payment in one transaction to purchase the one or more items from the one or more stores responsive to aggregating the normalized item information into the unified cart. wherein the memory further stores instructions that, when executed by the processor, causes the processor to distribute, via an order segmentation module, the unified cart into individual orders to the one or more stores. wherein the memory further stores instructions that, when executed by the processor, causes the processor to provide, via an inventory module, real-time updates to the user on at least one of: an inventory, an availability, and a delivery status of the one or more items. further comprising a user interface configured to obtain the shopping list from the user and display the information associated with the one or more stores. Such recitations merely embellish the abstract idea of multi-store price optimization by normalizing item information across a plurality of stores and determining a lowest price of each item across the plurality of stores. While the claim(s) do set forth the additional elements of “via a user preferences module”, “via a unified cart and payment integration module”, “via an order segmentation module”, “via an inventory module”, and “a user interface”, these recitations are similar to the additional limitations in claims 1, 16, and 20, as they do no more than generally link the use of the abstract idea to a particular technological environment. That is these additional elements merely amount to the general application of the abstract idea to a technical environment. The specification makes clear the general-purpose nature of the technological environment. Paragraphs [070]-[077] indicates that while exemplary general-purpose systems may be specific for descriptive purposes, any elements capable of implementing the claimed invention are acceptable. That is, the technology used to implement the invention is not specific or integral to the claim. Therefore, these additional elements do not integrate the abstract idea into a practical application because they merely amount to using a computer to apply the abstract idea and no more than a general link of the use of the abstract idea to a particular technological environment or field of use and thus do not act to integrate the abstract idea into a practical application of the abstract idea. Further, the “modules” and “user interface” are recited at a high level and amounts to merely applying the abstract idea. Additionally, the additional elements do not amount to significantly more because they merely amount to using a computer to apply the abstract idea and amount to no more than a general link of the use of the abstract idea to a particular technological environment. Thus, dependent claims 2-10, and 14 are also ineligible. Claim Rejections - 35 USC § 102 In the event the determination of the status of the application as subject to AIA 35 U.S.C. 102 and 103 (or as subject to pre-AIA 35 U.S.C. 102 and 103) is incorrect, any correction of the statutory basis (i.e., changing from AIA to pre-AIA ) for the rejection will not be considered a new ground of rejection if the prior art relied upon, and the rationale supporting the rejection, would be the same under either status. The following is a quotation of the appropriate paragraphs of 35 U.S.C. 102 that form the basis for the rejections under this section made in this Office action: A person shall be entitled to a patent unless – (a)(1) the claimed invention was patented, described in a printed publication, or in public use, on sale, or otherwise available to the public before the effective filing date of the claimed invention. Claim(s) 1-7 and 11-20 is/are rejected under 35 U.S.C. 102(a)(1) as being anticipated by Abboud (WO 2016/000044 A1). Regarding claim 1, Abboud discloses a system for optimizing multi-store shopping (Fig. 1; abstract), the system comprising: a user device having a display interface (Fig. 1; page 11, lines 25-27 [Referring to Figure 1 , there is shown a shopping system 10 including a plurality of user devices 12, 14, 16. Device 12 is a personal computer, device 14 is a smart phone, and device 16 is a portable computing device (for example a tablet)], page 12, lines 11-14 [The web server 22 generates information that is transmitted over the internet 20 such that the web browser can use that information to generate a webpage for display to the user of device 12, 14, 16.]); a processor (Fig. 1; page 11, line 29 to page 12, line 5 [System 10 further includes a web server 22, an Application Programming Interface (API) 24 and a database server 26. The server 22 includes central processing unit(s) 502, memory 504, a data storage module 506, an input module 508, an output module 510 and a communication module 512. The server 22 is able to connect to retailer computer systems 30, 32, 34 via the Internet 20.]); and a memory storing instructions that, when executed by the processor (Fig. 1; page 11, line 29 to page 13, line 31 [the server 22 is a computer system configured by one or more computer programs stored on tangible non transient media, such as a hard disk drive, flash memory, CD, DVD etc., so as to be configured as described and so as to perform the method as described. The computer system may constitute a "platform" or "module" that is configured and operates to perform certain operations. In other embodiments, the "platform" or "module" may be implemented mechanically or electronically. A platform or module may comprise dedicated circuitry or logic that is permanently configured (such as within a special-purpose processor) to perform operations as described. A platform or module may also comprise programmable logic or circuitry (e.g. as encompassed within a general-purpose processor or other programmable processor) that is configured by one or more computer programs (firmware, operating system and or software) to perform as controlled by the computer programs so as to be configured to perform as described.]), causes the processor to: obtain, via a shopping list collection module, a shopping list from a user, wherein the shopping list comprises one or more items (Figs. 1-3, 5, 24; page 15, line 25 to page 16 [The user 404, utilizing an input device 12, 14, 16, would select products for purchase through the web API 24, which facilitates the necessary communications. The products are stored on the primary database 26 and were collected through the data aggregation service 402 which used screen scrappers to collect data from suppliers 30, 32, 34….The user then builds a shopping list of items desired for purchase at 154. ] in view of page 12, line 24 to page 13, line 25 [modules]); collect, via a data collection module, an item information associated with the one or more items from a plurality of stores (Figs. 1-6; page 15, line 31 to page 22 [In method 150, the user provides a geographic region identifier, such as their suburb at 152. Alternatively the geographic region identifier could be a physical address, or the system could identify the current location of the user. Another alternative is that the system utilises a stored address for the user. The user then builds a shopping list of items desired for purchase at 154. The user can then have the shopping list priced in step 156. The calculation of the total price of the shopping list will be localised to the user entered postcode, physical address or current location, and can make an effective recommendation of one or more of the available shops from which to purchase the items on the shopping list based on price information stored in the database from each of the available retailers in the locality of the user.]), wherein the item information comprises a price information for the one or more items offered by the plurality of stores (Figs. 1-3, 12 [price of each item on list], 22 [price information]; page 15, lines 4-30 [The data aggregation service 402 includes a screen scrapper database 414 and a screen scraping program 413, and is responsible for the data aggregation process which collects product information from supplier servers 30, 32, 34, and merges the data into both the screen scrapper database 414 and primary database 26… The products are stored on the primary database 26 and were collected through the data aggregation service 402 which used screen scrappers to collect data from suppliers 30, 32, 34.], page 23, lines 9-15 [Products are brought into the primary database 26 by the data aggregation process described below. Each product in a match is offered by a different supplier and product records are stored in the Products table (Fig 22).], and page 36, lines 1-5 [Figure 12 shows the display 280 of a breakdown of the costs of each list for each retailer 284 and 286 of each item in the shopping list 282.] in view of page 12, line 24 to page 13, line 25 [modules]); normalize, via a data normalization module, the item information to standardized units, formats, and names across the plurality of stores to form a normalized item information (Figs. 1-3, 19; page 15, lines 15-24 [The data aggregation service 402 may retrieve data from the screen scrapper database 414. The product data is then parsed 417 which converts each product record collected in the screen scrapping result and stored in the screen scrapper database 414, and formats each record to a compatible structure. Each formatted product record is then merged 418 into the product table of the primary database 26.], page 24, line 23 to page 25, line 31 [Using the lower cost alternative the price difference is worked out between it and the product on the initial match by the same supplier. Each cart item is examined this way and all price differences will be combined to form a total price difference… Calculation 124 totals the cost of the shopping list for each quantity unit (e.g. weight or volume). The particular related groups used by calculation 124 are of the type: Unit… The criteria used to identify a lower unit-cost alternative is to first check for a cheaper CupPrice field amount. If there are no cheaper alternatives by CupPrice, the logic will check if the PerGroupQuantity field multiplied by the PerGroupPrice field equates to a lower unit price than the original products Price field multiplied by the same PerGroupQuantity field], page 42, lines 4-30 [Having all records in a consistent format is a prerequisite for the comparisons engine. Another example is the separation of the weight, weight definition (e.g. 'grams'), quantity and quantity definition (e.g. 'pack') from the individual volume size field. As the comparisons of the product can rely heavily on weight and quantity values, these should be split into individual fields in the database… Every product merged from the source scrapper products to the target primary database product should undergo the volumeSize extraction process… An extensive list of regular expressions is required to ensure each product entered into the primary database is in a uniform manner… The result is that the up-to-date product data is stored in the primary database in a uniform format which can be readily used for comparisons and calculations.], page 47, line 31 to page 48, line 17, page 51, line 22 to page 52, line 3 [per quantity costs option], page 54, lines 7-30 [unit cost option] in view of page 12, line 24 to page 13, line 25 [modules]); compare, via a product matching module, prices of matching items across the plurality of stores based on the normalized item information (Figs. 1-6, 12, 18, 19; page 15, lines 15-24 [The calculation of the total price of the shopping list will be localised to the user entered postcode, physical address or current location, and can make an effective recommendation of one or more of the available shops from which to purchase the items on the shopping list based on price information stored in the database from each of the available retailers in the locality of the user.], page 22, line 26 to page 23, line 4 [Referring to Figure 4, the process of calculating the totals 1 18 ideally has a number of calculation options 120, 122, 124, 126 and 128. Calculation 120 provides the store totals and totals up the cost of the shopping list for each retailer in the region (postcode). This is done by multiplying the cost of each item by the number of items selected for purchase, and summing these up for each retailer. These calculations may be performed and stored, with the results displayed as required or they may be performed and displayed according to a selection by the user.], page 35, line 24 to page 37, line 4 [The result of calculation 120 for each retailer can be displayed to a user in a side by side comparison in this embodiment… The user can thus see the calculated comparison between the alternate retailers and in this embodiment can decide on which retailer to proceed with a purchase from. The cheapest retailer based on the totals 258 and 268 may be highlighted to the user… Calculation 128 can then be used to perform a 'split shop', which is where the shopping list is split to show the cheapest items from each store in their area, if the user chooses to 20 shop at more than one store to maximize savings.] in view of page 12, line 24 to page 13, line 25 [modules]); determine, via a price optimization module, a lowest price of each item from the one or more items across the plurality of stores based on the comparison (Figs. 1-6, 12, 18, 19; page 35, line 24 to page 37, line 4 [The result of calculation 120 for each retailer can be displayed to a user in a side by side comparison in this embodiment… The user can thus see the calculated comparison between the alternate retailers and in this embodiment can decide on which retailer to proceed with a purchase from. The cheapest retailer based on the totals 258 and 268 may be highlighted to the user… Calculation 128 can then be used to perform a 'split shop', which is where the shopping list is split to show the cheapest items from each store in their area, if the user chooses to 20 shop at more than one store to maximize savings.] in view of page 12, line 24 to page 13, line 25 [modules]); identify, via the price optimization module, one or more stores from the plurality of stores to purchase the one or more items responsive to determining the lowest price of each item across the plurality of stores (Figs. 1-6, 12, 18, 19; page 35, line 24 to page 37, line 4 [The result of calculation 120 for each retailer can be displayed to a user in a side by side comparison in this embodiment… The user can thus see the calculated comparison between the alternate retailers and in this embodiment can decide on which retailer to proceed with a purchase from. The cheapest retailer based on the totals 258 and 268 may be highlighted to the user… Calculation 128 can then be used to perform a 'split shop', which is where the shopping list is split to show the cheapest items from each store in their area, if the user chooses to 20 shop at more than one store to maximize savings.] in view of page 12, line 24 to page 13, line 25 [modules]); and display on the display interface, via a display module, an information associated with the one or more stores (Figs. 1-6, 12, 18, 19; page 35, line 24 to page 37, line 4 [The result of calculation 120 for each retailer can be displayed to a user in a side by side comparison in this embodiment… The user can thus see the calculated comparison between the alternate retailers and in this embodiment can decide on which retailer to proceed with a purchase from. The cheapest retailer based on the totals 258 and 268 may be highlighted to the user… Calculation 128 can then be used to perform a 'split shop', which is where the shopping list is split to show the cheapest items from each store in their area, if the user chooses to 20 shop at more than one store to maximize savings.] in view of page 12, line 24 to page 13, line 25 [modules]). Regarding claim 2, Abboud discloses the system of claim 1, wherein the memory further stores instructions that, when executed by the processor, causes (Figs. 1-6) the processor to: obtain, via a user preferences module, user preferences from the user, wherein the user preferences comprise at least one of store preferences, dietary restrictions, or a budget information (Figs. 1-6, 9, 10, ; page 19, line 26 to page 21, line 5 [As an example, at step 106, the user is then served with a page, such as page 180 of Figure 9, which has a list of product categories 182. The user can then select one of the categories to build their shopping list. For example if the user selects 'Dairy' 184 then a page of dairy products , such as page 200 of Figure 10, may be presented… Where available, the system will, if desired, provide additional options of categories e.g.: Organic, Gluten Free, Dairy Free, Lactose Free, Sugar Free, Wheat Free, Egg Free, Meat Free, Vegetarian, Australian Made, Superfood] in view of page 12, line 24 to page 13, line 25 [modules]). Regarding claim 3, Abboud discloses the system of claim 2, wherein the processor is configured to obtain the user preferences responsive to obtaining the shopping list from the user (Figs. 1-6, 9, 10, ; page 19, line 26 to page 21, line 5 [As an example, at step 106, the user is then served with a page, such as page 180 of Figure 9, which has a list of product categories 182. The user can then select one of the categories to build their shopping list. For example if the user selects 'Dairy' 184 then a page of dairy products , such as page 200 of Figure 10, may be presented… Where available, the system will, if desired, provide additional options of categories e.g.: Organic, Gluten Free, Dairy Free, Lactose Free, Sugar Free, Wheat Free, Egg Free, Meat Free, Vegetarian, Australian Made, Superfood] in view of page 12, line 24 to page 13, line 25 [modules]; Examiner notes selecting a category to build their shopping list can be considered obtaining a user preference responsive to as well as prior to obtaining a shopping list). Regarding claim 4, Abboud discloses the system of claim 3, wherein the processor is configured to obtain the user preferences before obtaining the shopping list from the user (Figs. 1-6, 9, 10; page 15, line 31 to page 22 [In method 150, the user provides a geographic region identifier, such as their suburb at 152. Alternatively the geographic region identifier could be a physical address, or the system could identify the current location of the user. Another alternative is that the system utilises a stored address for the user. The user then builds a shopping list of items desired for purchase at 154. The user can then have the shopping list priced in step 156. The calculation of the total price of the shopping list will be localised to the user entered postcode, physical address or current location, and can make an effective recommendation of one or more of the available shops from which to purchase the items on the shopping list based on price information stored in the database from each of the available retailers in the locality of the user.]; Examiner notes a shopping list localized to the user entered postcode, physical address or current location is comparable to obtaining a user store preference before obtaining the shopping list; and page 19, line 26 to page 21, line 5 [As an example, at step 106, the user is then served with a page, such as page 180 of Figure 9, which has a list of product categories 182. The user can then select one of the categories to build their shopping list. For example if the user selects 'Dairy' 184 then a page of dairy products , such as page 200 of Figure 10, may be presented… Where available, the system will, if desired, provide additional options of categories e.g.: Organic, Gluten Free, Dairy Free, Lactose Free, Sugar Free, Wheat Free, Egg Free, Meat Free, Vegetarian, Australian Made, Superfood] in view of page 12, line 24 to page 13, line 25 [modules]; Examiner notes selecting a category to build their shopping list can be considered obtaining a user preference responsive to as well as prior to obtaining a shopping list). Regarding claim 5, Abboud discloses the system of claim 3, wherein the processor is configured to identify the one or more stores based on the user preferences (Figs. 1-6, 9, 10; page 15, line 31 to page 22 [In method 150, the user provides a geographic region identifier, such as their suburb at 152. Alternatively the geographic region identifier could be a physical address, or the system could identify the current location of the user. Another alternative is that the system utilises a stored address for the user. The user then builds a shopping list of items desired for purchase at 154. The user can then have the shopping list priced in step 156. The calculation of the total price of the shopping list will be localised to the user entered postcode, physical address or current location, and can make an effective recommendation of one or more of the available shops from which to purchase the items on the shopping list based on price information stored in the database from each of the available retailers in the locality of the user.]; Examiner notes a shopping list localized to the user entered postcode, physical address or current location is comparable to obtaining a user store preference). Regarding claim 6, Abboud discloses the system of claim 5, wherein the memory further stores instructions that, when executed by the processor, causes the processor to: compute, via the price optimization module, a total cost associated with the shopping list across the plurality of stores when the user preferences indicate that the user prefers to purchase the one or more items from a single store (Figs. 1-6, 11, specifically Fig. 11, element 120; page 22, line 26 to page 23, line 4 [Referring to Figure 4, the process of calculating the totals 1 18 ideally has a number of calculation options 120, 122, 124, 126 and 128. Calculation 120 provides the store totals and totals up the cost of the shopping list for each retailer in the region (postcode). This is done by multiplying the cost of each item by the number of items selected for purchase, and summing these up for each retailer. These calculations may be performed and stored, with the results displayed as required or they may be performed and displayed according to a selection by the user.], page 31, lines 16-24 [In option 142 once the user selects a single store to purchase the list from (which may default to the lowest priced store) the shopping list is converted into a shopping cart in the selected store for delivery to the user.], page 33, line 24 to page 36, line 5 [Figure 11 shows possible results of calculation 120 that could be displayed 250 to a user in an embodiment of the invention. For a first retailer, e.g. Supermarket 1 , various costs of the shopping list are displayed 252… When the user opens up the calculation popup by clicking a 'Calculate Totals' button from either their cart or the search/browse page, a web request is sent to the API with a JSON representation of their shopping cart attached. The logic in the API first queries to primary database to identify all active suppliers present in the Suppliers table. For each supplier in this table a sequence of calculations are executed to determine what values to return to the client website to present alongside the radial savings strength display… the total of the shopping list is displayed in 258, which is the total standard cost less the savings. The result of calculation 120 for each retailer can be displayed to a user in a side by side comparison in this embodiment… The user can thus see the calculated comparison between the alternate retailers and in this embodiment can decide on which retailer to proceed with a purchase from. The cheapest retailer based on the totals 258 and 268 may be highlighted to the user.] in view of page 12, line 24 to page 13, line 25 [modules]); compare, via the price optimization module, the total cost associated with the plurality of stores (Figs. 1-6, 11; page 22, line 26 to page 23, line 4 [Referring to Figure 4, the process of calculating the totals 1 18 ideally has a number of calculation options 120, 122, 124, 126 and 128. Calculation 120 provides the store totals and totals up the cost of the shopping list for each retailer in the region (postcode). This is done by multiplying the cost of each item by the number of items selected for purchase, and summing these up for each retailer. These calculations may be performed and stored, with the results displayed as required or they may be performed and displayed according to a selection by the user.], page 33, line 24 to page 36, line 5 [Figure 11 shows possible results of calculation 120 that could be displayed 250 to a user in an embodiment of the invention. For a first retailer, e.g. Supermarket 1 , various costs of the shopping list are displayed 252… When the user opens up the calculation popup by clicking a 'Calculate Totals' button from either their cart or the search/browse page, a web request is sent to the API with a JSON representation of their shopping cart attached. The logic in the API first queries to primary database to identify all active suppliers present in the Suppliers table. For each supplier in this table a sequence of calculations are executed to determine what values to return to the client website to present alongside the radial savings strength display… the total of the shopping list is displayed in 258, which is the total standard cost less the savings. The result of calculation 120 for each retailer can be displayed to a user in a side by side comparison in this embodiment… The user can thus see the calculated comparison between the alternate retailers and in this embodiment can decide on which retailer to proceed with a purchase from. The cheapest retailer based on the totals 258 and 268 may be highlighted to the user.] in view of page 12, line 24 to page 13, line 25 [modules]); select, via the price optimization module, a first store from the plurality of stores based on the comparison, wherein the first store offers a lowest total cost across the plurality of stores (Figs. 1-6, 11; page 22, line 26 to page 23, line 4 [Referring to Figure 4, the process of calculating the totals 1 18 ideally has a number of calculation options 120, 122, 124, 126 and 128. Calculation 120 provides the store totals and totals up the cost of the shopping list for each retailer in the region (postcode). This is done by multiplying the cost of each item by the number of items selected for purchase, and summing these up for each retailer. These calculations may be performed and stored, with the results displayed as required or they may be performed and displayed according to a selection by the user.], page 33, line 24 to page 36, line 5 [Figure 11 shows possible results of calculation 120 that could be displayed 250 to a user in an embodiment of the invention. For a first retailer, e.g. Supermarket 1 , various costs of the shopping list are displayed 252… When the user opens up the calculation popup by clicking a 'Calculate Totals' button from either their cart or the search/browse page, a web request is sent to the API with a JSON representation of their shopping cart attached. The logic in the API first queries to primary database to identify all active suppliers present in the Suppliers table. For each supplier in this table a sequence of calculations are executed to determine what values to return to the client website to present alongside the radial savings strength display… the total of the shopping list is displayed in 258, which is the total standard cost less the savings. The result of calculation 120 for each retailer can be displayed to a user in a side by side comparison in this embodiment… The user can thus see the calculated comparison between the alternate retailers and in this embodiment can decide on which retailer to proceed with a purchase from. The cheapest retailer based on the totals 258 and 268 may be highlighted to the user.] in view of page 12, line 24 to page 13, line 25 [modules]); and display, via the display module, the information associated with the first store (Figs. 1-6, 11; page 22, line 26 to page 23, line 4 [Referring to Figure 4, the process of calculating the totals 1 18 ideally has a number of calculation options 120, 122, 124, 126 and 128. Calculation 120 provides the store totals and totals up the cost of the shopping list for each retailer in the region (postcode). This is done by multiplying the cost of each item by the number of items selected for purchase, and summing these up for each retailer. These calculations may be performed and stored, with the results displayed as required or they may be performed and displayed according to a selection by the user.], page 33, line 24 to page 36, line 5 [Figure 11 shows possible results of calculation 120 that could be displayed 250 to a user in an embodiment of the invention. For a first retailer, e.g. Supermarket 1 , various costs of the shopping list are displayed 252… When the user opens up the calculation popup by clicking a 'Calculate Totals' button from either their cart or the search/browse page, a web request is sent to the API with a JSON representation of their shopping cart attached. The logic in the API first queries to primary database to identify all active suppliers present in the Suppliers table. For each supplier in this table a sequence of calculations are executed to determine what values to return to the client website to present alongside the radial savings strength display… the total of the shopping list is displayed in 258, which is the total standard cost less the savings. The result of calculation 120 for each retailer can be displayed to a user in a side by side comparison in this embodiment… The user can thus see the calculated comparison between the alternate retailers and in this embodiment can decide on which retailer to proceed with a purchase from. The cheapest retailer based on the totals 258 and 268 may be highlighted to the user.] in view of page 12, line 24 to page 13, line 25 [modules]). Regarding claim 7, Abboud discloses the system of claim 5, wherein the memory further stores instructions that, when executed by the processor, causes the processor to: determine, via the price optimization module, an optimal combination of two or more stores, from the plurality of stores, that collectively offer a minimum cost of the shopping list when the user preferences indicate that the user prefers to purchase the one or more items at an overall lowest total cost and is willing to shop from more than one shop (Figs. 1-6, 11-15, Specifically Fig. 11, element 128; page 22, lines 26-27 [Referring to Figure 4, the process of calculating the totals 1 18 ideally has a number of calculation options 120, 122, 124, 126 and 128.], page 26, lines 12-15 [Calculation 128 totals the cost for each retailer and shows the cheapest items for each store, as well as a combined cost if the user wishes to split the shopping list according to the cheapest prices at a plurality of retailers.], page 31, line 25 to page 32, line 11 [In option 144 the user selects to split the shopping lists between two or more stores to purchase. Conveniently this could be the split shopping determined above… In option 146 the user selects one or more stores to purchase from and the respective shopping lists are generated for the respective stores for the user to collect.], page 36, line 30 to page 37, line 11 [Calculation 128 can then be used to perform a 'split shop', which is where the shopping list is split to show the cheapest items from each store in their area, if the user chooses to 20 shop at more than one store to maximize savings. In this case the split is in two, with the lower cost items for Supermarket 1 going to a list for Supermarket 1 and the lower cost items for Supermarket 2 going to a list for Supermarket 2. Figure 13 shows a variant embodiment of Figure 12, in which the comparisons of Supermarket 1 and Supermarket 2 are made and shown in display 300 where a Split Shop Calculation is shown. In this the Total standard costs are shown at 304. The savings are shown in 306. The total costs when using this system are shown in 308. The total savings are derived from the total standard cost of the split shop, less the savings. The display 280 of Figure 13 may be created if the user selects on the combined total 366 of Figure 15.] in view of page 12, line 24 to page 13, line 25 [modules]); and display, via the display module, the information associated with the optimal combination of two or more stores (Figs. 1-6, 11-15; page 36, line 30 to page 37, line 11 [Calculation 128 can then be used to perform a 'split shop', which is where the shopping list is split to show the cheapest items from each store in their area, if the user chooses to 20 shop at more than one store to maximize savings. In this case the split is in two, with the lower cost items for Supermarket 1 going to a list for Supermarket 1 and the lower cost items for Supermarket 2 going to a list for Supermarket 2. Figure 13 shows a variant embodiment of Figure 12, in which the comparisons of Supermarket 1 and Supermarket 2 are made and shown in display 300 where a Split Shop Calculation is shown. In this the Total standard costs are shown at 304. The savings are shown in 306. The total costs when using this system are shown in 308. The total savings are derived from the total standard cost of the split shop, less the savings. The display 280 of Figure 13 may be created if the user selects on the combined total 366 of Figure 15.] in view of page 12, line 24 to page 13, line 25 [modules]). Regarding claim 11, Abboud discloses the system of claim 1, wherein the memory further stores instructions that, when executed by the processor, causes the processor to: identify, via the product matching module, the matching items equivalent to the one or more items across the plurality of stores based on the normalized item information (Figs. 20-26; page 44, line 29 to page 48, line 18 in view of page 12, line 24 to page 13, line 25 [modules]); compute, via the product matching module, a matching score associated with the matching items (Figs. 20-26; page 45, line 31 to page 46, line 30 in view of page 12, line 24 to page 13, line 25 [modules]); and determine, via the product matching module, whether the matching score is less than a threshold value (Figs. 20-26; page 45, line 31 to page 46, line 30 [a configurable threshold of 70% is used to define the cutoff where two products have an insufficient amount of matching words to be deemed a match. In the event that 70% or more words match in the product description, the product is deemed a match. This number was identified as a suitable number by running the matching logic on actual Product datasets and investigating the results. A setting of 70% returned the optimum accuracy to quantity ratio.] in view of page 12, line 24 to page 13, line 25 [modules]). Regarding claim 12, Abboud discloses the system of claim 11, wherein the memory further stores instructions that, when executed by the processor, causes the processor to obtain, via the product matching module, a user confirmation on the matching items from the user responsive to a determination that the matching score is less than the threshold value (Figs. 20-26; page 45, line 31 to page 46, line 30 [a configurable threshold of 70% is used to define the cutoff where two products have an insufficient amount of matching words to be deemed a match. In the event that 70% or more words match in the product description, the product is deemed a match… matching can be performed using a Fuzzy Logic tool to identify potential matches between the various suppliers collection and provide the administrator with a match accuracy score. For example the fuzzy lookup tool in Microsoft excel can identify and match textually similar string data in data tables, and in this case helps to identify and match products between the stores. These matches can then be either accepted or rejected by an operator.] in view of page 12, line 24 to page 13, line 25 [modules]). Regarding claim 13, Abboud discloses the system of claim 11, wherein the memory further stores instructions that, when executed by the processor, causes the processor to compare, via the product matching module, prices of the matching items from the one or more items across the plurality of stores responsive to a determination that the matching score is greater than the threshold value (Figs. 20-26; page 44, line 29 to page 48, line 18 and page 15, lines 15-24 [The data aggregation service 402 may retrieve data from the screen scrapper database 414. The product data is then parsed 417 which converts each product record collected in the screen scrapping result and stored in the screen scrapper database 414, and formats each record to a compatible structure. Each formatted product record is then merged 418 into the product table of the primary database 26.], page 24, line 23 to page 25, line 31 [Using the lower cost alternative the price difference is worked out between it and the product on the initial match by the same supplier. Each cart item is examined this way and all price differences will be combined to form a total price difference… Calculation 124 totals the cost of the shopping list for each quantity unit (e.g. weight or volume). The particular related groups used by calculation 124 are of the type: Unit… The criteria used to identify a lower unit-cost alternative is to first check for a cheaper CupPrice field amount. If there are no cheaper alternatives by CupPrice, the logic will check if the PerGroupQuantity field multiplied by the PerGroupPrice field equates to a lower unit price than the original products Price field multiplied by the same PerGroupQuantity field], page 42, lines 4-30 [Having all records in a consistent format is a prerequisite for the comparisons engine. Another example is the separation of the weight, weight definition (e.g. 'grams'), quantity and quantity definition (e.g. 'pack') from the individual volume size field. As the comparisons of the product can rely heavily on weight and quantity values, these should be split into individual fields in the database… Every product merged from the source scrapper products to the target primary database product should undergo the volumeSize extraction process… An extensive list of regular expressions is required to ensure each product entered into the primary database is in a uniform manner… The result is that the up-to-date product data is stored in the primary database in a uniform format which can be readily used for comparisons and calculations.], page 47, line 31 to page 48, line 17, page 51, line 22 to page 52, line 3 [per quantity costs option], page 54, lines 7-30 [unit cost option] in view of page 12, line 24 to page 13, line 25 [modules]). Regarding claim 14, Abboud discloses the system of claim 1, further comprising a user interface configured to obtain the shopping list from the user and display the information associated with the one or more stores (Figs. 1-3, 10 [adding items to shopping list], 11 [total checkout price and name associated with store], 12 [price of each item on list and name associated with store], 13 [total checkout price and name associated with store], 15 [total checkout price and name associated with store], 17 [price of each item on list and name associated with store], 19 [price of each item on list and name associated with store]; page 12, lines 11-20 [The web server 22 generates information that is transmitted over the internet 20 such that the web browser can use that information to generate a webpage for display to the user of device 12, 14, 16. The API 24 receives a request for information from the device 14, 16 and in response provides information that is transmitted over the internet 20 such that the App can use that information in combination with information stored in the App to display information to the user of device 14, 16.], page 18, line 27 to page 19, line 2 [The user then starts to build a shopping list by either typing in the desired item in the search box where the service will search a products database stored in the database server 26 or by another technique. For example the user may select products via categories 106 or by scanning the barcode of the item they need.]). Regarding claim 15, Abboud discloses the system of claim 1, wherein the information associated with the one or more stores comprises at least one of a price information associated with the one or more items, a total checkout price, and a name or identifier associated with the one or more stores (Figs. 1-3, 11 [total checkout price and name associated with store], 12 [price of each item on list and name associated with store], 13 [total checkout price and name associated with store], 15 [total checkout price and name associated with store], 17 [price of each item on list and name associated with store], 19 [price of each item on list and name associated with store], 22 [price information]; page 15, lines 4-30 [The data aggregation service 402 includes a screen scrapper database 414 and a screen scraping program 413, and is responsible for the data aggregation process which collects product information from supplier servers 30, 32, 34, and merges the data into both the screen scrapper database 414 and primary database 26… The products are stored on the primary database 26 and were collected through the data aggregation service 402 which used screen scrappers to collect data from suppliers 30, 32, 34.], page 23, lines 9-15 [Products are brought into the primary database 26 by the data aggregation process described below. Each product in a match is offered by a different supplier and product records are stored in the Products table (Fig 22).], and page 36, lines 1-5 [Figure 12 shows the display 280 of a breakdown of the costs of each list for each retailer 284 and 286 of each item in the shopping list 282.] in view of page 12, line 24 to page 13, line 25 [modules]). Regarding claims 16-19, the claims disclose substantially the same limitations, as claims 1, 2, 5, and 15, except claims 1, 2, 5, and 15 are directed to machines while claims 16-19 are directed to processes. All limitations as recited have been analyzed and rejected with respect to claims 1, 2, 5, and 15, and do not introduce any additional narrowing of the scopes of the claims as analyzed. Therefore, claims 16-19 are rejected for the same rational over the prior art cited in claims 1, 2, 5, and 15. Regarding claim 20, the claim discloses substantially the same limitations, as claim 1, except claim 1 is directed to a machine while claim 20 is directed to an article of manufacture. The added element of “a non-transitory computer-readable storage medium having instructions stored thereupon which, when executed by a processor” is also disclosed by Abboud (page 7, lines 1-11; claim 21). Therefore, claim 20 is rejected for the same rational over the prior art. Claim Rejections - 35 USC § 103 The following is a quotation of 35 U.S.C. 103 which forms the basis for all obviousness rejections set forth in this Office action: A patent for a claimed invention may not be obtained, notwithstanding that the claimed invention is not identically disclosed as set forth in section 102, if the differences between the claimed invention and the prior art are such that the claimed invention as a whole would have been obvious before the effective filing date of the claimed invention to a person having ordinary skill in the art to which the claimed invention pertains. Patentability shall not be negated by the manner in which the invention was made. Claim(s) 8-10 is/are rejected under 35 U.S.C. 103 as being unpatentable over Abboud in view of Bhosle et al. (US 9,189,811 B1). Regarding claim 8, Abboud discloses the system of claim 1, wherein the memory further stores instructions that, when executed by the processor, causes the processor to: aggregate, via a unified cart and payment integration module, the normalized item information associated with the one or more items from the one or more stores into a unified cart (Figs. 5-6, 11; page 31, line 16 to page 32, line 11 [In option 142 once the user selects a single store to purchase the list from (which may default to the lowest priced store) the shopping list is converted into a shopping cart in the selected store for delivery to the user. This occurs by the web server taking the user to the retailer's shopping cart website and injecting the shopping list and delivery details into the retailer's shopping cart. In option 144 the user selects to split the shopping lists between two or more stores to purchase. Conveniently this could be the split shopping determined above. The system depending on the implementation may, or may not, include delivery costs, if any, in the calculations. The respective shopping lists would then be generated for the respective stores for delivery to the user. This occurs by the web server taking the user to the retailers' shopping cart websites and injecting the respective shopping list and delivery details into the respective retailers' shopping carts.], page 33, line 24 to page 36, line 5 [Figure 11 shows possible results of calculation 120 that could be displayed 250 to a user in an embodiment of the invention. For a first retailer, e.g. Supermarket 1 , various costs of the shopping list are displayed 252… When the user opens up the calculation popup by clicking a 'Calculate Totals' button from either their cart or the search/browse page, a web request is sent to the API with a JSON representation of their shopping cart attached. The logic in the API first queries to primary database to identify all active suppliers present in the Suppliers table. For each supplier in this table a sequence of calculations are executed to determine what values to return to the client website to present alongside the radial savings strength display… the total of the shopping list is displayed in 258, which is the total standard cost less the savings. The result of calculation 120 for each retailer can be displayed to a user in a side by side comparison in this embodiment… The user can thus see the calculated comparison between the alternate retailers and in this embodiment can decide on which retailer to proceed with a purchase from. The cheapest retailer based on the totals 258 and 268 may be highlighted to the user.] in view of page 12, line 24 to page 13, line 25 [modules]); and process, via the unified cart and payment integration module, a transaction to purchase the one or more items from the one or more stores responsive to aggregating the normalized item information into the unified cart (Fig. 6; page 29, line 30 to page 30, line 30 [the user will ideally have the ability to send their completed lists from the client website to a 3rd party supplier website. When the user has completed constructing their shopping cart and navigated to either the split shop checkout or supplier specific checkout the user can select to send the list to a supplier/supermarket… One request is performed for each of the cart items in the users active cart, completing the cart conversion process from the system cart to 3rd party supplier cart. They can then pay the retailer/s for their items and have them delivered.], page 31, line 16 to page 32, line 11 [In option 142 once the user selects a single store to purchase the list from (which may default to the lowest priced store) the shopping list is converted into a shopping cart in the selected store for delivery to the user. This occurs by the web server taking the user to the retailer's shopping cart website and injecting the shopping list and delivery details into the retailer's shopping cart. In option 144 the user selects to split the shopping lists between two or more stores to purchase. Conveniently this could be the split shopping determined above. The system depending on the implementation may, or may not, include delivery costs, if any, in the calculations. The respective shopping lists would then be generated for the respective stores for delivery to the user. This occurs by the web server taking the user to the retailers' shopping cart websites and injecting the respective shopping list and delivery details into the respective retailers' shopping carts. In option 146 the user selects one or more stores to purchase from and the respective shopping lists are generated for the respective stores for the user to collect. There are two options here, one is for the web server to inject the respective shopping list into the respective retailers' shopping carts and taking the user to the retailers' shopping cart websites where the user will collect the items from the retailer if a "click and collect" option is available from the store. The other option is for the respective shopping lists to be provided for the user to manually shop at each retailer using the respective shopping list.] in view of page 12, line 24 to page 13, line 25 [modules]). While Abboud discloses processing a transaction to purchase the one or more items, Abboud does not explicitly disclose processing a payment in one transaction to purchase the one or more items. However, in the field of shared universal shopping carts (abstract), Bhosle et al., hereinafter Bhosle, teaches a shared virtual shopping cart to enable information sharing between multiple disparate electronic marketplaces (e.g., network-accessible merchant sites) that allows a user to add a plurality of items from a plurality of merchants into a shared cart and when the user is finished shopping, the user can purchase the items in the cart in a single transaction (col. 2, line 66 to col. 3, line 16). The system of Bhosle is applicable to the system of Abboud as they share characteristics and capabilities, namely, they are directed to universal shopping carts. It would have been obvious to one of ordinary skill in the art at the time of filing to modify the transaction as taught by Abboud with the payment in one transaction as taught by Bhosle. One of ordinary skill in the art at the time of filing would have been motivated to expand the system of Abboud in order to allow the user to purchase the items in the cart in a single transaction so the universal shopping cart can transmit payment information to the merchants associated with the respective purchased items to initiate fulfillment of the items to the user and store the transaction details (col. 2, line 66 to col. 3, line 16). Regarding claim 9, Abboud in view of Bhosle teaches the system of claim 8, Abboud further discloses wherein the memory further stores instructions that, when executed by the processor, causes the processor to distribute, via an order segmentation module, the unified cart into individual orders to the one or more stores (Fig. 6; page 29, line 30 to page 30, line 30 [the user will ideally have the ability to send their completed lists from the client website to a 3rd party supplier website. When the user has completed constructing their shopping cart and navigated to either the split shop checkout or supplier specific checkout the user can select to send the list to a supplier/supermarket… One request is performed for each of the cart items in the users active cart, completing the cart conversion process from the system cart to 3rd party supplier cart. They can then pay the retailer/s for their items and have them delivered.], page 31, line 16 to page 32, line 11 [In option 142 once the user selects a single store to purchase the list from (which may default to the lowest priced store) the shopping list is converted into a shopping cart in the selected store for delivery to the user. This occurs by the web server taking the user to the retailer's shopping cart website and injecting the shopping list and delivery details into the retailer's shopping cart. In option 144 the user selects to split the shopping lists between two or more stores to purchase. Conveniently this could be the split shopping determined above. The system depending on the implementation may, or may not, include delivery costs, if any, in the calculations. The respective shopping lists would then be generated for the respective stores for delivery to the user. This occurs by the web server taking the user to the retailers' shopping cart websites and injecting the respective shopping list and delivery details into the respective retailers' shopping carts. In option 146 the user selects one or more stores to purchase from and the respective shopping lists are generated for the respective stores for the user to collect. There are two options here, one is for the web server to inject the respective shopping list into the respective retailers' shopping carts and taking the user to the retailers' shopping cart websites where the user will collect the items from the retailer if a "click and collect" option is available from the store. The other option is for the respective shopping lists to be provided for the user to manually shop at each retailer using the respective shopping list.] in view of page 12, line 24 to page 13, line 25 [modules]). Regarding claim 10, Abboud discloses the system of claim 1. While Abboud discloses wherein the memory further stores instructions that, when executed by the processor, causes the processor to provide updates to the user (page 14, line 22 to page 15, line 2 [sending of mobile notification messages, for example text or sms messages, as required depending on user alert settings. For example, if enabled, a user may have requested to be alerted when a particular product comes on sale]), Abboud does not explicitly disclose providing, via an inventory module, real-time updates to the user on at least one of: an inventory, an availability, and a delivery status of the one or more items. However, in the field of shared universal shopping carts Bhosle teaches a monitor module that may query the merchant or another merchant to determine an available quantity of the item and/or a current price of the item at the merchant or another merchant. The monitor module 720 may perform the queries periodically or randomly to update the current price and or available quantity (Fig. 12; col. 16, lines 49-54 and col 17, lines 1-15). The system of Bhosle is applicable to the system of Abboud as they share characteristics and capabilities, namely, they are directed to universal shopping carts. It would have been obvious to one of ordinary skill in the art at the time of filing to modify the alerts as taught by Abboud with the real-time inventory updates as taught by Bhosle. One of ordinary skill in the art at the time of filing would have been motivated to expand the system of Abboud in order to monitor items from a merchant such as item availability and updating the current price (col. 10, lines 57-65 and col. 16, lines 49-54). Examiner’s Comment The prior art made of record and not relied upon is considered pertinent to applicant's disclosure: Reference U of the Notice of References Cited Non Patent Literature “Buying in Multiple Stores: Shopping Strategies Beyond Price Promotions and Their Effects on Store Competition” discloses shoppers shopping at a plurality of stores for items on their shopping list. Conclusion Any inquiry concerning this communication or earlier communications from the examiner should be directed to LINDSEY B SMITH whose telephone number is (571)272-0519. The examiner can normally be reached Monday - Friday 9-6 EST. Examiner interviews are available via telephone, in-person, and video conferencing using a USPTO supplied web-based collaboration tool. To schedule an interview, applicant is encouraged to use the USPTO Automated Interview Request (AIR) at http://www.uspto.gov/interviewpractice. If attempts to reach the examiner by telephone are unsuccessful, the examiner’s supervisor, Jeff Smith can be reached at 571-272-6763. The fax phone number for the organization where this application or proceeding is assigned is 571-273-8300. Information regarding the status of published or unpublished applications may be obtained from Patent Center. Unpublished application information in Patent Center is available to registered users. To file and manage patent submissions in Patent Center, visit: https://patentcenter.uspto.gov. Visit https://www.uspto.gov/patents/apply/patent-center for more information about Patent Center and https://www.uspto.gov/patents/docx for information about filing in DOCX format. For additional questions, contact the Electronic Business Center (EBC) at 866-217-9197 (toll-free). If you would like assistance from a USPTO Customer Service Representative, call 800-786-9199 (IN USA OR CANADA) or 571-272-1000. LINDSEY B. SMITH Examiner Art Unit 3688 /LINDSEY B SMITH/Examiner, Art Unit 3688 /Jeffrey A. Smith/Supervisory Patent Examiner, Art Unit 3688
Read full office action

Prosecution Timeline

Sep 16, 2024
Application Filed
Jan 07, 2026
Non-Final Rejection — §101, §102, §103
Jan 28, 2026
Applicant Interview (Telephonic)
Feb 02, 2026
Examiner Interview Summary

Precedent Cases

Applications granted by this same examiner with similar technology

Patent 12561729
METHOD, SYSTEM, AND ARTICLE OF MANUFACTURE FOR MANAGING CLICK AND DELIVERY SHOPPING EVENTS
2y 5m to grant Granted Feb 24, 2026
Patent 12541783
METHOD, SYSTEM, AND ARTICLE OF MANUFACTURE FOR COMPUTER SEARCH ENGINE RANKING FOR ACCESSORY AND SUB-ACCESSORY REQUESTS
2y 5m to grant Granted Feb 03, 2026
Patent 12536580
SYSTEM FOR PROVIDING DIGITAL MAP CORRECTIONS
2y 5m to grant Granted Jan 27, 2026
Patent 12450647
METHOD FOR NAVIGATING WITHIN AND DETERMINING NON-BINARY, SUBJECTIVE PREFERENCES WITHIN VERY LARGE AND SPECIFIC DATA SETS HAVING OBJECTIVELY CHARACTERIZED METADATA
2y 5m to grant Granted Oct 21, 2025
Patent 12374075
METHOD AND SYSTEM FOR AUTOMATED VIDEO GENERATION FROM IMAGES FOR E-COMMERCE APPLICATIONS
2y 5m to grant Granted Jul 29, 2025
Study what changed to get past this examiner. Based on 5 most recent grants.

AI Strategy Recommendation

Get an AI-powered prosecution strategy using examiner precedents, rejection analysis, and claim mapping.
Powered by AI — typically takes 5-10 seconds

Prosecution Projections

1-2
Expected OA Rounds
52%
Grant Probability
99%
With Interview (+54.3%)
3y 3m
Median Time to Grant
Low
PTA Risk
Based on 258 resolved cases by this examiner. Grant probability derived from career allow rate.

Sign in with your work email

Enter your email to receive a magic link. No password needed.

Personal email addresses (Gmail, Yahoo, etc.) are not accepted.

Free tier: 3 strategy analyses per month