WO2023201400A1 - Methods and systems for determining structured product data - Google Patents

Methods and systems for determining structured product data Download PDF

Info

Publication number
WO2023201400A1
WO2023201400A1 PCT/AU2023/050333 AU2023050333W WO2023201400A1 WO 2023201400 A1 WO2023201400 A1 WO 2023201400A1 AU 2023050333 W AU2023050333 W AU 2023050333W WO 2023201400 A1 WO2023201400 A1 WO 2023201400A1
Authority
WO
WIPO (PCT)
Prior art keywords
product
user
record
identifier
determining
Prior art date
Application number
PCT/AU2023/050333
Other languages
French (fr)
Inventor
Michael Dawson
Hannon COMAZZETTO
Original Assignee
Air Robe Pty 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
Priority claimed from AU2022901074A external-priority patent/AU2022901074A0/en
Application filed by Air Robe Pty Ltd filed Critical Air Robe Pty Ltd
Publication of WO2023201400A1 publication Critical patent/WO2023201400A1/en

Links

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/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0201Market modelling; Market analysis; Collecting market data
    • G06Q30/0206Price or cost determination based on market factors
    • 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/01Customer relationship services
    • G06Q30/015Providing customer assistance, e.g. assisting a customer within a business location or via helpdesk
    • G06Q30/016After-sales
    • 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/018Certifying business or products
    • 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/0241Advertisements
    • G06Q30/0251Targeted advertisements
    • G06Q30/0253During 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/02Marketing; Price estimation or determination; Fundraising
    • G06Q30/0278Product appraisal
    • 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/0283Price estimation or determination
    • 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]
    • 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/0645Rental transactions; Leasing transactions

Definitions

  • Described embodiments relate to methods and systems for determining structured product data, and in some embodiments, generating marketplace product pages associated with users using structured product data from the users’ transactions with ecommerce websites.
  • Some embodiments are directed to a a computer-implemented method comprising: responsive to determining that a first web server has received, from a user at a client device, a user request for a product page from a website hosted by the first web server, determining product data from the product page, the product data being associated with a product that can be ordered; transmitting the product data to a product data system; receiving, from the product data system, an estimated product resale price for the product and a record identifier, the record identifier identifying a record of the product in a database; causing a first interactive on-screen element to appear on the product page, the interactive on-screen element comprising the estimated product resale price and a user selectable opt -in option; responsive to determining that the user has selected the user selectable opt-in option and has instigated a confirmation to order the product from the website, causing a second interactive on-screen element to appear on an order confirmation page of the website, the second interactive on-screen element
  • determining product data from the product page comprises: parsing the product page to one or more predetermined locations and extracting one or more product details from the respective one or more predetermined locations.
  • determining product data from the product pages comprises: determining, using a machine learning model, one or more product data fields and extracting one or more product details from the respective one or more product data fields. [0009] In some embodiments, determining product data from the product page comprises: parsing the product page to one or more default locations and extracting one or more product details from the respective one or more default locations.
  • determining product data from the product page comprises: parsing the product page to determine data in a standard format and determining from the data in a standard format one or more product details.
  • determining the product data from the product page comprises: receiving, from the first web server, one or more structured data indicative of one or more product details.
  • transmitting the record identifier to the second web server comprises:
  • Some embodiments are directed to a computer implemented method comprising: determining that a message of a user messaging account relates to a product that has been ordered; determining product data from the message, the product data being associated with the product; transmitting the product data to a product data system; receiving, from the product data system, an estimated product resale price for the product and a record identifier, the record identifier identifying a record of the product in a database; causing a first interactive on-screen element to appear on a messaging page of the user, the first interactive on-screen element comprising the estimated product resale price and a user selectable opt -in option; responsive to determining that the user has selected the user selectable opt-in option, transmitting the record identifier to a second web server and causing a second interactive on-screen element to appear on the messaging page of the user, the second interactive on-screen element comprising a confirmation message that the record identifier has been transmitted and a user-selectable address identifier of
  • Some embodiments are directed to a computer-implemented method comprising: receiving, from an interaction tracking component, product data of a product made available for order; determining a product identifier from the product data ; determining a record for the product in a database using the product identifier, the record being associated with a record identifier; determining an estimated product resale price for the product based on the product data; transmitting the estimated product resale price and the record identifier to the interaction tracking component.
  • determining the record for the product in the database using the product identifier comprises: determining whether an existing record in the database corresponds with the product identifier; responsive to determining that an existing record in the database corresponds with the product identifier, retrieving the record identifier associated with the existing record.
  • determining the record for the product in the database using the product identifier comprises: responsive to determining that an existing record in the database does not correspond with the product identifier, creating a record for the product in a database, the record comprising at least some of the product data and allocating the record a new record identifier.
  • the interaction tracking component is embedded in a product page of a website, the product page being associated with the product made available for order.
  • the interaction tracking component is a browser extension installed in an internet browsing application.
  • the interaction tracking component is a message client add-on, enabled, turned on and/or installed into/onto a message client.
  • the product data comprises one or more of: material; colour; size; brand; manufacturer; weight; product sale price; and product dimension.
  • the product identifier comprises at least some of the product data and/or one or more of: order time, order date, order supplier, person who placed the order, and/or order location.
  • the disclosed methods further comprise: determining an order identifier, the order identifier comprising information relating to one or more of: order time, order date, order supplier, person who placed the order, order location, and/or merchant details.
  • Some embodiments are directed to a system comprising: one or more processors; memory, accessible to the one or more processors, and comprising computer executable code, which when executed by the one or more processors, is configured to cause the system to perform the method of any one of the present disclosures.
  • Some embodiments are directed to a a non-transitory machine-readable medium storing instructions which, when executed by one or more processors, cause a computing device to perform the method of any one of the present disclosures.
  • Figure 1 is a block diagram of a system for determining structured product data, according to some embodiments.
  • Figure 2 is a process flow diagram for a method of generating structured product data, the method configured to be performed by an interaction tracking component, according to some embodiments;
  • Figures 3A, 3B and 3C are examples of an on-screen interactive element generated according to the method of Figure 2, according to some embodiments;
  • Figures 4A, 4B, 4C, 4D, and 4E are example screenshots of a product page of an online ecommerce site depicting an interactive on-screen element, according to some embodiments;
  • Figure 5 is a process flow diagram of a method of generating structured product data, the method configured to be performed by a product data server, according to some embodiments;
  • Figure 6 is a block diagram of a marketplace platform module stored in memory of the product data server of the system of Figure 1 , according to some embodiments;
  • Figures 7A, 7B, 7C and 7D are example screenshots of a product page of a marketplace platform for reselling or renting products, according to some embodiments;
  • Figure 8 is a process flow diagram of a method of generating marketplace product pages associated with users using structured product data from the users’ transactions with ecommerce websites, according to some embodiments;
  • Figure 9A is an example screenshot of a product page of an online ecommerce site depicting an interactive on-screen element, according to some embodiments.
  • Figure 9B is an example of an alternative form of the interactive onscreen element of Figure 9A, according to some embodiments.
  • Figure 10 is a block diagram of a messaging server, according to some embodiments.
  • Figure 11A is an example screenshot of an email page, depicting an interactive onscreen element, according to some embodiments;
  • Figure 1 IB is an example of an alternative form of the interactive onscreen element of Figure 11A, according to some embodiments.
  • Figure 12 is a process flow diagram of a method generating structured product data, the method configured to be performed by an interaction tracking component, according to some embodiments.
  • Described embodiments relate to methods and systems for determining structured product data, and in some embodiments, generating marketplace product pages associated with users using structured product data from the users’ transactions with ecommerce websites.
  • Described embodiments involve providing or embedding an interaction tracking component (for example, a plug-in or a custom Application Protocol Interface (API)) at an web server hosting an ecommerce website, for example, by embedding the interaction tracking component in product pages of the ecommerce website.
  • an interaction tracking component for example, a plug-in or a custom Application Protocol Interface (API)
  • the interaction tracking component is configured to determine product data associated with the product of the particular product page and transmit the product data to a product data server.
  • the interaction tracking component is configured to provide the product page information to the product data server, which then determines product attributes from the product page information.
  • the interaction tracking component is configured to extract product attributes from the product page information and transmit the product attributes values to the product data server.
  • the data product server determines an estimated resale value for the product, and creates a record for the product in a database.
  • the record is allocated a record identifier, and comprises product attribute values and the estimated resale value for the product.
  • the data product server provides the estimated resale value and the record identifier to the interaction tracking component.
  • the interaction tracking component generates a first widget for display on the product page, the first widget comprising the estimated resale value and user selectable opt in option, providing the user with an option to create a user product page for the product in a marketplace platform.
  • the marketplace platform may be configured to facilitate resale and/or renting of products by users and/or members of the marketplace.
  • the marketplace platform may be integrated with or be separate to and configured to interact with, the interaction tracking functionality.
  • the interaction tracking component Responsive to the user opting in and completing an order for the product, the interaction tracking component generates a second widget for display on a transaction confirmation page of the ecommerce website, the second widget comprising a link to the marketplace platform.
  • the link may comprise a URL to the marketplace web server and the record identifier.
  • the URL may comprise two or more record identifiers, each record identifier being associated with a respective product.
  • the user’s client device is redirected to the marketplace website. If the user already has an account with the marketplace platform, the user may log in, or maybe automatically logged in; otherwise, the user may be prompted to sign up. In either case, once the user has logged into their account, the marketplace platform associates the record identifier with an account identifier for the user, and generates a marketplace product page populated with details determined from the record of the record identifier.
  • the interaction tracking component is a browser extension.
  • the browser extension may be installed as an add-on to a user’s web browser to perform actions.
  • the browser extension is configured to determine product data associated with the product of the particular product page and transmit the product data to a product data server.
  • the browser extension Responsive to receiving the estimated resale value and the record identifier from data product server, the browser extension generates a first widget for display over the product page.
  • the first widget comprising the estimated resale value and user selectable opt in option, providing the user with an option to create a user product page for the product in the marketplace platform.
  • the browser extension Responsive to the user opting in and completing an order for the product, the browser extension generates a second widget for display over the transaction confirmation page of the ecommerce website, the second widget comprising a link to the marketplace platform.
  • the link may comprise a URL to the marketplace web server and the record identifier.
  • the URL may comprise two or more record identifiers, each record identifier being associated with a respective product.
  • the interaction tracking component is a message client add-on, such as an email client add-on, that may be enabled, turned on and/or installed into/onto a message client.
  • the message client add-on is configured to parse the messages or emails within a user’s inbox to find messages or emails indicative of the user having placed an order for one or more products.
  • the message client add-on is further configured to determine product data associated with the one or more products that have been ordered, and transmit the product data to a product data server.
  • the message client add-on Responsive to receiving the estimated resale value and the record identifier from data product server, the message client add-on generates a first widget for display over the message client page or screen.
  • the first widget comprising the estimated resale value and user selectable opt in option, providing the user with an option to create a user product page for the product in the marketplace platform.
  • the message client add-on Responsive to the user opting in, the message client add-on generates a second widget for display over the message client page or screen, the second widget comprising a link to the marketplace platform.
  • the link may comprise a URL to the marketplace web server and the record identifier.
  • the URL may comprise two or more record identifiers, each record identifier being associated with a respective product.
  • Some of the described embodiments may afford the advantage of efficiently and effectively collecting product data, in an automatic fashion, from an ecommerce website and communicating the product data to a marketplace for use in displaying and making available for sale a product or products associated with the product data.
  • Some embodiments are advantageous in that they may collect and communicate the product data without requesting and/or requiring personal and/or sensitive user data to be supplied by or retrieved from the ecommerce website, such as user passwords, email addresses and/or session tracking tokens, such as cookies.
  • FIG. 1 is a block diagram of a system 100 for generating structured product data for ordered for consumer products, or consumer products made available for order, according to some embodiments.
  • the system 100 comprises a product data processing server 125 arranged to communicate one or more online ecommerce site 118 over a network 117.
  • the product data processing server 125 may further communicate with one or more client device 110 and/or one or more databases 116 over the network 117.
  • the system 100 comprises client-server architecture where the product data processing server 125 is configured as a server and client device 110 is configured as a client device.
  • the network 117 may include, for example, at least a portion of one or more networks having one or more nodes that transmit, receive, forward, generate, buffer, store, route, switch, process, or a combination thereof, etc. one or more messages, packets, signals, some combination thereof, or so forth.
  • the network 108 may include, for example, one or more of: a wireless network, a wired network, an internet, an intranet, a public network, a packet-switched network, a circuit-switched network, an ad hoc network, an infrastructure network, a public-switched telephone network (PSTN), a cable network, a cellular network, a satellite network, a fibre-optic network, some combination thereof, or so forth.
  • PSTN public-switched telephone network
  • the client device 110 may comprise a mobile or handheld computing device such as a smartphone or tablet, a laptop, or a PC, and may, in some embodiments, comprise multiple computing devices.
  • the client device 110 may comprise one or more processor 112, communicable with memory 113.
  • Memory 113 may comprise web browser 114 which comprises computer executable code, which when executed by the one or more processors 112, is configured to allow client device 110 to access websites via network 117.
  • Memory 113 may also comprise ecommerce app 135, configured to allow the client device 110 to access purchasable products from one or more sales outlets via network 117 and/or one or more interaction tracking components 137a.
  • Interaction tracking component 137a may comprise browser extension 144, configured to allow the web browser 114 to perform actions, such as data collection and/or offering the user additional bonuses, services or awards for particular behaviours, for example.
  • Browser extension 144 may be downloadable from a first party browser extension store, such as the Chrome web store, Safari extension store and/or the Firefox browser add-on store. Browser extension 144 may also be downloadable via a third- party browser extension repository, or from a service provider website.
  • a first party browser extension store such as the Chrome web store, Safari extension store and/or the Firefox browser add-on store. Browser extension 144 may also be downloadable via a third- party browser extension repository, or from a service provider website.
  • Online ecommerce site 118 may be hosted by a web server 121.
  • the web server 121 may comprise at least one processor 119 in communication with a memory 120 and a network interface 124.
  • Memory 120 may comprise both volatile and nonvolatile memory.
  • the network interface 124 may enable communication with other devices such as user device 110, database 116 and/or product data server 125.
  • Memory 120 stores executable program code to provide the various computing capabilities of the web server 121 and the online ecommerce site 118 it hosts, as described herein.
  • Memory 120 comprises one or more interaction tracking components 137, such as plug-in 135 and/or custom API 136.
  • the interaction tracking component(s) 137 such as plug-in 135 (which may be a third-party plug-in), custom API 136, structured data plug-in 138 and/or machine learning plug-in 140, may be configured to automatically request, and/or send and/or be caused to request and/or send product data, which may include product page information and/or product details from online ecommerce site 118.
  • the interaction tracking component 137 may comprise computer executable code, such as HML, Javascript, CSS, JSON and/or XML, for example, configured to perform specific functionality.
  • the interaction tracking component 137 may be placed or embedded within the computer executable code that defines the product page such that when the code that defines the product page is executed, the code of the interaction tracking component 137 may also be executed.
  • Third-party plug-in 135 may be a multi-purpose plug-in, in that it may be applied to, or embedded on, any online ecommerce site that utilises third party storefront and/or marketplace services.
  • Third party storefront services may use a default product page data structure, syntax and or format, such that plug-in 135 may be configured to parse the product page information to find one or more default or standard code portion(s) or locations associated with the product details, regardless of the specific online ecommerce site 118, collect, retrieve or extract these and cause them to be communicated to the product data server 125.
  • the plug-in 135 may be an integrated module or code portion of a particular online store-front product/service provided by the third-party platform, such as Shopify, WIX eCommerce and/or Square Online, for example. Accordingly, when a merchant uses the online storefront product/service of the third- party provider, the plug-in 135 and associated functionality may be automatically applied to a product page for any merchant and/or e -commerce website proprietor that uses the store-front product of the third-party. This may remove a requirement for the third-party plug-in to be manually applied to a merchant’s particular online e- commerce page.
  • Custom API 136 may be specifically configured to parse and determine, extract and/or retrieve product details from an online ecommerce site 118 that uses a non-standard or bespoke storefront and/or marketplace.
  • custom API 136 may be configured to parse the bespoke data structure of the non-standard storefront of online ecommerce site 118 for the product details, collect the details and cause them to be communicated to the product data server 125.
  • Structured data plug-in 138 may be configured to parse an unknown structured ecommerce website to retrieve the product details.
  • the structured data plug-in 138 may be configured to find and/or interpret data according to atypical, known, standard and/or recognisable structure format to determine product details.
  • structured data plug-in 138 may also or alternatively be configured to request and/or intercept structured data packets/documents from one or more ecommerce web servers 121 to retrieve the product data.
  • Structured data may be in a JSON-LD format, a Microdata format or an RDFa format, for example.
  • Machine learning plug-in 140 may comprise a machine learning model configured to parse ecommerce pages, for example, pages with an unknown structure, to find and extract product details.
  • Machine learning plug-in 140 may comprise or be in communication with a machine learning model (not shown), trained and validated using a dataset of ecommerce website program code.
  • the machine learning model may be capable of determining the location and attribute values of various product data on ecommerce websites that were not part of its training and/or validation dataset.
  • devices other than the ecommerce web server 121 may comprise an interaction tracking component, such as interaction tracking component 137a of client device 110.
  • Interaction tracking component 137a may comprise browser extension 144.
  • Browser extension 144 may be configured to parse a product page to determine product page data using one or more of the processes used by third-party plug-in 135, custom API 136, structured data plug-in 138 and/or machine learning plug-in 140. Browser extension 144 may also be configured to communicate the product details to the product data server 125.
  • the interaction tracking component(s) 137 is configured to generate a first widget or first on-screen element 318 ( Figures 3a to 3c, and Figures 4a to 4d) to provide the user of the online ecommerce site 118 with an option to engage with a marketplace platform for reselling and/or renting products.
  • the first onscreen element comprises a user selectable opt -in option 310, which when activated by the user, indicates to the interaction tracking component 137, the user’s interest in potentially seeking to resell or rent the product at a later stage.
  • the interaction tracking component 137 may be configured to receive a valuation or estimated resale price for the product associated with the product identifier from the product data server 125 and to populate a field of the first on-screen element 318 with the estimated resale price.
  • the interaction tracking component 137 may also receive a record identifier indicative of a record for the product created or retrieved by the product data server 125.
  • the interaction tracking component 137 may cause a second widget or second onscreen element 440 ( Figures 4e) to be presented to the user, for example, on a confirmation of payment page of the ecommerce site 118.
  • the second on-screen element 440 may comprise user selectable link 444.
  • the user selectable link 444 may comprise a website address or Universal Resource Locator (URL).
  • URL Universal Resource Locator
  • the user may log in, for example using their username and password, or may be automatically logged in. If the user is not a member of the marketplace platform, they may be prompted to create an account, by creating a username and password.
  • the website address or URL may contain or include one or more record identifiers associated with one or more products that have been ordered by the user.
  • the one or more record identifiers may be passed between the online ecommerce server 121 and the product data server 125 using query strings.
  • the SID query param may represent a merchant identifier
  • the RID query parameter may represent an order identifier
  • PID may represent a product identifier.
  • multiple record IDs may be appended to the end of the website address or URL, for example
  • the product data server may retrieve the one or more record identifiers from the website address or URL and associate the database record associated with the record identifier with the logged in user account.
  • each user account may comprise or be associated with a set of owned or associated product records.
  • the owned product records may include product details indicative/associated with the particular product the user ordered, and which may be useful or required to describe the ordered product on the marketplace platform.
  • the record may comprise a product name, a brand, a size, a colour and/or a sale/resale price.
  • the owned product records may comprise a record identifier that links to a separate database, the separate database comprising a set of less specific product records, such as only product name and product brand.
  • the owned record may also comprise item specific details for the particular ordered item, such as size, colour and/or sale/resale price.
  • each user account may comprise one or more record identifiers that associate a product record in a database with the particular user account.
  • the product record in the database may comprise relevant product details that may be useful or required to describe the ordered product on the marketplace platform, such as a product name, a brand, a size, a colour and/or a sale/resale price.
  • Product data server 125 may comprise at least one processor 126 in communication with a memory 127 and a network interface 134.
  • Memory 127 may comprise both volatile and non-volatile memory.
  • the network interface 134 may enable communication with other devices such as user device 110, database 116 and/or online ecommerce site 118.
  • Memory 127 stores executable program code to provide the various computing capabilities of the product data server 125 described herein.
  • memory 127 comprises a product information collection module 128, product assessment module 130, categorisation mapping module 131, record management module 132, and/or marketplace platform module 133.
  • Product information collection module 128 may be configured to receive from interaction tracking component 137 ofthe online ecommerce site 118, or interaction tracking component 137a of client device 110, or interaction tracking component 137b of messaging server 1010, product data capable of identifying a product available for order on online ecommerce site 118.
  • product information collection module 128 and/or interaction tracking components 137, 137a and/or 137b may be configured to communicate using data packets comprising computer executable code such as hypertext transfer protocol (HTTP), hypertext markup language (HTML), extensible markup language (XML), JavaScript object notation (JSON) messages, and/or any other type of data transfer protocol used to transfer relevant web page information.
  • HTTP hypertext transfer protocol
  • HTML hypertext markup language
  • XML extensible markup language
  • JSON JavaScript object notation
  • the product data may comprise page information and/or product details associated with the product.
  • the product data may be used to determine one or more product identifiers.
  • the product identifier may comprise product data, such as, attribute values for one or more product attributes, which may include, for example, product code, product price, product name, product designer/manufacture, product type, product make, product model, product colour, product year of design/manufacture, etc.
  • the product identifier may also comprise one or more order values, or values that are not product values or attributes.
  • the product identifier may comprise order time, order date, order supplier, order location and/or any other value that may be indicative of the order, supplier, person who placed the order, system that facilitated the order, payment method and/or payment supplier.
  • Product information collection module 128 may be configured to perform one or more data sanitisation processes.
  • Data sanitisation processes may include removing empty fields (i.e. NULL values), checking and/or clipping string lengths, removing special characters (e.g. %, *, and/or ”), and/or checking datatypes (e.g. integer, String or float) match required datatypes as dictated by database management protocols, or conversion between data formats such as Markdown or HTML.
  • the product assessment module 130 may query, using the product identifier, a database such as database 116, and/or other third party databases, such as one maintained by the web server 121 hosting the ecommerce website 118, to retrieve specific product details associated with the product identifier(s).
  • the product identifier comprises product page information
  • the product assessment module 130 is configured to scrape or extract relevant product details from the product page information.
  • the interaction tracking component(s) 137 and/or 137a are configured to scrape or extract the relevant product details from the product page information and the product identifier transmitted to the product assessment module 130 from the interaction tracking component(s) 137 and/or 137a comprises the relevant product details.
  • Product assessment module 130 may determine, based on the product identifier, whether the product complies with suitability requirements. For example, the product assessment module 130 may be configured to determine one or more of the product attributes meet specific product attribute requirements, such as whether the a price of the product exceeds a threshold, and/or whether a designer of the product is on a preapproved list of designers. In some embodiments, product assessment module 130 may compare one or more product attributes or details associated with the product identifier with a subset of or all records of products stored in database 116 to determine whether the product is sufficiently similar to other products for which records are maintained. For example, the product may be deemed unsuitable if no other instance of that product, or any products similar to that product, are found in the database 116.
  • Product assessment module 130 may be configured to determine a valuation or an estimated resale price of the product based on the product identifier.
  • the valuation or resale price may be calculated using the sale price and applying an estimated depreciation factor. For example, a product may have a firsthand sale price of $1,000, the product assessment module 130 may apply a depreciation factor of 0.2, resulting in an estimated resale value of $800.
  • the product assessment module 130 may determine an estimated resale value based on known resale prices of similar products, such as may be tracked by the product data server and, for example, stored in product records in database 116.
  • database 116 may comprise three records or entries relating to a specific summer dress, having historical resale data of $760, $880 and $700.
  • Product assessment module may be configured to take the average resale price of the historical sale data relating to the summer dress, giving the product an estimated resale price of $780.
  • the product assessment module 130 may be configured to determine what effect, if any, the product details may have on the estimated resale price, and revaluate the estimated price up or down accordingly.
  • the product assessment module 130 may determine that the black version of the dress is more popular that other colours and may estimate the cost of the black version as having a higher resale price than other colours.
  • the product assessment module 130 may determine a set of weights for respective products.
  • the sets of weights may be determined based on historic sales data.
  • the weights may be configured to account for variations in details of products and the potential impact on sale price, such as, red shoes may sell for a higher price than blue shoes, and/or garment length may not impact sale price at all, for example.
  • the product assessment module 130 comprises a trained machine learning resale price prediction model configured to predict a resale price for a candidate product based on values for one or more product attributes.
  • the resale price prediction model may be trained using historical dataset of information about resold products. The information may include, for each example product, an original sale price, and values for one or more product attributes (which may be used as inputs for the model) and a resale price (which may be used as the target for the model).
  • the product data server 125 comprises a categorisation mapping module 131 configured to classify or categorise products based on the determined product attributes.
  • the categorisation mapping module 131 may be configured to convert/transform collected and/or sanitised product data into compatible values for use by the marketplace platform.
  • Product data conversion/transformation may comprise converting non-standard values into standard and/or generic values, such as converting the colour string ‘mauve’ to the more generic colour string ‘purple’. Conversion/transformation may also comprise converting a region specific data entry into a generic and/or other region(s) specific data entry.
  • categorisation mapping module 131 may convert a US garment size into a European garment size, convert imperial measurements into metric measurements, and/or convert a region specific garment size into a series of dimensions based upon a stored conversion table.
  • the categorisation mapping module 131 may also convert region specific spellings of words into their corresponding alternative spelling(s), such as converting ‘color’ to ‘colour’.
  • the categorisation mapping module 131 may also be configured to interpret determined product data tags from the collected product data, and determine the equivalent data tag in the database 116.
  • the categorisation mapping module 131 may determine that the data tag ‘brand’ is equivalent to the data tag ‘manufacturer’, and assign the data associated with the ‘brand’ data tag, with the ‘manufacturer’ data field in database 116.
  • the product data server 125 comprises a record management module 132.
  • the record management module 132 may be configured to create a new order or record in database 116 to document a product being considered for order by the user of the site 118, or a product already bought or ordered by the user.
  • the record management module 132 may be configured to populate fields of a template record using values for attributes of the product determined from the product information collection module 128, and/or categorisation mapping module 131, including the estimated resale price.
  • the record management module 132 may allocate the new record a record identifier.
  • the record identifier may be a unique identifier.
  • the record management module 132 may be configured to cooperate with the marketplace platform module 133 to manage records, such as to retrieve, delete, and/or update records, and/or to associate particular record identifiers with particular member accounts of the marketplace platform.
  • record management module 132 may be configured to search the existing records of database 116 to determine if one or more of the product details collected from the product page match any existing records of database 116. If an existing record in the database 116 matches the product details collected from the product page, record management module 132 may not create a new record, but may instead, retrieve the record identifier of the existing record, and use the existing record identifier in place of creating an new record identifier.
  • the threshold required for the product of an existing record to be determined to be the same as the product associated with the collected product details may depend on the nature of the records stored in database 116 and/or may be selectively determined or set by an administrator at configuration time.
  • database 116 may contain a unique record entry for every variation of a particular product across attributes such as colour, size and/or fit.
  • database 116 may contain a record for every waist size and colour of a particular pair of pants, such as a record for pants in waist size 30 in colour blue, and a record for the same pair of pants in waist size 30, but in colour red.
  • record management module 132 may search the records of database 116 for an exact match with the product details collected from the product page. If an exact match, including such product details as colour, size, length and/or fit is not found, then record management module 132 may create a new record and associated unique identifier, as described above.
  • database 116 may comprise records that describe the general details of a product, such as product name and brand, but may not have a record for every variety of a particular product (e.g. size, colour and/or length).
  • the record management module 132 may be configured to search the existing records for a predetermined minimum set of matching details, such as name and brand, for example. Responsive to determining a matching record in database 116, the record management module 132 may cooperate with marketplace platform module 133 to create anew product record that is associated with, or is capable of being associated with, a new or existing user account of the marketplace platform.
  • the new product record may comprise the specific product details of the ordered product(s), such as size, colour, length and/or fit, for example.
  • the product assessment module 130 is configured to transmit the valuation or estimated resale price to the interaction tracking component(s) 137, 137a and/or 137b for populating a field of widget or on-screen element with the estimated resale price.
  • the product assessment module 130 may also be configured to transmit the record identifier to the interaction tracking component(s) 137, 137a and/or 137b.
  • product assessment module 130 may be configured to transmit a record identifier for each respective product simultaneously to the interaction tracking component(s) 137, 137a and/or 137b.
  • the product assessment module 130 may receive order confirmation from the interactive tracking component(s) 137 or 137a.
  • the order confirmation may comprise an order identifier.
  • the product assessment module 130 may delete the record of the product from the database 116.
  • the product data server 125 comprises a marketplace platform module 133. It will be appreciated, however, that in other embodiments, the marketplace platform module 133 may be deployed on or hosted by another, different, and/or remote server.
  • Figure 2 is a process flow diagram of a method 200 for facilitating resale of ordered consumer products, according to some embodiments.
  • the method 200 may be implemented by the system 100.
  • the first web server 121 may be configured to execute the interaction tracking component(s) 137 or 137a to cause the first web server 121 to perform the method 200.
  • the interaction tracking component(s) 137 or 137a determines product data from the product page.
  • the product data is associated with a product for sale.
  • the syntax and/or structure of product pages and/or data transfer messages between the web server and a user’s client device may be of a standard syntax and/or structure.
  • the interaction tracking component 137 may comprise plug-in 135 configured to parse the product page information to find a known location, message field and/or code portion associated with the product details and collect and/or extract one or more product details, and provide the determined product details as product data to the product data server 125 .
  • online ecommerce site 118 may implement a bespoke online storefront and/or marketplace, with an associated non-standard product page information structure. If the structure of the product page information is not a standard syntax and/or structure, the interaction tracking component 137 may comprise a custom API 136 specifically configured to parse the non-standard structure and retrieve the relevant product details.
  • the interaction tracking component 137 may be a custom HTML element comprising one or more parameters, data fields and/or variables containing, storing and/or otherwise representing product attributes of the product made available for order on the particular product page.
  • the product attributes may comprise one or more of category, price, original full price, colour and/or size.
  • the custom API 136 may parse the product page information to identify key words or phrases, or locate common locations and/or data fields to locate and subsequently determine, extract and/or collect product detail(s).
  • the custom API 136 may be configured to detect or identify keywords such as “product”, “details”, “productDetails”, “description”, “size”, “material”, and/or “colour”, for example, and to extract values in a vicinity of the detected work, and associated the detected word with the respective extracted value.
  • structured data plug-in 138 may be configured to parse the unknown structured ecommerce website to retrieve the product details.
  • the structured data plug-in 138 may be configured to find and/or interpret data according to a typical, known and/or recognisable structure format.
  • machine learning plug-in 140 may be trained and used to parse, or otherwise interpret the online ecommerce site to determine one or more product data fields to extract, retrieve or otherwise determine the product details.
  • interaction tracking component(s) 137a and/or 137b may comprise executable program code or be configured to perform the same functions as plug-in 135, custom API 136, structured data plug-in 138 and/or machine learning plug-in 140.
  • the interaction tracking component(s) 137 or 137a transmits or communicates the product data to the product data server 125.
  • the product data may comprise information extracted or scraped from the product page.
  • the interaction tracking component(s) 137 or 137b are configured to extract specific product attributes from specific fields or areas of the product page.
  • the product attributes may, for example, comprise the product name, colour, designer, size and/or sale price.
  • the interaction tracking component(s) 137 or 137a determines, for example, from the product data system, an estimated product resale price for the product and a record identifier.
  • the record identifier identifies a record of the product in the database 116.
  • the record may have been created by the product data server 125 in response to receiving the product data from the interaction tracking component(s) 137 or 137a.
  • the interaction tracking component(s) 137 or 137a causes an interactive on-screen element to appear on the product page of the website.
  • the interactive on-screen element comprises the estimated resale price and a user-selectable opt-in option.
  • the user-selectable opt-in option may comprise a button, slider, toggle and/or tick box indicating whether the interactive on-screen element has been interacted with. Examples of the interactive on-screen element 318 are shown in Figures 3A to 3C, and 4A to 4D, as discussed below.
  • a confirmation e.g.
  • the interaction tracking component(s) 137 or 137a causes a second interactive on-screen element to appear on an order confirmation page of the website.
  • the second interactive on-screen element comprises a user-selectable address identifier of a second web server, such as a web server of a marketplace.
  • An example of the second interactive on-screen element is shown in Figure 4E, as discussed below.
  • the first web server 121 redirects the client device to the address of the second web server, and the interaction tracking component(s) 137 or 137b transmits the record identifier to the second web server.
  • Figures 3 A is an image of a collapsed interactive on-screen element 318A associated with a product for sale, according to some embodiments.
  • Collapsed interactive onscreen element 318A may comprise call to action 312, inviting a user to engage with a resale opportunity for the product and estimated resale value 314 of the product.
  • Collapsed interactive on-screen element 318A may comprise a user selectable opt in, such as a toggle, 310 indicating whether the user has opted in.
  • the interactive on-screen element 318A When the interactive on-screen element 318A is first caused to appear by the interaction tracking component 137, it may appear in the collapsed form 318 A, with the toggle 310 set to a “no” or opt out position, as shown in Figure 3A.
  • the interactive on-screen element 318A may be caused to first appear in either the expanded or collapsed form, and with the toggle set to either “no” or “yes”.
  • Figure 3B is an image of expanded interactive on-screen element 318B, according to some embodiments.
  • Drop down button 315 may be interacted with to change interactive on-screen element 318A into expanded interactive onscreen element 318B, as seen in Figures 3B and 3C.
  • Drop down button 315 may be interacted with again to collapse expanded interactive on-screen element 318B into collapsed interactive onscreen element 318A.
  • Expanded interactive on-screen element 318B may further comprise explanatory text 320, and link 322.
  • Explanatory text 320 may briefly describe the system and the benefits from using the system.
  • Link 318 may redirect the user to additional information further explaining the system, its features and the ways in which it can be engaged with.
  • link 322 will cause a pop-up window to appear over the product page presenting the additional information, as can be seen in Figure 4C.
  • Figure 3C is an image of expanded interactive on-screen element 318B. according to some embodiments.
  • toggle 310 is in the “yes” or opt in position, indicating the user has interacted with the interactive on-screen element 318B, and has opted in, either for a first or subsequent time.
  • Toggle 310 may be interacted with to swap it from the “no” or “yes” position into the opposite position at will, by the user.
  • the interaction tracking component 137 may receive an indication that the change has occurred.
  • toggle 310 changes from the “yes” position to the “no” position the interaction tracking component 137 may receive an indication the change has occurred.
  • Figure 4A is an image of a product page 400 of an ecommerce website, such as site 118, featuring a first widget or interactive on-screen element 418, according to some embodiments.
  • Product page 400 may comprise one or more of product image 402, product designer 404, product name 405, product colour selector 406, product price 410, product size selector 408, user selectable opt in option (for example, toggle) 310 and drop down button 315, order button 412, product description 414 and read more button 416.
  • Product colour selector 406 may be configured to allow the user to select one or more garment colours.
  • product colour selector 406 may comprise more than one field, each separate field being associated with a colour of a particular segment of a garment.
  • Product size selector 408 may be configured to allow the user to select a garment size from a range of possible sizes. This may include at least: length, size, waist diameter, and/or bust size. Read more button 416 may be interacted with to cause additional product information to be observable by the user, such as design notes, specific features and/or marketing content, for example.
  • Figure 4B is an image of the product page 400 of an ecommerce website featuring an interactive on-screen element 418, according to some embodiments.
  • drop down button 315 has been interacted with, causing interactive onscreen element 418 to change or transition into expanded interactive onscreen element 418.
  • product page 400 of Figure 4B further comprises explanatory text 320, and link 322.
  • Figure 4C is an image of the product page 400, featuring pop up 425 depicting the additional information about the marketplace platform.
  • Pop-up 425 may be caused to appear when the user interacts with link 322.
  • the additional information offered by pop up 425 my comprise instructions 427; for signing up and using the features of the marketplace platform, environmental benefits message 429; indicating the environmental benefits that may come from engaging with the features with the marketplace platform, and exit button 428; allowing the user to close the pop-up 425.
  • Figure 4D is an image of product page 400, according to some embodiments.
  • toggle 310 of interactive on-screen element 318 has been interacted with to change it to the “yes” or opt-in option.
  • Figure 4E is an image of order confirmation page 435, of an online ecommerce site, according to some embodiments.
  • Order confirmation page 435 may comprise order confirmation message 437, second widget (opt-in confirmation) 440, and/or delivery address 446.
  • Opt-in confirmation 440 may comprise opt-in confirmation message 442 and claim link 444. Responsive to determining that the order for the product has been completed and the user has opted in, the opt-in confirmation 440 may be generated and caused to appear on order confirmation page 435.
  • FIG. 5 there is shown a process flow diagram of a method 500 determining structured product data, according to some embodiments.
  • the determined structured product data may be used to facilitate on-selling of a product associated with the structured product data on a marketplace platform.
  • the method 500 may be implemented by the product data server 125, according to some embodiments.
  • the product data server 125 receives product data from an interaction tracking component embedded in product page of a website hosted by a first web server.
  • the product data may be used to determine or may comprise a product identifier of a product made available for order.
  • the product data may comprise product page information
  • the product data server 125 may be configured to scrape, determine or otherwise extract the product identifier, and/or values for product attributes from the product page information.
  • the interaction tracking component 137 may be configured to extract the product data from the product page information and the received product data may comprise the product identifier, and/or values for product attributes or be used to determine the product identifier.
  • the product data server 125 may be configured to disregard blank or null product detail fields to avoid processing errors and/or system failures, such as null pointer exceptions.
  • the product data server 125 creates a record or entry for the product in a database.
  • the record may comprise at least some of the product data.
  • the product data server 125 allocates the record a record identifier.
  • the record identifier may be unique to other records of product data as created by the product data server 125.
  • the product data server 125 determines an estimated product resale price for the product based on the product data. In some embodiments, the product data server 125 may be configured to determine the estimated product resale price for the product.
  • the product data server 125 transmits the estimated product resale price and the record identifier to the interaction tracking component.
  • FIG. 6 is a block diagram of the marketplace platform module 133.
  • Memory 127 of product data server 125 may comprise the marketplace platform module 133, or the marketplace platform module 133 may be provided on or to a second, and in some embodiments, remote, web server (not shown).
  • the marketplace platform module 133 may comprise a marketplace website application 600, which when executed by the product data server 125, or other web server, is configured to provide a marketplace platform.
  • the marketplace platform may be a social media configured to allow consumers and vendors to communicate with one another to buy and sell products or services.
  • the marketplace platform may be available only to members, or in some embodiments, vendors may be required to maintain membership with the marketplace, but the marketplace may be accessible to anyone to view and/or engage with vendors to order an advertised product.
  • the marketplace platform module 133 may comprise an account management module 604.
  • the account management module 604 may be configured to manage user account data such as contact information, products, historic sale, order and rental data, and/or environmental impact data associated with the user account.
  • the account management module 604 may be configured to cooperate and act on user requests for creating a user account and/or accessing and/or editing a user account, for example to view and modify a user profile associated with the user account.
  • a user account may comprise or be associated with a user profile.
  • the user profile may comprise one or more marketplace product pages associated with the user.
  • Each marketplace product page may display details of a product for sale or rent by the user.
  • the marketplace platform module 133 may comprise a product data module 606.
  • the product data module 606 may be configured to determine or retrieve product details for the marketplace product page from respective records of the products ordered by the user, as may be saved in database 116 by the product data server 125. For example, when the user clicks the link 444 provided on a confirmation page of an ecommerce website, the user’s client device may be redirected to the marketplace website, and the record identifier of the ordered product may be provided to the marketplace platform module 133. The product data module 604 may then use the record identifier to retrieve the relevant product data to build or generate the marketplace product page.
  • the product data for example in the form of a product listing 744 as shown in Figure 7B, may be displayed on a log in and/or create new account page of the marketplace platform.
  • the marketplace platform module 133 may comprise a product re-sell/rent module 608 may be configured to facilitate order and/or rent of products advertised on marketplace product pages.
  • the product rc-scll/rcnt module may be configured to determine a selection by a customer of the marketplace of a particular product on a particular marketplace product page, and to perform the necessary interactions with the customer to execute the transaction.
  • the marketplace platform module 133 may comprise a payment processing module 610 configured to process payments on behalf of the customer and vendor.
  • the marketplace platform module 133 may comprise a product recycle module 608 configured to determine whether a product is suitable for recycling and/or donation.
  • the product recycle module 608 may comprise a population of recycle and/or donation entities, each entity having an associated set of recycle and/or donation requirements.
  • the product recycle module 608 may compare the product details of a candidate product for recycling or donation with sets of recycle and/or donation requirements of the entity population to determine one or more entities suitable for or willing to accept the product.
  • the product recycle module 608 may be configured to present a list of suitable entities to the user, in response to user selection of a user selectable recycle and/or donate option, which may be displayed on the respective marketplace product page, or which may be displayed automatically on the respective marketplace product page.
  • the user may select one of the entities from the list of suitable entities and in response, the product recycle module 608 may be configured to facilitate the recycling and/or donation of the product to the selected entity.
  • Figure 7A is an example screenshot of user product collection page 700 of the marketplace platform.
  • User product collection page 700 may comprise account summary 710, product listings 712, 716, and/or 726, search button 732 and/or menu button 734.
  • the account management module 602 may be configured to determine and present account summary 710.
  • Account summary 710 may comprise total value of all products associated with the user’s account, total earnings from economic activity via the marketplace platform, and/or an environmental contribution the user has had by using the marketplace platform.
  • the environment contribution the user has had by using the marketplace platform may be determined by assessing product details such as the material the product is made from, the product type (e.g. dress, pants and/or shoes), and the product size.
  • product details such as the material the product is made from, the product type (e.g. dress, pants and/or shoes), and the product size.
  • the product details may then be cross-referenced with known average carbon dioxide emissions, water usage and/or other resource usage associated with the particular production and/or transportation of similar items.
  • the environmental cost/impact of purchasing a ‘new’ instance of the product, as calculated using the product details mentioned above is then considered to be off-set, thus reducing the respective use of resources.
  • the product data module 604 may be configured to retrieve from database 116, product listings 712, 716, and/or 726 and cause them to be presented, for example, in an ordered or orderable list, on product collection page 700.
  • product listings 712, 716 and/or 726 may comprise recycle button 714, rent button 722, re-sell button 724, ecommerce website name 730; indicating where the product was ordered from, product name and description 732, product order price 718, estimated resale value 720 and/or status 728.
  • Product status 728 may indicate the product has been made available for sale or rent and the price the product has been made available for.
  • the account management module 602 may be configured to allow the user to inspect and/or edit their account details by interacting with menu button 734.
  • the product data module 604 may enable the user to search their product listings by interacting with search button 732.
  • Each product listing may comprise a marketplace product page.
  • Figure 7B is an example screenshot of a sign-up page 740 of the marketplace platform, according to some embodiments.
  • a new user, or a user who is not signed into their account may be redirected to sign-up page 740 by interacting with link 444.
  • Signup page 740 may comprise one or more encouragement message 742; urging the user to create a new account, recently ordered product listing 744, password field 748, tick boxes 750 and/or confirmation button 752.
  • the user may complete the account creation process by entering a password in field 748, accepting any terms and conditions by interacting with one or more tick box 750 and interacting with the confirmation button 752.
  • the account management module 602 upon receiving an indication the confirmation button 752 has been interacted with, may create a new user account and cause product data module 604 to associate the product of the record identifier, that is product listing 744, with the new user account.
  • the interaction tracking component 137 may transmit a user email address from online ecommerce site 118 during the purchasing process. The user email address is used for the account creation process.
  • Figure 7C is an example screenshot of a marketplace product resale page 760 as hosted by marketplace platform, according to some embodiments.
  • Product resale page 760 may comprise a product for resale list 762, selling price field 764, suggested resale price 764A, condition indicator 768 and/or save button 770.
  • the user may navigate to the product resale page 760 by interacting with the “re-sell” button 724 of a respective product listing.
  • an estimated product resale value 764A may be prefilled into selling price field 764 by product re-sell module 529.
  • the user may edit the sale price by interacting with selling price field 764 and entering a desired selling price.
  • the user may indicate the product condition by selecting an option from condition indicator 768.
  • the product re-selling module 529 upon receiving an indication the save button 770 has been interacted with, cause the product to be made available for order by another user of the marketplace platform.
  • Figure 7D is a confirmation page 780 of the marketplace platform, according to some embodiments.
  • Confirmation page 780 may comprise confirmation message 782, ecological impact metrics 784 and/or return button 786.
  • the product data module 604 may be configured to redirect the user’s client device to product collection page 700 in response to the user interacting with return button 786.
  • Figure 8 is a process flow diagram of method 800 for generating marketplace product pages associated with users using structured product data from the users’ transactions with ecommerce websites, according to some embodiments.
  • the method 800 may be implemented by a web server of a marketplace platform.
  • the product data server 125 may be configured to execute the modules stored in memory 127, to cause the product data server 125 to perform the method 800.
  • the marketplace platform module 133 may receive a record identifier associated with an ordered product, which is associated with a user account of the marketplace platform.
  • the record identifier is received from database 116.
  • the marketplace platform module 133 is configured to request the record identifier from database 116.
  • each user account of the marketplace platform may comprise and/or be associated with one or more product identifiers and/or record identifiers.
  • Each product identifier and/or record identifier may be indicative of a product ordered by or on behalf of the owner of the user account.
  • the user account may comprise one or more database records comprising both a record identifier associated with a database record in database 116, and a set of product details that are particular to that user’s particular ordered product, such as size and colour, for example.
  • the user account comprises a set of record identifiers associated with a database record in database 116.
  • the marketplace platform may search database 116 to determine a database record associated with the record identifier.
  • the marketplace platform module 133 may retrieve one or more product details contained with the determined database record, such as an image of the product, the brand of the product, the colour of the product and/or the size of the product.
  • the marketplace platform module 133 may populate one or more data fields of computer executable web page source code, such as HTML or XML, with product details retrieved from the database record associated with the record identifier.
  • the web page source code contains data fields that correspond to one or more of the column names of one or more database tables of database 116.
  • processor(s) 126 may execute the web page source code containing the filled product details data fields to generate a marketplace product page for display on the screen of one or more user device 110.
  • the marketplace platform module 133 may request/receive a record identifier of a database record that contains the product details of one or more products ordered by and associated with a user account stored in database 116. In some embodiments, the marketplace platform module may receive a product identifier that is stored in an ordered product database associated with the user (not shown).
  • Figures 9A and 9B are examples of an interactive onscreen element, according to some embodiments.
  • Figure 9A is an example of a screenshot 900 of an interactive onscreen element 915 on a product page 910.
  • the interactive on-screen element 915 may be caused to appear by interaction tracking component 137a, such as browser extension 144.
  • interaction tracking component 137a may be configured to automatically request, and/or send and/or be caused to request and/or send a product data, which may include product page information and/or product details from product page 910.
  • the interaction tracking component 137a may comprise computer executable code, such as JavaScript, Python, Java, HTML and/or XML, for example, configured to perform specific functionality.
  • the interaction tracking component 137a may be installed on web browser 114, and configured to determine whether a web page executed by the web browser 114 is a product page containing product data.
  • Interactive onscreen element 915 may comprise an interactive widget 920, which comprises an opt -in interactive element 925, such as a toggle, switch, tick box, slider and/or selectable drop down menu.
  • Interactive widget 920 may also comprise an estimated resale price 940, indicative of a price the user may be able to resell the product described by the product page if ordered.
  • Interactive onscreen element 915 may also comprise additional information 930, and link 935, which when selected by the user, may cause a pop-up window to appear, new browser tab to be generated or redirect the user to an information page regarding system 100.
  • interaction tracking component 137a may cause second interactive on screen element 950 to be generated/appear.
  • Second interactive onscreen element 950 may comprise confirmation widget 975, which may comprise user selectable link 960.
  • the user selectable link 960 may comprise a website address or Universal Resource Locator (URL).
  • URL Universal Resource Locator
  • Secondary interactive on-screen element 950 may also comprise sign-up link 965, which when interacted with by the user, may cause web browser 114 to be redirected to an account sign up page of system 100 and/or the marketplace platform.
  • FIG 10 is a block diagram of a messaging server 1010 according to some embodiments.
  • Messaging server 1010 may be in communication with system 100 via network 117.
  • Messaging server 1010 may be configured to manage the message sending/receiving requirements of users.
  • messaging server 1010 may comprise an interaction tracking component 137b, such as message or email client add-on.
  • Interaction tracking component 137b may be configured to automatically request, and/or send and/or be caused to request and/or send a product data, which may include product page information and/or product details from email web page 1110.
  • the interaction tracking component 137b may comprise computer executable code, such as HML, Javascript, CSS, JSON and/or XML, for example, configured to perform specific functionality.
  • the interaction tracking component 137b may be placed or embedded within the computer executable code that defines the email web page such that when the code that defines the email web page is executed, the code of the interaction tracking component 137b may also be executed.
  • Figures 11A and 1 IB are examples of an interactive onscreen element, according to some embodiments.
  • Figure 11A is an example of a screenshot 1100 of an interactive onscreen element 1115, on email web page 1110, such as Gmail, yahoo mail and/or Apple mail.
  • the interactive on-screen element 1115 may be caused to appear by interaction tracking component 137b, such as message client add-on 1020.
  • Interactive onscreen element 1115 may comprise an interactive widget 1120 and/or additional information 1145.
  • Interactive widget 1120 may comprise opt -in interactive element 1125, product brand/name 1135, product estimate resale price 1130 and/or example product thumbnail 1140.
  • Opt-in interactive element 1125 may be a toggle, switch, tick box, slider or selectable drop down menu.
  • Estimated resale price 1130 may be indicative of a price the user may be able to resell the product described by the product page if ordered.
  • additional information 1145 may comprise a user selected link, which when selected by the user, may cause a popup window to appear, new browser tab to be generated or redirect the user to an information page regarding system 100.
  • interaction tracking component 137b may cause second interactive on screen element 1150 to be generated/appear.
  • a message that is indicative of a purchased or ordered product may be a confirmation of purchase or order email, and may, for example, comprise or include a receipt or invoice for the product.
  • Second interactive onscreen element may comprise confirmation widget 1155.
  • Confirmation widget 1155 may comprise confirmation message 1160 and/or user selectable link 1165.
  • the web browser 114 may be caused to redirect the user to a web page of a marketplace platform.
  • Figure 12 is a process flow diagram of a method 1200 for facilitating resale of products, according to some embodiments.
  • the method 1200 may be implemented by the system 100.
  • the messaging server 1010 may be configured to execute the interaction tracking component 137b to cause the messaging server 1010 to perform the method 1200.
  • the interaction tracking component 137b determines product data from the email message indicative of the user having purchased or ordered a product.
  • the product data is associated with the product.
  • the syntax and/or structure of the message indicative of the user having purchased or ordered a product may be of a standard syntax and/or structure.
  • the interaction tracking component 137b may comprise message client add-on 1020 configured to parse the product page information to find a known location, message field and/or code portion associated with the product details and collect and/or extract one or more product details, and provide the determined product details as product data to the product data server 125.
  • message client add-on 1020 may parse the message to identify key words or phrases, or locate common locations and/or data fields to locate and subsequently determine, extract and/or collect product detail(s).
  • the message client add-on 1020 may be configured to detect or identify keywords such as “product”, “details”, “productDetails”, “description”, “size”, “material”, and/or “colour”, for example, and to extract values in a vicinity of the detected work, and associated the detected word with the respective extracted value.
  • the message client add-on 1020 may be configured to detect or identify barcodes and/or product identifiers that are provided within emails indicative of the user having purchased or ordered a product.
  • the message client addon 1020 may determine product details by querying one or more database containing barcodes and/or product identifiers.
  • Barcodes may take the form of a pictographic representation such as a linear or matrix style barcode, barcodes may also be strings of one or more letters and/or numbers.
  • the product identifiers may be strings of one or more letters and/or numbers, which may be generated by the ecommerce site that one or more product was ordered from.
  • the interaction tracking component 137b transmits or communicates the product data to the product data server 125.
  • the product data may comprise information extracted or scraped from the message, such as the email or an attachment to the message or email.
  • the interaction tracking component 137b is configured to extract specific product attributes from specific fields or areas of the message.
  • the product attributes may, for example, comprise the product name, colour, designer, size and/or sale price.
  • the interaction tracking component 137b determines, for example, from the product data system, an estimated product resale price for the product and a record identifier.
  • the record identifier identifies a record of the product in the database 116.
  • the record may have been created by the product data server 125 in response to receiving the product data from the interaction tracking component 137b.
  • the interaction tracking component 137b causes an interactive onscreen element to appear on the messaging page.
  • the interactive on-screen element comprises the estimated resale price and a user-selectable opt-in option.
  • the user-selectable opt-in option may comprise a button, slider, toggle and/or tick box indicating whether the interactive on-screen element has been interacted with.
  • An example of the interactive on-screen element 1115 is shown in Figure 11A, as discussed below.
  • the interaction tracking component 137b causes a second interactive on-screen element to appear on the email web page.
  • the second interactive on-screen element comprises a user-selectable address identifier of a second web server, such as a web server of a marketplace.
  • An example of the second interactive on-screen element 1150 is shown in Figure 1 IB, as discussed below.
  • the messaging server 1010 redirects the client device to the address of the second web server, and the interaction tracking component 137b transmits the record identifier to the second web server.

Abstract

A computer-implemented method comprising: responsive to receiving a user request for a product page from a website, determining product data from the product page; transmitting the product data to a product data system; receiving, from the product data system, an estimated product resale price for the product and a record identifier; causing a first interactive on-screen element comprising the estimated product resale price and a user selectable opt-in option to appear on the product page; responsive to determining that the user has selected the user selectable opt-in option and has instigated a confirmation to order the product from the website, causing a second interactive on screen element comprising a user-selectable address identifier of a second web server to appear on an order confirmation page of the website; and redirecting the client device to the address of the second web server.

Description

"Methods and systems for determining structured product data"
Technical Field
[0001] Described embodiments relate to methods and systems for determining structured product data, and in some embodiments, generating marketplace product pages associated with users using structured product data from the users’ transactions with ecommerce websites.
Background
[0002] Collecting and generating accurate and/or complete consumer product data is a difficult, often ad-hoc and at best an incomplete process. Prior art solutions to the problem of generating structured and complete product data rely on manual user input and therefore often result in poorly formatted and unstructured databases.
[0003] It is desired to address or ameliorate some of the disadvantages associated with such prior methods and systems, or at least to provide a useful alternative thereto.
[0004] Any discussion of documents, acts, materials, devices, articles or the like which has been included in the present specification is not to be taken as an admission that any or all of these matters form part of the prior art base or were common general knowledge in the field relevant to the present disclosure as it existed before the priority date of each of the appended claims.
[0005] Throughout this specification the word "comprise", or variations such as "comprises" or "comprising", will be understood to imply the inclusion of a stated element, integer or step, or group of elements, integers or steps, but not the exclusion of any other element, integer or step, or group of elements, integers or steps. Summary
[0006] Some embodiments are directed to a a computer-implemented method comprising: responsive to determining that a first web server has received, from a user at a client device, a user request for a product page from a website hosted by the first web server, determining product data from the product page, the product data being associated with a product that can be ordered; transmitting the product data to a product data system; receiving, from the product data system, an estimated product resale price for the product and a record identifier, the record identifier identifying a record of the product in a database; causing a first interactive on-screen element to appear on the product page, the interactive on-screen element comprising the estimated product resale price and a user selectable opt -in option; responsive to determining that the user has selected the user selectable opt-in option and has instigated a confirmation to order the product from the website, causing a second interactive on-screen element to appear on an order confirmation page of the website, the second interactive on-screen element comprising a user-selectable address identifier of a second web server; and responsive to determining that the user has selected the user selectable address identifier, redirecting the client device to the address of the second web server, and transmitting the record identifier to the second web server.
[0007] In some embodiments determining product data from the product page comprises: parsing the product page to one or more predetermined locations and extracting one or more product details from the respective one or more predetermined locations.
[0008] In some embodiments, determining product data from the product pages comprises: determining, using a machine learning model, one or more product data fields and extracting one or more product details from the respective one or more product data fields. [0009] In some embodiments, determining product data from the product page comprises: parsing the product page to one or more default locations and extracting one or more product details from the respective one or more default locations.
[0010] In some embodiments, determining product data from the product page comprises: parsing the product page to determine data in a standard format and determining from the data in a standard format one or more product details.
[0011] In some embodiments, determining the product data from the product page comprises: receiving, from the first web server, one or more structured data indicative of one or more product details.
[0012] In some embodiments, transmitting the record identifier to the second web server comprises:
[0013] appending the record identifier to the user selectable address identifier to pass the record identifier to the second web server.
[0014] Some embodiments are directed to a computer implemented method comprising: determining that a message of a user messaging account relates to a product that has been ordered; determining product data from the message, the product data being associated with the product; transmitting the product data to a product data system; receiving, from the product data system, an estimated product resale price for the product and a record identifier, the record identifier identifying a record of the product in a database; causing a first interactive on-screen element to appear on a messaging page of the user, the first interactive on-screen element comprising the estimated product resale price and a user selectable opt -in option; responsive to determining that the user has selected the user selectable opt-in option, transmitting the record identifier to a second web server and causing a second interactive on-screen element to appear on the messaging page of the user, the second interactive on-screen element comprising a confirmation message that the record identifier has been transmitted and a user-selectable address identifier of a second web server; responsive to determining that the user has selected the user selectable address identifier, redirecting the client device to the address of the second web server.
[0015] Some embodiments are directed to a computer-implemented method comprising: receiving, from an interaction tracking component, product data of a product made available for order; determining a product identifier from the product data ; determining a record for the product in a database using the product identifier, the record being associated with a record identifier; determining an estimated product resale price for the product based on the product data; transmitting the estimated product resale price and the record identifier to the interaction tracking component.
[0016] In some embodiments, determining the record for the product in the database using the product identifier comprises: determining whether an existing record in the database corresponds with the product identifier; responsive to determining that an existing record in the database corresponds with the product identifier, retrieving the record identifier associated with the existing record.
[0017] In some embodiments, determining the record for the product in the database using the product identifier comprises: responsive to determining that an existing record in the database does not correspond with the product identifier, creating a record for the product in a database, the record comprising at least some of the product data and allocating the record a new record identifier.
[0018] In some embodiments, the interaction tracking component is embedded in a product page of a website, the product page being associated with the product made available for order.
[0019] In some embodiments, the interaction tracking component is a browser extension installed in an internet browsing application.
[0020] In some embodiments, the interaction tracking component is a message client add-on, enabled, turned on and/or installed into/onto a message client. [0021] In some embodiments, the product data comprises one or more of: material; colour; size; brand; manufacturer; weight; product sale price; and product dimension.
[0022] In some embodiments, the product identifier comprises at least some of the product data and/or one or more of: order time, order date, order supplier, person who placed the order, and/or order location.
[0023] In some embodiments, the disclosed methods further comprise: determining an order identifier, the order identifier comprising information relating to one or more of: order time, order date, order supplier, person who placed the order, order location, and/or merchant details.
[0024] Some embodiments are directed to a system comprising: one or more processors; memory, accessible to the one or more processors, and comprising computer executable code, which when executed by the one or more processors, is configured to cause the system to perform the method of any one of the present disclosures.
[0025] Some embodiments are directed to a a non-transitory machine-readable medium storing instructions which, when executed by one or more processors, cause a computing device to perform the method of any one of the present disclosures.
Brief Description of Drawings
[0026] Some embodiments will now be described by way of non-limiting examples with reference to the accompanying drawings.
[0027] Figure 1 is a block diagram of a system for determining structured product data, according to some embodiments;
[0028] Figure 2 is a process flow diagram for a method of generating structured product data, the method configured to be performed by an interaction tracking component, according to some embodiments; [0029] Figures 3A, 3B and 3C are examples of an on-screen interactive element generated according to the method of Figure 2, according to some embodiments;
[0030] Figures 4A, 4B, 4C, 4D, and 4E are example screenshots of a product page of an online ecommerce site depicting an interactive on-screen element, according to some embodiments;
[0031] Figure 5 is a process flow diagram of a method of generating structured product data, the method configured to be performed by a product data server, according to some embodiments;
[0032] Figure 6 is a block diagram of a marketplace platform module stored in memory of the product data server of the system of Figure 1 , according to some embodiments;
[0033] Figures 7A, 7B, 7C and 7D are example screenshots of a product page of a marketplace platform for reselling or renting products, according to some embodiments;
[0034] Figure 8 is a process flow diagram of a method of generating marketplace product pages associated with users using structured product data from the users’ transactions with ecommerce websites, according to some embodiments;
[0035] Figure 9A is an example screenshot of a product page of an online ecommerce site depicting an interactive on-screen element, according to some embodiments;
[0036] Figure 9B is an example of an alternative form of the interactive onscreen element of Figure 9A, according to some embodiments;
[0037] Figure 10 is a block diagram of a messaging server, according to some embodiments; [0038] Figure 11A is an example screenshot of an email page, depicting an interactive onscreen element, according to some embodiments;
[0039] Figure 1 IB is an example of an alternative form of the interactive onscreen element of Figure 11A, according to some embodiments; and
[0040] Figure 12 is a process flow diagram of a method generating structured product data, the method configured to be performed by an interaction tracking component, according to some embodiments.
Description of Embodiments
[0041] Described embodiments relate to methods and systems for determining structured product data, and in some embodiments, generating marketplace product pages associated with users using structured product data from the users’ transactions with ecommerce websites.
[0042] Described embodiments involve providing or embedding an interaction tracking component (for example, a plug-in or a custom Application Protocol Interface (API)) at an web server hosting an ecommerce website, for example, by embedding the interaction tracking component in product pages of the ecommerce website. When a user engages with the website and requests rendering of a particular product page, the interaction tracking component is configured to determine product data associated with the product of the particular product page and transmit the product data to a product data server. In some embodiments, the interaction tracking component is configured to provide the product page information to the product data server, which then determines product attributes from the product page information. In some embodiments, the interaction tracking component is configured to extract product attributes from the product page information and transmit the product attributes values to the product data server. [0043] The data product server determines an estimated resale value for the product, and creates a record for the product in a database. The record is allocated a record identifier, and comprises product attribute values and the estimated resale value for the product. The data product server provides the estimated resale value and the record identifier to the interaction tracking component.
[0044] The interaction tracking component generates a first widget for display on the product page, the first widget comprising the estimated resale value and user selectable opt in option, providing the user with an option to create a user product page for the product in a marketplace platform. For example, the marketplace platform may be configured to facilitate resale and/or renting of products by users and/or members of the marketplace. The marketplace platform may be integrated with or be separate to and configured to interact with, the interaction tracking functionality.
[0045] Responsive to the user opting in and completing an order for the product, the interaction tracking component generates a second widget for display on a transaction confirmation page of the ecommerce website, the second widget comprising a link to the marketplace platform. The link may comprise a URL to the marketplace web server and the record identifier. In some embodiments, where a user orders two or more products, the URL may comprise two or more record identifiers, each record identifier being associated with a respective product.
[0046] Responsive to the user clicking on the link, the user’s client device is redirected to the marketplace website. If the user already has an account with the marketplace platform, the user may log in, or maybe automatically logged in; otherwise, the user may be prompted to sign up. In either case, once the user has logged into their account, the marketplace platform associates the record identifier with an account identifier for the user, and generates a marketplace product page populated with details determined from the record of the record identifier.
[0047] In some embodiments, the interaction tracking component is a browser extension. The browser extension may be installed as an add-on to a user’s web browser to perform actions. When a user engages with the website and requests rendering of a particular product page, the browser extension is configured to determine product data associated with the product of the particular product page and transmit the product data to a product data server.
[0048] Responsive to receiving the estimated resale value and the record identifier from data product server, the browser extension generates a first widget for display over the product page. The first widget comprising the estimated resale value and user selectable opt in option, providing the user with an option to create a user product page for the product in the marketplace platform.
[0049] Responsive to the user opting in and completing an order for the product, the browser extension generates a second widget for display over the transaction confirmation page of the ecommerce website, the second widget comprising a link to the marketplace platform. The link may comprise a URL to the marketplace web server and the record identifier. In some embodiments, where the user orders two or more products, the URL may comprise two or more record identifiers, each record identifier being associated with a respective product.
[0050] In some embodiments, the interaction tracking component is a message client add-on, such as an email client add-on, that may be enabled, turned on and/or installed into/onto a message client. The message client add-on is configured to parse the messages or emails within a user’s inbox to find messages or emails indicative of the user having placed an order for one or more products. The message client add-on is further configured to determine product data associated with the one or more products that have been ordered, and transmit the product data to a product data server.
[0051] Responsive to receiving the estimated resale value and the record identifier from data product server, the message client add-on generates a first widget for display over the message client page or screen. The first widget comprising the estimated resale value and user selectable opt in option, providing the user with an option to create a user product page for the product in the marketplace platform. [0052] Responsive to the user opting in, the message client add-on generates a second widget for display over the message client page or screen, the second widget comprising a link to the marketplace platform. The link may comprise a URL to the marketplace web server and the record identifier. In some embodiments, where the user orders two or more products, the URL may comprise two or more record identifiers, each record identifier being associated with a respective product.
[0053] Some of the described embodiments may afford the advantage of efficiently and effectively collecting product data, in an automatic fashion, from an ecommerce website and communicating the product data to a marketplace for use in displaying and making available for sale a product or products associated with the product data. Some embodiments are advantageous in that they may collect and communicate the product data without requesting and/or requiring personal and/or sensitive user data to be supplied by or retrieved from the ecommerce website, such as user passwords, email addresses and/or session tracking tokens, such as cookies.
[0054] Figure 1 is a block diagram of a system 100 for generating structured product data for ordered for consumer products, or consumer products made available for order, according to some embodiments. As illustrated, the system 100 comprises a product data processing server 125 arranged to communicate one or more online ecommerce site 118 over a network 117. In some embodiments, the product data processing server 125 may further communicate with one or more client device 110 and/or one or more databases 116 over the network 117. In some embodiments, the system 100 comprises client-server architecture where the product data processing server 125 is configured as a server and client device 110 is configured as a client device.
[0055] The network 117 may include, for example, at least a portion of one or more networks having one or more nodes that transmit, receive, forward, generate, buffer, store, route, switch, process, or a combination thereof, etc. one or more messages, packets, signals, some combination thereof, or so forth. The network 108 may include, for example, one or more of: a wireless network, a wired network, an internet, an intranet, a public network, a packet-switched network, a circuit-switched network, an ad hoc network, an infrastructure network, a public-switched telephone network (PSTN), a cable network, a cellular network, a satellite network, a fibre-optic network, some combination thereof, or so forth.
[0056] In some embodiments, the client device 110 may comprise a mobile or handheld computing device such as a smartphone or tablet, a laptop, or a PC, and may, in some embodiments, comprise multiple computing devices. The client device 110 may comprise one or more processor 112, communicable with memory 113. Memory 113 may comprise web browser 114 which comprises computer executable code, which when executed by the one or more processors 112, is configured to allow client device 110 to access websites via network 117. Memory 113 may also comprise ecommerce app 135, configured to allow the client device 110 to access purchasable products from one or more sales outlets via network 117 and/or one or more interaction tracking components 137a. Interaction tracking component 137a may comprise browser extension 144, configured to allow the web browser 114 to perform actions, such as data collection and/or offering the user additional bonuses, services or awards for particular behaviours, for example.
[0057] Browser extension 144 may be downloadable from a first party browser extension store, such as the Chrome web store, Safari extension store and/or the Firefox browser add-on store. Browser extension 144 may also be downloadable via a third- party browser extension repository, or from a service provider website.
[0058] Online ecommerce site 118 may be hosted by a web server 121. The web server 121 may comprise at least one processor 119 in communication with a memory 120 and a network interface 124. Memory 120 may comprise both volatile and nonvolatile memory. The network interface 124 may enable communication with other devices such as user device 110, database 116 and/or product data server 125.
[0059] Memory 120 stores executable program code to provide the various computing capabilities of the web server 121 and the online ecommerce site 118 it hosts, as described herein. Memory 120 comprises one or more interaction tracking components 137, such as plug-in 135 and/or custom API 136.
[0060] The interaction tracking component(s) 137, such as plug-in 135 (which may be a third-party plug-in), custom API 136, structured data plug-in 138 and/or machine learning plug-in 140, may be configured to automatically request, and/or send and/or be caused to request and/or send product data, which may include product page information and/or product details from online ecommerce site 118. In some embodiments, the interaction tracking component 137 may comprise computer executable code, such as HML, Javascript, CSS, JSON and/or XML, for example, configured to perform specific functionality. The interaction tracking component 137 may be placed or embedded within the computer executable code that defines the product page such that when the code that defines the product page is executed, the code of the interaction tracking component 137 may also be executed.
[0061] Third-party plug-in 135 may be a multi-purpose plug-in, in that it may be applied to, or embedded on, any online ecommerce site that utilises third party storefront and/or marketplace services. Third party storefront services may use a default product page data structure, syntax and or format, such that plug-in 135 may be configured to parse the product page information to find one or more default or standard code portion(s) or locations associated with the product details, regardless of the specific online ecommerce site 118, collect, retrieve or extract these and cause them to be communicated to the product data server 125.
[0062] In some embodiments, the plug-in 135 may be an integrated module or code portion of a particular online store-front product/service provided by the third-party platform, such as Shopify, WIX eCommerce and/or Square Online, for example. Accordingly, when a merchant uses the online storefront product/service of the third- party provider, the plug-in 135 and associated functionality may be automatically applied to a product page for any merchant and/or e -commerce website proprietor that uses the store-front product of the third-party. This may remove a requirement for the third-party plug-in to be manually applied to a merchant’s particular online e- commerce page.
[0063] Custom API 136 may be specifically configured to parse and determine, extract and/or retrieve product details from an online ecommerce site 118 that uses a non-standard or bespoke storefront and/or marketplace. In some embodiments, custom API 136 may be configured to parse the bespoke data structure of the non-standard storefront of online ecommerce site 118 for the product details, collect the details and cause them to be communicated to the product data server 125.
[0064] Structured data plug-in 138 may be configured to parse an unknown structured ecommerce website to retrieve the product details. For example, the structured data plug-in 138 may be configured to find and/or interpret data according to atypical, known, standard and/or recognisable structure format to determine product details. In some embodiments structured data plug-in 138 may also or alternatively be configured to request and/or intercept structured data packets/documents from one or more ecommerce web servers 121 to retrieve the product data. Structured data may be in a JSON-LD format, a Microdata format or an RDFa format, for example.
[0065] Machine learning plug-in 140 may comprise a machine learning model configured to parse ecommerce pages, for example, pages with an unknown structure, to find and extract product details. Machine learning plug-in 140 may comprise or be in communication with a machine learning model (not shown), trained and validated using a dataset of ecommerce website program code. The machine learning model may be capable of determining the location and attribute values of various product data on ecommerce websites that were not part of its training and/or validation dataset.
[0066] In some embodiments, devices other than the ecommerce web server 121 may comprise an interaction tracking component, such as interaction tracking component 137a of client device 110. Interaction tracking component 137a may comprise browser extension 144. Browser extension 144 may be configured to parse a product page to determine product page data using one or more of the processes used by third-party plug-in 135, custom API 136, structured data plug-in 138 and/or machine learning plug-in 140. Browser extension 144 may also be configured to communicate the product details to the product data server 125.
[0067] The interaction tracking component(s) 137 is configured to generate a first widget or first on-screen element 318 (Figures 3a to 3c, and Figures 4a to 4d) to provide the user of the online ecommerce site 118 with an option to engage with a marketplace platform for reselling and/or renting products. For example, the first onscreen element comprises a user selectable opt -in option 310, which when activated by the user, indicates to the interaction tracking component 137, the user’s interest in potentially seeking to resell or rent the product at a later stage. The interaction tracking component 137 may be configured to receive a valuation or estimated resale price for the product associated with the product identifier from the product data server 125 and to populate a field of the first on-screen element 318 with the estimated resale price. The interaction tracking component 137 may also receive a record identifier indicative of a record for the product created or retrieved by the product data server 125. Once a user of the online ecommerce site 118 has selected the user selectable opt-in option 310 of the on-screen element 318 and has instigated or completed an order confirmation or payment transaction to complete an order for the product from the site 118, the interaction tracking component 137 may transmit an order confirmation to the product assessment module 130 receives order confirmation to confirm that the product has been ordered.
[0068] Once a user of the online ecommerce site 118 has selected the user selectable opt-in option 310 of the first on-screen element 318 and has instigated a confirmation (e.g. a payment transaction) to order the product from the site 118, the interaction tracking component 137 may cause a second widget or second onscreen element 440 (Figures 4e) to be presented to the user, for example, on a confirmation of payment page of the ecommerce site 118. The second on-screen element 440 may comprise user selectable link 444. The user selectable link 444 may comprise a website address or Universal Resource Locator (URL). On selection of the link, the user’s browser may be redirected to a website of the marketplace platform, as discussed below in further detail with reference to Figure 6. If the user is already a member of the marketplace platform, they may log in, for example using their username and password, or may be automatically logged in. If the user is not a member of the marketplace platform, they may be prompted to create an account, by creating a username and password.
[0069] The website address or URL may contain or include one or more record identifiers associated with one or more products that have been ordered by the user. The one or more record identifiers may be passed between the online ecommerce server 121 and the product data server 125 using query strings. For example, the website address or URL may be ihttps://marketplace.com/identifers/SID=SV_1234?R[D=123456clP ^y=65 ' 2 ., , where the SID query param may represent a merchant identifier, the RID query parameter may represent an order identifier, and PID may represent a product identifier. In some embodiments, where the user has ordered two or more products, multiple record IDs may be appended to the end of the website address or URL, for example
‘https://marketplace.com/identifers/SID=SV_1234?RID=123456?PIDS[]=654321&PI DS[]=765432&PIDS[]=876543.’
[0070] Subsequent to selection of the website address or URL by the user, redirection to the website of the marketplace platform and logging in by the user (if not already logged in), the product data server may retrieve the one or more record identifiers from the website address or URL and associate the database record associated with the record identifier with the logged in user account.
[0071] In some embodiments, each user account may comprise or be associated with a set of owned or associated product records. The owned product records may include product details indicative/associated with the particular product the user ordered, and which may be useful or required to describe the ordered product on the marketplace platform. For example, the record may comprise a product name, a brand, a size, a colour and/or a sale/resale price. In other embodiments, the owned product records may comprise a record identifier that links to a separate database, the separate database comprising a set of less specific product records, such as only product name and product brand. The owned record may also comprise item specific details for the particular ordered item, such as size, colour and/or sale/resale price.
[0072] In other embodiments, each user account may comprise one or more record identifiers that associate a product record in a database with the particular user account. The product record in the database may comprise relevant product details that may be useful or required to describe the ordered product on the marketplace platform, such as a product name, a brand, a size, a colour and/or a sale/resale price.
[0073] Product data server 125 may comprise at least one processor 126 in communication with a memory 127 and a network interface 134. Memory 127 may comprise both volatile and non-volatile memory. The network interface 134 may enable communication with other devices such as user device 110, database 116 and/or online ecommerce site 118.
[0074] Memory 127 stores executable program code to provide the various computing capabilities of the product data server 125 described herein. In some embodiments, memory 127 comprises a product information collection module 128, product assessment module 130, categorisation mapping module 131, record management module 132, and/or marketplace platform module 133.
[0075] Product information collection module 128 may be configured to receive from interaction tracking component 137 ofthe online ecommerce site 118, or interaction tracking component 137a of client device 110, or interaction tracking component 137b of messaging server 1010, product data capable of identifying a product available for order on online ecommerce site 118. In some embodiments, product information collection module 128 and/or interaction tracking components 137, 137a and/or 137b may be configured to communicate using data packets comprising computer executable code such as hypertext transfer protocol (HTTP), hypertext markup language (HTML), extensible markup language (XML), JavaScript object notation (JSON) messages, and/or any other type of data transfer protocol used to transfer relevant web page information. [0076] The product data may comprise page information and/or product details associated with the product. The product data may be used to determine one or more product identifiers. For example, the product identifier may comprise product data, such as, attribute values for one or more product attributes, which may include, for example, product code, product price, product name, product designer/manufacture, product type, product make, product model, product colour, product year of design/manufacture, etc. The product identifier may also comprise one or more order values, or values that are not product values or attributes. For example, the product identifier may comprise order time, order date, order supplier, order location and/or any other value that may be indicative of the order, supplier, person who placed the order, system that facilitated the order, payment method and/or payment supplier.
[0077] Product information collection module 128 may be configured to perform one or more data sanitisation processes. Data sanitisation processes may include removing empty fields (i.e. NULL values), checking and/or clipping string lengths, removing special characters (e.g. %, *, and/or ”), and/or checking datatypes (e.g. integer, String or float) match required datatypes as dictated by database management protocols, or conversion between data formats such as Markdown or HTML.
[0078] In some embodiments, the product assessment module 130 may query, using the product identifier, a database such as database 116, and/or other third party databases, such as one maintained by the web server 121 hosting the ecommerce website 118, to retrieve specific product details associated with the product identifier(s). In some embodiments, the product identifier comprises product page information, and the product assessment module 130 is configured to scrape or extract relevant product details from the product page information. In some embodiments, the interaction tracking component(s) 137 and/or 137a are configured to scrape or extract the relevant product details from the product page information and the product identifier transmitted to the product assessment module 130 from the interaction tracking component(s) 137 and/or 137a comprises the relevant product details. [0079] Product assessment module 130 may determine, based on the product identifier, whether the product complies with suitability requirements. For example, the product assessment module 130 may be configured to determine one or more of the product attributes meet specific product attribute requirements, such as whether the a price of the product exceeds a threshold, and/or whether a designer of the product is on a preapproved list of designers. In some embodiments, product assessment module 130 may compare one or more product attributes or details associated with the product identifier with a subset of or all records of products stored in database 116 to determine whether the product is sufficiently similar to other products for which records are maintained. For example, the product may be deemed unsuitable if no other instance of that product, or any products similar to that product, are found in the database 116.
[0080] Product assessment module 130 may be configured to determine a valuation or an estimated resale price of the product based on the product identifier. The valuation or resale price may be calculated using the sale price and applying an estimated depreciation factor. For example, a product may have a firsthand sale price of $1,000, the product assessment module 130 may apply a depreciation factor of 0.2, resulting in an estimated resale value of $800.
[0081] In some embodiments, the product assessment module 130 may determine an estimated resale value based on known resale prices of similar products, such as may be tracked by the product data server and, for example, stored in product records in database 116. For example, database 116 may comprise three records or entries relating to a specific summer dress, having historical resale data of $760, $880 and $700. Product assessment module may be configured to take the average resale price of the historical sale data relating to the summer dress, giving the product an estimated resale price of $780. The product assessment module 130 may be configured to determine what effect, if any, the product details may have on the estimated resale price, and revaluate the estimated price up or down accordingly. For example, the product assessment module 130 may determine that the black version of the dress is more popular that other colours and may estimate the cost of the black version as having a higher resale price than other colours. [0082] In some embodiments, the product assessment module 130 may determine a set of weights for respective products. For example, the sets of weights may be determined based on historic sales data. The weights may be configured to account for variations in details of products and the potential impact on sale price, such as, red shoes may sell for a higher price than blue shoes, and/or garment length may not impact sale price at all, for example.
[0083] In some embodiments, the product assessment module 130 comprises a trained machine learning resale price prediction model configured to predict a resale price for a candidate product based on values for one or more product attributes. The resale price prediction model may be trained using historical dataset of information about resold products. The information may include, for each example product, an original sale price, and values for one or more product attributes (which may be used as inputs for the model) and a resale price (which may be used as the target for the model).
[0084] In some embodiments, the product data server 125 comprises a categorisation mapping module 131 configured to classify or categorise products based on the determined product attributes. The categorisation mapping module 131 may be configured to convert/transform collected and/or sanitised product data into compatible values for use by the marketplace platform. Product data conversion/transformation may comprise converting non-standard values into standard and/or generic values, such as converting the colour string ‘mauve’ to the more generic colour string ‘purple’. Conversion/transformation may also comprise converting a region specific data entry into a generic and/or other region(s) specific data entry. For example, categorisation mapping module 131 may convert a US garment size into a European garment size, convert imperial measurements into metric measurements, and/or convert a region specific garment size into a series of dimensions based upon a stored conversion table. The categorisation mapping module 131 may also convert region specific spellings of words into their corresponding alternative spelling(s), such as converting ‘color’ to ‘colour’. [0085] In some embodiments, the categorisation mapping module 131 may also be configured to interpret determined product data tags from the collected product data, and determine the equivalent data tag in the database 116. For example, the categorisation mapping module 131 may determine that the data tag ‘brand’ is equivalent to the data tag ‘manufacturer’, and assign the data associated with the ‘brand’ data tag, with the ‘manufacturer’ data field in database 116.
[0086] In some embodiments, the product data server 125 comprises a record management module 132. The record management module 132 may be configured to create a new order or record in database 116 to document a product being considered for order by the user of the site 118, or a product already bought or ordered by the user. For example, the record management module 132 may be configured to populate fields of a template record using values for attributes of the product determined from the product information collection module 128, and/or categorisation mapping module 131, including the estimated resale price. The record management module 132 may allocate the new record a record identifier. In some embodiments, the record identifier may be a unique identifier. The record management module 132 may be configured to cooperate with the marketplace platform module 133 to manage records, such as to retrieve, delete, and/or update records, and/or to associate particular record identifiers with particular member accounts of the marketplace platform.
[0087] In some embodiments, record management module 132 may be configured to search the existing records of database 116 to determine if one or more of the product details collected from the product page match any existing records of database 116. If an existing record in the database 116 matches the product details collected from the product page, record management module 132 may not create a new record, but may instead, retrieve the record identifier of the existing record, and use the existing record identifier in place of creating an new record identifier. The threshold required for the product of an existing record to be determined to be the same as the product associated with the collected product details may depend on the nature of the records stored in database 116 and/or may be selectively determined or set by an administrator at configuration time. [0088] In an exemplary embodiment, database 116 may contain a unique record entry for every variation of a particular product across attributes such as colour, size and/or fit. For example, database 116 may contain a record for every waist size and colour of a particular pair of pants, such as a record for pants in waist size 30 in colour blue, and a record for the same pair of pants in waist size 30, but in colour red. In this instance, record management module 132 may search the records of database 116 for an exact match with the product details collected from the product page. If an exact match, including such product details as colour, size, length and/or fit is not found, then record management module 132 may create a new record and associated unique identifier, as described above.
[0089] In another exemplary embodiment, database 116 may comprise records that describe the general details of a product, such as product name and brand, but may not have a record for every variety of a particular product (e.g. size, colour and/or length). Accordingly, the record management module 132 may be configured to search the existing records for a predetermined minimum set of matching details, such as name and brand, for example. Responsive to determining a matching record in database 116, the record management module 132 may cooperate with marketplace platform module 133 to create anew product record that is associated with, or is capable of being associated with, a new or existing user account of the marketplace platform. For example, the new product record may comprise the specific product details of the ordered product(s), such as size, colour, length and/or fit, for example.
[0090] The product assessment module 130 is configured to transmit the valuation or estimated resale price to the interaction tracking component(s) 137, 137a and/or 137b for populating a field of widget or on-screen element with the estimated resale price. The product assessment module 130 may also be configured to transmit the record identifier to the interaction tracking component(s) 137, 137a and/or 137b. In the event the user has ordered multiple products in a single transaction, product assessment module 130 may be configured to transmit a record identifier for each respective product simultaneously to the interaction tracking component(s) 137, 137a and/or 137b. [0091] In some embodiments, once a user of the online ecommerce site 118 has selected the user selectable opt-in option of the on-screen element and has instigated a confirmation (e.g. a payment transaction) to complete the order for the product from the site 118, the product assessment module 130 may receive order confirmation from the interactive tracking component(s) 137 or 137a. The order confirmation may comprise an order identifier. In some embodiments, if an order confirmation is not received from the interaction tracking component(s) 137 or 137a, within a specific time period, the product assessment module 130 may delete the record of the product from the database 116.
[0092] In some embodiments, the product data server 125 comprises a marketplace platform module 133. It will be appreciated, however, that in other embodiments, the marketplace platform module 133 may be deployed on or hosted by another, different, and/or remote server.
[0093] Figure 2 is a process flow diagram of a method 200 for facilitating resale of ordered consumer products, according to some embodiments. The method 200 may be implemented by the system 100. In some embodiments, the first web server 121 may be configured to execute the interaction tracking component(s) 137 or 137a to cause the first web server 121 to perform the method 200.
[0094] At 205, responsive to determining a user request for a product page of a website hosted by the first web server 121 (for example, the online ecommerce site 118), the interaction tracking component(s) 137 or 137a determines product data from the product page. The product data is associated with a product for sale.
[0095] In some embodiments, the syntax and/or structure of product pages and/or data transfer messages between the web server and a user’s client device may be of a standard syntax and/or structure. In such embodiments, the interaction tracking component 137 may comprise plug-in 135 configured to parse the product page information to find a known location, message field and/or code portion associated with the product details and collect and/or extract one or more product details, and provide the determined product details as product data to the product data server 125 .
[0096] In some embodiments, online ecommerce site 118 may implement a bespoke online storefront and/or marketplace, with an associated non-standard product page information structure. If the structure of the product page information is not a standard syntax and/or structure, the interaction tracking component 137 may comprise a custom API 136 specifically configured to parse the non-standard structure and retrieve the relevant product details.
[0097] In some embodiments, when online ecommerce site 118 implements a bespoke online storefront and/or marketplace, the interaction tracking component 137 may be a custom HTML element comprising one or more parameters, data fields and/or variables containing, storing and/or otherwise representing product attributes of the product made available for order on the particular product page. The product attributes may comprise one or more of category, price, original full price, colour and/or size.
[0098] In some embodiments, for example, where an online ecommerce site implements a bespoke storefront and the custom API 136 has not been specifically configured to parse the associated non-standard product page information, the custom API 136 may parse the product page information to identify key words or phrases, or locate common locations and/or data fields to locate and subsequently determine, extract and/or collect product detail(s). The custom API 136 may be configured to detect or identify keywords such as “product”, “details”, “productDetails”, “description”, “size”, “material”, and/or “colour”, for example, and to extract values in a vicinity of the detected work, and associated the detected word with the respective extracted value.
[0099] In some embodiments, for example, where an online ecommerce site implements a bespoke storefront, with an unknown structure, structured data plug-in 138 may be configured to parse the unknown structured ecommerce website to retrieve the product details. For example, the structured data plug-in 138 may be configured to find and/or interpret data according to a typical, known and/or recognisable structure format. In some embodiments, machine learning plug-in 140 may be trained and used to parse, or otherwise interpret the online ecommerce site to determine one or more product data fields to extract, retrieve or otherwise determine the product details.
[0100] In some embodiments, interaction tracking component(s) 137a and/or 137b may comprise executable program code or be configured to perform the same functions as plug-in 135, custom API 136, structured data plug-in 138 and/or machine learning plug-in 140.
[0101] At 210, the interaction tracking component(s) 137 or 137a transmits or communicates the product data to the product data server 125. For example, the product data may comprise information extracted or scraped from the product page. In some embodiments, the interaction tracking component(s) 137 or 137b are configured to extract specific product attributes from specific fields or areas of the product page. The product attributes may, for example, comprise the product name, colour, designer, size and/or sale price.
[0102] At 215, the interaction tracking component(s) 137 or 137a determines, for example, from the product data system, an estimated product resale price for the product and a record identifier. The record identifier identifies a record of the product in the database 116. The record may have been created by the product data server 125 in response to receiving the product data from the interaction tracking component(s) 137 or 137a.
[0103] At 220, the interaction tracking component(s) 137 or 137a causes an interactive on-screen element to appear on the product page of the website. The interactive on-screen element comprises the estimated resale price and a user-selectable opt-in option. For example, the user-selectable opt-in option may comprise a button, slider, toggle and/or tick box indicating whether the interactive on-screen element has been interacted with. Examples of the interactive on-screen element 318 are shown in Figures 3A to 3C, and 4A to 4D, as discussed below. [0104] At 225, responsive to determining that the user has selected the user selectable opt-in option and has instigated a confirmation (e.g. a payment transaction) to order the product from the website, the interaction tracking component(s) 137 or 137a causes a second interactive on-screen element to appear on an order confirmation page of the website. The second interactive on-screen element comprises a user-selectable address identifier of a second web server, such as a web server of a marketplace. An example of the second interactive on-screen element is shown in Figure 4E, as discussed below.
[0105] At 230, responsive to determining that the user has selected the user selectable address identifier, the first web server 121 redirects the client device to the address of the second web server, and the interaction tracking component(s) 137 or 137b transmits the record identifier to the second web server.
[0106] Figures 3 A is an image of a collapsed interactive on-screen element 318A associated with a product for sale, according to some embodiments. Collapsed interactive onscreen element 318A may comprise call to action 312, inviting a user to engage with a resale opportunity for the product and estimated resale value 314 of the product. Collapsed interactive on-screen element 318A may comprise a user selectable opt in, such as a toggle, 310 indicating whether the user has opted in. When the interactive on-screen element 318A is first caused to appear by the interaction tracking component 137, it may appear in the collapsed form 318 A, with the toggle 310 set to a “no” or opt out position, as shown in Figure 3A. In other embodiments, the interactive on-screen element 318A may be caused to first appear in either the expanded or collapsed form, and with the toggle set to either “no” or “yes”.
[0107] Figure 3B is an image of expanded interactive on-screen element 318B, according to some embodiments. Drop down button 315 may be interacted with to change interactive on-screen element 318A into expanded interactive onscreen element 318B, as seen in Figures 3B and 3C. Drop down button 315 may be interacted with again to collapse expanded interactive on-screen element 318B into collapsed interactive onscreen element 318A. [0108] Expanded interactive on-screen element 318B may further comprise explanatory text 320, and link 322. Explanatory text 320 may briefly describe the system and the benefits from using the system. Link 318 may redirect the user to additional information further explaining the system, its features and the ways in which it can be engaged with. In some embodiments, link 322 will cause a pop-up window to appear over the product page presenting the additional information, as can be seen in Figure 4C.
[0109] Figure 3C is an image of expanded interactive on-screen element 318B. according to some embodiments. In Figure 3C, toggle 310 is in the “yes” or opt in position, indicating the user has interacted with the interactive on-screen element 318B, and has opted in, either for a first or subsequent time. Toggle 310 may be interacted with to swap it from the “no” or “yes” position into the opposite position at will, by the user. When toggle 310 changes from the “no” position to the “yes” position, the interaction tracking component 137 may receive an indication that the change has occurred. Similarly, if toggle 310 changes from the “yes” position to the “no” position, the interaction tracking component 137 may receive an indication the change has occurred.
[0110] Figure 4A is an image of a product page 400 of an ecommerce website, such as site 118, featuring a first widget or interactive on-screen element 418, according to some embodiments. Product page 400 may comprise one or more of product image 402, product designer 404, product name 405, product colour selector 406, product price 410, product size selector 408, user selectable opt in option (for example, toggle) 310 and drop down button 315, order button 412, product description 414 and read more button 416.
[0111] Product colour selector 406 may be configured to allow the user to select one or more garment colours. In some embodiments, product colour selector 406 may comprise more than one field, each separate field being associated with a colour of a particular segment of a garment. Product size selector 408 may be configured to allow the user to select a garment size from a range of possible sizes. This may include at least: length, size, waist diameter, and/or bust size. Read more button 416 may be interacted with to cause additional product information to be observable by the user, such as design notes, specific features and/or marketing content, for example.
[0112] Figure 4B is an image of the product page 400 of an ecommerce website featuring an interactive on-screen element 418, according to some embodiments. In Figure 4B, drop down button 315 has been interacted with, causing interactive onscreen element 418 to change or transition into expanded interactive onscreen element 418. When interactive onscreen element is in the expanded form, product page 400 of Figure 4B further comprises explanatory text 320, and link 322.
[0113] Figure 4C is an image of the product page 400, featuring pop up 425 depicting the additional information about the marketplace platform. Pop-up 425 may be caused to appear when the user interacts with link 322. The additional information offered by pop up 425 my comprise instructions 427; for signing up and using the features of the marketplace platform, environmental benefits message 429; indicating the environmental benefits that may come from engaging with the features with the marketplace platform, and exit button 428; allowing the user to close the pop-up 425.
[0114] Figure 4D is an image of product page 400, according to some embodiments. In Figure 4D, toggle 310 of interactive on-screen element 318 has been interacted with to change it to the “yes” or opt-in option.
[0115] Figure 4E is an image of order confirmation page 435, of an online ecommerce site, according to some embodiments. Order confirmation page 435 may comprise order confirmation message 437, second widget (opt-in confirmation) 440, and/or delivery address 446. Opt-in confirmation 440 may comprise opt-in confirmation message 442 and claim link 444. Responsive to determining that the order for the product has been completed and the user has opted in, the opt-in confirmation 440 may be generated and caused to appear on order confirmation page 435. [0116] Referring now to Figure 5, there is shown a process flow diagram of a method 500 determining structured product data, according to some embodiments. For example, the determined structured product data may be used to facilitate on-selling of a product associated with the structured product data on a marketplace platform. The method 500 may be implemented by the product data server 125, according to some embodiments.
[0117] At 505, the product data server 125 receives product data from an interaction tracking component embedded in product page of a website hosted by a first web server. The product data may be used to determine or may comprise a product identifier of a product made available for order.
[0118] The product data may comprise product page information, and the product data server 125 may be configured to scrape, determine or otherwise extract the product identifier, and/or values for product attributes from the product page information. In some embodiments, the interaction tracking component 137 may be configured to extract the product data from the product page information and the received product data may comprise the product identifier, and/or values for product attributes or be used to determine the product identifier.
[0119] In some embodiments, the product data server 125 may be configured to disregard blank or null product detail fields to avoid processing errors and/or system failures, such as null pointer exceptions.
[0120] At 510, the product data server 125 creates a record or entry for the product in a database. The record may comprise at least some of the product data.
[0121] At 515, the product data server 125 allocates the record a record identifier. For example, the record identifier may be unique to other records of product data as created by the product data server 125. [0122] At 520, the product data server 125 determines an estimated product resale price for the product based on the product data. In some embodiments, the product data server 125 may be configured to determine the estimated product resale price for the product.
[0123] At 525, the product data server 125 transmits the estimated product resale price and the record identifier to the interaction tracking component.
[0124] Figure 6 is a block diagram of the marketplace platform module 133. Memory 127 of product data server 125 may comprise the marketplace platform module 133, or the marketplace platform module 133 may be provided on or to a second, and in some embodiments, remote, web server (not shown).
[0125] The marketplace platform module 133 may comprise a marketplace website application 600, which when executed by the product data server 125, or other web server, is configured to provide a marketplace platform. The marketplace platform may be a social media configured to allow consumers and vendors to communicate with one another to buy and sell products or services. The marketplace platform may be available only to members, or in some embodiments, vendors may be required to maintain membership with the marketplace, but the marketplace may be accessible to anyone to view and/or engage with vendors to order an advertised product.
[0126] The marketplace platform module 133 may comprise an account management module 604. The account management module 604 may be configured to manage user account data such as contact information, products, historic sale, order and rental data, and/or environmental impact data associated with the user account. The account management module 604 may be configured to cooperate and act on user requests for creating a user account and/or accessing and/or editing a user account, for example to view and modify a user profile associated with the user account.
[0127] A user account may comprise or be associated with a user profile. The user profile may comprise one or more marketplace product pages associated with the user. Each marketplace product page may display details of a product for sale or rent by the user.
[0128] The marketplace platform module 133 may comprise a product data module 606. The product data module 606 may be configured to determine or retrieve product details for the marketplace product page from respective records of the products ordered by the user, as may be saved in database 116 by the product data server 125. For example, when the user clicks the link 444 provided on a confirmation page of an ecommerce website, the user’s client device may be redirected to the marketplace website, and the record identifier of the ordered product may be provided to the marketplace platform module 133. The product data module 604 may then use the record identifier to retrieve the relevant product data to build or generate the marketplace product page. In some embodiments, the product data, for example in the form of a product listing 744 as shown in Figure 7B, may be displayed on a log in and/or create new account page of the marketplace platform.
[0129] The marketplace platform module 133 may comprise a product re-sell/rent module 608 may be configured to facilitate order and/or rent of products advertised on marketplace product pages. For example, the product rc-scll/rcnt module may be configured to determine a selection by a customer of the marketplace of a particular product on a particular marketplace product page, and to perform the necessary interactions with the customer to execute the transaction. To this end, the marketplace platform module 133 may comprise a payment processing module 610 configured to process payments on behalf of the customer and vendor.
[0130] The marketplace platform module 133 may comprise a product recycle module 608 configured to determine whether a product is suitable for recycling and/or donation. In some embodiments, the product recycle module 608 may comprise a population of recycle and/or donation entities, each entity having an associated set of recycle and/or donation requirements. The product recycle module 608 may compare the product details of a candidate product for recycling or donation with sets of recycle and/or donation requirements of the entity population to determine one or more entities suitable for or willing to accept the product. The product recycle module 608 may be configured to present a list of suitable entities to the user, in response to user selection of a user selectable recycle and/or donate option, which may be displayed on the respective marketplace product page, or which may be displayed automatically on the respective marketplace product page. The user may select one of the entities from the list of suitable entities and in response, the product recycle module 608 may be configured to facilitate the recycling and/or donation of the product to the selected entity.
[0131] Figure 7A is an example screenshot of user product collection page 700 of the marketplace platform. User product collection page 700 may comprise account summary 710, product listings 712, 716, and/or 726, search button 732 and/or menu button 734.
[0132] The account management module 602 may be configured to determine and present account summary 710. Account summary 710 may comprise total value of all products associated with the user’s account, total earnings from economic activity via the marketplace platform, and/or an environmental contribution the user has had by using the marketplace platform.
[0133] The environment contribution the user has had by using the marketplace platform may be determined by assessing product details such as the material the product is made from, the product type (e.g. dress, pants and/or shoes), and the product size. The product details may then be cross-referenced with known average carbon dioxide emissions, water usage and/or other resource usage associated with the particular production and/or transportation of similar items. When a product is ordered from the marketplace platform, the environmental cost/impact of purchasing a ‘new’ instance of the product, as calculated using the product details mentioned above, is then considered to be off-set, thus reducing the respective use of resources. For example, if a vinyl jacket that is re-sold on the marketplace would have used 10 litres of water and generated 50kg of carbon-dioxide if ordered new, the seller is informed that they have off-set the same amount by re-selling the jacket. [0134] The product data module 604 may be configured to retrieve from database 116, product listings 712, 716, and/or 726 and cause them to be presented, for example, in an ordered or orderable list, on product collection page 700. In some embodiments product listings 712, 716 and/or 726 may comprise recycle button 714, rent button 722, re-sell button 724, ecommerce website name 730; indicating where the product was ordered from, product name and description 732, product order price 718, estimated resale value 720 and/or status 728. Product status 728 may indicate the product has been made available for sale or rent and the price the product has been made available for.
[0135] The account management module 602 may be configured to allow the user to inspect and/or edit their account details by interacting with menu button 734. In some embodiment, the product data module 604 may enable the user to search their product listings by interacting with search button 732. Each product listing may comprise a marketplace product page.
[0136] Figure 7B is an example screenshot of a sign-up page 740 of the marketplace platform, according to some embodiments. A new user, or a user who is not signed into their account may be redirected to sign-up page 740 by interacting with link 444. Signup page 740 may comprise one or more encouragement message 742; urging the user to create a new account, recently ordered product listing 744, password field 748, tick boxes 750 and/or confirmation button 752.
[0137] The user may complete the account creation process by entering a password in field 748, accepting any terms and conditions by interacting with one or more tick box 750 and interacting with the confirmation button 752. The account management module 602, upon receiving an indication the confirmation button 752 has been interacted with, may create a new user account and cause product data module 604 to associate the product of the record identifier, that is product listing 744, with the new user account. In some embodiments, the interaction tracking component 137 may transmit a user email address from online ecommerce site 118 during the purchasing process. The user email address is used for the account creation process. [0138] Figure 7C is an example screenshot of a marketplace product resale page 760 as hosted by marketplace platform, according to some embodiments. Product resale page 760 may comprise a product for resale list 762, selling price field 764, suggested resale price 764A, condition indicator 768 and/or save button 770. The user may navigate to the product resale page 760 by interacting with the “re-sell” button 724 of a respective product listing.
[0139] In some embodiments, an estimated product resale value 764A may be prefilled into selling price field 764 by product re-sell module 529. The user may edit the sale price by interacting with selling price field 764 and entering a desired selling price. In a further embodiment, the user may indicate the product condition by selecting an option from condition indicator 768. The product re-selling module 529, upon receiving an indication the save button 770 has been interacted with, cause the product to be made available for order by another user of the marketplace platform.
[0140] Figure 7D is a confirmation page 780 of the marketplace platform, according to some embodiments. Confirmation page 780 may comprise confirmation message 782, ecological impact metrics 784 and/or return button 786. The product data module 604 may be configured to redirect the user’s client device to product collection page 700 in response to the user interacting with return button 786.
[0141] Figure 8 is a process flow diagram of method 800 for generating marketplace product pages associated with users using structured product data from the users’ transactions with ecommerce websites, according to some embodiments. The method 800 may be implemented by a web server of a marketplace platform. In some embodiments, the product data server 125 may be configured to execute the modules stored in memory 127, to cause the product data server 125 to perform the method 800.
[0142] At 810, the marketplace platform module 133 may receive a record identifier associated with an ordered product, which is associated with a user account of the marketplace platform. In some embodiments, the record identifier is received from database 116. In some embodiments, the marketplace platform module 133 is configured to request the record identifier from database 116.
[0143] In some embodiments, each user account of the marketplace platform may comprise and/or be associated with one or more product identifiers and/or record identifiers. Each product identifier and/or record identifier may be indicative of a product ordered by or on behalf of the owner of the user account. In another embodiment, the user account may comprise one or more database records comprising both a record identifier associated with a database record in database 116, and a set of product details that are particular to that user’s particular ordered product, such as size and colour, for example. In yet another embodiment, the user account comprises a set of record identifiers associated with a database record in database 116.
[0144] At 815, responsive to receiving the record identifier, the marketplace platform may search database 116 to determine a database record associated with the record identifier. The marketplace platform module 133 may retrieve one or more product details contained with the determined database record, such as an image of the product, the brand of the product, the colour of the product and/or the size of the product.
[0145] At 820, the marketplace platform module 133 may populate one or more data fields of computer executable web page source code, such as HTML or XML, with product details retrieved from the database record associated with the record identifier. In some embodiments, the web page source code contains data fields that correspond to one or more of the column names of one or more database tables of database 116.
[0146] At 825, processor(s) 126 may execute the web page source code containing the filled product details data fields to generate a marketplace product page for display on the screen of one or more user device 110.
[0147] In some embodiments, the marketplace platform module 133 may request/receive a record identifier of a database record that contains the product details of one or more products ordered by and associated with a user account stored in database 116. In some embodiments, the marketplace platform module may receive a product identifier that is stored in an ordered product database associated with the user (not shown).
[0148] Figures 9A and 9B are examples of an interactive onscreen element, according to some embodiments. Specifically, Figure 9A is an example of a screenshot 900 of an interactive onscreen element 915 on a product page 910. The interactive on-screen element 915 may be caused to appear by interaction tracking component 137a, such as browser extension 144. In some embodiments, interaction tracking component 137a may be configured to automatically request, and/or send and/or be caused to request and/or send a product data, which may include product page information and/or product details from product page 910. In some embodiments, the interaction tracking component 137a may comprise computer executable code, such as JavaScript, Python, Java, HTML and/or XML, for example, configured to perform specific functionality. The interaction tracking component 137a may be installed on web browser 114, and configured to determine whether a web page executed by the web browser 114 is a product page containing product data.
[0149] Interactive onscreen element 915 may comprise an interactive widget 920, which comprises an opt -in interactive element 925, such as a toggle, switch, tick box, slider and/or selectable drop down menu. Interactive widget 920 may also comprise an estimated resale price 940, indicative of a price the user may be able to resell the product described by the product page if ordered. Interactive onscreen element 915 may also comprise additional information 930, and link 935, which when selected by the user, may cause a pop-up window to appear, new browser tab to be generated or redirect the user to an information page regarding system 100.
[0150] Turning now to figure 9B, responsive to the user opting-in to the system 100 by interacting with opt-in interactive element 925 and ordering the product, interaction tracking component 137a may cause second interactive on screen element 950 to be generated/appear. Second interactive onscreen element 950 may comprise confirmation widget 975, which may comprise user selectable link 960. The user selectable link 960 may comprise a website address or Universal Resource Locator (URL). When the user selects the user selectable link 960, the web browser 114 may be caused to redirect the user to a web page of a marketplace platform.
[0151] Secondary interactive on-screen element 950 may also comprise sign-up link 965, which when interacted with by the user, may cause web browser 114 to be redirected to an account sign up page of system 100 and/or the marketplace platform.
[0152] Figure 10 is a block diagram of a messaging server 1010 according to some embodiments. Messaging server 1010 may be in communication with system 100 via network 117. Messaging server 1010 may be configured to manage the message sending/receiving requirements of users. In some embodiments, messaging server 1010 may comprise an interaction tracking component 137b, such as message or email client add-on.
[0153] In some embodiments, users may enable, turn on and/or install message client add-on 1020. Interaction tracking component 137b may be configured to automatically request, and/or send and/or be caused to request and/or send a product data, which may include product page information and/or product details from email web page 1110. In some embodiments, the interaction tracking component 137b may comprise computer executable code, such as HML, Javascript, CSS, JSON and/or XML, for example, configured to perform specific functionality. The interaction tracking component 137b may be placed or embedded within the computer executable code that defines the email web page such that when the code that defines the email web page is executed, the code of the interaction tracking component 137b may also be executed.
[0154] Figures 11A and 1 IB are examples of an interactive onscreen element, according to some embodiments. Specifically, Figure 11A is an example of a screenshot 1100 of an interactive onscreen element 1115, on email web page 1110, such as Gmail, yahoo mail and/or Apple mail. The interactive on-screen element 1115 may be caused to appear by interaction tracking component 137b, such as message client add-on 1020. [0155] Interactive onscreen element 1115 may comprise an interactive widget 1120 and/or additional information 1145. Interactive widget 1120 may comprise opt -in interactive element 1125, product brand/name 1135, product estimate resale price 1130 and/or example product thumbnail 1140. Opt-in interactive element 1125 may be a toggle, switch, tick box, slider or selectable drop down menu. Estimated resale price 1130 may be indicative of a price the user may be able to resell the product described by the product page if ordered. In some embodiments, additional information 1145, may comprise a user selected link, which when selected by the user, may cause a popup window to appear, new browser tab to be generated or redirect the user to an information page regarding system 100.
[0156] Turning now to Figure 1 IB, responsive to the interaction tracking component 137b determining a message that is indicative of a purchased or ordered product, interaction tracking component 137b may cause second interactive on screen element 1150 to be generated/appear. For example, a message that is indicative of a purchased or ordered product may be a confirmation of purchase or order email, and may, for example, comprise or include a receipt or invoice for the product. Second interactive onscreen element may comprise confirmation widget 1155. Confirmation widget 1155 may comprise confirmation message 1160 and/or user selectable link 1165. When the user selects the user selectable link 1165, the web browser 114 may be caused to redirect the user to a web page of a marketplace platform.
[0157] Figure 12 is a process flow diagram of a method 1200 for facilitating resale of products, according to some embodiments. The method 1200 may be implemented by the system 100. In some embodiments, the messaging server 1010 may be configured to execute the interaction tracking component 137b to cause the messaging server 1010 to perform the method 1200.
[0158] At 1210, responsive to determining an email in the inbox hosted by the messaging server 1010, the interaction tracking component 137b determines product data from the email message indicative of the user having purchased or ordered a product. The product data is associated with the product. [0159] In some embodiments, the syntax and/or structure of the message indicative of the user having purchased or ordered a product may be of a standard syntax and/or structure. In such embodiments, the interaction tracking component 137b may comprise message client add-on 1020 configured to parse the product page information to find a known location, message field and/or code portion associated with the product details and collect and/or extract one or more product details, and provide the determined product details as product data to the product data server 125.
[0160] In some embodiments, for example, where an email indicative of the user having purchased or ordered a product implements a bespoke syntax or format, message client add-on 1020 may parse the message to identify key words or phrases, or locate common locations and/or data fields to locate and subsequently determine, extract and/or collect product detail(s). The message client add-on 1020 may be configured to detect or identify keywords such as “product”, “details”, “productDetails”, “description”, “size”, “material”, and/or “colour”, for example, and to extract values in a vicinity of the detected work, and associated the detected word with the respective extracted value.
[0161] In some embodiments, the message client add-on 1020 may be configured to detect or identify barcodes and/or product identifiers that are provided within emails indicative of the user having purchased or ordered a product. The message client addon 1020 may determine product details by querying one or more database containing barcodes and/or product identifiers. Barcodes may take the form of a pictographic representation such as a linear or matrix style barcode, barcodes may also be strings of one or more letters and/or numbers. The product identifiers may be strings of one or more letters and/or numbers, which may be generated by the ecommerce site that one or more product was ordered from.
[0162] At 1215, the interaction tracking component 137b transmits or communicates the product data to the product data server 125. For example, the product data may comprise information extracted or scraped from the message, such as the email or an attachment to the message or email. In some embodiments, the interaction tracking component 137b is configured to extract specific product attributes from specific fields or areas of the message. The product attributes may, for example, comprise the product name, colour, designer, size and/or sale price.
[0163] At 1220, the interaction tracking component 137b determines, for example, from the product data system, an estimated product resale price for the product and a record identifier. The record identifier identifies a record of the product in the database 116. The record may have been created by the product data server 125 in response to receiving the product data from the interaction tracking component 137b.
[0164] At 1225, the interaction tracking component 137b causes an interactive onscreen element to appear on the messaging page. The interactive on-screen element comprises the estimated resale price and a user-selectable opt-in option. For example, the user-selectable opt-in option may comprise a button, slider, toggle and/or tick box indicating whether the interactive on-screen element has been interacted with. An example of the interactive on-screen element 1115 is shown in Figure 11A, as discussed below.
[0165] At 1230, responsive to determining that the user has selected the user selectable opt-in option the interaction tracking component 137b causes a second interactive on-screen element to appear on the email web page. The second interactive on-screen element comprises a user-selectable address identifier of a second web server, such as a web server of a marketplace. An example of the second interactive on-screen element 1150 is shown in Figure 1 IB, as discussed below.
[0166] At 1230, responsive to determining that the user has selected the user selectable address identifier, the messaging server 1010 redirects the client device to the address of the second web server, and the interaction tracking component 137b transmits the record identifier to the second web server.
[0167] It will be appreciated by persons skilled in the art that numerous variations and/or modifications may be made to the above-described embodiments, without

Claims

departing from the broad general scope of the present disclosure. The present embodiments are, therefore, to be considered in all respects as illustrative and not restrictive. CLAIMS:
1. A computer-implemented method comprising: responsive to determining that a first web server has received, from a user at a client device, a user request for a product page from a website hosted by the first web server, determining product data from the product page, the product data being associated with a product that can be ordered; transmitting the product data to a product data system; receiving, from the product data system, an estimated product resale price for the product and a record identifier, the record identifier identifying a record of the product in a database; causing a first interactive on-screen element to appear on the product page, the interactive on-screen element comprising the estimated product resale price and a user selectable opt-in option; responsive to determining that the user has selected the user selectable opt-in option and has instigated a confirmation to order the product from the website, causing a second interactive on-screen element to appear on an order confirmation page of the website, the second interactive on-screen element comprising a user-selectable address identifier of a second web server; and responsive to determining that the user has selected the user selectable address identifier, redirecting the client device to the address of the second web server, and transmitting the record identifier to the second web server.
2. The method of claim 1, wherein determining product data from the product page comprises: parsing the product page to one or more predetermined locations and extracting one or more product details from the respective one or more predetermined locations.
3. The method of claim 1, wherein determining product data from the product pages comprises: determining, using a machine learning model, one or more product data fields and extracting one or more product details from the respective one or more product data fields.
4. The method of claim 1, wherein determining product data from the product page comprises: parsing the product page to one or more default locations and extracting one or more product details from the respective one or more default locations.
5. The method of claim 1, wherein determining product data from the product page comprises: parsing the product page to determine data in a standard format and determining from the data in a standard format one or more product details.
6. The method of claim 1, wherein determining the product data from the product page comprises: receiving, from the first web server, one or more structured data indicative of one or more product details.
7. The method of any one of claims 1 to 6, wherein transmitting the record identifier to the second web server comprises: appending the record identifier to the user selectable address identifier to pass the record identifier to the second web server.
8. A computer implemented method comprising: determining that a message of a user messaging account relates to a product that has been ordered; determining product data from the message, the product data being associated with the product; transmitting the product data to a product data system; receiving, from the product data system, an estimated product resale price for the product and a record identifier, the record identifier identifying a record of the product in a database; causing a first interactive on-screen element to appear on a messaging page of the user, the first interactive on-screen element comprising the estimated product resale price and a user selectable opt-in option; responsive to determining that the user has selected the user selectable opt-in option, transmitting the record identifier to a second web server and causing a second interactive on-screen element to appear on the messaging page of the user, the second interactive on-screen element comprising a confirmation message that the record identifier has been transmitted and a user-selectable address identifier of a second web server; responsive to determining that the user has selected the user selectable address identifier, redirecting the client device to the address of the second web server.
9. A computer-implemented method comprising: receiving, from an interaction tracking component, product data of a product made available for order; determining a product identifier from the product data ; determining a record for the product in a database using the product identifier, the record being associated with a record identifier; determining an estimated product resale price for the product based on the product data; transmitting the estimated product resale price and the record identifier to the interaction tracking component.
10. The computer- implemented method of claim 9, wherein determining the record for the product in the database using the product identifier comprises: determining whether an existing record in the database corresponds with the product identifier; responsive to determining that an existing record in the database corresponds with the product identifier, retrieving the record identifier associated with the existing record.
11. The computer- implemented method of claim 9 or claim 10, wherein determining the record for the product in the database using the product identifier comprises: responsive to determining that an existing record in the database does not correspond with the product identifier, creating a record for the product in a database, the record comprising at least some of the product data and allocating the record a new record identifier.
12. The computer- implemented method of any one of claims 9 to 11, wherein the interaction tracking component is embedded in a product page of a website, the product page being associated with the product made available for order.
13. The computer implemented method of any one of claims 9 to 11, wherein the interaction tracking component is a browser extension installed in an internet browsing application.
14. The computer implemented method of any one of claims 9 to 11, wherein the interaction tracking component is a message client add-on, enabled, turned on and/or installed into/onto a message client.
15. The computer- implemented method of any one of the preceding claims, wherein the product data comprises one or more of: material; colour; size; brand; manufacturer; weight; product sale price; and product dimension.
16. The computer- implemented method of any one claims 9 to 15 wherein the product identifier comprises at least some of the product data and/or one or more of: order time, order date, order supplier, person who placed the order, and/or order location.
17. The computer-implemented method of any one claims 9 to 15, further comprising: determining an order identifier, the order identifier comprising information relating to one or more of: order time, order date, order supplier, person who placed the order, order location, and/or merchant details.
18. A system comprising : one or more processors; memory, accessible to the one or more processors, and comprising computer executable code, which when executed by the one or more processors, is configured to cause the system to perform the method of any one of the preceding claims.
19. A non-transitory machine -readable medium storing instructions which, when executed by one or more processors, cause a computing device to perform the method of any one of claims 1 to 17.
PCT/AU2023/050333 2022-04-22 2023-04-24 Methods and systems for determining structured product data WO2023201400A1 (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
AU2022901074 2022-04-22
AU2022901074A AU2022901074A0 (en) 2022-04-22 Methods and systems for determining structured product data
AU2023900250 2023-02-02
AU2023900250A AU2023900250A0 (en) 2023-02-02 Methods and systems for determining structured product data

Publications (1)

Publication Number Publication Date
WO2023201400A1 true WO2023201400A1 (en) 2023-10-26

Family

ID=88418690

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/AU2023/050333 WO2023201400A1 (en) 2022-04-22 2023-04-24 Methods and systems for determining structured product data

Country Status (1)

Country Link
WO (1) WO2023201400A1 (en)

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030105681A1 (en) * 2001-08-29 2003-06-05 Predictive Networks, Inc. Method and system for parsing purchase information from web pages
US20080077542A1 (en) * 2006-09-22 2008-03-27 Second Rotation Inc. Systems and methods for determining market price of merchandise
US20080222010A1 (en) * 2007-03-05 2008-09-11 Hudak William N System and Method for Enabling Online Research, Publication, Promotion And Management Of User Goods
US20090138380A1 (en) * 2001-10-31 2009-05-28 Roseman Neil C Marketplace system that supports user-to-user sales via a definitive product catalog
US20120215871A1 (en) * 2010-07-23 2012-08-23 Ebay Inc. Instant messaging robot to provide product information
US20160012519A1 (en) * 2014-07-09 2016-01-14 Ebay Inc. Dropsale
US9465873B1 (en) * 2013-03-07 2016-10-11 Vast.com, Inc. Systems, methods, and devices for identifying and presenting identifications of significant attributes of unique items
US20180189813A1 (en) * 2015-08-10 2018-07-05 Alex NEAL Historic value based predictive options commerce
US20190311210A1 (en) * 2018-04-05 2019-10-10 Walmart Apollo, Llc Automated extraction of product attributes from images
US20200104868A1 (en) * 2018-10-02 2020-04-02 Mercari Inc. Inventory Ingestion, Image Processing, and Market Descriptor Pricing System
US20200274696A1 (en) * 2019-02-27 2020-08-27 Capital One Services, Llc Determining a change to product information or user information via hashing

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030105681A1 (en) * 2001-08-29 2003-06-05 Predictive Networks, Inc. Method and system for parsing purchase information from web pages
US20090138380A1 (en) * 2001-10-31 2009-05-28 Roseman Neil C Marketplace system that supports user-to-user sales via a definitive product catalog
US20080077542A1 (en) * 2006-09-22 2008-03-27 Second Rotation Inc. Systems and methods for determining market price of merchandise
US20080222010A1 (en) * 2007-03-05 2008-09-11 Hudak William N System and Method for Enabling Online Research, Publication, Promotion And Management Of User Goods
US20120215871A1 (en) * 2010-07-23 2012-08-23 Ebay Inc. Instant messaging robot to provide product information
US9465873B1 (en) * 2013-03-07 2016-10-11 Vast.com, Inc. Systems, methods, and devices for identifying and presenting identifications of significant attributes of unique items
US20160012519A1 (en) * 2014-07-09 2016-01-14 Ebay Inc. Dropsale
US20180189813A1 (en) * 2015-08-10 2018-07-05 Alex NEAL Historic value based predictive options commerce
US20190311210A1 (en) * 2018-04-05 2019-10-10 Walmart Apollo, Llc Automated extraction of product attributes from images
US20200104868A1 (en) * 2018-10-02 2020-04-02 Mercari Inc. Inventory Ingestion, Image Processing, and Market Descriptor Pricing System
US20200274696A1 (en) * 2019-02-27 2020-08-27 Capital One Services, Llc Determining a change to product information or user information via hashing

Similar Documents

Publication Publication Date Title
US8341030B2 (en) System and method for providing access to product related electronic catalog functionality
KR101196314B1 (en) Computerized system for performing a retail sales analysis
US20200065750A1 (en) Inventory management system and method thereof
US9852477B2 (en) Method and system for social media sales
US20140019285A1 (en) Dynamic Listing Recommendation
WO2013161105A1 (en) Tag management device, tag management method, tag management program, and computer-readable recording medium for storing said program
WO2002054308A1 (en) Made-to-order commodity selling system
US20120296780A1 (en) Systems and methods for exchanging product information
US20230385909A1 (en) System and method for providing commercial functionality from a product data sheet
JP2009181400A (en) Customer preference information management system
JP2013519174A (en) Commerce system using online information matching and service method thereof
JP5425961B2 (en) Information providing apparatus, information providing method, information providing program, and computer-readable recording medium storing the program
US20110125611A1 (en) Optimized Electronic Commerce Transactions
US20220405706A1 (en) System and Method Providing an Improved, Automated Procurement System Using Artificial Intelligence
KR101979237B1 (en) Method and apparatus for providing shopping information
KR102499689B1 (en) Method for automatic screening of search keywords
WO2023201400A1 (en) Methods and systems for determining structured product data
US20080109316A1 (en) Pointer region capture to form a registry independent of a merchant site
CN112784021A (en) System and method for using keywords extracted from reviews
KR100994257B1 (en) E-catalog generation system enclosing price structure and method thereof
Chia et al. Design and Development of Pet Cage Ordering System on Web Based Technology
KR102535118B1 (en) System and method for global online wholesale product sales management
KR102488252B1 (en) Systme for providing proxy service using mobile device
TW201407515A (en) Method and system for processing shopping information over internet, and a readable storage medium
US20230113506A1 (en) Systems and methods for generating content for a user interface

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 23790787

Country of ref document: EP

Kind code of ref document: A1