System, Method, and Computer Program Product for Anonymizing Transactions
20200320524 ยท 2020-10-08
Inventors
Cpc classification
H04L2209/56
ELECTRICITY
H04L9/0894
ELECTRICITY
International classification
G06Q20/40
PHYSICS
H04L9/32
ELECTRICITY
Abstract
Provided is a system, method, and computer program product for anonymizing a plurality of transactions. The method includes receiving a plurality of transaction requests from a plurality of account holders, each transaction request comprising a payee identifier and a payer identifier, generating a plurality of anonymous authorization requests corresponding to the plurality of transaction requests, communicating the plurality of anonymous authorization requests to at least one issuer system or a transaction processing system, receiving a plurality of authorization responses corresponding to the plurality of anonymous authorization requests, determining that a first plurality of transaction requests of the plurality of transaction requests satisfies a threshold, generating a plurality of anonymous payment tokens, each anonymous payment token corresponding to an authorized transaction request of the first plurality of transaction requests, and allocating each anonymous payment token to a corresponding payee identifier.
Claims
1. A computer-implemented method for anonymizing a plurality of transactions, comprising: receiving, with at least one processor, a plurality of transaction requests from a plurality of account holders, each transaction request comprising a payee identifier and a payer identifier; generating, with at least one processor, a plurality of anonymous authorization requests corresponding to the plurality of transaction requests, wherein each anonymous authorization request is independent of the payee identifier of the corresponding transaction request; communicating, with at least one processor, the plurality of anonymous authorization requests to at least one issuer system or a transaction processing system; receiving, with at least one processor, a plurality of authorization responses corresponding to the plurality of anonymous authorization requests; determining, with at least one processor, that a first plurality of transaction requests of the plurality of transaction requests satisfies a threshold; in response to determining that the first plurality of transaction requests satisfies the threshold, generating, with at least one processor, a plurality of anonymous payment tokens, each anonymous payment token corresponding to an authorized transaction request of the first plurality of transaction requests; and allocating, with at least one processor, each anonymous payment token to a corresponding payee identifier.
2. The computer-implemented method of claim 1, further comprising: determining, with at least one processor, that a second plurality of authorized transaction requests of the plurality of transaction requests satisfies the threshold or a second threshold; in response to determining that the second plurality of authorized transaction requests satisfies the threshold, generating, with at least one processor, a second plurality of anonymous payment tokens, each anonymous payment token corresponding to an authorized transaction request of the second plurality of authorized transaction requests; and allocating, with at least one processor, each anonymous payment token to a corresponding payee identifier.
3. The computer-implemented method of claim 1, wherein the threshold comprises at least one of the following: a number of transactions, a number of accounts, an aggregate transaction value, or any combination thereof.
4. The computer-implemented method of claim 1, wherein the threshold comprises at least one of the following: a random value, a dynamic value, a predetermined value, or any combination thereof.
5. The computer-implemented method of claim 1, wherein the plurality of anonymous authorization requests correspond to the first plurality of transactions, and wherein the plurality of anonymous authorization requests are communicated to the at least one issuer system or transaction processing system in response to determining that the first plurality of transactions satisfies the threshold.
6. The computer-implemented method of claim 1, wherein the plurality of anonymous authorization requests correspond to the plurality of transactions, and wherein the plurality of anonymous authorization requests are communicated to the at least one issuer system or transaction processing system prior to determining that the first plurality of transactions satisfies the threshold.
7. The computer-implemented method of claim 1, further comprising: for each transaction request of the plurality of transaction requests, determine a pool from a plurality of pools to allocate the transaction request, wherein the first plurality of transactions is allocated to a first pool; and for each pool of the plurality of pools, adding transaction values for each transaction request in the pool to determine an aggregate pool transaction value, wherein the threshold is satisfied when the aggregate pool transaction value meets or exceeds the threshold.
8. The computer-implemented method of claim 1, further comprising: for each transaction request of the plurality of transaction requests, determine a pool from a plurality of pools to allocate the transaction request, wherein the first plurality of transactions is allocated to a first pool; and for each pool of the plurality of pools, incrementing a counter for each transaction request in the pool to determine an aggregate number of transactions, wherein the threshold is satisfied when the aggregate number of transactions meets or exceeds the threshold.
9. A computer program product for anonymizing a plurality of transactions, comprising at least one non-transitory computer-readable medium including program instructions that, when executed by at least one processor, cause the at least one processor to: receive a plurality of transaction requests from a plurality of account holders, each transaction request comprising a payee identifier and a payer identifier; generate a plurality of anonymous authorization requests corresponding to the plurality of transaction requests, wherein each anonymous authorization request is independent of the payee identifier of the corresponding transaction request; communicate the plurality of anonymous authorization requests to at least one issuer system or a transaction processing system; receive a plurality of authorization responses corresponding to the plurality of anonymous authorization requests; determine that a first plurality of transaction requests of the plurality of transaction requests satisfies a threshold; in response to determining that the first plurality of transaction requests satisfies the threshold, generate a plurality of anonymous payment tokens, each anonymous payment token corresponding to an authorized transaction request of the first plurality of transaction requests; and allocate each anonymous payment token to a corresponding payee identifier.
10. The computer program product of claim 9, wherein the program instructions further cause the at least one processor to: determine that a second plurality of authorized transaction requests of the plurality of transaction requests satisfies the threshold or a second threshold; in response to determining that the second plurality of authorized transaction requests satisfies the threshold, generate a second plurality of anonymous payment tokens, each anonymous payment token corresponding to an authorized transaction request of the second plurality of authorized transaction requests; and allocate each anonymous payment token to a corresponding payee identifier.
11. The computer program product of claim 9, wherein the threshold comprises at least one of the following: a number of transactions, a number of accounts, an aggregate transaction value, or any combination thereof.
12. The computer program product of claim 9, wherein the threshold comprises at least one of the following: a random value, a dynamic value, a predetermined value, or any combination thereof.
13. The computer program product of claim 9, wherein the plurality of anonymous authorization requests correspond to the first plurality of transactions, and wherein the plurality of anonymous authorization requests are communicated to the at least one issuer system or transaction processing system in response to determining that the first plurality of transactions satisfies the threshold.
14. The computer program product of claim 9, wherein the plurality of anonymous authorization requests correspond to the plurality of transactions, and wherein the plurality of anonymous authorization requests are communicated to the at least one issuer system or transaction processing system prior to determining that the first plurality of transactions satisfies the threshold.
15. The computer program product of claim 9, wherein the program instructions further cause the at least one processor to: for each transaction request of the plurality of transaction requests, determine a pool from a plurality of pools to allocate the transaction request, wherein the first plurality of transactions is allocated to a first pool; and for each pool of the plurality of pools, add transaction values for each transaction request in the pool to determine an aggregate pool transaction value, wherein the threshold is satisfied when the aggregate pool transaction value meets or exceeds the threshold.
16. The computer program product of claim 9, wherein the program instructions further cause the at least one processor to: for each transaction request of the plurality of transaction requests, determine a pool from a plurality of pools to allocate the transaction request, wherein the first plurality of transactions is allocated to a first pool; and for each pool of the plurality of pools, increment a counter for each transaction request in the pool to determine an aggregate number of transactions, wherein the threshold is satisfied when the aggregate number of transactions meets or exceeds the threshold.
17. A system for anonymizing a plurality of transactions, comprising: at least one data storage device comprising a ledger for a plurality of payees; and at least one processor programmed or configured to: receive a plurality of transaction requests from a plurality of account holders, each transaction request comprising a payee identifier and a payer identifier; generate a plurality of anonymous authorization requests corresponding to the plurality of transaction requests, wherein each anonymous authorization request is independent of the payee identifier of the corresponding transaction request; communicate the plurality of anonymous authorization requests to at least one issuer system or a transaction processing system; receive a plurality of authorization responses corresponding to the plurality of anonymous authorization requests; determine that a first plurality of transaction requests of the plurality of transaction requests satisfies a threshold; in response to determining that the first plurality of transaction requests satisfies the threshold, generate a plurality of anonymous payment tokens, each anonymous payment token corresponding to an authorized transaction request of the first plurality of transaction requests; and allocate each anonymous payment token to a corresponding payee identifier.
18. The system of claim 17, wherein the at least one processor is further programmed or configured to: determine that a second plurality of authorized transaction requests of the plurality of transaction requests satisfies the threshold or a second threshold; in response to determining that the second plurality of authorized transaction requests satisfies the threshold, generate a second plurality of anonymous payment tokens, each anonymous payment token corresponding to an authorized transaction request of the second plurality of authorized transaction requests; and allocate each anonymous payment token to a corresponding payee identifier.
19. The system of claim 17, wherein the threshold comprises at least one of the following: a number of transactions, a number of accounts, an aggregate transaction value, or any combination thereof.
20. The system of claim 17, wherein the threshold comprises at least one of the following: a random value, a dynamic value, a predetermined value, or any combination thereof.
21. The system of claim 17, wherein the plurality of anonymous authorization requests correspond to the first plurality of transactions, and wherein the plurality of anonymous authorization requests are communicated to the at least one issuer system or transaction processing system in response to determining that the first plurality of transactions satisfies the threshold.
22. The system of claim 17, wherein the plurality of anonymous authorization requests correspond to the plurality of transactions, and wherein the plurality of anonymous authorization requests are communicated to the at least one issuer system or transaction processing system prior to determining that the first plurality of transactions satisfies the threshold.
23. The system of claim 17, wherein the processor is further programmed or configured to: for each transaction request of the plurality of transaction requests, determine a pool from a plurality of pools to allocate the transaction request, wherein the first plurality of transactions is allocated to a first pool; and for each pool of the plurality of pools, add transaction values for each transaction request in the pool to determine an aggregate pool transaction value, wherein the threshold is satisfied when the aggregate pool transaction value meets or exceeds the threshold.
24. The system of claim 17, wherein the processor is further programmed or configured to: for each transaction request of the plurality of transaction requests, determine a pool from a plurality of pools to allocate the transaction request, wherein the first plurality of transactions is allocated to a first pool; and for each pool of the plurality of pools, increment a counter for each transaction request in the pool to determine an aggregate number of transactions, wherein the threshold is satisfied when the aggregate number of transactions meets or exceeds the threshold.
Description
BRIEF DESCRIPTION OF THE DRAWINGS
[0039] Additional advantages and details are explained in greater detail below with reference to the exemplary embodiments that are illustrated in the accompanying schematic figures, in which:
[0040]
[0041]
[0042]
[0043]
[0044]
[0045]
DESCRIPTION
[0046] For purposes of the description hereinafter, the terms end, upper, lower, right, left, vertical, horizontal, top, bottom, lateral, longitudinal, and derivatives thereof shall relate to the invention as it is oriented in the drawing figures. However, it is to be understood that the invention may assume various alternative variations and step sequences, except where expressly specified to the contrary. It is also to be understood that the specific devices and processes illustrated in the attached drawings, and described in the following specification, are simply exemplary embodiments or aspects of the invention. Hence, specific dimensions and other physical characteristics related to the embodiments or aspects disclosed herein are not to be considered as limiting.
[0047] As used herein, the terms communication and communicate refer to the receipt or transfer of one or more signals, messages, commands, or other type of data. For one unit (e.g., any device, system, or component thereof) to be in communication with another unit means that the one unit is able to directly or indirectly receive data from and/or transmit data to the other unit. This may refer to a direct or indirect connection that is wired and/or wireless in nature. Additionally, two units may be in communication with each other even though the data transmitted may be modified, processed, relayed, and/or routed between the first and second unit. For example, a first unit may be in communication with a second unit even though the first unit passively receives data and does not actively transmit data to the second unit. As another example, a first unit may be in communication with a second unit if an intermediary unit processes data from one unit and transmits processed data to the second unit. It will be appreciated that numerous other arrangements are possible.
[0048] As used herein, the term transaction service provider may refer to an entity that receives transaction authorization requests from merchants or other entities and provides guarantees of payment, in some cases through an agreement between the transaction service provider and an issuer institution. The terms transaction service provider and transaction provider system may also refer to one or more computer systems operated by or on behalf of a transaction service provider, such as a transaction processing server executing one or more software applications. A transaction processing server may include one or more processors and, in some non-limiting embodiments, may be operated by or on behalf of a transaction service provider.
[0049] As used herein, the term issuer institution may refer to one or more entities, such as a bank, that provide accounts to customers for conducting payment transactions, such as initiating credit and/or debit payments. For example, an issuer institution may provide an account identifier, such as a primary account number (PAN), to a customer that uniquely identifies one or more accounts associated with that customer. The account identifier may be embodied on a physical financial instrument, such as a payment card, and/or may be electronic and used for electronic payments. The terms issuer institution, issuer bank, and issuer system may also refer to one or more computer systems operated by or on behalf of an issuer institution, such as a server computer executing one or more software applications. For example, an issuer system may include one or more authorization servers for authorizing a payment transaction.
[0050] As used herein, the term acquirer institution may refer to an entity licensed by the transaction service provider and approved by the transaction service provider to originate transactions using a portable financial device of the transaction service provider. The transactions may include original credit transactions (OCTs) and account funding transactions (AFTs). The acquirer institution may be authorized by the transaction service provider to originate transactions using a portable financial device of the transaction service provider. The acquirer institution may contract with a payment gateway to enable the facilitators to sponsor merchants. An acquirer institution may be a financial institution, such as a bank. The terms acquirer institution, acquirer bank, and acquirer system may also refer to one or more computer systems operated by or on behalf of an acquirer institution, such as a server computer executing one or more software applications.
[0051] As used herein, the term account identifier may include one or more PANs, tokens, or other identifiers associated with a customer account. The term token may refer to an identifier that is used as a substitute or replacement identifier for an original account identifier, such as a PAN. Account identifiers may be alphanumeric or any combination of characters and/or symbols. Tokens may be associated with a PAN or other original account identifier in one or more databases such that they can be used to conduct a transaction without directly using the original account identifier. In some examples, an original account identifier, such as a PAN, may be associated with a plurality of tokens for different individuals or purposes. An issuer institution may be associated with a bank identification number (BIN) or other unique identifier that uniquely identifies it among other issuer institutions.
[0052] As used herein, the term merchant may refer to an individual or entity that provides goods and/or services, or access to goods and/or services, to customers based on a transaction, such as a payment transaction. The term merchant or merchant system may also refer to one or more computer systems operated by or on behalf of a merchant, such as a server computer executing one or more software applications. A point-of-sale (POS) system, as used herein, may refer to one or more computers and/or peripheral devices used by a merchant to engage in payment transactions with customers, including one or more card readers, near-field communication (NFC) receivers, RFID receivers, and/or other contactless transceivers or receivers, contact-based receivers, payment terminals, computers, servers, input devices, and/or other like devices that can be used to initiate a payment transaction.
[0053] As used herein, the term computing device may refer to one or more electronic devices that include one or more processors and are configured to process data. A computing device may be a mobile device, such as a cellular phone (e.g., a smartphone or standard cellular phone), a portable computer (e.g., a tablet computer, a laptop computer, etc.), a wearable device (e.g., a watch, pair of glasses, lens, clothing, and/or the like), a personal digital assistant (PDA), and/or other like devices. A computing device may be a desktop computer or other non-mobile computer. Furthermore, the term computer may refer to any computing device that includes components to receive, process, and/or output data, and in non-limiting embodiments may include a display, a processor, memory, an input device, and a network interface. An interface refers to a generated display, such as one or more graphical user interfaces (GUIs) with which a user may interact, either directly or indirectly (e.g., through a keyboard, mouse, touchscreen, etc.).
[0054] As used herein, the term payment device may refer to a payment card (e.g., a credit or debit card), a gift card, a smartcard, smart media, a payroll card, a healthcare card, a wrist band, a machine-readable medium containing account information, a keychain device or fob, an RFID transponder, a retailer discount or loyalty card, a mobile device executing an electronic wallet application, a PDA, a security card, an access card, a wireless terminal, and/or a transponder, as examples. The payment device may include volatile or non-volatile memory to store information, such as an account identifier or a name of the account holder.
[0055] In non-limiting embodiments, a system and method for anonymizing a plurality of transactions allows for users (e.g., payers) to make payments to other entities (e.g., payees) without revealing the identity of the payees to the issuer institutions associated with the payment devices of the payers. Through the use of a unique arrangement of user pools and thresholds, an anonymizing service, and anonymous payment tokens, a timing of a user requested transaction may be randomly modified to prevent others from inferring the identity of the payer and/or payee from timestamps and other contextual transaction data. Other advantages and benefits of non-limiting embodiments are described herein.
[0056] Referring now to
[0057] With continued reference to
[0058] Still referring to
[0059] Referring now to
[0060] With continued reference to
[0061] Still referring to
[0062] With continued reference to
[0063] Still referring to
[0064] In the non-limiting example shown in
[0065] With continued reference to
[0066] Referring now to
[0067] Referring now to
[0068] With continued reference to
[0069] Still referring to
[0070] Referring now to
[0071] As shown in
[0072] With continued reference to
[0073] Device 900 may perform one or more processes described herein. Device 900 may perform these processes based on processor 904 executing software instructions stored by a computer-readable medium, such as memory 906 and/or storage component 908. A computer-readable medium may include any non-transitory memory device. A memory device includes memory space located inside of a single physical storage device or memory space spread across multiple physical storage devices. Software instructions may be read into memory 906 and/or storage component 908 from another computer-readable medium or from another device via communication interface 914. When executed, software instructions stored in memory 906 and/or storage component 908 may cause processor 904 to perform one or more processes described herein. Additionally, or alternatively, hardwired circuitry may be used in place of or in combination with software instructions to perform one or more processes described herein. Thus, embodiments described herein are not limited to any specific combination of hardware circuitry and software. The term programmed or configured, as used herein, refers to an arrangement of software, hardware circuitry, or any combination thereof on one or more devices.
[0074] Although embodiments have been described in detail for the purpose of illustration, it is to be understood that such detail is solely for that purpose and that the disclosure is not limited to the disclosed embodiments, but, on the contrary, is intended to cover modifications and equivalent arrangements that are within the spirit and scope of the appended claims. For example, it is to be understood that the present disclosure contemplates that, to the extent possible, one or more features of any embodiment can be combined with one or more features of any other embodiment.