US20160180436A1 - Method and system for identifying and displaying shopping deals - Google Patents

Method and system for identifying and displaying shopping deals Download PDF

Info

Publication number
US20160180436A1
US20160180436A1 US15/058,495 US201615058495A US2016180436A1 US 20160180436 A1 US20160180436 A1 US 20160180436A1 US 201615058495 A US201615058495 A US 201615058495A US 2016180436 A1 US2016180436 A1 US 2016180436A1
Authority
US
United States
Prior art keywords
additional content
user
web page
deal
virtual layer
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US15/058,495
Inventor
John Arana
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
REVIZER TECHNOLOGIES Ltd
Original Assignee
REVIZER TECHNOLOGIES Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by REVIZER TECHNOLOGIES Ltd filed Critical REVIZER TECHNOLOGIES Ltd
Priority to US15/058,495 priority Critical patent/US20160180436A1/en
Publication of US20160180436A1 publication Critical patent/US20160180436A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0623Item investigation
    • G06Q30/0625Directed, with specific intent or strategy
    • G06Q30/0629Directed, with specific intent or strategy for generating comparisons
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/33User authentication using certificates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6227Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0207Discounts or incentives, e.g. coupons or rebates
    • G06Q30/0222During e-commerce, i.e. online transactions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/0601Electronic shopping [e-shopping]
    • G06Q30/0641Shopping interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2145Inheriting rights or properties, e.g., propagation of permissions or restrictions within a hierarchy
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2147Locking files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • G06F9/44526Plug-ins; Add-ons

Definitions

  • the present invention generally relates to techniques for identifying and displaying shopping deals on the World Wide Web.
  • coupon codes that can be used by consumers at the merchant's e-commerce web site.
  • the electronic coupon code allows the buyer to save money when making a purchase at the shopping site.
  • the coupon codes are typically entered into the appropriate fields of a merchant shopping site during the check-out process. By entering the coupon code, certain discounts or offers are then processed by the merchant site.
  • coupon codes There is great interest in such coupon codes by normal consumers on the internet.
  • the problem is that consumers want to use these coupon codes, but they often do not know if they exist or how to find them.
  • the conventional approach to identifying the existence of such coupon codes is for the consumers to navigate to a specialized coupon search site, and to perform a search at that specialized coupon search site to identify the existence of available coupon codes.
  • the problem is that many internet consumers often do not know about these coupon search sites.
  • even the consumers that know about these coupon search sites must take the time and effort to search these sites.
  • many consumers may not know upfront what they want to buy in a given shopping session, and hence may not recognize and/or know upfront what to search for at the coupon site.
  • an improved approach for implementing searching of shopping deals and coupons on the internet The user's internet activity is checked to identify deals that may be of interest to that user. In some embodiments, this check of the user's internet activity is from identifying the URL of the web page being viewed by the user or by searching the web page for information relating to possible deals.
  • a virtual layer is used to provide web page components to implement the deals display to perform the searching and deal display activities. By using the virtual layer approach of embodiments of the present invention, this allows the shopping deals to be placed on and overlaid with the web page from any host web page.
  • FIG. 1A illustrates an example browser window for presenting information from a shopping web site.
  • FIG. 1B illustrates the example browser window of FIG. 1A in which identified shopping deals are also displayed in conjunction with the shopping web site according to an embodiment of the invention.
  • FIG. 2 illustrates an example architecture for implementing searching and display of shopping deals according to an embodiment of the invention.
  • FIG. 3 illustrates a flowchart of an approach for searching and display of shopping deals according to an embodiment of the invention.
  • FIG. 4 illustrates a flowchart of an approach for searching for shopping deals at a server according to an embodiment of the invention.
  • FIG. 5 illustrates a flowchart of an approach for using virtual layer software to perform search and display of shopping deals according to an embodiment of the invention.
  • FIG. 6 provides an illustrative example of a shopping deals display according to an embodiment of the invention.
  • FIG. 7 illustrates a flowchart of an approach for automatically populating a shopping web site with a coupon code according to an embodiment of the invention.
  • FIG. 8 depicts a computerized system on which embodiments of the invention may be implemented.
  • the user's internet activity is checked to identify deals that may be of interest to that user.
  • this check of the user's internet activity is from identifying the URL of the web page being viewed by the user or by searching the web page for information relating to possible deals.
  • a virtual layer is used to provide web page components to implement the deals display to perform the searching and deal display activities.
  • FIG. 1A illustrates an example of a web browser 102 that has been used by a consumer to navigate to a shopping web site (illustratively presented as “www.shopping_site.com” in the URL section 110 of the browser 102 ).
  • a list of products and/or prices is displayed to the user. This display of products and/or prices may be displayed in response to a search performed by user. The products and/or prices may also be displayed automatically by the user navigating to certain pages within the domain of the shopping site.
  • These items of shopping information are native to the host web page and are presented to the user based upon some sort of selection criteria by the owner or operator of the shopping site.
  • shopping deals may be presented to the user which relate in some way to the web page or contents of the web page being displayed to the user.
  • These shopping deals may be displayed to the user even if the deal information being displayed is not native to the host web page currently being provided by the shopping site.
  • FIG. 1B shows an example of a the web browser 102 where the displayed web page 112 now includes and has been overlaid with an additional display area 120 for shopping deal information.
  • the deals display area 120 is in the form of a drop down menu structure having one or more deals that are displayed.
  • Section 122 of deals display 120 provides detailed information for a specific deal, which in this case includes an indication of a coupon code 126 that is applicable to provide a discount to purchases at the shopping site currently being displayed in the browser window 108 .
  • the deals display 120 can be shown to the user even if the host web page 112 does not natively include that information or if the web site operator or owner is not the same entity as the provider of the deals display area 120 .
  • the deals display area 120 can be displayed within browser window 108 to display any suitable type of deals information, e.g., coupon information and coupon codes for products being sold through web site 112 .
  • This deals display are 120 can be provided whether or not the host web site natively provides functionality to display this information.
  • virtual layer software is used to allow third party content (e.g., the deals display area 120 displaying deals and coupon information) to be displayed in conjunction with the host web page from the primary shopping site.
  • the advantage of this approach is that the deals display area 120 that is implemented using virtual layers can be displayed and overlaid onto the web page for any primary shopping site. This is in sharp contrast to conventional approaches that require the user to separately visit a specialized coupon web site and perform a directed search for deals/coupons that pertain to the shopping site.
  • a virtual layer plug-in is installed within web browser 102 to permit third party content to be displayed onto a primary site web page.
  • the virtual layer plug-in is an application running on the client device that enables virtual editing of the appearance or functionality of an existing World Wide Web page by making the modifications on a virtual layer that is superimposed onto the web page.
  • the virtual layer essentially allows a foreign entity or a user to include or enhance content that is utilized or displayed onto a web page, even if the web page itself does not natively provide such functionality to allow a third party to add or enhance content on the web page.
  • the virtual layer plug-in can be used to instantiate “extensions” onto the web page, including any scripts or other programs that may need to be executed on the web page to allow searching of secondary sites and display of additional search results within the browser window 108 .
  • the virtual layer plug-in may be used to instantiate a javascript program to identify search terms on the primary shopping site and to send the search term for searching at a remote server to identify deals/coupons for display.
  • the virtual layer plug-in may also be used to instantiate a Flash-based program to display image or video based search results from the secondary sites.
  • the virtual layer extension can be configured to check section 110 of the browser 102 to identify the URL of the shopping site 112 , and provide that identified URL as a search term to a deals database at a remote server.
  • the server will send any identified deal information for that URL back to the browser 102 to be displayed within deals display area 120 .
  • the deals display area 120 may be implemented to display the deals/coupons in any suitable display format or display type.
  • FIG. 2 shows an architecture of a system 200 for identifying and displaying shopping deals according to some embodiments of the invention.
  • System 200 may include one or more users at one or more user stations 204 at client 206 that access a web browser 202 to perform internet shopping.
  • the users at user station 102 correspond to any individual, organization, or other entity that uses system 200 for performing some type of shopping or buying on the internet.
  • the user stations 204 could be implemented using any suitable wired or wireless platform.
  • user station 204 may be implemented as desktop computer, laptop computer, wireless computing pad, cellular phone, or a web terminal.
  • the user station 204 interacts with a server 216 to identify and display deals to the user within the web browser 202 .
  • the server 216 is a network-accessible site that facilitates access to a database 214 containing a listing of available shopping deals pertaining to web sites accessed by a user at the user station 204 .
  • a search engine 212 at the server 216 will access the database 214 to search for any shopping deals that pertain or are relevant to the user's internet activity.
  • the information within the deals database 214 may be provided from any suitable source.
  • the information within deals database 214 could be obtained from an external deal consolidator 220 , where the deal consolidator 220 is a specialized service or web site that identifies and tracks different shopping deals for a variety of different vendors, merchants, products, domains, and/or web sites.
  • the deal consolidator 220 may maintain a deals listings database 218 to track the consolidated shopping deals. As needed or on an incremental basis, some or all of the data within the deals listing database 218 at the deals consolidator 220 may be transferred to the deals database 214 that is maintained by the server 216 .
  • the operator of server 216 may also natively generate or provide the information within the deals database 214 .
  • the operator of server 216 may perform his/her consolidation of shopping deals as input to the deals database 214 , rather than seeking this information from an external deals consolidator 220 .
  • the operator of server 216 may obtain deals information from the deals consolidator 220 , but supplement this information with its own natively generated shopping deals data.
  • the server 216 could collect user feedback about the deals and add that information to the deals database 214 in combination with data about those deals from deal consolidator 220 .
  • One practical reason for the server 216 to collect this type of feedback information from users is so that the feedback can be used by the search engine 212 to filter or sort the deals data from database 214 before sending that data for display to the web browser 202 .
  • FIG. 3 shows a flowchart of actions taken at the user station to display the shopping deals information to the user.
  • the user performs some sort of internet-related activity that may pertain to a shopping deal.
  • the user may use a web browser to navigate to a shopping site web page, where the web page includes or relates to a shopping deal that is being tracked by a deals database.
  • the web page comprises a page provided by a merchant at an internet shopping site, where the web page identifies products that are being sold by the merchant.
  • the web page does not need to be generated by a dedicated shopping site run by a merchant to fall within the scope of some embodiments of the invention.
  • the web page within the scope of embodiments of the invention can simply relate to any web page that corresponds to a deal being tracked by the deals database.
  • a non-limiting example is a product review web site where the site only provides product reviews but which specifically does not sell any of the reviewed products.
  • the user may be very interested in knowing about product deals or coupons for the products being reviewed at that site, even if the user needs to navigate to another site (e.g., a merchant-run shopping site) to actually make use of the deal or coupon.
  • search criteria for deals/coupons are identified.
  • the search criteria can be any criteria or search term that is used to search for shopping deals appropriate to the activity of the user.
  • the search criteria are based upon the URL of the web page that is currently being viewed by the user. In this approach, the URL section of the web browser would be accessed to identify the current URL of the web page.
  • the identified search criteria are based upon the contents of the page being viewed by the user.
  • One approach for implementing this approach is to scrape the web page to identify key words that may be associated with specific products, merchants, deals, and/or coupons.
  • Yet another possible embodiment is to allow the user to provide a search term, e.g., by typing the search term within a menu bar for the deals display.
  • the search criteria are sent to the server to perform a search of the available deals.
  • displayable deal information is received from the server.
  • that deal information is then displayed to the user.
  • the deal information is displayed in a drop down menu structure as shown in FIG. 1B , where the deals display portion is overlaid over the host web page, e.g., a host web page that does not natively display this shopping deals information.
  • FIG. 4 shows a flowchart of actions taken at the server to identify shopping deals to be displayed at the user station.
  • the search criteria are received at the server from the user station.
  • the search criteria can be any criteria or search term that is used to search for deals appropriate to the activity of the user.
  • a search is performed within the deals database using the received search criteria.
  • the search can be a search for specific words or keys within the deals database.
  • associations may be created for the data within the deals database, so that a search can be performed using information that is associated with a deal.
  • the deals within the deals database can be associated with: (a) a deals description; (b) coupon code; (c) expiration date; (d) URL/domain/merchant; (e) deal provider; (f) deal ratings or reviews; and/or (g) deal amounts or discount values.
  • the received search criteria would be matched against these associations to identify the set of deals that should be displayed to the user.
  • the received search term is the current URL of the web page that is being viewed by the user.
  • One or more shopping deals in the deals database may be associated with that URL or the domain associated with that URL. If so, then those deals associated with the URL from the received search criteria would be identified from the deals database.
  • a typical use case scenario would be if the URL pertains to the domain of a specific merchant, and in which the associative searching would result in shopping deals corresponding to that specific merchant being identified and displayed to the user.
  • the received search term may be the product name, product type, or vendor product identifier numbers. There may be shopping deals within the deals database that are associated with these types of search terms, and which would be identified using those associations.
  • a use case scenario may be if the user is browsing at a shopping site for new mobile telephones, and the associative searching for a given product type (e.g., “mobile telephone”) would result in shopping deals from vendors that sell mobile telephones or mobile services.
  • sorting and/or filtering of those deals may occur at 404 .
  • Any suitable type of sorting can be performed at 404 , and the sorting may be performed using any suitable sorting or ordering criteria.
  • the deals can be sorted by the most recent deal, the greatest discount, and/or by the feedback ratings of customers.
  • the displayed deals can be sorted based upon the deals that provide the greatest profit to the operator of the deals server, e.g., by identifying deals which provide the largest commission payment or percentage from the merchant to the server operator upon a purchase by the consumer.
  • Filtering of the deals can also be performed using any suitable filtering criteria, e.g., filtering by deal expiration/upload date, discount levels/amounts, and/or by minimum feedback ratings.
  • the deal information is sent to the user station to be displayed in the web browser.
  • the deal information may be displayed within the user's web browser on a virtual layer over the host web page, where a virtual layer plug-in is installed at the user station to implement the virtual layers.
  • a virtual layer server is used to provide the initial configurations for the virtual layer plug-in that allows the third party deals to be displayed at the client.
  • the virtual layer software is configured to be superimposed onto web sites within the client's web browser, where the virtual layer include “extensions” that provide additional functionality or content to the built-in capabilities of a given web page.
  • the approach begins with configuration for the extensions to perform deal display at the client.
  • An identification is made of the parameters and settings for the virtual layer software that need to be configured to allow for deal display on web sites.
  • the different web sites may have fields and sections that need sot be scraped to identify search terms for searching of the deals. Therefore, the specific configurations that need to be implemented for the different web sites or domains are identified and built into the virtual layer software.
  • the virtual layer plug-in extension is configured and/or modified as appropriate to implement the abilities discussed above.
  • the virtual layer software is made available to be downloaded by users to the client computers to allow the searching and display of shopping deals. Thereafter, at 506 , the deal information is processed and displayed on a native web page using the virtual layer software.
  • YLML Yontoo Layer Markup Language
  • HTML which is a document markup language that is sometimes used as an application markup language simply because it is widely supported and the industry norm
  • YLML is a true application markup language that is different from HTML in that it has executable nodes and does not follow the same DOM structure that HTML does.
  • YLML is also different from other XML languages in that it does not use code-behind. YLML does not require a separate file with logic source code, nor does it have imbedded logic using external languages.
  • YLML has native executable logic tags that eliminate the requirement for other languages to be imbedded into tags or used for code-behind.
  • YOM An object model that works in conjunction with YLML is also employed, which is referred to herein as a YOM or Yontoo Object Model.
  • a DOM can use only the information that exists in the document it is referencing to create a set of objects that are used to access the data within the HTML.
  • the YOM on the other hand, is a single template that has an established structure that enables access to any information, data or content accessible through a computer system, including, but not restricted to the World Wide Web, databases, data stores, a client's computer or other content sources.
  • the YOM's established structure enables it to access specific content that exists on the World Wide Web, a database, a data store or any other location connected to a networked computer system without requiring content beyond the scope of exactly what is needed to be loaded.
  • This enables the YOM to create objects within the model using a JIT (just in time) method, as opposed to creating the entirety of the model when the incoming file is parsed as is the case with the use of a DOM.
  • YOM YOM
  • DOM DOM
  • the extensions for performing deal display are implemented using a combination of the YLML, the YOM and the virtual layer system to additional content and functionality to an existing web page.
  • the extensions may be implemented using any suitable programming and/or scripting language.
  • a Flash-based approach maybe utilized to display the search results from deal search site.
  • non-flash-based approaches may also be used to display the search results as well.
  • the method for configuring a virtual layer includes aggregating objects corresponding to the plurality of layer extensions and corresponding to the URL using a layer markup language.
  • the step of aggregating the objects is executed through a layer definition server unit adaptable to the layer markup language may also include a plurality of built-in logical tags for avoiding a need of writing scripts for enabling objects for executing events.
  • the method for configuring an editable virtual layer in an internet browsing environment further includes loading a pre-rendered layer markup language module, returning the layer markup language to the virtual layer software sub-unit including a plurality of layer extensions present on the URL and having the virtual layer software sub-unit executing initialization routines in the layer markup language.
  • the rendering functionality within the virtual layer plug-in recognizes that it needs to add the drop down deal results window to the host web page, which is implemented in some embodiments by using Javascript to augment the DOM/YOM of the existing host web page.
  • the correct location on the host web page is identified using the markup language items (XML or YLML) that was downloaded as part of the extension data, and used to inject the Javascript/Flash player at the appropriate location on the host web page.
  • the layer definition server may maintain a mapping structure to track the specific extensions to load for a given user and/or application.
  • the user may be associated with different applications that use the virtual layer plug-in, and the mappings identify which specific application extensions should be injected for that specific user. When appropriate identified, the extensions would be installed onto the virtual layer of the web page for the user.
  • FIG. 6 shows an example of a deals display structure 600 according to some embodiments of the invention.
  • Deal display structure 600 in this embodiment is formed as a drop down menu that displays one or more shopping deals within its display area.
  • the shopping deal(s) are displayed in a deal display section 610 that includes information about a displayed shopping deal.
  • the displayed information may include information about the amount or type of discounts provided by the shopping deal in question.
  • the displayed information also includes the display of a coupon code 620 that is used to obtain the stated shopping discount.
  • a control/interface element may be provided to allow user selection to display additional shopping deals.
  • button 612 is provided if the deal display section 610 is insufficient in size to display all of the shopping deals, and in which clicking of this button 612 by a user will cause additional deals to be displayed in the deal display section 610 of deals display structure 600 .
  • the deals display structure 600 in some embodiments may include a search interface 602 to user users to perform directed searches of the deals database.
  • Search interface 602 includes a field which allows the user to insert a search term. This search term can be sent to the server to perform the search of the deals database, with search results returned back to the client to be displayed in the deal display section 610 .
  • Controls 606 and 608 provide one example of an approach that can be taken to allow users to rank or rate deals.
  • 606 is a “thumbs up” button that allows the user to rate the deal with a positive score
  • 608 is a “thumbs down” button that allows the user to provide a negative rating for the deal.
  • These feedback ratings are sent to the server and consolidated with ratings from other users.
  • One possible reason to obtain these ratings is to use the feedback ratings to rank or sort the deals that are displayed to users.
  • the feedback ratings from multiple users for a particular deal can be used in a collective manner to obtain overall feedback ratings for the shopping deals.
  • the feedback ratings for a particular user can be used to build a profile of the types of shopping deals that would be of interest to that particular user. While the feedback interfaces 606 and 608 of FIG. 6 are relatively simplistic in nature, it is clear that the scope of some embodiments of the invention may of encompass more complicated and granular rating and scoring interfaces that allows for detailed levels of review or scoring to be provided by users.
  • Coupon code 620 may be implemented as a clickable control interface that facilitates usage of the coupon code value for user purchases. According to a first embodiment, user selection of the interface element 620 results in the coupon code value being copied to a cache or memory area, so that the user can then “paste” that value into the appropriate field of a check-out web page of a shopping site so that the coupon code can be applied to obtain the designated discount.
  • user selection of the interface element 620 causes the coupon code to be auto-populated into the appropriate fields of the check-out page of the shopping site.
  • FIG. 7 shows a flowchart of actions that may be taken in this type of embodiment.
  • the user selects the displayed deal, e.g., by clicking upon the coupon code 620 for that shopping deal.
  • the browser will navigate to the appropriate URL associated with that shopping deal.
  • the interface element can be associated with a particular URL for purchasing a product or for applying the discount.
  • the check-out page of the shopping site can be associated with the shopping deal, so that selection or clicking of the coupon code causes navigation to the check-out page of the web site.
  • one or more values are auto-populated with appropriate values.
  • a coupon or discount portion of the check-out page can be automatically populated or injected with the coupon code.
  • Other values may also be filled in at this point.
  • the coupon code is associated with a specific product, product identifier, or price value, then that value can be used to auto-populate the appropriate fields in the check-out page.
  • auto-population of the check-put page fields One way is perform the preliminary action of researching the different fields and positions of the check-out page for merchant web sites, and to configure the virtual layer software to insert the coupon codes and/or other values into those pre-recognized fields.
  • Another possible approach is to scrape the shopping site page to search for recognized field identifiers, and to insert the code values are necessary into the recognized fields.
  • One approach is to detect coupon code inputs on pages after coupon selection, and to then auto-inject these codes into the appropriate fields on the shopping site page.
  • Some embodiments may be implemented to display deals according to certain additional user-specific criteria.
  • the displayed deal could be based on the user's current location, e.g., which is identified by the user's IP address or by a location specified by the user.
  • the displayed deal can be a “daily” deal, which lists current, up-to-date deals that are recent and/or relatively “hot” or recommended by other users.
  • any or all of the deals may be printed by the user, according to some embodiments of the invention.
  • the user controls the printing of the deal, e.g., to create/print a physical coupon that can be used in a brick-and-mortar store that is associated with the deal.
  • the printable coupon can be identified using any suitable approach, e.g., as described above with respect to URL, searching, and/or based on location.
  • comparisons may be performed between different ones of the identified deals. For example, comparisons may be performed between multiple deals based on price, discount level, location, and/or best match. As before, the deals to be compared may be identified using any suitable approach, e.g., as described above with respect to URL, searching, and/or based on location.
  • one or more links may be added or associated with the coupon/deal code inputs, which directs the user to a deals site in a new tab/window. This direction of the user to a new tab/window may be performed with the search already made.
  • selection of the link may cause a display of the user coupon/deal codes on the page, which may serve to increase the chance of a user selecting a coupon, e.g., if the deals menu is currently minimized.
  • user selection of a coupon/deal from the deals menu causes a redirection to occur through a deal provider site, e.g., a redirection through the deal provider site to the user's previous site or to another shopping site.
  • This action sets a cookie indicative of the redirection.
  • Such tracking of redirections by users may be useful for many purposes. For example, there may be a financial arrangement to pay the provider of the deals menu for coupons/deals usage by users, and this type of tracking is useful for identifying the quantity of such users that take advantage of the coupons/deals. If the compensation is on a per-user basis, then this tracking information can be used to determine the amount of compensation to be paid by the deal provider for the users that have been directed to the coupons/deals.
  • FIG. 8 is a block diagram of an illustrative computing system 1400 suitable for implementing an embodiment of the deals display of the present invention.
  • Computer system 1400 includes a bus 1406 or other communication mechanism for communicating information, which interconnects subsystems and devices, such as processor 1407 , system memory 1408 (e.g., RAM), static storage device 1409 (e.g., ROM), disk drive 1410 (e.g., magnetic or optical), communication interface 1414 (e.g., modem or Ethernet card), display 1411 (e.g., CRT or LCD), input device 1412 (e.g., keyboard), and cursor control.
  • processor 1407 e.g., system memory 1408 (e.g., RAM), static storage device 1409 (e.g., ROM), disk drive 1410 (e.g., magnetic or optical), communication interface 1414 (e.g., modem or Ethernet card), display 1411 (e.g., CRT or LCD), input device 1412 (e.g., keyboard), and cursor
  • computer system 1400 performs specific operations by processor 1407 executing one or more sequences of one or more instructions contained in system memory 1408 .
  • Such instructions may be read into system memory 1408 from another computer readable/usable medium, such as static storage device 1409 or disk drive 1410 .
  • static storage device 1409 or disk drive 1410 may be used in place of or in combination with software instructions to implement the invention.
  • hard-wired circuitry may be used in place of or in combination with software instructions to implement the invention.
  • embodiments of the invention are not limited to any specific combination of hardware circuitry and/or software.
  • the term “logic” shall mean any combination of software or hardware that is used to implement all or part of the invention.
  • Non-volatile media includes, for example, optical or magnetic disks, such as disk drive 1410 .
  • Volatile media includes dynamic memory, such as system memory 1408 .
  • Computer readable media includes, for example, floppy disk, flexible disk, hard disk, magnetic tape, any other magnetic medium, CD-ROM, any other optical medium, punch cards, paper tape, any other physical medium with patterns of holes, RAM, PROM, EPROM, FLASH-EPROM, any other memory chip or cartridge, or any other medium from which a computer can read.
  • execution of the sequences of instructions to practice the invention is performed by a single computer system 1400 .
  • two or more computer systems 1400 coupled by communication link 1415 may perform the sequence of instructions required to practice the invention in coordination with one another.
  • Computer system 1400 may transmit and receive messages, data, and instructions, including program, i.e., application code, through communication link 1415 and communication interface 1414 .
  • Received program code may be executed by processor 1407 as it is received, and/or stored in disk drive 1410 , or other non-volatile storage for later execution.
  • Computer system 1400 may communicate through a data interface 1433 to a database 1432 on an external storage device 1431 .

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Development Economics (AREA)
  • Strategic Management (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • General Business, Economics & Management (AREA)
  • General Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Game Theory and Decision Science (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

A virtual layer is used to provide web page components to implement the deals display to perform the searching and deal display activities. By using the virtual layer approach of embodiments of the present invention, this allows the shopping deals to be placed on and overlaid with the web page from any host web page.

Description

    CROSS-REFERENCE TO RELATED APPLICATIONS
  • The present application is a continuation of U.S. application Ser. No. 13/109,879, filed on May 17, 2011, which are hereby incorporated by reference in its entirety. The present application is related to U.S. patent application Ser. No. 12/455,797, filed on Jun. 4, 2009, which are hereby incorporated by reference in its entirety.
  • FIELD
  • The present invention generally relates to techniques for identifying and displaying shopping deals on the World Wide Web.
  • BACKGROUND
  • In recent years, there has been an explosive growth of the internet as a forum for e-commerce by consumers. Many consumers now routinely shop and buy items at various merchant web sites on the internet. In fact, there are so many different shopping sites on the internet that it has become very difficult for a typical consumer to identify the best shopping sites and deals that are available and are of interest to that consumer.
  • To stimulate shopper interest, many merchants have created and distributed coupon codes that can be used by consumers at the merchant's e-commerce web site. Like normal coupons used by traditional buyers at a brick-and-mortar store, the electronic coupon code allows the buyer to save money when making a purchase at the shopping site. To use the coupon code, the coupon codes are typically entered into the appropriate fields of a merchant shopping site during the check-out process. By entering the coupon code, certain discounts or offers are then processed by the merchant site.
  • There is great interest in such coupon codes by normal consumers on the internet. The problem is that consumers want to use these coupon codes, but they often do not know if they exist or how to find them. The conventional approach to identifying the existence of such coupon codes is for the consumers to navigate to a specialized coupon search site, and to perform a search at that specialized coupon search site to identify the existence of available coupon codes. The problem is that many internet consumers often do not know about these coupon search sites. In addition, even the consumers that know about these coupon search sites must take the time and effort to search these sites. Moreover, many consumers may not know upfront what they want to buy in a given shopping session, and hence may not recognize and/or know upfront what to search for at the coupon site.
  • Therefore, there is a need for an improved approach to perform searching and display of internet shopping deals and coupons to consumers.
  • SUMMARY
  • According to some embodiments of the invention, disclosed is an improved approach for implementing searching of shopping deals and coupons on the internet. The user's internet activity is checked to identify deals that may be of interest to that user. In some embodiments, this check of the user's internet activity is from identifying the URL of the web page being viewed by the user or by searching the web page for information relating to possible deals. A virtual layer is used to provide web page components to implement the deals display to perform the searching and deal display activities. By using the virtual layer approach of embodiments of the present invention, this allows the shopping deals to be placed on and overlaid with the web page from any host web page.
  • Further details of aspects, objects, and advantages of the invention are described below in the detailed description, drawings, and claims. Both the foregoing general description and the following detailed description are exemplary and explanatory, and are not intended to be limiting as to the scope of the invention.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • FIG. 1A illustrates an example browser window for presenting information from a shopping web site.
  • FIG. 1B illustrates the example browser window of FIG. 1A in which identified shopping deals are also displayed in conjunction with the shopping web site according to an embodiment of the invention.
  • FIG. 2 illustrates an example architecture for implementing searching and display of shopping deals according to an embodiment of the invention.
  • FIG. 3 illustrates a flowchart of an approach for searching and display of shopping deals according to an embodiment of the invention.
  • FIG. 4 illustrates a flowchart of an approach for searching for shopping deals at a server according to an embodiment of the invention.
  • FIG. 5 illustrates a flowchart of an approach for using virtual layer software to perform search and display of shopping deals according to an embodiment of the invention.
  • FIG. 6 provides an illustrative example of a shopping deals display according to an embodiment of the invention.
  • FIG. 7 illustrates a flowchart of an approach for automatically populating a shopping web site with a coupon code according to an embodiment of the invention.
  • FIG. 8 depicts a computerized system on which embodiments of the invention may be implemented.
  • DETAILED DESCRIPTION
  • Disclosed is an improved approach for implementing searching of shopping deals and coupons on the internet. The user's internet activity is checked to identify deals that may be of interest to that user. In some embodiments, this check of the user's internet activity is from identifying the URL of the web page being viewed by the user or by searching the web page for information relating to possible deals. A virtual layer is used to provide web page components to implement the deals display to perform the searching and deal display activities. By using the virtual layer approach of embodiments of the present invention, this allows the shopping deals to be placed on and overlaid with the web page from any host web page.
  • FIG. 1A illustrates an example of a web browser 102 that has been used by a consumer to navigate to a shopping web site (illustratively presented as “www.shopping_site.com” in the URL section 110 of the browser 102). As is typical of many internet shopping sites, a list of products and/or prices is displayed to the user. This display of products and/or prices may be displayed in response to a search performed by user. The products and/or prices may also be displayed automatically by the user navigating to certain pages within the domain of the shopping site. These items of shopping information are native to the host web page and are presented to the user based upon some sort of selection criteria by the owner or operator of the shopping site.
  • According to some embodiments of the invention, shopping deals, discount information, sales information, and/or coupon information (hereinafter collectively referred to as “deals”) may be presented to the user which relate in some way to the web page or contents of the web page being displayed to the user. These shopping deals may be displayed to the user even if the deal information being displayed is not native to the host web page currently being provided by the shopping site.
  • FIG. 1B shows an example of a the web browser 102 where the displayed web page 112 now includes and has been overlaid with an additional display area 120 for shopping deal information. In this example, the deals display area 120 is in the form of a drop down menu structure having one or more deals that are displayed. Section 122 of deals display 120 provides detailed information for a specific deal, which in this case includes an indication of a coupon code 126 that is applicable to provide a discount to purchases at the shopping site currently being displayed in the browser window 108.
  • The deals display 120 can be shown to the user even if the host web page 112 does not natively include that information or if the web site operator or owner is not the same entity as the provider of the deals display area 120. The deals display area 120 can be displayed within browser window 108 to display any suitable type of deals information, e.g., coupon information and coupon codes for products being sold through web site 112. This deals display are 120 can be provided whether or not the host web site natively provides functionality to display this information. As described in more detail below, virtual layer software is used to allow third party content (e.g., the deals display area 120 displaying deals and coupon information) to be displayed in conjunction with the host web page from the primary shopping site.
  • The advantage of this approach is that the deals display area 120 that is implemented using virtual layers can be displayed and overlaid onto the web page for any primary shopping site. This is in sharp contrast to conventional approaches that require the user to separately visit a specialized coupon web site and perform a directed search for deals/coupons that pertain to the shopping site.
  • To allow such deal display areas 120 to be displayed onto a primary shopping site according to some embodiments of the invention, a virtual layer plug-in is installed within web browser 102 to permit third party content to be displayed onto a primary site web page. The virtual layer plug-in is an application running on the client device that enables virtual editing of the appearance or functionality of an existing World Wide Web page by making the modifications on a virtual layer that is superimposed onto the web page. The virtual layer essentially allows a foreign entity or a user to include or enhance content that is utilized or displayed onto a web page, even if the web page itself does not natively provide such functionality to allow a third party to add or enhance content on the web page.
  • As described in more detail below, the virtual layer plug-in can be used to instantiate “extensions” onto the web page, including any scripts or other programs that may need to be executed on the web page to allow searching of secondary sites and display of additional search results within the browser window 108. For example, the virtual layer plug-in may be used to instantiate a javascript program to identify search terms on the primary shopping site and to send the search term for searching at a remote server to identify deals/coupons for display. The virtual layer plug-in may also be used to instantiate a Flash-based program to display image or video based search results from the secondary sites.
  • To illustrate, assume that the user has navigated to a shopping site having the URL “www.shopping_site.com”. The virtual layer extension can be configured to check section 110 of the browser 102 to identify the URL of the shopping site 112, and provide that identified URL as a search term to a deals database at a remote server. The server will send any identified deal information for that URL back to the browser 102 to be displayed within deals display area 120. The deals display area 120 may be implemented to display the deals/coupons in any suitable display format or display type.
  • FIG. 2 shows an architecture of a system 200 for identifying and displaying shopping deals according to some embodiments of the invention. System 200 may include one or more users at one or more user stations 204 at client 206 that access a web browser 202 to perform internet shopping. The users at user station 102 correspond to any individual, organization, or other entity that uses system 200 for performing some type of shopping or buying on the internet. The user stations 204 could be implemented using any suitable wired or wireless platform. For example, user station 204 may be implemented as desktop computer, laptop computer, wireless computing pad, cellular phone, or a web terminal.
  • The user station 204 interacts with a server 216 to identify and display deals to the user within the web browser 202. The server 216 is a network-accessible site that facilitates access to a database 214 containing a listing of available shopping deals pertaining to web sites accessed by a user at the user station 204. A search engine 212 at the server 216 will access the database 214 to search for any shopping deals that pertain or are relevant to the user's internet activity.
  • The information within the deals database 214 may be provided from any suitable source. For example, the information within deals database 214 could be obtained from an external deal consolidator 220, where the deal consolidator 220 is a specialized service or web site that identifies and tracks different shopping deals for a variety of different vendors, merchants, products, domains, and/or web sites. The deal consolidator 220 may maintain a deals listings database 218 to track the consolidated shopping deals. As needed or on an incremental basis, some or all of the data within the deals listing database 218 at the deals consolidator 220 may be transferred to the deals database 214 that is maintained by the server 216.
  • The operator of server 216 may also natively generate or provide the information within the deals database 214. For example, the operator of server 216 may perform his/her consolidation of shopping deals as input to the deals database 214, rather than seeking this information from an external deals consolidator 220. Alternatively, the operator of server 216 may obtain deals information from the deals consolidator 220, but supplement this information with its own natively generated shopping deals data. For example, the server 216 could collect user feedback about the deals and add that information to the deals database 214 in combination with data about those deals from deal consolidator 220. One practical reason for the server 216 to collect this type of feedback information from users is so that the feedback can be used by the search engine 212 to filter or sort the deals data from database 214 before sending that data for display to the web browser 202.
  • FIG. 3 shows a flowchart of actions taken at the user station to display the shopping deals information to the user. At 300, the user performs some sort of internet-related activity that may pertain to a shopping deal. For example, the user may use a web browser to navigate to a shopping site web page, where the web page includes or relates to a shopping deal that is being tracked by a deals database. In some contemplated use scenarios, the web page comprises a page provided by a merchant at an internet shopping site, where the web page identifies products that are being sold by the merchant. However, it is noted that the web page does not need to be generated by a dedicated shopping site run by a merchant to fall within the scope of some embodiments of the invention. Instead, the web page within the scope of embodiments of the invention can simply relate to any web page that corresponds to a deal being tracked by the deals database. A non-limiting example is a product review web site where the site only provides product reviews but which specifically does not sell any of the reviewed products. In this situation, the user may be very interested in knowing about product deals or coupons for the products being reviewed at that site, even if the user needs to navigate to another site (e.g., a merchant-run shopping site) to actually make use of the deal or coupon.
  • At 302, search criteria for deals/coupons are identified. The search criteria can be any criteria or search term that is used to search for shopping deals appropriate to the activity of the user. According to some embodiments, the search criteria are based upon the URL of the web page that is currently being viewed by the user. In this approach, the URL section of the web browser would be accessed to identify the current URL of the web page. In an alternate embodiment, the identified search criteria are based upon the contents of the page being viewed by the user. One approach for implementing this approach is to scrape the web page to identify key words that may be associated with specific products, merchants, deals, and/or coupons. Yet another possible embodiment is to allow the user to provide a search term, e.g., by typing the search term within a menu bar for the deals display.
  • At 304, the search criteria are sent to the server to perform a search of the available deals. Assuming that there are displayable search results, then at 306, displayable deal information is received from the server. At 308, that deal information is then displayed to the user. In some embodiments, the deal information is displayed in a drop down menu structure as shown in FIG. 1B, where the deals display portion is overlaid over the host web page, e.g., a host web page that does not natively display this shopping deals information.
  • FIG. 4 shows a flowchart of actions taken at the server to identify shopping deals to be displayed at the user station. At 400, the search criteria are received at the server from the user station. As noted above, the search criteria can be any criteria or search term that is used to search for deals appropriate to the activity of the user.
  • At 402, a search is performed within the deals database using the received search criteria. In the simple case, the search can be a search for specific words or keys within the deals database. Alternatively, associations may be created for the data within the deals database, so that a search can be performed using information that is associated with a deal. According to some embodiments, the deals within the deals database can be associated with: (a) a deals description; (b) coupon code; (c) expiration date; (d) URL/domain/merchant; (e) deal provider; (f) deal ratings or reviews; and/or (g) deal amounts or discount values. The received search criteria would be matched against these associations to identify the set of deals that should be displayed to the user.
  • For example, assume that the received search term is the current URL of the web page that is being viewed by the user. One or more shopping deals in the deals database may be associated with that URL or the domain associated with that URL. If so, then those deals associated with the URL from the received search criteria would be identified from the deals database. A typical use case scenario would be if the URL pertains to the domain of a specific merchant, and in which the associative searching would result in shopping deals corresponding to that specific merchant being identified and displayed to the user. As another example, the received search term may be the product name, product type, or vendor product identifier numbers. There may be shopping deals within the deals database that are associated with these types of search terms, and which would be identified using those associations. A use case scenario may be if the user is browsing at a shopping site for new mobile telephones, and the associative searching for a given product type (e.g., “mobile telephone”) would result in shopping deals from vendors that sell mobile telephones or mobile services.
  • It is possible that multiple deals are identified based upon the received search criteria. If so, then sorting and/or filtering of those deals may occur at 404. Any suitable type of sorting can be performed at 404, and the sorting may be performed using any suitable sorting or ordering criteria. For example, the deals can be sorted by the most recent deal, the greatest discount, and/or by the feedback ratings of customers. In addition, the displayed deals can be sorted based upon the deals that provide the greatest profit to the operator of the deals server, e.g., by identifying deals which provide the largest commission payment or percentage from the merchant to the server operator upon a purchase by the consumer. Filtering of the deals can also be performed using any suitable filtering criteria, e.g., filtering by deal expiration/upload date, discount levels/amounts, and/or by minimum feedback ratings.
  • At 406, the deal information is sent to the user station to be displayed in the web browser. In some embodiments, the deal information may be displayed within the user's web browser on a virtual layer over the host web page, where a virtual layer plug-in is installed at the user station to implement the virtual layers. A virtual layer server is used to provide the initial configurations for the virtual layer plug-in that allows the third party deals to be displayed at the client. The virtual layer software is configured to be superimposed onto web sites within the client's web browser, where the virtual layer include “extensions” that provide additional functionality or content to the built-in capabilities of a given web page.
  • As shown in FIG. 5, at 502, the approach begins with configuration for the extensions to perform deal display at the client. An identification is made of the parameters and settings for the virtual layer software that need to be configured to allow for deal display on web sites. For example, the different web sites may have fields and sections that need sot be scraped to identify search terms for searching of the deals. Therefore, the specific configurations that need to be implemented for the different web sites or domains are identified and built into the virtual layer software. The virtual layer plug-in extension is configured and/or modified as appropriate to implement the abilities discussed above. At 504, the virtual layer software is made available to be downloaded by users to the client computers to allow the searching and display of shopping deals. Thereafter, at 506, the deal information is processed and displayed on a native web page using the virtual layer software.
  • One approach for implementing the virtual layer is by using an enhanced XML schema (referred to herein as YLML or “Yontoo Layer Markup Language”), which contains executable programming tags, referenceable data tags, renderable UI tags and the like. Unlike HTML, which is a document markup language that is sometimes used as an application markup language simply because it is widely supported and the industry norm, YLML is a true application markup language that is different from HTML in that it has executable nodes and does not follow the same DOM structure that HTML does. YLML is also different from other XML languages in that it does not use code-behind. YLML does not require a separate file with logic source code, nor does it have imbedded logic using external languages. While other dynamic versions of XML require the use of code-behind or require the addition of external languages such as JavaScript and VBScript to be imbedded into script tags, YLML has native executable logic tags that eliminate the requirement for other languages to be imbedded into tags or used for code-behind.
  • An object model that works in conjunction with YLML is also employed, which is referred to herein as a YOM or Yontoo Object Model. A DOM can use only the information that exists in the document it is referencing to create a set of objects that are used to access the data within the HTML. The YOM on the other hand, is a single template that has an established structure that enables access to any information, data or content accessible through a computer system, including, but not restricted to the World Wide Web, databases, data stores, a client's computer or other content sources. This implies that unlike a DOM, which only creates objects for tags for content that exists in whole within the HTML document that it references, the YOM's established structure enables it to access specific content that exists on the World Wide Web, a database, a data store or any other location connected to a networked computer system without requiring content beyond the scope of exactly what is needed to be loaded. This enables the YOM to create objects within the model using a JIT (just in time) method, as opposed to creating the entirety of the model when the incoming file is parsed as is the case with the use of a DOM. One advantage of using the YOM over the DOM is that it gives access to a much broader range of content, including the World Wide Web, databases, data stores, a client's computer or other sources of content, according to an example of the present invention. For a DOM to provide this access, it would need to first load the entirety of the content that exists within these sources which is performance prohibitive.
  • The extensions for performing deal display are implemented using a combination of the YLML, the YOM and the virtual layer system to additional content and functionality to an existing web page. The extensions may be implemented using any suitable programming and/or scripting language. For example, a Flash-based approach maybe utilized to display the search results from deal search site. Of course, non-flash-based approaches may also be used to display the search results as well. According to some embodiments, the method for configuring a virtual layer includes aggregating objects corresponding to the plurality of layer extensions and corresponding to the URL using a layer markup language. The step of aggregating the objects is executed through a layer definition server unit adaptable to the layer markup language may also include a plurality of built-in logical tags for avoiding a need of writing scripts for enabling objects for executing events. The method for configuring an editable virtual layer in an internet browsing environment further includes loading a pre-rendered layer markup language module, returning the layer markup language to the virtual layer software sub-unit including a plurality of layer extensions present on the URL and having the virtual layer software sub-unit executing initialization routines in the layer markup language.
  • The rendering functionality within the virtual layer plug-in recognizes that it needs to add the drop down deal results window to the host web page, which is implemented in some embodiments by using Javascript to augment the DOM/YOM of the existing host web page. The correct location on the host web page is identified using the markup language items (XML or YLML) that was downloaded as part of the extension data, and used to inject the Javascript/Flash player at the appropriate location on the host web page.
  • The layer definition server may maintain a mapping structure to track the specific extensions to load for a given user and/or application. For example, the user may be associated with different applications that use the virtual layer plug-in, and the mappings identify which specific application extensions should be injected for that specific user. When appropriate identified, the extensions would be installed onto the virtual layer of the web page for the user.
  • Further details regarding an exemplary approach for implementing extension lists, virtual layer plug-ins, and virtual layers are described in co-pending U.S. Ser. No. 12/455,797, entitled “SYSTEM, METHOD AND APPARATUS FOR CREATING AND USING A VIRTUAL LAYER WITHIN A WEB BROWSING ENVIRONMENT”, filed on Jun. 8, 2009, which is hereby incorporated by reference in its entirety.
  • FIG. 6 shows an example of a deals display structure 600 according to some embodiments of the invention. Deal display structure 600 in this embodiment is formed as a drop down menu that displays one or more shopping deals within its display area. The shopping deal(s) are displayed in a deal display section 610 that includes information about a displayed shopping deal. For example, the displayed information may include information about the amount or type of discounts provided by the shopping deal in question. The displayed information also includes the display of a coupon code 620 that is used to obtain the stated shopping discount.
  • If the deal display section 610 does not have sufficient space to list all of the available shopping deals, then a control/interface element may be provided to allow user selection to display additional shopping deals. In the example of FIG. 6, button 612 is provided if the deal display section 610 is insufficient in size to display all of the shopping deals, and in which clicking of this button 612 by a user will cause additional deals to be displayed in the deal display section 610 of deals display structure 600.
  • The deals display structure 600 in some embodiments may include a search interface 602 to user users to perform directed searches of the deals database. Search interface 602 includes a field which allows the user to insert a search term. This search term can be sent to the server to perform the search of the deals database, with search results returned back to the client to be displayed in the deal display section 610.
  • In some embodiments, users are permitted to provide feedback or rankings for the displayed shopping deals. Controls 606 and 608 provide one example of an approach that can be taken to allow users to rank or rate deals. Here, 606 is a “thumbs up” button that allows the user to rate the deal with a positive score, while 608 is a “thumbs down” button that allows the user to provide a negative rating for the deal. These feedback ratings are sent to the server and consolidated with ratings from other users. One possible reason to obtain these ratings is to use the feedback ratings to rank or sort the deals that are displayed to users. The feedback ratings from multiple users for a particular deal can be used in a collective manner to obtain overall feedback ratings for the shopping deals. In addition, the feedback ratings for a particular user can be used to build a profile of the types of shopping deals that would be of interest to that particular user. While the feedback interfaces 606 and 608 of FIG. 6 are relatively simplistic in nature, it is clear that the scope of some embodiments of the invention may of encompass more complicated and granular rating and scoring interfaces that allows for detailed levels of review or scoring to be provided by users.
  • Coupon code 620 may be implemented as a clickable control interface that facilitates usage of the coupon code value for user purchases. According to a first embodiment, user selection of the interface element 620 results in the coupon code value being copied to a cache or memory area, so that the user can then “paste” that value into the appropriate field of a check-out web page of a shopping site so that the coupon code can be applied to obtain the designated discount.
  • In an alternate embodiment, user selection of the interface element 620 causes the coupon code to be auto-populated into the appropriate fields of the check-out page of the shopping site. FIG. 7 shows a flowchart of actions that may be taken in this type of embodiment. At 702, the user selects the displayed deal, e.g., by clicking upon the coupon code 620 for that shopping deal.
  • At 704, the browser will navigate to the appropriate URL associated with that shopping deal. To accomplish this, the interface element can be associated with a particular URL for purchasing a product or for applying the discount. For example, the check-out page of the shopping site can be associated with the shopping deal, so that selection or clicking of the coupon code causes navigation to the check-out page of the web site.
  • At 706, one or more values are auto-populated with appropriate values. For example, a coupon or discount portion of the check-out page can be automatically populated or injected with the coupon code. Other values may also be filled in at this point. For example, if the coupon code is associated with a specific product, product identifier, or price value, then that value can be used to auto-populate the appropriate fields in the check-out page. There are several possible ways to provide for auto-population of the check-put page fields. One way is perform the preliminary action of researching the different fields and positions of the check-out page for merchant web sites, and to configure the virtual layer software to insert the coupon codes and/or other values into those pre-recognized fields. Another possible approach is to scrape the shopping site page to search for recognized field identifiers, and to insert the code values are necessary into the recognized fields. One approach is to detect coupon code inputs on pages after coupon selection, and to then auto-inject these codes into the appropriate fields on the shopping site page.
  • Some embodiments may be implemented to display deals according to certain additional user-specific criteria. For example, the displayed deal could be based on the user's current location, e.g., which is identified by the user's IP address or by a location specified by the user. The displayed deal can be a “daily” deal, which lists current, up-to-date deals that are recent and/or relatively “hot” or recommended by other users.
  • Any or all of the deals may be printed by the user, according to some embodiments of the invention. In this approach, rather than being applied to a check-out page, the user controls the printing of the deal, e.g., to create/print a physical coupon that can be used in a brick-and-mortar store that is associated with the deal. The printable coupon can be identified using any suitable approach, e.g., as described above with respect to URL, searching, and/or based on location.
  • In addition, comparisons may be performed between different ones of the identified deals. For example, comparisons may be performed between multiple deals based on price, discount level, location, and/or best match. As before, the deals to be compared may be identified using any suitable approach, e.g., as described above with respect to URL, searching, and/or based on location.
  • In yet another embodiment, one or more links (e.g., a “Get a Coupon” link) may be added or associated with the coupon/deal code inputs, which directs the user to a deals site in a new tab/window. This direction of the user to a new tab/window may be performed with the search already made. Alternatively, selection of the link may cause a display of the user coupon/deal codes on the page, which may serve to increase the chance of a user selecting a coupon, e.g., if the deals menu is currently minimized.
  • In some embodiments of the invention, user selection of a coupon/deal from the deals menu causes a redirection to occur through a deal provider site, e.g., a redirection through the deal provider site to the user's previous site or to another shopping site. This action sets a cookie indicative of the redirection. Such tracking of redirections by users may be useful for many purposes. For example, there may be a financial arrangement to pay the provider of the deals menu for coupons/deals usage by users, and this type of tracking is useful for identifying the quantity of such users that take advantage of the coupons/deals. If the compensation is on a per-user basis, then this tracking information can be used to determine the amount of compensation to be paid by the deal provider for the users that have been directed to the coupons/deals.
  • Therefore, what has been described is an improved approach to perform searching and display of shopping deals on the internet. The shopping deals can be displayed over any host web page, even web pages that do not natively provide for this capability.
  • System Architecture Overview
  • FIG. 8 is a block diagram of an illustrative computing system 1400 suitable for implementing an embodiment of the deals display of the present invention. Computer system 1400 includes a bus 1406 or other communication mechanism for communicating information, which interconnects subsystems and devices, such as processor 1407, system memory 1408 (e.g., RAM), static storage device 1409 (e.g., ROM), disk drive 1410 (e.g., magnetic or optical), communication interface 1414 (e.g., modem or Ethernet card), display 1411 (e.g., CRT or LCD), input device 1412 (e.g., keyboard), and cursor control.
  • According to one embodiment of the invention, computer system 1400 performs specific operations by processor 1407 executing one or more sequences of one or more instructions contained in system memory 1408. Such instructions may be read into system memory 1408 from another computer readable/usable medium, such as static storage device 1409 or disk drive 1410. In alternative embodiments, hard-wired circuitry may be used in place of or in combination with software instructions to implement the invention. Thus, embodiments of the invention are not limited to any specific combination of hardware circuitry and/or software. In one embodiment, the term “logic” shall mean any combination of software or hardware that is used to implement all or part of the invention.
  • The term “computer readable medium” or “computer usable medium” as used herein refers to any medium that participates in providing instructions to processor 1407 for execution. Such a medium may take many forms, including but not limited to, non-volatile media and volatile media. Non-volatile media includes, for example, optical or magnetic disks, such as disk drive 1410. Volatile media includes dynamic memory, such as system memory 1408.
  • Common forms of computer readable media includes, for example, floppy disk, flexible disk, hard disk, magnetic tape, any other magnetic medium, CD-ROM, any other optical medium, punch cards, paper tape, any other physical medium with patterns of holes, RAM, PROM, EPROM, FLASH-EPROM, any other memory chip or cartridge, or any other medium from which a computer can read.
  • In an embodiment of the invention, execution of the sequences of instructions to practice the invention is performed by a single computer system 1400. According to other embodiments of the invention, two or more computer systems 1400 coupled by communication link 1415 (e.g., LAN, PTSN, or wireless network) may perform the sequence of instructions required to practice the invention in coordination with one another.
  • Computer system 1400 may transmit and receive messages, data, and instructions, including program, i.e., application code, through communication link 1415 and communication interface 1414. Received program code may be executed by processor 1407 as it is received, and/or stored in disk drive 1410, or other non-volatile storage for later execution. Computer system 1400 may communicate through a data interface 1433 to a database 1432 on an external storage device 1431.
  • In the foregoing specification, the invention has been described with reference to specific embodiments thereof. It will, however, be evident that various modifications and changes may be made thereto without departing from the broader spirit and scope of the invention. For example, the above-described process flows are described with reference to a particular ordering of process actions. However, the ordering of many of the described process actions may be changed without affecting the scope or operation of the invention. The specification and drawings are, accordingly, to be regarded in an illustrative rather than restrictive sense.

Claims (20)

1. A computer implemented method for identifying additional content corresponding to search criteria received from a user using a virtual layer plug-in to display additional content in a virtual layer overlaid over a host web page, comprising:
receiving search criteria at a remote server, the search criteria corresponding to internet usage information associated with internet usage by a user at the virtual layer plug-in;
identifying additional content relevant to the internet usage information received from the virtual layer plug-in, wherein the internet usage information pertains to a host web page that is displayed in a web browser to the user, and wherein the additional content is identified using the search criteria, and the search criteria is based on at least the contents of the host web page that is displayed in a web browser to the user and the additional content is received from the remote server using the search criteria; and
sending the additional content to a client computer to display at least some of the additional content with the host web page using a virtual layer overlaid over the host web page displayed in the web browser to the user, at least some of the additional content being superimposed over the host web page in the same display window using the virtual layer overlaid over the host web page displayed in the web browser to the user and the additional content being displayed in a drop down menu structure, wherein the additional content comprises at least shopping deal information, the additional content is processed by the virtual layer plug-in to generate a visual representation, and the visual representation is clickable to cause an action to be taken corresponding to the additional content, and wherein the host web page does not natively provide functionality to enable a third party to overlay the additional content using the virtual layer.
2. The method of claim 1 in which an extension is instantiated on the virtual layer with a corresponding user interface element in the drop down menu structure that enables a user to enter search criteria.
3. The method of claim 1 in which the additional content comprises a coupon deal and the coupon deal includes a coupon code that is displayed to the user and the coupon code is auto-populated to a field in host web page by the virtual layer plug-in.
4. The method of claim 1 in which an interface element is provided in the virtual layer to obtain user feedback for the shopping deal and the interface element is provided in the drop down menu structure, and wherein the user feedback from multiple users are collected and stored in a deals database to obtain overall user feedback ratings for the shopping deal.
5. The method of claim 1 in which the additional content is identified using search criteria related to a URL associated with the host web page or extracted from the host web page to search a deals database.
6. The method of claim 1 in which the additional content corresponds to a search association within a deals database, wherein the search association relates to a deal description, coupon code, expiration date, URL, domain, merchant, deal provider, ratings, deal amount, or discount values.
7. The method of claim 1 in which multiple shopping deals are sorted or filtered for display, and wherein the user can specify filtering criteria comprising at least one of a deal expiration date, a deal upload date, a discount level, a discount amount, or feedback ratings.
8. A computer program product embodied on a non-transitory computer usable medium, the non-transitory computer usable medium having stored thereon a sequence of instructions which, when executed by a processor causes the processor to execute a method for identifying additional content corresponding to search criteria received from a user using a virtual layer plug-in to display additional content in a virtual layer overlaid over a host web page, the method comprising:
receiving search criteria at a remote server, the search criteria corresponding to internet usage information associated with internet usage by a user at the virtual layer plug-in;
identifying additional content relevant to the internet usage information received from the virtual layer plug-in, wherein the internet usage information pertains to a host web page that is displayed in a web browser to the user, and wherein the additional content is identified using the search criteria, and the search criteria is based on at least the contents of the host web page that is displayed in a web browser to the user and the additional content is received from the remote server using the search criteria; and
sending the additional content to a client computer to display at least some of the additional content with the host web page using a virtual layer overlaid over the host web page displayed in the web browser to the user, at least some of the additional content being superimposed over the host web page in the same display window using the virtual layer overlaid over the host web page displayed in the web browser to the user and the additional content being displayed in a drop down menu structure, wherein the additional content comprises at least shopping deal information, the additional content is processed by the virtual layer plug-in to generate a visual representation, and the visual representation is clickable to cause an action to be taken corresponding to the additional content, and wherein the host web page does not natively provide functionality to enable a third party to overlay the additional content using the virtual layer.
9. The computer program product of claim 8 in which an extension is instantiated on the virtual layer with a corresponding user interface element in the drop down menu structure that enables a user to enter search criteria.
10. The computer program product of claim 8 in which the additional content comprises a coupon deal and the coupon deal includes a coupon code that is displayed to the user and the coupon code is auto-populated to a field in host web page by the virtual layer plug-in.
11. The computer program product of claim 8 in which an interface element is provided in the virtual layer to obtain user feedback for the shopping deal and the interface element is provided in the drop down menu structure, and wherein the user feedback from multiple users are collected and stored in a deals database to obtain overall user feedback ratings for the shopping deal.
12. The computer program product of claim 8 in which the additional content is identified using search criteria related to a URL associated with the host web page or extracted from the host web page to search a deals database.
13. The computer program product of claim 8 in which the additional content corresponds to a search association within a deals database, wherein the search association relates to a deal description, coupon code, expiration date, URL, domain, merchant, deal provider, ratings, deal amount, or discount values.
14. The computer program product of claim 8 in which multiple shopping deals are sorted or filtered for display, and wherein the user can specify filtering criteria comprising at least one of deal expiration date, deal upload date, discount levels, discount amounts, or minimum feedback ratings.
15. A system for identifying additional content corresponding to search criteria received from a user using a virtual layer plug-in to display additional content in a virtual layer overlaid over a host web page, comprising:
a memory for storing data and instructions; and
a processor that executes the instructions to enable actions, including:
receiving search criteria at a remote server, the search criteria corresponding to internet usage information associated with internet usage by a user at the virtual layer plug-in;
identifying additional content relevant to the internet usage information received from the virtual layer plug-in, wherein the internet usage information pertains to a host web page that is displayed in a web browser to the user, and wherein the additional content is identified using the search criteria, and the search criteria is based on at least the contents of the host web page that is displayed in a web browser to the user and the additional content is received from the remote server using the search criteria; and
sending the additional content to a client computer to display at least some of the additional content with the host web page using a virtual layer overlaid over the host web page displayed in the web browser to the user, at least some of the additional content being superimposed over the host web page in the same display window using the virtual layer overlaid over the host web page displayed in the web browser to the user and the additional content being displayed in a drop down menu structure, wherein the additional content comprises at least shopping deal information, the additional content is processed by the virtual layer plug-in to generate a visual representation, and the visual representation is clickable to cause an action to be taken corresponding to the additional content, and wherein the host web page does not natively provide functionality to enable a third party to overlay the additional content using the virtual layer.
16. The system of claim 15, wherein an extension is instantiated on the virtual layer with a corresponding user interface element in the drop down menu structure that enables a user to enter search criteria.
17. The system of claim 15 in which the additional content comprises a coupon deal and the coupon deal includes a coupon code that is displayed to the user and the coupon code is auto-populated to a field in host web page by the virtual layer plug-in.
18. The system of claim 15, wherein an interface element is provided in the virtual layer to obtain user feedback for the shopping deal and the interface element is provided in the drop down menu structure, and wherein the user feedback from multiple users are collected and stored in a deals database to obtain overall user feedback ratings for the shopping deal.
19. The system of claim 15, in which the additional content is identified using search criteria related to a URL associated with the host web page or extracted from the host web page to search a deals database.
20. The system of claim 15 in which the additional content corresponds to a search association within a deals database, wherein the search association relates to a deal description, coupon code, expiration date, URL, domain, merchant, deal provider, ratings, deal amount, or discount values.
US15/058,495 2009-06-08 2016-03-02 Method and system for identifying and displaying shopping deals Abandoned US20160180436A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US15/058,495 US20160180436A1 (en) 2009-06-08 2016-03-02 Method and system for identifying and displaying shopping deals

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/455,797 US20100313252A1 (en) 2009-06-08 2009-06-08 System, method and apparatus for creating and using a virtual layer within a web browsing environment
US201113109879A 2011-05-17 2011-05-17
US15/058,495 US20160180436A1 (en) 2009-06-08 2016-03-02 Method and system for identifying and displaying shopping deals

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US201113109879A Continuation 2009-06-08 2011-05-17

Publications (1)

Publication Number Publication Date
US20160180436A1 true US20160180436A1 (en) 2016-06-23

Family

ID=43301719

Family Applications (3)

Application Number Title Priority Date Filing Date
US12/455,797 Abandoned US20100313252A1 (en) 2009-06-08 2009-06-08 System, method and apparatus for creating and using a virtual layer within a web browsing environment
US12/960,340 Expired - Fee Related US9201672B1 (en) 2009-06-08 2010-12-03 Method and system for aggregation of search results
US15/058,495 Abandoned US20160180436A1 (en) 2009-06-08 2016-03-02 Method and system for identifying and displaying shopping deals

Family Applications Before (2)

Application Number Title Priority Date Filing Date
US12/455,797 Abandoned US20100313252A1 (en) 2009-06-08 2009-06-08 System, method and apparatus for creating and using a virtual layer within a web browsing environment
US12/960,340 Expired - Fee Related US9201672B1 (en) 2009-06-08 2010-12-03 Method and system for aggregation of search results

Country Status (1)

Country Link
US (3) US20100313252A1 (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10304074B2 (en) 2012-06-11 2019-05-28 Retailmenot, Inc. Devices, methods, and computer-readable media for redemption header for merchant offers
US10475071B2 (en) * 2012-10-22 2019-11-12 Marc Alan Mezzacca System and method of automated delivery of relevance-checked benefit-conveying codes during online transaction
US10614476B2 (en) 2012-11-08 2020-04-07 Honey Science Llc Systems and methods for interfacing with a website to modify content
US10839453B1 (en) * 2019-11-26 2020-11-17 Capital One Services, Llc Systems and methods for identifying location-based information associated with a product on a web page
US11288694B2 (en) * 2013-11-08 2022-03-29 Retailmenot, Inc. Providing single-use offers
US11354655B2 (en) * 2020-04-29 2022-06-07 Capital One Services, Llc Enhancing merchant databases using crowdsourced browser data
US11409829B2 (en) * 2020-12-21 2022-08-09 Capital One Services, Llc Methods and systems for redirecting a user from a third party website to a provider website
US20230117634A1 (en) * 2019-08-26 2023-04-20 Paypal, Inc. Systems And Methods For Dynamically Modifying Content Of A Website
US11941653B2 (en) * 2019-04-17 2024-03-26 Capital One Services, Llc Methods and systems for testing and applying codes to electronic shopping carts

Families Citing this family (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2764493C (en) 2009-06-04 2018-07-10 Joshua Feuerstein Method and system for electronic advertising
US20100313252A1 (en) 2009-06-08 2010-12-09 Erie Trouw System, method and apparatus for creating and using a virtual layer within a web browsing environment
US8582801B2 (en) 2010-02-08 2013-11-12 Google Inc. Assisting the authoring of posts to an asymmetric social network
US8825759B1 (en) 2010-02-08 2014-09-02 Google Inc. Recommending posts to non-subscribing users
US9729352B1 (en) 2010-02-08 2017-08-08 Google Inc. Assisting participation in a social network
US9418388B1 (en) * 2010-09-08 2016-08-16 Imdb.Com, Inc. Techniques for displaying third party content
US8453218B2 (en) 2010-11-19 2013-05-28 Reputation.com System and methods for facilitating secure communications on a website
US8527597B2 (en) 2010-12-07 2013-09-03 Google Inc. Determining message prominence
US8504910B2 (en) * 2011-01-07 2013-08-06 Facebook, Inc. Mapping a third-party web page to an object in a social networking system
US9058391B2 (en) 2011-03-14 2015-06-16 Slangwho, Inc. System and method for transmitting a feed related to a first user to a second user
US9213972B2 (en) 2011-08-30 2015-12-15 Gregory DORSO Systems and methods for fast mobile payment
US8826399B2 (en) 2011-12-06 2014-09-02 Gregory DORSO Systems and methods for fast authentication with a mobile device
US8886651B1 (en) 2011-12-22 2014-11-11 Reputation.Com, Inc. Thematic clustering
US10636041B1 (en) 2012-03-05 2020-04-28 Reputation.Com, Inc. Enterprise reputation evaluation
US9697490B1 (en) 2012-03-05 2017-07-04 Reputation.Com, Inc. Industry review benchmarking
US9031927B2 (en) 2012-04-13 2015-05-12 Ebay Inc. Method and system to provide video-based search results
JP2013242847A (en) * 2012-04-26 2013-12-05 Mitsubishi Electric Corp Image processing terminal and image processing method
US9563325B2 (en) * 2012-06-08 2017-02-07 International Business Machines Corporation Selective update of a page having a pegged area
US11093984B1 (en) 2012-06-29 2021-08-17 Reputation.Com, Inc. Determining themes
US9361651B2 (en) 2012-10-04 2016-06-07 International Business Machines Corporation Displaying quantitative trending of pegged data from cache
US9922327B2 (en) 2012-11-01 2018-03-20 Ebates Inc. System, method, and computer program for providing a multi-merchant electronic shopping cart for a shopping service
US9342490B1 (en) * 2012-11-20 2016-05-17 Amazon Technologies, Inc. Browser-based notification overlays
US8744866B1 (en) 2012-12-21 2014-06-03 Reputation.Com, Inc. Reputation report with recommendation
US8805699B1 (en) 2012-12-21 2014-08-12 Reputation.Com, Inc. Reputation report with score
US8925099B1 (en) 2013-03-14 2014-12-30 Reputation.Com, Inc. Privacy scoring
US20140324486A1 (en) * 2013-04-24 2014-10-30 Hipmunk, Inc. Travel option presentation
US9900367B2 (en) 2013-05-13 2018-02-20 Appsense Us Llc Context transfer from web page to application
US9167052B2 (en) * 2013-05-13 2015-10-20 Appsense Limited Apparatus, systems, and methods for providing policy in network-based applications
US9912720B2 (en) 2013-05-13 2018-03-06 Appsense Us Llc Context aware browser policy
US10291615B2 (en) * 2013-05-13 2019-05-14 Ivanti Us Llc Web event framework
US20150134372A1 (en) * 2013-11-13 2015-05-14 Amadeus S.A.S. Integration of online self-booking tool and third party system search results
CA2922432A1 (en) * 2013-11-13 2015-05-21 Amadeus S.A.S. Integration of online self-booking tool and third party system search results
US9456021B2 (en) 2014-01-21 2016-09-27 International Business Machines Corporation Loading pegged page objects based on predefined preferences
US9785309B2 (en) * 2014-05-08 2017-10-10 Socialtopias, Llc Method and apparatus for providing a layered webpage
US9639263B2 (en) 2014-08-05 2017-05-02 Weebly, Inc. Native overlay for rapid editing of web content
US10139998B2 (en) 2014-10-08 2018-11-27 Weebly, Inc. User interface for editing web content
US20170004123A1 (en) * 2015-06-30 2017-01-05 International Business Machines Corporation Interactive gui review tool system and method
US10503742B2 (en) * 2015-10-27 2019-12-10 Blackberry Limited Electronic device and method of searching data records
US20180018304A1 (en) * 2016-07-14 2018-01-18 Intent Media, Inc. Graphical user interface and system for viewing landing page content
KR102285249B1 (en) 2016-10-13 2021-08-05 라쿠텐 그루프 가부시키가이샤 A system, method and computer program for providing a wishlist user interface within a web browser that alerts a user to changes in multi-factor-based prices.
US10740781B2 (en) 2017-10-31 2020-08-11 Ebates Performance Marketing, Inc. System, method, and computer program for providing notification of a cashback reward from a shopping portal using online screen and email analysis
JP7180111B2 (en) * 2018-04-27 2022-11-30 富士フイルムビジネスイノベーション株式会社 Display editing device and program
US11436292B2 (en) 2018-08-23 2022-09-06 Newsplug, Inc. Geographic location based feed
US11609963B2 (en) * 2018-10-24 2023-03-21 Citrix Systems, Inc. Dynamically change user interfaces for web applications and associated methods
US10866708B2 (en) 2018-12-10 2020-12-15 Square, Inc. Using combined ecommerce and brick-and-mortar data to produce intelligent recommendations for web page operation
US10853434B2 (en) 2019-03-11 2020-12-01 Vladimir Prelovac User interface for presenting search results
US11568468B2 (en) 2019-08-08 2023-01-31 Rakuten Group, Inc. System, method, and computer program for providing similar product recommendations for non-merchant publishers based on publisher preferences
US11770437B1 (en) * 2021-08-30 2023-09-26 Amazon Technologies, Inc. Techniques for integrating server-side and client-side rendered content
US11991137B2 (en) * 2022-04-27 2024-05-21 Salesforce, Inc. Notification timing in a group-based communication system

Family Cites Families (98)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5310349A (en) * 1992-04-30 1994-05-10 Jostens Learning Corporation Instructional management system
GB9516762D0 (en) * 1995-08-16 1995-10-18 Phelan Sean P Computer system for identifying local resources
US5826025A (en) * 1995-09-08 1998-10-20 Sun Microsystems, Inc. System for annotation overlay proxy configured to retrieve associated overlays associated with a document request from annotation directory created from list of overlay groups
JP3441306B2 (en) 1995-09-12 2003-09-02 株式会社東芝 Client device, message transmission method, server device, page processing method, and relay server device
US5848397A (en) 1996-04-19 1998-12-08 Juno Online Services, L.P. Method and apparatus for scheduling the presentation of messages to computer users
US5995756A (en) 1997-02-14 1999-11-30 Inprise Corporation System for internet-based delivery of computer applications
US5903728A (en) * 1997-05-05 1999-05-11 Microsoft Corporation Plug-in control including an independent plug-in process
US6230171B1 (en) * 1998-08-29 2001-05-08 International Business Machines Corporation Markup system for shared HTML documents
US6360205B1 (en) * 1998-10-30 2002-03-19 Trip.Com, Inc. Obtaining and utilizing commercial information
US6297819B1 (en) * 1998-11-16 2001-10-02 Essential Surfing Gear, Inc. Parallel web sites
AU4676800A (en) * 1999-04-26 2000-11-10 Dodots, Inc. Apparatus and method for delivering internet content
US7096426B1 (en) * 1999-05-07 2006-08-22 Catherine Lin-Hendel Clustered presentation of objects with group and individual identity in, and virtual layered composition of, electronically recorded, computer presented media
US7243082B1 (en) * 1999-06-30 2007-07-10 Kyklos Entertainment S.R.L. Method and apparatus for generating a sale offer to selected individuals over electronic network systems
US20080319918A1 (en) * 1999-06-30 2008-12-25 Kyklos Entertainment S.R.I. Methods and systems for generating product offers over electronic network systems
US7222303B2 (en) * 1999-07-15 2007-05-22 Hotbar.Com, Inc. System and method for the dynamic improvement of internet browser navigability
US20060265476A1 (en) * 1999-10-21 2006-11-23 Sean Barger Automated media delivery system
US20020010757A1 (en) * 1999-12-03 2002-01-24 Joel Granik Method and apparatus for replacement of on-line advertisements
US6859909B1 (en) * 2000-03-07 2005-02-22 Microsoft Corporation System and method for annotating web-based documents
EP1182599A1 (en) 2000-07-26 2002-02-27 Transmedia Network, Inc. System and method for providing consumer rewards
US20060122917A1 (en) * 2000-08-14 2006-06-08 Urbanpixel Inc Real-time collaborative commerce in a multiple browser environment
US7478089B2 (en) 2003-10-29 2009-01-13 Kontera Technologies, Inc. System and method for real-time web page context analysis for the real-time insertion of textual markup objects and dynamic content
US20040125130A1 (en) * 2001-02-26 2004-07-01 Andrea Flamini Techniques for embedding custom user interface controls inside internet content
US20030014406A1 (en) * 2001-06-07 2003-01-16 Urbanpixel Inc. Intelligent browser windows in a multi-browser environment
AU2002345337A1 (en) * 2001-07-09 2003-01-29 Ad4Ever Inc. Method and system for allowing cross-communication between first and second areas of a primary web page
WO2003014867A2 (en) * 2001-08-03 2003-02-20 John Allen Ananian Personalized interactive digital catalog profiling
US20040060008A1 (en) * 2002-01-18 2004-03-25 John Marshall Displaying statistical data for a web page by dynamically modifying the document object model in the HTML rendering engine
US7716199B2 (en) * 2005-08-10 2010-05-11 Google Inc. Aggregating context data for programmable search engines
US7360160B2 (en) * 2002-06-20 2008-04-15 At&T Intellectual Property, Inc. System and method for providing substitute content in place of blocked content
US7051040B2 (en) * 2002-07-23 2006-05-23 Lightsurf Technologies, Inc. Imaging system providing dynamic viewport layering
US20040019653A1 (en) 2002-07-26 2004-01-29 Philippe Debaty Context-aware client system
US7945846B2 (en) * 2002-09-06 2011-05-17 Oracle International Corporation Application-specific personalization for data display
US7069497B1 (en) 2002-09-10 2006-06-27 Oracle International Corp. System and method for applying a partial page change
GB2395640B (en) * 2002-11-22 2006-06-07 Westerngeco Seismic Holdings Implementing a network infrastructure in a seismic acquisition system
CA2414378A1 (en) * 2002-12-09 2004-06-09 Corel Corporation System and method for controlling user interface features of a web application
US20060149618A1 (en) * 2003-02-19 2006-07-06 Michael Balin System for providing private offers to customers of web sites
US7493614B2 (en) * 2003-03-31 2009-02-17 Microsoft Corporation System architecture and related methods for dynamically adding software components to extend functionality of system processes
US20040201615A1 (en) * 2003-04-10 2004-10-14 International Business Machines Corporation Eliminating extraneous displayable data from documents and e-mail received from the world wide web and like networks
US7364086B2 (en) * 2003-06-16 2008-04-29 Ewinwin, Inc. Dynamic discount card tied to price curves and group discounts
US20050080675A1 (en) 2003-10-09 2005-04-14 Long Range Systems, Inc. System and method for automated dynamic wait listing
US20050197893A1 (en) * 2004-02-24 2005-09-08 Michael Landau Coupon, price-comparison, and product-review information toolbar for use with a network browser or system/application interface
US7584435B2 (en) * 2004-03-03 2009-09-01 Omniture, Inc. Web usage overlays for third-party web plug-in content
BRPI0401465A (en) * 2004-04-20 2006-02-21 Embria Informatica Ltda system for managing interactions between users and software applications in a web environment
US7533144B2 (en) 2004-05-14 2009-05-12 Hisham Kassab Method of providing a web page with additional content inserted in an intermediate network entity (INE) platform
US20060026059A1 (en) 2004-07-30 2006-02-02 Grosz Aryk E Advertising method for digitally rented movies
US7271815B2 (en) * 2004-10-21 2007-09-18 International Business Machines Corporation System, method and program to generate a blinking image
US7831319B2 (en) 2005-01-07 2010-11-09 Gm Global Technology Operations, Inc. Sensor based anticipatory lighting of controls
US20060293959A1 (en) * 2005-06-16 2006-12-28 Zixxo Inc. Method and system for adding coupon information to network-based content
US20080005064A1 (en) 2005-06-28 2008-01-03 Yahoo! Inc. Apparatus and method for content annotation and conditional annotation retrieval in a search context
US7529744B1 (en) * 2005-06-30 2009-05-05 Symantec Corporation Search interface server and storage management
AU2006280934B2 (en) * 2005-08-19 2012-06-28 Google Llc Software architecture for displaying information content from plug-in modules in a user interface
US8989718B2 (en) 2005-09-14 2015-03-24 Millennial Media, Inc. Idle screen advertising
US20070078705A1 (en) * 2005-09-30 2007-04-05 Timothy Abels Virtualizing portals for electronic commerce
US7698685B2 (en) * 2005-10-12 2010-04-13 Microsoft Corporation Discovery, qualification, and activation of software add-in components
US8050976B2 (en) * 2005-11-15 2011-11-01 Stb Enterprises, Llc System for on-line merchant price setting
US7895604B2 (en) 2005-11-17 2011-02-22 Opera Software Asa Method and device for event communication between documents
US20070146812A1 (en) 2005-12-02 2007-06-28 Lawton Scott S Reader editable advertising
US8196205B2 (en) 2006-01-23 2012-06-05 University Of Washington Through Its Center For Commercialization Detection of spyware threats within virtual machine
US8156178B2 (en) 2006-06-23 2012-04-10 Rohit Chandra Method and system for enhancing a home page
WO2008021863A2 (en) 2006-08-08 2008-02-21 Wayport, Inc. Automated acquisition and maintenance of web-servable content via enhanced '404: not found' handler
US20090300528A1 (en) * 2006-09-29 2009-12-03 Stambaugh Thomas M Browser event tracking for distributed web-based processing, spatial organization and display of information
US7805406B2 (en) 2006-10-27 2010-09-28 Xystar Technologies, Inc. Cross-population of virtual communities
US8234392B2 (en) * 2006-11-17 2012-07-31 Apple Inc. Methods and apparatuses for providing a hardware accelerated web engine
GB0623912D0 (en) * 2006-11-30 2007-01-10 Bayne Duncan J Improved electronic form software and brower programming methods
US8140506B2 (en) 2006-11-30 2012-03-20 Red Hat, Inc. File sharing based on social network
US9842097B2 (en) * 2007-01-30 2017-12-12 Oracle International Corporation Browser extension for web form fill
WO2008100938A2 (en) * 2007-02-13 2008-08-21 Fortiusone, Inc. A method and system for integrating a social network and data repository to enable map creation
US7930286B2 (en) * 2007-02-16 2011-04-19 Yahoo! Inc. Federated searches implemented across multiple search engines
KR100873351B1 (en) * 2007-02-27 2008-12-10 엔에이치엔(주) advertisement system using mash-up map and method thereof
US8583592B2 (en) * 2007-03-30 2013-11-12 Innography, Inc. System and methods of searching data sources
US8260687B2 (en) * 2007-04-16 2012-09-04 Ebay Inc. Distributed commerce application-widget
WO2008154042A1 (en) * 2007-06-13 2008-12-18 R-Web, Inc. System and method for the generation, storage and navigation of contextually anchored links
US8176431B1 (en) * 2007-07-30 2012-05-08 Sprint Communications Company L.P. Overlay menus for web interaction
US8667415B2 (en) 2007-08-06 2014-03-04 Apple Inc. Web widgets
AU2008286192B2 (en) * 2007-08-06 2014-04-10 Mls Technologies Pty Ltd Method and/or system for searching network content
US20090144264A1 (en) * 2007-12-04 2009-06-04 Vik Singh Third-party information overlay on search results
US20090235149A1 (en) 2008-03-17 2009-09-17 Robert Frohwein Method and Apparatus to Operate Different Widgets From a Single Widget Controller
US8341529B1 (en) 2008-03-28 2012-12-25 Amazon Technologies, Inc. Dynamically modifying displayed information
US20090265607A1 (en) * 2008-04-17 2009-10-22 Razoss Ltd. Method, system and computer readable product for management, personalization and sharing of web content
US8291475B2 (en) 2008-04-30 2012-10-16 Microsoft Corporation Secure cross-domain communication for web mashups
US8103743B2 (en) 2008-06-18 2012-01-24 Disney Enterprises, Inc. Method and system for enabling client-side initiated delivery of dynamic secondary content
US20100094755A1 (en) 2008-10-09 2010-04-15 Nelnet Business Solutions, Inc. Providing payment data tokens for online transactions utilizing hosted inline frames
US8321401B2 (en) 2008-10-17 2012-11-27 Echostar Advanced Technologies L.L.C. User interface with available multimedia content from multiple multimedia websites
US8788949B2 (en) 2008-10-28 2014-07-22 Google Inc. Provisioning instant communications for a community of users
US9064023B2 (en) * 2008-12-29 2015-06-23 Avaya Inc. Providing web content in the context of a virtual environment
US8706590B2 (en) 2009-01-26 2014-04-22 Bank Of America Corporation Providing value exchange in connection with financial institution recommendations and offers
US20100223126A1 (en) * 2009-03-02 2010-09-02 Tung Kevin W Advertising system and method
US20110071911A1 (en) * 2009-03-02 2011-03-24 Tung Kevin W Advertising system and method
JP5735480B2 (en) 2009-03-20 2015-06-17 アド−バンテージ ネットワークス,インコーポレイテッド Method and system for searching, selecting and displaying content
US9459936B2 (en) 2009-05-01 2016-10-04 Kaazing Corporation Enterprise client-server system and methods of providing web application support through distributed emulation of websocket communications
US20100313252A1 (en) 2009-06-08 2010-12-09 Erie Trouw System, method and apparatus for creating and using a virtual layer within a web browsing environment
US8396813B2 (en) 2009-09-22 2013-03-12 Xerox Corporation Knowledge-based method for using social networking site content in variable data applications
US9361631B2 (en) * 2010-01-06 2016-06-07 Ghostery, Inc. Managing and monitoring digital advertising
US8494901B2 (en) * 2010-02-17 2013-07-23 Ebay Inc. Methods and systems for multi-merchant couponing
US8832099B2 (en) 2010-03-09 2014-09-09 Yahoo! Inc. User specific feed recommendations
US8984409B2 (en) 2010-03-12 2015-03-17 Salesforce.Com, Inc. Service cloud console
US9224164B2 (en) * 2010-03-24 2015-12-29 Skimbit Ltd Data processing system and method for providing a hyperlink to a lowest priced offering of a current item
US20110307354A1 (en) 2010-06-09 2011-12-15 Bilgehan Erman Method and apparatus for recommending applications to mobile users
US10282744B2 (en) * 2010-10-29 2019-05-07 Excalibur Ip, Llc Consumer group buying through online ads

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10304074B2 (en) 2012-06-11 2019-05-28 Retailmenot, Inc. Devices, methods, and computer-readable media for redemption header for merchant offers
US10586244B2 (en) * 2012-06-11 2020-03-10 Retailmenot, Inc. Devices, methods, and computer-readable media for redemption header for merchant offers
US10586243B2 (en) 2012-06-11 2020-03-10 Retailmenot, Inc. Devices, methods, and computer-readable media for redemption header for merchant offers
US10475071B2 (en) * 2012-10-22 2019-11-12 Marc Alan Mezzacca System and method of automated delivery of relevance-checked benefit-conveying codes during online transaction
US11625742B2 (en) 2012-11-08 2023-04-11 Paypal, Inc. Systems and methods for interfacing with a website to modify content
US10614476B2 (en) 2012-11-08 2020-04-07 Honey Science Llc Systems and methods for interfacing with a website to modify content
US10685368B1 (en) 2012-11-08 2020-06-16 Honey Science Llc Systems and methods for interfacing with a website to modify content
US10719843B2 (en) 2012-11-08 2020-07-21 Honey Science Llc Systems and methods for interfacing with a website to modify content
US10726437B2 (en) 2012-11-08 2020-07-28 Honey Science Llc Systems and methods for interfacing with a website to modify content
US11893595B2 (en) 2012-11-08 2024-02-06 Paypal, Inc. Systems and methods for interfacing with a website to modify content
US10679233B2 (en) 2012-11-08 2020-06-09 Honey Science Llc Systems and methods for interfacing with a website to modify content
US11288694B2 (en) * 2013-11-08 2022-03-29 Retailmenot, Inc. Providing single-use offers
US11941653B2 (en) * 2019-04-17 2024-03-26 Capital One Services, Llc Methods and systems for testing and applying codes to electronic shopping carts
US11961103B2 (en) * 2019-08-26 2024-04-16 Paypal, Inc. Systems and methods for dynamically modifying content of a website
US20230117634A1 (en) * 2019-08-26 2023-04-20 Paypal, Inc. Systems And Methods For Dynamically Modifying Content Of A Website
US10839453B1 (en) * 2019-11-26 2020-11-17 Capital One Services, Llc Systems and methods for identifying location-based information associated with a product on a web page
US12106361B2 (en) 2019-11-26 2024-10-01 Capital One Services, Llc Systems and methods for identifying location-based information associated with a product on a web page
US11354730B2 (en) 2019-11-26 2022-06-07 Capital One Services, Llc Systems and methods for identifying location-based information associated with a product on a web page
US20220292493A1 (en) * 2020-04-29 2022-09-15 Capital One Services, Llc Enhancing Merchant Databases Using Crowdsourced Browser Data
US11354655B2 (en) * 2020-04-29 2022-06-07 Capital One Services, Llc Enhancing merchant databases using crowdsourced browser data
US12002036B2 (en) * 2020-04-29 2024-06-04 Capital One Services, Llc Enhancing merchant databases using crowdsourced browser data
US11409829B2 (en) * 2020-12-21 2022-08-09 Capital One Services, Llc Methods and systems for redirecting a user from a third party website to a provider website
US11797633B2 (en) 2020-12-21 2023-10-24 Capital One Services, Llc Methods and systems for redirecting a user from a third party website to a provider website

Also Published As

Publication number Publication date
US20100313252A1 (en) 2010-12-09
US9201672B1 (en) 2015-12-01

Similar Documents

Publication Publication Date Title
US20160180436A1 (en) Method and system for identifying and displaying shopping deals
US10402883B2 (en) System and method for community aided research and shopping
US9117232B2 (en) Browser-based retrieval and display of content associated with a link that matches a link signature
US7975020B1 (en) Dynamic updating of rendered web pages with supplemental content
US20160321737A1 (en) Systems and methods for providing content provider-driven shopping
US20100281364A1 (en) Apparatuses, Methods and Systems For Portable Universal Profile
US8473361B2 (en) Method and system for assisting users during online
US20100293221A1 (en) Apparatuses, Methods And Systems For Integrated, Information-Engineered And Self-Improving Advertising, E-Commerce And Online Customer Interactions
US9330200B2 (en) System and method for presenting input suggestions in input fields of a specific type in web pages by replacing the input field with a combo box
WO2009137449A2 (en) Network-based distribution of application products
WO2010036481A2 (en) User interface for internet advertisement
US11430000B1 (en) Online system with browser executable
CN114078042A (en) Concurrent browsing interface with user attribute based recommendations
US9076169B2 (en) Digital delivery system and method
US20230259692A1 (en) Systems and methods for computer generation of a modifiable product description
US20190392018A1 (en) Displaying Data Using Enhanced Functionality
US20030130897A1 (en) System and method for automatic addition to online shopping carts
US20070276720A1 (en) Indexing of a focused data set through a comparison technique method and apparatus
AU2022429520A1 (en) Extracting webpage features using coded data packages for page heuristics
KR102234663B1 (en) System and method for providing goods information related event
CN101268461A (en) Method for transmitting information from an information server to a client
US20100257018A1 (en) Enhanced search marketing
WO2000041520A2 (en) System and method for computer-implemented consolidated mall shopping
US11551261B2 (en) Methods and apparatus for electronically determining item advertisement recommendations
Nguyen Building a software ecosystem for a start-up retail business

Legal Events

Date Code Title Description
STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION