US20150032614A1 - System and method for analyzing anonymous payment card data - Google Patents
System and method for analyzing anonymous payment card data Download PDFInfo
- Publication number
- US20150032614A1 US20150032614A1 US13/950,911 US201313950911A US2015032614A1 US 20150032614 A1 US20150032614 A1 US 20150032614A1 US 201313950911 A US201313950911 A US 201313950911A US 2015032614 A1 US2015032614 A1 US 2015032614A1
- Authority
- US
- United States
- Prior art keywords
- candidate
- transaction
- account number
- transaction times
- target
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/383—Anonymous user system
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/34—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
Definitions
- This disclosure relates generally to analyzing anonymous payment card data and, more particularly, to a system and method for associating ownership of multiple payment cards to a single owner using transaction information having anonymous payment card identifiers.
- PII personally identifiable information
- PAN primary account number
- Such mechanisms of encrypting transaction data help ensure a cardholder's information security and well as protecting the liability of the various financial institutions involved in payment card networks.
- the anonymization of payment card transaction data hides ownership identity for other beneficial business-related uses.
- Financial institutions may analyze consumer transaction data to, for example, offer targeted services.
- a consumer using a payment card may be targeted for a particular rewards program based on that consumer's particular use patterns.
- usage data may be collected across all of the consumer's cards.
- financial institutions benefit from a broader understanding of a consumer's activities due to the more complete view of the consumer's purchasing activities.
- payment transaction data is anonymized, common ownership between multiple payment cards is hidden. As such, some known systems cannot determine common ownership between a single consumer's multiple payment card accounts when the transaction information is encrypted. What is needed is a system and method for associating common ownership of encrypted payment card accounts.
- a computer-based method for associating ownership of anonymous payment cards uses a computer device including a processor in communication with a transaction database.
- the method includes identifying, by the processor, a target account number for a payment card from the transaction database.
- the method also includes identifying, by the processor, a set of transaction times associated with the target account number from the transaction database.
- the method further includes comparing, by the processor, the target account number to each candidate account number of a set of candidate account numbers from the transaction database. Comparing the target account number includes identifying a first candidate set of transaction times associated with a first candidate account number of the set of candidate account numbers. Comparing the target account number also includes comparing the target set of transaction times to the first candidate set of transaction times. Comparing the target account number further includes identifying the first candidate account number as a match candidate if the target set of transaction times and the first candidate set of transaction times do not include overlapping transactions.
- a computer device for associating ownership of anonymous payment cards.
- the computer device includes a processor communicatively coupled to a memory.
- the computer device is programmed to identify a target account number for a payment card from the memory.
- the computer device is also programmed to identify a set of transaction times associated with the target account number from the memory.
- the computer device is further programmed to compare the target account number to each candidate account number of a set of candidate account numbers from the memory. Comparing the target account number includes identifying a first candidate set of transaction times associated with a first candidate account number of the set of candidate account numbers. Comparing the target account number also includes comparing the target set of transaction times to the first candidate set of transaction times. Comparing the target account number further includes identifying the first candidate account number as a match candidate if the target set of transaction times and the first candidate set of transaction times do not include overlapping transactions.
- At least one non-transitory computer-readable storage media having computer-executable instructions embodied thereon When executed by at least one processor, the computer-executable instructions cause the processor to identify a target account number for a payment card from a transaction database. The computer-executable instructions also cause the processor to identify a set of transaction times associated with the target account number from the transaction database. The computer-executable instructions also cause the processor to compare the target account number to each candidate account number of a set of candidate account numbers from the transaction database. Comparing the target account number includes identifying a first candidate set of transaction times associated with a first candidate account number of the set of candidate account numbers. Comparing the target account number also includes comparing the target set of transaction times to the first candidate set of transaction times. Comparing the target account number further includes identifying the first candidate account number as a match candidate if the target set of transaction times and the first candidate set of transaction times do not include overlapping transactions.
- FIGS. 1-7 show example embodiments of the methods and systems described herein.
- FIG. 1 is a simplified block diagram of an example computing device including a database, a filter, and a target account, wherein the filter filters encrypted payment card transaction information stored within the database.
- FIG. 2 is a simplified block diagram illustrating a subset of transactions for other encrypted accounts created with a similar filter to that shown in FIG. 1 .
- FIG. 3 is an example table showing both the target account transactions from FIG. 1 and the other accounts' transactions from FIG. 2 .
- FIG. 4 is an example method of associating ownership between payment cards using the encrypted account information and transaction data shown in FIGS. 1-3 .
- FIG. 5 is illustrates an example configuration of a client system that may be used to analyze encrypted transaction data.
- FIG. 6 is a simplified block diagram of an example encrypted transaction analysis system including a plurality of computer devices connected in communication in accordance with the present disclosure.
- FIG. 7 shows an example configuration of a database within a computing device, along with other related computing components, that may be used to analyze encrypted transaction data.
- the methods and systems described herein include analyzing encrypted transaction data associated with payment card accounts.
- the methods and systems described herein facilitate determining common ownership amongst multiple, anonymous accounts.
- a target account is identified.
- the target account has a first encrypted, or otherwise anonymized, account identifier and is associated with a “target consumer”.
- the target account may also be associated with a geographic area (e.g., an area in which the payment card is frequently used), such as where the target consumer resides.
- a transaction database contains encrypted transaction information associated with the target account, as well as other accounts (i.e., “candidate accounts”).
- One or more of these candidate accounts may also be associated with the target consumer.
- the system identifies a set of transactions associated with the target account (i.e., “target account transactions”), using a filter on the transaction database.
- the filter identifies the target account transactions within a certain time period, such as all transactions for the target account in a particular calendar year.
- the system also identifies another set of transactions associated with other encrypted accounts (i.e., “candidate account transactions”), using a similar filter on the transaction database. These candidate account transactions are identified using the same time period filter.
- the candidate account transactions may also be filtered by geographical region to limit the scope of candidates to a region similar to the target account.
- the system compares the target account transactions to each individual candidate account represented in the candidate account transactions list, searching for candidate accounts with no “overlapping transactions”.
- the systems and methods described herein include the presumption that a single consumer (i.e., the target consumer) will not use multiple different payment cards within a certain period of time (i.e., within a single segment of time). For example, in one embodiment, time is divided into discrete segments of time, such as 1-minute segments of time.
- the target account transactions are compared to a candidate account's transactions, if the two accounts (i.e., the target account and the candidate account) each have a transaction occurring within the same 1-minute time segment (i.e., they have at least one “overlapping transaction”), then they are presumed to be associated with different consumers (i.e., they are probably not commonly owned). If, on the other hand, there are no overlapping transactions between the target account and a candidate account, then the two accounts may be commonly owned.
- the systems and methods described herein compare sets of transactions between accounts in order to associate multiple payment cards with a common owner.
- the example embodiments described herein include anonymized payment card data that has been anonymized through the mechanism of encryption.
- any other type of anonymization of payment card data that enables operation of the systems and methods as described herein may be used.
- database may refer to either a body of data, a relational database management system (RDBMS), or to both.
- RDBMS relational database management system
- a database may include any collection of data including hierarchical databases, relational databases, flat file databases, object-relational databases, object oriented databases, and any other structured collection of records or data that is stored in a computer system.
- RDBMS's include, but are not limited to including, Oracle® Database, MySQL, IBM® DB2, Microsoft® SQL Server, Sybase®, and PostgreSQL.
- any database may be used that enables the systems and methods described herein.
- a processor may include any programmable system including systems using micro-controllers, reduced instruction set circuits (RISC), application specific integrated circuits (ASICs), logic circuits, and any other circuit or processor capable of executing the functions described herein.
- RISC reduced instruction set circuits
- ASICs application specific integrated circuits
- logic circuits and any other circuit or processor capable of executing the functions described herein.
- the above examples are example only, and are thus not intended to limit in any way the definition and/or meaning of the term “processor.”
- the terms “software” and “firmware” are interchangeable, and include any computer program stored in memory for execution by a processor, including RAM memory, ROM memory, EPROM memory, EEPROM memory, and non-volatile RAM (NVRAM) memory.
- RAM random access memory
- ROM memory read-only memory
- EPROM memory erasable programmable read-only memory
- EEPROM memory electrically erasable programmable read-only memory
- NVRAM non-volatile RAM
- a computer program is provided, and the program is embodied on a computer readable medium.
- the system is executed on a single computer system, without requiring a connection to a sever computer.
- the system is being run in a Windows® environment (Windows is a registered trademark of Microsoft Corporation, Redmond, Wash.).
- the system is run on a mainframe environment and a UNIX® server environment (UNIX is a registered trademark of X/Open Company Limited located in Reading, Berkshire, United Kingdom).
- the application is flexible and designed to run in various different environments without compromising any major functionality.
- the system includes multiple components distributed among a plurality of computing devices.
- One or more components may be in the form of computer-executable instructions embodied in a computer-readable medium.
- the systems and processes are not limited to the specific embodiments described herein.
- components of each system and each process can be practiced independent and separate from other components and processes described herein.
- Each component and process can also be used in combination with other assembly packages and processes.
- transaction card refers to any suitable transaction card, such as a credit card, a debit card, a prepaid card, a charge card, a membership card, a promotional card, a frequent flyer card, an identification card, a prepaid card, a gift card, and/or any other device that may hold payment account information, such as mobile phones, Smartphones, personal digital assistants (PDAs), key fobs, and/or computers.
- PDAs personal digital assistants
- Each type of transactions card can be used as a method of payment for performing a transaction.
- consumer card account behavior can include but is not limited to purchases, management activities (e.g., balance checking), bill payments, achievement of targets (meeting account balance goals, paying bills on time), and/or product registrations (e.g., mobile application downloads).
- FIG. 1 is a simplified block diagram 100 of an example computing device 101 including a database 102 , a filter 110 , and a target account 106 , wherein filter 110 filters encrypted payment card transaction information stored within database 102 .
- Database 102 has payment card transaction information stored therein, including payment card information that is encrypted.
- Target account 106 in some embodiments, is associated with a payment card, such as a consumer's 108 credit card or debit card.
- Target account 106 in FIG. 1 , includes an encrypted Personal Account Number (“PAN”) of “AA” for identification purposes (i.e., the encrypted PAN “AA” represents the encrypted PAN of consumer's 108 payment card).
- PAN Personal Account Number
- the individual identity of target consumer 108 is known by computing system 101 . However, it should be understood that the individual identity of target consumer 108 and target account 106 is not necessary to practice the systems and methods described herein.
- Transaction database 102 includes various transaction data associated with payment cards such as target account 106 and other payment card accounts.
- the transaction data includes encrypted PANs, as well as transaction dates and times.
- the transaction data may also include transaction locations (e.g., information such as the zip code of the merchant processing the transaction, or the location of where the consumer physically initiated the transaction). In some embodiments, transaction locations are identifiable by a zip code or the like.
- computing device 101 applies filter 110 to transaction database 102 to generate filtered subset of transactions 104 , also referred to herein as the target set of transactions.
- Filter 110 restricts target set of transactions 104 to just transactions involving target account 106 during a particular period of time (e.g., between 8:01 AM and 8:15 AM on Jun. 23, 2012, in the FIG. 1 example).
- Target set of transactions 104 in the example, includes three individual transactions 112 in the example time period, one at 8:01 AM, a second at 8:06 AM, and a third at 8:15 AM. It should be understood that the example embodiment illustrated in FIGS.
- 1-3 utilize a brief time period of, for example, 15 minutes, broken up into 1-minute time segments, for the purposes of illustrative simplicity.
- Other embodiments may use much broader periods of time, such as months or years of transaction data, in order to gain a broader view of account transaction activity.
- Some embodiments may not filter on time at all, instead taking all transactions associated with target account 106 from transaction database 102 .
- transactions analysis results may be improved when using additional data, such as using transaction data collected over a greater length of time.
- FIG. 2 is a simplified block diagram 200 illustrating another subset of transactions 202 for other encrypted accounts selected from database 102 with a similar filter 201 to that shown in FIG. 1 .
- Subset of transactions 202 shown in FIG. 2 is also referred to herein as candidate set of transaction (i.e., transactions associated with accounts that are potential “candidates” to be associated with consumer 108 and target account 106 (both shown in FIG. 1 )).
- candidate set of transaction in the example embodiment, includes sets of transactions 206 associated with a plurality of encrypted PANs 204 .
- Candidate set of transactions 202 is selected from database 102 using a filter similar to filter 110 (shown in FIG. 1 ).
- filter 201 includes the same time period filter used to construct target account transactions 104 (shown in FIG. 1 ).
- filter 201 also includes a geographical filter component, such as a zip code associated with the transaction.
- filter 201 may have included only transactions initiated in zip code “63101”, the zip code where consumer 108 conducts a majority of his/her transactions with target account 106 .
- all of the transactions 206 included within candidate set of transactions 202 are only those transactions that occurred between 8:01 AM and 8:15 AM within the zip code “63101”.
- transaction analysis results may be improved when transaction data is limited to a geographic region.
- Geographical filtering may help to exclude potential candidate accounts that might show as false positives. For example, a candidate account may be excluded if it has no transactions, or less than a certain threshold number of transactions such as 5 transactions, in the same region as the target account.
- filter 201 excludes transactions and their transaction times if the transactions are associated with recurring payments, refunds, tax payments, and/or card-not-present transactions.
- Such candidate and/or target transactions may create false negatives.
- a candidate account “XX” is actually owned by the same consumer owning the target account “AA”.
- candidate account “XX” has a recurring payment, such as a gym membership of the consumer, and the recurring payment happens to process at a time “8:01 AM, Jun. 23, 2012”.
- the recurring payment on her “XX” payment card happens to create a transaction that conflicts with another transaction on her “AA” card.
- these types of payments are excluded, there is a danger that some false negatives will result in a failed match between cards.
- each candidate account 204 has a corresponding set of transactions 206 that will be compared against target set of transactions 104 , as discussed in greater detail below.
- FIG. 3 is an example table 300 showing both the target account transactions 104 from FIG. 1 and the candidate set of transactions 202 from FIG. 2 .
- Table 300 divides time into individual segments of time 302 , such as “8:05 AM”, “8:06 AM”, etc., represented across the horizontal axis. Down the vertical axis is each account 304 involved in the transactional analysis.
- the target account 106 “AA”, from FIG. 1 is represented as the top row.
- Each of the candidate accounts 202 from FIG. 2 “AB”, “AC”, “AD”, and “AE”, are represented each with an individual row below target account 104 .
- Each individual cell in table 300 represents whether or not a transaction has occurred for the corresponding account 304 during the given segment of time 302 .
- the presence of an “X” in the cell indicates that a transaction occurred during the particular segment of time 302 for the corresponding account 304 .
- a comparison occurs between the target account 106 transactions (i.e., the “AA” row of data), and each candidate account 202 (i.e., each row “AB”, “AC”, etc.). If an individual candidate account 202 has no “overlapping transactions” with the target account (i.e., no transactions occurring in the same segment of time 302 as a target account transaction 106 ), then that candidate account 202 is identified as a match candidate with respect to target account 106 . As well, if there are one or more overlapping transactions between target account 106 and the individual candidate account 202 , then that candidate account 202 is considered unlikely to be associated with consumer 108 and target account 106 .
- Target account 106 “AA” has three transactions, one at “8:01”, a second at “8:06”, and a third at “8:15”.
- Candidate account 202 “AB” also has three transactions, one at “8:03”, a second at “8:08”, and a third at “8:10”. Because none of the “AB” transactions occur during the same time segments as the “AA” transactions, “AB” is identified as a potential match candidate to the “AA” target account 106 .
- target account 106 “AA” is likewise compared to the other three candidate accounts, “AC”, “AD”, and “AE”, each of these other candidate accounts have one or more overlapping transactions conflicting with “AA”.
- “AC” and “AE” both have a transaction occurring during the “8:01” time segment, causing a direct conflict with the “8:01” “AA” transaction.
- the “AD” account has an “8:15” transaction, causing a direct conflict with the “8:15” “AA” transaction.
- candidate accounts “AC”, “AD”, and “AE” are considered to not likely be potential match candidates with target account 106 “AA”.
- direct conflict generally refers to transactions that overlap (i.e., transactions that occur within the same time segment).
- the length of time for each time segment 302 is a fixed length of one minute. In other embodiments, the length of time for each time segment is a fixed length of time, for example between one second and ten minutes. In other words, a time period such as, for example, a calendar year, is broken up into discrete, non-overlapping segments of time having a fixed length, and that fixed length may be as short as one second or as long as ten minutes. Further, it should be understood that the tablature view shown in FIG. 3 is for illustrative purposes, and not necessarily representative of the computational mechanics involved in processing these systems and methods.
- FIG. 4 is an example method 400 of associating ownership between payment cards using the encrypted account information and transaction data shown in FIGS. 1-3 .
- a target account number 106 is identified 410 .
- Target account number 106 in some embodiments, is identified from transaction database 102 . Alternatively, any method of identifying target account number 106 that facilitates the systems and methods as described herein may be used.
- Target account 106 includes an encrypted target account number used to identify 420 a target set of transactions 104 associated with target account 106 .
- target set of transactions 104 is identified 420 from transaction database 102 .
- target set of transactions 104 is identified 420 using a filter to restrict target set of transactions 104 , such as filter 110 (shown in FIG. 1 ) based on certain criteria such as date of the transaction.
- Method 400 compares 430 the target account 106 to each candidate account in set of candidate account numbers 204 .
- set of candidate account numbers 204 is identified from transaction database 102 using a filter such as filter 201 (shown in FIG. 2 ). More specifically, comparison 430 of target account 106 to each candidate account includes individual comparisons of the target set of transactions 104 to a set of transactions associated with the individual candidate account, such as one of the sets of transactions 206 (shown in FIG. 2 ).
- Comparison 430 in the example embodiment, is an iterative process in which target set of transactions 104 is compared to a next candidate account number 432 from set of candidate account numbers 204 .
- Comparison 430 includes identifying 440 a next candidate set of transactions 442 associated with next candidate account number 432 from transaction database 102 .
- Target set of transactions 104 is then compared 450 to next candidate set of transactions 442 in a process similar to that described above. If target set of transactions 104 has no overlapping transactions with next candidate set of transactions 442 , then next candidate account number 432 is identified 460 as a match candidate with target account 106 . If 470 there are more candidate account numbers in set of account numbers 204 , then comparison 430 repeats with another candidate account number until comparison 430 is done 480 .
- FIG. 5 illustrates an example configuration of a computing system 501 that may be used to analyze encrypted transaction data.
- computing system 501 is similar to computing system 101 (shown in FIG. 1 ).
- computing system 501 includes a processor 505 for executing instructions.
- executable instructions are stored in a memory area 510 .
- Processor 505 may include one or more processing units, for example, a multi-core configuration.
- Memory area 510 is any device allowing information such as executable instructions and/or written works to be stored and retrieved.
- Memory area 510 may include one or more computer readable media.
- Computing system 501 also includes at least one media output component 530 for presenting information to user 535 .
- Media output component 530 is any component capable of conveying information to user 535 .
- media output component 530 includes an output adapter such as a video adapter and/or an audio adapter.
- An output adapter is operatively coupled to processor 505 and operatively couplable to an output device such as a display device, a liquid crystal display (LCD), organic light emitting diode (OLED) display, or “electronic ink” display, or an audio output device, a speaker or headphones.
- LCD liquid crystal display
- OLED organic light emitting diode
- computing system 501 includes an input device 540 for receiving input from user 535 .
- Input device 540 may include, for example, a keyboard, a pointing device, a mouse, a stylus, a touch sensitive panel, a touch pad, a touch screen, a gyroscope, an accelerometer, a position detector, or an audio input device.
- a single component such as a touch screen may function as both an output device of media output component 530 and input device 540 .
- Computing system 501 may also include a communication interface 515 , which is communicatively couplable to a remote device.
- Communication interface 515 may include, for example, a wired or wireless network adapter or a wireless data transceiver for use with a mobile phone network, Global System for Mobile communications (GSM), 3G, or other mobile data network or Worldwide Interoperability for Microwave Access (WIMAX).
- GSM Global System for Mobile communications
- 3G 3G
- WIMAX Worldwide Interoperability for Microwave Access
- Stored in memory area 510 are, for example, computer readable instructions for providing a user interface to user 535 via media output component 530 and, optionally, receiving and processing input from input device 540 .
- a user interface may include, among other possibilities, a web browser and client application. Web browsers enable users, such as user 535 , to display and interact with media and other information typically embedded on a web page or a website.
- a client application allows user 535 to interact with a server application.
- Storage device 520 is any computer-operated hardware suitable for storing and/or retrieving data.
- storage device 520 is integrated in server system 501 .
- computing system 501 may include one or more hard disk drives as storage device 520 .
- storage device 520 is external to computing system 501 and may be accessed by a plurality of computing systems 501 .
- storage device 520 may include multiple storage units such as hard disks or solid state disks in a redundant array of inexpensive disks (RAID) configuration.
- Storage device 520 may include a storage area network (SAN) and/or a network attached storage (NAS) system.
- SAN storage area network
- NAS network attached storage
- processor 505 is operatively coupled to storage device 520 via a storage interface 525 .
- Storage interface 525 is any component capable of providing processor 505 with access to storage device 520 .
- Storage interface 525 may include, for example, an Advanced Technology Attachment (ATA) adapter, a Serial ATA (SATA) adapter, a Small Computer System Interface (SCSI) adapter, a RAID controller, a SAN adapter, a network adapter, and/or any component providing processor 525 with access to storage device 520 .
- ATA Advanced Technology Attachment
- SATA Serial ATA
- SCSI Small Computer System Interface
- user 535 such as an administrative data analyst, uses computing system 501 to interact with transaction database 102 (shown in FIG. 1 ) hosted by server systems. User 535 initiates transaction data analysis operations as described herein.
- FIG. 6 is a simplified block diagram of an example encrypted transaction analysis system 600 including a plurality of computer devices connected in communication in accordance with the present disclosure.
- system 600 is used for storing and/or analyzing encrypted transaction data associated with payment cards.
- system 600 includes a server system 612 , and a plurality of client sub-systems, also referred to as client systems 614 , connected to server system 612 .
- client systems 614 and server system 612 are computers similar to computing system 501 (shown in FIG. 5 ) or computing device 101 (shown in FIG. 1 ).
- Client systems 614 are interconnected to the Internet through many interfaces including a network 615 , such as a local area network (LAN) or a wide area network (WAN), dial-in-connections, cable modems, special high-speed Integrated Services Digital Network (ISDN) lines, and RDT networks.
- Client systems 614 could be any device capable of interconnecting to the Internet including a web-based phone, PDA, or other web-based connectable equipment.
- a database server 616 operates on server system 612 , and is connected to database 620 , which contains information on a variety of matters, as described above.
- database 620 can be accessed by potential users at one of client systems 614 by logging onto database server 612 through one of client systems 614 .
- database 620 is stored remotely from database server system 612 and may be non-centralized.
- Database 620 may include a single database having separated sections or partitions, or may include multiple databases, each being separate from each other.
- Database 620 may store transaction data generated over the processing network including data relating to merchants, account holders, prospective customers, issuers, acquirers, and/or purchases made.
- Database 620 may also store account data including at least one of an encrypted primary account number, a transaction date and time, and a transaction location.
- Database 620 may also store merchant data including a merchant identifier that identifies each merchant registered to use the network, and instructions for settling transactions including merchant bank account information.
- Database 620 may also store purchase data associated with items being purchased by a cardholder from a merchant, and authorization request data.
- FIG. 7 shows an example configuration 700 of a database 720 within a computing device 710 , along with other related computing components, that may be used to analyze encrypted transaction data.
- computing device 710 is similar to computing device 101 (shown in FIG. 1 ) and/or server system 612 (shown in FIG. 6 ).
- Database 720 may be coupled to several separate components within computing device 710 , which perform specific tasks.
- database 720 includes transactions data 722 , target account transactions data 724 , and candidate account transactions data 726 .
- database 720 is similar to transaction database 102 (shown in FIG. 1 ) and/or database 620 (shown in FIG. 6 ).
- Transactions data 722 includes information associated with payment card transactions including encrypted primary account numbers.
- Target account transactions data 724 includes transactions and other information on one or more target accounts 106 (shown in FIG. 1 ), such as target account transactions 104 (shown in FIG. 1 ).
- candidate account transactions data 726 includes transactions and other information associated with other payment card accounts, such as candidate accounts 204 (shown in FIG. 2 ) and candidate set of transactions 202 (shown in FIG. 2 ).
- Computing device 710 includes the database 720 , as well as data storage devices 730 .
- Computing device 710 also includes a target account component 740 for identifying the target account transaction data 724 in database 720 .
- Computing device 710 also includes a candidate account transaction component 750 for identifying the candidate account transaction data 726 .
- a comparison and matching component 760 is also included for comparing candidate accounts with target accounts, as well as a filter component 770 for filtering data from database 720 .
- a processing component 780 assists with execution of computer-executable instructions associated with the transaction analysis system.
- the above-described embodiments of methods and systems of associating common ownership of payment cards using encrypted payment card information compares transaction data associated with a target account and a candidate account. If the target account transaction data contains no overlapping transactions with a particular candidate account's transaction data, then the system considers that candidate account as a potential match with the target account. As a result, the methods and systems described herein facilitate correlating ownership between payment cards when the underlying ownership information is not known, such as when the payment card data is encrypted.
- the above-described embodiments of the disclosure may be implemented using computer programming or engineering techniques including computer software, firmware, hardware or any combination or subset thereof, wherein the technical effect is identifying a target account, identifying a set of transaction times associated with the target account from a transaction database, comparing the target account to each candidate account of a set of candidate accounts from the transaction database, wherein comparing includes identifying a first candidate set of transactions associated with a first candidate account, comparing the target set of transactions to the first set of transactions, and identifying the candidate account as a match candidate if the target set of transactions and the candidate set of transactions have no overlapping transactions.
- Any such resulting program, having computer-readable code means, may be embodied or provided within one or more computer-readable media, thereby making a computer program product (i.e., an article of manufacture) according to the discussed embodiments of the disclosure.
- the computer-readable media may be, for example, but is not limited to, a fixed (hard) drive, diskette, optical disk, magnetic tape, semiconductor memory such as read-only memory (ROM), and/or any transmitting/receiving medium such as the Internet or other communication network or link.
- the article of manufacture containing the computer code may be made and/or used by executing the code directly from one medium, by copying the code from one medium to another medium, or by transmitting the code over a network.
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computer Networks & Wireless Communication (AREA)
- Finance (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
A computer-based method for associating ownership of anonymous payment cards uses a computer device including a processor in communication with a transaction database. The method includes identifying a target account number for a payment card from the transaction database, identifying a set of transaction times associated with the target account number from the transaction database, and comparing the target account number to each candidate account number of a set of candidate account numbers from the transaction database. Comparing the target account number includes identifying a first candidate set of transaction times associated with a first candidate account number of the set of candidate account numbers, comparing the target set of transaction times to the first candidate set of transaction times, and identifying the first candidate account number as a match candidate if the target set of transaction times and first candidate set of transaction times do not include overlapping transactions.
Description
- This disclosure relates generally to analyzing anonymous payment card data and, more particularly, to a system and method for associating ownership of multiple payment cards to a single owner using transaction information having anonymous payment card identifiers.
- Due to data privacy guidelines throughout the world, there is a push toward “anonymization” of payment card transaction data. In one instance, the focus is on restricting personally identifiable information (“PII”), thus many financial institutions mask this information by anonymization of payment card transaction data (i.e., encrypting the transaction data associated with payment card transactions). One mechanism for anonymization is encryption. The encryption of transaction data, such as a consumer's primary account number (“PAN”) after a purchase, ensures that only the holder of the private decryption key is able to see the account information in its decrypted form. Such mechanisms of encrypting transaction data help ensure a cardholder's information security and well as protecting the liability of the various financial institutions involved in payment card networks. The anonymization of payment card transaction data, however, hides ownership identity for other beneficial business-related uses.
- Financial institutions may analyze consumer transaction data to, for example, offer targeted services. A consumer using a payment card may be targeted for a particular rewards program based on that consumer's particular use patterns. When the consumer uses multiple payment cards, usage data may be collected across all of the consumer's cards. If common ownership between payment cards is known, financial institutions benefit from a broader understanding of a consumer's activities due to the more complete view of the consumer's purchasing activities. However, when payment transaction data is anonymized, common ownership between multiple payment cards is hidden. As such, some known systems cannot determine common ownership between a single consumer's multiple payment card accounts when the transaction information is encrypted. What is needed is a system and method for associating common ownership of encrypted payment card accounts.
- In one aspect, a computer-based method for associating ownership of anonymous payment cards is provided. The method uses a computer device including a processor in communication with a transaction database. The method includes identifying, by the processor, a target account number for a payment card from the transaction database. The method also includes identifying, by the processor, a set of transaction times associated with the target account number from the transaction database. The method further includes comparing, by the processor, the target account number to each candidate account number of a set of candidate account numbers from the transaction database. Comparing the target account number includes identifying a first candidate set of transaction times associated with a first candidate account number of the set of candidate account numbers. Comparing the target account number also includes comparing the target set of transaction times to the first candidate set of transaction times. Comparing the target account number further includes identifying the first candidate account number as a match candidate if the target set of transaction times and the first candidate set of transaction times do not include overlapping transactions.
- In another aspect, a computer device for associating ownership of anonymous payment cards is provided. The computer device includes a processor communicatively coupled to a memory. The computer device is programmed to identify a target account number for a payment card from the memory. The computer device is also programmed to identify a set of transaction times associated with the target account number from the memory. The computer device is further programmed to compare the target account number to each candidate account number of a set of candidate account numbers from the memory. Comparing the target account number includes identifying a first candidate set of transaction times associated with a first candidate account number of the set of candidate account numbers. Comparing the target account number also includes comparing the target set of transaction times to the first candidate set of transaction times. Comparing the target account number further includes identifying the first candidate account number as a match candidate if the target set of transaction times and the first candidate set of transaction times do not include overlapping transactions.
- In yet another aspect, at least one non-transitory computer-readable storage media having computer-executable instructions embodied thereon is provided. When executed by at least one processor, the computer-executable instructions cause the processor to identify a target account number for a payment card from a transaction database. The computer-executable instructions also cause the processor to identify a set of transaction times associated with the target account number from the transaction database. The computer-executable instructions also cause the processor to compare the target account number to each candidate account number of a set of candidate account numbers from the transaction database. Comparing the target account number includes identifying a first candidate set of transaction times associated with a first candidate account number of the set of candidate account numbers. Comparing the target account number also includes comparing the target set of transaction times to the first candidate set of transaction times. Comparing the target account number further includes identifying the first candidate account number as a match candidate if the target set of transaction times and the first candidate set of transaction times do not include overlapping transactions.
-
FIGS. 1-7 show example embodiments of the methods and systems described herein. -
FIG. 1 is a simplified block diagram of an example computing device including a database, a filter, and a target account, wherein the filter filters encrypted payment card transaction information stored within the database. -
FIG. 2 is a simplified block diagram illustrating a subset of transactions for other encrypted accounts created with a similar filter to that shown inFIG. 1 . -
FIG. 3 is an example table showing both the target account transactions fromFIG. 1 and the other accounts' transactions fromFIG. 2 . -
FIG. 4 is an example method of associating ownership between payment cards using the encrypted account information and transaction data shown inFIGS. 1-3 . -
FIG. 5 is illustrates an example configuration of a client system that may be used to analyze encrypted transaction data. -
FIG. 6 is a simplified block diagram of an example encrypted transaction analysis system including a plurality of computer devices connected in communication in accordance with the present disclosure. -
FIG. 7 shows an example configuration of a database within a computing device, along with other related computing components, that may be used to analyze encrypted transaction data. - The methods and systems described herein include analyzing encrypted transaction data associated with payment card accounts. The methods and systems described herein facilitate determining common ownership amongst multiple, anonymous accounts. In one embodiment, a target account is identified. The target account has a first encrypted, or otherwise anonymized, account identifier and is associated with a “target consumer”. The target account may also be associated with a geographic area (e.g., an area in which the payment card is frequently used), such as where the target consumer resides. A transaction database contains encrypted transaction information associated with the target account, as well as other accounts (i.e., “candidate accounts”). One or more of these candidate accounts may also be associated with the target consumer.
- To associate the target account with one or more of the candidate accounts, the system identifies a set of transactions associated with the target account (i.e., “target account transactions”), using a filter on the transaction database. In one embodiment, the filter identifies the target account transactions within a certain time period, such as all transactions for the target account in a particular calendar year. The system also identifies another set of transactions associated with other encrypted accounts (i.e., “candidate account transactions”), using a similar filter on the transaction database. These candidate account transactions are identified using the same time period filter. The candidate account transactions may also be filtered by geographical region to limit the scope of candidates to a region similar to the target account.
- The system then compares the target account transactions to each individual candidate account represented in the candidate account transactions list, searching for candidate accounts with no “overlapping transactions”. The systems and methods described herein include the presumption that a single consumer (i.e., the target consumer) will not use multiple different payment cards within a certain period of time (i.e., within a single segment of time). For example, in one embodiment, time is divided into discrete segments of time, such as 1-minute segments of time. When the target account transactions are compared to a candidate account's transactions, if the two accounts (i.e., the target account and the candidate account) each have a transaction occurring within the same 1-minute time segment (i.e., they have at least one “overlapping transaction”), then they are presumed to be associated with different consumers (i.e., they are probably not commonly owned). If, on the other hand, there are no overlapping transactions between the target account and a candidate account, then the two accounts may be commonly owned. The systems and methods described herein compare sets of transactions between accounts in order to associate multiple payment cards with a common owner.
- The example embodiments described herein include anonymized payment card data that has been anonymized through the mechanism of encryption. Alternatively, any other type of anonymization of payment card data that enables operation of the systems and methods as described herein may be used.
- As used herein, the term “database” may refer to either a body of data, a relational database management system (RDBMS), or to both. As used herein, a database may include any collection of data including hierarchical databases, relational databases, flat file databases, object-relational databases, object oriented databases, and any other structured collection of records or data that is stored in a computer system. The above examples are example only, and thus are not intended to limit in any way the definition and/or meaning of the term database. Examples of RDBMS's include, but are not limited to including, Oracle® Database, MySQL, IBM® DB2, Microsoft® SQL Server, Sybase®, and PostgreSQL. However, any database may be used that enables the systems and methods described herein. (Oracle is a registered trademark of Oracle Corporation, Redwood Shores, Calif.; IBM is a registered trademark of International Business Machines Corporation, Armonk, N.Y.; Microsoft is a registered trademark of Microsoft Corporation, Redmond, Wash.; and Sybase is a registered trademark of Sybase, Dublin, Calif.)
- As used herein, a processor may include any programmable system including systems using micro-controllers, reduced instruction set circuits (RISC), application specific integrated circuits (ASICs), logic circuits, and any other circuit or processor capable of executing the functions described herein. The above examples are example only, and are thus not intended to limit in any way the definition and/or meaning of the term “processor.”
- As used herein, the terms “software” and “firmware” are interchangeable, and include any computer program stored in memory for execution by a processor, including RAM memory, ROM memory, EPROM memory, EEPROM memory, and non-volatile RAM (NVRAM) memory. The above memory types are example only, and are thus not limiting as to the types of memory usable for storage of a computer program.
- In one embodiment, a computer program is provided, and the program is embodied on a computer readable medium. In an example embodiment, the system is executed on a single computer system, without requiring a connection to a sever computer. In a further embodiment, the system is being run in a Windows® environment (Windows is a registered trademark of Microsoft Corporation, Redmond, Wash.). In yet another embodiment, the system is run on a mainframe environment and a UNIX® server environment (UNIX is a registered trademark of X/Open Company Limited located in Reading, Berkshire, United Kingdom). The application is flexible and designed to run in various different environments without compromising any major functionality. In some embodiments, the system includes multiple components distributed among a plurality of computing devices. One or more components may be in the form of computer-executable instructions embodied in a computer-readable medium. The systems and processes are not limited to the specific embodiments described herein. In addition, components of each system and each process can be practiced independent and separate from other components and processes described herein. Each component and process can also be used in combination with other assembly packages and processes.
- As used herein, the terms “transaction card,” “financial transaction card,” and “payment card” refer to any suitable transaction card, such as a credit card, a debit card, a prepaid card, a charge card, a membership card, a promotional card, a frequent flyer card, an identification card, a prepaid card, a gift card, and/or any other device that may hold payment account information, such as mobile phones, Smartphones, personal digital assistants (PDAs), key fobs, and/or computers. Each type of transactions card can be used as a method of payment for performing a transaction. In addition, consumer card account behavior can include but is not limited to purchases, management activities (e.g., balance checking), bill payments, achievement of targets (meeting account balance goals, paying bills on time), and/or product registrations (e.g., mobile application downloads).
- The systems and processes are not limited to the specific embodiments described herein. In addition, components of each system and each process can be practiced independent and separate from other components and processes described herein. Each component and process also can be used in combination with other assembly packages and processes.
- The following detailed description illustrates embodiments of the invention by way of example and not by way of limitation. It is contemplated that the invention has general application to transaction analysis.
- As used herein, an element or step recited in the singular and proceeded with the word “a” or “an” should be understood as not excluding plural elements or steps, unless such exclusion is explicitly recited. Furthermore, references to “example embodiment” or “one embodiment” of the present disclosure are not intended to be interpreted as excluding the existence of additional embodiments that also incorporate the recited features.
-
FIG. 1 is a simplified block diagram 100 of anexample computing device 101 including adatabase 102, afilter 110, and atarget account 106, whereinfilter 110 filters encrypted payment card transaction information stored withindatabase 102.Database 102 has payment card transaction information stored therein, including payment card information that is encrypted.Target account 106, in some embodiments, is associated with a payment card, such as a consumer's 108 credit card or debit card.Target account 106, inFIG. 1 , includes an encrypted Personal Account Number (“PAN”) of “AA” for identification purposes (i.e., the encrypted PAN “AA” represents the encrypted PAN of consumer's 108 payment card). In some embodiments, the individual identity oftarget consumer 108 is known by computingsystem 101. However, it should be understood that the individual identity oftarget consumer 108 andtarget account 106 is not necessary to practice the systems and methods described herein. -
Transaction database 102, in the example embodiment, includes various transaction data associated with payment cards such astarget account 106 and other payment card accounts. The transaction data includes encrypted PANs, as well as transaction dates and times. The transaction data may also include transaction locations (e.g., information such as the zip code of the merchant processing the transaction, or the location of where the consumer physically initiated the transaction). In some embodiments, transaction locations are identifiable by a zip code or the like. - Also, in the example embodiment,
computing device 101 appliesfilter 110 totransaction database 102 to generate filtered subset oftransactions 104, also referred to herein as the target set of transactions.Filter 110 restricts target set oftransactions 104 to just transactions involvingtarget account 106 during a particular period of time (e.g., between 8:01 AM and 8:15 AM on Jun. 23, 2012, in the FIG. 1 example). Target set oftransactions 104, in the example, includes threeindividual transactions 112 in the example time period, one at 8:01 AM, a second at 8:06 AM, and a third at 8:15 AM. It should be understood that the example embodiment illustrated inFIGS. 1-3 utilize a brief time period of, for example, 15 minutes, broken up into 1-minute time segments, for the purposes of illustrative simplicity. Other embodiments may use much broader periods of time, such as months or years of transaction data, in order to gain a broader view of account transaction activity. Some embodiments may not filter on time at all, instead taking all transactions associated withtarget account 106 fromtransaction database 102. In at least some embodiments, transactions analysis results may be improved when using additional data, such as using transaction data collected over a greater length of time. -
FIG. 2 is a simplified block diagram 200 illustrating another subset oftransactions 202 for other encrypted accounts selected fromdatabase 102 with asimilar filter 201 to that shown inFIG. 1 . Subset oftransactions 202 shown inFIG. 2 is also referred to herein as candidate set of transaction (i.e., transactions associated with accounts that are potential “candidates” to be associated withconsumer 108 and target account 106 (both shown inFIG. 1 )). Candidate set oftransactions 202, in the example embodiment, includes sets oftransactions 206 associated with a plurality ofencrypted PANs 204. - Candidate set of
transactions 202 is selected fromdatabase 102 using a filter similar to filter 110 (shown inFIG. 1 ). In the example embodiment,filter 201 includes the same time period filter used to construct target account transactions 104 (shown inFIG. 1 ). In some embodiments,filter 201 also includes a geographical filter component, such as a zip code associated with the transaction. For example, filter 201 may have included only transactions initiated in zip code “63101”, the zip code whereconsumer 108 conducts a majority of his/her transactions withtarget account 106. As such, all of thetransactions 206 included within candidate set oftransactions 202 are only those transactions that occurred between 8:01 AM and 8:15 AM within the zip code “63101”. In at least some embodiments, transaction analysis results may be improved when transaction data is limited to a geographic region. Geographical filtering may help to exclude potential candidate accounts that might show as false positives. For example, a candidate account may be excluded if it has no transactions, or less than a certain threshold number of transactions such as 5 transactions, in the same region as the target account. - Further, in some embodiments,
filter 201 excludes transactions and their transaction times if the transactions are associated with recurring payments, refunds, tax payments, and/or card-not-present transactions. Such candidate and/or target transactions may create false negatives. For example, assume a candidate account “XX” is actually owned by the same consumer owning the target account “AA”. Additionally, assume that candidate account “XX” has a recurring payment, such as a gym membership of the consumer, and the recurring payment happens to process at a time “8:01 AM, Jun. 23, 2012”. Suppose, also, that the consumer stops by her favorite coffee shop on her way to work, and charges her morning coffee with her “AA” account during the same time segment, “8:01 AM, Jun. 23, 2012”. The recurring payment on her “XX” payment card happens to create a transaction that conflicts with another transaction on her “AA” card. Thus, unless these types of payments are excluded, there is a danger that some false negatives will result in a failed match between cards. - In the example embodiment, there are four candidate accounts 204 that have transactions that pass through
filter 201. Eachcandidate account 204 has a corresponding set oftransactions 206 that will be compared against target set oftransactions 104, as discussed in greater detail below. -
FIG. 3 is an example table 300 showing both thetarget account transactions 104 fromFIG. 1 and the candidate set oftransactions 202 fromFIG. 2 . Table 300 divides time into individual segments oftime 302, such as “8:05 AM”, “8:06 AM”, etc., represented across the horizontal axis. Down the vertical axis is eachaccount 304 involved in the transactional analysis. Thetarget account 106, “AA”, fromFIG. 1 is represented as the top row. Each of the candidate accounts 202 fromFIG. 2 , “AB”, “AC”, “AD”, and “AE”, are represented each with an individual row belowtarget account 104. Each individual cell in table 300 represents whether or not a transaction has occurred for thecorresponding account 304 during the given segment oftime 302. The presence of an “X” in the cell indicates that a transaction occurred during the particular segment oftime 302 for thecorresponding account 304. - During operation, a comparison occurs between the
target account 106 transactions (i.e., the “AA” row of data), and each candidate account 202 (i.e., each row “AB”, “AC”, etc.). If anindividual candidate account 202 has no “overlapping transactions” with the target account (i.e., no transactions occurring in the same segment oftime 302 as a target account transaction 106), then thatcandidate account 202 is identified as a match candidate with respect to targetaccount 106. As well, if there are one or more overlapping transactions betweentarget account 106 and theindividual candidate account 202, then thatcandidate account 202 is considered unlikely to be associated withconsumer 108 andtarget account 106. - With the example data shown in
FIG. 3 , during comparison oftarget account 106 “AA” andcandidate account 202 “AB”, no overlapping transactions are identified.Target account 106 “AA” has three transactions, one at “8:01”, a second at “8:06”, and a third at “8:15”.Candidate account 202 “AB” also has three transactions, one at “8:03”, a second at “8:08”, and a third at “8:10”. Because none of the “AB” transactions occur during the same time segments as the “AA” transactions, “AB” is identified as a potential match candidate to the “AA”target account 106. - Further, as
target account 106 “AA” is likewise compared to the other three candidate accounts, “AC”, “AD”, and “AE”, each of these other candidate accounts have one or more overlapping transactions conflicting with “AA”. For example, “AC” and “AE” both have a transaction occurring during the “8:01” time segment, causing a direct conflict with the “8:01” “AA” transaction. Further, the “AD” account has an “8:15” transaction, causing a direct conflict with the “8:15” “AA” transaction. As such, candidate accounts “AC”, “AD”, and “AE” are considered to not likely be potential match candidates withtarget account 106 “AA”. As used herein, the term “direct conflict” generally refers to transactions that overlap (i.e., transactions that occur within the same time segment). - In the example embodiment, the length of time for each
time segment 302 is a fixed length of one minute. In other embodiments, the length of time for each time segment is a fixed length of time, for example between one second and ten minutes. In other words, a time period such as, for example, a calendar year, is broken up into discrete, non-overlapping segments of time having a fixed length, and that fixed length may be as short as one second or as long as ten minutes. Further, it should be understood that the tablature view shown inFIG. 3 is for illustrative purposes, and not necessarily representative of the computational mechanics involved in processing these systems and methods. -
FIG. 4 is anexample method 400 of associating ownership between payment cards using the encrypted account information and transaction data shown inFIGS. 1-3 . Atarget account number 106 is identified 410.Target account number 106, in some embodiments, is identified fromtransaction database 102. Alternatively, any method of identifyingtarget account number 106 that facilitates the systems and methods as described herein may be used.Target account 106 includes an encrypted target account number used to identify 420 a target set oftransactions 104 associated withtarget account 106. In the example embodiment, target set oftransactions 104 is identified 420 fromtransaction database 102. Further, target set oftransactions 104 is identified 420 using a filter to restrict target set oftransactions 104, such as filter 110 (shown inFIG. 1 ) based on certain criteria such as date of the transaction. -
Method 400 then compares 430 thetarget account 106 to each candidate account in set of candidate account numbers 204. In some embodiments, set ofcandidate account numbers 204 is identified fromtransaction database 102 using a filter such as filter 201 (shown inFIG. 2 ). More specifically,comparison 430 oftarget account 106 to each candidate account includes individual comparisons of the target set oftransactions 104 to a set of transactions associated with the individual candidate account, such as one of the sets of transactions 206 (shown inFIG. 2 ). -
Comparison 430, in the example embodiment, is an iterative process in which target set oftransactions 104 is compared to a nextcandidate account number 432 from set of candidate account numbers 204.Comparison 430 includes identifying 440 a next candidate set oftransactions 442 associated with nextcandidate account number 432 fromtransaction database 102. Target set oftransactions 104 is then compared 450 to next candidate set oftransactions 442 in a process similar to that described above. If target set oftransactions 104 has no overlapping transactions with next candidate set oftransactions 442, then nextcandidate account number 432 is identified 460 as a match candidate withtarget account 106. If 470 there are more candidate account numbers in set ofaccount numbers 204, thencomparison 430 repeats with another candidate account number untilcomparison 430 is done 480. -
FIG. 5 illustrates an example configuration of acomputing system 501 that may be used to analyze encrypted transaction data. In some embodiments,computing system 501 is similar to computing system 101 (shown inFIG. 1 ). In the example embodiment,computing system 501 includes aprocessor 505 for executing instructions. In some embodiments, executable instructions are stored in amemory area 510.Processor 505 may include one or more processing units, for example, a multi-core configuration.Memory area 510 is any device allowing information such as executable instructions and/or written works to be stored and retrieved.Memory area 510 may include one or more computer readable media. -
Computing system 501 also includes at least onemedia output component 530 for presenting information touser 535.Media output component 530 is any component capable of conveying information touser 535. In some embodiments,media output component 530 includes an output adapter such as a video adapter and/or an audio adapter. An output adapter is operatively coupled toprocessor 505 and operatively couplable to an output device such as a display device, a liquid crystal display (LCD), organic light emitting diode (OLED) display, or “electronic ink” display, or an audio output device, a speaker or headphones. - In some embodiments,
computing system 501 includes aninput device 540 for receiving input fromuser 535.Input device 540 may include, for example, a keyboard, a pointing device, a mouse, a stylus, a touch sensitive panel, a touch pad, a touch screen, a gyroscope, an accelerometer, a position detector, or an audio input device. A single component such as a touch screen may function as both an output device ofmedia output component 530 andinput device 540.Computing system 501 may also include acommunication interface 515, which is communicatively couplable to a remote device.Communication interface 515 may include, for example, a wired or wireless network adapter or a wireless data transceiver for use with a mobile phone network, Global System for Mobile communications (GSM), 3G, or other mobile data network or Worldwide Interoperability for Microwave Access (WIMAX). - Stored in
memory area 510 are, for example, computer readable instructions for providing a user interface touser 535 viamedia output component 530 and, optionally, receiving and processing input frominput device 540. A user interface may include, among other possibilities, a web browser and client application. Web browsers enable users, such asuser 535, to display and interact with media and other information typically embedded on a web page or a website. A client application allowsuser 535 to interact with a server application. -
Processor 505 may also be operatively coupled to astorage device 520.Storage device 520 is any computer-operated hardware suitable for storing and/or retrieving data. In some embodiments,storage device 520 is integrated inserver system 501. For example,computing system 501 may include one or more hard disk drives asstorage device 520. In other embodiments,storage device 520 is external tocomputing system 501 and may be accessed by a plurality ofcomputing systems 501. For example,storage device 520 may include multiple storage units such as hard disks or solid state disks in a redundant array of inexpensive disks (RAID) configuration.Storage device 520 may include a storage area network (SAN) and/or a network attached storage (NAS) system. - In some embodiments,
processor 505 is operatively coupled tostorage device 520 via astorage interface 525.Storage interface 525 is any component capable of providingprocessor 505 with access tostorage device 520.Storage interface 525 may include, for example, an Advanced Technology Attachment (ATA) adapter, a Serial ATA (SATA) adapter, a Small Computer System Interface (SCSI) adapter, a RAID controller, a SAN adapter, a network adapter, and/or anycomponent providing processor 525 with access tostorage device 520. - In operation, in the example embodiment,
user 535, such as an administrative data analyst, usescomputing system 501 to interact with transaction database 102 (shown inFIG. 1 ) hosted by server systems.User 535 initiates transaction data analysis operations as described herein. -
FIG. 6 is a simplified block diagram of an example encryptedtransaction analysis system 600 including a plurality of computer devices connected in communication in accordance with the present disclosure. In the example embodiment,system 600 is used for storing and/or analyzing encrypted transaction data associated with payment cards. - More specifically, in the example embodiment,
system 600 includes aserver system 612, and a plurality of client sub-systems, also referred to asclient systems 614, connected toserver system 612. In one embodiment,client systems 614 andserver system 612 are computers similar to computing system 501 (shown inFIG. 5 ) or computing device 101 (shown inFIG. 1 ).Client systems 614 are interconnected to the Internet through many interfaces including anetwork 615, such as a local area network (LAN) or a wide area network (WAN), dial-in-connections, cable modems, special high-speed Integrated Services Digital Network (ISDN) lines, and RDT networks.Client systems 614 could be any device capable of interconnecting to the Internet including a web-based phone, PDA, or other web-based connectable equipment. - In the example embodiment, a
database server 616 operates onserver system 612, and is connected todatabase 620, which contains information on a variety of matters, as described above. In one embodiment,centralized database 620 can be accessed by potential users at one ofclient systems 614 by logging ontodatabase server 612 through one ofclient systems 614. In an alternative embodiment,database 620 is stored remotely fromdatabase server system 612 and may be non-centralized. -
Database 620 may include a single database having separated sections or partitions, or may include multiple databases, each being separate from each other.Database 620 may store transaction data generated over the processing network including data relating to merchants, account holders, prospective customers, issuers, acquirers, and/or purchases made.Database 620 may also store account data including at least one of an encrypted primary account number, a transaction date and time, and a transaction location.Database 620 may also store merchant data including a merchant identifier that identifies each merchant registered to use the network, and instructions for settling transactions including merchant bank account information.Database 620 may also store purchase data associated with items being purchased by a cardholder from a merchant, and authorization request data. -
FIG. 7 shows anexample configuration 700 of adatabase 720 within acomputing device 710, along with other related computing components, that may be used to analyze encrypted transaction data. In some embodiments,computing device 710 is similar to computing device 101 (shown inFIG. 1 ) and/or server system 612 (shown inFIG. 6 ).Database 720 may be coupled to several separate components withincomputing device 710, which perform specific tasks. - In the exemplary embodiment,
database 720 includestransactions data 722, targetaccount transactions data 724, and candidateaccount transactions data 726. In some embodiments,database 720 is similar to transaction database 102 (shown inFIG. 1 ) and/or database 620 (shown inFIG. 6 ).Transactions data 722 includes information associated with payment card transactions including encrypted primary account numbers. Targetaccount transactions data 724 includes transactions and other information on one or more target accounts 106 (shown inFIG. 1 ), such as target account transactions 104 (shown inFIG. 1 ). Candidateaccount transactions data 726 includes transactions and other information associated with other payment card accounts, such as candidate accounts 204 (shown inFIG. 2 ) and candidate set of transactions 202 (shown inFIG. 2 ). -
Computing device 710 includes thedatabase 720, as well asdata storage devices 730.Computing device 710 also includes atarget account component 740 for identifying the targetaccount transaction data 724 indatabase 720.Computing device 710 also includes a candidateaccount transaction component 750 for identifying the candidateaccount transaction data 726. A comparison andmatching component 760 is also included for comparing candidate accounts with target accounts, as well as afilter component 770 for filtering data fromdatabase 720. Aprocessing component 780 assists with execution of computer-executable instructions associated with the transaction analysis system. - The above-described embodiments of methods and systems of associating common ownership of payment cards using encrypted payment card information. The system compares transaction data associated with a target account and a candidate account. If the target account transaction data contains no overlapping transactions with a particular candidate account's transaction data, then the system considers that candidate account as a potential match with the target account. As a result, the methods and systems described herein facilitate correlating ownership between payment cards when the underlying ownership information is not known, such as when the payment card data is encrypted.
- As will be appreciated based on the foregoing specification, the above-described embodiments of the disclosure may be implemented using computer programming or engineering techniques including computer software, firmware, hardware or any combination or subset thereof, wherein the technical effect is identifying a target account, identifying a set of transaction times associated with the target account from a transaction database, comparing the target account to each candidate account of a set of candidate accounts from the transaction database, wherein comparing includes identifying a first candidate set of transactions associated with a first candidate account, comparing the target set of transactions to the first set of transactions, and identifying the candidate account as a match candidate if the target set of transactions and the candidate set of transactions have no overlapping transactions. Any such resulting program, having computer-readable code means, may be embodied or provided within one or more computer-readable media, thereby making a computer program product (i.e., an article of manufacture) according to the discussed embodiments of the disclosure. The computer-readable media may be, for example, but is not limited to, a fixed (hard) drive, diskette, optical disk, magnetic tape, semiconductor memory such as read-only memory (ROM), and/or any transmitting/receiving medium such as the Internet or other communication network or link. The article of manufacture containing the computer code may be made and/or used by executing the code directly from one medium, by copying the code from one medium to another medium, or by transmitting the code over a network.
- These computer programs (also known as programs, software, software applications, “apps”, or code) include machine instructions for a programmable processor, and can be implemented in a high-level procedural and/or object-oriented programming language, and/or in assembly/machine language. As used herein, the terms “machine-readable medium” and “computer-readable medium” refers to any computer program product, apparatus and/or device (e.g., magnetic discs, optical disks, memory, Programmable Logic Devices (PLDs)) used to provide machine instructions and/or data to a programmable processor, including a machine-readable medium that receives machine instructions as a machine-readable signal. The “machine-readable medium” and “computer-readable medium,” however, do not include transitory signals. In other words, the machine-readable medium and the computer-readable medium described herein are non-transitory. The term “machine-readable signal” refers to any signal used to provide machine instructions and/or data to a programmable processor.
- This written description uses examples to disclose the invention, including the best mode, and also to enable any person skilled in the art to practice the invention, including making and using any devices or systems and performing any incorporated methods. The patentable scope of the invention is defined by the claims, and may include other examples that occur to those skilled in the art. Such other examples are intended to be within the scope of the claims if they have structural elements that do not differ from the literal language of the claims, or if they include equivalent structural elements with insubstantial differences from the literal languages of the claims.
Claims (24)
1. A computer-based method for associating ownership of anonymous payment cards, said method using a computer device including a processor in communication with a transaction database, said method comprising:
identifying, by the processor, a target account number for a payment card from the transaction database;
identifying, by the processor, a set of transaction times associated with the target account number from the transaction database; and
comparing, by the processor, the target account number to each candidate account number of a set of candidate account numbers from the transaction database, wherein the comparing to each candidate account number comprises:
identifying a first candidate set of transaction times associated with a first candidate account number of the set of candidate account numbers;
comparing the target set of transaction times to the first candidate set of transaction times; and
identifying the first candidate account number as a match candidate if the target set of transaction times and the first candidate set of transaction times do not include overlapping transaction times.
2. The method of claim 1 , wherein comparing the target account number to each candidate account number further comprises identifying a plurality of time segments within a pre-determined time period, wherein each transaction time occurs in exactly one time segment of the plurality of time segments.
3. The method of claim 2 , wherein an overlapping transaction includes two transactions having occurred in the same time segment of the plurality of time segments.
4. The method of claim 2 , wherein each time segment of the plurality of time segments is a pre-determined length of time.
5. The method of claim 4 , wherein the pre-determined length of time is between one second and ten minutes.
6. The method of claim 1 , wherein identifying a first candidate set of transaction times further comprises:
determining transaction times associated with at least one of recurring payments, refunds, tax payments, and card-not-present transactions for the first candidate account number; and
excluding the determined transaction times from the first candidate set of transaction times.
7. The method of claim 1 , wherein identifying a first candidate set of transaction times further comprises excluding, from the first candidate set of transaction times, transactions occurring outside of a pre-determined geographic region.
8. The method of claim 1 , wherein identifying a first candidate set of transaction times further comprises excluding, from the first candidate set of transaction times, transactions occurring outside of a pre-determined time period.
9. A computer device for associating ownership of anonymous payment cards, said computer device comprising a processor communicatively coupled to a memory, said computer device programmed to:
identify a target account number for a payment card from the memory;
identify a set of transaction times associated with the target account number from the memory; and
compare, by the processor, the target account number to each candidate account number of a set of candidate account numbers from the memory, wherein the comparing to each candidate account number comprises:
identifying a first candidate set of transaction times associated with a first candidate account number of the set of candidate account numbers;
comparing the target set of transaction times to the first candidate set of transaction times; and
identifying the first candidate account number as a match candidate if the target set of transaction times and the first candidate set of transaction times do not include overlapping transaction times.
10. The computer device in accordance with claim 9 , wherein comparing the target account number to each candidate account number further comprises identifying a plurality of time segments within a pre-determined time period, wherein each transaction time occurs in exactly one time segment of the plurality of time segments.
11. The computer device in accordance with claim 10 , wherein an overlapping transaction includes two transactions having occurred in the same time segment of the plurality of time segments.
12. The computer device in accordance with claim 10 , wherein each time segment of the plurality of time segments is a pre-determined length of time.
13. The computer device in accordance with claim 12 , wherein the pre-determined length of time is between one second and ten minutes.
14. The computer device in accordance with claim 9 , wherein the computer device is further programmed to:
determine transaction times associated with at least one of recurring payments, refunds, tax payments, and card-not-present transactions for the first candidate account number; and
exclude the determined transaction times from the first candidate set of transaction times.
15. The computer device in accordance with claim 9 , wherein the computer device is further programmed to exclude, from the first candidate set of transaction times, transactions occurring outside of a pre-determined geographic region from the first candidate set of transaction times.
16. The computer device in accordance with claim 9 , wherein the computer device is further programmed to exclude, from the first candidate set of transaction times, transactions occurring outside of a pre-determined time period.
17. At least one non-transitory computer-readable storage media having computer-executable instructions embodied thereon, wherein when executed by at least one processor, the computer-executable instructions cause the processor to:
identify a target account number for a payment card from a transaction database;
identify a set of transaction times associated with the target account number from the transaction database; and
compare the target account number to each candidate account number of a set of candidate account numbers from the transaction database, wherein the comparing to each candidate account number comprises:
identifying a first candidate set of transaction times associated with a first candidate account number of the set of candidate account numbers;
comparing the target set of transaction times to the first candidate set of transaction times; and
identifying the first candidate account number as a match candidate if the target set of transaction times and the first candidate set of transaction times do not include overlapping transaction times.
18. The computer-readable storage media of claim 17 , wherein comparing the target account number to each candidate account number further comprises identifying a plurality of time segments within a pre-determined time period, wherein each transaction time occurs in exactly one time segment of the plurality of time segments.
19. The computer-readable storage media of claim 18 , wherein an overlapping transaction includes two transactions having occurred in the same time segment of the plurality of time segments.
20. The computer-readable storage media of claim 18 , wherein each time segment of the plurality of time segments is a pre-determined length of time.
21. The computer-readable storage media of claim 20 , wherein the pre-determined length of time is between one second and ten minutes.
22. The computer-readable storage media of claim 17 , wherein the computer-executable instructions further cause the processor to:
determine transaction times associated with at least one of recurring payments, refunds, tax payments, and card-not-present transactions for the first candidate account number; and
exclude the determined transaction times from the first candidate set of transaction times.
23. The computer-readable storage media of claim 17 , wherein the computer-executable instructions further cause the processor to exclude, from the first candidate set of transaction times, transactions occurring outside of a pre-determined geographic region.
24. The computer-readable storage media of claim 17 , wherein the computer-executable instructions further cause the processor to exclude, from the first candidate set of transaction times, transactions occurring outside of a pre-determined time period.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/950,911 US20150032614A1 (en) | 2013-07-25 | 2013-07-25 | System and method for analyzing anonymous payment card data |
US16/422,551 US11436600B2 (en) | 2013-07-25 | 2019-05-24 | System and method for linking encrypted records |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/950,911 US20150032614A1 (en) | 2013-07-25 | 2013-07-25 | System and method for analyzing anonymous payment card data |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/422,551 Continuation US11436600B2 (en) | 2013-07-25 | 2019-05-24 | System and method for linking encrypted records |
Publications (1)
Publication Number | Publication Date |
---|---|
US20150032614A1 true US20150032614A1 (en) | 2015-01-29 |
Family
ID=52391309
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US13/950,911 Abandoned US20150032614A1 (en) | 2013-07-25 | 2013-07-25 | System and method for analyzing anonymous payment card data |
US16/422,551 Active 2034-09-19 US11436600B2 (en) | 2013-07-25 | 2019-05-24 | System and method for linking encrypted records |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US16/422,551 Active 2034-09-19 US11436600B2 (en) | 2013-07-25 | 2019-05-24 | System and method for linking encrypted records |
Country Status (1)
Country | Link |
---|---|
US (2) | US20150032614A1 (en) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150161705A1 (en) * | 2013-12-09 | 2015-06-11 | Mastercard International Incorporated | Merchant recommendation engine method and apparatus |
US20160012441A1 (en) * | 2014-07-14 | 2016-01-14 | Mastercard International Incorporated | Method and system for optimizing authenticiation processes in payment transactions |
US20160063511A1 (en) * | 2014-08-26 | 2016-03-03 | Ncr Corporation | Shopping pattern recognition |
US20220198578A1 (en) * | 2020-12-22 | 2022-06-23 | VocaLink Limited | Method, apparatus and computer program product for identifying accounts of interest in a network |
US20230410212A1 (en) * | 2022-05-27 | 2023-12-21 | Intuit Inc. | Matching validation |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11429730B2 (en) * | 2019-11-25 | 2022-08-30 | Duality Technologies, Inc. | Linking encrypted datasets using common identifiers |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030167227A1 (en) * | 2002-03-04 | 2003-09-04 | First Data Corporation | Credit card transaction tracking systems and methods |
US20100174589A1 (en) * | 2007-10-11 | 2010-07-08 | Fujitsu Limited | System and method for supporting allocation of reward points, and computer-readable storage medium for computer program |
US8346661B2 (en) * | 2010-03-24 | 2013-01-01 | Bank Of America Corporation | Aggregation of customer transaction data |
US20140095251A1 (en) * | 2012-10-03 | 2014-04-03 | Citicorp Credit Services, Inc. | Methods and Systems for Optimizing Marketing Strategy to Customers or Prospective Customers of a Financial Institution |
US20140337090A1 (en) * | 2013-05-08 | 2014-11-13 | Visa International Service Association | Systems and methods to measure influcence power |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8595058B2 (en) | 2009-10-15 | 2013-11-26 | Visa U.S.A. | Systems and methods to match identifiers |
US20110208586A1 (en) * | 2010-02-25 | 2011-08-25 | Bank Of America Corporation | Leveraging Demographic Data for Advertising Purposes |
US20110231305A1 (en) * | 2010-03-19 | 2011-09-22 | Visa U.S.A. Inc. | Systems and Methods to Identify Spending Patterns |
US9679299B2 (en) * | 2010-09-03 | 2017-06-13 | Visa International Service Association | Systems and methods to provide real-time offers via a cooperative database |
-
2013
- 2013-07-25 US US13/950,911 patent/US20150032614A1/en not_active Abandoned
-
2019
- 2019-05-24 US US16/422,551 patent/US11436600B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030167227A1 (en) * | 2002-03-04 | 2003-09-04 | First Data Corporation | Credit card transaction tracking systems and methods |
US20100174589A1 (en) * | 2007-10-11 | 2010-07-08 | Fujitsu Limited | System and method for supporting allocation of reward points, and computer-readable storage medium for computer program |
US8346661B2 (en) * | 2010-03-24 | 2013-01-01 | Bank Of America Corporation | Aggregation of customer transaction data |
US20140095251A1 (en) * | 2012-10-03 | 2014-04-03 | Citicorp Credit Services, Inc. | Methods and Systems for Optimizing Marketing Strategy to Customers or Prospective Customers of a Financial Institution |
US20140337090A1 (en) * | 2013-05-08 | 2014-11-13 | Visa International Service Association | Systems and methods to measure influcence power |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150161705A1 (en) * | 2013-12-09 | 2015-06-11 | Mastercard International Incorporated | Merchant recommendation engine method and apparatus |
US20160012441A1 (en) * | 2014-07-14 | 2016-01-14 | Mastercard International Incorporated | Method and system for optimizing authenticiation processes in payment transactions |
US20160063511A1 (en) * | 2014-08-26 | 2016-03-03 | Ncr Corporation | Shopping pattern recognition |
US10475051B2 (en) * | 2014-08-26 | 2019-11-12 | Ncr Corporation | Shopping pattern recognition |
US20220198578A1 (en) * | 2020-12-22 | 2022-06-23 | VocaLink Limited | Method, apparatus and computer program product for identifying accounts of interest in a network |
US20230410212A1 (en) * | 2022-05-27 | 2023-12-21 | Intuit Inc. | Matching validation |
Also Published As
Publication number | Publication date |
---|---|
US11436600B2 (en) | 2022-09-06 |
US20190279203A1 (en) | 2019-09-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11436600B2 (en) | System and method for linking encrypted records | |
US20210295316A1 (en) | Systems and methods for providing anonymized transaction data to third-parties | |
US10163147B2 (en) | Systems and methods of location based merchant recommendations | |
US20200051084A1 (en) | Methods and systems for verifying cardholder authenticity when provisioning a token | |
EP3036703B1 (en) | System and method for graduated security in user authentication | |
US20160027127A1 (en) | Method and system for inferring taxpayer location from transaction data | |
US9418365B2 (en) | Systems and methods for using social network data to determine payment fraud | |
US11893549B2 (en) | Systems and methods for detecting potentially compromised payment cards | |
US11978054B2 (en) | Systems and methods for identifying fraudulent common point of purchases | |
US20160125400A1 (en) | Systems and methods for geo component fraud detection for card-present transactions | |
US10776788B2 (en) | Systems and methods for identifying compromised accounts using historical authorization messages | |
US20220284436A1 (en) | Compromised data source detector and method | |
US20160110671A1 (en) | Systems and methods for valuing a merchant using transaction data | |
US20170300842A1 (en) | Systems and methods for identifying underrepresented merchant categories within a region | |
US20240242274A1 (en) | Systems and methods for identifying full account numbers from partial account numbers | |
US11270395B2 (en) | Systems and methods for building a data table to reduce false declines over a network | |
US9245277B1 (en) | Systems and methods for categorizing neighborhoods based on payment card transactions | |
US9436964B2 (en) | Systems and methods for mandated services verification | |
US20150170161A1 (en) | Systems and methods for assessing market saturation |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: MASTERCARD INTERNATIONAL INCORPORATED, NEW YORK Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:GHOSH, DEBASHIS;GOLDBERG, INA;SIGNING DATES FROM 20130720 TO 20130724;REEL/FRAME:030878/0127 |
|
STCV | Information on status: appeal procedure |
Free format text: BOARD OF APPEALS DECISION RENDERED |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- AFTER EXAMINER'S ANSWER OR BOARD OF APPEALS DECISION |