Computer-implemented method for real-time determination of merchant location using a virtual card
The test transaction is initiated through virtual cards, and the card processing server is used to detect and extract signature data in real time, solving the problem of merchant location identification and achieving efficient and reliable data analysis.
Patent Information
- Application Number
- CN201980102863.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2019-12-09
- Publication Date
- 2025-09-02
- Estimated Expiration
- 2039-12-09
AI Technical Summary
The existing technology is difficult to accurately identify the source and location of merchants, which makes it difficult to analyze transaction data, and the process of manually accessing merchant stores is arduous and unfeasible.
By initiating test transactions with a virtual card, the card processing server detects records in the transaction database in real time, and extracts signature data to determine the merchant's transaction source data, including location and registration name.
It realizes time-effective and reliable determination of merchant transaction source data, avoids the hassle of visiting each store in person, and supports more accurate data analysis applications.
Smart Images

Figure CN115136172B_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to payment transactions. In particular, but not exclusively, the present disclosure relates to a computer-implemented method for determining a merchant's location in real time using a virtual card. Background Art
[0002] Most people choose to perform cashless transactions using payment cards such as debit or credit cards, which generates a large amount of transaction data. Performing data analysis on this transaction data can help with various applications, such as peer detection, setting up loyalty offers and discounts, detecting fraudulent merchants, merchant category code (MCC) fee compliance, and managing transaction-related disputes. However, accurate and reliable data analysis of transaction data is only possible when merchant details, such as the merchant's name, location, address, and card acceptor identifier (CAID), are clearly available from the transaction data. Each merchant store may have multiple branches in multiple locations, and each location may have multiple remote terminals for initiating transactions. In such scenarios, acquirers currently fail to follow a standard procedure for assigning unique CAIDs to merchants. As an example, in some scenarios, a CAID may be associated with a merchant location; for example, all of the merchant's remote terminals deployed in that location will be associated with the same CAID. In other scenarios, each merchant's remote terminal within a location may be associated with a different CAID. In other scenarios, cluster CAIDs are assigned by the acquirer; for example, each remote terminal deployed in multiple locations of a merchant may be associated with a single CAID. In another scenario, a single merchant store location may be associated with multiple merchant category codes and multiple CAIDs. Due to this non-standard procedure for assigning CAIDs, determining the origin of a merchant or identifying the merchant through analysis of transaction data becomes extremely difficult, and in most cases impossible.
[0003] Furthermore, when the corresponding acquirer installs the merchant's remote terminal, the merchant may not uniformly provide the merchant's Doing Business As (DBA) name or registered name, or in some cases, the acquirer may store each branch's name differently for different branches. As an example, consider a merchant's DBA name of "John's Coffee Day." However, the remote terminal for branch 1 may be installed with the name "JCD," the remote terminal for branch 2 may be installed with the names "J's Coffee Day" and "JC Day," the remote terminal for branch 3 may be installed with the name "JCD Coffee," and so on. Consequently, such variations in merchant names appearing in transaction data make it difficult to identify the merchant. In a few other cases, the merchant may provide an incorrect or partial address when installing the remote terminal, which also does not support identification of the merchant based on the transaction data.
[0004] Due to the aforementioned drawbacks, currently, in order to identify the source of merchants, organizations performing data analysis on transaction data may have to manually visit each merchant store and initiate test transactions to understand the merchant's source. However, consider performing this action of visiting every merchant store in a country such as Australia, where one merchant may have more than 4,000 active locations. In such a scenario, even if a person visits 5 locations in a day, it may take 800 days to visit all 4,000 active locations of the merchant, and then it may take additional days to identify and distinguish transaction data related to those merchant locations from the transaction database. This is not only a cumbersome and extremely time-consuming process, but it is also a practically unfeasible option.
[0005] Therefore, there is a need for a correct, reliable and feasible method to address one or more of the challenges described above.
[0006] The information disclosed in this Background section of the present disclosure is only for enhancement of understanding of the general background of the present disclosure and should not be taken as an acknowledgement or any form of suggestion that this information forms the prior art already known to a person skilled in the art. Summary of the Invention
[0007] Additional features and advantages are realized through the techniques of the present disclosure.Other embodiments and aspects of the disclosure are described in detail herein and are considered a part of the claimed disclosure.
[0008] In some non-limiting embodiments or aspects, a computer-implemented method is provided, comprising: in response to a test transaction initiated through a virtual card provided to a merchant, receiving test transaction data from the merchant's acquiring bank using at least one processor, wherein the acquiring bank receives the test transaction data from a remote terminal of the merchant; using one or more attributes of the virtual card stored in the card processing server, detecting in real time using at least one processor a record of the test transaction in a transaction database associated with the card processing server; in response to detecting the record of the test transaction, retrieving signature data from the test transaction data stored in the transaction database using at least one processor; and determining transaction source data of the merchant based on the signature data using at least one processor, wherein the transaction source data includes a location of the merchant that initiated the test transaction and a registered name of the merchant.
[0009] In some non-limiting embodiments or aspects, test transaction data is received by a card processing server when an acquirer bank authorizes a test transaction initiated via a virtual card. In some non-limiting embodiments or aspects, the test transaction data and signature data include at least one of the following: virtual card data, a bank identification number (BIN), a merchant's card acceptor identifier (CAID), a merchant name, a merchant category code (MCC), a primary account number (PAN) used in the test transaction, a partial geographic location of the merchant, a merchant ID, a merchant's store ID, a transaction amount, a transaction date, an authentication code, or any combination thereof. In some non-limiting embodiments or aspects, the virtual card data includes one or more attributes of the virtual card, wherein the one or more attributes include at least one of the following: a virtual card number, a cardholder's name, a virtual card verification value, an expiration date of the virtual card, a purpose of the virtual card, or any combination thereof. In some non-limiting embodiments or aspects, a test transaction is initiated when the virtual card is communicatively interfaced with a remote terminal. In some non-limiting embodiments or aspects, determining the transaction source data and the registered name of the merchant includes: comparing, using at least one processor, at least one of a merchant name of the signed data, a CAID of the merchant of the signed data, and a partial geographic location of the merchant of the signed data with transaction data stored in a transaction database; extracting, using at least one processor, records of one or more transactions from the transaction data based on the comparison, wherein the extracted records of the one or more transactions fully match or partially match at least one of the merchant name of the signed data, the CAID of the merchant of the signed data, and the partial geographic location of the merchant of the signed data used for the comparison; and correlating, using at least one processor, each of the extracted records of the one or more transactions with the signed data of the merchant to determine the transaction source data. In some non-limiting embodiments or aspects, the transaction data includes records of one or more transactions performed at one or more merchant locations of a plurality of merchants.
[0010] In some non-limiting embodiments or aspects, a card processing server is provided, comprising: at least one processor; and a memory communicatively coupled to the at least one processor, wherein the memory stores processor-executable instructions that, when executed, cause the at least one processor to: receive test transaction data from an acquirer bank of a merchant in response to a test transaction initiated through a virtual card provided to the merchant, wherein the acquirer bank receives the test transaction data from a remote terminal of the merchant; use one or more attributes of the virtual card stored in the card processing server to detect, in real time, a record of the test transaction in a transaction database associated with the card processing server; retrieve signature data from the test transaction data stored in the transaction database in response to detecting the record of the test transaction; and determine transaction source data of the merchant based on the signature data, wherein the transaction source data includes a location of the merchant that initiated the test transaction and a registered name of the merchant.
[0011] In some non-limiting embodiments or aspects, test transaction data is received by a card processing server when an acquirer bank authorizes a test transaction initiated via a virtual card. In some non-limiting embodiments or aspects, the test transaction data and signature data include at least one of the following: virtual card data, a bank identification number (BIN), a merchant's card acceptor identifier (CAID), a merchant name, a merchant category code (MCC), a primary account number (PAN) used in the test transaction, a partial geographic location of the merchant, a merchant ID, a merchant's store ID, a transaction amount, a transaction date, an authentication code, or any combination thereof. In some non-limiting embodiments or aspects, the virtual card data includes one or more attributes of the virtual card, wherein the one or more attributes include at least one of the following: a virtual card number, a cardholder's name, a virtual card verification value, an expiration date of the virtual card, a purpose of the virtual card, or any combination thereof. In some non-limiting embodiments or aspects, at least one processor initiates a test transaction when the virtual card is communicatively interfaced with a remote terminal. In some non-limiting embodiments or aspects, at least one processor determines the transaction source data and the registered name of the merchant by: comparing, using the at least one processor, at least one of a merchant name of the signed data, a CAID of the merchant of the signed data, and a partial geographic location of the merchant of the signed data with transaction data stored in a transaction database; extracting, using the at least one processor, records of one or more transactions from the transaction data based on the comparison, wherein the extracted records of the one or more transactions fully or partially match at least one of the merchant name of the signed data, the CAID of the merchant of the signed data, and the partial geographic location of the merchant of the signed data used for the comparison; and correlating, using the at least one processor, each of the extracted records of the one or more transactions with the signed data of the merchant to determine the transaction source data. In some non-limiting embodiments or aspects, the transaction data includes records of one or more transactions performed at one or more merchant locations of a plurality of merchants.
[0012] In some non-limiting embodiments or aspects, a non-transitory computer-readable medium is provided, comprising instructions stored thereon, which, when processed by at least one processor, cause a card processing server to perform operations including: in response to a test transaction initiated by a virtual card provided to a merchant, receiving test transaction data from the merchant's acquiring bank using at least one processor, wherein the acquiring bank receives the test transaction data from a remote terminal of the merchant; using one or more attributes of the virtual card stored in the card processing server, detecting in real time using at least one processor a record of the test transaction in a transaction database associated with the card processing server; in response to detecting the record of the test transaction, retrieving signature data from the test transaction data stored in the transaction database using at least one processor; and determining transaction source data of the merchant based on the signature data using at least one processor, wherein the transaction source data includes a location of the merchant that initiated the test transaction and a registered name of the merchant.
[0013] In some non-limiting embodiments or aspects, the test transaction data and signature data include at least one of the following: virtual card data, a bank identification number (BIN), a merchant's card acceptor identifier (CAID), a merchant name, a merchant category code (MCC), a primary account number (PAN) used in the test transaction, a partial geographic location of the merchant, a merchant ID, a merchant's store ID, a transaction amount, a transaction date, an authentication code, or any combination thereof. In some non-limiting embodiments or aspects, the virtual card data includes one or more attributes of the virtual card, wherein the one or more attributes include at least one of the following: a virtual card number, a cardholder's name, a virtual card verification value, an expiration date of the virtual card, a purpose of the virtual card, or any combination thereof. In some non-limiting embodiments or aspects, the test transaction is initiated when the virtual card is communicatively interfaced with the remote terminal. In some non-limiting embodiments or aspects, to determine the transaction source data and the registered name of the merchant, the instructions cause at least one processor to: compare at least one of a merchant name of the signed data, a CAID of the merchant of the signed data, and a partial geographic location of the merchant of the signed data with test transaction data stored in a transaction database; extract records of one or more transactions from the transaction data based on the comparison, wherein the extracted records of the one or more transactions fully or partially match at least one of the merchant name of the signed data, the CAID of the merchant of the signed data, and the partial geographic location of the merchant of the signed data used for the comparison; and correlate each of the extracted records of the one or more transactions with the signed data of the merchant to determine the transaction source data. In some non-limiting embodiments or aspects, the transaction data includes records of one or more transactions performed at one or more merchant locations of a plurality of merchants.
[0014] Additional non-limiting embodiments or aspects are set forth in the following numbered clauses.
[0015] Clause 1: A computer-implemented method comprising: in response to a test transaction initiated through a virtual card provided to a merchant, receiving test transaction data from an acquiring bank of the merchant using at least one processor, wherein the acquiring bank receives the test transaction data from a remote terminal of the merchant; using one or more attributes of the virtual card stored in a card processing server, detecting in real time using at least one processor a record of the test transaction in a transaction database associated with the card processing server; in response to detecting the record of the test transaction, retrieving signature data from the test transaction data stored in the transaction database using at least one processor; and determining, using at least one processor, transaction source data for the merchant based on the signature data, wherein the transaction source data includes a location of the merchant that initiated the test transaction and a registered name of the merchant.
[0016] Clause 2: The computer-implemented method of clause 1, wherein the test transaction data is received by the card processing server when the acquirer bank authorizes the test transaction initiated via the virtual card.
[0017] Clause 3: A computer-implemented method according to clause 1 or 2, wherein the test transaction data and the signature data include at least one of the following: virtual card data, a bank identification number (BIN), a merchant's card acceptor identifier (CAID), a merchant name, a merchant category code (MCC), a primary account number (PAN) used in the test transaction, a partial geographic location of the merchant, a merchant ID, a merchant's store ID, a transaction amount, a transaction date, an authentication code, or any combination thereof.
[0018] Clause 4: A computer-implemented method according to any one of clauses 1 to 3, wherein the virtual card data includes one or more attributes of the virtual card, wherein the one or more attributes include at least one of the following: the virtual card number, the name of the cardholder, the virtual card verification value, the expiration date of the virtual card, the purpose of the virtual card, or any combination thereof.
[0019] Clause 5: The computer-implemented method of any one of clauses 1 to 4, wherein the test transaction is initiated while the virtual card is communicatively interfaced with the remote terminal.
[0020] Clause 6: A computer-implemented method according to any one of clauses 1 to 5, wherein determining the transaction source data and the registered name of the merchant includes: utilizing at least one processor to compare at least one of the merchant name of the signature data, the CAID of the merchant of the signature data, and the partial geographic location of the merchant of the signature data with transaction data stored in a transaction database; utilizing at least one processor to extract records of one or more transactions from the transaction data based on the comparison, wherein the extracted records of the one or more transactions fully or partially match at least one of the merchant name of the signature data, the CAID of the merchant of the signature data, and the partial geographic location of the merchant of the signature data used for the comparison; and utilizing at least one processor to correlate each of the extracted records of the one or more transactions with the signature data of the merchant to determine the transaction source data.
[0021] Clause 7: The computer-implemented method of any of clauses 1 to 6, wherein the transaction data comprises records of one or more transactions performed at one or more merchant locations of the plurality of merchants.
[0022] Item 8: A card processing server comprising: at least one processor; and a memory communicatively coupled to the at least one processor, wherein the memory stores processor-executable instructions that, when executed, cause the at least one processor to: receive test transaction data from an acquiring bank of a merchant in response to a test transaction initiated through a virtual card provided to the merchant, wherein the acquiring bank receives the test transaction data from a remote terminal of the merchant; use one or more attributes of the virtual card stored in the card processing server to detect, in real time, a record of the test transaction in a transaction database associated with the card processing server; in response to detecting the record of the test transaction, retrieve signature data from the test transaction data stored in the transaction database; and determine transaction source data of the merchant based on the signature data, wherein the transaction source data includes a location of the merchant that initiated the test transaction and a registered name of the merchant.
[0023] Clause 9: The card processing server of clause 8, wherein the test transaction data is received by the card processing server when the acquirer bank authorizes the test transaction initiated via the virtual card.
[0024] Clause 10: A card processing server according to clause 8 or 9, wherein the test transaction data and the signature data include at least one of the following: virtual card data, a bank identification number (BIN), a merchant's card acceptor identifier (CAID), a merchant name, a merchant category code (MCC), a primary account number (PAN) used in the test transaction, a partial geographic location of the merchant, a merchant ID, a merchant's store ID, a transaction amount, a transaction date, an authentication code, or any combination thereof.
[0025] Clause 11: A card processing server according to any one of clauses 8 to 10, wherein the virtual card data includes one or more attributes of the virtual card, wherein the one or more attributes include at least one of the following: the virtual card number, the name of the cardholder, the virtual card verification value, the expiration date of the virtual card, the purpose of the virtual card, or any combination thereof.
[0026] Clause 12: The card processing server of any one of clauses 8 to 11, wherein the at least one processor initiates a test transaction when the virtual card is communicatively interfaced with the remote terminal.
[0027] Clause 13: A card processing server according to any one of clauses 8 to 12, wherein at least one processor determines the transaction source data and the registered name of the merchant by: using at least one processor to compare at least one of the merchant name of the signature data, the CAID of the merchant of the signature data, and the partial geographic location of the merchant of the signature data with the transaction data stored in the transaction database; using at least one processor to extract one or more transaction records from the transaction data based on the comparison, wherein the extracted records of the one or more transactions fully or partially match at least one of the merchant name of the signature data, the CAID of the merchant of the signature data, and the partial geographic location of the merchant of the signature data used for the comparison; and using at least one processor to associate each of the extracted records of the one or more transactions with the signature data of the merchant to determine the transaction source data.
[0028] Clause 14: A card processing server as recited in any one of clauses 8 to 13, wherein the transaction data comprises a record of one or more transactions performed at one or more merchant locations of the plurality of merchants.
[0029] Clause 15: A non-transitory computer-readable medium comprising instructions stored thereon that, when processed by at least one processor, cause a card processing server to perform operations comprising: in response to a test transaction initiated via a virtual card provided to a merchant, receiving, using at least one processor, test transaction data from an acquirer bank of the merchant, wherein the acquirer bank receives the test transaction data from a remote terminal of the merchant; using one or more attributes of the virtual card stored in the card processing server, detecting, using at least one processor, in real time, a record of the test transaction in a transaction database associated with the card processing server; in response to detecting the record of the test transaction, retrieving, using at least one processor, signature data from the test transaction data stored in the transaction database; and determining, using at least one processor, transaction source data for the merchant based on the signature data, wherein the transaction source data includes a location of the merchant that initiated the test transaction and a registered name of the merchant.
[0030] Clause 16: A non-transitory computer-readable medium as described in clause 15, wherein the test transaction data and the signature data include at least one of the following: virtual card data, a bank identification number (BIN), a merchant's card acceptor identifier (CAID), a merchant name, a merchant category code (MCC), a primary account number (PAN) used in the test transaction, a partial geographic location of the merchant, a merchant ID, a merchant's store ID, a transaction amount, a transaction date, an authentication code, or any combination thereof.
[0031] Clause 17: A non-transitory computer-readable medium as described in clause 15 or 16, wherein the virtual card data includes one or more attributes of the virtual card, wherein the one or more attributes include at least one of the following: a virtual card number, a cardholder's name, a virtual card verification value, an expiration date of the virtual card, a purpose of the virtual card, or any combination thereof.
[0032] Clause 18: The non-transitory computer-readable medium of any of clauses 15 to 17, wherein the test transaction is initiated when the virtual card is communicatively interfaced with the remote terminal.
[0033] Clause 19: A non-transitory computer-readable medium according to any one of clauses 15 to 18, wherein, in order to determine the transaction source data and the registered name of the merchant, the instructions cause at least one processor to: compare the merchant name of the signature data, the CAID of the merchant of the signature data, and the partial geographic location of the merchant of the signature data with test transaction data stored in a transaction database; extract one or more transaction records from the transaction data based on the comparison, wherein the extracted records of the one or more transactions fully match or partially match at least one of the merchant name of the signature data, the CAID of the merchant of the signature data, and the partial geographic location of the merchant of the signature data used for the comparison; and associate each of the extracted records of the one or more transactions with the signature data of the merchant to determine the transaction source data.
[0034] Clause 20: The non-transitory computer-readable medium of any of clauses 15 to 19, wherein the transaction data comprises a record of one or more transactions performed at one or more merchant locations of a plurality of merchants.
[0035] Disclosed herein is a computer-implemented method that may include receiving, by a card processing server, test transaction data from a merchant's acquiring bank. The acquiring bank receives the test transaction data from a merchant's remote terminal in response to a test transaction initiated via a virtual card provided to the merchant. Furthermore, the method includes detecting, in real time, a record of the test transaction in a transaction database associated with the card processing server using one or more attributes of the virtual card stored in the card processing server. Subsequently, the method includes, upon detecting the record of the test transaction, retrieving signature data from the test transaction data stored in the transaction database. After retrieving the signature data, the method includes extracting transaction source data for the merchant based on the signature data. The transaction source data includes the location of the merchant initiating the test transaction and the merchant's registered name.
[0036] In addition, in some non-limiting embodiments or aspects, the present disclosure may include a card processing server. The card processing server includes a processor and a memory communicatively coupled to the processor. The memory stores processor instructions that, when executed, cause the processor to receive test transaction data from a merchant's acquiring bank. The acquiring bank receives the test transaction data from the merchant's remote terminal in response to a test transaction initiated via a virtual card provided to the merchant. In addition, the processor uses one or more attributes of the virtual card stored in the card processing server to detect, in real time, a record of the test transaction in a transaction database associated with the card processing server. Subsequently, after detecting the record of the test transaction, the processor retrieves signature data from the test transaction data stored in the transaction database. After retrieving the signature data, the processor extracts the merchant's transaction source data based on the signature data. The transaction source data includes the location of the merchant that initiated the test transaction and the merchant's registered name.
[0037] Furthermore, in some non-limiting embodiments or aspects, the present disclosure may include a non-transitory computer-readable medium comprising instructions stored thereon that, when processed by at least one processor, cause a card processing server to perform operations, the operations comprising receiving test transaction data from a merchant's acquiring bank. The acquiring bank receives the test transaction data from a merchant's remote terminal in response to a test transaction initiated via a virtual card provided to the merchant. Furthermore, the instructions cause the processor to detect, in real time, a record of the test transaction in a transaction database associated with the card processing server using one or more attributes of the virtual card stored in the card processing server. Subsequently, upon detecting the record of the test transaction, the instructions cause the processor to retrieve signature data from the test transaction data stored in the transaction database. After retrieving the signature data, the instructions cause the processor to extract transaction source data for the merchant based on the signature data. The transaction source data includes the location of the merchant initiating the test transaction and the merchant's registered name.
[0038] The foregoing summary is illustrative only and is not intended to be limiting in any way. In addition to the illustrative aspects, embodiments, and features described above, further aspects, embodiments, and features may become apparent by reference to the drawings and the following detailed description. BRIEF DESCRIPTION OF THE DRAWINGS
[0039] The novel features and characteristics of the present disclosure are set forth in the appended claims. However, the disclosure itself, as well as the preferred mode of use, further objects and advantages thereof, may best be understood with reference to the following detailed description of illustrative embodiments when read in conjunction with the accompanying drawings. The accompanying drawings, which are incorporated into and constitute a part of this disclosure, illustrate exemplary embodiments and, together with the description, serve to explain the principles of the disclosure. In the figures, the leftmost digit of a reference number identifies the figure in which the reference number first appears. One or more embodiments will now be described, by way of example only, with reference to the accompanying drawings, in which like reference numerals represent similar elements, and in which:
[0040] Figure 1 An exemplary system for determining a merchant's location in real time using a virtual card is shown according to some non-limiting embodiments or aspects of the present disclosure;
[0041] Figure 2 A detailed block diagram illustrating a card processing server for determining a merchant location in real time using a virtual card, according to some non-limiting embodiments or aspects of the present disclosure;
[0042] Figure 3 showing a flow chart illustrating method steps for determining a merchant location in real time using a virtual card according to some non-limiting embodiments or aspects of the present disclosure; and
[0043] Figure 4 is a block diagram of an exemplary computer system for implementing non-limiting embodiments or aspects according to the present disclosure.
[0044] It will be appreciated by those skilled in the art that any block diagram herein represents a conceptual view of an illustrative system embodying the principles of the present subject matter. Similarly, it will be appreciated that any flow charts, flowcharts, state transition diagrams, pseudocode, and the like represent various processes that can be substantially represented in a computer-readable medium and thus executed by a computer or processor, whether or not such a computer or processor is explicitly shown. Although each of the figures shows a specific embodiment for the purpose of illustrating a clear example, other embodiments may omit, add, reorder, and / or modify any of the elements shown in the figures. DETAILED DESCRIPTION
[0045] In this document, the word “exemplary” is used herein to mean “serving as an example, instance, or illustration.” Any embodiment or implementation of the present subject matter described herein as “exemplary” is not necessarily to be construed as preferred or advantageous over other embodiments.
[0046] In the following detailed description of the embodiments of the present disclosure, reference is made to the accompanying drawings which form a part of the present disclosure, and specific embodiments in which the present disclosure may be practiced are shown in the accompanying drawings by way of illustration. However, it should be understood that it is not intended to limit the present disclosure to the disclosed forms, but on the contrary, the present disclosure is intended to cover all modifications, equivalents, and alternatives within the spirit and scope of the present disclosure. It should be understood that other embodiments may be utilized and may be changed without departing from the scope of the present disclosure. Therefore, the following description should not be considered to have a restrictive meaning.
[0047] The terms "comprises" or "comprising" or any other variations thereof are intended to cover a non-exclusive inclusion, such that an arrangement, apparatus, or method that comprises a list of components or steps includes not only those components or steps but may also include other components or steps not expressly listed or inherent to such arrangement, apparatus, or method. In other words, the listing of one or more elements in a system or device following the phrase "comprises..." does not exclude the presence of other or additional elements in the system or method without further constraints.
[0048] The terms "includes" or "including" or any other variations thereof are intended to encompass a non-exclusive inclusion, such that an arrangement, apparatus, or method that includes a list of components or steps includes not only those components or steps, but may also include other components or steps not expressly listed or inherent to such arrangement, apparatus, or method. In other words, the listing of one or more elements in a system or device following "includes..." does not, without further constraints, exclude the presence of other or additional elements in the system or method.
[0049] As used herein, aspects, components, elements, structures, actions, steps, functions, instructions, etc. should not be understood as being critical or necessary unless explicitly described as such. Also, as used herein, the article "one" is intended to include one or more projects and can be used interchangeably with "one or more" and "at least one". In addition, as used herein, the term "set" is intended to include one or more projects (e.g., related projects, unrelated projects, a combination of related projects and unrelated projects, etc.), and can be used interchangeably with "one or more" or "at least one". In the case of wishing only one project, the term "one" or similar language is used. Also, as used herein, the term "having" etc. is intended to be an open term. In addition, unless explicitly stated otherwise, the phrase "based on" is intended to mean "at least partially based on". Unless explicitly specified otherwise, the term "some non-limiting embodiments or aspects" means "one or more (but not all) embodiments or aspects of the present disclosure". The description of some non-limiting embodiments or aspects with several components communicating with each other does not mean that all these components are needed. On the contrary, various optional components are described to illustrate various possible embodiments of the present disclosure.
[0050] When a single device or article is described herein, it will be apparent that more than one device / article (whether or not cooperating) may be used in place of a single device / article. Similarly, where more than one device or article is described herein (whether or not cooperating), it will be apparent that a single device / article may be used in place of the more than one device or article, or a different number of devices / articles may be used in place of the number of devices or procedures shown. The functionality and / or features of a device may alternatively be embodied by one or more other devices that are not explicitly described as having such functionality / features. Thus, other embodiments of the present disclosure need not include the device itself.
[0051] As used herein, the terms "communication," "transmission," "sending," and / or "receiving" may refer to the receipt, reception, transmission, delivery, provision, etc. of information (e.g., data, signals, messages, instructions, commands, etc.). A unit (e.g., a device, a system, a component of a device or system, a combination thereof, etc.) communicating with another unit means that the unit is capable of receiving information from the other unit and / or sending information to the other unit, directly or indirectly. This may refer to a direct or indirect connection (e.g., a direct communication connection, an indirect communication connection, etc.) that is wired and / or wireless in nature. In addition, although the information sent may be modified, processed, relayed, and / or routed between the first unit and the second unit, the two units may also communicate with each other. For example, a first unit may communicate with a second unit even if the first unit passively receives information and does not actively send information to the second unit. As another example, a first unit may communicate with a second unit if at least one intermediate unit (e.g., a third unit located between the first unit and the second unit) processes information received from the first unit and transmits the processed information to the second unit. In some non-limiting embodiments or aspects, a message may refer to a network packet (eg, a data packet, etc.) that includes data. It should be appreciated that many other arrangements are possible.
[0052] As used herein, the terms "server" and / or "processor" may refer to one or more computing devices, such as processors, storage devices, and / or similar computer components, that communicate with client devices and / or other computing devices over a network (such as the Internet or a private network) and, in some examples, facilitate communication between other servers and / or client devices. It should be understood that various other arrangements are possible. As used herein, the term "system" may refer to one or more computing devices or combinations of computing devices, such as, but not limited to, processors, servers, client devices, software applications, and / or other similar components. In addition, as used herein, references to "server" or "processor" may refer to a previously listed server and / or processor that is recited as performing a previous step or function, a different server and / or processor, and / or a combination of servers and / or processors. For example, as used in the specification and claims, a first server and / or first processor recited as performing a first step or function may refer to the same or a different server and / or processor that is recited as performing a second step or function.
[0053] The present disclosure relates to a computer-implemented method, a card processing server, and a non-transitory computer-readable medium for determining a merchant's location in real time using a virtual card. The virtual card can be an electronic card or an online card used to perform online transactions that are not physically issued. In some non-limiting embodiments or aspects, a merchant may be provided with a virtual card for performing a test transaction. After initiating a test transaction using the virtual card, the card processing server may receive test transaction data from the merchant's acquiring bank. In addition, the card processing server may detect records of the test transaction in a transaction database associated with the card processing server in real time, and may then retrieve signature data from the test transaction data stored in the transaction database. After retrieving the signature data, the card processing server may extract the merchant's transaction source data based on the signature data. In some non-limiting embodiments or aspects, the transaction source data may include, but is not limited to, the location of the merchant initiating the test transaction and the merchant's registered name (which may also be referred to as a business (DBA) name).
[0054] The present disclosure issues a virtual card to a merchant that can be used at each of the merchant's locations to initiate a test transaction. Thus, this eliminates the need for a representative to personally visit each of the merchant's locations to perform a transaction. After initiating a test transaction using the virtual card, the card processing server detects a record of the test transaction in a transaction database and extracts signature data from the test transaction data in real time, as the card processing server already knows one or more attributes associated with the virtual card. This enables the card processing server to compare and correlate the signature data with the transaction data in the database to determine the transaction source data in real time. Thus, the present disclosure enables time-efficient, reliable, and dynamic determination of a merchant's transaction source data without the hassle of personally visiting each store, which in turn facilitates efficient and accurate data analysis for various applications as discussed in the background section.
[0055] In the following detailed description of non-limiting embodiments or aspects of the present disclosure, reference is made to the accompanying drawings which form a part of the present disclosure and in which are shown, by way of illustration, specific embodiments in which the present disclosure may be practiced. These embodiments are described in sufficient detail to enable those skilled in the art to practice the present disclosure, and it should be understood that other embodiments may be utilized and changes may be made without departing from the scope of the present disclosure. Therefore, the following description should not be considered in a limiting sense.
[0056] Figure 1 An exemplary system 100 for determining a merchant location in real time using a virtual card is shown according to some non-limiting embodiments or aspects of the present disclosure. In one embodiment, the system 100 may include a virtual card 101, one or more merchants 1031 to 103 n (collectively referred to as one or more merchants 103 or merchants 103), one or more remote terminals 1051 to 105 n(collectively referred to as one or more remote terminals 105 or remote terminals 105), an acquiring bank 107, a card processing server 109, and a transaction database 111. In some non-limiting embodiments or aspects, the virtual card 101 can be considered a test card provided to the merchant 103 for performing test transactions. In some non-limiting embodiments or aspects, one virtual card 101 can be issued, and the same virtual card 101 can be provided to all merchants 103 whose store locations need to be tested.
[0057] In some non-limiting embodiments or aspects, a unique virtual card 101 may be issued and provided to each merchant 103. In some non-limiting embodiments or aspects, the merchant 103 may initiate a test transaction by communicatively interfacing the virtual card 101 with a remote terminal 105. As an example, the remote terminal 105 may be a point-of-sale (PoS) device, such as a card acceptance device that initiates a transaction. As an example, the virtual card 101 may be interfaced with a contactless interface, such as positioning the virtual card 101 near the remote terminal 105, such as by tapping, scanning a code (e.g., as a barcode or QR code on the virtual card 101), or the like. As an example, the virtual card 101 may be interfaced with the remote terminal 105 using technologies such as near field communication (NFC) and magnetic secure transmission (MST).
[0058] In an exemplary scenario where a merchant store includes five remote terminals 1051 to 1055, the merchant 103 can initiate a test transaction at each of the five remote terminals 1051 to 1055 using a virtual card 101 that helps uniquely identify each of the five remote terminals 1051 to 1055. In some non-limiting embodiments or aspects, the merchant 103 can initiate a transaction at one of the five remote terminals 1051, and the remaining remote terminals 1052 to 1054 can be mapped in the backend based on the test transaction data of the one remote terminal 1051. Therefore, if a merchant has multiple branches at different merchant locations and multiple remote terminals 105 at each branch, the merchant 103 should use the virtual card 101 to initiate a test transaction from at least one remote terminal 105 at each merchant location.
[0059] After initiating a test transaction using virtual card 101, card processing server 109 may receive test transaction data from merchant 103's acquirer bank 107. In some non-limiting embodiments or aspects, acquirer bank 107 may be the same as the issuing bank. In some non-limiting embodiments or aspects, when acquirer bank 107 authorizes the test transaction initiated using virtual card 101, card processing server 109 may receive the test transaction data. In some non-limiting embodiments or aspects, remote terminal 105, acquirer bank 107, and card processing server 109 may be connected to each other via a communication network. In some non-limiting embodiments or aspects, the communication network may be a wireless communication network.
[0060] The card processing server 109 may include a processor 113, an input / output (I / O) interface 115, and a memory 117. The I / O interface 115 may enable the receipt of test transaction data from the acquirer bank 107. The test transaction data may be stored in a transaction database 111 associated with the card processing server 109. The transaction database 111 includes transaction data, such as a record of one or more transactions performed at one or more merchant locations of a plurality of merchants. As transactions are processed, the transaction data is dynamically updated in the transaction database 111.
[0061] In some embodiments, the card processing server 109 may include data 201 and modules 203, such as Figure 2 As shown. As an example, data 201 can be stored in memory 117. In some non-limiting embodiments or aspects, data 201 can include signature data 205, transaction source data 207, and other data 209. Figure 2 Module 203 is described in detail herein. In some non-limiting embodiments or aspects, data 201 may be stored in memory 117 in the form of various data structures. In addition, data 201 may be organized using a data model such as a relational or hierarchical data model. Other data 209 may store data generated by module 203 for performing various functions of card processing server 109, including temporary data and temporary files.
[0062] In some non-limiting embodiments or aspects, the data 201 stored in the memory 117 can be processed by the module 203 of the card processing server 109. The module 203 can be stored in the memory 117. In an example, the module 203 communicatively coupled to the processor 113 configured in the card processing server 109 can also exist outside the memory 117, such as Figure 2As used herein, the term module 203 may refer to an application specific integrated circuit (ASIC), an electronic circuit, a processor (shared, dedicated, and / or group) and memory, a combinational logic circuit, and / or other suitable components that execute one or more software or firmware programs and provide the described functionality.
[0063] In some non-limiting embodiments or aspects, the modules 203 may include, for example, a receiving module 221, a transaction detection module 223, a data retrieval module 225, a transaction source determination module 227, and other modules 229. The other modules 229 may be used to perform various miscellaneous functionalities of the card processing server 109. It should be understood that such aforementioned modules 203 may be represented as a single module or a combination of different modules.
[0064] In some non-limiting embodiments or aspects, the receiving module 221 may receive test transaction data from the acquirer bank 107 in response to a test transaction initiated via a virtual card 101 provided to the merchant 103. As examples, the test transaction data may include, but is not limited to, one or more of the following: virtual card data, a bank identification number (BIN), a card acceptor identifier (CAID) of the merchant 103, the merchant name, a merchant category code (MCC), a primary account number (PAN) for the transaction, a partial geographic location of the merchant 103, a merchant ID, a store ID of the merchant 103, a transaction amount, a transaction date, an authentication code, or any combination thereof. As examples, the virtual card data may include one or more attributes of the virtual card 101. As examples, the one or more attributes of the virtual card 101 may include, but are not limited to, one or more of the following: a virtual card number, the cardholder's name, the name of the merchant for whom the virtual card 101 was issued, a virtual card verification value, an expiration date of the virtual card 101, the purpose of the virtual card 101, the name of the issuer of the virtual card 101, etc.
[0065] In some non-limiting embodiments or aspects, the transaction detection module 223 may detect, in real time, records of test transactions in the transaction database 111 using one or more attributes of the virtual card 101 stored in the card processing server 109. As an example, the transaction detection module 223 may map one or more attributes of the virtual card 101 stored in the card processing server 109 with the test transaction data to detect a match.
[0066] In some non-limiting embodiments or aspects, upon detecting a record of a test transaction in the transaction database 111, the data retrieval module 225 may retrieve the signature data 205 from the test transaction data. In some non-limiting embodiments or aspects, the signature data 205 may include, but is not limited to, one or more of the following: virtual card data, BIN, CAID of the merchant 103, merchant name, MCC, PAN of the transaction, partial geographic location of the merchant 103, merchant ID, store ID of the merchant 103, transaction amount, transaction date, authentication code, etc. The partial geographic location of the merchant 103 may include details such as a city, PIN code, street name, etc., which are initially provided by the merchant 103 when the corresponding remote terminal 105 is installed.
[0067] In some non-limiting embodiments or aspects, after retrieving the signature data 205, the transaction source determination module 227 may extract the transaction source data 207 of the merchant 103 based on the signature data 205. The transaction source data 207 may include, but is not limited to, the location (rooftop or physical location) of the merchant 103 that initiated the test transaction and the registered name of the merchant 103. Initially, the transaction source determination module 227 may compare at least one of the merchant name, the CAID of the merchant 103, and the partial geographic location of the merchant 103 in the signature data 205 with the transaction data stored in the transaction database 111. Based on the comparison, the transaction source determination module 227 extracts records of one or more transactions from the transaction data based on the comparison. In some non-limiting embodiments or aspects, the extracted records of the one or more transactions are at least one of an exact match or a partial match to at least one of the merchant name, the CAID of the merchant, and the partial geographic location used for the comparison.
[0068] As an example, consider the possibility of comparing the merchant name and the CAID of merchant 103. In this possibility, the merchant name and the CAID of merchant 103 extracted from signature data 205 can be compared with each merchant name and corresponding CAID in the transaction data to identify at least one of a partial match and a complete match. Based on the comparison, the extracted records can be, for example, records with matching CAIDs and matching merchant names, records with matching CAIDs but different merchant names, records with matching merchant names but different CAIDs, records with partially matching CAIDs and partially matching merchant names, records with matching CAIDs but partially matching merchant names, etc.
[0069] As an example, consider the possibility of using only the merchant name for comparison. In this possibility, the merchant name of merchant 103 extracted from signature data 205 can be compared with each merchant name in the transaction data to identify at least one of a partial match and a full match. In some non-limiting embodiments or aspects, fuzzy logic techniques can be used to identify partial matches or full matches based on the merchant name. Thus, the extracted records can include, for example, records with fully matching merchant names and records with partially matching merchant names.
[0070] As an example, consider another possibility in which the merchant name and a partial geographic location of the merchant 103 are used for comparison. In this example, the merchant name and the partial geographic location of the merchant 103 extracted from the signature data 205 can be compared with each merchant name and corresponding geographic location in the transaction data to identify at least one of a partial match and a complete match. Based on the comparison, the extracted records can be, for example, records with a matching geographic location and a matching merchant name, records with a matching geographic location but a different merchant name, records with a matching merchant name but a different geographic location, records with a partially matching geographic location and a partially matching merchant name, records with a matching geographic location but a partially matching merchant name, and the like.
[0071] In some non-limiting embodiments or aspects, the above-mentioned combinations and possibilities of at least one of the merchant name, the CAID of the merchant 103, and the partial geographic location of the merchant 103 should not be construed as limiting the present disclosure, as the present disclosure is applicable to combinations and possibilities other than those mentioned above. However, in some non-limiting embodiments or aspects, the comparison with the CAID and merchant name of the merchant 103 may be given the highest priority.
[0072] In addition, the transaction source determination module 227 can correlate each of the extracted records of one or more transactions with the signature data 205 of the merchant 103 to determine the transaction source data 207. The process of determining the transaction source data 207 is explained below with the help of an exemplary scenario. However, this should not be construed as limiting the present disclosure.
[0073] As an example, consider that the merchant 103 taps the virtual card 101 on one of the remote terminals 105 at a given merchant location. Exemplary test transaction data received by the card processing server 109 and the signature data 205 retrieved from the test transaction data are shown below in Table 1.
[0074] Enter the business name Input_CAID Input_Address Input_MCC John's Coffee Day 12345 Vivo city 56043 342
[0075] Table 1
[0076] As an example, consider a scenario where the card processing server 109 performs a comparison using both the merchant name and the CAID of the merchant 103. Thus, the card processing server 109 will search the transaction database 111 for records of one or more transactions that fully or partially match at least one of the merchant name or CAID. The records of one or more transactions extracted based on the comparison are as follows:
[0077] As shown in Table 2.
[0078] serial number Business Name Authentication CAID address Clearing CAID 1 JCD 12345 1. Harbourfront, walk vivo city 56043 00012345 2 John's Coffee Day 12345 Vivo city 56043 00012345 3 JC Day 12356 Vivo city 56043 0012356 4 J's Coffee Day 12356 Vivo city 56043 0012356
[0079] Table 2
[0080] In Table 2 above, the CAID of merchant "JCD" matches the CAID of merchant "John's Coffee Day," but the merchant names do not match. Furthermore, when comparing the address of merchant "JCD" with the address of merchant "John's Coffee Day," a portion of the address of merchant "John's Coffee Day," "Vivo City 56043," matches the address of merchant "JCD." Therefore, card processing server 109 associates merchant 103's CAID and address with the merchant in row 1 and determines that merchant 103's registered name is "John's Coffee Day" and that merchant 103's location is "1, Harbourfront Walk, Vivo City 56043."
[0081] Furthermore, when card processing server 109 compares the CAID and location of merchant 103 with the CAIDs and locations of the merchants in Table 2, card processing server 109 can identify that the CAIDs of merchants "JC Day" and "J's Coffee Day" are the same, the CAIDs of merchants "JCD" and "John's Coffee Day" are the same, and the addresses of each of these merchants partially match the location of merchant 103. Card processing server 109 can correlate this information to infer that the registered name of each of these merchants is "John's Coffee Day" and that each transaction record belongs to the same merchant location, "1, Harbourfront, Walk Vivo City 56043." Furthermore, in this example, there are four remote terminals 105 at this merchant location, two of which are associated with CAID "12345" and two others are associated with CAID "12356." Thereafter, the card processing server 109 can consider any future transactions using the merchant name "JCD," "JC Day," "J's Coffee Day," and other variations of "John's Coffee Day," which in turn helps in performing accurate analysis.
[0082] Figure 3A flowchart illustrating a method 300 for determining a merchant location in real time using a virtual card according to some non-limiting embodiments or aspects of the present disclosure is shown. The order in which the method 300 is described is not intended to be construed as a limitation, and any number of the described method blocks can be combined in any order to implement the method 300. Additionally, individual blocks can be deleted from the method without departing from the spirit and scope of the subject matter described herein. Furthermore, the method 300 can be implemented in any suitable hardware, software, firmware, or a combination thereof.
[0083] At block 301, the method 300 may include receiving, by the processor 113 of the card processing server 109, test transaction data from the acquirer bank 107 of the merchant 103. In some non-limiting embodiments or aspects, the acquirer bank 107 may receive the test transaction data from the merchant's remote terminal 105 in response to a test transaction initiated via a virtual card 101 provided to the merchant 103.
[0084] At block 303 , the method 300 may include detecting, by the processor 113 , in real time, a record of a test transaction in a transaction database 111 associated with the card processing server 109 using one or more attributes of the virtual card 101 stored in the card processing server 109 .
[0085] At block 305 , method 300 may include retrieving, by processor 113 , signature data 205 from the test transaction data stored in transaction database 111 upon detecting the record of the test transaction.
[0086] At block 307, method 300 may include determining, by processor 113, transaction source data 207 for the merchant based on the signature data. Transaction source data 207 includes the location of merchant 103 that initiated the test transaction and the registered name of merchant 103. In some non-limiting embodiments or aspects, processor 113 may determine transaction source data 207 by comparing at least one of the CAID of merchant 103, a partial geographic location of merchant 103, and the merchant name with transaction data stored in transaction database 111, and extracting, based on the comparison, records of one or more transactions that produce one of an exact match or a partial match. The extracted records of the one or more transactions may be further correlated with signature data 205 to determine transaction source data 207.
[0087] By issuing a virtual card 101 for each merchant, the present disclosure eliminates the need for a representative to personally visit each merchant 103 location to perform a test transaction. After initiating a test transaction using the virtual card 101, since the card processing server 109 already knows one or more attributes associated with the virtual card 101, the card processing server 109 detects a record of the test transaction in the transaction database 111 and extracts signature data 205 from the test transaction data in real time. This enables the card processing server 109 to compare and correlate signature data 205 with the transaction data in the transaction database 111 to determine the transaction source data in real time. Thus, the present disclosure enables time-efficient, reliable, and dynamic determination of a merchant 103's transaction source data without the hassle of personally visiting each store. This, in turn, facilitates efficient and accurate data analysis for a variety of applications, such as peer detection, setting up loyalty offers and discounts, detecting fraudulent merchants, MCC fee compliance, and managing transaction-related disputes.
[0088] Figure 4 A block diagram of an exemplary computer system 400 for implementing non-limiting embodiments or aspects of the present disclosure is shown. In some non-limiting embodiments or aspects, the computer system 400 may be a card processing server 109 for determining merchant locations in real time using a virtual card 101. The computer system 400 may include a central processing unit ("CPU" or "processor") 402. The processor 402 may include at least one data processor for executing program components for executing user- or system-generated business processes. The user may include an individual, an individual using a device (such as the devices included in the present disclosure), or such a device itself. The processor 402 may include a special-purpose processing unit, such as an integrated system (bus) controller, a memory management control unit, a floating point unit, a graphics processing unit, a digital signal processing unit, and the like.
[0089] The processor 402 may be arranged to communicate with an input device 411 and an output device 412 via the I / O interface 401. The I / O interface 401 may employ communication protocols / methods such as, but not limited to, audio, analog, digital, stereo, IEEE-1394, serial bus, Universal Serial Bus (USB), infrared, PS / 2, BNC, coaxial, component, composite, digital video interface (DVI), high-definition multimedia interface (HDMI), radio frequency (RF) antenna, S-Video, video graphics array (VGA), IEEE 802.n / b / g / n / x, Bluetooth, cellular (e.g., code division multiple access (CDMA), high-speed packet access (HSPA+), global system for mobile communications (GSM), long term evolution (LTE), etc.
[0090] Using I / O interface 401 , computer system 400 can communicate with input device 411 and output device 412 .
[0091] In some non-limiting embodiments or aspects, the processor 402 can be arranged to communicate with the communication network 409 via a network interface 403. The network interface 403 can communicate with the communication network 409. The network interface 403 can employ connection protocols including, but not limited to, direct connection, Ethernet (e.g., twisted pair 10 / 100 / 1000Base T), Transmission Control Protocol / Internet Protocol (TCP / IP), Token Ring, IEEE 802.11a / b / g / n / x, and the like. Using the network interface 403 and the communication network 409, the computer system 400 can communicate with the transaction database 115 and the acquiring bank 107. In some non-limiting embodiments or aspects, the computer system 400 can communicate with multiple remote terminals 1051 to 105 in parallel. The communication network 409 can be implemented as one of various types of networks, such as an intranet or local area network (LAN), a closed area network (CAN), and the like. The communication network 409 may be a dedicated network or a shared network, which represents an association of different types of networks that communicate with each other using various protocols, such as Hypertext Transfer Protocol (HTTP), Transmission Control Protocol / Internet Protocol (TCP / IP), Wireless Application Protocol (WAP), etc. In addition, the communication network 409 may include various network devices, including routers, bridges, servers, computing devices, storage devices, etc. In some non-limiting embodiments or aspects, the processor 402 may be arranged to communicate with the memory 405 (e.g., via the storage interface 404). Figure 4 The storage interface 404 can communicate with the memory 405 (RAM, ROM, etc. not shown) using connection protocols such as Serial Advanced Technology Attachment (SATA), Integrated Drive Electronics (IDE), IEEE-1394, Universal Serial Bus (USB), Fibre Channel, Small Computer System Interface (SCSI), etc., including but not limited to memory drives, removable optical drives, etc. The memory drive may also include a drum, a magnetic disk drive, a magneto-optical disk drive, an optical disk drive, a redundant array of independent disks (RAID), a solid-state memory device, a solid-state drive, etc.
[0092] The memory 405 may store a collection of program or database components, including but not limited to a user interface 406, an operating system 407, a web browser 408, etc. In some non-limiting embodiments or aspects, the computer system 400 may store user / application data, such as data, variables, records, etc. described in the present disclosure. Such a database may be implemented as a fault-tolerant, relational, scalable, secure database, such as Oracle or Sybase.
[0093] Operating system 407 can facilitate resource management and operation of computer system 400. Examples of operating systems include, but are not limited to, OS UNIX-like system distributions (e.g., BERKELEY SOFTWARE (BSD), OPENBSD, etc.), DISTRIBUTIONS (e.g., RED wait), OS / ( / 7 / 8, 10, etc.), GOOGLE TM Android TM 、 OS, etc. The user interface 406 can facilitate the display, execution, interaction, manipulation or operation of program components through text and / or graphical tools. For example, the user interface can provide computer interactive interface elements such as cursors, icons, check boxes, menus, scroll bars, windows, widgets, etc. on a display system operatively connected to the computer system 400. Graphical user interfaces (GUIs) can be used, including but not limited to Operating system OS / (e.g., Aero, Metro, etc.), network interface libraries (e.g., AJAX, HTML, etc.
[0094] In some non-limiting embodiments or aspects, the computer system 400 may implement a program component that stores a web browser 408. The web browser 408 may be a hypertext viewing application, such as INTERNET CHROME TM 、 etc. Secure web browsing can be provided using Hypertext Transfer Protocol Secure (HTTPS), Secure Sockets Layer (SSL), Transport Layer Security (TLS), etc. The web browser 408 can utilize, for example, AJAX, DHTML, Application Programming Interface (API) and other tools. In some non-limiting embodiments or aspects, the computer system 400 may implement a program component that stores a mail server. The mail server may be an Internet mail server, such as Exchange, etc. Mail servers can use, for example, Active Server Pages (ASP), C++ / C#, .NET、CGI SCRIPTS、 PHP, Mail servers can use tools such as Internet Message Access Protocol (IMAP), Messaging Application Programming Interface (MAPI), Exchange, Post Office Protocol (POP), Simple Mail Transfer Protocol (SMTP), and other communication protocols. In some non-limiting embodiments or aspects, the computer system 400 may implement a program component storing a mail client. The mail client may be a mail viewing application, such as MAIL, wait.
[0095] In addition, one or more computer-readable storage media can be used to implement embodiments consistent with the present disclosure. A computer-readable storage medium refers to any type of physical memory that can store information or data that can be read by a processor. Therefore, a computer-readable storage medium can store instructions executed by one or more processors, including instructions that cause the processor to perform steps or stages consistent with the embodiments described herein. The term "computer-readable medium" should be understood to include tangible items and does not include carrier waves and transient signals, for example, non-transient ones. Examples include random access memory (RAM), read-only memory (ROM), volatile memory, non-volatile memory, hard drives, compact disc (CD) ROM, digital video discs (DVD), flash drives, disks, and any other known physical storage media.
[0096] Unless expressly specified otherwise, the terms "an embodiment," "an embodiment," "multiple embodiments," "described embodiment," "described multiple embodiments," "one or more embodiments," "some non-limiting embodiments or aspects," and "one embodiment" mean "one or more (but not all) embodiments of the invention."
[0097] The description of an embodiment with several components in communication with each other does not imply that all of these components are required. Rather, various optional components are described to illustrate the various possible embodiments of the present disclosure.
[0098] Unless expressly specified otherwise, the terms "including, including, comprising," "having," and variations thereof mean "including but not limited to." Unless expressly specified otherwise, an enumerated list of items does not mean that any or all of the items are mutually exclusive. Unless expressly specified otherwise, the terms "a," "an," and "the" mean "one or more." The description of some non-limiting embodiments or aspects with several components in communication with each other does not mean that all of these components are required. Instead, various optional components are described to illustrate various possible embodiments of the present disclosure.
[0099] Figure 3 The illustrated operations illustrate certain events that occur in a certain order. In alternative embodiments, certain operations may be performed, modified, or removed in a different order. Additionally, steps may be added to the logic described above and still conform to the described embodiments. Additionally, the operations described herein may be performed sequentially, or certain operations may be processed in parallel. However, the operations may be performed by a single processing unit or a distributed processing unit.
[0100] Finally, the language used in this specification is selected primarily for readability and didactic purposes, and is not selected to delineate or limit the subject matter of the present invention. It is therefore intended that the scope of the present disclosure be limited not by this detailed description, but by any claims that issue on applications based on this disclosure. Accordingly, the disclosure of the embodiments of the present disclosure is intended to be illustrative, not limiting, of the scope of the present disclosure, which is set forth in the appended claims.
[0101] While various aspects and embodiments have been disclosed herein, other aspects and embodiments will be apparent to those skilled in the art. The various aspects and embodiments disclosed herein are for purposes of illustration and are not intended to be limiting, with the true scope and spirit being indicated by the following claims.
Claims
1. A computer-implemented method comprising: receiving, with at least one processor of a card processing server, test transaction data from an acquirer bank of the merchant in response to a test transaction initiated by a merchant at a merchant terminal among a plurality of merchant terminals using a virtual card provided to the merchant, the virtual card comprising a plurality of attributes, wherein the plurality of attributes of the virtual card are stored in a memory of the card processing server, wherein the acquirer bank receives the test transaction data from a merchant terminal among the plurality of merchant terminals, and wherein the test transaction data includes at least a partial geographic location of the merchant terminal; storing, using at least one processor of the card processing server, the test transaction data including at least a portion of the geographic location of the merchant terminal as a test transaction record in a transaction database, the transaction database including a plurality of test transaction data records, the transaction database being associated with the card processing server; detecting, with at least one processor of the card processing server, a record of the test transaction in the transaction database associated with the card processing server using one or more of a plurality of attributes of the virtual card stored in a memory of the card processing server; in response to detecting the record of the test transaction, retrieving, with at least one processor of the card processing server, signature data from the test transaction data stored in the transaction database, wherein the signature data includes a second at least partial geographic location of the merchant terminal; comparing, with at least one processor of the card processing server, the second at least partial geographic location of the merchant terminal of the signature data with the at least partial geographic locations of the merchant terminals of the plurality of test transaction data records to identify at least one match; extracting, with at least one processor of the card processing server, at least one test transaction data record from the plurality of test transaction data records based on identifying the at least one match; determining, using at least one processor of the card processing server, transaction source data for the merchant based on the signature data, wherein the transaction source data includes a location of the merchant that initiated the test transaction and a registered name of the merchant; as well as The transaction source data is transmitted to at least one other device via an I / O interface of the card processing server using at least one processor of the card processing server.
2. The computer-implemented method of claim 1 , wherein the test transaction data is received by the card processing server when the acquirer bank authorizes the test transaction initiated via the virtual card.
3. The computer-implemented method of claim 1 , wherein the test transaction data and the signature data include at least one of: virtual card data, a bank identification number (BIN), a card acceptor identifier (CAID) of the merchant, a merchant name, a merchant category code (MCC), a primary account number (PAN) used in the test transaction, a partial geographic location of the merchant, a merchant ID, a store ID of the merchant, a transaction amount, a transaction date, an authentication code, or any combination thereof.
4. The computer-implemented method of claim 3, wherein the plurality of attributes of the virtual card comprises at least one of: a virtual card number, a cardholder's name, a virtual card verification value, an expiration date of the virtual card, a purpose of the virtual card, or any combination thereof.
5. The computer-implemented method of claim 1, wherein the test transaction is initiated while the virtual card is communicatively interfaced with the merchant terminal.
6. The computer-implemented method of claim 1 , wherein determining the transaction source data and the registered name of the merchant comprises: comparing, with at least one processor of the card processing server, at least one of a merchant name of the signed data and a card acceptor identifier (CAID) of the merchant of the signed data with transaction data stored in the transaction database; extracting, using at least one processor of the card processing server, records of one or more transactions from the transaction data based on the comparing, wherein the extracted records of the one or more transactions fully match or partially match at least one of the merchant name of the signature data used for the comparing and the CAID of the merchant of the signature data; as well as Each of the extracted records of the one or more transactions is correlated with the signature data of the merchant to determine the transaction source data using at least one processor of the card processing server.
7. A card processing server comprising: at least one processor; as well as a memory communicatively coupled to the at least one processor, wherein the memory stores processor-executable instructions that, when executed, cause the at least one processor to: receiving test transaction data from an acquirer bank of the merchant in response to a test transaction initiated by a merchant at a merchant terminal among a plurality of merchant terminals using a virtual card provided to the merchant, the virtual card including a plurality of attributes, wherein the plurality of attributes of the virtual card are stored in a memory of the card processing server, wherein the acquirer bank receives the test transaction data from a merchant terminal among the plurality of merchant terminals, and wherein the test transaction data includes at least a partial geographic location of the merchant terminal; storing the test transaction data including at least a partial geographic location of the merchant terminal as a test transaction record in a transaction database, the transaction database including a plurality of test transaction data records, the transaction database being associated with the card processing server; detecting a record of the test transaction in a transaction database associated with the card processing server using one or more of a plurality of attributes of the virtual card stored in a memory of the card processing server; responsive to detecting the record of the test transaction, retrieving signature data from the test transaction data stored in the transaction database, wherein the signature data includes a second at least partial geographic location of the merchant terminal; comparing the second at least partial geographic location of the merchant terminal of the signature data with the at least partial geographic locations of the merchant terminals of the plurality of test transaction data records to identify at least one match; extracting at least one test transaction data record from the plurality of test transaction data records based on identifying the at least one match; determining transaction source data of the merchant based on the signature data, wherein the transaction source data includes a location of the merchant that initiated the test transaction and a registered name of the merchant, and The transaction source data is transmitted to at least one other device through an I / O interface of the card processing server.
8. The card processing server of claim 7, wherein the test transaction data is received by the card processing server when the acquirer bank authorizes the test transaction initiated through the virtual card.
9. The card processing server of claim 7 , wherein the test transaction data and the signature data include at least one of: virtual card data, a bank identification number (BIN), a card acceptor identifier (CAID) of the merchant, a merchant name, a merchant category code (MCC), a primary account number (PAN) used in the test transaction, a partial geographic location of the merchant, a merchant ID, a store ID of the merchant, a transaction amount, a transaction date, an authentication code, or any combination thereof.
10. The card processing server of claim 9, wherein the plurality of attributes of the virtual card include at least one of the following: a virtual card number, a cardholder's name, a virtual card verification value, an expiration date of the virtual card, a purpose of the virtual card, or any combination thereof.
11. The card processing server of claim 7, wherein the at least one processor initiates the test transaction when the virtual card is communicatively interfaced with the merchant terminal.
12. The card processing server of claim 7 , wherein the at least one processor determines the transaction source data and the registered name of the merchant by: comparing, with at least one processor, at least one of a merchant name of the signed data and a card acceptor identifier (CAID) of the merchant of the signed data with transaction data stored in the transaction database; extracting, with at least one processor, records of one or more transactions from the transaction data based on the comparing, wherein the extracted records of the one or more transactions fully or partially match at least one of the merchant name of the signature data used for the comparing and the CAID of the merchant of the signature data; as well as Each of the extracted records of the one or more transactions is correlated with the signature data of the merchant to determine the transaction source data using at least one processor.
13. A non-transitory computer-readable medium comprising instructions stored thereon that, when processed by at least one processor, cause a card processing server to: receiving test transaction data from an acquirer bank of the merchant in response to a test transaction initiated by a merchant at a merchant terminal among a plurality of merchant terminals using a virtual card provided to the merchant, the virtual card including a plurality of attributes, wherein the plurality of attributes of the virtual card are stored in a memory of the card processing server, wherein the acquirer bank receives the test transaction data from a merchant terminal among the plurality of merchant terminals, and wherein the test transaction data includes at least a partial geographic location of the merchant terminal; storing the test transaction data including at least a partial geographic location of the merchant terminal as a test transaction record in a transaction database, the transaction database including a plurality of test transaction data records, the transaction database being associated with the card processing server; detecting a record of the test transaction in a transaction database associated with the card processing server using one or more of a plurality of attributes of the virtual card stored in a memory of the card processing server; responsive to detecting the record of the test transaction, retrieving signature data from the test transaction data stored in the transaction database, wherein the signature data includes a second at least partial geographic location of the merchant terminal; comparing the second at least partial geographic location of the merchant terminal of the signature data with the at least partial geographic locations of the merchant terminals of the plurality of test transaction data records to identify at least one match; extracting at least one test transaction data record from the plurality of test transaction data records based on identifying the at least one match; determining transaction source data of the merchant based on the signature data, wherein the transaction source data includes a location of the merchant that initiated the test transaction and a registered name of the merchant; as well as The transaction source data is transmitted to at least one other device through an I / O interface of the card processing server.
14. The non-transitory computer-readable medium of claim 13, wherein the test transaction data and the signature data comprise at least one of: virtual card data, a bank identification number (BIN), a card acceptor identifier (CAID) of the merchant, a merchant name, a merchant category code (MCC), a primary account number (PAN) used in the test transaction, a partial geographic location of the merchant, a merchant ID, a store ID of the merchant, a transaction amount, a transaction date, an authentication code, or any combination thereof.
15. The non-transitory computer-readable medium of claim 14, wherein the plurality of attributes of the virtual card include at least one of: a virtual card number, a cardholder's name, a virtual card verification value, an expiration date of the virtual card, a purpose of the virtual card, or any combination thereof.
16. The non-transitory computer-readable medium of claim 13, wherein the test transaction is initiated while the virtual card is communicatively interfaced with the merchant terminal.
17. The non-transitory computer-readable medium of claim 13, wherein when determining the transaction source data and the registered name of the merchant, the instructions cause the at least one processor to: comparing at least one of a merchant name of the signed data and a card acceptor identifier (CAID) of the merchant of the signed data with the test transaction data stored in the transaction database; extracting records of one or more transactions from the transaction data based on the comparing, wherein the extracted records of the one or more transactions fully or partially match at least one of the merchant name of the signature data used for the comparing and the CAID of the merchant of the signature data; and Each of the extracted records of the one or more transactions is correlated with the signature data of the merchant to determine the transaction source data.
Citation Information
Patent Citations
Token based transaction authentication
US20130232079A1