The present disclosure relates generally to financial services systems, and relates, more particularly, to account management through payment processors of the financial services systems.
The financial services industry provides a plethora of financial services to consumer accounts for managing their finances and engaging in financial transactions with retailers and service providers. Consumer accounts may hold funds within many different types of accounts at many different types of financial institutions. Consumer accounts may access the funds held in the accounts using many different types of cards, including credit cards, debit cards, gift cards, and other types of cards based on the particular type of account associated with the card. The cards may be issued from financial institutions, such as banks, credit unions, savings & loans, and brokerage institutions.
A payment processor (or issuer payment processor) is a company that handles transactions for one or more financial institutions. Many payment processors have connections to various card associations and supply authorization and settlement services to the financial institutions. Several payment processors facilitate the creation of accounts at the financial institutions, as well as the movement of funds between payment processors and financial institutions. Payment processors verify aspects of proposed transactions. Once a payment processor has received confirmation or denial of the verification, the information can be relayed to the financial institution that can then complete or invalidate the payment transaction accordingly.
Systems and methods for creating accounts at a plurality of payment processors in accordance with embodiments of the invention are illustrated. One embodiment includes a method that receives a first request to create a new account, and identifies a payment processor of the plurality of payment processors to handle the first request. The method determines whether a proxy for the new account exists in a local storage and sends a second request to the identified payment processor to create the new account, where the second request includes the proxy when the proxy for the new account exists.
In another embodiment, the new account is for a prepaid card.
In a further embodiment, the method identifies the payment processor by determining capabilities of each payment processor of the plurality of payment processors and identifies the payment processor based on the determined capabilities.
In still another embodiment, the capabilities of each payment processor includes a number of transactions per second that the payment processor can handle.
In a still further embodiment, the account information includes an account number.
In yet another embodiment, upon determining that the proxy does not exist, the method retrieves account information for the new account in response to the second request, and provides the retrieved account information in response to the first request.
In a yet further embodiment, the method includes providing the proxy in response to the first request prior to sending the second request to the identified payment processor.
In another additional embodiment, the method receives a third request to perform a multi-part transaction between a plurality of accounts managed by a virtual payment processor, wherein the third request comprises a first part with a first account of the plurality of accounts and a second part with a second account of the plurality of accounts. The method performs the first part of the multi-part transaction, determines whether the second part has completed successfully. Upon determining that the second part has not completed successfully, the method rolls back the first part of the multi-part transaction.
In a further additional embodiment, upon determining that the second part has not completed successfully, the method suppresses validations at a payment processor associated with the first account.
Additional embodiments and features are set forth in part in the description that follows, and in part will become apparent to those skilled in the art upon examination of the specification or may be learned by the practice of the invention. A further understanding of the nature and advantages of the present invention may be realized by reference to the remaining portions of the specification and the drawings, which forms a part of this disclosure.
Turning now to the drawings, systems and methods for managing transactions and accounts in an account servicing system in accordance with embodiments of the invention are disclosed. In many cases, a consumer (or other user) desires to create an account or to perform a set of transactions with one or more financial institutions. Although many of the examples described below are described with reference to prepaid cards, accounts in accordance with many embodiments of the inventions can include accounts for a variety of uses, including (but not limited to) credit cards, gift cards, online accounts, and virtual wallets.
Prepaid cards allow consumer accounts to load funds onto their account at a variety of participating locations, such as retailers. Funds can be loaded onto a prepaid card (i.e. deposited into an account associated with the prepaid card) through various mechanisms, including direct-deposit, check deposit, wire transfers, online deposits, cash deposits, and any other techniques as applicable to the requirements of specific embodiments of the invention. Consumer accounts can then use the prepaid cards in a manner similar to traditional debit and/or credit cards to purchase goods using the funds that have been loaded onto the account.
Account Servicing Systems
Conducting financial transactions can involve communication between many different parties, such as (but not limited to) banks, processors, credit issuers, regulators, retailers, and consumer accounts. Financial transactions can include any of a variety of actions in which funds are being exchanged between a parties, such as (but not limited to) a debits, credits, and transfers. For example, a consumer account may initiate a purchase at a point-of-sale terminal of a retailer. The retailer may track certain information for the consumer account, including the items being purchased and the total purchase price and may send this information to a merchant payment processor associated with the merchant's financial institution. In some cases, the merchant payment processor can communicate with issuer payment processors that manage the consumer accounts for several issuers (e.g., financial institutions such as banks, credit cards, and credit unions) of the card in order to process the transaction.
A conceptual illustration of an account servicing system for managing accounts through a set of issuer payment processors is illustrated in
Consumers can interact with merchant systems in a variety of ways, including (but not limited to) purchasing a pre-paid card from a merchant to create a new account, reloading a card to add funds to an existing account, transferring funds between an account and another account, as well as making purchases of goods and/or services from a merchant using funds from a consumer's account (e.g., through a credit card, gift card, mobile app, etc.). Merchant systems can include point of sale terminals, merchant databases, and inventory systems, which can collect and store various data related to purchases made by consumers. In a variety of embodiments, merchant systems obtain various data from a number of point of sale terminals and transmit the transaction data to a virtual issuer payment processor, other issuer payment processors, and/or directly to issuers.
In many cases, the networks allow a merchant processor to communicate with issuer payment processors of a number of different issuers. In many cases, merchant systems can communicate with a network 115, such as (but not limited to) a card association, through a third party merchant processor 112, which handles the transactions between a merchant's bank and a variety of issuers (such as, but not limited to, banks, credit card companies, and credit unions) associated with the consumers. In some cases, consumers do not work directly with merchants, but initiate account services with an issuer payment processor (or virtual payment processor) through other channels, such as (but not limited to) the Internet.
In some embodiments, consumers can use client devices 105 (e.g., via a mobile app and/or website) to interact directly with their account to add, withdraw, and/or transfer funds from their account, as well as any other transactions or operations as appropriate to the requirements of specific applications of embodiments of the invention.
In a number of embodiments, client devices include a software application that a consumer can sign on to in order to associate a particular consumer account with a client device. In some embodiments, consumers can process their transactions (such as, but not limited to purchases, fund loads, and fund transfers) through a payment gateway 107 for Internet based interactions.
In several embodiments, merchant payment processors and/or payment gateways can communicate with issuer payment processors 120-125 to manage accounts at issuers 130 and to facilitate the execution of transactions between consumer accounts and merchant systems. Issuer payment processors in accordance with many embodiments of the invention provide services for creating and managing accounts (e.g., for prepaid cards) via a number of account management processes as appropriate to the requirements of specific applications of embodiments of the invention. Issuer payment processors can obtain account data for a consumer from a financial system, a merchant payment processor, and/or from a client device.
Issuer payment processors 125 in accordance with a number of embodiments of the invention can process transactions on behalf of issuers 130. Issuers 130 in accordance with a number of embodiments include financial accounts for one or more entities. These financial accounts hold funds on behalf of consumers (or other entities) and can transfer the funds to retailer systems, payment processors, account servicing server systems, or any other system as appropriate to the requirements of specific applications of embodiments of the invention. Issuers (or financial institutions) in accordance with several embodiments of the invention can include (but are not limited to) retailer systems, card issuers, banks and credit unions. In many embodiments, prepaid cards serviced by the account servicing server system are associated with a particular issuer payment processor. In many embodiments, issuers 130 incorporate some or all aspects of the issuer payment processors 125. In this way, issuers can issue, service, and/or approve transactions related to various accounts.
In certain embodiments, client device 120 can communicate (e.g., over the Internet) with a virtual issuer payment processor 120 to manage their account. Client devices in accordance with some embodiments of the invention can initiate requests to create new accounts, transfer funds between accounts, and any other transactions or operations as appropriate to the requirements of specific applications of embodiments of the invention. In some embodiments, virtual issuer payment processor 120 handles requests for a set of issuer payment processors 125 in order to abstract away the various issue processors of the various issuers.
In some embodiments, virtual issuer payment processors operate as a cloud service that interacts with merchant payment processors and payment gateways through an application programming interface (API). Virtual issuer payment processors can act as a single issuer payment processor, providing a single point of access, while maintaining the ability to create an account on one of multiple issuer payment processors. Virtual issuer payment processors can then provide greater flexibility in creating accounts and distributing transactions between the issuer payment processors. The selection of a particular issuer payment processor at which to create an account can be made based on a variety of factors, including (but not limited to) a transaction cost for the processor, characteristics of a consumer, a number of accounts currently active at the processor, a historic activity level at the processor, and/or a capacity of the processor.
In a variety of embodiments, virtual issuer payment processor 120 issues prepaid cards for consumers. Virtual issuer payment processors in accordance with many embodiments of the invention can allow a consumer to create prepaid cards that are associated with one of a variety of issuer payment processors. In some embodiments, virtual payment processors can provide a transaction interface that can be utilized to process transaction data. The transaction data can be obtained from any system, including the retailer system. In a number of embodiments, the virtual issuer payment processor 120 processes transactions for prepaid cards (or any other account) issued by (or otherwise associated with) one of the issuer payment processors 125.
Virtual issuer payment processors in accordance with some embodiments determine whether a transaction should be validated, either directly or through a separate validation service. Validation in accordance with several embodiments of the invention includes determining whether a request exceeds limit rules for an account (e.g., how much money can be transferred to/from the account), verifying that an account is in compliance with various regulatory and/or business rules (e.g., policies of the Office of Foreign Asset Control (OFAC), Customer Identification Program (CIP) rules, etc.). If a transaction is validated, funds drawn from an account associated with the prepaid card are directed to be transferred to an account associated with the retailer identified in the transaction. The transfer of funds can include transmitting requests to one or more issuers and/or an issuer payment processor in order to execute the requested transaction. In several embodiments, if the transaction is not validated, virtual issuer payment processor 120 can request additional information from a merchant processor and/or a payment gateway. This additional information can then be utilized to re-process the transaction, potentially resulting in the transaction being validated.
In some cases, a transaction can be made up of multiple transactions. For example, in the case of a transfer of funds between a first and second account, the transfer can include a first transaction to deduct funds from the first account and a second transaction to add funds to the second account. In this example, a transfer is conducted between two accounts, but transfers can include transactions between any number of accounts for a single user. In some embodiments, virtual issuer payment processors can perform multiple actions (e.g., during a transfer between a first and second account) as a single atomic transaction, which cannot be partially performed (e.g., deducting funds from the first account without adding funds to the second account), but rather is either completely performed or not performed at all. Systems in accordance with many embodiments of the invention look for transactions that appear to have gone bad, and reverses them to ensure that the consumer accounts are rolled back to the state they were in before the transaction was attempted. In several embodiments, a system identifies transactions that may have gone bad or failed by identifying transactions that have been in a PENDING state for longer than a threshold amount of time (e.g., 5 minutes). Systems in accordance with numerous embodiments of the invention can determine that a transaction has failed after a threshold number of retries have failed. In a number of embodiments, systems can gradually increase the rollback re-try interval based on a re-try counter to ensure that if there is a systemic failure (e.g., if a processor is completely down), the system does not overload itself with retries.
When a transfer is to be rolled back, systems in accordance with certain embodiments of the invention suppress validations to ensure a guaranteed rollback. For example, if other transactions have occurred, limit rules (e.g., restrictions on the amount of funds that can be added or withdrawn from an account) should not block the rollback from happening. In some cases, a transaction can be put into a HOLD state, where a transfer has been initiated, but the receiver of the transfer has not accepted the transfer. In a number of embodiments, systems can also expire HOLD transfers that have not been claimed after a threshold period of time (e.g., 7 days). In such cases, systems in accordance with many embodiments of the invention do not suppress validations and notifications. A process for rolling back transactions is described in greater detail below with reference to
Although a specific architecture of an account servicing system in accordance with embodiments of the invention are discussed above and illustrated in
Account Servicing Server Systems
As described above, virtual payment processor systems can provide a variety of services for prepaid cards. A virtual payment processor system in accordance with an embodiment of the invention is conceptually illustrated in
Virtual payment processor application 232 directs the processor 210 to perform a variety of account servicing processes. The account servicing processes include, but are not limited to, creating new consumer accounts and processing financial transactions for a consumer account, including reconciliation of debits and credits applied to a consumer account's account. In many embodiments, virtual payment processor applications filter incoming requests that are directed to one of a group of payment processors to prevent duplicate requests from being sent to the payment processors. Duplicate requests can be triggered at a client device that uses an intelligent short circuit process to timeout the requests so that the client device can continue to be responsive to consumer, while waiting for a response from the payment processors.
It can be difficult to support multiple simultaneous client's requests to create accounts or to transfer money among accounts. Virtual payment processors in accordance with a number of embodiments of the invention distribute requests for the payment processors (e.g., requests to create new accounts) between the payment processors based on a variety of factors, including (but not limited to) a transaction cost for each processor, characteristics of a consumer, a number of accounts currently active at each processor, a historic activity level at each processor, and/or a capacity of each processor.
For example, in many cases, payment processors can be limited in the number of transactions per second (TPS) they are able to handle at a given time. Systems and methods in accordance with a variety of embodiments of the invention can distribute load among multiple payment processors based on a processor's capacity. For example, if a client has a requirement to support 1000 TPS, processor p1 can support only 400 TPS and processor p2 can support only 600 TPS. Virtual processor can then route 40% of create account requests to p1 and 60% to p2.
In many embodiments, virtual payment processors use various sets of data including (but not limited to) processor data, business rule data, and historic account data. Processor data 234 can include a variety of information related with each of the payment processors associated with a virtual payment processor system. Processor data in accordance with a number of embodiments of the invention includes a cost per transaction, a capacity (e.g., a number of transactions that can be processed by the payment processor), and an expected response time for each payment processor. Historic account data 236 can describe the consumer account's account including, but not limited to, reload activity, balance activity, and location data, consumer account profile data, demographic data, employment information, credit status, income, mailing address, and/or any other consumer account pertinent information. Account data can include data received from a variety of different sources, including (but not limited to) retailers, payment processor systems, financial institution systems, and any other of a variety of other sources.
Although a specific architecture for an account servicing server system in accordance with an embodiment of the invention is conceptually illustrated in
Creating Consumer Accounts
In a number of embodiments, virtual processor systems are used to create new consumer accounts, such as (but not limited to) accounts for prepaid cards, credit cards, debit cards, virtual accounts, and gift cards. Systems, methods, and computer program products in accordance with a variety of embodiments of the invention can optimize routing of creation of digital accounts on multiple pre-paid processors by determining routing on a per-account, transaction basis based on one or more routing rules. In a number of embodiments, routing rules can take into account a variety of factors such as, but not limited to, cost of account maintenance, processor transactions per seconds capacity. Processes for creating new accounts in accordance with several embodiments of the invention are performed through virtual processor systems that communicate with a set of issuer payment processors. A process for creating new accounts through issuer payment processors is illustrated in
The process 300 receives (305) a request from a client to create a new account. Clients can include (but are not limited to) merchant PoS terminals, mobile applications, and websites. Requests can include a variety of information, including (but not limited to) information about a consumer to be associated with the card, information about the account set up, and/or information about a merchant or retailer that initiated the request for the new account. Such information can include (but is not limited to) credit scores, credit history, pre-load amounts, geographic locations, a number of previous requests for new accounts, and/or an amount of funds that have been loaded into other new accounts. In many embodiments, the requests for a new account are initially validated and/or authorized (e.g., based on the consumer and/or merchant information) before they are received by a virtual payment processor.
In several embodiments, the process determines (310) whether the request is a duplicate request. Duplicate requests can result when a source resends a request (e.g., after an initial request times out). When the process determines (310) that the request is a duplicate request, the process determines whether a response has been received for the request from the payment processor. When no response has been received, the process disregards the request and waits to receive a new request. Alternatively, in certain embodiments, the process responds to the client with a request to retry the request. Clients in accordance with many such embodiments can make a decision of how long to wait before retrying the request. When the process determines (312) that a response has been received for the request, the process provides (335) the requested information to the requestor. Providing a response to the requestor is described in further detail below.
When the process determines (310) that the request is not a duplicate request, the process identifies (315) a processor to handle the request. In many embodiments, processors are identified from a group of processors based on a set of factors, including (but not limited to) a number of accounts currently active with each processor, a historic usage rate for each processor, a cost associated with the use of each processor, a capacity of each processor, and/or characteristics of a user associated with the new account (e.g., income, reload amount, geographic location, etc.).
The process in accordance with certain embodiments of the invention determines (320) whether a proxy for a new account is currently available in inventory. The inventory acts as a sort of cache, in which a group of proxies are collected from each of one or more processors. Each proxy can be associated with an account that has been initialized at the associated processor. When the process determines (320) that a proxy is available, the process retrieves (325) account information from an associated processor that is associated with the available proxy. Account information in accordance with several embodiments of the invention includes a primary account number (PAN) and/or other account characteristics, such as, but not limited to, account benefits, interest rates, and/or account limits. When the process determines (320) that a proxy is not available, the process retrieves (330) a new proxy with account information from the identified processor. In certain embodiments, when a proxy is not available, the process retrieves a set of proxies for new accounts to be stored in the inventory.
The process provides (335) the proxy and retrieved account information to the client that initiated the request. Clients in accordance with many embodiments use a proxy and associated account information to initialize a card (e.g., a pre-paid card), and to associate the card with the newly created account. In many embodiments, consumers can use such cards to transfer funds, withdraw funds, make purchases at various retailers, and/or to add additional funds to the associated account.
Specific process for creating new consumer accounts in accordance with embodiments of the invention are described above; however, one skilled in the art will recognize that any number of processes can be utilized as appropriate to the requirements of specific applications in accordance with embodiments of the invention.
Transferring Funds
A process for transferring funds through processors is shown in
The process routes (415) a request to transfer funds to the identified processor. In many embodiments, requests can be modified or recreated to conform to a format dictated by each particular processor. The process receives (420) updated account information. Updated account information in accordance with several embodiments of the invention includes (but is not limited to) updated account balances and/or error notifications.
In some cases, transferring funds can include multiple parts, or a series of transfers, that make up a single transaction, which need to be either performed as a single unit, or should not be performed at all. A process for rolling back transactions is conceptually illustrated with reference to
Process 500 then performs (505) a part of the multi-part transaction at a first issuer system. When process 500 determines (510) that the part of the of multi-part transaction has not failed, process 500 determines (520) whether there are more parts of the multi-part transaction. When process 500 determines that there are no remaining parts, the process ends. When process 500 determines that there are remaining parts, the process returns to step 510 to perform a next part of the multi-part transaction.
When process 500 determines (515) that a part of the multi-part transaction has failed, the process can suppress (525) validations and/or notifications at the issuers. In a number of embodiments, suppressing validations ensures that a rollback of the previously successful transactions are not rejected. Process 500 then rolls back (530) a successfully executed part of the multi-part transaction. Process 500 then determines (535) whether there are other successful portions of the multi-part transaction, and when it determines that there are more successful portions, process 500 returns to step 530 and rolls back the next successful portion. When process 500 determines that no more parts of the multi-part transaction remain, the process 500 ends.
Although the present invention has been described in certain specific aspects, many additional modifications and variations would be apparent to those skilled in the art. In particular, any of the various processes described above can be performed in alternative sequences and/or in parallel (on the same or on different computing devices) in order to achieve similar results in a manner that is more appropriate to the requirements of a specific application. It is therefore to be understood that the present invention can be practiced otherwise than specifically described without departing from the scope and spirit of the present invention. Thus, embodiments of the present invention should be considered in all respects as illustrative and not restrictive. Accordingly, the scope of the invention should be determined not by the embodiments illustrated, but by the appended claims and their equivalents.
The current application claims priority to U.S. Provisional Patent Application Ser. No. 62/562,246 filed Sep. 22, 2017, entitled “Systems and Methods for Managing Accounts in a Financial Services System”, the disclosure of which is incorporated by reference herein in its entirety.
Number | Name | Date | Kind |
---|---|---|---|
D42210 | Hoch | Feb 1912 | S |
4804984 | Heuer et al. | Feb 1989 | A |
4939662 | Nimura et al. | Jul 1990 | A |
5086394 | Shapira | Feb 1992 | A |
5320409 | Katoh et al. | Jun 1994 | A |
5740915 | Williams | Apr 1998 | A |
5754939 | Herz et al. | May 1998 | A |
5758313 | Shah et al. | May 1998 | A |
5760381 | Stich et al. | Jun 1998 | A |
5777305 | Smith et al. | Jul 1998 | A |
5842629 | Sprague et al. | Dec 1998 | A |
D411765 | Holihan | Jul 1999 | S |
5918909 | Fiala et al. | Jul 1999 | A |
5975302 | Young | Nov 1999 | A |
5984091 | Orr et al. | Nov 1999 | A |
6014090 | Rosen et al. | Jan 2000 | A |
6049711 | Ben-Yehezkel et al. | Apr 2000 | A |
6052122 | Sutcliffe et al. | Apr 2000 | A |
6061681 | Collins et al. | May 2000 | A |
6109439 | Goade, Sr. | Aug 2000 | A |
6112186 | Bergh et al. | Aug 2000 | A |
6185545 | Resnick et al. | Feb 2001 | B1 |
6208934 | Bechtolsheim et al. | Mar 2001 | B1 |
6224108 | Klure | May 2001 | B1 |
6272467 | Durand et al. | Aug 2001 | B1 |
6315206 | Hansen et al. | Nov 2001 | B1 |
6317718 | Fano | Nov 2001 | B1 |
6349829 | Matheis et al. | Feb 2002 | B1 |
6366568 | Bolgiano et al. | Apr 2002 | B1 |
6456854 | Chern et al. | Sep 2002 | B1 |
6457649 | Hileman | Oct 2002 | B1 |
6529136 | Cao et al. | Mar 2003 | B2 |
6529143 | Mikkola et al. | Mar 2003 | B2 |
6539232 | Hendrey | Mar 2003 | B2 |
6549768 | Fraccaroli | Apr 2003 | B1 |
6618593 | Drutman et al. | Sep 2003 | B1 |
6639905 | Müller et al. | Oct 2003 | B1 |
6687608 | Sugimoto et al. | Feb 2004 | B2 |
6732459 | Clark | May 2004 | B1 |
6819919 | Tanaka | Nov 2004 | B1 |
6925441 | Jones, III et al. | Aug 2005 | B1 |
6957737 | Frederickson et al. | Oct 2005 | B1 |
6965868 | Bednarek | Nov 2005 | B1 |
D512456 | Diaz | Dec 2005 | S |
7039423 | Daniel et al. | May 2006 | B2 |
7047030 | Forsyth | May 2006 | B2 |
7071842 | Brady, Jr. | Jul 2006 | B1 |
7082365 | Sheha et al. | Jul 2006 | B2 |
7111323 | Bhatia et al. | Sep 2006 | B1 |
D532452 | Heng | Nov 2006 | S |
7139731 | Alvin | Nov 2006 | B1 |
7203502 | Wilson et al. | Apr 2007 | B2 |
7203674 | Cohen | Apr 2007 | B2 |
7236799 | Wilson et al. | Jun 2007 | B2 |
7256711 | Sheha et al. | Aug 2007 | B2 |
7271742 | Sheha et al. | Sep 2007 | B2 |
7333820 | Sheha et al. | Feb 2008 | B2 |
7363027 | Hon et al. | Apr 2008 | B2 |
7392935 | Byrne | Jul 2008 | B2 |
7486958 | Sheha et al. | Feb 2009 | B2 |
7494056 | Sturm | Feb 2009 | B2 |
7565155 | Sheha et al. | Jul 2009 | B2 |
7593740 | Crowley et al. | Sep 2009 | B2 |
7634354 | Salmre | Dec 2009 | B2 |
7813741 | Hendrey et al. | Oct 2010 | B2 |
7840224 | Vengroff et al. | Nov 2010 | B2 |
7877082 | Eagle et al. | Jan 2011 | B2 |
7917154 | Fortescue et al. | Mar 2011 | B2 |
7978900 | Nepomniachtchi et al. | Jul 2011 | B2 |
8000726 | Altman et al. | Aug 2011 | B2 |
8023963 | Yonker et al. | Sep 2011 | B2 |
8086530 | Resnick et al. | Dec 2011 | B2 |
8099109 | Altman et al. | Jan 2012 | B2 |
8181789 | Casella | May 2012 | B1 |
8234214 | Templeton et al. | Jul 2012 | B2 |
8275699 | Shader et al. | Sep 2012 | B2 |
8352367 | Templeton et al. | Jan 2013 | B2 |
8401904 | Simakov | Mar 2013 | B1 |
8427942 | Kim et al. | Apr 2013 | B2 |
8660943 | Chirehdast | Feb 2014 | B1 |
8768838 | Hoffman | Jul 2014 | B1 |
8875990 | Bishop et al. | Nov 2014 | B2 |
8977568 | Schattauer et al. | Mar 2015 | B1 |
8989778 | Altman et al. | Mar 2015 | B2 |
9092767 | Andrews | Jul 2015 | B1 |
9710804 | Zhou | Jul 2017 | B2 |
9947004 | Shankar et al. | Apr 2018 | B2 |
10430788 | Driggs et al. | Oct 2019 | B2 |
10937088 | Streit et al. | Mar 2021 | B2 |
11216810 | Driggs et al. | Jan 2022 | B2 |
20010001321 | Resnick et al. | May 2001 | A1 |
20020052786 | Kim et al. | May 2002 | A1 |
20020077745 | Ohmura et al. | Jun 2002 | A1 |
20030016804 | Sheha et al. | Jan 2003 | A1 |
20030036848 | Sheha et al. | Feb 2003 | A1 |
20030055983 | Callegari | Mar 2003 | A1 |
20030060214 | Hendrey et al. | Mar 2003 | A1 |
20030061211 | Shultz et al. | Mar 2003 | A1 |
20030064705 | Desiderio | Apr 2003 | A1 |
20030078035 | Sheha et al. | Apr 2003 | A1 |
20030149527 | Sikila | Aug 2003 | A1 |
20030150762 | Biller | Aug 2003 | A1 |
20040030647 | Hansen | Feb 2004 | A1 |
20040054428 | Sheha et al. | Mar 2004 | A1 |
20040224703 | Takaki et al. | Nov 2004 | A1 |
20050021560 | Yoon et al. | Jan 2005 | A1 |
20050027543 | Labrou et al. | Feb 2005 | A1 |
20050032527 | Sheha et al. | Feb 2005 | A1 |
20050043060 | Brandenberg et al. | Feb 2005 | A1 |
20050044409 | Betz et al. | Feb 2005 | A1 |
20050054352 | Karaizman | Mar 2005 | A1 |
20050073443 | Sheha et al. | Apr 2005 | A1 |
20050075119 | Sheha et al. | Apr 2005 | A1 |
20050101300 | Hon et al. | May 2005 | A1 |
20050114527 | Hankey | May 2005 | A1 |
20050159996 | Lazarus | Jul 2005 | A1 |
20050166058 | Brokenshire et al. | Jul 2005 | A1 |
20050171898 | Bishop et al. | Aug 2005 | A1 |
20050197954 | Maitland et al. | Sep 2005 | A1 |
20050216337 | Roberts et al. | Sep 2005 | A1 |
20050250552 | Eagle | Nov 2005 | A1 |
20050268254 | Abramson et al. | Dec 2005 | A1 |
20050283620 | Khulusi et al. | Dec 2005 | A1 |
20050289340 | Camenisch | Dec 2005 | A1 |
20060027663 | Tang | Feb 2006 | A1 |
20060036364 | Matsuo et al. | Feb 2006 | A1 |
20060047825 | Steenstra et al. | Mar 2006 | A1 |
20060064346 | Steenstra et al. | Mar 2006 | A1 |
20060085443 | Pae | Apr 2006 | A1 |
20060089160 | Othmer | Apr 2006 | A1 |
20060186011 | Palmer | Aug 2006 | A1 |
20060223518 | Haney | Oct 2006 | A1 |
20060255154 | Newbrough et al. | Nov 2006 | A1 |
20060270419 | Crowley et al. | Nov 2006 | A1 |
20060278551 | Bianchini et al. | Dec 2006 | A1 |
20070050129 | Salmre | Mar 2007 | A1 |
20070112614 | Maga et al. | May 2007 | A1 |
20070150414 | Templeton et al. | Jun 2007 | A1 |
20070252009 | Kingsborough et al. | Nov 2007 | A1 |
20070253712 | Katagiri et al. | Nov 2007 | A1 |
20070278293 | Anderson et al. | Dec 2007 | A1 |
20070281689 | Altman et al. | Dec 2007 | A1 |
20070281690 | Altman et al. | Dec 2007 | A1 |
20080022382 | Bradbury et al. | Jan 2008 | A1 |
20080052182 | Marshall et al. | Feb 2008 | A1 |
20080082424 | Walton | Apr 2008 | A1 |
20080086414 | Ching | Apr 2008 | A1 |
20080091535 | Heiser | Apr 2008 | A1 |
20080103959 | Carroll et al. | May 2008 | A1 |
20080109358 | Kottmeier et al. | May 2008 | A1 |
20080132252 | Altman et al. | Jun 2008 | A1 |
20080133322 | Kalia et al. | Jun 2008 | A1 |
20080133336 | Altman et al. | Jun 2008 | A1 |
20080188246 | Sheha et al. | Aug 2008 | A1 |
20080195536 | Karns et al. | Aug 2008 | A1 |
20080208697 | Kargman | Aug 2008 | A1 |
20080227473 | Haney | Sep 2008 | A1 |
20080237317 | Rosendall | Oct 2008 | A1 |
20080270802 | Ashley | Oct 2008 | A1 |
20090063286 | Rodriguez Porras | Mar 2009 | A1 |
20090081989 | Wuhrer | Mar 2009 | A1 |
20090090783 | Killian et al. | Apr 2009 | A1 |
20090164366 | Blythe et al. | Jun 2009 | A1 |
20090177375 | Jung et al. | Jul 2009 | A1 |
20090254413 | Chang | Oct 2009 | A1 |
20090298481 | Hurst | Dec 2009 | A1 |
20100036770 | Fourez et al. | Feb 2010 | A1 |
20100106568 | Grimes | Apr 2010 | A1 |
20100106569 | Grimes | Apr 2010 | A1 |
20100106577 | Grimes | Apr 2010 | A1 |
20100106596 | Grimes | Apr 2010 | A1 |
20100106598 | Grimes | Apr 2010 | A1 |
20100211499 | Zanzot et al. | Aug 2010 | A1 |
20100240352 | Suri et al. | Sep 2010 | A1 |
20100306089 | Gelerman et al. | Dec 2010 | A1 |
20100318489 | De Barros et al. | Dec 2010 | A1 |
20110016048 | Lindqvist et al. | Jan 2011 | A1 |
20110029434 | Templeton et al. | Feb 2011 | A1 |
20110035284 | Moshfeghi | Feb 2011 | A1 |
20110047619 | King et al. | Feb 2011 | A1 |
20110051665 | Huang | Mar 2011 | A1 |
20110099082 | Walker et al. | Apr 2011 | A1 |
20110184840 | Godard et al. | Jul 2011 | A1 |
20110208550 | Lamarche et al. | Aug 2011 | A1 |
20110208612 | Shader et al. | Aug 2011 | A1 |
20110208641 | Shader et al. | Aug 2011 | A1 |
20110208642 | Shader et al. | Aug 2011 | A1 |
20110208643 | Shader et al. | Aug 2011 | A1 |
20110208649 | Shader et al. | Aug 2011 | A1 |
20110225063 | Grunski et al. | Sep 2011 | A1 |
20110251892 | Laracey | Oct 2011 | A1 |
20110258122 | Shader | Oct 2011 | A1 |
20110270661 | Heiser, II et al. | Nov 2011 | A1 |
20110270756 | Tullis et al. | Nov 2011 | A1 |
20110275388 | Haney | Nov 2011 | A1 |
20110276374 | Heiser, II et al. | Nov 2011 | A1 |
20110276474 | Portillo | Nov 2011 | A1 |
20110313926 | Templeton et al. | Dec 2011 | A1 |
20120005085 | Pitroda | Jan 2012 | A1 |
20120022971 | Morris | Jan 2012 | A1 |
20120066081 | Shader | Mar 2012 | A1 |
20120095909 | Resnick et al. | Apr 2012 | A1 |
20120136789 | Kendrick et al. | May 2012 | A1 |
20120136790 | Templeton et al. | May 2012 | A1 |
20120150605 | Isaacson et al. | Jun 2012 | A1 |
20120233069 | Bulawa et al. | Sep 2012 | A1 |
20120246019 | Wolfe | Sep 2012 | A1 |
20120292206 | Casella et al. | Nov 2012 | A1 |
20120296813 | Templeton et al. | Nov 2012 | A1 |
20120296814 | Templeton et al. | Nov 2012 | A1 |
20120310833 | Templeton et al. | Dec 2012 | A1 |
20130006785 | Perkins | Jan 2013 | A1 |
20130036034 | Karon et al. | Feb 2013 | A1 |
20130041729 | Shader | Feb 2013 | A1 |
20130041741 | Shader | Feb 2013 | A1 |
20130073403 | Tuchman et al. | Mar 2013 | A1 |
20130144734 | Perkins | Jun 2013 | A1 |
20130144789 | Aaltonen et al. | Jun 2013 | A1 |
20130204925 | McDougall | Aug 2013 | A1 |
20130291127 | Bergman et al. | Oct 2013 | A1 |
20130317923 | Capps | Nov 2013 | A1 |
20140006191 | Shankar et al. | Jan 2014 | A1 |
20140012648 | Grimes | Jan 2014 | A1 |
20140012690 | Capps | Jan 2014 | A1 |
20140019322 | Streit et al. | Jan 2014 | A1 |
20140058837 | Grimes | Feb 2014 | A1 |
20140115710 | Hughes | Apr 2014 | A1 |
20140122684 | Brentano | May 2014 | A1 |
20140180819 | Grimes | Jun 2014 | A1 |
20140316988 | Nosek et al. | Oct 2014 | A1 |
20140351072 | Wieler | Nov 2014 | A1 |
20150081565 | Roullier et al. | Mar 2015 | A1 |
20150101062 | Silver et al. | Apr 2015 | A1 |
20150142655 | Ghosh et al. | May 2015 | A1 |
20150180736 | Leung | Jun 2015 | A1 |
20150193873 | Hammock et al. | Jul 2015 | A1 |
20150199725 | Aaltonen et al. | Jul 2015 | A1 |
20150206137 | Mazarim et al. | Jul 2015 | A1 |
20160071083 | Apps | Mar 2016 | A1 |
20160189213 | Gopalan et al. | Jun 2016 | A1 |
20160189229 | Gopalan et al. | Jun 2016 | A1 |
20160189230 | Gopalan et al. | Jun 2016 | A1 |
20160189292 | Deshpande et al. | Jun 2016 | A1 |
20160342967 | Proctor et al. | Nov 2016 | A1 |
20160379211 | Hoyos et al. | Dec 2016 | A1 |
20170024731 | Gullett et al. | Jan 2017 | A1 |
20170039551 | Driggs et al. | Feb 2017 | A1 |
20170053276 | Gullett et al. | Feb 2017 | A1 |
20170097996 | Gullett et al. | Apr 2017 | A1 |
20180308157 | Streit et al. | Oct 2018 | A1 |
20180315028 | Gullett et al. | Nov 2018 | A1 |
20200097957 | Driggs et al. | Mar 2020 | A1 |
Number | Date | Country |
---|---|---|
1209874 | Sep 2007 | EP |
1295500 | May 2009 | EP |
2001060100 | Aug 2001 | WO |
WO-2006004794 | Jan 2006 | WO |
Entry |
---|
IBM Technical Disclosure Bulletin. vol. 33. Iss. 10A. pp. 362-366. Mar. 1991. (Year: 1991). |
Anonymous: “WorldPay Launches Advanced RFI and Chargeback Management Platform.” Business Wire (May 28, 2012). (Year: 2012). |
J. Cao, K. Li and I. Stojmenovic, “Optimal Power Allocation and Load Distribution for Multiple Heterogeneous Multicore Server Processors across Clouds and Data Centers,” in IEEE Transactions on Computers, vol. 63, No. 1, pp. 45-58, Jan. 2014. (Year: 2014). |
International Search Report and Written Opinion for International Application No. PCT/IB2008/02235, Search Completed Apr. 23, 2009, dated May 28, 2009, 7 pgs. |
International Search Report and Written Opinion for International Application No. PCT/US2007/012960, Search Completed Dec. 13, 2007, dated Jan. 3, 2008, 7 pgs. |
International Search Report and Written Opinion for International Application No. PCT/US2009/049956, Search Completed Aug. 24, 2009, dated Sep. 1, 2009, 6 pgs. |
Bahl, P. et al., “RADAR: An In-Building RF-based User Location and Tracking System”, Proceedings of IEEE Infocom 2000, vol. 2, Tel-Aviv, Israel, Mar. 2000, 10 pgs. |
Chintalapudi, Krishna K., “Indoor Localization Without the Pain, in Mobicom”, Association for Computing Machinery, Inc., Sep. 2010, 12 pgs. |
Duckham, et al., “Location Privacy and Location-aware computing”, 2005, 20 pgs. |
Eriksson, Jakob et.al., “Cabernet: Vehicular Content Delivery Using WiFi”, MIT Csail Mobicom 2008, 13 pgs. |
FierceWireless, “Sprint offers Loopt's social mapping service”, Internet Article, [Online] Jul. 17, 2007, Retrieved from Internet at <http://fiercewireless.com/story/sprint-offers-loopts-social-mapping-service/07/17/2007> on Mar. 8, 2009, 1 page. |
Jama, Isaak R., “Patent Examiner, Non-Final Office Action in U.S. Appl. No. 11/445,727, dated Jul. 25, 2008”, 12 pgs. |
Jama, Isaak R., “Patent Examiner, Non-Final Office Action in U.S. Pat. U.S. Appl. No. 11/445,729, dated Jun. 9, 2008”, 12 pgs. |
Jama, Isaak R., “Patent Examiner, Non-Final Office Action in U.S. Pat. U.S. Appl. No. 11/445,751, dated Jul. 10, 2008”, 9 pgs. |
Ji, Y. et.al., “Ariadne: A Dynamic Indoor Signal Map Construction and Localization System”, In MobiSys, 2006, 14 pgs. |
Karouia et al., “Video Similarity Measurement Based on Attributed Relational Graph Matching”, N.T. Nguyen, R. Katarzyniak (Eds.): New Challenges in Applied Intelligence Technologies, SCI 134, 2008, 10 pgs. |
Lat49, “screen capture of http://lat49.com/howitworks/index.php”, Jun. 12, 2009, 2 pgs. |
Madigan, D. et al., “Bayesian Indoor Positioning Systems”, In Infocom, 2005, 11 pgs. |
Nguyen, Khai Minh, “Patent Examiner, Non-Final Office Action in U.S. Appl. No. 11/445,730, dated Apr. 29, 2009”, 14 pgs. |
Nguyen, Khai Minh, “Patent Examiner, Non-Final Office Action in U.S. Appl. No. 11/881,836, dated Jul. 23, 2009”, 22 pgs. |
Schreiner, Keri, “Where We at? Mobile Phones Bring GPS to the Masses”, IEEE Computer Graphics and Applications vol. 27, No. 3, May 2007-Jun. 2007, 6 pgs. |
secretadmirer.com, “screen capture using http://web.archive.org of http://secretAdmirer.com website”, Dec. 2, 1998, 2 pgs. |
Youssef, M. et.al., “The Horus WLAN Location Determination System”, In MobiSys, 2005, 14 pgs. |
Number | Date | Country | |
---|---|---|---|
20190095989 A1 | Mar 2019 | US |
Number | Date | Country | |
---|---|---|---|
62562246 | Sep 2017 | US |