Note: Descriptions are shown in the official language in which they were submitted.
<br/>CA 02814115 2016-06-17<br/>DIGITAL WALLET<br/>[0001] TECHNICAL FIELD<br/>[0002] The <br/>present disclosure relates generally to electronic commerce, and more<br/>particularly to a digital wallet for facilitating transactions and storing <br/>information associated <br/>with transactions.<br/>BACKGROUND<br/>[0003] Electronic commerce, such as online shopping, has been increasingly <br/>common <br/>since the advent of the Internet. Online shopping websites generally provide a <br/>user interface <br/>for customers to select products to purchase. After the customer has selected <br/>products for <br/>purchase, the customer typically can choose from multiple payment options to <br/>purchase the <br/>products. Two conventional payment options generally supported by online <br/>merchants are <br/>using a financial account (for example, a credit card account or checking <br/>account) and using <br/>a third party payment processor, such as PAYPAL or other processor.<br/>[0004] To complete an online purchase using a credit card or other financial <br/>account, a <br/>consumer typically provides a significant amount of information to the <br/>merchant via the <br/>merchant's website. This information generally includes an account identifier <br/>(for example, <br/>credit card number, debit card number, etc.), shipping information, and the <br/>name, address, <br/>and contact information of the consumer. The requirement of entering this <br/>information for <br/>each merchant from which the consumer makes purchases can be cumbersome and <br/>frustrating to the consumers. This requirement can be particularly frustrating <br/>and difficult for <br/>consumers making online purchases using a mobile device, as many mobile <br/>devices do not <br/>include a user interface optimized to enter significant amounts of <br/>information. This <br/>deficiency for mobile devices results in substantially lower mobile browser <br/>conversion rates <br/>from product searching to product purchase compared to desktop browser <br/>conversion rates.<br/>1<br/><br/>CA 02814115 2013-04-08<br/>WO 2012/083113 PCT/US2011/065363<br/>[0005] One conventional approach to alleviating the burden on the consumer <br/>involves a <br/>toolbar plug-in application for web browsers. Conventional toolbar <br/>applications are used to <br/>automatically populate web forms, such as a web form for receiving payment and <br/>consumer <br/>information for completing an online purchase, with stored information. <br/>However, these <br/>conventional toolbar applications often are inaccurate, as they merely attempt <br/>to predict <br/>which form is presented on a web page and then preload default values for the <br/>predicted <br/>form.<br/>[0006] The use of a third party payment processor to complete online purchases <br/>is another <br/>approach to alleviating the burden of entering a significant amount of <br/>information at each <br/>merchant's website. Generally, a third party processor requires a consumer to <br/>register for an <br/>account and to provide one or more payment options. After registering, the <br/>consumer can use <br/>the payment options to complete purchases at participating merchants' <br/>websites. To <br/>complete an online purchase using the third party payment processor, the <br/>consumer generally <br/>selects a liffl( at the merchant's website and, in response, the consumer is <br/>redirected from the <br/>merchant's website to a website of the third party payment processor. At this <br/>website, the <br/>consumer first has to provide login information and then can select one of the <br/>payment <br/>options to complete and confirm the purchase. After the purchase is confirmed, <br/>the consumer <br/>is directed back to the merchant's website. The third party payment processor <br/>then settles <br/>with the financial institution associated with the selected payment option and <br/>with the <br/>merchant to complete the transaction.<br/>[0007] The use of a third party processor has several deficiencies. First, the <br/>process is <br/>disruptive to the consumer as the consumer is directed away from the <br/>merchant's website to <br/>the third party payment processor's website and then back to the merchant's <br/>website. <br/>Second, the use of a third party payment processor limits the amount of <br/>information that the <br/>merchant receives. For example, the merchant may not have access to <br/>information associated <br/>with the consumer or information regarding the payment method used. The use of <br/>a third <br/>party processor also presents an additional cost to the merchant.<br/>[0008] Thus, a need in the art exists for systems and methods that overcome <br/>one or more <br/>of the above-described limitations.<br/>SUMMARY<br/>[0009] An aspect of the present invention provides a computer-implemented <br/>method for <br/>completing an online transaction. A digital wallet module resident on a client <br/>device receives <br/>a request for payment information to complete the transaction. The request <br/>originates from a<br/>2<br/><br/>CA 02814115 2013-04-08<br/>WO 2012/083113 PCT/US2011/065363<br/>website of a merchant. In response to receiving the request, the digital <br/>wallet module <br/>retrieves the payment information from a storage location on the client device <br/>and transmits <br/>the retrieved payment information to the merchant website.<br/>[0010] Another aspect of the present invention provides a computer program <br/>product for <br/>completing an online transaction. The computer program product includes a <br/>computer-<br/>readable storage device having computer-readable program instructions stored <br/>therein. The <br/>computer-readable program instructions includes computer program instructions <br/>for <br/>receiving a request for payment information to complete the transaction, the <br/>request <br/>originating from a website of a merchant; computer program instructions for <br/>retrieving, in <br/>response to the request, the payment information; and computer program <br/>instructions for <br/>transmitting the retrieved payment information to the merchant website.<br/>[0011] Another aspect of the present invention provides an apparatus for <br/>completing an <br/>electronic purchase from a merchant via a distributed network. The apparatus <br/>includes a web <br/>browser application a digital wallet module logically coupled to the web <br/>browser application. <br/>The digital wallet module is configured to receive a request for payment <br/>information to use in <br/>completing the purchase from the merchant website; retrieve payment <br/>information from a <br/>computer-readable storage device logically coupled to the digital wallet <br/>module; and transmit <br/>the retrieved payment information to the merchant.<br/>[0012] Another aspect of the present invention provides a computer-implemented <br/>method <br/>for completing a purchase from a merchant via a website of the merchant. A <br/>digital wallet <br/>module embedded in a web browser in communication with the merchant website <br/>receives a <br/>purchase request message including a request for payment information for use <br/>in <br/>compensating the merchant for the purchase. In response to receiving the <br/>purchase request <br/>message, the digital wallet module presents a confirmation display requesting <br/>a user to <br/>authorize the purchase. In response to receiving authorization from the user, <br/>the digital <br/>wallet module retrieves stored payment information and transmits a payment <br/>authorization <br/>message including the retrieved payment information to the merchant website.<br/>BRIEF DESCRIPTION OF THE DRAWINGS<br/>[0013] Figure 1 is a block diagram depicting an operating environment of a <br/>digital wallet,<br/>in accordance with certain exemplary embodiments.<br/>[0014] Figure 2 is a block diagram depicting a general component <br/>architecture of a<br/>computer system, in accordance with certain exemplary embodiments.<br/>3<br/><br/>CA 02814115 2013-04-08<br/>WO 2012/083113 PCT/US2011/065363<br/>[0015] Figure 3 is a flow chart depicting a method for completing an online <br/>purchase<br/>using a digital wallet, in accordance with certain exemplary embodiments.<br/>[0016] Figure 4 is a flow chart depicting a method for a digital wallet to <br/>interact with a<br/>merchant website to complete a purchase, in accordance with certain exemplary <br/>embodiments.<br/>[0017] Figure 5 is a flow chart depicting a method for installing a digital <br/>wallet on a user<br/>device, in accordance with certain exemplary embodiments.<br/>DETAILED DESCRIPTION OF THE EXEMPLARY EMBODIMENTS<br/>Overview<br/>[0018] The exemplary embodiments provide a digital wallet that can <br/>facilitate fast,<br/>convenient, and secure commerce using a mobile electronic device (or non-<br/>mobile electronic <br/>device) and that stores information associated with transactions, such as <br/>purchase <br/>confirmations and receipts. The digital wallet can provide a user interface <br/>for entering <br/>information for use in transactions, such as information associated with one <br/>or more financial <br/>accounts (for example, credit card or debit card information), contact <br/>information, and <br/>shipping information. The digital wallet can store this information for <br/>subsequent use in <br/>online (for example, via the Internet) and offline purchases (for example, via <br/>a merchant <br/>point of sale device, including a contactless payment device). The user can <br/>use the digital <br/>wallet to complete purchases by selecting a payment option stored by the <br/>digital wallet <br/>without the need to re-enter financial account information, contact <br/>information, or shipping <br/>information for each purchase. The user also may select a default payment <br/>option to use such <br/>that the user can confirm a purchase without making a payment option <br/>selection. The digital <br/>wallet can be particularly advantageous when utilized to complete a purchase <br/>using a mobile <br/>device, such as a mobile phone or other electronic device, having a limited <br/>user interface that <br/>may not be optimized to enter a significant amount of information.<br/>[0019] The digital wallet can be embodied as a stand alone application <br/>program or as a<br/>companion program to a web browser, for example, as a companion program to a <br/>Hypertext <br/>Markup Language revision 5 ("HTML5") compliant web browser or other type of <br/>web <br/>browser having messaging and storage capabilities. In a web browser <br/>embodiment, the <br/>digital wallet can leverage the messaging and storage capabilities of the web <br/>browser to <br/>provide a consistent buying experience across multiple merchant websites. That <br/>is, the <br/>digital wallet can provide a consistent user interface independent of <br/>merchants' differing <br/>websites. The digital wallet also can allow a user to complete a purchase <br/>without navigating<br/>4<br/><br/>CA 02814115 2013-04-08<br/>WO 2012/083113 PCT/US2011/065363<br/>from the merchant's website as required by third party payment processors. <br/>While certain <br/>embodiments are described in which parts of the digital wallet are implemented <br/>in software, <br/>it will be appreciated that one or more acts or functions of the digital <br/>wallet may be <br/>performed by hardware, software, or a combination thereof, as may be embodied <br/>in one or <br/>more computing systems.<br/>[0020] To complete an online transaction using the digital wallet, a user <br/>can navigate to a<br/>merchant's website using a web browser and locate one or more products. After <br/>the user <br/>indicates a desire to purchase one or more products, the digital wallet can <br/>interact with the <br/>merchant's website and with the user in a secure manner to complete the <br/>transaction. Once <br/>the transaction is completed, the digital wallet can receive or generate a <br/>confirmation or <br/>receipt for the transaction and can store the confirmation or receipt. The <br/>digital wallet also <br/>can synchronize the confirmation or receipt with a remote storage location, <br/>such as a cloud <br/>computing environment.<br/>[0021] To complete an offline purchase at a merchant's store location, the <br/>digital wallet<br/>can interact with a merchant's point of sale device and with the user. The <br/>user can activate <br/>the digital wallet, for example, by launching an application, by pressing a <br/>physical or virtual <br/>button on the mobile device, or by making a gesture with the mobile device. <br/>The digital <br/>wallet can then communicate payment information to the point of sale device <br/>and, when the <br/>payment information is confirmed, receive a receipt from the point of sale <br/>device. The <br/>mobile device can communicate with the point of sale device using a wireless <br/>technology, <br/>such as near field communication technology (NFC), BLUETOOTH, or other <br/>suitable <br/>wireless technology.<br/>[0022] The digital wallet can also store coupons or loyalty reward for use <br/>in transactions<br/>and can automatically apply the stored coupons during a purchase transaction, <br/>if appropriate. <br/>For example, a coupon for a product may be displayed to a user in response to <br/>an Internet <br/>search. The user can download the coupon to the digital wallet and store the <br/>coupon on the <br/>mobile device. The digital wallet can search the coupons during purchases to <br/>determine if <br/>one or more of the stored coupons may be applied to the purchase. If so, the <br/>digital wallet <br/>can automatically apply the stored coupon.<br/>[0023] The digital wallet can communicate with a remote system to <br/>facilitate multiple<br/>functions. For example, the digital wallet can receive security information <br/>that identifies <br/>trusted merchants and non-trusted merchants from the remote system. The <br/>digital wallet can <br/>use this security information to prevent the user from providing financial <br/>account information<br/><br/>CA 02814115 2013-04-08<br/>WO 2012/083113 PCT/US2011/065363<br/>or other information to non-trusted merchants. For example, the digital wallet <br/>may compare <br/>a merchant name, merchant website Uniform Resource Locator (URL), or Internet <br/>Protocol <br/>(IP) address to a list of known non-trusted merchants prior to passing <br/>information from the <br/>digital wallet to the merchant's web site.<br/>[0024] The remote system also can maintain an account for each individual <br/>user. This<br/>user account can include information associated with payment options for use <br/>in transactions <br/>and receipts or other information regarding completed transactions. The <br/>digital wallet can <br/>synchronize, for example, periodically, with the remote system to maintain <br/>current <br/>information at both locations. The remote system also may provide a user <br/>interface via a web <br/>browser that enables the user to modify information, such as financial account <br/>information of <br/>stored payment options and contact information for use in transactions, and to <br/>access stored <br/>receipts. The user can access the stored receipts, for example, to determine <br/>when a certain <br/>purchase was made, to determine how much the user paid for an item, or for <br/>budgeting <br/>purposes. In certain implementations, the remote system or a third party <br/>having access to the <br/>receipts stored at the remote system can use the receipts to target <br/>advertisements or other <br/>promotional materials to the user.<br/>[0025] Users may, in appropriate circumstances, be allowed to limit or <br/>otherwise affect<br/>the operation of the features disclosed in this specification. For example, <br/>users may be given <br/>an initial opportunity to opt-in or opt-out of the collection or use of <br/>certain data or the <br/>activation of certain features. In addition, users may be provided <br/>opportunities to change the <br/>manner in which the features are employed, including for situations in which <br/>users may have <br/>concerns regarding their privacy. Instructions also may be provided to users <br/>to notify the <br/>users regarding policies about the use of information, including personally <br/>identifiable <br/>information and receipt information, and manners in which the users may affect <br/>such use of <br/>information. Thus, sensitive personal information can be used to benefit a <br/>user, if desired, <br/>through receipt of targeted advertisements or other information, without <br/>risking disclosure of <br/>personal information or the user's identity.<br/>[0026] One or more aspects of the invention may comprise a computer program <br/>that<br/>embodies the functions described and illustrated herein, wherein the computer <br/>program is <br/>implemented in a computer system that comprises instructions stored in a <br/>machine-readable <br/>medium and a processor that executes the instructions. However, it should be <br/>apparent that <br/>there could be many different ways of implementing the invention in computer <br/>programming, <br/>and the invention should not be construed as limited to any one set of <br/>computer program<br/>6<br/><br/>CA 02814115 2013-04-08<br/>WO 2012/083113 PCT/US2011/065363<br/>instructions. Further, a skilled programmer would be able to write such a <br/>computer program <br/>to implement an embodiment of the disclosed invention based on the appended <br/>flow charts <br/>and associated description in the application text. Therefore, disclosure of a <br/>particular set of <br/>program code instructions is not considered necessary for an adequate <br/>understanding of how <br/>to make and use the invention. Further, those skilled in the art will <br/>appreciate that one or <br/>more aspects of the invention described herein may be performed by hardware, <br/>software, or a <br/>combination thereof, as may be embodied in one or more computing systems. <br/>Moreover, any <br/>reference to an act being performed by a computer should not be construed as <br/>being <br/>performed by a single computer as the act may be performed by more than one <br/>computer. <br/>The inventive functionality of the invention will be explained in more detail <br/>in the following <br/>description, read in conjunction with the figures illustrating the program <br/>flow.<br/>System Architecture<br/>[0027] Turning now to the drawings, in which like numerals represent like <br/>(but not<br/>necessarily identical) elements throughout the figures, exemplary embodiments <br/>of the present <br/>invention are described in detail. Figure 1 is a block diagram depicting an <br/>operating <br/>environment 100 for a digital wallet, in accordance with certain exemplary <br/>embodiments.<br/>[0028] Referring to Figure 1, the exemplary operating environment 100 <br/>includes a<br/>merchant system 130, a cloud computing environment 150, and a user device 110 <br/>associated <br/>with a user 101. The user device 110 may be a personal computer, mobile <br/>device, (for <br/>example, notebook computer, tablet computer, netbook computer, personal <br/>digital assistant <br/>(PDA), video game device, GPS locator device, cellular telephone, smartphone, <br/>or other <br/>mobile device), or other appropriate technology that includes or is coupled to <br/>a web browser <br/>application module 112, such as GOOGLE'S CHROME, MICROSOFT'S INTERNET <br/>EXPLORER , or MOZILLA'S FIREFOX .<br/>[0029] In certain exemplary embodiments, the web browser application 112 is <br/>an<br/>HTML5 compliant web browser. HTML5 compliant web browsers include a cross-<br/>document <br/>messaging application programming interface (API) and a local storage API that <br/>previous <br/>HTML versions did not have. The cross-document messaging API of HTML5 <br/>compliant <br/>web browsers enables documents, such as web pages, to communicate with each <br/>other. For <br/>example, a first document can send a message to a second document requesting <br/>information. <br/>In response, the second document can send a message including the requested <br/>information to <br/>the first document. The local storage API of HTML5 compliant web browsers <br/>enables the <br/>web browser to store information on a client device upon which the web browser <br/>is installed<br/>7<br/><br/>CA 02814115 2013-04-08<br/>WO 2012/083113 PCT/US2011/065363<br/>or is executing, such as the user device 110. Websites also can employ the <br/>local storage API <br/>to store information on a client device. Other web browsers having cross-<br/>document <br/>messaging and/or local storage capabilities also may be used in certain <br/>exemplary <br/>embodiments.<br/>[0030] The user 101 can use the web browser application 112 to view, <br/>download, upload,<br/>or otherwise access documents or web pages via a distributed network 105. The <br/>network 105 <br/>includes a wired or wireless telecommunication system or device by which <br/>network devices <br/>(including devices 110, 130, and 150) can exchange data. For example, the <br/>network 105 can <br/>include a local area network ("LAN"), a wide area network ("WAN"), an <br/>intranet, an <br/>Internet, or any combination thereof Throughout the discussion of exemplary <br/>embodiments, <br/>it should be understood that the terms "data" and "information" are used <br/>interchangeably <br/>herein to refer to text, images, audio, video, or any other form of <br/>information that can exist in <br/>a computer based environment.<br/>[0031] The web browser application 112 can interact with web servers (or <br/>other<br/>computing devices) connected to the network 105, such as web server 132 of the <br/>merchant <br/>system 130 and/or web server 151 of the cloud computing environment 150.<br/>[0032] The user device 110 also includes a digital wallet application <br/>module 111. The<br/>exemplary digital wallet 111 can interact with the web browser application 112 <br/>or can be <br/>embodied as a companion application of the web browser application 112. As a <br/>companion <br/>application, the digital wallet 111 executes within the web browser <br/>application 112. That is, <br/>the digital wallet 111 may be an application program embedded in the web <br/>browser <br/>application 112.<br/>[0033] The user device 110 also includes a data storage unit 113 accessible <br/>by the digital<br/>wallet 111 and the web browser application 112. The exemplary data storage <br/>unit 113 can <br/>include one or more tangible computer-readable storage devices as discussed <br/>below with <br/>reference to Figure 2. The data storage unit 113 can be stored on the user <br/>device 110 or can <br/>be logically coupled to the user device 110. For example, the data storage <br/>unit 113 can <br/>include on-board flash memory and/or one or more removable memory cards or <br/>removable <br/>flash memory.<br/>[0034] The exemplary digital wallet 111 enables storage of one or more <br/>payment options<br/>that can be used for online purchases and offline purchases. Each payment <br/>option can <br/>include or be associated with a financial account, such as a credit card <br/>account, a debit card <br/>account, a checking account, a savings account, a loyalty rewards account, or <br/>other type of<br/>8<br/><br/>CA 02814115 2013-04-08<br/>WO 2012/083113 PCT/US2011/065363<br/>account that can be used to make a purchase. The digital wallet 111 can store, <br/>for each <br/>payment option, information associated with the financial account for that <br/>payment option. <br/>This payment information can include a financial account identifier (for <br/>example, account <br/>number, card number), an expiration date of one or more financial cards <br/>associated with the <br/>financial account, and a billing address for the account. The payment <br/>information can also <br/>include information associated with the user 101, such as name, contact <br/>information (for <br/>example, residential address, phone number, e-mail address), demographic <br/>information, or <br/>any other suitable information associated with the user 101. The payment <br/>information also <br/>can include shipping information, such as one or more shipping addresses, <br/>preferred shipping <br/>provider(s), and preferred shipping method(s) (for example, ground, air, <br/>expedited, signature <br/>confirmation, or other shipping method). The payment information for each <br/>payment option <br/>can be maintained by the digital wallet 111 and stored in the data storage <br/>unit 113.<br/>[0035] The user 101 can interact with a user interface provided by the <br/>digital wallet 111<br/>to add, modify, or remove payment information from the digital wallet 111. In <br/>a web <br/>browser companion application embodiment, this user interface can be provided <br/>via the web <br/>browser application 112. In addition or in the alternative, the payment <br/>information may be <br/>synchronized with a remote storage location, such as the cloud computing <br/>environment 150. <br/>In such an embodiment, the user 101 can access the payment information stored <br/>at the remote <br/>location using another device, such as a desktop computer connected to the <br/>network 105. <br/>The remote storage location can update the digital wallet 111 in response to <br/>any changes <br/>made at the remote storage location.<br/>[0036] The payment option(s) stored in the digital wallet 111 can be used <br/>to complete<br/>purchases from merchants via a merchant's website 133 operating on the web <br/>server 131 or <br/>via a merchant's point of sale device 134. In certain exemplary embodiments, <br/>each <br/>merchant's website 133 (operating on the web server 131) that accepts payment <br/>via a digital <br/>wallet 111 can include a set of computer-readable program instructions, for <br/>example, using <br/>JavaScript, that enable the merchant's website 133 to interact with the <br/>digital wallet 111. <br/>These program instructions can include program instructions for detecting <br/>whether the user <br/>device 110 includes a digital wallet 111 and program instructions for <br/>attaching to a detected <br/>digital wallet 111. Once attached, the merchant's website 133 can communicate <br/>with the <br/>digital wallet 111, for example, via cross-document messaging. In certain <br/>exemplary <br/>embodiments, the computer-readable instructions also include program <br/>instructions for <br/>downloading a digital wallet 111 onto a user device 110. For example, if the <br/>merchant's<br/>9<br/><br/>CA 02814115 2013-04-08<br/>WO 2012/083113 PCT/US2011/065363<br/>website 133 detects that the user device 110 does not have a digital wallet <br/>111, the <br/>merchant's website 133 can prompt the user 101 to download and install the <br/>digital wallet <br/>111. If the user 101 elects to download the digital wallet 111, the computer-<br/>readable <br/>program code can download and install the digital wallet 111 on the user <br/>device 101. <br/>Embedding this computer-readable program instructions in a website 133 for <br/>interacting with <br/>a digital wallet 111 supports a simpler and efficient integration for the <br/>merchant system 130 <br/>compared to integrating with a third party payment processor.<br/>[0037] The merchant's website 133 and the digital wallet 111 can <br/>communicate using a<br/>defined messaging protocol. The digital wallet 111 can encode a message using <br/>the protocol <br/>and send the encoded message to the merchant's website 133, where the message <br/>is decoded <br/>using the protocol. Similarly, the merchant's website 133 can encode a message <br/>using the <br/>protocol and send the encoded message to the digital wallet 111 where the <br/>message is <br/>decoded using the protocol.<br/>[0038] The merchant system 130 includes a payment processor 132 logically <br/>coupled to<br/>the web server 131. The payment processor 132 can receive payment information <br/>via the <br/>web server 131 and interact with the financial institution (not shown) or an <br/>acquirer (not <br/>shown) to authorize payment information.<br/>[0039] To complete an online purchase via the Internet, the digital wallet <br/>111 can interact<br/>with a website 133 of the merchant system 130 and with the user 101. The user <br/>101 can <br/>browse the merchant's website 133 for products using the web browser 112 and <br/>indicate a <br/>desire to purchase one or more products. As used throughout the specification, <br/>the term <br/>"products" should be interpreted to include tangible and intangible products, <br/>as well as <br/>services. After the user 101 has indicated a desire to purchase the product(s) <br/>(for example, <br/>by actuating a "checkout" link), the merchant's website 133 can present a user <br/>interface in <br/>the form of a web page to receive payment information from the user 101. The <br/>merchant's <br/>website 133 also can detect whether the user device 110 includes a digital <br/>wallet 111. If the <br/>digital wallet 111 is detected, the merchant's website 133 can automatically <br/>attach to the <br/>digital wallet 111 as discussed in further detail below in connection with <br/>Figure 4. In <br/>addition or in the alternative, the merchant's website 133 can include a "pay <br/>with wallet" liffl( <br/>or control that, when actuated, causes the merchant's website 133 to attach to <br/>the digital <br/>wallet 111. Once attached, the merchant's website 133 sends a purchase request <br/>message to <br/>the digital wallet 111 requesting payment information. The purchase request <br/>message also <br/>can include information regarding the requested purchase, including <br/>information regarding<br/><br/>CA 02814115 2013-04-08<br/>WO 2012/083113 PCT/US2011/065363<br/>the product(s) for purchase (for example, name and/or description of each <br/>product, price for <br/>each product, total price, etc.), information regarding the merchant system <br/>130 (for example, <br/>merchant name, payment methods accepted by merchant, etc.), and requests for <br/>the user 101 <br/>to provide additional information. In response to receiving a purchase request <br/>message from <br/>the merchant's website 133, the digital wallet 111 can present a user <br/>interface to the user 101 <br/>for the user 101 to confirm the purchase. This user interface can display all <br/>or a portion of <br/>the information in the purchase request and an actuatable button or link for <br/>the user 101 to <br/>confirm the purchase. This user interface also can allow the user 101 to <br/>select from multiple <br/>payment options stored by the digital wallet 111 to use as payment for the <br/>product(s) and <br/>from multiple shipping options. If the user 101 confirms the purchase, the <br/>digital wallet 111 <br/>can retrieve the information requested in the purchase request message, <br/>generate a merchant <br/>request message that contains the information and the confirmation, and <br/>transmit the <br/>merchant request message to the merchant's website 133. If the purchase is <br/>authorized via <br/>the payment processor 132, the merchant's website 133 can transmit an <br/>electronic <br/>confirmation and/or a receipt to the digital wallet 111 and then detach from <br/>the digital wallet <br/>111. The digital wallet 111 can store the confirmation and/or receipt at the <br/>user device 110 <br/>and also synchronize with the cloud computing environment 150. An exemplary <br/>method for <br/>completing an online purchase using the digital wallet 111 is illustrated in <br/>Figure 3 and <br/>discussed below.<br/>[0040] The receipt received by the digital wallet 111 can include line item <br/>details of the<br/>completed purchase. For example, the receipt can include a list of products <br/>purchased, a <br/>description of each product purchased, the price for each product purchased, a <br/>product <br/>category for each product purchased, a total price, a stock keeping unit (SKU) <br/>or similar <br/>identifier for each product purchased, taxes paid, rebates for one or more of <br/>the products <br/>purchased, payment method used, discounts applied, the time and/or date of <br/>purchase, <br/>warranty information for one or more of the products purchased, or other <br/>suitable <br/>information. The receipt also can include information regarding the merchant <br/>system 130, <br/>including a name of the merchant associated with the merchant system 130, a <br/>description of <br/>the 130, the URL of the merchant's website 133, and any other suitable <br/>information <br/>regarding the merchant system 130.<br/>[0041] In certain exemplary embodiments, the digital wallet 111 can <br/>generate a receipt<br/>for a purchase rather than or in addition to receiving a receipt from the <br/>merchant's website <br/>133. For example, the digital wallet 111 can generate the receipt using the <br/>information in the<br/>11<br/><br/>CA 02814115 2013-04-08<br/>WO 2012/083113 PCT/US2011/065363<br/>purchase request message received from the merchant's website 133 or from the <br/>merchant <br/>request message sent to the merchant's website 133.<br/>[0042] The exemplary cloud computing environment 150 includes the web <br/>server 151,<br/>one or more data storage units 152, and one or more application servers 153. <br/>The cloud <br/>computing environment 150 may be provided by the provider of the digital <br/>wallet, by a <br/>merchant 130, or by another party. In certain exemplary embodiments, multiple <br/>cloud <br/>computing environments 150 may be employed. For example, a first cloud <br/>computing <br/>environment may store receipt information and provide access to the receipts <br/>from a user <br/>device 110 connected to the first cloud computing environment, and a second <br/>cloud <br/>computing environment may provide security information, such as lists of non-<br/>trusted <br/>merchants, to the digital wallet 111. Although the illustrated environment <br/>includes a cloud <br/>computing environment, other types of computing environments, such as a client-<br/>server <br/>environment may be used instead.<br/>[0043] The application server 153 can maintain a digital wallet account for <br/>each user,<br/>including the user 101. This digital wallet account can store (in the data <br/>storage unit 152) the <br/>payment options created by the user 101 and their associated payment <br/>information and <br/>receipts and other information obtained by the digital wallet 111 in response <br/>to completed <br/>transactions. The application server 153 can synchronize this information with <br/>the digital <br/>wallet 111 periodically, on command (for example, by the user 101), or in <br/>response to an <br/>update in information at the digital wallet 111 or at the cloud computing <br/>environment 150.<br/>[0044] The digital wallet 111 and the web browser application 112 can <br/>interact with the<br/>application server 151 via the web server 151. The application server 153 can <br/>provide a user <br/>interface via the web server 151 that enables the user 101 to access, view, <br/>and/or modify <br/>content stored in the user's digital wallet account using the user device 110 <br/>or another device <br/>connected to the network. For example, the user 101 may add or modify payment <br/>information using a web browser application residing on a desktop computer <br/>having a better <br/>user interface for entering a significant amount of information.<br/>[0045] The exemplary digital wallet 111 can include a user interface for <br/>accessing receipt<br/>information stored on the user device 110 or at the cloud computing <br/>environment 150 in a <br/>meaningful and useful way. One feature of this user interface enables the user <br/>101 to search <br/>the receipts for information. For example, the user 101 may search for a <br/>product purchased <br/>to determine the price that was paid for the product or when the product was <br/>purchased. In <br/>another example, the user 101 may search for warranty information regarding a <br/>product to<br/>12<br/><br/>CA 02814115 2013-04-08<br/>WO 2012/083113 PCT/US2011/065363<br/>determine if the warranty has expired. In yet another example, the user 101 <br/>may search the <br/>receipts for merchant return policy information.<br/>[0046] This digital wallet's user interface also includes a budgeting <br/>feature. This<br/>budgeting feature of the digital wallet 111 enables the user 101 to set a <br/>budget for <br/>expenditures associated with one or more products or product categories and to <br/>monitor this <br/>budget using the stored receipts. For example, the user 101 can set a budget <br/>of $200 to spend <br/>eating out each month. The digital wallet 111 can run a query on the receipts <br/>corresponding <br/>to transactions completed in the current month to identify receipts that <br/>correspond to a <br/>restaurant purchase or otherwise to eating out. The digital wallet 111 can <br/>then determine the <br/>total dollar amount of these receipts and the remaining budget for the current <br/>month.<br/>[0047] The digital wallet's user interface also enables the user 101 to <br/>filter information<br/>associated with receipts and view the filtered information. The receipt <br/>information can be <br/>filtered by product category, merchant, time period, or any other receipt <br/>parameter or <br/>combination thereof. For example, the user 101 can use the digital wallet 111 <br/>to view the <br/>total amount spent at a particular merchant, such as the merchant associate <br/>with merchant <br/>system 130, in the past three months or other desired time period.<br/>[0048] One or more of the components of the exemplary operating environment <br/>100,<br/>such as the user device 110, the web server 131, the web server 151, and the <br/>application <br/>server 153 can include one or more computer systems, such as the computer <br/>system 200 <br/>illustrated in Figure 2. Referring to Figure 2, the computer system 200 <br/>includes a processing <br/>unit 221, a system memory 222, and a system bus 223 that couples system <br/>components, <br/>including the system memory 222, to the processing unit 221. The system bus <br/>223 can <br/>include any of several types of bus structures, including a memory bus or <br/>memory controller, <br/>a peripheral bus, or a local bus, using any of a variety of bus architectures. <br/>The system <br/>memory 222 includes a read-only memory ("ROM") 224 and a random access memory <br/>("RAM") 225. A basic input/output system (BIOS) 226 containing the basic <br/>routines that <br/>help to transfer information between elements within the computer system 200, <br/>such as <br/>during start-up, is stored in the ROM 224.<br/>[0049] The computer system 200 also includes a hard disk drive 227 for <br/>reading from and<br/>writing to a hard disk (not shown), a magnetic disk drive 228 for reading from <br/>or writing to a <br/>removable magnetic disk 229 such as a floppy disk, and an optical disk drive <br/>230 for reading <br/>from or writing to a removable optical disk 231 such as a CD-ROM, compact disk <br/>- <br/>read/write (CD/RW), DVD, or other optical media. The hard disk drive 227, <br/>magnetic disk<br/>13<br/><br/>CA 02814115 2013-04-08<br/>WO 2012/083113 PCT/US2011/065363<br/>drive 228, and optical disk drive 230 are connected to the system bus 223 by a <br/>hard disk drive <br/>interface 232, a magnetic disk drive interface 233, and an optical disk drive <br/>interface 234, <br/>respectively. Although the exemplary computer system 200 employs a ROM 224, a <br/>RAM <br/>225, a hard disk drive 227, a removable magnetic disk 229, and a removable <br/>optical disk 231, <br/>other types of computer-readable media also can be used in the exemplary <br/>computer system <br/>200. For example, the computer-readable media can include any apparatus that <br/>can contain, <br/>store, communicate, propagate, or transport data for use by or in connection <br/>with one or more <br/>components of the computer system 200, including any electronic, magnetic, <br/>optical, <br/>electromagnetic, infrared, or semiconductor system (or apparatus or device) or <br/>propagation <br/>medium, such as magnetic cassettes, flash memory cards, digital video disks, <br/>Bernoulli <br/>cartridges, and the like. The drives and their associated computer-readable <br/>media can <br/>provide nonvolatile storage of computer-executable instructions, data <br/>structures, program <br/>modules, and other data for the computer system 200.<br/>[0050] A number of modules can be stored on the ROM 224, RAM 225, hard disk <br/>drive<br/>227, magnetic disk 229, or optical disk 231, including an operating system <br/>235, an <br/>application module 238, and the web browser application 112, the digital <br/>wallet 111, and the <br/>website application discussed above in connection with Figure 1. The web <br/>browser <br/>application 112, the digital wallet 111, website application, and application <br/>module 238 can <br/>include routines, sub-routines, programs, objects, components, data <br/>structures, etc., which <br/>perform particular tasks or implement particular abstract data types.<br/>[0051] A user, such as user 101, can enter commands and information to the <br/>computer<br/>system 200 through input devices, such as a keyboard 240 and a pointing device <br/>242. The <br/>pointing device 242 can include a mouse, a trackball, an electronic pen that <br/>can be used in <br/>conjunction with an electronic tablet, or any other input device, such as a <br/>microphone, <br/>joystick, game pad, satellite dish, scanner, or the like. These and other <br/>input devices are <br/>often connected to the processing unit 222 through a serial port interface 246 <br/>that is coupled <br/>to the system bus 223, but can be connected by other interfaces, such as a <br/>parallel port, game <br/>port, a universal serial bus (USB), or the like. A display device 247, such as <br/>a monitor, also <br/>can be connected to the system bus 223 via an interface, such as video adapter <br/>248. In <br/>addition to the display device 247, the computer 220 can include other <br/>peripheral output <br/>devices, such as speakers (not shown) and a printer 243.<br/>[0052] The computer system 200 is configured to operate in a networked <br/>environment<br/>using logical connections to one or more remote computers 249. The remote <br/>computer 249<br/>14<br/><br/>CA 02814115 2013-04-08<br/>WO 2012/083113 PCT/US2011/065363<br/>can be any network device, such as a personal computer, a server, a client, a <br/>router, a network <br/>PC, a peer device, or other device. While the remote computer 249 typically <br/>includes many <br/>or all of the elements described above relative to the computer system 200, <br/>only a memory <br/>storage device 250 has been illustrated in Figure 2 for simplicity. The <br/>logical connections <br/>depicted in Figure 2 include a LAN 204A and a WAN 204B. Such networking <br/>environments <br/>are commonplace in offices, enterprise-wide computer networks, intranets, and <br/>the Internet.<br/>[0053] When used in a LAN networking environment, the computer system 200 <br/>is often<br/>connected to the LAN 204A through a network interface or adapter 253. When <br/>used in a <br/>WAN networking environment, the computer system 200 typically includes a modem <br/>254 or <br/>other means for establishing communications over the WAN 204B, such as the <br/>Internet. The <br/>modem 254, which can be internal or external, is connected to system bus 223 <br/>via a serial <br/>port interface 246. In a networked environment, program modules depicted <br/>relative to <br/>computer system 200, or portions thereof, can be stored in the remote memory <br/>storage device <br/>250.<br/>[0054] It will be appreciated that the network connections shown are <br/>exemplary and other<br/>means of establishing a communications link between the computers can be used. <br/>Moreover, <br/>those having ordinary skill in the art having the benefit of the present <br/>disclosure will <br/>appreciate that the computer system 200 illustrated in Figure 2 can have any <br/>of several other <br/>suitable computer system configurations. Furthermore, those skilled in the art <br/>having the <br/>benefit of the present disclosure will recognize that certain components of <br/>the computer <br/>system 200 may be added, deleted, or modified in certain alternative <br/>embodiments. For <br/>example a user device 101 embodied as a mobile phone or handheld computer may <br/>not <br/>include all the components depicted in Figure 2 and/or described above.<br/>System Process<br/>[0055] The components of the exemplary operating environment 100 are <br/>described<br/>hereinafter with reference to the exemplary methods illustrated in Figures 3-<br/>5. The <br/>exemplary embodiments can include one or more computer programs that embody <br/>the <br/>functions described herein and illustrated in the appended flow charts. <br/>However, it should be <br/>apparent that there could be many different ways of implementing aspects of <br/>the exemplary <br/>embodiments in computer programming, and these aspects should not be construed <br/>as limited <br/>to one set of computer instructions. Further, a skilled programmer would be <br/>able to write <br/>such computer programs to implement exemplary embodiments based on the flow <br/>charts and <br/>associated description in the application text. Therefore, disclosure of a <br/>particular set of<br/><br/>CA 02814115 2013-04-08<br/>WO 2012/083113 PCT/US2011/065363<br/>program code instructions is not considered necessary for an adequate <br/>understanding of how <br/>to make and use the exemplary embodiments. Further, those skilled in the art <br/>will appreciate <br/>that one or more acts described may be performed by hardware, software, or a <br/>combination <br/>thereof, as may be embodied in one or more computing systems.<br/>[0056] Figure 3 is a flow chart depicting a method 300 for completing an <br/>online purchase<br/>using a digital wallet 111, in accordance with certain exemplary embodiments. <br/>With <br/>reference to Figures 1 and 3, in block 305, the merchant installs computer-<br/>readable program <br/>instructions on the merchant's website 133 for interacting with the digital <br/>wallet 111. These <br/>computer-readable program instructions can be implemented as an embedded <br/>script, such as <br/>JavaScript, in a web page of the merchant system 130. For example, the <br/>merchant system <br/>130 can embed the computer-readable program instructions on a "checkout" web <br/>page of the <br/>merchant's website 133.<br/>[0057] The computer-readable program instructions can include program <br/>instructions for<br/>interacting with web browser applications, such as web browser application <br/>112, to determine <br/>whether the user device 110 has a digital wallet 111 installed thereon. The <br/>computer-readable <br/>program instructions also can include program instructions for attaching to a <br/>detected digital <br/>wallet 111 to exchange messages. In certain exemplary embodiments, the program <br/>instructions are configured to exchange messages with a digital wallet 111 <br/>embedded in an <br/>HTML5 compliant web browser 112. In an exemplary embodiment, the computer-<br/>readable <br/>program instructions comprise execute when the browser application 112 on the <br/>user device <br/>110 downloads a web page from the merchant's website 133. The browser <br/>application 112 <br/>executes the code locally to search for an installed digital wallet 111 on the <br/>user device 110. <br/>If a digital wallet 111 is installed, then the browser is instructed to <br/>surface a wallet control <br/>button for selection by the user. If a digital wallet 111 is not installed, <br/>then the browser is <br/>instructed to surface another control for interaction with the user, such as <br/>an option to install <br/>a wallet application 111.<br/>[0058] In block 310, the digital wallet 111 is installed on the user device <br/>110. In certain<br/>exemplary embodiments, the user 101 can navigate to a website 133 of a <br/>provider of the <br/>digital wallet 111 and download and install the digital wallet 111. In certain <br/>exemplary <br/>embodiments, as discussed previously, a merchant's website 133 can prompt the <br/>user 101 to <br/>download and install the digital wallet 111, for example, upon selecting the <br/>"checkout" <br/>option on the merchant's website 133. In such an embodiment, the user 101 may <br/>provide <br/>payment information to the merchant's website 133 in a conventional manner and <br/>then<br/>16<br/><br/>CA 02814115 2013-04-08<br/>WO 2012/083113 PCT/US2011/065363<br/>download and install the digital wallet 111. The payment information provided <br/>to the <br/>merchant's website 133 can then be automatically stored in the digital wallet <br/>111 installed on <br/>the user device 101. An exemplary method of installing a digital wallet 111 is <br/>discussed <br/>further in connection with Figure 5.<br/>[0059] In block 315, the user 101 navigates to the merchant's website 133 <br/>using the web<br/>browser application 112. In block 320, the user 101 browses the merchant's <br/>website 133 for <br/>one or more products to purchase. In block 325, the user 101 indicates a <br/>desire to purchase <br/>one or more products. For example, the user 101 may browse the merchant's <br/>website 133 <br/>and add products to a virtual shopping cart. Once the user 101 is ready to <br/>checkout, the user <br/>101 can actuate a "checkout" liffl( on the merchant's website 133.<br/>[0060] In block 330, the merchant's website 133 presents a web page via the <br/>web<br/>browser application 112 for obtaining payment information from the user 101. <br/>This web <br/>page can include conventional payment options, such as a form for receiving <br/>payment <br/>information and contact information and/or a liffl( to a third party payment <br/>processor. This <br/>web page also can include the computer-readable program instructions for <br/>detecting and <br/>interacting with the digital wallet 111. Furthermore, this web page can <br/>include a "pay with <br/>wallet" link or button that the user 101 can select to pay using the digital <br/>wallet 111.<br/>[0061] In block 335, the merchant's website 133 interacts with the digital <br/>wallet 111 to<br/>complete the purchase of the products selected by the user 101. The merchant's <br/>website 133 <br/>can attach to the digital wallet 111 and send a purchase request message to <br/>the digital wallet <br/>111. As discussed above, the purchase request message can include a request <br/>for payment <br/>information and further include information regarding the requested purchase, <br/>such as <br/>information associated with the selected products and information associated <br/>with the <br/>merchant system 130. In response to receiving the purchase request message, <br/>the digital <br/>wallet 111 can present a user interface to the user 101 for the user 101 to <br/>confirm the <br/>purchase. The user interface also can allow the user 101 to select from <br/>multiple payment <br/>options to send to the merchant's website 133. If the user 101 confirms the <br/>purchase, the <br/>digital wallet 111 sends a merchant request message including the confirmation <br/>and payment <br/>information associated with the payment option to the merchant's website 133. <br/>The payment <br/>processor 132 can interact with an acquirer or the financial institution <br/>associated with the <br/>payment information to authorize the purchase. Block 335 is discussed in <br/>further detail in <br/>connection with Figure 4.<br/>17<br/><br/>CA 02814115 2013-04-08<br/>WO 2012/083113 PCT/US2011/065363<br/>[0062] In block 340, the merchant's website 133 sends a message including a <br/>receipt to<br/>the digital wallet 111. The receipt can include information associated with <br/>the purchase, such <br/>as a list of products purchased, a description of each product purchased, the <br/>price for each <br/>product purchased, a product category for each product purchased, a total <br/>price, a stock <br/>keeping unit (SKU) or similar product identifier for each product purchased, <br/>taxes paid, <br/>rebates for one or more of the products purchased, payment method used, <br/>discounts applied, <br/>the time and/or date of purchase, warranty information for one or more of the <br/>products <br/>purchased, or other suitable information. The receipt also can include <br/>information regarding <br/>the merchant associated with the merchant system 130, including a name of the <br/>merchant, a <br/>description of the merchant, the URL of the merchant's website 133, and other <br/>suitable <br/>information regarding the merchant or the merchant system 130.<br/>[0063] In block 345, the digital wallet 111 stores the receipt in the data <br/>storage unit 113.<br/>In an embodiment where the digital wallet 111 is embedded in an HTML5 <br/>compliant web <br/>browser application (or similar web browser application), the digital wallet <br/>111 can employ <br/>the local storage functionality of the web browser application to store the <br/>receipt in the data <br/>storage unit 113.<br/>[0064] In block 350, the digital wallet 111 synchronizes with the cloud <br/>computing<br/>environment 150 by sending the receipt to the web server 151. The web server <br/>151, in turn, <br/>stores, in the data storage unit 152, the received receipt in the user's <br/>digital wallet account <br/>with the cloud computing environment 150. From step 350, the method 300 ends.<br/>[0065] Figure 4 is a flow chart depicting a method 335 for a digital wallet <br/>to interact with<br/>a merchant website 133 to complete a purchase, in accordance with certain <br/>exemplary <br/>embodiments, as referenced in step 335 of Figure 3. With reference to Figures <br/>1 and 4, in <br/>block 405, the merchant's website 133 attaches to the digital wallet 111 by <br/>establishing a <br/>connection between the website 133 and the digital wallet 111.<br/>[0066] In block 410, the digital wallet 111 and the merchant's website 133 <br/>establish a<br/>secure connection for communication between the digital wallet 111 and the <br/>merchant's <br/>website 133. In certain exemplary embodiments, the digital wallet 111 may <br/>authenticate the <br/>merchant's website 133 prior to establishing the secure connection. For <br/>example, the digital <br/>wallet 111 may compare the merchant name, the URL of the merchant's website <br/>133, or the <br/>IP address of the merchant's website 133 to a list of known trusted or known <br/>non-trusted <br/>merchants prior to establishing the secure connection. If the merchant system <br/>130 is not <br/>trusted by the digital wallet 111, then the digital wallet 111 will not <br/>authorize the secure<br/>18<br/><br/>CA 02814115 2013-04-08<br/>WO 2012/083113 PCT/US2011/065363<br/>connection, rather the digital wallet 111 detaches from the merchant's website <br/>133 by <br/>disconnecting the connection between the website 133 and the digital wallet <br/>111.<br/>[0067] After establishing the secure connection, in block 415, the <br/>merchant's website 133<br/>transmits a purchase request message to the digital wallet 111. The purchase <br/>request message <br/>includes a request for payment information from the digital wallet 111 to <br/>complete the <br/>purchase. The purchase request message also can include information regarding <br/>the <br/>product(s) for purchase, such as a name and/or description of each product, a <br/>price for each <br/>product, a total price for all products, taxes, shipping charges, handling <br/>charges, other <br/>charges, a SKU or other product identifier for each product, shipping options <br/>and associated <br/>costs, and/or a discount amount for each product. The purchase request message <br/>also can <br/>include information regarding the merchant, such as the merchant's name, a <br/>description of <br/>the merchant, and/or payment methods accepted by the merchant (for example, <br/>VISA, <br/>MASTERCARD, debit card, or other payment method). In certain exemplary <br/>embodiments, <br/>the purchase request message also can include a request for the user 101 to <br/>provide additional <br/>information. This request can be configured by the merchant to solicit <br/>additional information <br/>from the user 101, such as an e-mail address or a loyalty rewards account <br/>number.<br/>[0068] In block 420, the digital wallet 111 receives the purchase request <br/>message from<br/>the merchant's website 133 and interacts with the user 101 to confirm the <br/>purchase. In <br/>certain exemplary embodiments, this interaction includes the digital wallet <br/>111 presenting a <br/>user interface on the user device 110 that displays information associated <br/>with the purchase <br/>to the user 101 and requests confirmation to complete the purchase. The <br/>information <br/>displayed by the digital wallet 111 may include some or all of the information <br/>included in the <br/>purchase request message.<br/>[0069] In certain exemplary embodiments, the user interface displayed by <br/>the digital<br/>wallet 111 also enables the user 101 to select from multiple payment options <br/>stored by the <br/>digital wallet 111. The user interface also may allow the user 101 to select <br/>or update <br/>shipping information. The digital wallet 111 may block the user from using a <br/>payment <br/>option not accepted by the merchant system 130 as indicated in the purchase <br/>request <br/>message. The user interface also may prompt the user 101 to enter information <br/>requested by <br/>the merchant system 130 in the purchase request message. After reviewing the <br/>purchase <br/>information and/or selecting a payment method, updating shipping information, <br/>and/or <br/>providing additional information, the user 101 actuates a link or button <br/>control to confirm the <br/>purchase. If the user 101 does not want to confirm the purchase, the user 101 <br/>selects a<br/>19<br/><br/>CA 02814115 2013-04-08<br/>WO 2012/083113 PCT/US2011/065363<br/>"cancel" link or button control to cancel the purchase, thereby terminating <br/>the session <br/>between the digital wallet 111 and the website 133.<br/>[0070] In block 425, if the user 101 confirmed the purchase in block 420, <br/>the digital<br/>wallet 111 generates and transmits a merchant request message to the <br/>merchant's website <br/>133. The merchant request message includes confirmation of the purchase and <br/>payment <br/>information to use in completing the purchase. For example, the merchant <br/>request message <br/>can include the form of payment and all information needed to process that <br/>payment (for <br/>example, credit card number), shipping method, shipping address, e-mail <br/>address, user name, <br/>and any other information for the purchase transaction. The merchant request <br/>message also <br/>can include the information in the purchase request message and any <br/>information requested <br/>by the merchant system 130. The digital wallet 111 can automatically retrieve <br/>payment <br/>information for a selected payment option from the data storage unit 113 to <br/>include in the <br/>merchant request message upon confirmation from the user 101 and/or a <br/>selection of a <br/>payment option by the user 101.<br/>[0071] In block 430, the merchant's website 133 receives the merchant <br/>request message<br/>and sends the payment information to the payment processor 132 for processing. <br/>The <br/>payment processor 132 interacts with an acquirer or a financial institution <br/>associated with the <br/>payment information to authorize the payment information and to credit and <br/>debit the <br/>appropriate accounts for payment from the user 101 to the merchant.<br/>[0072] In block 435, the web server 131 receives a message from the payment <br/>processor<br/>132 indicating whether the payment information was authorized. If the payment <br/>information <br/>was authorized, the method 335 follows the "YES" branch to step 340, as <br/>referenced in <br/>Figure 3. Otherwise, the method 335 follows the "NO" branch to step 440.<br/>[0073] In step 440, the merchant's website 133 notifies the user 101 that <br/>the payment<br/>information was not authorized and can prompt the user 101 to try another <br/>payment option. <br/>After block 440, the method 335 returns to block 420 where the digital wallet <br/>111 interacts <br/>with the user 101 to complete the purchase using a different payment option. <br/>The user 101 <br/>could cancel the purchase if the user 101 does not want to complete the <br/>purchase using a <br/>different payment option.<br/>[0074] Figure 5 is a flow chart depicting a method 500 for installing a <br/>digital wallet on a<br/>user device, in accordance with certain exemplary embodiments. With reference <br/>to Figures 1 <br/>and 5, in block 505, the user 101 indicates a desire to purchase one or more <br/>products at the<br/><br/>CA 02814115 2013-04-08<br/>WO 2012/083113 PCT/US2011/065363<br/>merchant's website 133. This act performed in block 505 can be substantially <br/>similar to steps <br/>315-325 illustrated in Figure 3 and discussed above.<br/>[0075] In block 510, the merchant's website 133 scans the user device 110 <br/>and/or the<br/>web browser application 112 to determine whether a digital wallet 111 is <br/>installed on the user <br/>device 110 or embedded in the web browser application 112. In block 515, if <br/>the merchant's <br/>website 133 detects a digital wallet 111, then the method 500 follows the <br/>"YES" branch and <br/>ends as a digital wallet 111 is already installed on the user device 110. If a <br/>digital wallet 111 <br/>is not detected by the merchant's website 133, the method 500 follows the "NO" <br/>branch to <br/>block 520.<br/>[0076] In block 520, the merchant's website 133 presents a form for the <br/>user 101 to<br/>provide payment information to complete the purchase of the one or more <br/>products. This <br/>form can be similar to a conventional web form having text entry fields for <br/>receiving credit <br/>card, debit card, or other payment information, shipping address, billing <br/>address, e-mail <br/>address, name, phone number, and other user information. The form also can <br/>include fields <br/>for receiving user information and user contact information.<br/>[0077] In block 525, the user 101 completes the form by providing the <br/>requested<br/>information and submits the form to the merchant's website 133. In block 530, <br/>the merchant <br/>system 130 processes the received payment information and completes the <br/>transaction. In <br/>block 535, the merchant's website 133 prompts the user 101 to download and <br/>install the <br/>digital wallet 111 on the user device 110.<br/>[0078] In block 540, if the user 101 elects to install the digital wallet <br/>111, the method 500<br/>follows the "YES" branch to block 550. Otherwise, the method 500 follows the <br/>"NO" branch <br/>and the method 500 ends.<br/>[0079] In block 545, the merchant's website 133 downloads and initiates the <br/>installation<br/>of the digital wallet 111 on the user device 110. During the installation <br/>process, the digital <br/>wallet 111 can prompt the user 101 to set up a digital wallet account at the <br/>cloud computing <br/>environment. The user 101 can opt-in or opt-out of this feature and also can <br/>select to install <br/>or activate certain features only. If the user 101 opts-in to the digital <br/>wallet account, the <br/>digital wallet 111 can obtain information from the user 101 for the account, <br/>such as payment <br/>information, contact information, preferred shipping information, and a user <br/>name and <br/>password for security purposes.<br/>[0080] The installed digital wallet 111 can interact with the merchant's <br/>website 133 to<br/>obtain the payment information used to complete the purchase and a receipt for <br/>the purchase.<br/>21<br/><br/>CA 02814115 2016-06-17<br/>In block 550, the digital wallet 111 stores the payment information and the <br/>receipt in the data <br/>storage unit 113. If the user 101 elected to create a digital wallet account <br/>with the cloud <br/>computing environment, the digital wallet 111 synchronizes the receipt and the <br/>payment <br/>information with the digital wallet account.<br/>[0081] In an alternative exemplary embodiment, the installation of the <br/>digital wallet 111<br/>on user device 110 can occur prior to step 520, whereby the user downloads the <br/>digital wallet <br/>application 111, provides the payment and user information for storage by the <br/>digital wallet <br/>111 on the date storage unit 113, and then completes the purchase with the <br/>website 133 via <br/>the digital wallet 111.<br/>General<br/>[0082] The exemplary embodiments described herein can be used with computer<br/>hardware and software that perform the methods and processing functions <br/>described <br/>previously. The systems, methods, and procedures described herein can be <br/>embodied in a <br/>programmable computer, computer-executable software, or digital circuitry. The <br/>software <br/>can be stored on computer-readable media. For example, computer-readable media <br/>can <br/>include a floppy disk, RAM, ROM, hard disk, removable media, flash memory, <br/>memory <br/>stick, optical media, magneto-optical media, CD-ROM, etc. Digital circuitry <br/>can include <br/>integrated circuits, gate arrays, building block logic, field programmable <br/>gate arrays (FPGA), <br/>etc.<br/>[0083] The exemplary methods and acts described in the embodiments <br/>presented<br/>previously are illustrative, and, in alternative embodiments, certain acts can <br/>be performed in a <br/>different order, in parallel with one another, omitted entirely, and/or <br/>combined between <br/>different exemplary embodiments, and/or certain additional acts can be <br/>performed.<br/>Accordingly, such alternative <br/>embodiments are included in the inventions described herein.<br/>[0084] Although specific embodiments have been described above in detail, <br/>the<br/>description is merely for purposes of illustration. It should be appreciated, <br/>therefore, that <br/>many aspects described above are not intended as required or essential <br/>elements unless <br/>explicitly stated otherwise. Modifications of, and equivalent acts <br/>corresponding to, the <br/>disclosed aspects of the exemplary embodiments, in addition to those described <br/>above, can be <br/>made by a person of ordinary skill in the art, having the benefit of the <br/>present disclosure.<br/>22<br/><br/>CA 02814115 2013-04-08<br/>WO 2012/083113 PCT/US2011/065363<br/>the scope of which is to be accorded the broadest interpretation so as to <br/>encompass such <br/>modifications and equivalent structures.<br/>23<br/>