US11354655B2 - Enhancing merchant databases using crowdsourced browser data - Google Patents

Enhancing merchant databases using crowdsourced browser data Download PDF

Info

Publication number
US11354655B2
US11354655B2 US16/861,761 US202016861761A US11354655B2 US 11354655 B2 US11354655 B2 US 11354655B2 US 202016861761 A US202016861761 A US 202016861761A US 11354655 B2 US11354655 B2 US 11354655B2
Authority
US
United States
Prior art keywords
merchant
transaction
electronic payment
user
record
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active, expires
Application number
US16/861,761
Other versions
US20210342823A1 (en
Inventor
Abdelkader M'Hamed Benkreira
Michael Mossoba
Joshua Edwards
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Capital One Services LLC
Original Assignee
Capital One Services LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Capital One Services LLC filed Critical Capital One Services LLC
Priority to US16/861,761 priority Critical patent/US11354655B2/en
Assigned to CAPITAL ONE SERVICES, LLC reassignment CAPITAL ONE SERVICES, LLC ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: BENKREIRA, ABDELKADER, EDWARDS, JOSHUA, MOSSOBA, MICHAEL
Publication of US20210342823A1 publication Critical patent/US20210342823A1/en
Priority to US17/831,766 priority patent/US12002036B2/en
Application granted granted Critical
Publication of US11354655B2 publication Critical patent/US11354655B2/en
Active legal-status Critical Current
Adjusted expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44521Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
    • G06F9/44526Plug-ins; Add-ons
    • 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
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/10Payment architectures specially adapted for electronic funds transfer [EFT] systems; specially adapted for home banking systems
    • G06Q20/102Bill distribution or payments
    • 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
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/384Payment protocols; Details thereof using social networks

Definitions

  • aspects of the disclosure relate generally to big data and more specifically to the processing and management of transaction data.
  • a financial institution may receive limited payment data from payment requesting systems for transactions originated from a variety of merchants.
  • the financial institution may provide a financial statement to a customer including transaction information such as a merchant name, a transaction amount, and a transaction timestamp.
  • transaction information such as a merchant name, a transaction amount, and a transaction timestamp.
  • the names for uncommon merchants may frequently be displayed in abbreviated forms or codes that may not be readily recognized by the customers.
  • Conventional systems may fail to provide friendly names for the merchants, thereby limiting their ability to provide their customers with insights into the transactions and increasing the likelihood of inadvertent fraud filings from the customers.
  • aspects described herein may address these and other problems, and generally improve the quality, efficiency, and speed of processing transaction data to offer insights into the details of the transactions and enhancing merchant databases using crowdsourced browser data.
  • An electronic payment system may determine that a user has submitted a checkout page for a transaction from a browser extension on a first user device.
  • the electronic payment system may receive cache information associated with the transaction.
  • the cache information may include merchant information, a user identifier and a timestamp associated with the transaction, and the electronic payment system may determine a time period associated with the timestamp.
  • a transaction record including a payment account identifier, a transaction time and a merchant identifier may be retrieved from a transaction database, where the payment account identifier matches with the user identifier, and the transaction time falls within the time period.
  • the electronic payment server may update a merchant record in a private merchant database with a friendly merchant name based on the merchant identifier and the merchant information, where the merchant record associates the merchant identifier with the friendly merchant name.
  • the merchant record may be promoted to a trustworthy database, and the friendly merchant name may be presented to a second user device.
  • FIG. 1 shows an example of a system for enhancing merchant databases using crowdsourced browser data in which one or more aspects described herein may be implemented
  • FIG. 2 shows an example computing device in accordance with one or more aspects described herein;
  • FIG. 3 shows a flow chart of a process for enhancing merchant databases using crowdsourced browser data according to one or more aspects of the disclosure.
  • FIG. 4 shows a flow chart of a process for capturing crowdsourced browser data according to one or more aspects of the disclosure.
  • the electronic payment system may cause to install the browser extension to the first user device.
  • the browser extension may determine a website that the user navigates to is associated with a merchant, and store the cache information in a local cache of the first user device. Based on a determination that the user has successfully completed a checkout process, the cache information may be sent to the electronic payment server. Conversely, based on a determination that the user has navigated away from the website without completing the checkout process, the cache information may be deleted from the local cache of the first user device.
  • the electronic payment server as described herein allows for determining an element in a Document Object Model (DOM) indicating a completion of a checkout process, determining specific terms on a website that indicates a completion of a checkout process, and/or specific terms in a Universal Resource Locator (URL) that indicates a completion of a checkout process.
  • DOM Document Object Model
  • URL Universal Resource Locator
  • the electronic payment server may retrieve a plurality of transaction records that occur within the determined time period from the transaction database, determine the transaction record from the plurality of transaction records based on that the payment account identifier in the cache information matches with the user identifier in the transaction record, and based on that a first transaction amount in the cache information matches with a second transaction amount in the transaction record.
  • the electronic payment server may determine a total number of merchant records in the private merchant database that associate the merchant identifier with the friendly merchant name In response to a determination that the total number exceeds a threshold value, the merchant record may be promoted to the trustworthy database, and the friendly merchant name may be presented to a second user device.
  • FIG. 1 shows a merchant database enhancing system 100 .
  • the merchant database enhancing system 100 may include at least one client devices 110 , at least one electronic payment servers 120 , at least one merchant device 130 , at least one payment authorization systems 140 , at least one transaction database 150 , at least one private merchant database 160 , and/or at least one trustworthy database 170 in communication via a network 180 .
  • network connections shown are illustrative and any means of establishing a communications link between the computers may be used.
  • any of various network protocols such as TCP/IP, Ethernet, FTP, HTTP and the like, and of various wireless communication technologies such as GSM, CDMA, WiFi, and LTE, is presumed, and the various computing devices described herein may be configured to communicate using any of these network protocols or technologies.
  • Any of the devices and systems described herein may be implemented, in whole or in part, using one or more computing systems described with respect to FIG. 2 .
  • Client devices 110 may submit transaction information related to a user such as a user identifier, a transaction amount, merchant information and a transaction timestamp, and/or send a request to obtain a financial statement associated with a previous transaction including merchant information such as a friendly merchant name.
  • Client devices 110 may detect that a browser extension is installed in client devices 110 , and determine a user has navigated to a website that may be associated with a merchant.
  • Client devices 110 may store the cache information in a local cache and the cache information may include a user identifier, the merchant information, the transaction amount and the timestamp associated with the transaction.
  • Client devices 110 may determine that the user has successfully completed a checkout process, and send the cache information to electronic payment servers 120 .
  • Client devices 110 may determine that the user has navigated away from the website without completing the checkout process, and delete the cache information from the local cache.
  • the browser extension installed on client devices 110 may monitor the user behavior, detect that the user has navigated to a website that may be associated with a merchant or determine that the user has completed a checkout process.
  • a DOM may be generated by the web browser on the client device by parsing HTML received from a web server to generate in-memory objects used by a web browser to render a web page on a computing device.
  • the browser extension may search for a heading element in the DOM, which may include an object that may be created in a certain way to indicate an e-commerce site on a platform.
  • the browser extension may search for a specific element in the DOM that the checkout process has completed on the e-commerce site.
  • the browser extension may also search for a specific element in the DOM that may indicate a name of the e-commerce site or the merchant.
  • the browser extension may search for a specific term on a website that indicates a completion of a checkout process. For example, the browser extension may search for specific term on a HTML page using Natural Language Processing (NLP) and recognize a checkout page on the website, or a page indicating, for example, “your checkout is complete” or “thank you for your purchase.”
  • NLP Natural Language Processing
  • the browser extension may search for a specific term in a URL that indicates a completion of a checkout process. For example, the browser extension may parse the URL and identify a “/checkout” portion on the URL or other terminologies that indicate that the transaction is complete.
  • Electronic payment servers 120 may receive requests from client devices 110 to display previous transaction information. Electronic payment servers 120 may receive cache information from client devices 110 after the user completes a checkout process. Electronic payment servers 120 may receive the friendly merchant name contained in the cache information directly from the client devices 110 . Electronic payment servers 120 may parse the cache information to obtain the friendly merchant name. For example, electronic payment servers 120 may search for a specific element in the DOM contained in the cache information that may indicate a name of the e-commerce site or the merchant.
  • Electronic payment servers 120 may search for a specific term related to a merchant website contained in the cache information. For example, electronic payment servers 120 may search for specific term on a HTML page using Natural Language Processing (NLP) and recognize the friendly name of the merchant, for example, “thank you for your purchase at ABC Store.” Electronic payment servers 120 may search for a specific term in a URL contained in the cache information. For example, electronic payment servers 120 may parse the URL and identify a portion on the URL that may indicate the friendly merchant name.
  • NLP Natural Language Processing
  • electronic payment servers 120 may receive the cache information from client devices 110 that includes the transaction information. Electronic payment servers 120 may determine a time period (e.g. 5 or 10 minutes) before or after the timestamp of the transaction that contained in the cache information.
  • a time period e.g. 5 or 10 minutes
  • Merchant devices 130 may send a request for authorization for a transaction to payment authentication systems 140 , which may approve or deny the request. After the transaction is authorized, a transaction record may be generated in transaction database 150 .
  • Transaction database 150 may store transaction records related to transactions previously conducted by users in transaction streams from a plurality of merchants. Transaction database 150 may receive a request from electronic payment servers 120 and retrieve the corresponding transaction records in the transaction streams. The transaction records may each contain a payment account identifier, a transaction time and a merchant identifier. The payment account identifier in the transaction record may match with the user identifier in the cache information, and the transaction time in the transaction record may fall within the time period.
  • Private merchant database 160 may be a merchant database that stores merchant records, which may in turn include a user identifier, a merchant identifier, and a friendly merchant name for some records in the merchant database.
  • Private merchant database 160 may be a staging area for trustworthy database 170 . For example, after electronic payment servers 120 identify a matching record in transaction database 150 based on the caching information from a user device, electronic payment servers 120 may create or update a record in private merchant database 160 as a “my record” for the particular user that conducts the related transaction. If the merchant record exceeds a threshold confidence level, for example, there are 20 merchant records originated from various users in private merchant database 160 that have the same association between a merchant identifier with the same friendly merchant name, that particular merchant record may be promoted to trustworthy database 170 .
  • a threshold confidence level for example, there are 20 merchant records originated from various users in private merchant database 160 that have the same association between a merchant identifier with the same friendly merchant name, that particular merchant record may be promoted to trustworthy database 170 .
  • Electronic payment servers 120 may receive a request from user devices 110 to display a financial statement of previously conducted transactions that may be associated with the merchant record. If the merchant record in private merchant database 160 does not exceed a threshold confidence level and before the merchant record may be promoted to trustworthy database 170 , the friendly merchant name may be displayed to a particular user that has a corresponding “my record” in private merchant database 160 . After the merchant records are promoted to trustworthy database 170 , the friendly merchant name may be displayed to any user that requests such information. For example, the user may request a financial statement containing a transaction that is associated with the merchant identifier corresponding to the friendly merchant name in trustworthy database 170 .
  • Electronic payment servers 120 may be a system independent from payment authorization systems 140 . Electronic payment servers 120 may also be a component residing on payment authorization systems 140 .
  • Client devices 110 , electronic payment servers 120 and/or payment authorization systems 140 may be associated with a particular authentication session.
  • Electronic payment servers 120 and payment authorization systems 140 may receive, process, and store a variety of transaction records and crowdsourced browser data, create, update, and promote merchant records in the databases, and/or share merchant data with client devices 110 as described herein.
  • any device in merchant database enhancing system 100 may perform any of the processes and/or store any data as described herein.
  • Some or all of the data described herein may be stored using one or more databases.
  • Databases may include, but are not limited to relational databases, hierarchical databases, distributed databases, in-memory databases, flat file databases, XML databases, NoSQL databases, graph databases, and/or a combination thereof.
  • the network 180 may include a local area network (LAN), a wide area network (WAN), a wireless telecommunications network, and/or any other communication network or combination thereof.
  • the data transferred to and from various computing devices in merchant database enhancing system 100 may include secure and sensitive data, such as confidential documents, customer personally identifiable information, and account data. Therefore, it may be desirable to protect transmissions of such data using secure network protocols and encryption, and/or to protect the integrity of the data when stored on the various computing devices.
  • a file-based integration scheme or a service-based integration scheme may be utilized for transmitting data between the various computing devices. Data may be transmitted using various network communication protocols. Secure data transmission protocols and/or encryption may be used in file transfers to protect the integrity of the data such as, but not limited to, File Transfer Protocol (FTP), Secure File Transfer Protocol (SFTP), and/or Pretty Good Privacy (PGP) encryption.
  • FTP File Transfer Protocol
  • SFTP Secure File Transfer Protocol
  • PGP Pretty Good Privacy
  • one or more web services may be implemented within the various computing devices.
  • Web services may be accessed by authorized external devices and users to support input, extraction, and manipulation of data between the various computing devices in the data sharing system 100 .
  • Web services built to support a personalized display system may be cross-domain and/or cross-platform, and may be built for enterprise use. Data may be transmitted using the Secure Sockets Layer (SSL) or Transport Layer Security (TLS) protocol to provide secure connections between the computing devices.
  • Web services may be implemented using the WS-Security standard, providing for secure SOAP messages using XML encryption.
  • Specialized hardware may be used to provide secure web services.
  • Secure network appliances may include built-in features such as hardware-accelerated SSL and HTTPS, WS-Security, and/or firewalls. Such specialized hardware may be installed and configured in the item level data prediction system 100 in front of one or more computing devices such that any external devices may communicate directly with the specialized hardware.
  • the computing device 200 may include a processor 203 for controlling overall operation of the computing device 200 and its associated components, including RAM 205 , ROM 207 , input/output device 209 , communication interface 211 , and/or memory 215 .
  • a data bus may interconnect processor(s) 203 , RAM 205 , ROM 207 , memory 215 , I/O device 209 , and/or communication interface 211 .
  • computing device 200 may represent, be incorporated in, and/or include various devices such as a desktop computer, a computer server, a mobile device, such as a laptop computer, a tablet computer, a smart phone, any other types of mobile computing devices, and the like, and/or any other type of data processing device.
  • I/O device 209 may include a microphone, keypad, touch screen, and/or stylus through which a user of the computing device 200 may provide input, and may also include one or more of a speaker for providing audio output and a video display device for providing textual, audiovisual, and/or graphical output.
  • Software may be stored within memory 215 to provide instructions to processor 203 allowing computing device 200 to perform various actions.
  • Memory 215 may store software used by the computing device 200 , such as an operating system 217 , application programs 219 , and/or an associated internal database 221 .
  • the various hardware memory units in memory 215 may include volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer-readable instructions, data structures, program modules, or other data.
  • Memory 215 may include one or more physical persistent memory devices and/or one or more non-persistent memory devices.
  • Memory 215 may include, but is not limited to, random access memory (RAM) 205 , read only memory (ROM) 207 , electronically erasable programmable read only memory (EEPROM), flash memory or other memory technology, optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium that may be used to store the desired information and that may be accessed by processor 203 .
  • Communication interface 211 may include one or more transceivers, digital signal processors, and/or additional circuitry and software for communicating via any network, wired or wireless, using any protocol as described herein.
  • Processor 203 may include a single central processing unit (CPU), which may be a single-core or multi-core processor, or may include multiple CPUs. Processor(s) 203 and associated components may allow the computing device 200 to execute a series of computer-readable instructions to perform some or all of the processes described herein. Although not shown in FIG. 2 , various elements within memory 215 or other components in computing device 200 , may include one or more caches including, but not limited to, CPU caches used by the processor 203 , page caches used by the operating system 217 , disk caches of a hard drive, and/or database caches used to cache content from database 221 .
  • caches including, but not limited to, CPU caches used by the processor 203 , page caches used by the operating system 217 , disk caches of a hard drive, and/or database caches used to cache content from database 221 .
  • the CPU cache may be used by one or more processors 203 to reduce memory latency and access time.
  • a processor 203 may retrieve data from or write data to the CPU cache rather than reading/writing to memory 215 , which may improve the speed of these operations.
  • a database cache may be created in which certain data from a database 221 is cached in a separate smaller database in a memory separate from the database, such as in RAM 205 or on a separate computing device.
  • a database cache on an application server may reduce data retrieval and data manipulation time by not needing to communicate over a network with a back-end database server.
  • computing device 200 Although various components of computing device 200 are described separately, functionality of the various components may be combined and/or performed by a single component and/or multiple computing devices in communication without departing from the invention.
  • the electronic payment servers may dynamically generate friendly merchant names based on crowdsourced browser data and provide insights into previously conducted transactions upon user requests.
  • the transaction information may be in the form of a line of data that offers limited information about the transaction, with each piece of information appearing in certain locations within the line of data.
  • the merchant identifier may appear in a specific location and may include 8-10 characters in the abbreviated form.
  • This line of data may be inherited from the format of legacy systems dated back, for example, 30 years ago.
  • Conventional payment processing systems may attempt to look up the merchant identifier from a third party database system to find a meaningful merchant name. This process may be time consuming as the conventional payment processing systems must wait for the third party system to respond.
  • FIG. 3 shows a flow chart of a process for enhancing merchant databases using crowdsourced browser data according to one or more aspects of the disclosure. Some or all of the steps of process 300 may be performed using one or more computing devices as described herein.
  • a user may be determined that a user has submitted a checkout page for a transaction from a first user device.
  • the transaction information may be transmitted to a financial institution.
  • the transaction information may include a user identifier, a transaction amount, a transaction timestamp, and a merchant identifier.
  • the transaction information may frequently be transmitted as a line of data with every piece of information located in a specific position.
  • the merchant identifier may be an 8-10 character code not readily recognizable to infer a friendly merchant name.
  • the electronic payment server may process this line of data, and translate the merchant identifier into a readable name for a common merchant.
  • the merchant name may be displayed as a friendly merchant name “Apple” on the user's credit card statement, because that name may be common enough to be readily translated into a user-friendly format.
  • the translation process may be time consuming for uncommon merchants, and it may not be feasible to manually set up the mapping between the merchant code and the friendly merchant name for each merchant, particularly for smaller merchants that may only exist for 6 months and never have more than $2000 of sales in revenue.
  • a merchant name listed on the statement may be truncated. For example, the merchant name may be displayed as “sq*.” Given the merchant name is not displayed as a friendly merchant name, the user may not recognize the merchant is indeed “Square One” department store. As the user may not be able to identify the merchant or remember shopping at a particular merchant on a given day, the user may be likely to create a fraud filing for a valid transaction. The financial institute may spend resources to conduct the fraud proceedings and may suffer financial losses for these incorrect fraud filings. Similarly, a user may conduct transactions via a payment portal or a large e-commerce website that may support numerous small merchants.
  • the merchant name displayed may not be the friendly name that is readily recognizable for the actual transaction.
  • the user may submit a checkout page on a website via a browser on a user device.
  • the browser extension may collect and store the cache information on the user device.
  • the browser extension may send the cache information associated with the transaction to the electronic payment server.
  • An electronic payment server may monitor and detect, via a browser extension installed on the user device, that a user has submitted a checkout page for a transaction.
  • the user device may identify an element in a DOM indicating a completion of a checkout process, such as a heading element in the DOM, which may indicate an e-commerce site such as “Joe's Sports and Game Shop” on a platform.
  • the user device may search for a specific element in the DOM to determine that a checkout process has completed on the e-commerce site “Joe's Sports and Game Shop.”
  • the user device may search for a specific term on a website that indicates a completion of a checkout process. For example, the user device may search for a specific term on a HTML page such as “Joe's Sports and Game Shop” using NLP (Natural Language Processing). The user device may recognize the terms such as “your checkout is complete” or “thank you for shopping at Joe's Sports and Game Shop,” which indicates a checkout page on the website of “Joe's Sports and Game Shop” has been submitted.
  • NLP Natural Language Processing
  • the user device may search for a specific term in a URL that indicates a completion of a checkout process. For example, the user device may parse the URL associated with “Joe's Sports and Game Shop” and identify a “/checkout” portion on the URL or other terminologies that indicate that the transaction has been completed.
  • cache information associated with the transaction may be received from a browser extension.
  • the electronic payment server may receive the cache information from the browser extension installed on the user device.
  • the cache information may include the merchant information, a user identifier, a transaction amount and a timestamp associated with the transaction.
  • the browser extension may cache the related information in a local cache.
  • the browser extension may parse the URLs or use NLP to identify the name of the merchant “Joe's Sports and Game Shop.”
  • the browser extension may send the URLs to the electronic payment server, which may in turn parse the URLs or use NLP to identify the names of the merchants.
  • the browser extension or the electronic payment server may search for H 1 element or an element in the header in the DOM.
  • the corresponding DOM element may indicate that an object may be created a certain way to indicate that an ecommerce site created on the platform.
  • the browser extension or the electronic payment server may search for specific elements indicating the name of the merchant such as “Joe's Sports and Game Shop.”
  • the browser extension or the electronic payment server may search for a specific location on a website or a specific tag on the HTML page of the website to identify the merchant name.
  • the merchant information may be cached in the local cache of the user device.
  • the cache information may include the merchant name, URLs, social media handles of the merchant, and customer service email or phone number handle of merchant, and/or any information that maybe retrieved from the merchant's website.
  • the electronic payment server may receive the cache information after a determination by the browser extension on the user device that the user has submitted the checkout page for the transaction.
  • the electronic payment server may actively detect a transaction from the transaction stream.
  • the electronic payment server may request the browser extension to send the cache information to the electronic payment server proactively.
  • the electronic payment server may request the browser extension to send the cache information periodically, for example, every 30 or 60 minutes.
  • the electronic payment server may request the browser extension to send the cache information after the user submits a checkout page.
  • the electronic payment server may wait for the browser extension to send the cache information after the browser extension detects that the user submits a checkout page.
  • a time period associated with a timestamp of the transaction may be determined.
  • the transaction information including the cache information may be sent to the electronic payment server in real-time.
  • the electronic payment server may identify the authentication request originated from the merchant in the transaction stream associated with the same transaction.
  • the user may also have purchased a few items consecutively from different merchants and several transactions may occur quickly with a time period.
  • the electronic payment server may determine a time period associated with a timestamp of the transaction. For example, the time period may be a few seconds or minutes before or after the timestamp of the transaction that occurred in the browser extension.
  • a transaction record in a transaction database may be retrieved.
  • the transaction record may have a payment account identifier that matches with a user identifier of the transaction and a transaction time that falls within the time period.
  • the electronic payment server may identify a matching record in the transaction stream. For example, when the user swipes a credit card and submits the checkout page for a transaction, the merchant may also send an authorization request to authorize the credit card payment for the transaction to the financial institution.
  • the authorization request may be sent to a payment authorization system of the financial institution.
  • the authorization request also may be sent to the electronic payment server of the financial institution, which may forward the authentication request to the payment authorization system.
  • the electronic payment server may receive the authentication request and authorize the transaction. Once the transaction is authorized, the payment authorization system or the electronic payment server may create a transaction record in the transaction database.
  • the transaction record may include a payment account identifier, a transaction amount, a transaction time, and a merchant identifier.
  • the electronic payment server may match the transaction information of a first transaction received in the cache information with the transaction record of a second transaction in the transaction database, based on the criteria that the payment account identifier of the second transaction in the transaction record matches with the user identifier of the first transaction in the cache information, and the transaction time of the second transaction in the transaction record falls within the time period that the first transaction occurs.
  • the electronic payment server may match the first transaction received in the cache information with the second transaction in the transaction database based on that a first transaction amount of the first transaction matches with a second transaction amount of the second transaction.
  • the comparison of transaction amount can be used to disambiguate transactions occurring within a threshold time period of a transaction timestamp.
  • the transaction record of the second transaction which has the merchant identifier may be supplemented with the merchant information from the cache information, such as the merchant name, URLs, social media handles of the merchant, and customer service email or phone number handle of merchant, and/or any information retrieved from the merchant's website.
  • the electronic payment server may associate the merchant identifier in the transaction record with a more meaningful friendly merchant name.
  • the electronic payment server may proactively call the transaction database.
  • the electronic payment server may identify, from the transaction database, that the same user may have made a purchase, for example, at Joe's Sports and Game Shop at approximately the same timeframe.
  • the browser extension may send the cache information that has been captured, and the electronic payment server may match up with any transaction that may come cross the transaction stream for that user at Joe's Sports and Game Shop and at the specified timeframe associated with the transaction timestamp captured in the cache information. If the electronic payment server finds a match, a merchant record that associates the merchant identifier with the friendly merchant name “Joe's Sports and Game Shop” may be created.
  • the electronic payment server may identify that the Amazon transaction may not be a match and proceed to search for other transactions in the transaction database that was conducted during the short time window or the time period. It is may be possible that several transactions may occur consecutively as the user may purchase several items from various merchants quickly within the short time window.
  • the electronic payment server may not be able to find the matching transaction record in the transaction database. For example, a user may use a browser extension from a first financial institution, and use a credit card from a second financial institution to conduct a transaction. The transaction from the second financial institution may not show up on the transaction stream from the first financial institution. If the electronic payment server identifies no matching transaction in the transaction stream for “Joe's Sports and Game Shop,” the electronic payment server may discard the cache information within certain time period, ranging from several seconds to several minutes, depending on how long the matching process may take.
  • a merchant record in a private merchant database may be updated with a friendly merchant name.
  • the merchant record may associate the merchant identifier in the transaction record with the friendly merchant name obtained from the cache information.
  • the electronic payment server may map the transaction that is currently occurring in the browser of the user device with the transaction that is identified in the transaction stream.
  • the electronic payment server may search for the merchant identifier in the transaction record and map it to the merchant information captured in the cache information of the browser. For example, in the transaction database, electronic payment server may identify a transaction record that has a merchant identifier in the format of an 8 character code “JSGSTC01” which may not be readily recognizable by the user.
  • the electronic payment server may infer that the same merchant corresponds to the URL http://www.joessportsgameshop, and the friendly merchant name “Joe's Sports and Game Shop.” From the merchant's social profile that captured in the browser cache information, the electronic payment server may identify that the merchant has a physical location in Tysons Corner, Va., and obtain the phone number and email address for customer service.
  • the electronic payment server may create a merchant record that associates the merchant identifier “JSGSTC01” with the friendly merchant name “Joe's Sports and Game Shop.”
  • the private merchant database already has a merchant record that captures the relationship between the merchant identifier “JSGSTC01” and the friendly merchant name “Joe's Sports and Game Shop,” such merchant record may be updated with a field that includes a transaction identifier or additional merchant information such as the social profile of the merchant, merchant website, the email address and phone number.
  • the private merchant database may serve as a staging area before the merchant records may be confirmed as trustworthy and before it may be promoted to a trustworthy database.
  • the merchant records and the associated friendly merchant names in the private merchant database maybe presented to a limited subset of users, particularly users who have conducted a related transaction in the browser extension that has a match with a transaction in the transaction stream.
  • the merchant information including the friendly merchant name in the private merchant database may be presented to the user associated with the transaction that has the corresponding “my record.”
  • the merchant records in the private merchant database may not be visible to the users that have not conducted the related transactions.
  • a first user may make a purchase at “Joe's Sports and Game Shop” and a browser extension at the first user device may capture the cache information.
  • the electronic payment server may identify a matching transaction in the transaction stream and create an associated between the identifier “JSGSTC01” with the friendly merchant name “Joe's Sports and Game Shop.”
  • a second user may make a purchase at “Joe's Sports and Game Shop,” but may not have the browser extension installed on the second user device.
  • a third user may make a purchase at “Joe's Sports and Game Shop,” but may identify no matching transaction in the transaction stream.
  • the friendly name “Joe's Sports and Game Shop” may be presented to the first user, but not to the second user and the third user.
  • a determination may be made whether the merchant record in the private merchant database exceeds a threshold confidence level.
  • the confidence level may be determined by a total number of merchant records in the private merchant database that may share the same association between a merchant identifier and a friendly merchant name.
  • the confidence level may be determined by a multi-factor scoring metric to consider factors including the total number of the relevant merchant records in the private merchant database. For example, for the merchant records in the private merchant database that associate a merchant identifier with a particular friendly merchant name, the electronic payment server may consider whether the transactions related to the merchant records are conducted by the same user at various times or by different users.
  • the electronic payment server may assign a relatively higher weight in the scoring metric than for the subset of merchant records that are originated from transactions conduct by the same user.
  • the scoring metric may also consider other factors such as the transaction amount, the user ratings of the merchant in the social profile, user feedback/verification of the friendly merchant name. For example, if the merchant records are related to transactions with trivial transaction amounts, the electronic payment server may assign a relatively lower weight in the scoring metric for these merchant records. If a merchant has been rated highly in the social profile of the merchant, the electronic payment server may assign a relatively higher weight in the scoring metric for these merchant records. If the user has an option to provide feedback to verify that the friendly merchant name is indeed the merchant they have purchased from, the electronic payment server may assign a relatively higher weight in the scoring metric for the merchant records that contain this friendly merchant name.
  • the electronic payment server may determine a total number of merchant records in the private merchant database that associate the merchant identifier “JSGSTC01” with the friendly merchant name “Joe's Sports and Game Shop.” As these merchant records may be related to transactions originated from various users that have made purchases at Joe's Sports and Game Shop, the association may have been verified by these transactions originated from different users.
  • Each of these transactions may generate a corresponding merchant record in the private merchant database, and each merchant record may share the same association between the merchant identifier “JSGSTC01” with the friendly merchant name “Joe's Sports and Game Shop.”
  • a first merchant record may include the data fields: transaction ID1, user identifier 1, merchant identifier “JSGSTC01,” friendly merchant name “Joe's Sports and Game Shop.”
  • a second merchant record may contain the data fields: transaction ID2, user identifier 2, merchant identifier “JSGSTC01,” friendly merchant name “Joe's Sports and Game Shop.”
  • the confidence level may be reflected on the total number of merchant records that share the same association in the private merchant database and the electronic payment server may determine whether the total number exceeds a threshold value.
  • the threshold value may be set relatively low, such as 5, if the financial institution prefers to present the friendly merchant name to the users more readily to deter inadvertent fraud filings.
  • the threshold value may be set relatively high, such as 50, if the financial institution prefers to maintain a high confidence level on the friendly merchant name to be presented to the users.
  • the process may proceed to step 310 , where the electronic payment server may continue to monitor the browser extension and determine that user has submitted a checkout page for a new transaction.
  • the process may proceed to step 322 , where the merchant record maybe promoted to a trustworthy database.
  • the electronic payment server may present the merchant record in the trustworthy database to any user devices upon request. For example, a first user may make a purchase at “Joe's Sports and Game Shop” and have a browser extension installed at the first user device. A second user may make a purchase at “Joe's Sports and Game Shop,” but may not have the browser extension installed on the second user device.
  • the friendly name “Joe's Sports and Game Shop” may be presented to both the first user and the second user regardless whether a browser extension may be installed on the client device or whether a matching transaction may be identified in the transaction stream. Indeed, the electronic payment server may not need to find the matching transaction in the transaction database.
  • the electronic payment server may look up the merchant record in the trustworthy database, and identify the friendly merchant name based on the merchant identifier in the request. The electronic payment server may present the friendly merchant name to any user that may request the relevant merchant information.
  • the private merchant database and the trustworthy database may be located separately from each other.
  • the private merchant database and the trustworthy database may be located in different tables of the same database.
  • the private merchant database and the trustworthy database may also be different records in a merged database.
  • each merchant record in the merged database may contain a field “confidence level,” which correspond to a counter on how many times an association between a merchant identifier and a friendly merchant name has been verified by distinct transactions or users.
  • the electronic payment server may determine whether to present the friendly name to a subset of users (who have “my record”) or all the users who may request such records based on the confidence level.
  • the electronic payment server when the electronic payment server maps the cache information from the browser extension to a transaction, there may be tens of thousands of records needed to be processed, and the electronic payment server may have a mechanism to handle the potential errors. There may be chances that a merchant record may be created by mistake in the private merchant database. To accommodate the chances for errors, a two-level confidence threshold may be applied. For example, if the confidence level is below 5, the electronic payment server may not display the friendly name to any user. If the confidence level is between 5 and 10, the electronic payment server may display the friendly name to the specific users who have conducted the relevant transactions. If the confidence level is above 10, the electronic payment server may display the friendly name to any users upon request.
  • the friendly merchant name may be promoted to a second user device.
  • the electronic payment server may display the friendly name to any users when they request the financial statement, including a new user that has no browser extension installed on the user device, or has no matching transaction in the transaction stream.
  • the electronic payment server may supply the user with a friendly merchant name and other information about the merchant.
  • the user examines the transaction history on the financial statement, if the user readily recognizes the merchant from which the user has made a purchase, the user may be unlikely to create an inadvertent fraud filing. Otherwise, if the merchant name is displayed as a code or in a truncated form that is not meaningful to the user, there may be a much higher chance that the user may consider it as fraud and go through fraud proceedings for the related transaction.
  • FIG. 4 shows a flow chart of a process of capturing crowdsourced browser data according to one or more aspects of the disclosure. Some or all of the steps of process 400 may be performed using one or more computing devices as described herein.
  • a browser extension may be installed to a first user device.
  • the electronic payment server may provide an option for a user to download and install the browser extension to the first user device.
  • the browser extension may monitor user actions in a web browser executing on the first user device, read data on the website that the user visits, store the captured information in the local cache of the user device and send the captured information to the electronic payment server associated with the financial institution.
  • the browser extension may extract the URLs of a website such as http://www.joessportsgameshop.com.
  • the browser extension may parse the URLs or use NLP to identify the names of the merchant “Joe's Sports and Game Shop.”
  • the browser extension may send the URLs or other website data to the electronic payment server, which may in turn parse the URLs or use NLP to identify the names of the merchants.
  • the merchant may use a reseller or a merchant platform that actually conducts the transactions, which may impact the merchant URLs and the browser extension or the electronic payment server may not readily identify the name of the merchant from the URLs.
  • the browser extension or the electronic payment server may search for specific elements in the DOM to identify the name of the merchant such as “Joe's Sports and Game Shop.”
  • the browser extension or the electronic payment server may search for a specific location on a website or a specific tag on the HTML page of the website to identify the merchant name.
  • cache information may be stored in a local cache of the first user device. If the user allows the electronic payment server to monitor the usage of the browser via the browser extension, the merchant information may be cached in the local cache of the user device.
  • the cache information may be structural data captured at the browser extension that indicates who the merchant is and what the user has purchased.
  • the cache information may include the transaction information and merchant information.
  • the merchant information may include the merchant name, merchant URLs, social media handles of the merchant, and customer service email or phone number handle of merchant, and/or any information may be retrieved from the merchant's website.
  • a determination may be made on whether the user has completed a checkout process. If a browser extension from financial institute A has been installed on the user device, the browser extension may auto-fill payment information on the checkout page to encourage the user to use a credit card from financial institute A to complete transaction. If the user uses a credit card issued by financial institute B, the electronic payment server at financial institute A may not receive the transaction information and may not use the cache information captured by the browser extension to enhance merchant databases.
  • the browser extension or the electronic payment server may identify an element in a DOM indicating a completion of a checkout process. For example, the electronic payment server may examine a heading element in the DOM, which may indicate an e-commerce site such as “Joe's Sports and Game Shop” on a platform. The browser extension or the electronic payment server may search for a specific element in the DOM that a checkout process has completed on the e-commerce site such as “Joe's Sports and Game Shop.”
  • the browser extension or the electronic payment server may search for a specific term on a website that indicates a completion of a checkout process.
  • the electronic payment server may search for specific term on a HTML page using NLP.
  • the electronic payment server may recognize the terms such as “your checkout is complete” or “thank you for shopping at Joe's Sports and Game Shop.”
  • the browser extension or the electronic payment server may search for a specific term in a URL that indicates a completion of a checkout process. For example, the browser extension or the electronic payment server may parse the URL associated with the merchant website and identify a “/checkout” portion on the URL or other terminologies that indicate that the transaction is completed.
  • the process may proceed to step 418 , where cache information may be sent to an electronic payment server.
  • the cache information may include the merchant information, such as the merchant name, URLs, social media handles of the merchant, and customer service email or phone number handle of merchant, and/or any information may be retrieved from the merchant's website.
  • the cache information may include transaction information such as a user identifier, a transaction amount, and a transaction timestamp. If the user has not completed the checkout process, the process may proceed to step 420 , where a determination may be made whether the user has navigated away from the merchant website. If the user has not navigated away, the process may proceed to step 414 to continue to store the cache information in the local cache.
  • the process may proceed to step 422 , where the cache information may be deleted from the local cache of first user device.
  • the electronic payment server may use crowdsourced data from the browser extension to enhance merchant databases such as the private merchant database and eventually the trustworthy database.
  • One or more aspects discussed herein may be embodied in computer-usable or readable data and/or computer-executable instructions, such as in one or more program modules, executed by one or more computers or other devices as described herein.
  • program modules include routines, programs, objects, components, data structures, and the like that perform particular tasks or implement particular abstract data types when executed by a processor in a computer or other device.
  • the modules may be written in a source code programming language that is subsequently compiled for execution, or may be written in a scripting language such as (but not limited to) HTML or XML.
  • the computer executable instructions may be stored on a computer readable medium such as a hard disk, optical disk, removable storage media, solid-state memory, RAM, and the like.
  • the functionality of the program modules may be combined or distributed as desired in various embodiments.
  • the functionality may be embodied in whole or in part in firmware or hardware equivalents such as integrated circuits, field programmable gate arrays (FPGA), and the like.
  • Particular data structures may be used to more effectively implement one or more aspects discussed herein, and such data structures are contemplated within the scope of computer executable instructions and computer-usable data described herein.
  • Various aspects discussed herein may be embodied as a method, a computing device, a system, and/or a computer program product.

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Theoretical Computer Science (AREA)
  • Finance (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Mining & Analysis (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Information Transfer Between Computers (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

Systems as described herein may enhance merchant databases using crowdsourced browser data. An electronic payment server may receive cache information associated with the first transaction from a browser extension. The electronic payment server may retrieve a transaction record for a second transaction in a transaction database, wherein the first transaction matches with the second transaction. The electronic payment server may update a merchant record in a private merchant database with a friendly merchant name based on the cache information. Upon determining that the merchant record in the private merchant database exceeds a threshold confidence level, the merchant record may be promoted to a trustworthy database, and the friendly merchant name may be presented to a user device.

Description

FIELD OF USE
Aspects of the disclosure relate generally to big data and more specifically to the processing and management of transaction data.
BACKGROUND
In an electronic payment processing network, a financial institution may receive limited payment data from payment requesting systems for transactions originated from a variety of merchants. The financial institution may provide a financial statement to a customer including transaction information such as a merchant name, a transaction amount, and a transaction timestamp. However, the names for uncommon merchants may frequently be displayed in abbreviated forms or codes that may not be readily recognized by the customers. Conventional systems may fail to provide friendly names for the merchants, thereby limiting their ability to provide their customers with insights into the transactions and increasing the likelihood of inadvertent fraud filings from the customers.
Aspects described herein may address these and other problems, and generally improve the quality, efficiency, and speed of processing transaction data to offer insights into the details of the transactions and enhancing merchant databases using crowdsourced browser data.
SUMMARY
The following presents a simplified summary of various aspects described herein. This summary is not an extensive overview, and is not intended to identify key or critical elements or to delineate the scope of the claims. The following summary merely presents some concepts in a simplified form as an introductory prelude to the more detailed description provided below. Corresponding apparatus, systems, and computer-readable media are also within the scope of the disclosure.
Systems as described herein may include features for enhancing merchant databases using crowdsourced browser data. An electronic payment system may determine that a user has submitted a checkout page for a transaction from a browser extension on a first user device. The electronic payment system may receive cache information associated with the transaction. The cache information may include merchant information, a user identifier and a timestamp associated with the transaction, and the electronic payment system may determine a time period associated with the timestamp. A transaction record including a payment account identifier, a transaction time and a merchant identifier may be retrieved from a transaction database, where the payment account identifier matches with the user identifier, and the transaction time falls within the time period. The electronic payment server may update a merchant record in a private merchant database with a friendly merchant name based on the merchant identifier and the merchant information, where the merchant record associates the merchant identifier with the friendly merchant name. Upon determining that the merchant record in the private merchant database exceeds a threshold confidence level, the merchant record may be promoted to a trustworthy database, and the friendly merchant name may be presented to a second user device.
These features, along with many others, are discussed in greater detail below.
BRIEF DESCRIPTION OF THE DRAWINGS
The present disclosure is described by way of example and not limited in the accompanying figures in which like reference numerals indicate similar elements and in which:
FIG. 1 shows an example of a system for enhancing merchant databases using crowdsourced browser data in which one or more aspects described herein may be implemented;
FIG. 2 shows an example computing device in accordance with one or more aspects described herein;
FIG. 3 shows a flow chart of a process for enhancing merchant databases using crowdsourced browser data according to one or more aspects of the disclosure; and
FIG. 4 shows a flow chart of a process for capturing crowdsourced browser data according to one or more aspects of the disclosure.
DETAILED DESCRIPTION
In the following description of the various embodiments, reference is made to the accompanying drawings, which form a part hereof, and in which is shown by way of illustration various embodiments in which aspects of the disclosure may be practiced. It is to be understood that other embodiments may be utilized and structural and functional modifications may be made without departing from the scope of the present disclosure. Aspects of the disclosure are capable of other embodiments and of being practiced or being carried out in various ways. In addition, it is to be understood that the phraseology and terminology used herein are for the purpose of description and should not be regarded as limiting. Rather, the phrases and terms used herein are to be given their broadest interpretation and meaning.
By way of introduction, aspects discussed herein may relate to methods and techniques for enhancing merchant databases using crowdsourced browser data. The electronic payment system may cause to install the browser extension to the first user device. The browser extension may determine a website that the user navigates to is associated with a merchant, and store the cache information in a local cache of the first user device. Based on a determination that the user has successfully completed a checkout process, the cache information may be sent to the electronic payment server. Conversely, based on a determination that the user has navigated away from the website without completing the checkout process, the cache information may be deleted from the local cache of the first user device.
The electronic payment server as described herein allows for determining an element in a Document Object Model (DOM) indicating a completion of a checkout process, determining specific terms on a website that indicates a completion of a checkout process, and/or specific terms in a Universal Resource Locator (URL) that indicates a completion of a checkout process.
In many aspects, the electronic payment server may retrieve a plurality of transaction records that occur within the determined time period from the transaction database, determine the transaction record from the plurality of transaction records based on that the payment account identifier in the cache information matches with the user identifier in the transaction record, and based on that a first transaction amount in the cache information matches with a second transaction amount in the transaction record. The electronic payment server may determine a total number of merchant records in the private merchant database that associate the merchant identifier with the friendly merchant name In response to a determination that the total number exceeds a threshold value, the merchant record may be promoted to the trustworthy database, and the friendly merchant name may be presented to a second user device.
Merchant Database Enhancing Systems
FIG. 1 shows a merchant database enhancing system 100. The merchant database enhancing system 100 may include at least one client devices 110, at least one electronic payment servers 120, at least one merchant device 130, at least one payment authorization systems 140, at least one transaction database 150, at least one private merchant database 160, and/or at least one trustworthy database 170 in communication via a network 180. It will be appreciated that the network connections shown are illustrative and any means of establishing a communications link between the computers may be used. The existence of any of various network protocols such as TCP/IP, Ethernet, FTP, HTTP and the like, and of various wireless communication technologies such as GSM, CDMA, WiFi, and LTE, is presumed, and the various computing devices described herein may be configured to communicate using any of these network protocols or technologies. Any of the devices and systems described herein may be implemented, in whole or in part, using one or more computing systems described with respect to FIG. 2.
Client devices 110 may submit transaction information related to a user such as a user identifier, a transaction amount, merchant information and a transaction timestamp, and/or send a request to obtain a financial statement associated with a previous transaction including merchant information such as a friendly merchant name. Client devices 110 may detect that a browser extension is installed in client devices 110, and determine a user has navigated to a website that may be associated with a merchant. Client devices 110 may store the cache information in a local cache and the cache information may include a user identifier, the merchant information, the transaction amount and the timestamp associated with the transaction. Client devices 110 may determine that the user has successfully completed a checkout process, and send the cache information to electronic payment servers 120. Client devices 110 may determine that the user has navigated away from the website without completing the checkout process, and delete the cache information from the local cache.
In a variety of embodiments, the browser extension installed on client devices 110 may monitor the user behavior, detect that the user has navigated to a website that may be associated with a merchant or determine that the user has completed a checkout process. For example, a DOM may be generated by the web browser on the client device by parsing HTML received from a web server to generate in-memory objects used by a web browser to render a web page on a computing device. The browser extension may search for a heading element in the DOM, which may include an object that may be created in a certain way to indicate an e-commerce site on a platform. The browser extension may search for a specific element in the DOM that the checkout process has completed on the e-commerce site. The browser extension may also search for a specific element in the DOM that may indicate a name of the e-commerce site or the merchant.
The browser extension may search for a specific term on a website that indicates a completion of a checkout process. For example, the browser extension may search for specific term on a HTML page using Natural Language Processing (NLP) and recognize a checkout page on the website, or a page indicating, for example, “your checkout is complete” or “thank you for your purchase.”
The browser extension may search for a specific term in a URL that indicates a completion of a checkout process. For example, the browser extension may parse the URL and identify a “/checkout” portion on the URL or other terminologies that indicate that the transaction is complete.
Electronic payment servers 120 may receive requests from client devices 110 to display previous transaction information. Electronic payment servers 120 may receive cache information from client devices 110 after the user completes a checkout process. Electronic payment servers 120 may receive the friendly merchant name contained in the cache information directly from the client devices 110. Electronic payment servers 120 may parse the cache information to obtain the friendly merchant name. For example, electronic payment servers 120 may search for a specific element in the DOM contained in the cache information that may indicate a name of the e-commerce site or the merchant.
Electronic payment servers 120 may search for a specific term related to a merchant website contained in the cache information. For example, electronic payment servers 120 may search for specific term on a HTML page using Natural Language Processing (NLP) and recognize the friendly name of the merchant, for example, “thank you for your purchase at ABC Store.” Electronic payment servers 120 may search for a specific term in a URL contained in the cache information. For example, electronic payment servers 120 may parse the URL and identify a portion on the URL that may indicate the friendly merchant name.
After determining that the user has completed a checkout process successfully, electronic payment servers 120 may receive the cache information from client devices 110 that includes the transaction information. Electronic payment servers 120 may determine a time period (e.g. 5 or 10 minutes) before or after the timestamp of the transaction that contained in the cache information.
Merchant devices 130 may send a request for authorization for a transaction to payment authentication systems 140, which may approve or deny the request. After the transaction is authorized, a transaction record may be generated in transaction database 150.
Transaction database 150 may store transaction records related to transactions previously conducted by users in transaction streams from a plurality of merchants. Transaction database 150 may receive a request from electronic payment servers 120 and retrieve the corresponding transaction records in the transaction streams. The transaction records may each contain a payment account identifier, a transaction time and a merchant identifier. The payment account identifier in the transaction record may match with the user identifier in the cache information, and the transaction time in the transaction record may fall within the time period.
In the event that electronic payment servers 120 may identify and retrieve a corresponding transaction record in the transaction database 150, electronic payment servers 120 may create or update a merchant record in private merchant database 160. Private merchant database 160 may be a merchant database that stores merchant records, which may in turn include a user identifier, a merchant identifier, and a friendly merchant name for some records in the merchant database. Private merchant database 160 may be a staging area for trustworthy database 170. For example, after electronic payment servers 120 identify a matching record in transaction database 150 based on the caching information from a user device, electronic payment servers 120 may create or update a record in private merchant database 160 as a “my record” for the particular user that conducts the related transaction. If the merchant record exceeds a threshold confidence level, for example, there are 20 merchant records originated from various users in private merchant database 160 that have the same association between a merchant identifier with the same friendly merchant name, that particular merchant record may be promoted to trustworthy database 170.
Electronic payment servers 120 may receive a request from user devices 110 to display a financial statement of previously conducted transactions that may be associated with the merchant record. If the merchant record in private merchant database 160 does not exceed a threshold confidence level and before the merchant record may be promoted to trustworthy database 170, the friendly merchant name may be displayed to a particular user that has a corresponding “my record” in private merchant database 160. After the merchant records are promoted to trustworthy database 170, the friendly merchant name may be displayed to any user that requests such information. For example, the user may request a financial statement containing a transaction that is associated with the merchant identifier corresponding to the friendly merchant name in trustworthy database 170.
Electronic payment servers 120 may be a system independent from payment authorization systems 140. Electronic payment servers 120 may also be a component residing on payment authorization systems 140.
Client devices 110, electronic payment servers 120 and/or payment authorization systems 140 may be associated with a particular authentication session. Electronic payment servers 120 and payment authorization systems 140 may receive, process, and store a variety of transaction records and crowdsourced browser data, create, update, and promote merchant records in the databases, and/or share merchant data with client devices 110 as described herein. However, it should be noted that any device in merchant database enhancing system 100 may perform any of the processes and/or store any data as described herein. Some or all of the data described herein may be stored using one or more databases. Databases may include, but are not limited to relational databases, hierarchical databases, distributed databases, in-memory databases, flat file databases, XML databases, NoSQL databases, graph databases, and/or a combination thereof. The network 180 may include a local area network (LAN), a wide area network (WAN), a wireless telecommunications network, and/or any other communication network or combination thereof.
The data transferred to and from various computing devices in merchant database enhancing system 100 may include secure and sensitive data, such as confidential documents, customer personally identifiable information, and account data. Therefore, it may be desirable to protect transmissions of such data using secure network protocols and encryption, and/or to protect the integrity of the data when stored on the various computing devices. A file-based integration scheme or a service-based integration scheme may be utilized for transmitting data between the various computing devices. Data may be transmitted using various network communication protocols. Secure data transmission protocols and/or encryption may be used in file transfers to protect the integrity of the data such as, but not limited to, File Transfer Protocol (FTP), Secure File Transfer Protocol (SFTP), and/or Pretty Good Privacy (PGP) encryption. In many embodiments, one or more web services may be implemented within the various computing devices. Web services may be accessed by authorized external devices and users to support input, extraction, and manipulation of data between the various computing devices in the data sharing system 100. Web services built to support a personalized display system may be cross-domain and/or cross-platform, and may be built for enterprise use. Data may be transmitted using the Secure Sockets Layer (SSL) or Transport Layer Security (TLS) protocol to provide secure connections between the computing devices. Web services may be implemented using the WS-Security standard, providing for secure SOAP messages using XML encryption. Specialized hardware may be used to provide secure web services. Secure network appliances may include built-in features such as hardware-accelerated SSL and HTTPS, WS-Security, and/or firewalls. Such specialized hardware may be installed and configured in the item level data prediction system 100 in front of one or more computing devices such that any external devices may communicate directly with the specialized hardware.
Computing Devices
Turning now to FIG. 2, a computing device 200 that may be used with one or more of the computational systems is described. The computing device 200 may include a processor 203 for controlling overall operation of the computing device 200 and its associated components, including RAM 205, ROM 207, input/output device 209, communication interface 211, and/or memory 215. A data bus may interconnect processor(s) 203, RAM 205, ROM 207, memory 215, I/O device 209, and/or communication interface 211. In some embodiments, computing device 200 may represent, be incorporated in, and/or include various devices such as a desktop computer, a computer server, a mobile device, such as a laptop computer, a tablet computer, a smart phone, any other types of mobile computing devices, and the like, and/or any other type of data processing device.
Input/output (I/O) device 209 may include a microphone, keypad, touch screen, and/or stylus through which a user of the computing device 200 may provide input, and may also include one or more of a speaker for providing audio output and a video display device for providing textual, audiovisual, and/or graphical output. Software may be stored within memory 215 to provide instructions to processor 203 allowing computing device 200 to perform various actions. Memory 215 may store software used by the computing device 200, such as an operating system 217, application programs 219, and/or an associated internal database 221. The various hardware memory units in memory 215 may include volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer-readable instructions, data structures, program modules, or other data. Memory 215 may include one or more physical persistent memory devices and/or one or more non-persistent memory devices. Memory 215 may include, but is not limited to, random access memory (RAM) 205, read only memory (ROM) 207, electronically erasable programmable read only memory (EEPROM), flash memory or other memory technology, optical disk storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium that may be used to store the desired information and that may be accessed by processor 203.
Communication interface 211 may include one or more transceivers, digital signal processors, and/or additional circuitry and software for communicating via any network, wired or wireless, using any protocol as described herein.
Processor 203 may include a single central processing unit (CPU), which may be a single-core or multi-core processor, or may include multiple CPUs. Processor(s) 203 and associated components may allow the computing device 200 to execute a series of computer-readable instructions to perform some or all of the processes described herein. Although not shown in FIG. 2, various elements within memory 215 or other components in computing device 200, may include one or more caches including, but not limited to, CPU caches used by the processor 203, page caches used by the operating system 217, disk caches of a hard drive, and/or database caches used to cache content from database 221. For embodiments including a CPU cache, the CPU cache may be used by one or more processors 203 to reduce memory latency and access time. A processor 203 may retrieve data from or write data to the CPU cache rather than reading/writing to memory 215, which may improve the speed of these operations. In some examples, a database cache may be created in which certain data from a database 221 is cached in a separate smaller database in a memory separate from the database, such as in RAM 205 or on a separate computing device. For instance, in a multi-tiered application, a database cache on an application server may reduce data retrieval and data manipulation time by not needing to communicate over a network with a back-end database server. These types of caches and others may be included in various embodiments, and may provide potential advantages in certain implementations of devices, systems, and methods described herein, such as faster response times and less dependence on network conditions when transmitting and receiving data.
Although various components of computing device 200 are described separately, functionality of the various components may be combined and/or performed by a single component and/or multiple computing devices in communication without departing from the invention.
Enhancing Merchant Databases Using Crowdsourced Browser Data
The electronic payment servers may dynamically generate friendly merchant names based on crowdsourced browser data and provide insights into previously conducted transactions upon user requests. When a financial institution receives the transaction information in a transaction stream, the transaction information may be in the form of a line of data that offers limited information about the transaction, with each piece of information appearing in certain locations within the line of data. For example, the merchant identifier may appear in a specific location and may include 8-10 characters in the abbreviated form. This line of data may be inherited from the format of legacy systems dated back, for example, 30 years ago. Conventional payment processing systems may attempt to look up the merchant identifier from a third party database system to find a meaningful merchant name. This process may be time consuming as the conventional payment processing systems must wait for the third party system to respond. Another limitation of third party database systems is that new merchants, particularly uncommon merchants may not show up in the third party database system for a prolonged period of time. The processes and systems described herein overcome these limitations and improve the ability of the system to generate reports having transaction information including the friendly merchant names.
FIG. 3 shows a flow chart of a process for enhancing merchant databases using crowdsourced browser data according to one or more aspects of the disclosure. Some or all of the steps of process 300 may be performed using one or more computing devices as described herein.
At step 310, it may be determined that a user has submitted a checkout page for a transaction from a first user device. When a user conducts a transaction, for example, when the user swipes a credit card to make a purchase, the transaction information may be transmitted to a financial institution. The transaction information may include a user identifier, a transaction amount, a transaction timestamp, and a merchant identifier. The transaction information may frequently be transmitted as a line of data with every piece of information located in a specific position. For example, the merchant identifier may be an 8-10 character code not readily recognizable to infer a friendly merchant name. The electronic payment server may process this line of data, and translate the merchant identifier into a readable name for a common merchant. For example, if the user made a purchase at an Apple store, it may be likely that the merchant name may be displayed as a friendly merchant name “Apple” on the user's credit card statement, because that name may be common enough to be readily translated into a user-friendly format. However, the translation process may be time consuming for uncommon merchants, and it may not be feasible to manually set up the mapping between the merchant code and the friendly merchant name for each merchant, particularly for smaller merchants that may only exist for 6 months and never have more than $2000 of sales in revenue.
When a user receives a financial statement such as a credit card statement, a merchant name listed on the statement may be truncated. For example, the merchant name may be displayed as “sq*.” Given the merchant name is not displayed as a friendly merchant name, the user may not recognize the merchant is indeed “Square One” department store. As the user may not be able to identify the merchant or remember shopping at a particular merchant on a given day, the user may be likely to create a fraud filing for a valid transaction. The financial institute may spend resources to conduct the fraud proceedings and may suffer financial losses for these incorrect fraud filings. Similarly, a user may conduct transactions via a payment portal or a large e-commerce website that may support numerous small merchants. For example, if the user makes a purchase from a small merchant “Joe's Sports and Game Shop,” when the user receives a statement associated with the user's transaction history, the merchant name displayed may not be the friendly name that is readily recognizable for the actual transaction.
In a variety of embodiments, the user may submit a checkout page on a website via a browser on a user device. The browser extension may collect and store the cache information on the user device. After the user has submitted a checkout page for the transaction, the browser extension may send the cache information associated with the transaction to the electronic payment server. An electronic payment server may monitor and detect, via a browser extension installed on the user device, that a user has submitted a checkout page for a transaction. The user device may identify an element in a DOM indicating a completion of a checkout process, such as a heading element in the DOM, which may indicate an e-commerce site such as “Joe's Sports and Game Shop” on a platform. The user device may search for a specific element in the DOM to determine that a checkout process has completed on the e-commerce site “Joe's Sports and Game Shop.”
In a variety of embodiments, the user device may search for a specific term on a website that indicates a completion of a checkout process. For example, the user device may search for a specific term on a HTML page such as “Joe's Sports and Game Shop” using NLP (Natural Language Processing). The user device may recognize the terms such as “your checkout is complete” or “thank you for shopping at Joe's Sports and Game Shop,” which indicates a checkout page on the website of “Joe's Sports and Game Shop” has been submitted.
In a variety of embodiments, the user device may search for a specific term in a URL that indicates a completion of a checkout process. For example, the user device may parse the URL associated with “Joe's Sports and Game Shop” and identify a “/checkout” portion on the URL or other terminologies that indicate that the transaction has been completed.
At step 312, cache information associated with the transaction may be received from a browser extension. The electronic payment server may receive the cache information from the browser extension installed on the user device. The cache information may include the merchant information, a user identifier, a transaction amount and a timestamp associated with the transaction.
In a variety of embodiments, as a user navigates through different websites on the internet, the browser extension may cache the related information in a local cache. For example, the browser extension may cache the URLs of a website such as “http://www.joessportsgameshop.com/gp/bestsellers/?ref_=nav_cs_bestsellers.” The browser extension may parse the URLs or use NLP to identify the name of the merchant “Joe's Sports and Game Shop.” The browser extension may send the URLs to the electronic payment server, which may in turn parse the URLs or use NLP to identify the names of the merchants.
The browser extension or the electronic payment server may search for H1 element or an element in the header in the DOM. The corresponding DOM element may indicate that an object may be created a certain way to indicate that an ecommerce site created on the platform. The browser extension or the electronic payment server may search for specific elements indicating the name of the merchant such as “Joe's Sports and Game Shop.” The browser extension or the electronic payment server may search for a specific location on a website or a specific tag on the HTML page of the website to identify the merchant name.
In a variety of embodiments, if the user allows the electronic payment server to monitor the usage of the browser via the browser extension, the merchant information may be cached in the local cache of the user device. The cache information may include the merchant name, URLs, social media handles of the merchant, and customer service email or phone number handle of merchant, and/or any information that maybe retrieved from the merchant's website. The electronic payment server may receive the cache information after a determination by the browser extension on the user device that the user has submitted the checkout page for the transaction.
In a variety of embodiments, the electronic payment server may actively detect a transaction from the transaction stream. The electronic payment server may request the browser extension to send the cache information to the electronic payment server proactively. The electronic payment server may request the browser extension to send the cache information periodically, for example, every 30 or 60 minutes. The electronic payment server may request the browser extension to send the cache information after the user submits a checkout page. The electronic payment server may wait for the browser extension to send the cache information after the browser extension detects that the user submits a checkout page.
At step 314, a time period associated with a timestamp of the transaction may be determined. Once the user submits the checkout page, the transaction information including the cache information may be sent to the electronic payment server in real-time. At approximately the same time, the electronic payment server may identify the authentication request originated from the merchant in the transaction stream associated with the same transaction. The user may also have purchased a few items consecutively from different merchants and several transactions may occur quickly with a time period. To take these situations into consideration, the electronic payment server may determine a time period associated with a timestamp of the transaction. For example, the time period may be a few seconds or minutes before or after the timestamp of the transaction that occurred in the browser extension.
At step 316, a transaction record in a transaction database may be retrieved. The transaction record may have a payment account identifier that matches with a user identifier of the transaction and a transaction time that falls within the time period. Based on the cache information received from the browser extension, the electronic payment server may identify a matching record in the transaction stream. For example, when the user swipes a credit card and submits the checkout page for a transaction, the merchant may also send an authorization request to authorize the credit card payment for the transaction to the financial institution. The authorization request may be sent to a payment authorization system of the financial institution. The authorization request also may be sent to the electronic payment server of the financial institution, which may forward the authentication request to the payment authorization system. In the situation that the functionality of the payment authorization system may merge with that of the electronic payment server, the electronic payment server may receive the authentication request and authorize the transaction. Once the transaction is authorized, the payment authorization system or the electronic payment server may create a transaction record in the transaction database. The transaction record may include a payment account identifier, a transaction amount, a transaction time, and a merchant identifier.
The electronic payment server may match the transaction information of a first transaction received in the cache information with the transaction record of a second transaction in the transaction database, based on the criteria that the payment account identifier of the second transaction in the transaction record matches with the user identifier of the first transaction in the cache information, and the transaction time of the second transaction in the transaction record falls within the time period that the first transaction occurs. The electronic payment server may match the first transaction received in the cache information with the second transaction in the transaction database based on that a first transaction amount of the first transaction matches with a second transaction amount of the second transaction. In particular, the comparison of transaction amount can be used to disambiguate transactions occurring within a threshold time period of a transaction timestamp. After the first transaction is matched with the second transaction, the transaction record of the second transaction which has the merchant identifier may be supplemented with the merchant information from the cache information, such as the merchant name, URLs, social media handles of the merchant, and customer service email or phone number handle of merchant, and/or any information retrieved from the merchant's website. The electronic payment server may associate the merchant identifier in the transaction record with a more meaningful friendly merchant name.
In a variety of embodiments, after the user has submitted a checkout page, the electronic payment server may proactively call the transaction database. The electronic payment server may identify, from the transaction database, that the same user may have made a purchase, for example, at Joe's Sports and Game Shop at approximately the same timeframe. The browser extension may send the cache information that has been captured, and the electronic payment server may match up with any transaction that may come cross the transaction stream for that user at Joe's Sports and Game Shop and at the specified timeframe associated with the transaction timestamp captured in the cache information. If the electronic payment server finds a match, a merchant record that associates the merchant identifier with the friendly merchant name “Joe's Sports and Game Shop” may be created.
In the event that the cache information contains merchant name as “Joe's Sports and Game Shop,” while the transaction record indicates that the transaction occurred on Amazon at approximately the same time, the electronic payment server may identify that the Amazon transaction may not be a match and proceed to search for other transactions in the transaction database that was conducted during the short time window or the time period. It is may be possible that several transactions may occur consecutively as the user may purchase several items from various merchants quickly within the short time window.
There may be situations that the electronic payment server may not be able to find the matching transaction record in the transaction database. For example, a user may use a browser extension from a first financial institution, and use a credit card from a second financial institution to conduct a transaction. The transaction from the second financial institution may not show up on the transaction stream from the first financial institution. If the electronic payment server identifies no matching transaction in the transaction stream for “Joe's Sports and Game Shop,” the electronic payment server may discard the cache information within certain time period, ranging from several seconds to several minutes, depending on how long the matching process may take.
At step 318, a merchant record in a private merchant database may be updated with a friendly merchant name. The merchant record may associate the merchant identifier in the transaction record with the friendly merchant name obtained from the cache information. The electronic payment server may map the transaction that is currently occurring in the browser of the user device with the transaction that is identified in the transaction stream. The electronic payment server may search for the merchant identifier in the transaction record and map it to the merchant information captured in the cache information of the browser. For example, in the transaction database, electronic payment server may identify a transaction record that has a merchant identifier in the format of an 8 character code “JSGSTC01” which may not be readily recognizable by the user. After this transaction record is matched up with the cache information captured in the browser, the electronic payment server may infer that the same merchant corresponds to the URL http://www.joessportsgameshop, and the friendly merchant name “Joe's Sports and Game Shop.” From the merchant's social profile that captured in the browser cache information, the electronic payment server may identify that the merchant has a physical location in Tysons Corner, Va., and obtain the phone number and email address for customer service. If there is no record in the private merchant database that makes an association between the merchant identifier and the friendly merchant name, the electronic payment server may create a merchant record that associates the merchant identifier “JSGSTC01” with the friendly merchant name “Joe's Sports and Game Shop.” In a variety of embodiments, if the private merchant database already has a merchant record that captures the relationship between the merchant identifier “JSGSTC01” and the friendly merchant name “Joe's Sports and Game Shop,” such merchant record may be updated with a field that includes a transaction identifier or additional merchant information such as the social profile of the merchant, merchant website, the email address and phone number.
The private merchant database may serve as a staging area before the merchant records may be confirmed as trustworthy and before it may be promoted to a trustworthy database. In a variety of embodiments, the merchant records and the associated friendly merchant names in the private merchant database maybe presented to a limited subset of users, particularly users who have conducted a related transaction in the browser extension that has a match with a transaction in the transaction stream. The merchant information including the friendly merchant name in the private merchant database may be presented to the user associated with the transaction that has the corresponding “my record.”
In a variety of embodiments, the merchant records in the private merchant database may not be visible to the users that have not conducted the related transactions. For example, a first user may make a purchase at “Joe's Sports and Game Shop” and a browser extension at the first user device may capture the cache information. The electronic payment server may identify a matching transaction in the transaction stream and create an associated between the identifier “JSGSTC01” with the friendly merchant name “Joe's Sports and Game Shop.” A second user may make a purchase at “Joe's Sports and Game Shop,” but may not have the browser extension installed on the second user device. A third user may make a purchase at “Joe's Sports and Game Shop,” but may identify no matching transaction in the transaction stream. When the first user, the second user and the third user each requests a financial statement related to their transactions, the friendly name “Joe's Sports and Game Shop” may be presented to the first user, but not to the second user and the third user.
At step 320, a determination may be made whether the merchant record in the private merchant database exceeds a threshold confidence level. The confidence level may be determined by a total number of merchant records in the private merchant database that may share the same association between a merchant identifier and a friendly merchant name. The confidence level may be determined by a multi-factor scoring metric to consider factors including the total number of the relevant merchant records in the private merchant database. For example, for the merchant records in the private merchant database that associate a merchant identifier with a particular friendly merchant name, the electronic payment server may consider whether the transactions related to the merchant records are conducted by the same user at various times or by different users. For the subset of merchant records that are originated from transactions conducted by different users, the electronic payment server may assign a relatively higher weight in the scoring metric than for the subset of merchant records that are originated from transactions conduct by the same user. The scoring metric may also consider other factors such as the transaction amount, the user ratings of the merchant in the social profile, user feedback/verification of the friendly merchant name. For example, if the merchant records are related to transactions with trivial transaction amounts, the electronic payment server may assign a relatively lower weight in the scoring metric for these merchant records. If a merchant has been rated highly in the social profile of the merchant, the electronic payment server may assign a relatively higher weight in the scoring metric for these merchant records. If the user has an option to provide feedback to verify that the friendly merchant name is indeed the merchant they have purchased from, the electronic payment server may assign a relatively higher weight in the scoring metric for the merchant records that contain this friendly merchant name.
The electronic payment server may determine a total number of merchant records in the private merchant database that associate the merchant identifier “JSGSTC01” with the friendly merchant name “Joe's Sports and Game Shop.” As these merchant records may be related to transactions originated from various users that have made purchases at Joe's Sports and Game Shop, the association may have been verified by these transactions originated from different users. Each of these transactions may generate a corresponding merchant record in the private merchant database, and each merchant record may share the same association between the merchant identifier “JSGSTC01” with the friendly merchant name “Joe's Sports and Game Shop.” For example, a first merchant record may include the data fields: transaction ID1, user identifier 1, merchant identifier “JSGSTC01,” friendly merchant name “Joe's Sports and Game Shop.” A second merchant record may contain the data fields: transaction ID2, user identifier 2, merchant identifier “JSGSTC01,” friendly merchant name “Joe's Sports and Game Shop.” As such, the confidence level may be reflected on the total number of merchant records that share the same association in the private merchant database and the electronic payment server may determine whether the total number exceeds a threshold value.
In a variety of embodiments, the threshold value may be set relatively low, such as 5, if the financial institution prefers to present the friendly merchant name to the users more readily to deter inadvertent fraud filings. The threshold value may be set relatively high, such as 50, if the financial institution prefers to maintain a high confidence level on the friendly merchant name to be presented to the users.
If the electronic payment server determines that the total number has not exceeded the threshold value, the process may proceed to step 310, where the electronic payment server may continue to monitor the browser extension and determine that user has submitted a checkout page for a new transaction.
If the electronic payment server determines that the total number has exceeded a threshold value, the process may proceed to step 322, where the merchant record maybe promoted to a trustworthy database. Once the merchant record is promoted to the trustworthy database, the electronic payment server may present the merchant record in the trustworthy database to any user devices upon request. For example, a first user may make a purchase at “Joe's Sports and Game Shop” and have a browser extension installed at the first user device. A second user may make a purchase at “Joe's Sports and Game Shop,” but may not have the browser extension installed on the second user device. When the first user and the second user each requests a financial statement related to their transactions, the friendly name “Joe's Sports and Game Shop” may be presented to both the first user and the second user regardless whether a browser extension may be installed on the client device or whether a matching transaction may be identified in the transaction stream. Indeed, the electronic payment server may not need to find the matching transaction in the transaction database. When the user submits a request for a financial statement, the electronic payment server may look up the merchant record in the trustworthy database, and identify the friendly merchant name based on the merchant identifier in the request. The electronic payment server may present the friendly merchant name to any user that may request the relevant merchant information.
In a variety of embodiments, the private merchant database and the trustworthy database may be located separately from each other. The private merchant database and the trustworthy database may be located in different tables of the same database. The private merchant database and the trustworthy database may also be different records in a merged database. For example, each merchant record in the merged database may contain a field “confidence level,” which correspond to a counter on how many times an association between a merchant identifier and a friendly merchant name has been verified by distinct transactions or users. The electronic payment server may determine whether to present the friendly name to a subset of users (who have “my record”) or all the users who may request such records based on the confidence level.
In a variety of embodiments, when the electronic payment server maps the cache information from the browser extension to a transaction, there may be tens of thousands of records needed to be processed, and the electronic payment server may have a mechanism to handle the potential errors. There may be chances that a merchant record may be created by mistake in the private merchant database. To accommodate the chances for errors, a two-level confidence threshold may be applied. For example, if the confidence level is below 5, the electronic payment server may not display the friendly name to any user. If the confidence level is between 5 and 10, the electronic payment server may display the friendly name to the specific users who have conducted the relevant transactions. If the confidence level is above 10, the electronic payment server may display the friendly name to any users upon request.
At step 324, the friendly merchant name may be promoted to a second user device. Once the merchant record containing the friendly merchant name has been promoted to the trustworthy database, the electronic payment server may display the friendly name to any users when they request the financial statement, including a new user that has no browser extension installed on the user device, or has no matching transaction in the transaction stream.
In a variety of embodiments, the electronic payment server may supply the user with a friendly merchant name and other information about the merchant. When the user examines the transaction history on the financial statement, if the user readily recognizes the merchant from which the user has made a purchase, the user may be unlikely to create an inadvertent fraud filing. Otherwise, if the merchant name is displayed as a code or in a truncated form that is not meaningful to the user, there may be a much higher chance that the user may consider it as fraud and go through fraud proceedings for the related transaction.
Crowdsourcing User Data
FIG. 4 shows a flow chart of a process of capturing crowdsourced browser data according to one or more aspects of the disclosure. Some or all of the steps of process 400 may be performed using one or more computing devices as described herein.
At step 410, a browser extension may be installed to a first user device. The electronic payment server may provide an option for a user to download and install the browser extension to the first user device. Once the browser extension from a financial institution is installed on the client device, the browser extension may monitor user actions in a web browser executing on the first user device, read data on the website that the user visits, store the captured information in the local cache of the user device and send the captured information to the electronic payment server associated with the financial institution.
At step 412, it may be determined that a user has navigated to a website that is associated with a merchant. In a variety of embodiments, as a user navigates through different websites on the internet, the browser extension may extract the URLs of a website such as http://www.joessportsgameshop.com. The browser extension may parse the URLs or use NLP to identify the names of the merchant “Joe's Sports and Game Shop.” The browser extension may send the URLs or other website data to the electronic payment server, which may in turn parse the URLs or use NLP to identify the names of the merchants.
In a variety of embodiments, the merchant may use a reseller or a merchant platform that actually conducts the transactions, which may impact the merchant URLs and the browser extension or the electronic payment server may not readily identify the name of the merchant from the URLs. The browser extension or the electronic payment server may search for specific elements in the DOM to identify the name of the merchant such as “Joe's Sports and Game Shop.” The browser extension or the electronic payment server may search for a specific location on a website or a specific tag on the HTML page of the website to identify the merchant name.
At step 414, cache information may be stored in a local cache of the first user device. If the user allows the electronic payment server to monitor the usage of the browser via the browser extension, the merchant information may be cached in the local cache of the user device. The cache information may be structural data captured at the browser extension that indicates who the merchant is and what the user has purchased. The cache information may include the transaction information and merchant information. The merchant information may include the merchant name, merchant URLs, social media handles of the merchant, and customer service email or phone number handle of merchant, and/or any information may be retrieved from the merchant's website.
At step 416, a determination may be made on whether the user has completed a checkout process. If a browser extension from financial institute A has been installed on the user device, the browser extension may auto-fill payment information on the checkout page to encourage the user to use a credit card from financial institute A to complete transaction. If the user uses a credit card issued by financial institute B, the electronic payment server at financial institute A may not receive the transaction information and may not use the cache information captured by the browser extension to enhance merchant databases. The browser extension or the electronic payment server may identify an element in a DOM indicating a completion of a checkout process. For example, the electronic payment server may examine a heading element in the DOM, which may indicate an e-commerce site such as “Joe's Sports and Game Shop” on a platform. The browser extension or the electronic payment server may search for a specific element in the DOM that a checkout process has completed on the e-commerce site such as “Joe's Sports and Game Shop.”
In a variety of embodiments, the browser extension or the electronic payment server may search for a specific term on a website that indicates a completion of a checkout process. For example, the electronic payment server may search for specific term on a HTML page using NLP. The electronic payment server may recognize the terms such as “your checkout is complete” or “thank you for shopping at Joe's Sports and Game Shop.”
In a variety of embodiments, the browser extension or the electronic payment server may search for a specific term in a URL that indicates a completion of a checkout process. For example, the browser extension or the electronic payment server may parse the URL associated with the merchant website and identify a “/checkout” portion on the URL or other terminologies that indicate that the transaction is completed.
If the user has completed the checkout process, the process may proceed to step 418, where cache information may be sent to an electronic payment server. The cache information may include the merchant information, such as the merchant name, URLs, social media handles of the merchant, and customer service email or phone number handle of merchant, and/or any information may be retrieved from the merchant's website. The cache information may include transaction information such as a user identifier, a transaction amount, and a transaction timestamp. If the user has not completed the checkout process, the process may proceed to step 420, where a determination may be made whether the user has navigated away from the merchant website. If the user has not navigated away, the process may proceed to step 414 to continue to store the cache information in the local cache. If the user has navigated away without making a purchase, the process may proceed to step 422, where the cache information may be deleted from the local cache of first user device. As such, the electronic payment server may use crowdsourced data from the browser extension to enhance merchant databases such as the private merchant database and eventually the trustworthy database.
One or more aspects discussed herein may be embodied in computer-usable or readable data and/or computer-executable instructions, such as in one or more program modules, executed by one or more computers or other devices as described herein. Generally, program modules include routines, programs, objects, components, data structures, and the like that perform particular tasks or implement particular abstract data types when executed by a processor in a computer or other device. The modules may be written in a source code programming language that is subsequently compiled for execution, or may be written in a scripting language such as (but not limited to) HTML or XML. The computer executable instructions may be stored on a computer readable medium such as a hard disk, optical disk, removable storage media, solid-state memory, RAM, and the like. As will be appreciated by one of skill in the art, the functionality of the program modules may be combined or distributed as desired in various embodiments. In addition, the functionality may be embodied in whole or in part in firmware or hardware equivalents such as integrated circuits, field programmable gate arrays (FPGA), and the like. Particular data structures may be used to more effectively implement one or more aspects discussed herein, and such data structures are contemplated within the scope of computer executable instructions and computer-usable data described herein. Various aspects discussed herein may be embodied as a method, a computing device, a system, and/or a computer program product.
Although the present invention has been described in certain specific aspects, many additional modifications and variations would be apparent to those skilled in the art. In particular, any of the various processes described above may be performed in alternative sequences and/or in parallel (on different computing devices) in order to achieve similar results in a manner that is more appropriate to the requirements of a specific application. It is therefore to be understood that the present invention may be practiced otherwise than specifically described without departing from the scope and spirit of the present invention. Thus, embodiments of the present invention should be considered in all respects as illustrative and not restrictive. Accordingly, the scope of the invention should be determined not by the embodiments illustrated, but by the appended claims and their equivalents.

Claims (19)

What is claimed is:
1. A computer-implemented method comprising:
installing a browser extension to a first user device, and wherein the browser extension performs operations comprising:
determining that a website a user navigates to is associated with a merchant, wherein the website is being viewed in a browser having the browser extension installed;
storing information associated with a transaction in a local cache of the first user device; and
based on a determination that the user has successfully completed a checkout process, sending the information to an electronic payment server;
determining, from the browser extension and by the electronic payment server, that the user has submitted a checkout page for the transaction;
receiving, from the browser extension and by the electronic payment server, the information associated with the transaction, wherein the information comprises a trustworthy merchant name, a user identifier and a timestamp associated with the transaction;
determining, by the electronic payment server, a time period associated with the timestamp;
retrieving, by the electronic payment server, a transaction record from a transaction database, wherein the transaction record comprises a payment account identifier, a transaction time, and a merchant identifier, wherein the payment account identifier matches the user identifier in the information and the transaction time falls within the time period;
updating, by the electronic payment server, a merchant record in a private merchant database with the trustworthy merchant name based on a translation from the merchant identifier in the transaction record to the trustworthy merchant name in the information;
calculating, by the electronic payment server, a confidence level of the merchant record based on a number of merchant records in the private merchant database sharing an association between the merchant identifier and the trustworthy merchant name;
determining, by the electronic payment server, that the merchant record exceeds a threshold confidence level;
based on the determining that the merchant record exceeds the threshold confidence level, promoting by the electronic payment server, the merchant record to a trustworthy database; and
causing display, by the electronic payment server of the trustworthy merchant name to a second user device.
2. The computer-implemented method of claim 1, wherein the information comprises merchant information comprising the trustworthy merchant name, a merchant Universal Resource Locator, a merchant social media profile, and merchant contact information.
3. The computer-implemented method of claim 1, wherein determining that the user has submitted the checkout page comprises:
determining, based on the information, an element in a Document Object Model indicating a completion of the checkout process.
4. The computer-implemented method of claim 1, wherein determining that the user has submitted the checkout page comprises:
determining, based on the information, a specific term on the website that indicates a completion of the checkout process.
5. The computer-implemented method of claim 1, wherein determining that the user has submitted the checkout page comprises:
determining, based on the information, a specific term in a Universal Resource Locator that indicates a completion of the checkout process.
6. The computer-implemented method of claim 1, wherein the information comprises a first transaction amount and the transaction record comprises a second transaction amount.
7. The computer-implemented method of claim 6, wherein retrieving the transaction record comprises:
retrieving, by the electronic payment server, a plurality of transaction records from the transaction database, wherein the plurality of transaction records occur within the determined time period; and
determining, by the electronic payment server, the transaction record from the plurality of transaction records based on:
the payment account identifier matching the user identifier; and
the first transaction amount matching the second transaction amount.
8. The computer-implemented method of claim 1, further comprising:
prior to promoting the merchant record to the trustworthy database, causing display, by the electronic payment server, of the trustworthy merchant name to the first user device.
9. An electronic payment system comprising:
one or more processors; and
memory storing instructions that, when executed by the one or more processors, cause the electronic payment system to:
install a browser extension to a first user device, and wherein the browser extension performs operations comprising:
determine that a website that a user navigates to is associated with a merchant, wherein the website is being viewed in a browser having the browser extension installed;
store information associated with a transaction in a local cache of the first user device; and
based on a determination that the user has successfully completed a checkout process, send the information to an electronic payment server;
determine, from the browser extension, that the user has submitted a checkout page for the transaction;
receive, from the browser extension, the information associated with the transaction, wherein the information comprises a trustworthy merchant name, a user identifier and a timestamp associated with the transaction;
determine a time period associated with the timestamp;
retrieve a transaction record from a transaction database, wherein the transaction record comprises a payment account identifier, a transaction time and a merchant identifier, wherein the payment account identifier matches the user identifier in the information and the transaction time falls within the time period;
update a merchant record in a private merchant database with the trustworthy merchant name based on a translation from the merchant identifier in the transaction record to the trustworthy merchant name in the information;
calculate a confidence level of the merchant record based on a number of merchant records in the private merchant database sharing an association between the merchant identifier and the trustworthy merchant name;
determine, that the merchant record exceeds a threshold confidence level;
based on the determining that the merchant record exceeds the threshold confidence level, promoting the merchant record to a trustworthy database; and causing display of the trustworthy merchant name to a second user device.
10. The electronic payment system of claim 9, wherein the information comprises merchant information comprising the trustworthy merchant name, a merchant Universal Resource Locator, a merchant social media profile, and merchant contact information.
11. The electronic payment system of claim 9, wherein the instructions cause the electronic payment system to:
determine an element in a Document Object Model that indicates a completion of the checkout process.
12. The electronic payment system of claim 9, wherein the instructions cause the electronic payment system to:
determine a specific term on the website that indicates a completion of the checkout process.
13. The electronic payment system of claim 9, wherein the instructions cause the electronic payment system to:
determine a specific term in a Universal Resource Locator that indicates a completion of the checkout process.
14. The electronic payment system of claim 9, wherein the instructions cause the electronic payment system to:
prior to promoting the merchant record to the trustworthy database, display the trustworthy merchant name to the first user device.
15. One or more non-transitory media storing instructions that, when executed by one or more processors, cause the one or more processors to perform steps comprising:
installing a browser extension to a first user device, and wherein the browser extension performs operations comprising:
determining that a website a user navigates to is associated with a merchant, wherein the website is being viewed in a browser having the browser extension installed;
storing information associated with a transaction in a local cache of the first user device; and
based on a determination that the user has successfully completed a checkout process, sending the information to an electronic payment server;
determining, from the browser extension, that the user has submitted a checkout page for the transaction;
receiving, from the browser extension, the information associated with the transaction, wherein the information comprises a trustworthy merchant name, a user identifier and a timestamp associated with the transaction;
determining a time period associated with the timestamp;
retrieving a transaction record from a transaction database, wherein the transaction record comprises a payment account identifier, a transaction time and a merchant identifier, wherein the payment account identifier matches the user identifier in the information and the transaction time falls within the time period;
updating a merchant record in a private merchant database with the trustworthy merchant name based on a translation from the merchant identifier in the transaction record to the trustworthy merchant name in the information;
calculating a confidence level of the merchant record based on a number of merchant records in the private merchant database sharing an association between the merchant identifier and the trustworthy merchant name;
determining that the merchant record in the private merchant database exceeds a threshold confidence level;
based on the determining that the merchant record exceeds the threshold confidence level, promoting the merchant record to a trustworthy database; and
causing display of the trustworthy merchant name to a second user device.
16. The non-transitory media of claim 15, wherein the instructions when executed by the one or more processors, cause the one or more processors to further perform steps comprising:
determining an element in a Document Object Model that indicates a completion of the checkout process.
17. The non-transitory media of claim 15, wherein the instructions when executed by the one or more processors, cause the one or more processors to further perform steps comprising:
determining a specific term on the website or in a Universal Resource Locator that indicates a completion of the checkout process.
18. The non-transitory media of claim 15, wherein the information comprises merchant information comprising the trustworthy merchant name, a merchant Universal Resource Locator, a merchant social media profile, and merchant contact information.
19. The non-transitory media of claim 15, wherein the information comprises a first transaction amount and the transaction record comprises a second transaction amount, and wherein the instructions when executed by the one or more processors, cause the one or more processors to perform steps comprising:
retrieving a plurality of transaction records from the transaction database, wherein the plurality of transaction records occur within the determined time period; and
determining the transaction record from the plurality of transaction records based on:
the payment account identifier matching the user identifier; and
the first transaction amount matching the second transaction amount.
US16/861,761 2020-04-29 2020-04-29 Enhancing merchant databases using crowdsourced browser data Active 2040-07-27 US11354655B2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US16/861,761 US11354655B2 (en) 2020-04-29 2020-04-29 Enhancing merchant databases using crowdsourced browser data
US17/831,766 US12002036B2 (en) 2020-04-29 2022-06-03 Enhancing merchant databases using crowdsourced browser data

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US16/861,761 US11354655B2 (en) 2020-04-29 2020-04-29 Enhancing merchant databases using crowdsourced browser data

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US17/831,766 Continuation US12002036B2 (en) 2020-04-29 2022-06-03 Enhancing merchant databases using crowdsourced browser data

Publications (2)

Publication Number Publication Date
US20210342823A1 US20210342823A1 (en) 2021-11-04
US11354655B2 true US11354655B2 (en) 2022-06-07

Family

ID=78293090

Family Applications (2)

Application Number Title Priority Date Filing Date
US16/861,761 Active 2040-07-27 US11354655B2 (en) 2020-04-29 2020-04-29 Enhancing merchant databases using crowdsourced browser data
US17/831,766 Active US12002036B2 (en) 2020-04-29 2022-06-03 Enhancing merchant databases using crowdsourced browser data

Family Applications After (1)

Application Number Title Priority Date Filing Date
US17/831,766 Active US12002036B2 (en) 2020-04-29 2022-06-03 Enhancing merchant databases using crowdsourced browser data

Country Status (1)

Country Link
US (2) US11354655B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220067077A1 (en) * 2020-09-02 2022-03-03 Microsoft Technology Licensing, Llc Generating structured data for rich experiences from unstructured data streams
US20220292493A1 (en) * 2020-04-29 2022-09-15 Capital One Services, Llc Enhancing Merchant Databases Using Crowdsourced Browser Data

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11637701B2 (en) * 2020-09-23 2023-04-25 Genesys Cloud Services, Inc. Technologies for conducting a data transaction between enterprises using a permissioned blockchain infrastructure and an oracle system
US20230055605A1 (en) * 2021-08-17 2023-02-23 The Toronto-Dominion Bank Targeted, criteria-specific provisioning of digital content based on structured messaging data
US11886417B2 (en) * 2021-11-04 2024-01-30 Capital One Services, Llc Systems and methods for enhancing transaction data

Citations (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6243755B1 (en) * 1995-03-07 2001-06-05 Kabushiki Kaisha Toshiba Information processing system using information caching based on user activity
US20020010684A1 (en) * 1999-12-07 2002-01-24 Moskowitz Scott A. Systems, methods and devices for trusted transactions
US20020111919A1 (en) * 2000-04-24 2002-08-15 Visa International Service Association Online payer authentication service
US20020120559A1 (en) * 2001-02-26 2002-08-29 O'mara Timothy L. Tiered processing method and system for identifying and mitigating merchant risk
US20040044563A1 (en) * 2000-01-18 2004-03-04 Valuestar, Inc. System and method for real-time updating service provider ratings
US6856963B1 (en) * 2000-01-11 2005-02-15 Intel Corporation Facilitating electronic commerce through automated data-based reputation characterization
US6917922B1 (en) * 2001-07-06 2005-07-12 Amazon.Com, Inc. Contextual presentation of information about related orders during browsing of an electronic catalog
US20060009994A1 (en) * 2004-07-07 2006-01-12 Tad Hogg System and method for reputation rating
US20080140441A1 (en) * 2008-02-19 2008-06-12 The Go Daddy Group, Inc. Rating e-commerce transactions
US20080270209A1 (en) * 2007-04-25 2008-10-30 Michael Jon Mauseth Merchant scoring system and transactional database
US20090150262A1 (en) * 2007-12-05 2009-06-11 Google Inc. On-Line Payment Transactions
US7653577B2 (en) * 2008-02-19 2010-01-26 The Go Daddy Group, Inc. Validating e-commerce transactions
US20110145138A1 (en) * 2009-12-15 2011-06-16 Martin Fitzgerald Bradley Browser extension that processes text to facilitate commerce on social media
US20120191568A1 (en) * 2011-01-21 2012-07-26 Ebay Inc. Drag and drop purchasing bin
US20130311875A1 (en) * 2012-04-23 2013-11-21 Derek Edwin Pappas Web browser embedded button for structured data extraction and sharing via a social network
US20140040071A1 (en) * 2012-08-06 2014-02-06 Ebay Inc. Trusted fulfillment agent network
US20140046794A1 (en) * 2012-08-07 2014-02-13 Ebay Inc Shopping assistant
US20140129311A1 (en) * 2012-11-06 2014-05-08 trendyr LLC Social media marketing
US8818882B2 (en) * 2009-08-24 2014-08-26 Visa International Service Association Alias identity and reputation validation engine
US20160019628A1 (en) * 2014-07-16 2016-01-21 My Virtual Mall, LLC Method, system, and article for facilitating online commerce
US9299076B2 (en) * 2012-03-07 2016-03-29 Google Inc. Email spam and junk mail as a vendor reliability signal
US20160180436A1 (en) * 2009-06-08 2016-06-23 Revizer Technologies Ltd Method and system for identifying and displaying shopping deals
US20170140381A1 (en) * 2015-11-13 2017-05-18 Ingenico Group Method of assistance in the authentication of a user, corresponding server and computer program
US20170148046A1 (en) * 2011-03-31 2017-05-25 Mavatar Technologies, Inc. System and method for consumer management purchasing and account information
US20170278174A1 (en) * 2016-03-22 2017-09-28 Paypal, Inc. Automatic population of data on an internet web page via a browser plugin
US10304121B1 (en) 1998-09-17 2019-05-28 Ddr Holdings, Llc Methods of expanding commercial opportunities for internet websites through coordinated offsite marketing
US20190205951A1 (en) * 2013-03-15 2019-07-04 Square, Inc. Merchant and item ratings
US20190340606A1 (en) * 2018-05-07 2019-11-07 Capital One Services, Llc Merchant quality ratings in a financial computer network
US20190347649A1 (en) * 2018-05-09 2019-11-14 Mastercard International Incorporated Systems and Methods for Using Network Extensions
US10482524B1 (en) 2013-08-07 2019-11-19 Panos Daskalakis Electronic payment methods and systems
US10733559B2 (en) * 2017-11-02 2020-08-04 Mastercard International Incorporated Systems and methods for generating chargeback analytics associated with service chargebacks
US20210019813A1 (en) * 2019-07-18 2021-01-21 Taco Marketing Llc Consumer purchasing and inventory control assistant apparatus, system and methods
US20210174355A1 (en) * 2019-12-09 2021-06-10 Capital One Services, Llc Systems and methods for binding unique tokens with transaction parameters to authorize transactions
US11093919B2 (en) * 2011-02-05 2021-08-17 Visa International Service Association Merchant-consumer bridging platform apparatuses, methods and systems
US20210263978A1 (en) * 2020-02-26 2021-08-26 International Business Machines Corporation Intelligent interface accelerating

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7657482B1 (en) * 2002-07-15 2010-02-02 Paymentech, L.P. System and apparatus for transaction fraud processing
WO2009023796A2 (en) * 2007-08-14 2009-02-19 Visa U.S.A. Inc. Merchant benchmarking tool
US10719834B2 (en) * 2011-05-20 2020-07-21 Mastercard International Incorporated Systems and methods for recommending merchants
US8818839B2 (en) * 2011-10-04 2014-08-26 Reach Pros, Inc. Online marketing, monitoring and control for merchants
US10215130B2 (en) * 2012-02-10 2019-02-26 Briggs & Stratton Corporation Choke override for an engine
US9195988B2 (en) * 2012-03-13 2015-11-24 American Express Travel Related Services Company, Inc. Systems and methods for an analysis cycle to determine interest merchants
US20130282443A1 (en) * 2012-04-18 2013-10-24 Sahib Bal Seller url monitoring systems and methods
US9031877B1 (en) * 2012-05-31 2015-05-12 Deloitte Development Llc Credit card fraud prevention system and method
US20150206093A1 (en) * 2012-07-27 2015-07-23 Google Inc. Crowd sourced delivery assistance
US20150363840A1 (en) * 2014-06-13 2015-12-17 Mastercard International Incorporated Systems and Methods for Recommending Merchants to Consumers
US10275812B2 (en) * 2014-07-15 2019-04-30 Xerox Corporation Method and apparatus for denying a transaction detected to be initiated outside of a required application on an endpoint device
US9501791B2 (en) * 2014-07-18 2016-11-22 Mark V. Dziuk Online marketplace with seller financing
US20160125337A1 (en) * 2014-10-09 2016-05-05 Mastercard International Incorporated Transaction derived in-business probability modeling apparatus and method
US10534851B1 (en) * 2014-12-19 2020-01-14 BloomReach Inc. Dynamic landing pages
US10062072B2 (en) * 2014-12-19 2018-08-28 Facebook, Inc. Facilitating sending and receiving of peer-to-business payments
US11030535B1 (en) * 2015-06-24 2021-06-08 Amazon Technologies, Inc. Machine learned merchant ratings
US20210125262A1 (en) * 2015-09-09 2021-04-29 Piggy Llc Systems, methods, and computer programs for providing users maximum benefit in electronic commerce
US10089665B2 (en) * 2015-10-13 2018-10-02 Mastercard International Incorporated Systems and methods for evaluating a credibility of a website in a remote financial transaction
US10319042B2 (en) * 2015-10-20 2019-06-11 Mastercard International Incorporated Computerized-methods and systems for identifying duplicate entries in a database of merchant data
US20210209600A1 (en) * 2016-12-28 2021-07-08 Wells Fargo Bank, N.A. Systems and methods for providing a reputation score for an entity
US20180232820A1 (en) * 2017-02-10 2018-08-16 Mastercard International Incorporated Systems and methods for computing authenticity scores
CN107622432A (en) * 2017-07-28 2018-01-23 阿里巴巴集团控股有限公司 Trade company's evaluation method and system
US11010787B1 (en) * 2017-08-04 2021-05-18 Edatanetworks Inc. Linking a transaction between a merchant and a resident of the same vicinity to the resident viewing the merchant broadcast advertisement
US10275613B1 (en) * 2018-04-20 2019-04-30 Capital One Services, Llc Identity breach notification and remediation
US11157913B2 (en) * 2018-12-28 2021-10-26 Mastercard International Incorporated Systems and methods for improved detection of network fraud events
US11295305B2 (en) * 2019-11-25 2022-04-05 Paypal, Inc. Identifying domains for evaluation during transaction processing
US11354655B2 (en) * 2020-04-29 2022-06-07 Capital One Services, Llc Enhancing merchant databases using crowdsourced browser data

Patent Citations (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6243755B1 (en) * 1995-03-07 2001-06-05 Kabushiki Kaisha Toshiba Information processing system using information caching based on user activity
US10304121B1 (en) 1998-09-17 2019-05-28 Ddr Holdings, Llc Methods of expanding commercial opportunities for internet websites through coordinated offsite marketing
US20020010684A1 (en) * 1999-12-07 2002-01-24 Moskowitz Scott A. Systems, methods and devices for trusted transactions
US6856963B1 (en) * 2000-01-11 2005-02-15 Intel Corporation Facilitating electronic commerce through automated data-based reputation characterization
US20040044563A1 (en) * 2000-01-18 2004-03-04 Valuestar, Inc. System and method for real-time updating service provider ratings
US20020111919A1 (en) * 2000-04-24 2002-08-15 Visa International Service Association Online payer authentication service
US20020120559A1 (en) * 2001-02-26 2002-08-29 O'mara Timothy L. Tiered processing method and system for identifying and mitigating merchant risk
US6917922B1 (en) * 2001-07-06 2005-07-12 Amazon.Com, Inc. Contextual presentation of information about related orders during browsing of an electronic catalog
US20060009994A1 (en) * 2004-07-07 2006-01-12 Tad Hogg System and method for reputation rating
US20080270209A1 (en) * 2007-04-25 2008-10-30 Michael Jon Mauseth Merchant scoring system and transactional database
US8725597B2 (en) * 2007-04-25 2014-05-13 Google Inc. Merchant scoring system and transactional database
US20090150262A1 (en) * 2007-12-05 2009-06-11 Google Inc. On-Line Payment Transactions
US7860755B2 (en) * 2008-02-19 2010-12-28 The Go Daddy Group, Inc. Rating e-commerce transactions
US20120296825A1 (en) * 2008-02-19 2012-11-22 Go Daddy Operating Company, LLC Rating e-commerce transactions
US20080140441A1 (en) * 2008-02-19 2008-06-12 The Go Daddy Group, Inc. Rating e-commerce transactions
US7653577B2 (en) * 2008-02-19 2010-01-26 The Go Daddy Group, Inc. Validating e-commerce transactions
US20160180436A1 (en) * 2009-06-08 2016-06-23 Revizer Technologies Ltd Method and system for identifying and displaying shopping deals
US8818882B2 (en) * 2009-08-24 2014-08-26 Visa International Service Association Alias identity and reputation validation engine
US20110145138A1 (en) * 2009-12-15 2011-06-16 Martin Fitzgerald Bradley Browser extension that processes text to facilitate commerce on social media
US20120191568A1 (en) * 2011-01-21 2012-07-26 Ebay Inc. Drag and drop purchasing bin
US11093919B2 (en) * 2011-02-05 2021-08-17 Visa International Service Association Merchant-consumer bridging platform apparatuses, methods and systems
US20170148046A1 (en) * 2011-03-31 2017-05-25 Mavatar Technologies, Inc. System and method for consumer management purchasing and account information
US9299076B2 (en) * 2012-03-07 2016-03-29 Google Inc. Email spam and junk mail as a vendor reliability signal
US20130311875A1 (en) * 2012-04-23 2013-11-21 Derek Edwin Pappas Web browser embedded button for structured data extraction and sharing via a social network
US20140040071A1 (en) * 2012-08-06 2014-02-06 Ebay Inc. Trusted fulfillment agent network
US20140046794A1 (en) * 2012-08-07 2014-02-13 Ebay Inc Shopping assistant
US20140129311A1 (en) * 2012-11-06 2014-05-08 trendyr LLC Social media marketing
US20190205951A1 (en) * 2013-03-15 2019-07-04 Square, Inc. Merchant and item ratings
US10482524B1 (en) 2013-08-07 2019-11-19 Panos Daskalakis Electronic payment methods and systems
US20160019628A1 (en) * 2014-07-16 2016-01-21 My Virtual Mall, LLC Method, system, and article for facilitating online commerce
US20170140381A1 (en) * 2015-11-13 2017-05-18 Ingenico Group Method of assistance in the authentication of a user, corresponding server and computer program
US20170278174A1 (en) * 2016-03-22 2017-09-28 Paypal, Inc. Automatic population of data on an internet web page via a browser plugin
US10733559B2 (en) * 2017-11-02 2020-08-04 Mastercard International Incorporated Systems and methods for generating chargeback analytics associated with service chargebacks
US20190340606A1 (en) * 2018-05-07 2019-11-07 Capital One Services, Llc Merchant quality ratings in a financial computer network
US20190347649A1 (en) * 2018-05-09 2019-11-14 Mastercard International Incorporated Systems and Methods for Using Network Extensions
US20210019813A1 (en) * 2019-07-18 2021-01-21 Taco Marketing Llc Consumer purchasing and inventory control assistant apparatus, system and methods
US20210174355A1 (en) * 2019-12-09 2021-06-10 Capital One Services, Llc Systems and methods for binding unique tokens with transaction parameters to authorize transactions
US20210263978A1 (en) * 2020-02-26 2021-08-26 International Business Machines Corporation Intelligent interface accelerating

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
J. Xie, J. Zhong and P. Deng, "A Robust Trust Management Model for E-Commerce System," 2014 IEEE 11th International Conference on e-Business Engineering, 2014, pp. 170-176 (Year: 2014). *
S. Luo and S. Wan, "Leveraging Product Characteristics for Online Collusive Detection in Big Data Transactions," in IEEE Access, vol. 7, pp. 40154-40164, 2019 (Year: 2019). *
Y. Biantoro, Suhardi, Y. Bandung and N. B. Kurniawan, "Trust Measurement Model of Services Computing Systems: A Case Study on E-commerce Systems," 2018 International Conference on Information Technology Systems and Innovation (ICITSI), 2018, pp. 353-357 (Year: 2018). *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220292493A1 (en) * 2020-04-29 2022-09-15 Capital One Services, Llc Enhancing Merchant Databases Using Crowdsourced Browser Data
US12002036B2 (en) * 2020-04-29 2024-06-04 Capital One Services, Llc Enhancing merchant databases using crowdsourced browser data
US20220067077A1 (en) * 2020-09-02 2022-03-03 Microsoft Technology Licensing, Llc Generating structured data for rich experiences from unstructured data streams
US11797590B2 (en) * 2020-09-02 2023-10-24 Microsoft Technology Licensing, Llc Generating structured data for rich experiences from unstructured data streams

Also Published As

Publication number Publication date
US20210342823A1 (en) 2021-11-04
US12002036B2 (en) 2024-06-04
US20220292493A1 (en) 2022-09-15

Similar Documents

Publication Publication Date Title
US12002036B2 (en) Enhancing merchant databases using crowdsourced browser data
US11550886B2 (en) Disambiguation and authentication of device users
US11568406B2 (en) Systems and methods for automatically securing and validating multi-server electronic communications over a plurality of networks
US20190124075A1 (en) Delivering Personalized Content to Authenticated User Devices
US10567528B2 (en) System and method for exchanging a history of user activity information
US20140214671A1 (en) Server side mobile payment processing and authentication
US10776346B2 (en) Systems and methods for providing flexible data access
US12003550B2 (en) Resource protection and verification with bidirectional notification architecture
TW201503021A (en) Systems and methods for instant e-coupon distribution
WO2019083500A1 (en) System, method, and apparatus for automatically encoding data in an electronic communication
US20230186327A1 (en) User identification and activity monitoring service
US20240095766A1 (en) Merchant Advertisement Informed Item Level Data Predictions
US20220051294A1 (en) Systems and methods for identifying internet users in real-time with high certainty
US20200265156A1 (en) Computer-implemented method for removing access to data
US20230409743A1 (en) Methods And Systems For Obtaining, Controlling And Viewing User Data
US11960551B2 (en) Cookieless delivery of personalizied content
US12114158B2 (en) System for determining network membership
US12086288B1 (en) Systems and methods for candidacy determinations and request processing while maintaining user data anonymity
US11900145B1 (en) System in the middle transaction processor
US20240095796A1 (en) System and method of anonymising online interactions and transactions

Legal Events

Date Code Title Description
AS Assignment

Owner name: CAPITAL ONE SERVICES, LLC, VIRGINIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:BENKREIRA, ABDELKADER;MOSSOBA, MICHAEL;EDWARDS, JOSHUA;SIGNING DATES FROM 20200421 TO 20200429;REEL/FRAME:052526/0567

FEPP Fee payment procedure

Free format text: ENTITY STATUS SET TO UNDISCOUNTED (ORIGINAL EVENT CODE: BIG.); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

STPP Information on status: patent application and granting procedure in general

Free format text: PRE-INTERVIEW COMMUNICATION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: NON FINAL ACTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER

STPP Information on status: patent application and granting procedure in general

Free format text: NOTICE OF ALLOWANCE MAILED -- APPLICATION RECEIVED IN OFFICE OF PUBLICATIONS

STPP Information on status: patent application and granting procedure in general

Free format text: PUBLICATIONS -- ISSUE FEE PAYMENT VERIFIED

STCF Information on status: patent grant

Free format text: PATENTED CASE