CA2719941A1 - System and method for facilitating online transactions - Google Patents
System and method for facilitating online transactions Download PDFInfo
- Publication number
- CA2719941A1 CA2719941A1 CA2719941A CA2719941A CA2719941A1 CA 2719941 A1 CA2719941 A1 CA 2719941A1 CA 2719941 A CA2719941 A CA 2719941A CA 2719941 A CA2719941 A CA 2719941A CA 2719941 A1 CA2719941 A1 CA 2719941A1
- Authority
- CA
- Canada
- Prior art keywords
- transaction
- party
- token
- frame
- account
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Abandoned
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
- G06Q20/3821—Electronic credentials
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/401—Transaction verification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/02—Payment architectures, schemes or protocols involving a neutral party, e.g. certification authority, notary or trusted third party [TTP]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/08—Payment architectures
- G06Q20/10—Payment architectures specially adapted for electronic funds transfer [EFT] systems; specially adapted for home banking systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/22—Payment schemes or models
- G06Q20/26—Debit schemes, e.g. "pay now"
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/385—Payment protocols; Details thereof using an alias or single-use codes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q2220/00—Business processing using cryptography
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
Abstract
Methods and systems for facilitating online transactions are disclosed. One method includes supplying content for display in a frame of a website, the website hosted by a third-party. The method also includes receiving transaction information from the third-party, and returning a token to the frame, the token including state information based on the transaction informa-tion. The method further includes passing the token from the frame to the third-party. The method optionally also includes receiv-ing the token from the third-party and transferring funds from a first account to a second account based on the transaction infor-mation and the state information.
Description
SYSTEM AND METHOD FOR FACILITATING ONLINE TRANSACTIONS
This application is being filed on 24 March 2009, as a PCT
International Patent application in the name of Revolution Money Inc., a U.S.
national corporation, applicant for the designation of all countries except the US, and Robert Kerner and Weidong Tang, both citizens of the U.S., applicants for the designation of the US only, and claims priority to U.S. Provisional patent application Serial No. 12/054,164, filed March 24, 2008.
Technical Field The present disclosure relates generally to payment systems used in conjunction with online transactions. In particular, the present disclosure relates to a system and method for facilitating online transactions, such as through real-time online funds transfer.
Background Online sales systems, such as are used by online retailers, auction sites, and other systems, require payment mechanisms to facilitate a funds transfer to a seller of goods and services from a buyer of those goods and services.
Existing sales systems typically rely on credit card companies for payment processing and management of payment systems. However, credit card systems have drawbacks.
For example, credit card companies charge processing fees to sellers. Credit card companies also limit buyers to certain types of cards; this can limit the universe of potential buyers, because those buyers may not have the type of credit card accepted by the particular retailer.
More recently, online sales systems have attempted to integrate direct payment systems to perform simple money transfer tasks, thereby avoiding use of credit cards or other similar credit-based systems. In these systems, a payment mechanism allows a direct funds transfer between accounts managed by buyers and sellers. However, the existing direct payment systems have disadvantages as well.
For example, these existing direct payment systems do not share data with online sales systems in real time. Rather, all information relating to a sale or other transaction is collected by the sales system, and the sale is confirmed without full information relating to whether funds are available for transfer via the direct payment system. After the sales transaction completes, the direct payment system receives the information relating to the transaction and performs the actual funds transfer. However, if funds are in fact not available in a buyer's account, the seller will have incorrectly completed the sales transaction, because in fact the seller's price could not have been paid by the buyer at the time of the sale. These transactions must be subsequently canceled, causing possible inventory restocking, scheduling, or other issues. Other direct payment systems generally require the buyer to be redirected completely away from the seller's website to perform the funds transfer transaction required by the purchase.
For these and other reasons, improvements are desirable.
Summary In accordance with the following disclosure, the above and other problems are solved by the following:
In a first aspect, a method for facilitating online transactions is disclosed. The method includes supplying content for display in a frame of a website, the website hosted by a third-party. The method also includes receiving transaction information from the third-party, and returning a token to the frame, the token including state information based on the transaction information. The method further includes passing the token from the frame to the third-party. The method optionally also includes receiving the token from the third-party and transferring funds from a first account to a second account based on the transaction information and the state information.
In a second aspect, a system for facilitating online transactions is disclosed. The system includes a memory configured to store account information related to one or more users. The system also includes a programmable circuit in electrical communication with the memory. The programmable circuit is configured to execute program instructions to supply content for display in a frame of a website, the website hosted by a third-party, and to receive transaction information from the third-party. The programmable circuit is further configured to execute program instructions to return a token to the frame, the token including state information based on the transaction information and the account information. The programmable circuit is also configured to execute program instructions to pass the token from the frame to the third-party.
In a third aspect, a method of executing one or more online transactions is disclosed. The method includes hosting a webpage including a frame, the frame configured to display content from a remote system unaffiliated with the webpage. The method also includes passing transaction information to the remote system, the transaction information relating to a transaction. The method further includes receiving a token from the frame, the token including state information based on the transaction information. The method includes receiving a request to execute a transaction from a customer, and, upon receiving the request, transmitting the token to the remote system.
In a fourth aspect, a system useable to execute one or more online transactions is disclosed. The system includes a memory configured to store information relating to one or more transactions. The system also includes a programmable circuit in electrical communication with the memory. The programmable circuit is programmed to host a webpage including a frame, the frame configured to display content from a remote system unaffiliated with the webpage.
The programmable circuit is further programmed to pass transaction information to the remote system, the transaction information relating to a transaction. The programmable circuit is also programmed to receive a token from the frame, the token including state information based on the transaction information. The programmable circuit is also programmed to receive a request to execute a transaction from a customer, and, upon receiving the request, transmit the token to the remote system.
Brief Description of the Drawings Figure 1 is a schematic depiction of a network in which aspects of the present disclosure can be embodied;
Figure 2 is a flowchart of methods and systems for facilitating online transactions, according to a possible embodiment of the present disclosure;
Figure 3 is a flowchart of methods and systems for performing online transactions, according to a possible embodiment of the present disclosure;
This application is being filed on 24 March 2009, as a PCT
International Patent application in the name of Revolution Money Inc., a U.S.
national corporation, applicant for the designation of all countries except the US, and Robert Kerner and Weidong Tang, both citizens of the U.S., applicants for the designation of the US only, and claims priority to U.S. Provisional patent application Serial No. 12/054,164, filed March 24, 2008.
Technical Field The present disclosure relates generally to payment systems used in conjunction with online transactions. In particular, the present disclosure relates to a system and method for facilitating online transactions, such as through real-time online funds transfer.
Background Online sales systems, such as are used by online retailers, auction sites, and other systems, require payment mechanisms to facilitate a funds transfer to a seller of goods and services from a buyer of those goods and services.
Existing sales systems typically rely on credit card companies for payment processing and management of payment systems. However, credit card systems have drawbacks.
For example, credit card companies charge processing fees to sellers. Credit card companies also limit buyers to certain types of cards; this can limit the universe of potential buyers, because those buyers may not have the type of credit card accepted by the particular retailer.
More recently, online sales systems have attempted to integrate direct payment systems to perform simple money transfer tasks, thereby avoiding use of credit cards or other similar credit-based systems. In these systems, a payment mechanism allows a direct funds transfer between accounts managed by buyers and sellers. However, the existing direct payment systems have disadvantages as well.
For example, these existing direct payment systems do not share data with online sales systems in real time. Rather, all information relating to a sale or other transaction is collected by the sales system, and the sale is confirmed without full information relating to whether funds are available for transfer via the direct payment system. After the sales transaction completes, the direct payment system receives the information relating to the transaction and performs the actual funds transfer. However, if funds are in fact not available in a buyer's account, the seller will have incorrectly completed the sales transaction, because in fact the seller's price could not have been paid by the buyer at the time of the sale. These transactions must be subsequently canceled, causing possible inventory restocking, scheduling, or other issues. Other direct payment systems generally require the buyer to be redirected completely away from the seller's website to perform the funds transfer transaction required by the purchase.
For these and other reasons, improvements are desirable.
Summary In accordance with the following disclosure, the above and other problems are solved by the following:
In a first aspect, a method for facilitating online transactions is disclosed. The method includes supplying content for display in a frame of a website, the website hosted by a third-party. The method also includes receiving transaction information from the third-party, and returning a token to the frame, the token including state information based on the transaction information. The method further includes passing the token from the frame to the third-party. The method optionally also includes receiving the token from the third-party and transferring funds from a first account to a second account based on the transaction information and the state information.
In a second aspect, a system for facilitating online transactions is disclosed. The system includes a memory configured to store account information related to one or more users. The system also includes a programmable circuit in electrical communication with the memory. The programmable circuit is configured to execute program instructions to supply content for display in a frame of a website, the website hosted by a third-party, and to receive transaction information from the third-party. The programmable circuit is further configured to execute program instructions to return a token to the frame, the token including state information based on the transaction information and the account information. The programmable circuit is also configured to execute program instructions to pass the token from the frame to the third-party.
In a third aspect, a method of executing one or more online transactions is disclosed. The method includes hosting a webpage including a frame, the frame configured to display content from a remote system unaffiliated with the webpage. The method also includes passing transaction information to the remote system, the transaction information relating to a transaction. The method further includes receiving a token from the frame, the token including state information based on the transaction information. The method includes receiving a request to execute a transaction from a customer, and, upon receiving the request, transmitting the token to the remote system.
In a fourth aspect, a system useable to execute one or more online transactions is disclosed. The system includes a memory configured to store information relating to one or more transactions. The system also includes a programmable circuit in electrical communication with the memory. The programmable circuit is programmed to host a webpage including a frame, the frame configured to display content from a remote system unaffiliated with the webpage.
The programmable circuit is further programmed to pass transaction information to the remote system, the transaction information relating to a transaction. The programmable circuit is also programmed to receive a token from the frame, the token including state information based on the transaction information. The programmable circuit is also programmed to receive a request to execute a transaction from a customer, and, upon receiving the request, transmit the token to the remote system.
Brief Description of the Drawings Figure 1 is a schematic depiction of a network in which aspects of the present disclosure can be embodied;
Figure 2 is a flowchart of methods and systems for facilitating online transactions, according to a possible embodiment of the present disclosure;
Figure 3 is a flowchart of methods and systems for performing online transactions, according to a possible embodiment of the present disclosure;
Figure 4 illustrates the architecture of a computing system that can be used to implement aspects of the present disclosure;
Figure 5 illustrates an example schematic webpage incorporating a frame with which data can be exchanged, according to a possible embodiment of the present disclosure;
Figure 6 illustrates an schematic shopping cart webpage including a frame displaying payor authentication fields, according to a possible embodiment of the present disclosure;
Figure 7 illustrates the schematic shopping cart webpage of Figure 6 including a frame displaying a payment confirmation request, according to a possible embodiment of the present disclosure;
Figure 8 illustrates the schematic shopping cart webpage of Figure 6 including a frame displaying a purchase request message, according to a possible embodiment of the present disclosure;
Figure 9 is a schematic data flow diagram of data exchanged during a purchase of goods or services according to a possible embodiment of the present disclosure; and Figure 10 illustrates a schematic confirmation webpage displayed following execution of a purchase of goods or services.
Detailed Description Various embodiments of the present disclosure will be described in detail with reference to the drawings, wherein like reference numerals represent like parts and assemblies throughout the several views. Reference to various embodiments does not limit the scope of the invention, which is limited only by the scope of the claims attached hereto. Additionally, any examples set forth in this specification are not intended to be limiting and merely set forth some of the many possible embodiments for the claimed invention.
The logical operations of the various embodiments are implemented as: (1) a sequence of computer implemented steps, operations, or procedures running on a programmable circuit within a general use computer, (2) a sequence of computer implemented steps, operations, or procedures running on a specific-use programmable circuit; and/or (3) interconnected machine modules or program engines within the programmable circuits.
In general, the present disclosure relates to methods and systems for facilitating and executing online transactions, such as for purchase and sale of goods and services. The present disclosure contemplates a system that, among other aspects, supplies content for display in a frame of a third-party website, and can receive information about a transaction managed at that third-party website.
By returning a token into the frame that includes the state of the transaction (e.g. by confirming that sufficient funds exist for the transaction to complete successfully), and then passing that token from the frame to the third-party, that third-party receives real-time information about the state (passed or failed) of the transaction and can either complete or choose not to complete the transaction based on that information.
By third-party, it is intended that the third-party website represent a website not managed by a transaction facilitator, such as a direct funds exchange system. The third-party website also requires no integrated relationship with a funds exchange system. The website is referred to as being a "third-party" website in that it is not affiliated with either the funds exchange system or any client accounts on that system, which typically would belong to a buyer using the third-party website.
Referring now to Figure 1, an example network 100 is shown, within which aspects of the present disclosure can be implemented. The network 100 includes a number of electronic devices, shown as devices 102, 104, 106. For example, the electronic devices 102, 104, 106 can be any of a number of types of personal computers, smartphones, portable computing devices with telecommunications capabilities, or handheld devices. Also note that electronic devices (also described herein as communications devices, generally) include, but are not limited to, personal digital assistants (PDA), computing systems, pocket personal computers (pocket PCs), MP3 players, set top boxes, and other such systems.
The electronic devices 102, 104 can be any of a number of types of devices capable of connecting to a data network 108, such as the internet. The data network 108 is a packet-based data network capable of sending and receiving digital data, such as the internet or some portion thereof. The data network 106 can operate on any of a number of protocols or file formats.
A financial server 110 and third-party transaction server 112 are also connected to the data network 108, and provide various services accessible to users of the electronic devices 102, 104, 106. For example, the financial server 110 provides money or other value exchange services to users of the network 100, such as for payment in exchange for goods or services. The financial server 110 can provide, in various embodiments, a direct user-to-user payment system in which money transfers and payment negotiation can take place without requiring use of a third-party to route money transfers.
The third-party transaction server 112 provides a location at which one or more users can offer for sale a variety of goods or services. The third-party service provider 112 can be an online retailer, or can be an online community in which individual users can offer goods or services for sale, such as an online auction site or sales bulletin board.
In certain instances, the third-party transaction server 112 does not have preset payment relationships with value transfer services. In such instances, the third-party transaction server 112 can place code within its hosted websites to allow for in-page transaction confirmation by allowing data sharing between a frame managing the fund transfer (e.g. hosted by the financial server 110) and the webpage hosted by the third-party transaction server 112. The frame directs interested buyers to a webpage managed by an remote system acting as an exchange facilitator (e.g.
the manager or provider of the financial server 110 for exchanging money/value for the goods and services) to manage funds transfer within the frame. One example of use of such a system is shown in Figures 6-10, below.
Figure 2 is a flowchart of methods and systems for facilitating online transactions, according to a possible embodiment of the present disclosure.
The methods and systems described facilitate online transactions, such as purchase or sale of goods and services, by providing real-time (during the transaction) information regarding funds available to the buyer. This real-time information allows the third-party to be sure that the buyer is properly authorized to purchase the goods/services, based on funds observed to be available to the buyer.
Figure 5 illustrates an example schematic webpage incorporating a frame with which data can be exchanged, according to a possible embodiment of the present disclosure;
Figure 6 illustrates an schematic shopping cart webpage including a frame displaying payor authentication fields, according to a possible embodiment of the present disclosure;
Figure 7 illustrates the schematic shopping cart webpage of Figure 6 including a frame displaying a payment confirmation request, according to a possible embodiment of the present disclosure;
Figure 8 illustrates the schematic shopping cart webpage of Figure 6 including a frame displaying a purchase request message, according to a possible embodiment of the present disclosure;
Figure 9 is a schematic data flow diagram of data exchanged during a purchase of goods or services according to a possible embodiment of the present disclosure; and Figure 10 illustrates a schematic confirmation webpage displayed following execution of a purchase of goods or services.
Detailed Description Various embodiments of the present disclosure will be described in detail with reference to the drawings, wherein like reference numerals represent like parts and assemblies throughout the several views. Reference to various embodiments does not limit the scope of the invention, which is limited only by the scope of the claims attached hereto. Additionally, any examples set forth in this specification are not intended to be limiting and merely set forth some of the many possible embodiments for the claimed invention.
The logical operations of the various embodiments are implemented as: (1) a sequence of computer implemented steps, operations, or procedures running on a programmable circuit within a general use computer, (2) a sequence of computer implemented steps, operations, or procedures running on a specific-use programmable circuit; and/or (3) interconnected machine modules or program engines within the programmable circuits.
In general, the present disclosure relates to methods and systems for facilitating and executing online transactions, such as for purchase and sale of goods and services. The present disclosure contemplates a system that, among other aspects, supplies content for display in a frame of a third-party website, and can receive information about a transaction managed at that third-party website.
By returning a token into the frame that includes the state of the transaction (e.g. by confirming that sufficient funds exist for the transaction to complete successfully), and then passing that token from the frame to the third-party, that third-party receives real-time information about the state (passed or failed) of the transaction and can either complete or choose not to complete the transaction based on that information.
By third-party, it is intended that the third-party website represent a website not managed by a transaction facilitator, such as a direct funds exchange system. The third-party website also requires no integrated relationship with a funds exchange system. The website is referred to as being a "third-party" website in that it is not affiliated with either the funds exchange system or any client accounts on that system, which typically would belong to a buyer using the third-party website.
Referring now to Figure 1, an example network 100 is shown, within which aspects of the present disclosure can be implemented. The network 100 includes a number of electronic devices, shown as devices 102, 104, 106. For example, the electronic devices 102, 104, 106 can be any of a number of types of personal computers, smartphones, portable computing devices with telecommunications capabilities, or handheld devices. Also note that electronic devices (also described herein as communications devices, generally) include, but are not limited to, personal digital assistants (PDA), computing systems, pocket personal computers (pocket PCs), MP3 players, set top boxes, and other such systems.
The electronic devices 102, 104 can be any of a number of types of devices capable of connecting to a data network 108, such as the internet. The data network 108 is a packet-based data network capable of sending and receiving digital data, such as the internet or some portion thereof. The data network 106 can operate on any of a number of protocols or file formats.
A financial server 110 and third-party transaction server 112 are also connected to the data network 108, and provide various services accessible to users of the electronic devices 102, 104, 106. For example, the financial server 110 provides money or other value exchange services to users of the network 100, such as for payment in exchange for goods or services. The financial server 110 can provide, in various embodiments, a direct user-to-user payment system in which money transfers and payment negotiation can take place without requiring use of a third-party to route money transfers.
The third-party transaction server 112 provides a location at which one or more users can offer for sale a variety of goods or services. The third-party service provider 112 can be an online retailer, or can be an online community in which individual users can offer goods or services for sale, such as an online auction site or sales bulletin board.
In certain instances, the third-party transaction server 112 does not have preset payment relationships with value transfer services. In such instances, the third-party transaction server 112 can place code within its hosted websites to allow for in-page transaction confirmation by allowing data sharing between a frame managing the fund transfer (e.g. hosted by the financial server 110) and the webpage hosted by the third-party transaction server 112. The frame directs interested buyers to a webpage managed by an remote system acting as an exchange facilitator (e.g.
the manager or provider of the financial server 110 for exchanging money/value for the goods and services) to manage funds transfer within the frame. One example of use of such a system is shown in Figures 6-10, below.
Figure 2 is a flowchart of methods and systems for facilitating online transactions, according to a possible embodiment of the present disclosure.
The methods and systems described facilitate online transactions, such as purchase or sale of goods and services, by providing real-time (during the transaction) information regarding funds available to the buyer. This real-time information allows the third-party to be sure that the buyer is properly authorized to purchase the goods/services, based on funds observed to be available to the buyer.
The system 200 of Figure 2 generally relates to operations performed by a transaction facilitator, such as a direct payment coordination system.
The system 200 allows interaction with the third-party, and acts as an inserted transaction feasibility verification prior to the third-party allowing the transaction to execute.
An example of a transaction facilitator is the financial server 110 of Figure 1.
The system 200 is instantiated at a start operation 202, which corresponds to initiation of an online transaction, such as would occur when a customer seeks to "check out" at an online retailer. Operational flow proceeds to a content module 204, which supplies content for display by a third-party website.
The content module 204 supplies content formatted for display in a frame of the third-party website. The third-party website is generally a website hosted by a server, such as the third-party server 112 of Figure 1. The third-party can be any of a number of types of entities capable of buying or selling goods and services, or facilitating the buying and selling of goods and services online. Examples of such third-parties include an online retailer, online auction site, or other similar entities.
The frame created for display of the content provided via the content module 204 is generally created by source code inserted into a webpage by the third-party. The frame is generally an inserted frame in a webpage, in which an entity other than the host of the website (in this case the third-party) can display content.
An example of such a frame is shown in Figure 5, below.
In certain embodiments of the present disclosure, the webpage displays information relating to a proposed transaction to be completed. This transaction can be, for example, between two parties, one of which could be the third-party host of the website. One example of such a transaction is an online sale of goods; in such an example, the webpage can correspond to a "shopping cart"
page. Other example webpages in which a frame for non-host content are possible as well.
In certain further embodiments, the content displayed in the frame relates to user authentication of the buyer or seller visiting the third-party website.
The content module 204 can display a window requesting a username and password or other authentication information (access code, PIN, etc.), requiring the visiting buyer or seller to provide credentials for logging in to the transaction facilitation system. In embodiments in which the transaction facilitation system is a direct funds transfer system, the authentication information generally allows access to a user account having available to it an amount of funds (e.g. via a credit line, an existing account with the financial institution managing the system 200, or connection to an existing account with a different financial institution).
Operational flow proceeds to a transaction information receipt module 206. The transaction information receipt module 206 receives transaction information from the third-party, such as by passing that information to the frame incorporated into the webpage. The transaction information can be a variety of different types of information relating to the transaction, and will generally include at least the identity of the buyer and the amount of funds required for the purchase.
Additional information, such as relating to the identity of the seller or the goods or services purchased can be included as well.
The transaction information receipt module 206 can receive data passed to it from the webpage or from the third-party directly, by any of a number of methods in which the third-party is allowed data communication access with the frame inserted into the webpage hosting the frame. In one embodiment, data is passed to the frame upon instantiation of the frame, via the command creating the frame. An example of such a method is disclosed in Figure 5, below.
In certain embodiments, the transaction information receipt module 206 displays a confirmation page to a user prior to transmission of the transaction information to the third-party. The confirmation page displays a message to the user requesting confirmation to validate a transaction, and also displays a button prompting the user to proceed. The transaction information receipt module 206 receives a request to execute the transaction by detecting the user clicking on the button. An example of such a page is shown in Figure 7, below.
Operational flow proceeds to a token return module 208, which returns a token to the frame hosted in the third-party website. The token return module 208 transmits the token to the frame based on standard web-based, IP
addressing methods. The token returned to the frame by the token return module 208 includes state information. The state information generally corresponds to information generated by the transaction facilitator regarding the feasibility of the transaction. For example, the state information can refer to the status of one or more accounts of a customer seeking to purchase goods or services on the third-party website. In an embodiment in which the transaction facilitator is a direct payment facilitator, the token can verify the existence of an account identified using the transaction information received via the transaction information receipt module 206.
In such an embodiment, the token can also verify whether the account, once identified, contains sufficient funds to complete the transaction, based on the transaction information.
Operational flow proceeds to a token transmission module 210. The token transmission module passes the token from the frame in the website to the server hosting the website, so that the third-party hosting the website has the information from the token. At this point, the third-party site gains knowledge of the evaluation performed by the funds transfer facilitation system, and therefore receives information regarding the feasibility of the transaction as determined by, for example, the financial server 110.
At this point, the third-party hosting the frame can determine whether to allow the buyer or seller visiting the website (and viewing the frame) to carry out the transaction. If the third-party does not allow the transaction to proceed (e.g.
based on an observation of a token indicating that no account exists or that insufficient funds can be accessed at the account), operation would terminate at the end operation 218, described below. If the third-party allows the transaction to proceed (e.g. by analyzing the token and observing that the transaction would be successful), the third-party may redirect the visiting buyer/seller to a confirmation page.
Operational flow proceeds to a token receipt module 212. The token receipt module corresponds to the transaction facilitator receiving the token from the third-party, allowing the transaction facilitator to know that the transaction should take place. Upon execution of the token receipt module 212, operational flow proceeds to a confirmation module 214, which again confirms the feasibility of the transaction (e.g. based on the existence of the account and the account balance, as compared to the amount of funds requested to perform the transaction).
Operational flow proceeds to a funds transfer module 216 to transfer funds from a buyer account to a seller account.
In embodiments of the system 200 in which the third-party is an online retailer, the seller account can correspond to an account held by the third-party itself. In other embodiments of the system 200 in which the third-party facilitates transactions among other parties (e.g. as an online auction or sales forum site), the seller account corresponds to an account of a user of the third-party site.
Operational flow within the system 200 terminates at an end operation 218, which corresponds to a completed (or aborted) funds transfer in conjunction with an online transaction.
As can be seen from the operations of Figure 2, the transaction facilitator, using the methods and systems described herein, can interject into an online transaction and provide the payment systems for that transaction without disrupting the flow of the online transaction. When the token is passed from the frame to the third-party, the third-party gains knowledge regarding the feasibility of the transaction to be performed. When the token is passed back from the third-party to the financial server (e.g. the source of the content in the frame), the feasibility of the transaction is optionally reconfirmed, and the transaction is completed (e.g.
funds are transferred).
Figure 3 is a flowchart of methods and systems for performing online transactions, according to a possible embodiment of the present disclosure.
The system 300 generally corresponds to activities performed by a third-party server who acts as a host of a website on which purchase/sale transactions take place.
The third-party server 300 obtains real-time information regarding the feasibility of a transaction from a remote server that acts as a transaction facilitator by maintaining accounts for one or more users of the third-party server's website. An example of such a remote server is the financial server 110 of Figure 1.
Operational flow in the system 300 is instantiated at a start operation 302, which corresponds generally to a user of the third-party's website initiating a transaction in which a fund exchange is involved, such as a purchase or sale of goods or services. For example, in embodiments where the third-party is an online retailer or other seller of goods or services, the start operation 302 can correspond to a user clicking on a "shopping cart" button to view an inventory of goods to be purchased.
Operational flow proceeds to a host module 304, which generally corresponds to the third-party hosting a webpage related to a proposed transaction.
In certain embodiments, the webpage corresponds to an order confirmation and payment webpage which allows a user to enter payment information for completion of a transaction.
The webpage hosted via the host module 304 includes a frame, which corresponds to an inserted region in the webpage displaying contents retrieved from a separate source. In the various embodiments of the present disclosure, the frame is configured to display content from a remote system unaffiliated with the website. In certain of those embodiments, the remote system corresponds to a financial server (e.g. the financial server 110 of Figure 1) that is unaffiliated - i.e. not controlled by the third-party - and has access to accounts for one or more buyers and sellers using the third-party website.
Once the host module 304 displays a webpage with a frame included, the remote system unaffiliated with the website can display information in the frame.
For example, the remote system can display user authentication information, as described above in conjunction with the content module 204 of Figure 2. An example of such a page is shown in Figure 6, below. The remote system also displays a confirmation page, including a confirmation button requesting that a user click the button to confirm that funds are available to complete the transaction. An example of such a page is shown in Figure 7, below.
Operational flow proceeds to a transaction information module 306, which passes transaction information to the remote system. The transaction information passed to the remote system can vary according to different embodiments of the present disclosure. In general, the transaction information will include information regarding a buyer of goods or services who is using the third-party website. The transaction information can also include information regarding the account to access, an amount of funds that is to be approved for use in the transaction, the name and account of the seller, and other information.
After the transaction information module 306 transmits information to the remote server (e.g. the financial server 110), that remote server generally generates and returns a token to the frame relating to the feasibility of the transaction described by the transaction information. The frame can then pass that feasibility assessment on to the third-party. Example operations that can take place are described in conjunction with the token return module 208 and the token transmission module 210 of Figure 2.
In the system 300, operational flow proceeds to a token receipt module 308, which corresponds to receiving the token from the frame incorporated into the third-party webpage (e.g. the "shopping cart" webpage). In certain embodiments, the token receipt module executes a command (e.g. a "get token"
command) within a webpage) to obtain the token from the frame. When the token receipt module 308 receives the token, the token includes state information that is related to the transaction and based on the transaction information provided to the remote system. The state information can also be based on available funds to the buyer, based on the amount indicated in the transaction information.
Operational flow proceeds to a state determination operation 310.
The state determination operation 310 assesses the state information included in the token received at the token receipt module 308 to determine whether the transaction proposed to occur on the third-party webpage is feasible. The state determination operation 310 can, in certain embodiments, read an "approved" or "failed"
indicator included in the state information. If the state determination operation 310 determines that the transaction is approved (i.e. the buyer has sufficient funds in the designated account to purchase the goods/services), operational flow proceeds to a request receipt module 312. If the state determination operation 310 determines that the transaction is not approved, or has "failed" (i.e. the buyer has insufficient funds, the account is not recognized, or other errors), operational flow branches to an end operation 318, described below.
The receipt module 312 corresponds to the webpage receiving a request to execute the transaction described by the transaction information.
The request is generally received from a buyer visiting the third-party webpage by detecting the buyer clicking a "purchase" button on the website to complete the transaction.
The token transmission module 314 transmits the token from the third-party to the remote server, thereby returning the token to the remote server and triggering a funds transfer operation on the remote server (e.g. through operation of a funds transfer module 216 of Figure 2). From the token transmission module 314, operational flow proceeds to a transaction execution module 316, in which the transaction is registered for completion. This can include, for example, queuing goods for shipment to the buyer, initiating inventory and shipping procedures, or scheduling services to be performed in accordance with the transaction described in the "shopping cart" webpage. The transaction execution module 314 also optionally displays a confirmation webpage, indicating successful completion of the transaction. An example of such a page is shown in Figure 10, below.
From the transaction execution module 316 (or a "failed" state determination operation 310, above), operational flow proceeds to an end operation 318. The end operation corresponds to completion of an attempted transaction, either by completion of the transaction or by aborting the transaction.
Referring now to Figure 4, an exemplary environment for implementing embodiments of the present disclosure includes a general purpose computing device in the form of a computing system 400, including at least one processing system 402. In the various embodiments described herein, the general purpose computing device can correspond to the various computing devices of Figure 1, such as the electronic devices, the financial server, or the third-party service provider. A variety of processing units 402 are available from a variety of manufacturers, for example, Intel or Advanced Micro Devices. The computing system 400 also includes a system memory 404, and a system bus 406 that couples various system components including the system memory 404 to the processing unit 402. The system bus 406 might be any of several types of bus structures including a memory bus, or memory controller; a peripheral bus; and a local bus using any of a variety of bus architectures.
Preferably, the system memory 404 includes read only memory (ROM) 408 and random access memory (RAM) 410. A basic input/output system 412 (BIOS), containing the basic routines that help transfer information between elements within the computing system 400, such as during start up, is typically stored in the ROM 408.
Preferably, the computing system 400 further includes a secondary storage device 413, such as a hard disk drive, for reading from and writing to a hard disk (not shown), and/or a compact flash card 414.
The hard disk drive 413 and compact flash card 414 are connected to the system bus 406 by a hard disk drive interface 420 and a compact flash card interface 422, respectively. The drives and cards and their associated computer readable media provide nonvolatile storage of computer readable instructions, data structures, program modules and other data for the computing system 400.
Although the exemplary environment described herein employs a hard disk drive 413 and a compact flash card 414, it should be appreciated by those skilled in the art that other types of computer-readable media, capable of storing data, can be used in the exemplary system. Examples of these other types of computer-readable mediums include magnetic cassettes, flash memory cards, digital video disks, Bernoulli cartridges, CD ROMS, DVD ROMS, random access memories (RAMs), read only memories (ROMs), and the like.
A number of program modules may be stored on the hard disk 413, compact flash card 414, ROM 408, or RAM 410, including an operating system 426, one or more application programs 428, other program modules 430, and program data 432. A user may enter commands and information into the computing system 400 through an input device 434. Examples of input devices might include a keyboard, mouse, microphone, joystick, game pad, satellite dish, scanner, digital camera, touch screen, and a telephone. These and other input devices are often connected to the processing unit 402 through an interface 440 that is coupled to the system bus 406. These input devices also might be connected by any number of interfaces, such as a parallel port, serial port, game port, or a universal serial bus (USB). A display device 442, such as a monitor or touch screen LCD panel, is also connected to the system bus 406 via an interface, such as a video adapter 444.
The display device 442 might be internal or external. In addition to the display device 442, computing systems, in general, typically include other peripheral devices (not shown), such as speakers, printers, and palm devices.
When used in a LAN networking environment, the computing system 400 is connected to the local network through a network interface or adapter 452.
When used in a WAN networking environment, such as the Internet, the computing system 400 typically includes a modem 454 or other means, such as a direct connection, for establishing communications over the wide area network. The modem 454, which can be internal or external, is connected to the system bus via the interface 440. In a networked environment, program modules depicted relative to the computing system 400, or portions thereof, may be stored in a remote memory storage device. It will be appreciated that the network connections shown are exemplary and other means of establishing a communications link between the computing systems may be used.
The computing system 400 might also include a recorder 460 connected to the memory 404. The recorder 460 includes a microphone for receiving sound input and is in communication with the memory 404 for buffering and storing the sound input. Preferably, the recorder 460 also includes a record button 461 for activating the microphone and communicating the sound input to the memory 404.
A computing device, such as computing system 400, typically includes at least some form of computer-readable media. Computer readable media can be any available media that can be accessed by the computing system 400.
By way of example, and not limitation, computer-readable media might comprise computer storage media and communication media.
Computer storage media includes volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to store the desired information and that can be accessed by the computing system 400.
Communication media typically embodies computer-readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media. The term "modulated data signal" means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared, and other wireless media.
Combinations of any of the above should also be included within the scope of computer-readable media. Computer-readable media may also be referred to as computer program product.
Figure 5 illustrates an example schematic webpage 500 incorporating a frame with which data can be exchanged, according to a possible embodiment of the present disclosure. The webpage 500 illustrates a method of instantiating a frame 502 in a webpage in which data can be shared between the webpage and the frame. In the embodiment shown, the webpage 300 calls the frame using a sendData command from a webpage 300 hosted by a third-party, illustrated as residing at the example web address http://www.3rdparty_website-here.com. The host webpage 500 includes a "sendData" function which triggers loading of the frame 502 in the webpage and calls the frame from the hyperlink targeted by the function (in this case, the example web address http://www.revolutionmoney.com/exchange/...).
The "sendData" function also passes data to the source of the frame information, identified by the link. The frame 502 includes content loaded based on the target hyperlink. The frame includes an operation to complete upon loading of the frame, as indicated by the Window.onLoad = function () code, which defines the size, position and other attributes of the frame.
In the context of the present disclosure, the third-party website will include code capable of calling a frame and sharing data, e.g. transaction data, with the source of that frame (e.g. a remote server, such as the financial server 110 of Figure 1). The source of content for the frame also provides the token used for managing real-time access to state information regarding the transaction to the third-party, as described above.
Referring now to FIGS. 6-10, a particular implementation of the methods and systems described above is discussed in conjunction with an online transaction representing a sale of goods or services. The online transaction referred to in the below figures can represent a sale (third-party host or local host) occurring on a third-party server, such as a server of an online retailer, an online auction site, or other online transaction facilitator.
The below example illustrates that payment steps inserted into a third-party website through use of a frame and token system allows for an uninterrupted purchase flow relating to existing "shopping cart" systems, while providing payment preapproval in advance of executing a purchase or sale.
Furthermore, the example illustrates that payment authentication steps using aspects of the present disclosure can be performed in the frame while remaining within a shopping cart environment or other transaction completion environment (i.e.
not rerouting the user to a separate website for payment).
Figure 6 illustrates a schematic shopping cart webpage 600 including a frame displaying payor authentication fields, according to a possible embodiment of the present disclosure. The shopping cart webpage as displayed illustrates an example output following execution of the host module 304 of Figure 3. As described in conjunction with Figure 5, the shopping cart webpage 600 includes a frame 602 generated within the page, which includes content retrieved from a remote server, such as a financial server. The content displayed in the frame includes user authentication information, such as could be generated by the content module 204 of Figure 2. The user authentication information includes, in the embodiment shown, a usemame request field 604 and a password request field 606.
Other user authentication information fields could be included as well.
Figure 7 illustrates the shopping cart webpage 600 of Figure 6, after the user of the page has entered proper authentication information into the frame 602. The state of the shopping cart webpage shown in Figure 7 can be reached, for example, during operation of the transaction information receipt module 206 of Figure 2, and prior to operation of the transaction information module 306 of Figure 3. The frame 602 displays a payment confirmation request, including a message requesting confirmation of the payment amount and a confirmation button 610.
The confirmation button 610 triggers confirmation of the funds transfer in conjunction with the transaction information displayed to the user (including the amount of funds involved in the transaction).
Figure 8 illustrates the schematic shopping cart webpage 600 of Figure 6, including a frame 602 displaying a funds confirmation message 612, according to a possible embodiment of the present disclosure. This version of the webpage can be reached, for example, following user selection of the confirmation button 610 of Figure 7, and operation of a particular embodiment of the state assessment operation 310 of Figure 3.
The funds confirmation message 612 provides an indication to the user of the webpage (e.g. the buyer) that the funds confirmation was successful.
This can include, as previously discussed, a confirmation that the user's account was successfully located and that account contained sufficient funds to complete the transaction. The funds confirmation message 612 is returned from the remote server for display to the webpage 600 at the same time a token is returned to the frame 602 from the remote server. The frame 602 then transfers this token to the third-party webpage 600 for use by the third-party. The token transmission steps are described in greater detail above in conjunction with the token return module 208 and the token transmission module 210 of Figure 2.
In the embodiment shown, the shopping cart webpage includes a purchase button 620 supplied by the webpage 600 outside of the frame 602. User selection of the purchase button causes the third-party webpage 600 to send the token received from the remote server (e.g. the financial server 110 of Figure 1) via the frame 602 back to the remote server to initiate a funds transfer operation.
Selection of the purchase button triggers the process shown in Figure 9, and causes display of a confirmation page 1000 as shown in Figure 10.
Figure 9 is a schematic data flow diagram 900 of data exchanged during a purchase of goods or services according to a possible embodiment of the present disclosure. The flow diagram 900 illustrates communication between a customer 902, a third-party webpage 904, a third-party server 906, and a remote server upon selection of the purchase button 620 of Figure 8. In the embodiment shown, the customer 902 can represent a buyer or seller using a website hosted by the third-party for executing purchase or sales transactions. The third-party webpage 904 is generally a webpage hosted by the third-party and displayed to the customer 902. The third-party server 906 can be the hosting server of the third-party webpage 904 or another server controlled by the same entity. The remote server corresponds to the entity facilitating the financial transaction, such as a financial server 110 of Figure 1.
An example data flow to complete the purchase proceeds as follows.
A customer 902 sends a purchase command 910 to the third-party webpage 904 by selecting the purchase button 620 of Figure 8. The third-party webpage 904 in turn transmits the transaction in a transaction message 920, including the token received at the webpage from the frame, to the third-party server 906. The transaction message 920 generally includes the information entered by the user into the third-party webpage 904 in conjunction with the purchase, such as product identification information, as well as the token received from the frame. The third-party server 906 transmits the token in a token message 930 to the remote server 908, which executes the funds transfer in a funds transfer operation 940 and returns a success state message 950 to the third-party server 906. The third-party server 906 commits the purchase in a commit purchase operation 960, and transmits a confirmation page message 970 (e.g. the confirmation webpage 1000 of Figure 10) for display to the customer 902.
Figure 10 illustrates a schematic confirmation webpage 1000 displayed following execution of a purchase of goods or services. The confirmation webpage is displayed following execution of the transaction, as illustrated in the transaction execution module 316 of Figure 3, and can represent the confirmation page transmitted by the confirmation page message 970 of Figure 9. The confirmation webpage 1000 communicates a message to the buyer indicating successful completion of the transaction.
Referring now to Figures 1-10, it can be seen that the process for facilitating online transactions described herein can be implemented in existing websites with little effort, in that only a few lines of code are required for implementation by a third-party. Further, third-party transaction completion process flow is not interrupted; rather, the frame inserted into the third-party website can interact with the website to provide real-time information regarding payment feasibility to that third-party and to the customer (buyer or seller) of that third-party.
Also, confirmation of payment can be performed prior to (or in the absence of) actual execution of the transaction.
The above specification, examples and data provide a complete description of the manufacture and use of the composition of the invention.
Since many embodiments of the invention can be made without departing from the spirit and scope of the invention, the invention resides in the claims hereinafter appended.
The system 200 allows interaction with the third-party, and acts as an inserted transaction feasibility verification prior to the third-party allowing the transaction to execute.
An example of a transaction facilitator is the financial server 110 of Figure 1.
The system 200 is instantiated at a start operation 202, which corresponds to initiation of an online transaction, such as would occur when a customer seeks to "check out" at an online retailer. Operational flow proceeds to a content module 204, which supplies content for display by a third-party website.
The content module 204 supplies content formatted for display in a frame of the third-party website. The third-party website is generally a website hosted by a server, such as the third-party server 112 of Figure 1. The third-party can be any of a number of types of entities capable of buying or selling goods and services, or facilitating the buying and selling of goods and services online. Examples of such third-parties include an online retailer, online auction site, or other similar entities.
The frame created for display of the content provided via the content module 204 is generally created by source code inserted into a webpage by the third-party. The frame is generally an inserted frame in a webpage, in which an entity other than the host of the website (in this case the third-party) can display content.
An example of such a frame is shown in Figure 5, below.
In certain embodiments of the present disclosure, the webpage displays information relating to a proposed transaction to be completed. This transaction can be, for example, between two parties, one of which could be the third-party host of the website. One example of such a transaction is an online sale of goods; in such an example, the webpage can correspond to a "shopping cart"
page. Other example webpages in which a frame for non-host content are possible as well.
In certain further embodiments, the content displayed in the frame relates to user authentication of the buyer or seller visiting the third-party website.
The content module 204 can display a window requesting a username and password or other authentication information (access code, PIN, etc.), requiring the visiting buyer or seller to provide credentials for logging in to the transaction facilitation system. In embodiments in which the transaction facilitation system is a direct funds transfer system, the authentication information generally allows access to a user account having available to it an amount of funds (e.g. via a credit line, an existing account with the financial institution managing the system 200, or connection to an existing account with a different financial institution).
Operational flow proceeds to a transaction information receipt module 206. The transaction information receipt module 206 receives transaction information from the third-party, such as by passing that information to the frame incorporated into the webpage. The transaction information can be a variety of different types of information relating to the transaction, and will generally include at least the identity of the buyer and the amount of funds required for the purchase.
Additional information, such as relating to the identity of the seller or the goods or services purchased can be included as well.
The transaction information receipt module 206 can receive data passed to it from the webpage or from the third-party directly, by any of a number of methods in which the third-party is allowed data communication access with the frame inserted into the webpage hosting the frame. In one embodiment, data is passed to the frame upon instantiation of the frame, via the command creating the frame. An example of such a method is disclosed in Figure 5, below.
In certain embodiments, the transaction information receipt module 206 displays a confirmation page to a user prior to transmission of the transaction information to the third-party. The confirmation page displays a message to the user requesting confirmation to validate a transaction, and also displays a button prompting the user to proceed. The transaction information receipt module 206 receives a request to execute the transaction by detecting the user clicking on the button. An example of such a page is shown in Figure 7, below.
Operational flow proceeds to a token return module 208, which returns a token to the frame hosted in the third-party website. The token return module 208 transmits the token to the frame based on standard web-based, IP
addressing methods. The token returned to the frame by the token return module 208 includes state information. The state information generally corresponds to information generated by the transaction facilitator regarding the feasibility of the transaction. For example, the state information can refer to the status of one or more accounts of a customer seeking to purchase goods or services on the third-party website. In an embodiment in which the transaction facilitator is a direct payment facilitator, the token can verify the existence of an account identified using the transaction information received via the transaction information receipt module 206.
In such an embodiment, the token can also verify whether the account, once identified, contains sufficient funds to complete the transaction, based on the transaction information.
Operational flow proceeds to a token transmission module 210. The token transmission module passes the token from the frame in the website to the server hosting the website, so that the third-party hosting the website has the information from the token. At this point, the third-party site gains knowledge of the evaluation performed by the funds transfer facilitation system, and therefore receives information regarding the feasibility of the transaction as determined by, for example, the financial server 110.
At this point, the third-party hosting the frame can determine whether to allow the buyer or seller visiting the website (and viewing the frame) to carry out the transaction. If the third-party does not allow the transaction to proceed (e.g.
based on an observation of a token indicating that no account exists or that insufficient funds can be accessed at the account), operation would terminate at the end operation 218, described below. If the third-party allows the transaction to proceed (e.g. by analyzing the token and observing that the transaction would be successful), the third-party may redirect the visiting buyer/seller to a confirmation page.
Operational flow proceeds to a token receipt module 212. The token receipt module corresponds to the transaction facilitator receiving the token from the third-party, allowing the transaction facilitator to know that the transaction should take place. Upon execution of the token receipt module 212, operational flow proceeds to a confirmation module 214, which again confirms the feasibility of the transaction (e.g. based on the existence of the account and the account balance, as compared to the amount of funds requested to perform the transaction).
Operational flow proceeds to a funds transfer module 216 to transfer funds from a buyer account to a seller account.
In embodiments of the system 200 in which the third-party is an online retailer, the seller account can correspond to an account held by the third-party itself. In other embodiments of the system 200 in which the third-party facilitates transactions among other parties (e.g. as an online auction or sales forum site), the seller account corresponds to an account of a user of the third-party site.
Operational flow within the system 200 terminates at an end operation 218, which corresponds to a completed (or aborted) funds transfer in conjunction with an online transaction.
As can be seen from the operations of Figure 2, the transaction facilitator, using the methods and systems described herein, can interject into an online transaction and provide the payment systems for that transaction without disrupting the flow of the online transaction. When the token is passed from the frame to the third-party, the third-party gains knowledge regarding the feasibility of the transaction to be performed. When the token is passed back from the third-party to the financial server (e.g. the source of the content in the frame), the feasibility of the transaction is optionally reconfirmed, and the transaction is completed (e.g.
funds are transferred).
Figure 3 is a flowchart of methods and systems for performing online transactions, according to a possible embodiment of the present disclosure.
The system 300 generally corresponds to activities performed by a third-party server who acts as a host of a website on which purchase/sale transactions take place.
The third-party server 300 obtains real-time information regarding the feasibility of a transaction from a remote server that acts as a transaction facilitator by maintaining accounts for one or more users of the third-party server's website. An example of such a remote server is the financial server 110 of Figure 1.
Operational flow in the system 300 is instantiated at a start operation 302, which corresponds generally to a user of the third-party's website initiating a transaction in which a fund exchange is involved, such as a purchase or sale of goods or services. For example, in embodiments where the third-party is an online retailer or other seller of goods or services, the start operation 302 can correspond to a user clicking on a "shopping cart" button to view an inventory of goods to be purchased.
Operational flow proceeds to a host module 304, which generally corresponds to the third-party hosting a webpage related to a proposed transaction.
In certain embodiments, the webpage corresponds to an order confirmation and payment webpage which allows a user to enter payment information for completion of a transaction.
The webpage hosted via the host module 304 includes a frame, which corresponds to an inserted region in the webpage displaying contents retrieved from a separate source. In the various embodiments of the present disclosure, the frame is configured to display content from a remote system unaffiliated with the website. In certain of those embodiments, the remote system corresponds to a financial server (e.g. the financial server 110 of Figure 1) that is unaffiliated - i.e. not controlled by the third-party - and has access to accounts for one or more buyers and sellers using the third-party website.
Once the host module 304 displays a webpage with a frame included, the remote system unaffiliated with the website can display information in the frame.
For example, the remote system can display user authentication information, as described above in conjunction with the content module 204 of Figure 2. An example of such a page is shown in Figure 6, below. The remote system also displays a confirmation page, including a confirmation button requesting that a user click the button to confirm that funds are available to complete the transaction. An example of such a page is shown in Figure 7, below.
Operational flow proceeds to a transaction information module 306, which passes transaction information to the remote system. The transaction information passed to the remote system can vary according to different embodiments of the present disclosure. In general, the transaction information will include information regarding a buyer of goods or services who is using the third-party website. The transaction information can also include information regarding the account to access, an amount of funds that is to be approved for use in the transaction, the name and account of the seller, and other information.
After the transaction information module 306 transmits information to the remote server (e.g. the financial server 110), that remote server generally generates and returns a token to the frame relating to the feasibility of the transaction described by the transaction information. The frame can then pass that feasibility assessment on to the third-party. Example operations that can take place are described in conjunction with the token return module 208 and the token transmission module 210 of Figure 2.
In the system 300, operational flow proceeds to a token receipt module 308, which corresponds to receiving the token from the frame incorporated into the third-party webpage (e.g. the "shopping cart" webpage). In certain embodiments, the token receipt module executes a command (e.g. a "get token"
command) within a webpage) to obtain the token from the frame. When the token receipt module 308 receives the token, the token includes state information that is related to the transaction and based on the transaction information provided to the remote system. The state information can also be based on available funds to the buyer, based on the amount indicated in the transaction information.
Operational flow proceeds to a state determination operation 310.
The state determination operation 310 assesses the state information included in the token received at the token receipt module 308 to determine whether the transaction proposed to occur on the third-party webpage is feasible. The state determination operation 310 can, in certain embodiments, read an "approved" or "failed"
indicator included in the state information. If the state determination operation 310 determines that the transaction is approved (i.e. the buyer has sufficient funds in the designated account to purchase the goods/services), operational flow proceeds to a request receipt module 312. If the state determination operation 310 determines that the transaction is not approved, or has "failed" (i.e. the buyer has insufficient funds, the account is not recognized, or other errors), operational flow branches to an end operation 318, described below.
The receipt module 312 corresponds to the webpage receiving a request to execute the transaction described by the transaction information.
The request is generally received from a buyer visiting the third-party webpage by detecting the buyer clicking a "purchase" button on the website to complete the transaction.
The token transmission module 314 transmits the token from the third-party to the remote server, thereby returning the token to the remote server and triggering a funds transfer operation on the remote server (e.g. through operation of a funds transfer module 216 of Figure 2). From the token transmission module 314, operational flow proceeds to a transaction execution module 316, in which the transaction is registered for completion. This can include, for example, queuing goods for shipment to the buyer, initiating inventory and shipping procedures, or scheduling services to be performed in accordance with the transaction described in the "shopping cart" webpage. The transaction execution module 314 also optionally displays a confirmation webpage, indicating successful completion of the transaction. An example of such a page is shown in Figure 10, below.
From the transaction execution module 316 (or a "failed" state determination operation 310, above), operational flow proceeds to an end operation 318. The end operation corresponds to completion of an attempted transaction, either by completion of the transaction or by aborting the transaction.
Referring now to Figure 4, an exemplary environment for implementing embodiments of the present disclosure includes a general purpose computing device in the form of a computing system 400, including at least one processing system 402. In the various embodiments described herein, the general purpose computing device can correspond to the various computing devices of Figure 1, such as the electronic devices, the financial server, or the third-party service provider. A variety of processing units 402 are available from a variety of manufacturers, for example, Intel or Advanced Micro Devices. The computing system 400 also includes a system memory 404, and a system bus 406 that couples various system components including the system memory 404 to the processing unit 402. The system bus 406 might be any of several types of bus structures including a memory bus, or memory controller; a peripheral bus; and a local bus using any of a variety of bus architectures.
Preferably, the system memory 404 includes read only memory (ROM) 408 and random access memory (RAM) 410. A basic input/output system 412 (BIOS), containing the basic routines that help transfer information between elements within the computing system 400, such as during start up, is typically stored in the ROM 408.
Preferably, the computing system 400 further includes a secondary storage device 413, such as a hard disk drive, for reading from and writing to a hard disk (not shown), and/or a compact flash card 414.
The hard disk drive 413 and compact flash card 414 are connected to the system bus 406 by a hard disk drive interface 420 and a compact flash card interface 422, respectively. The drives and cards and their associated computer readable media provide nonvolatile storage of computer readable instructions, data structures, program modules and other data for the computing system 400.
Although the exemplary environment described herein employs a hard disk drive 413 and a compact flash card 414, it should be appreciated by those skilled in the art that other types of computer-readable media, capable of storing data, can be used in the exemplary system. Examples of these other types of computer-readable mediums include magnetic cassettes, flash memory cards, digital video disks, Bernoulli cartridges, CD ROMS, DVD ROMS, random access memories (RAMs), read only memories (ROMs), and the like.
A number of program modules may be stored on the hard disk 413, compact flash card 414, ROM 408, or RAM 410, including an operating system 426, one or more application programs 428, other program modules 430, and program data 432. A user may enter commands and information into the computing system 400 through an input device 434. Examples of input devices might include a keyboard, mouse, microphone, joystick, game pad, satellite dish, scanner, digital camera, touch screen, and a telephone. These and other input devices are often connected to the processing unit 402 through an interface 440 that is coupled to the system bus 406. These input devices also might be connected by any number of interfaces, such as a parallel port, serial port, game port, or a universal serial bus (USB). A display device 442, such as a monitor or touch screen LCD panel, is also connected to the system bus 406 via an interface, such as a video adapter 444.
The display device 442 might be internal or external. In addition to the display device 442, computing systems, in general, typically include other peripheral devices (not shown), such as speakers, printers, and palm devices.
When used in a LAN networking environment, the computing system 400 is connected to the local network through a network interface or adapter 452.
When used in a WAN networking environment, such as the Internet, the computing system 400 typically includes a modem 454 or other means, such as a direct connection, for establishing communications over the wide area network. The modem 454, which can be internal or external, is connected to the system bus via the interface 440. In a networked environment, program modules depicted relative to the computing system 400, or portions thereof, may be stored in a remote memory storage device. It will be appreciated that the network connections shown are exemplary and other means of establishing a communications link between the computing systems may be used.
The computing system 400 might also include a recorder 460 connected to the memory 404. The recorder 460 includes a microphone for receiving sound input and is in communication with the memory 404 for buffering and storing the sound input. Preferably, the recorder 460 also includes a record button 461 for activating the microphone and communicating the sound input to the memory 404.
A computing device, such as computing system 400, typically includes at least some form of computer-readable media. Computer readable media can be any available media that can be accessed by the computing system 400.
By way of example, and not limitation, computer-readable media might comprise computer storage media and communication media.
Computer storage media includes volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Computer storage media includes, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, CD-ROM, digital versatile disks (DVD) or other optical storage, magnetic cassettes, magnetic tape, magnetic disk storage or other magnetic storage devices, or any other medium that can be used to store the desired information and that can be accessed by the computing system 400.
Communication media typically embodies computer-readable instructions, data structures, program modules or other data in a modulated data signal such as a carrier wave or other transport mechanism and includes any information delivery media. The term "modulated data signal" means a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. By way of example, and not limitation, communication media includes wired media such as a wired network or direct-wired connection, and wireless media such as acoustic, RF, infrared, and other wireless media.
Combinations of any of the above should also be included within the scope of computer-readable media. Computer-readable media may also be referred to as computer program product.
Figure 5 illustrates an example schematic webpage 500 incorporating a frame with which data can be exchanged, according to a possible embodiment of the present disclosure. The webpage 500 illustrates a method of instantiating a frame 502 in a webpage in which data can be shared between the webpage and the frame. In the embodiment shown, the webpage 300 calls the frame using a sendData command from a webpage 300 hosted by a third-party, illustrated as residing at the example web address http://www.3rdparty_website-here.com. The host webpage 500 includes a "sendData" function which triggers loading of the frame 502 in the webpage and calls the frame from the hyperlink targeted by the function (in this case, the example web address http://www.revolutionmoney.com/exchange/...).
The "sendData" function also passes data to the source of the frame information, identified by the link. The frame 502 includes content loaded based on the target hyperlink. The frame includes an operation to complete upon loading of the frame, as indicated by the Window.onLoad = function () code, which defines the size, position and other attributes of the frame.
In the context of the present disclosure, the third-party website will include code capable of calling a frame and sharing data, e.g. transaction data, with the source of that frame (e.g. a remote server, such as the financial server 110 of Figure 1). The source of content for the frame also provides the token used for managing real-time access to state information regarding the transaction to the third-party, as described above.
Referring now to FIGS. 6-10, a particular implementation of the methods and systems described above is discussed in conjunction with an online transaction representing a sale of goods or services. The online transaction referred to in the below figures can represent a sale (third-party host or local host) occurring on a third-party server, such as a server of an online retailer, an online auction site, or other online transaction facilitator.
The below example illustrates that payment steps inserted into a third-party website through use of a frame and token system allows for an uninterrupted purchase flow relating to existing "shopping cart" systems, while providing payment preapproval in advance of executing a purchase or sale.
Furthermore, the example illustrates that payment authentication steps using aspects of the present disclosure can be performed in the frame while remaining within a shopping cart environment or other transaction completion environment (i.e.
not rerouting the user to a separate website for payment).
Figure 6 illustrates a schematic shopping cart webpage 600 including a frame displaying payor authentication fields, according to a possible embodiment of the present disclosure. The shopping cart webpage as displayed illustrates an example output following execution of the host module 304 of Figure 3. As described in conjunction with Figure 5, the shopping cart webpage 600 includes a frame 602 generated within the page, which includes content retrieved from a remote server, such as a financial server. The content displayed in the frame includes user authentication information, such as could be generated by the content module 204 of Figure 2. The user authentication information includes, in the embodiment shown, a usemame request field 604 and a password request field 606.
Other user authentication information fields could be included as well.
Figure 7 illustrates the shopping cart webpage 600 of Figure 6, after the user of the page has entered proper authentication information into the frame 602. The state of the shopping cart webpage shown in Figure 7 can be reached, for example, during operation of the transaction information receipt module 206 of Figure 2, and prior to operation of the transaction information module 306 of Figure 3. The frame 602 displays a payment confirmation request, including a message requesting confirmation of the payment amount and a confirmation button 610.
The confirmation button 610 triggers confirmation of the funds transfer in conjunction with the transaction information displayed to the user (including the amount of funds involved in the transaction).
Figure 8 illustrates the schematic shopping cart webpage 600 of Figure 6, including a frame 602 displaying a funds confirmation message 612, according to a possible embodiment of the present disclosure. This version of the webpage can be reached, for example, following user selection of the confirmation button 610 of Figure 7, and operation of a particular embodiment of the state assessment operation 310 of Figure 3.
The funds confirmation message 612 provides an indication to the user of the webpage (e.g. the buyer) that the funds confirmation was successful.
This can include, as previously discussed, a confirmation that the user's account was successfully located and that account contained sufficient funds to complete the transaction. The funds confirmation message 612 is returned from the remote server for display to the webpage 600 at the same time a token is returned to the frame 602 from the remote server. The frame 602 then transfers this token to the third-party webpage 600 for use by the third-party. The token transmission steps are described in greater detail above in conjunction with the token return module 208 and the token transmission module 210 of Figure 2.
In the embodiment shown, the shopping cart webpage includes a purchase button 620 supplied by the webpage 600 outside of the frame 602. User selection of the purchase button causes the third-party webpage 600 to send the token received from the remote server (e.g. the financial server 110 of Figure 1) via the frame 602 back to the remote server to initiate a funds transfer operation.
Selection of the purchase button triggers the process shown in Figure 9, and causes display of a confirmation page 1000 as shown in Figure 10.
Figure 9 is a schematic data flow diagram 900 of data exchanged during a purchase of goods or services according to a possible embodiment of the present disclosure. The flow diagram 900 illustrates communication between a customer 902, a third-party webpage 904, a third-party server 906, and a remote server upon selection of the purchase button 620 of Figure 8. In the embodiment shown, the customer 902 can represent a buyer or seller using a website hosted by the third-party for executing purchase or sales transactions. The third-party webpage 904 is generally a webpage hosted by the third-party and displayed to the customer 902. The third-party server 906 can be the hosting server of the third-party webpage 904 or another server controlled by the same entity. The remote server corresponds to the entity facilitating the financial transaction, such as a financial server 110 of Figure 1.
An example data flow to complete the purchase proceeds as follows.
A customer 902 sends a purchase command 910 to the third-party webpage 904 by selecting the purchase button 620 of Figure 8. The third-party webpage 904 in turn transmits the transaction in a transaction message 920, including the token received at the webpage from the frame, to the third-party server 906. The transaction message 920 generally includes the information entered by the user into the third-party webpage 904 in conjunction with the purchase, such as product identification information, as well as the token received from the frame. The third-party server 906 transmits the token in a token message 930 to the remote server 908, which executes the funds transfer in a funds transfer operation 940 and returns a success state message 950 to the third-party server 906. The third-party server 906 commits the purchase in a commit purchase operation 960, and transmits a confirmation page message 970 (e.g. the confirmation webpage 1000 of Figure 10) for display to the customer 902.
Figure 10 illustrates a schematic confirmation webpage 1000 displayed following execution of a purchase of goods or services. The confirmation webpage is displayed following execution of the transaction, as illustrated in the transaction execution module 316 of Figure 3, and can represent the confirmation page transmitted by the confirmation page message 970 of Figure 9. The confirmation webpage 1000 communicates a message to the buyer indicating successful completion of the transaction.
Referring now to Figures 1-10, it can be seen that the process for facilitating online transactions described herein can be implemented in existing websites with little effort, in that only a few lines of code are required for implementation by a third-party. Further, third-party transaction completion process flow is not interrupted; rather, the frame inserted into the third-party website can interact with the website to provide real-time information regarding payment feasibility to that third-party and to the customer (buyer or seller) of that third-party.
Also, confirmation of payment can be performed prior to (or in the absence of) actual execution of the transaction.
The above specification, examples and data provide a complete description of the manufacture and use of the composition of the invention.
Since many embodiments of the invention can be made without departing from the spirit and scope of the invention, the invention resides in the claims hereinafter appended.
Claims (27)
1. A method of facilitating an online transaction, the method comprising:
supplying content for display in a frame of a website, the website hosted by a third-party;
receiving transaction information from the third-party;
returning a token to the frame, the token including state information based on the transaction information; and passing the token from the frame to the third-party.
supplying content for display in a frame of a website, the website hosted by a third-party;
receiving transaction information from the third-party;
returning a token to the frame, the token including state information based on the transaction information; and passing the token from the frame to the third-party.
2. The method of claim 1, further comprising:
receiving the token from the third-party; and upon receiving the token from the third-party, transferring funds from a first account to a second account based on the transaction information and the state information.
receiving the token from the third-party; and upon receiving the token from the third-party, transferring funds from a first account to a second account based on the transaction information and the state information.
3. The method of claim 2, wherein the first account is a customer account and the second account is a seller account.
4. The method of claim 2, wherein the second account is an account of the third-party.
5. The method of claim 1, wherein supplying content for display in a frame of a website includes supplying a user authentication page for display in the frame.
6. The method of claim 1, wherein the transaction information includes purchase data.
7. The method of claim 1, wherein the transaction information includes a funds amount.
8. The method of claim 1, further comprising transmitting a confirmation page for display in the frame.
9. The method of claim 1, wherein the transaction information relates to a purchase of goods or services.
10. The method of claim 9, wherein the transaction information relates to a purchase of goods or services from the third-party.
11. The method of claim 1, wherein the state information includes a confirmation of available funds based on the transaction information.
12. The method of claim 11, wherein the confirmation is further based on account information related to a user.
13. The method of claim 12, wherein the account information includes an account balance.
14. A system for facilitating online transactions, the system comprising:
a memory configured to store account information related to one or more users;
a programmable circuit in electrical communication with the memory, the programmable circuit programmed to:
supply content for display in a frame of a website, the website hosted by a third-party;
receive transaction information from the third-party;
return a token to the frame, the token including state information based on the transaction information and the account information; and pass the token from the frame to the third-party.
a memory configured to store account information related to one or more users;
a programmable circuit in electrical communication with the memory, the programmable circuit programmed to:
supply content for display in a frame of a website, the website hosted by a third-party;
receive transaction information from the third-party;
return a token to the frame, the token including state information based on the transaction information and the account information; and pass the token from the frame to the third-party.
15. The system of claim 14, wherein the account information includes an account balance.
16. The system of claim 14, wherein the programmable circuit is further programmed to:
receive the token from the third-party; and upon receiving the token from the third-party, transfer funds from a first account to a second account based on the transaction information and the state information.
receive the token from the third-party; and upon receiving the token from the third-party, transfer funds from a first account to a second account based on the transaction information and the state information.
17. The system of claim 16, wherein the first account is a customer account and the second account is an account related to the third-party.
18. The system of claim 14, wherein the transaction information relates to a purchase of goods or services from the third-party.
19. The system of claim 18, wherein the state information includes a confirmation of available funds based on the transaction information.
20. A method of executing one or more online transactions, the method comprising:
hosting a webpage including a frame, the frame configured to display content from a remote system unaffiliated with the webpage;
passing transaction information to the remote system, the transaction information relating to a transaction;
receiving a token from the frame, the token including state information based on the transaction information;
receiving a request to execute a transaction from a customer; and upon receiving the request, transmitting the token to the remote system.
hosting a webpage including a frame, the frame configured to display content from a remote system unaffiliated with the webpage;
passing transaction information to the remote system, the transaction information relating to a transaction;
receiving a token from the frame, the token including state information based on the transaction information;
receiving a request to execute a transaction from a customer; and upon receiving the request, transmitting the token to the remote system.
21. The method of claim 20, further comprising executing the transaction.
22. The method of claim 21, wherein the transaction comprises a sale of goods or services.
23. The method of claim 20, wherein the state information includes a confirmation of available funds based on the transaction information.
24. A system useable to execute one or more online transactions, the system comprising:
a memory configured to store information relating to one or more transactions;
a programmable circuit in electrical communication with the memory, the programmable circuit programmed to:
host a webpage including a frame, the frame configured to display content from a remote system unaffiliated with the webpage;
pass transaction information to the remote system, the transaction information relating to a transaction;
receive a token from the frame, the token including state information based on the transaction information;
receive a request to execute a transaction from a customer;
and upon receiving the request, transmit the token to the remote system.
a memory configured to store information relating to one or more transactions;
a programmable circuit in electrical communication with the memory, the programmable circuit programmed to:
host a webpage including a frame, the frame configured to display content from a remote system unaffiliated with the webpage;
pass transaction information to the remote system, the transaction information relating to a transaction;
receive a token from the frame, the token including state information based on the transaction information;
receive a request to execute a transaction from a customer;
and upon receiving the request, transmit the token to the remote system.
25. The system of claim 24, further comprising executing the transaction.
26. The system of claim 24, wherein the transaction comprises a sale of goods or services.
27. The system of claim 24, wherein the state information includes a confirmation of available funds based on the transaction information.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/054,164 | 2008-03-24 | ||
US12/054,164 US9208485B2 (en) | 2008-03-24 | 2008-03-24 | System and method for facilitating online transactions |
PCT/US2009/037965 WO2009142812A2 (en) | 2008-03-24 | 2009-03-23 | System and method for facilitating online transactions |
Publications (1)
Publication Number | Publication Date |
---|---|
CA2719941A1 true CA2719941A1 (en) | 2009-11-26 |
Family
ID=41089825
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CA2719941A Abandoned CA2719941A1 (en) | 2008-03-24 | 2009-03-23 | System and method for facilitating online transactions |
Country Status (8)
Country | Link |
---|---|
US (2) | US9208485B2 (en) |
EP (1) | EP2286379A4 (en) |
JP (1) | JP2011515781A (en) |
CN (1) | CN102067159A (en) |
BR (1) | BRPI0910032A2 (en) |
CA (1) | CA2719941A1 (en) |
MX (1) | MX2010010514A (en) |
WO (1) | WO2009142812A2 (en) |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9208485B2 (en) | 2008-03-24 | 2015-12-08 | American Express Travel Related Services Company, Inc. | System and method for facilitating online transactions |
US8249950B2 (en) | 2008-07-11 | 2012-08-21 | Ebay Inc. | Payment mechanism integration wizard |
CA2770224A1 (en) * | 2008-10-07 | 2010-04-15 | Paynearme, Inc. | Reverse payment transaction system and method |
US8612305B2 (en) * | 2008-10-31 | 2013-12-17 | Visa International Service Association | User enhanced authentication system for online purchases |
US9846872B2 (en) | 2010-04-06 | 2017-12-19 | American Express Travel Related Services Company, Inc. | Secure exchange of indicia of value and associated information |
US20120036048A1 (en) | 2010-08-06 | 2012-02-09 | Diy Media, Inc. | System and method for distributing multimedia content |
US20120143752A1 (en) | 2010-08-12 | 2012-06-07 | Mastercard International, Inc. | Multi-commerce channel wallet for authenticated transactions |
US10592792B2 (en) | 2011-04-14 | 2020-03-17 | Handle Financial, Inc. | Systems and methods for barcode translation |
CN102831515A (en) * | 2011-06-17 | 2012-12-19 | 苏州工业园区辰烁软件科技有限公司 | Method and system for carrying out electronic fund transfer by mobile equipment |
US9704155B2 (en) | 2011-07-29 | 2017-07-11 | Visa International Service Association | Passing payment tokens through an hop/sop |
CN102999838B (en) * | 2011-09-19 | 2015-11-25 | 腾讯科技(深圳)有限公司 | The disposal route of order data and disposal system in network payment system |
WO2013071158A1 (en) * | 2011-11-11 | 2013-05-16 | Ebay Inc. | Systems and methods for secure authentication using a watermark |
US9626701B2 (en) | 2012-05-23 | 2017-04-18 | Paynearme, Inc. | System and method for facilitating cash payment transactions using a mobile device |
US9576279B2 (en) * | 2012-06-05 | 2017-02-21 | Autoscribe Corporation | System and method for registering financial accounts |
US10192407B2 (en) | 2014-01-10 | 2019-01-29 | Handle Financial, Inc. | Systems and methods for cash payments for online gaming |
US11030587B2 (en) * | 2014-04-30 | 2021-06-08 | Mastercard International Incorporated | Systems and methods for providing anonymized transaction data to third-parties |
US10454943B2 (en) * | 2015-08-17 | 2019-10-22 | The Toronto-Dominion Bank | Augmented and virtual reality based process oversight |
US20180047021A1 (en) * | 2016-08-09 | 2018-02-15 | Mastercard International Incorporated | System and method for token-based transactions |
US10339931B2 (en) | 2017-10-04 | 2019-07-02 | The Toronto-Dominion Bank | Persona-based conversational interface personalization using social network preferences |
US10460748B2 (en) | 2017-10-04 | 2019-10-29 | The Toronto-Dominion Bank | Conversational interface determining lexical personality score for response generation with synonym replacement |
US20200320622A1 (en) * | 2019-04-05 | 2020-10-08 | Secude Ag | Method and system for processing and documenting digital transactions |
US11410157B2 (en) * | 2019-11-25 | 2022-08-09 | Capital One Services, Llc | Programmable card for token payment and systems and methods for using programmable card |
Family Cites Families (99)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4408203A (en) | 1978-01-09 | 1983-10-04 | Mastercard International, Inc. | Security system for electronic funds transfer system |
US4943707A (en) | 1987-01-06 | 1990-07-24 | Visa International Service Association | Transaction approval system |
US4908521A (en) | 1987-01-06 | 1990-03-13 | Visa International Service Association | Transaction approval system |
US4797920A (en) | 1987-05-01 | 1989-01-10 | Mastercard International, Inc. | Electronic funds transfer system with means for verifying a personal identification number without pre-established secret keys |
US4906826A (en) | 1988-09-19 | 1990-03-06 | Visa International Service Association | Usage promotion method for payment card transaction system |
US5136633A (en) | 1990-01-30 | 1992-08-04 | Visa International Service Association | International authorization system |
USRE36788E (en) | 1990-09-06 | 2000-07-25 | Visa International Service Association | Funds transfer system |
US5177342A (en) | 1990-11-09 | 1993-01-05 | Visa International Service Association | Transaction approval system |
US5396624A (en) | 1990-12-20 | 1995-03-07 | Visa International Service Association | Account file for off-line transaction authorization |
US5255182A (en) | 1992-01-31 | 1993-10-19 | Visa International Service Association | Payment card point-of-sale service quality monitoring system, apparatus, and method |
US5384449A (en) | 1992-04-28 | 1995-01-24 | Visa International Service Association | Authorization matching system |
US5455406A (en) | 1992-12-15 | 1995-10-03 | Hitachi, Ltd. | Automatic transaction apparatus |
USRE36365E (en) | 1993-10-25 | 1999-11-02 | Visa International Service Association | Method and apparatus for distributing currency |
US5557516A (en) | 1994-02-04 | 1996-09-17 | Mastercard International | System and method for conducting cashless transactions |
US5878215A (en) | 1994-05-23 | 1999-03-02 | Mastercard International Incorporated | System and method for processing multiple electronic transaction requests |
US5715314A (en) * | 1994-10-24 | 1998-02-03 | Open Market, Inc. | Network sales system |
US5692132A (en) | 1995-06-07 | 1997-11-25 | Mastercard International, Inc. | System and method for conducting cashless transactions on a computer network |
US5790677A (en) | 1995-06-29 | 1998-08-04 | Microsoft Corporation | System and method for secure electronic commerce transactions |
US5703344A (en) | 1995-06-30 | 1997-12-30 | Visa International Service Association | Electronic funds confirmation at point of transaction |
US5710887A (en) * | 1995-08-29 | 1998-01-20 | Broadvision | Computer system and method for electronic commerce |
US5699528A (en) | 1995-10-31 | 1997-12-16 | Mastercard International, Inc. | System and method for bill delivery and payment over a communications network |
US5704798A (en) | 1996-02-09 | 1998-01-06 | Sony Corporation | Apparatus for automatically terminating a signal |
US5761306A (en) | 1996-02-22 | 1998-06-02 | Visa International Service Association | Key replacement in a public key cryptosystem |
US5704046A (en) | 1996-05-30 | 1997-12-30 | Mastercard International Inc. | System and method for conducting cashless transactions |
US5844803A (en) | 1997-02-17 | 1998-12-01 | Micron Technology, Inc. | Method of sorting a group of integrated circuit devices for those devices requiring special testing |
US6018723A (en) | 1997-05-27 | 2000-01-25 | Visa International Service Association | Method and apparatus for pattern generation |
US6119103A (en) | 1997-05-27 | 2000-09-12 | Visa International Service Association | Financial risk prediction systems and methods therefor |
JP3137052B2 (en) * | 1997-09-25 | 2001-02-19 | 日本電気株式会社 | Internet payment method |
AU758710B2 (en) | 1997-12-19 | 2003-03-27 | Visa International Service Association | Card activation at point of distribution |
US6578768B1 (en) | 1998-03-20 | 2003-06-17 | Mastercard International Incorporated | Method and device for selecting a reconfigurable communications protocol between and IC card and a terminal |
US6615189B1 (en) * | 1998-06-22 | 2003-09-02 | Bank One, Delaware, National Association | Debit purchasing of stored value card for use by and/or delivery to others |
US6315193B1 (en) | 1998-08-31 | 2001-11-13 | Mastercard International Incorporated | Financial transaction card with installment loan feature |
US6058417A (en) | 1998-10-23 | 2000-05-02 | Ebay Inc. | Information presentation and management in an online trading environment |
US6999569B2 (en) | 1998-10-28 | 2006-02-14 | Mastercard International Incorporated | System and method for using a prepaid card |
US6473500B1 (en) | 1998-10-28 | 2002-10-29 | Mastercard International Incorporated | System and method for using a prepaid card |
US7039809B1 (en) | 1998-11-12 | 2006-05-02 | Mastercard International Incorporated | Asymmetric encrypted pin |
CA2910997A1 (en) | 1999-04-30 | 2000-11-09 | Paypal, Inc. | System and method for electronically exchanging value among distributed users |
US6457005B1 (en) | 1999-06-17 | 2002-09-24 | Hotjobs.Com, Ltd. | Method and system for referral management |
US6957334B1 (en) | 1999-06-23 | 2005-10-18 | Mastercard International Incorporated | Method and system for secure guaranteed transactions over a computer network |
US7578439B2 (en) * | 1999-08-19 | 2009-08-25 | E2Interactive, Inc. | System and method for authorizing stored value card transactions |
US7168615B2 (en) * | 2001-09-24 | 2007-01-30 | E2Interactive, Inc. | Keycard for automating transaction requests |
US7249093B1 (en) | 1999-09-07 | 2007-07-24 | Rysix Holdings, Llc | Method of and system for making purchases over a computer network |
US6748367B1 (en) | 1999-09-24 | 2004-06-08 | Joonho John Lee | Method and system for effecting financial transactions over a public network without submission of sensitive information |
US6681328B1 (en) | 1999-10-08 | 2004-01-20 | Mastercard International Incorporated | System and method for global internet digital identification |
US7373317B1 (en) | 1999-10-27 | 2008-05-13 | Ebay, Inc. | Method and apparatus for facilitating sales of goods by independent parties |
US6381315B1 (en) * | 1999-12-02 | 2002-04-30 | Eli Nhaissi | Universal exchange for making least-cost non-local telephone calls |
KR100354237B1 (en) | 1999-12-29 | 2002-09-26 | 김동경 | Electronic commerce approval system and method thereof |
US6938013B1 (en) | 2000-01-05 | 2005-08-30 | Uniteller Financial Services, Inc. | Money-transfer techniques |
US6990470B2 (en) | 2000-04-11 | 2006-01-24 | Mastercard International Incorporated | Method and system for conducting secure payments over a computer network |
US7177848B2 (en) | 2000-04-11 | 2007-02-13 | Mastercard International Incorporated | Method and system for conducting secure payments over a computer network without a pseudo or proxy account number |
US7379919B2 (en) | 2000-04-11 | 2008-05-27 | Mastercard International Incorporated | Method and system for conducting secure payments over a computer network |
US6604107B1 (en) | 2000-04-24 | 2003-08-05 | Ebay Inc. | Generic attribute database system for storing items of different categories having shared attributes |
US7370011B2 (en) | 2000-06-28 | 2008-05-06 | Yahoo! Inc. | Financial information portal |
AU8348901A (en) | 2000-07-10 | 2002-01-21 | Mastercard International Inc | Method and system for conducting secure electronic commerce transactions with authorization request data loop-back |
WO2002005231A2 (en) | 2000-07-11 | 2002-01-17 | Paypal, Inc. | System and method for third-party payment processing |
US7343335B1 (en) | 2000-08-08 | 2008-03-11 | Ebay Inc. | Method for managing group finances via an electronic network |
US7031939B1 (en) | 2000-08-15 | 2006-04-18 | Yahoo! Inc. | Systems and methods for implementing person-to-person money exchange |
KR20000064158A (en) | 2000-08-25 | 2000-11-06 | 이한열 | Safety trading system |
JP2002133334A (en) * | 2000-10-18 | 2002-05-10 | Oki Electric Ind Co Ltd | Credit settlement substituting server |
US7340429B2 (en) | 2000-10-23 | 2008-03-04 | Ebay Inc. | Method and system to enable a fixed price purchase within a online auction environment |
US7356507B2 (en) | 2000-10-30 | 2008-04-08 | Amazon.Com, Inc. | Network based user-to-user payment service |
US7318049B2 (en) | 2000-11-17 | 2008-01-08 | Gregory Fx Iannacci | System and method for an automated benefit recognition, acquisition, value exchange, and transaction settlement system using multivariable linear and nonlinear modeling |
US7299206B2 (en) | 2000-11-30 | 2007-11-20 | Ebay Inc. | Method and system to implement seller authorized buying privileges within a network-based shopping facility |
US7290364B2 (en) | 2000-12-08 | 2007-11-06 | Discover Financial Services Llc | Non-rectangular shaped credit card with case |
US7406529B2 (en) | 2001-02-09 | 2008-07-29 | Yahoo! Inc. | System and method for detecting and verifying digitized content over a computer network |
US7249094B2 (en) | 2001-02-26 | 2007-07-24 | Paypal, Inc. | System and method for depicting on-line transactions |
US7227950B2 (en) | 2001-02-27 | 2007-06-05 | Visa International Service Association | Distributed quantum encrypted pattern generation and scoring |
KR20020071144A (en) | 2001-03-05 | 2002-09-12 | 나병호 | Using bank account for delay paymemt, payment system and method |
US6915279B2 (en) | 2001-03-09 | 2005-07-05 | Mastercard International Incorporated | System and method for conducting secure payment transactions |
CA2440682A1 (en) | 2001-03-19 | 2002-09-26 | Mastercard International Incorporated | Method and system for making small payments using a payment card |
US7080328B1 (en) | 2001-03-28 | 2006-07-18 | Ebay, Inc. | Graphical user interface for filtering a population of items |
US7401049B2 (en) * | 2001-05-29 | 2008-07-15 | American Express Travel Related Services Company, Inc. | System and method for a prepaid card issued by a foreign financial institution |
US7191151B1 (en) | 2001-08-23 | 2007-03-13 | Paypal, Inc. | Instant availability of electronically transferred funds |
US6857566B2 (en) | 2001-12-06 | 2005-02-22 | Mastercard International | Method and system for conducting transactions using a payment card with two technologies |
CA2476502C (en) * | 2002-02-15 | 2016-10-11 | Coinstar, Inc. | Methods and systems for exchanging and/or transferring various forms of value |
US20040044739A1 (en) * | 2002-09-04 | 2004-03-04 | Robert Ziegler | System and methods for processing PIN-authenticated transactions |
US7072944B2 (en) | 2002-10-07 | 2006-07-04 | Ebay Inc. | Method and apparatus for authenticating electronic mail |
US7003493B2 (en) * | 2003-01-22 | 2006-02-21 | First Data Corporation | Direct payment with token |
AU2003903229A0 (en) * | 2003-06-25 | 2003-07-10 | Ewise Systems Pty Ltd | A system and method for facilitating on-line payment |
US7152782B2 (en) | 2003-07-11 | 2006-12-26 | Visa International Service Association | System and method for managing electronic data transfer applications |
WO2005048145A1 (en) | 2003-10-13 | 2005-05-26 | Starbucks Corporation D/B/A Starbucks Coffee Company | Dual card |
IL158694A (en) * | 2003-10-30 | 2014-11-30 | Verifone Israel Ltd | Prepaid debit card processing |
US7350192B2 (en) | 2003-12-08 | 2008-03-25 | Ebay Inc. | Method and system to automatically generate software code |
KR20070003830A (en) | 2004-01-23 | 2007-01-05 | 마스터카드 인터내셔날, 인코포레이티드 | System and method for generating collision-free identifiers for financial transaction cards |
US8175938B2 (en) * | 2004-04-13 | 2012-05-08 | Ebay Inc. | Method and system for facilitating merchant-initiated online payments |
US9542671B2 (en) * | 2004-05-12 | 2017-01-10 | Paypal, Inc. | Method and system to facilitate securely processing a payment for an online transaction |
US7369505B2 (en) | 2004-06-07 | 2008-05-06 | Ebay Inc. | Method and system to efficiently manage network connection to connect a client and a resource |
US8083133B2 (en) * | 2005-05-04 | 2011-12-27 | The Western Union Company | System and method for accounting for activation of stored value cards |
US7374082B2 (en) | 2005-07-13 | 2008-05-20 | Mastercard International Incorporated | Apparatus and method for integrated payment and electronic merchandise transfer |
US20100285818A1 (en) | 2009-05-08 | 2010-11-11 | Crawford C S Lee | Location based service for directing ads to subscribers |
US20070136194A1 (en) | 2005-12-14 | 2007-06-14 | David Sloan | Hybrid card |
US7516882B2 (en) * | 2006-03-09 | 2009-04-14 | Robert Cucinotta | Remote validation system useful for financial transactions |
US8028041B2 (en) * | 2006-04-07 | 2011-09-27 | Ebay Inc. | Dynamic content for online transactions |
US10395264B2 (en) * | 2007-04-30 | 2019-08-27 | Visa U.S.A. Inc. | Payment account processing which conveys financial transaction data and non financial transaction data |
US9208485B2 (en) | 2008-03-24 | 2015-12-08 | American Express Travel Related Services Company, Inc. | System and method for facilitating online transactions |
US8301495B2 (en) * | 2009-05-05 | 2012-10-30 | Groupon, Inc. | System and methods for discount retailing |
US20100299194A1 (en) * | 2009-05-22 | 2010-11-25 | Snyder Glenn A | Systems and methods for implementing and managing gift cards |
US20110099055A1 (en) * | 2009-10-28 | 2011-04-28 | Rehan Syed Khalil | Method of procuring and vending fuel at a discounted price |
US20110196753A1 (en) * | 2010-02-09 | 2011-08-11 | Brian Joseph Hodgdon | System and method for immediate issuance of an activated prepaid card with improved security measures |
-
2008
- 2008-03-24 US US12/054,164 patent/US9208485B2/en active Active
-
2009
- 2009-03-23 CN CN200980118520XA patent/CN102067159A/en active Pending
- 2009-03-23 EP EP09751042A patent/EP2286379A4/en not_active Withdrawn
- 2009-03-23 MX MX2010010514A patent/MX2010010514A/en not_active Application Discontinuation
- 2009-03-23 WO PCT/US2009/037965 patent/WO2009142812A2/en active Application Filing
- 2009-03-23 CA CA2719941A patent/CA2719941A1/en not_active Abandoned
- 2009-03-23 BR BRPI0910032A patent/BRPI0910032A2/en not_active IP Right Cessation
- 2009-03-23 JP JP2011501952A patent/JP2011515781A/en active Pending
-
2015
- 2015-10-28 US US14/925,114 patent/US9818110B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
MX2010010514A (en) | 2010-12-14 |
US9208485B2 (en) | 2015-12-08 |
US20090240594A1 (en) | 2009-09-24 |
US9818110B2 (en) | 2017-11-14 |
CN102067159A (en) | 2011-05-18 |
WO2009142812A2 (en) | 2009-11-26 |
EP2286379A4 (en) | 2013-02-13 |
US20160048832A1 (en) | 2016-02-18 |
WO2009142812A3 (en) | 2011-01-13 |
JP2011515781A (en) | 2011-05-19 |
BRPI0910032A2 (en) | 2015-12-29 |
EP2286379A2 (en) | 2011-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9818110B2 (en) | Method, medium, and system for facilitating online transactions | |
US8744921B2 (en) | Exchanging value between a service buyer and a service provider | |
US10922694B2 (en) | Automatic teller machine (ATM) electronic push requests | |
US20140310181A1 (en) | Anonymous online payment systems and methods | |
US20100161399A1 (en) | Instant payout incentive system | |
US20010037261A1 (en) | Agent purchase method, agent purchase system and record medium containing transaction management program | |
US20080114684A1 (en) | Termination of transactions | |
WO2007137465A1 (en) | A method and system thereof for online managing virtual wealth in network game | |
JP2005267618A (en) | Electronic commerce support device and program | |
US20090192911A1 (en) | Payment redirection for online transactions | |
JP2003108904A (en) | Refund agency method and its system | |
JP2007293867A (en) | Internet system integrated to mediate financial loan, merchandise purchase and service providing | |
US20210166239A1 (en) | Payment assistance system and payment assistance method | |
JP2007272617A (en) | Purchase proxy server system | |
JP4472679B2 (en) | Settlement ticket processing server, system, method and program thereof | |
JP2002133342A (en) | Center processing device of electronic commerce | |
KR20140070945A (en) | Method for operating m financial goods connected with mediation service for trading work of art | |
TWI780578B (en) | E-commerce platform server and method for assisting suppliers in obtaining loan | |
JP5918995B2 (en) | Payment processing method and bank server used for the payment processing | |
JP2017120603A (en) | Electronic commercial transaction system, bank account system, site management system, electronic commercial transaction method, and program | |
TW201638844A (en) | Trading system and method with seller-defined installments | |
AU2013263742A1 (en) | Payment using funds pushing | |
JP2001265972A (en) | Agent system in transaction on internet | |
JP2003186978A (en) | Information management method and its execution system, and its processing program | |
JP2002092335A (en) | Guaranteeing method and settling method in transaction between companies |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
EEER | Examination request | ||
FZDE | Discontinued |
Effective date: 20141229 |