The present invention relates to an electronic commerce system and method. In particular, the present invention relates to methods of, and systems for, conducting a transaction between a user of a remote communications device and a second party.
Mobil commerce, also known as m-commerce, is gaining greater market penetration as the use of electronic networks (such as the Internet) become more popular. Mobile commerce involves the execution of a transaction between a user of a remote communications device (e.g., a mobile communications device) and a second party, such as a merchant, a bank, a back-end settlement system (e.g., a transaction processing system of a financial institution), etc.
The general process steps associated with conducting a transaction between two parties using mobile commerce includes activating a mobile device and executing a software application suitable for conducting a transaction. A real time secure communications session is established between the mobile device and the other party over a communications channel to facilitate the transaction.
Parameters of a real time transaction are established, such as monetary amounts, account information, product and/or service identification, delivery information, etc. Often, these parameters are established via user input to the software application. For example, the software application may facilitate the transmission of an electronic form from the other party to the mobile device over the communications channel. The electronic form may include entry fields, which correspond to the parameters of the transaction, e.g., product identification, price, delivery, etc. As the user enters information into the form, the information establishes at least some of the parameters of the transaction.
A real time transaction data structure is created by the software application, which includes the parameters of the transaction previously obtained. The real time transaction data structure may be augmented with a digital certificate suitable for authenticating the data structure as is known in the art. The real time transaction data structure and digital certificate, if any, is transferred to the other party over the communications channel. A response is received at the mobile device from the other party and additional steps necessary to complete the transaction are performed.
The above described conventional process for conducting a mobile transaction suffers from a substantial disadvantage in that no progress can be made in facilitating the transaction when the secure communications session over the communications channel is not established. Indeed, there are often times when the mobile device is not in communication with the other party and such communication cannot be established, for example, due to failures in certain equipment, excessive loads over the communications channel, etc. Thus, the user must wait until a later time to execute the steps necessary to conduct a transaction, despite that the present time is most convenient.
Accordingly, there is a need in the art for new methods of, and systems for, conducting a transaction between a user of a remote communications device and a second party such that at least some of the steps in conducting the transaction may be executed despite a temporary absence of, or capability of establishing, communication between the remote communications device and the second party.
A method of conducting a transaction between a user of a remote communications device and a second party according to one aspect of the present invention includes: creating a transaction data structure based on input from the user that defines the transaction; creating a deferred transaction data structure, corresponding to the transaction data structure that defines a deferred transaction, when establishing communication between the remote communications device and the second party is temporarily not obtainable or is interrupted; storing the deferred transaction data structure in a memory; establishing communication between the remote communications device and the second party; and transmitting the deferred transaction data structure to the second party when the communication between the remote communications device and the second party is established. Preferably, the deferred transaction data structure is automatically transmitted to the second party when communication is established.
Preferably, the method further includes: creating a real time transaction data structure based on input from the user that defines a real time transaction after the deferred transaction data structure is stored in the memory; creating a combined transaction data structure by aggregating the real time transaction data structure and the deferred transaction data structure; and transmitting the combined transaction data structure to the second party.
The method may also include: establishing a digital certificate and associating the digital certificate with the transaction data structure, the digital certificate identifying the transaction, the user, and/or the remote communications device as being authorized; and associating the digital certificate with the deferred transaction data structure when establishing communication between the remote communications device and the second party is delayed.
Preferably, the method includes: assigning a transaction identification field to each transaction data structure prior to transmitting the combined transaction data structure to the second party; and/or receiving combined response data from the second party containing transaction results concerning the real time transaction data structure and the deferred transaction data structure. The method may also include parsing the combined response data and matching the respective transaction results with the real time transaction and the deferred transaction based on the transaction identification fields. Preferably, the transaction result concerning the real time transaction data structure is matched with the real time transaction before the transaction result concerning the deferred transaction data structure is matched with the deferred transaction.
The method may also preferably include assigning an application identification field to each deferred transaction data structure prior to storing the deferred transaction data structure in memory. In this situation, at least one software application is employed in creating the real time transaction data structure and the deferred transaction data structure. Preferably, the application identification field(s) are removed from each deferred transaction data structure prior to transmitting the combined transaction data structure to the second party.
Preferably, the method includes: matching the transaction result concerning the real time transaction data structure with the at least one software application to facilitate completion of the real time transaction; and/or matching the transaction result concerning the deferred transaction data structure with the at least one software application and executing the at least one software application to facilitate completion of the deferred transaction.
Alternatively, the method need not include the creation of a real time transaction or a real time transaction data structure. In this case, the above steps concerning the deferred transaction and deferred transaction data structure(s) are carried out irrespective of a real time transaction.
Preferably, at least one software application is employed in creating the deferred transaction data structure and establishing the digital certificate. In this case, it is preferred that the method include storing the digital certificate in memory when (i) establishing communication between the remote communications device and the second party is delayed and (ii) the digital certificate is an application specific digital certificate. The method may also include storing a pointer to the digital certificate in memory when (i) establishing communication between the remote communications device and the second party is delayed, and (ii) the digital certificate is a general digital certificate. Still further, the method may also include storing the digital certificate in memory (or storing a pointer to the digital certificate in memory) when (i) establishing communication between the remote communications device and the second party is delayed, and (ii) the digital certificate is specific to the remote communications device.
In accordance with another aspect of the present invention, a storage medium containing a software program capable of causing a remote communications device to execute actions in conducting a transaction between a user of the remote communications device and a second party is contemplated. Preferably, the actions include those recited in the methods hereinabove. According to still another aspect of the present invention, a remote communications device including a microprocessor operating under the control of the software program is contemplated.
Other objects, features, and advantages of the present invention will become apparent to those skilled in the art from the following description of the invention with reference to the accompanying drawings.
For the purpose of illustrating the invention, there are shown in the drawing forms, which are presently preferred, it being understood, however, that the invention is not limited to the precise arrangements and instrumentalities shown.
a, 3b, and 3c are flow diagrams illustrating process steps that may be carried out in accordance with one or more aspects of the present invention.
Referring now to the drawings wherein like numerals indicate like elements, there is shown in
Reference is now made to
The remote communications device 100 includes at least one application 102, a transaction manager 104, a communications manager 106, a deferred transactions database 108, and a digital certificate database 110. The remote communications device 100 may alternatively further include an e-business agents manager 112, and an agent database 114. For the purposes of discussion, the elements of the remote communications device 100 are illustrated as functional units, which units may be implemented in hardware, software and/or a combination of both. In one embodiment, the remote communications device 100 includes a microprocessor (not shown) operating under the control of a software program, or software programs, capable of causing the device 100 to execute actions in conducting a transaction between a user of the remote communications device 100 and a second party over a communications channel 120. Some of the functional units are preferably substantially all software, such as the application(s) 102, while other functional units may be implemented in substantially all hardware or a combination of software and hardware, such as the transaction manager 104.
An application 102 may be any user application employed to carry out a transaction, such as a web browser program that supports e-commerce transactions and/or m-commerce (e.g., retail/wholesale purchases, Internet banking, settlement transactions, Internet investment transactions, electronic data interchange transactions, etc.). The transaction manager 104 is in communication with the application 102, the deferred transactions database 108, and the communications manager 106 in a way which facilitates the transaction. The transaction is preferably a secure transaction utilizing PKI technology (e.g., including encryption/decryption, establishment of a secure communications session, verification of the second party or server-side entity, authentication of the user of the remote communications device 100, creation of digital signatures, etc.).
The communications manager 106 is preferably operable to establish and manage a communications session with an outside entity (second party) 14, such as a back-end settlement system 16, a merchant, a bank, a financial institution, another person, another entity, etc. 18 (as shown and discussed above with respect to
The types of transactions contemplated by the invention include: (i) electronic network banking (e.g., funds transfers between financial accounts); (ii) settlement activities (e.g., funds clearing between financial accounts, financial institutions, etc.); (iii) retail and/or wholesale purchase and/or delivery of products or services (e.g., e-commerce transactions); (iv) electronic network investment transactions (e.g., retail and/or institutional securities, or bond, transactions); and/or (v) electronic network data interchange (e.g., exchange of information between people or institutions).
The deferred transactions database 108 is preferably operable to receive, and return, deferred transactions data structures from, and to, the transaction manager 104. The deferred transactions database 108 may also communicate with a digital certificate database 110 under certain circumstances (discussed further below).
With further reference to
At action 204, an attempt to establish a communications session (preferably a secure communications session) with a second party is made. This may preferably be achieved utilizing the communications manager 106. If a secure communications session can be established, then at action 206 the process flow branches to action 208 (shown passing through action 207, which is discussed further below) where a real time transaction is executed, for example, utilizing the application 102. This involves establishing a transaction data structure, which may include monetary amounts, account numbers, financial institution data, product and/or service information, purchase amount, delivery instructions, remittance information, etc. The transaction data structure may be established by way of user input, information stored within the remote communications device 100, and/or information obtained over the communications channel 120 from the second party 14.
If a secure communications session cannot be established at action 206, or if a secure communications session is interrupted (e.g., action 207 due to failure of the remote communications device 100 or some external cause), then the process flow branches to action 210 where a deferred transaction data structure is created from a transaction data structure. This may be achieved utilizing some or all of the information that would be included in a real time transaction data structure, it being preferred that the deferred transaction data structure contains all of the information of a real time transaction data structure augmented with an application identification field. The application identification field preferably identifies which of a plurality of applications 102 the user was executing at the time of establishing the transaction data structure and the deferred transaction data structure.
At action 214, the deferred transaction data structure is stored in a memory, preferably the deferred transactions database 108 (
It is noted that a digital certificate may be created at the time that a transaction data structure is created, which digital certificate is capable of authenticating the user, the transaction data structure, and/or the remote communications device 100 itself, thereby ensuring that the transaction is authorized. When a digital certificate is created, it is preferred that the digital certificate be stored with the deferred transaction data structure, for example, in the deferred transactions database 108. When the digital certificate is an application specific digital certificate (i.e., a digital certificate which is utilized by only one application 102, or only certain applications 102), then the digital certificate is preferably stored in the deferred transactions database 108. When the digital certificate is a general digital certificate (i.e., a digital certificate utilized by substantially all of the applications 102), then the digital certificate is preferably stored in a digital certificate database 110 (
At action 215, each of the transaction applications 102 are preferably notified that a corresponding deferred transaction has been (or is being) created. A reference to the deferred transaction data structure of the corresponding deferred transaction is also preferably provided to the transaction application 102, such as a unique identification number, etc. Advantageously, this notification and access to the deferred transaction data structure provides the transaction application with an opportunity to execute appropriate actions in response to the unexpected deferred transaction, such as clean-up etc.
Advantageously, the user is capable of making progress concerning a transaction (i.e., creating a deferred transaction data structure) despite that a secure communications session could not be established with the second party at actions 204, 206, or a secure communications session was lost (action 207). Thus, the user need not expend the effort necessary in creating a real time transaction data structure in the future to facilitate a transaction, which may be defined by the deferred transaction data structure in the present. Indeed, the deferred transaction data structure will be accessible (either automatically or via user command) at a future time when a secure communications session can be established.
Turning again to actions 204, 206, at some time in the future, communications (preferably secure communications) is established between the remote communications device 100 and the second party, for example, a merchant. At action 208, the user preferably executes a real time transaction by creating a transaction data structure defining the real time transaction. It is noted that a real time transaction need not be executed to fall within the scope of the invention. Indeed, the user may wish only to execute one or more of the deferred transactions. Either automatically, or at the user's command, the deferred transactions database 108 is searched for deferred transaction data structure(s) (action 210A). At action 212A, if no deferred transaction data structure(s) exist, then the process flow branches to action 222 (
At action 216A, a transaction identification field is preferably added to each transaction, for example, the real time transaction, if any, may be assigned an identification field of one (1), a first deferred transaction may be assigned an identification field of two (2), etc. At action 218, (
At action 220, a combined transaction data structure is preferably created containing the real time, if any, and one or more deferred transaction data structures. As was discussed above, it is preferred that the deferred transaction data structure is stored in encrypted form. It is also preferred that the combined transaction data structure include the deferred transaction data structures in such encrypted form. At action 222, the combined transaction data structure is transmitted using the communications manager 106 over the communications channel 120 to the second party. It is noted that the combined transaction data structure would contain only the real time transaction data structure, if any, if no deferred transaction data structure(s) exist. Likewise, if no real time transaction data structure exists, then the combined transaction data structure would contain only one or more deferred transaction data structures.
At action 224, the second party preferably parses the combined transaction data structure to determine the number of separate transactions contained therein. If the combined transaction data structure contained encrypted transaction data structures, then the second party would first decrypt the transaction data structures. Each transaction data structure is then processed in a manner well known in the art, for example, by communicating with at least one third party, e.g., merchants, banks, etc. If such communication requires the transmission of the transaction data structure(s), then encryption/decryption is preferably employed to maintain security. The second party preferably prepares response data containing transaction results for each of the transactions of the combined transaction data structure (action 226). The response data is then transmitted to the remote communications device 100 over the communications channel 120. Preferably, the transaction results are encrypted (individually or collectively) prior to transmission over the communications channel 120.
At action 228, the remote communications device 100 preferably parses the response data and matches any separate transaction results to the separate transactions and associated applications 102. This is preferably accomplished using the transaction identification fields and application identification fields. If the transaction results were encrypted prior to transmission, then the transaction manager 104 preferably decrypts them prior to parsing the response data. Preferably, the real time transaction result, if any, is matched with the real time transaction first. At action 230, the associated applications 102 may be executed such that they may draw upon the information in the respective transaction results and the transaction may be completed. It is noted that underlying software services layers (which are substantially transparent to the user) may draw upon the transaction results as well as the associated applications 102 (which are user-level layers).
In accordance with an alternative embodiment of the present invention, and with reference to
At action 248, the remote communications device 100 preferably receives response data from the back-end settlement system 16 and, at action 250, matches the transaction results to the corresponding transaction and associated transaction application 102. At action 252, the associated transaction application 102 may draw upon the information in the transaction results and the transaction may be completed.
According to at least one aspect of the invention, the remote communications device 100 preferably includes a microprocessor operating under the control of a software program. The software program is preferably capable of causing the remote communications device 100 to execute the actions disclosed above in, for example,
Advantageously, in accordance with the invention, the user can queue transactions (preferably secure transactions) at a convenient time such that they may be carried out transparently, immediately or at a later time. For example, ATM transactions, such as transferring money between accounts, require a significant amount of time to compose and execute at a machine location. Utilizing the invention, however, the user can queue up all of his or her transactions prior to interfacing with an ATM machine such that they may be carried out substantially simultaneously at the ATM machine. Alternatively, the user may employ the remote communications device 100 (e.g., a digital wallet) at a grocery store POS terminal to conduct a real time purchase and simultaneously execute any deferred transactions.
Security loopholes are ameliorated inasmuch as the invention supports security and user authentication at the time of transaction creation and utilizes a secure real time connection to complete the deferred transaction.
The invention also permits maximization of infrastructure efficiency in communication connection and usage while reducing the transaction operation cost on a per transaction basis. Further, if a separate party supplies the infrastructure for the communications connection, that party may be provided with a small service fee when deferred transactions are carried out during a communications session. For example, a grocery store may receive a certain monetary amount for each additional deferred transaction that is not augmented with the grocery store's transaction data structures. This fee would preferably be included in the overall transaction processing fees charged by a back-end settlement system as opposed to being charged to the user.
In accordance with still one or more further aspects of the invention, additional advantages may be obtained when so-called e-business agents are incorporated into the remote communications device 100 (see
Although the invention herein has been described with reference to particular embodiments, it is to be understood that these embodiments are merely illustrative of the principles and applications of the present invention. It is therefore to be understood that numerous modifications may be made to the illustrative embodiments and that other arrangements may be devised without departing from the spirit and scope of the present invention as defined by the appended claims.
This application claims the benefit of U.S. Provisional Patent Application No. 60/254,604, filed Dec. 11, 2000, entitled METHOD AND SYSTEM FOR EXECUTING DEFERRED TRANSACTIONS, the entire disclosure of which is hereby incorporated by reference.
Number | Name | Date | Kind |
---|---|---|---|
4582985 | Lofberg | Apr 1986 | A |
4766293 | Boston | Aug 1988 | A |
5056019 | Schultz et al. | Oct 1991 | A |
5131038 | Puhl et al. | Jul 1992 | A |
5173851 | Off et al. | Dec 1992 | A |
5221838 | Gutman et al. | Jun 1993 | A |
5256863 | Ferguson et al. | Oct 1993 | A |
5276736 | Chaum | Jan 1994 | A |
5280527 | Gullman et al. | Jan 1994 | A |
5323146 | Glaschick et al. | Jun 1994 | A |
5329589 | Fraser et al. | Jul 1994 | A |
5436972 | Fischer | Jul 1995 | A |
5457747 | Drexler et al. | Oct 1995 | A |
5461217 | Claus | Oct 1995 | A |
5475758 | Kikuchi et al. | Dec 1995 | A |
5521362 | Powers | May 1996 | A |
5521890 | Miche et al. | May 1996 | A |
5537314 | Kanter | Jul 1996 | A |
5550358 | Tait et al. | Aug 1996 | A |
5557518 | Rosen | Sep 1996 | A |
5557541 | Schulhof et al. | Sep 1996 | A |
5561709 | Remillard | Oct 1996 | A |
5594230 | Waite et al. | Jan 1997 | A |
5598474 | Johnson | Jan 1997 | A |
5604805 | Brands | Feb 1997 | A |
5615277 | Hoffman | Mar 1997 | A |
5623552 | Lane | Apr 1997 | A |
5650761 | Gomm et al. | Jul 1997 | A |
5661807 | Guski et al. | Aug 1997 | A |
5696827 | Brands | Dec 1997 | A |
5710887 | Chelliah et al. | Jan 1998 | A |
5712913 | Chaum | Jan 1998 | A |
5734838 | Robinson et al. | Mar 1998 | A |
5737701 | Rosenthal et al. | Apr 1998 | A |
5744787 | Teicher | Apr 1998 | A |
5748737 | Daggar | May 1998 | A |
5761308 | Torii et al. | Jun 1998 | A |
5778068 | Johnson et al. | Jul 1998 | A |
5778384 | Provino et al. | Jul 1998 | A |
5796832 | Kawan | Aug 1998 | A |
5809212 | Shasha | Sep 1998 | A |
5815665 | Teper et al. | Sep 1998 | A |
5825876 | Peterson, Jr. | Oct 1998 | A |
5838812 | Pare, Jr. et al. | Nov 1998 | A |
5841871 | Pinkas et al. | Nov 1998 | A |
5856659 | Drupsteen et al. | Jan 1999 | A |
5870723 | Pare, Jr. et al. | Feb 1999 | A |
5878138 | Yacobi | Mar 1999 | A |
5878139 | Rosen | Mar 1999 | A |
5878235 | Porterfield et al. | Mar 1999 | A |
5884271 | Pitroda | Mar 1999 | A |
5884272 | Walker et al. | Mar 1999 | A |
5892900 | Ginter et al. | Apr 1999 | A |
5897622 | Blinn et al. | Apr 1999 | A |
5903721 | Sixtus | May 1999 | A |
5915022 | Robinson et al. | Jun 1999 | A |
5917913 | Wang | Jun 1999 | A |
5923016 | Fredregill et al. | Jul 1999 | A |
5926624 | Katz et al. | Jul 1999 | A |
5926798 | Carter | Jul 1999 | A |
5936220 | Hoshino et al. | Aug 1999 | A |
5943423 | Muftic | Aug 1999 | A |
5945652 | Ohki et al. | Aug 1999 | A |
5948040 | DeLorme et al. | Sep 1999 | A |
5949411 | Doerr et al. | Sep 1999 | A |
5956699 | Wong et al. | Sep 1999 | A |
5966704 | Furegati et al. | Oct 1999 | A |
5987134 | Shin et al. | Nov 1999 | A |
5990804 | Koyama | Nov 1999 | A |
6000832 | Franklin et al. | Dec 1999 | A |
6002770 | Tomko et al. | Dec 1999 | A |
6002787 | Takhar et al. | Dec 1999 | A |
6003014 | Lee et al. | Dec 1999 | A |
6006200 | Boies et al. | Dec 1999 | A |
6009415 | Shurling et al. | Dec 1999 | A |
6012039 | Hoffman et al. | Jan 2000 | A |
6014636 | Reeder | Jan 2000 | A |
6016476 | Maes et al. | Jan 2000 | A |
6018724 | Arent | Jan 2000 | A |
6021496 | Dutcher et al. | Feb 2000 | A |
6023679 | Acebo et al. | Feb 2000 | A |
6026491 | Hiles | Feb 2000 | A |
6047268 | Bartoli et al. | Apr 2000 | A |
6047269 | Biffar | Apr 2000 | A |
6076075 | Teicher | Jun 2000 | A |
6078891 | Riordan et al. | Jun 2000 | A |
6085178 | Bigus et al. | Jul 2000 | A |
6088731 | Kiraly et al. | Jul 2000 | A |
6105010 | Musgrave | Aug 2000 | A |
6108644 | Goldschlag et al. | Aug 2000 | A |
6119096 | Mann et al. | Sep 2000 | A |
6128602 | Northington et al. | Oct 2000 | A |
6129274 | Suzuki | Oct 2000 | A |
6138911 | Fredregill et al. | Oct 2000 | A |
6141754 | Choy | Oct 2000 | A |
6148241 | Ludtke et al. | Nov 2000 | A |
6151600 | Dedrick | Nov 2000 | A |
6163772 | Kramer et al. | Dec 2000 | A |
6263446 | Kausik et al. | Jul 2001 | B1 |
6270011 | Gottfried | Aug 2001 | B1 |
6279112 | O'Toole et al. | Aug 2001 | B1 |
6282653 | Berstis et al. | Aug 2001 | B1 |
6289323 | Gordon et al. | Sep 2001 | B1 |
6310966 | Dulude et al. | Oct 2001 | B1 |
6314196 | Yamaguchi et al. | Nov 2001 | B1 |
6353811 | Weissman | Mar 2002 | B1 |
6356905 | Gershman et al. | Mar 2002 | B1 |
6366953 | Inoue | Apr 2002 | B2 |
6370629 | Hastings et al. | Apr 2002 | B1 |
6434535 | Kupka et al. | Aug 2002 | B1 |
6453301 | Niwa | Sep 2002 | B1 |
6529885 | Johnson | Mar 2003 | B1 |
6556976 | Callen | Apr 2003 | B1 |
6560741 | Gerety et al. | May 2003 | B1 |
6574607 | Carter et al. | Jun 2003 | B1 |
6578014 | Murcko, Jr. | Jun 2003 | B1 |
6592044 | Wong et al. | Jul 2003 | B1 |
6615264 | Stoltz et al. | Sep 2003 | B1 |
6655585 | Shinn | Dec 2003 | B2 |
6662166 | Pare, Jr. et al. | Dec 2003 | B2 |
20010044906 | Kanevsky et al. | Nov 2001 | A1 |
20010045458 | Polansky | Nov 2001 | A1 |
20020147914 | Arnold | Oct 2002 | A1 |
Number | Date | Country |
---|---|---|
0917119 | May 1999 | EP |
1 033 687 | Sep 2000 | EP |
EP-1 085 424 | Mar 2001 | EP |
9722857 | Feb 1997 | JP |
9978521 | Mar 1999 | JP |
99164179 | Jun 1999 | JP |
351799 | Feb 1999 | TW |
87107650 | Feb 1999 | TW |
WO-9513591 | May 1995 | WO |
WO 9906928 | Feb 1999 | WO |
WO-01008055 | Feb 2001 | WO |
WO-0122351 | Mar 2001 | WO |
WO-01050428 | Jul 2001 | WO |
WO-0159732 | Aug 2001 | WO |
WO 2005033830 | Apr 2005 | WO |
Number | Date | Country | |
---|---|---|---|
20020123970 A1 | Sep 2002 | US |
Number | Date | Country | |
---|---|---|---|
60254604 | Dec 2000 | US |