US20160071194A1 - Providing Interactive Notifications for Completing Online Transactions - Google Patents
Providing Interactive Notifications for Completing Online Transactions Download PDFInfo
- Publication number
- US20160071194A1 US20160071194A1 US14/479,486 US201414479486A US2016071194A1 US 20160071194 A1 US20160071194 A1 US 20160071194A1 US 201414479486 A US201414479486 A US 201414479486A US 2016071194 A1 US2016071194 A1 US 2016071194A1
- Authority
- US
- United States
- Prior art keywords
- interface
- mobile device
- online transaction
- input
- completing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0641—Shopping interfaces
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/08—Payment architectures
- G06Q20/12—Payment architectures specially adapted for electronic shopping systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/08—Payment architectures
- G06Q20/14—Payment architectures specially adapted for billing systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/32—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
- G06Q20/322—Aspects of commerce using mobile devices [M-devices]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q20/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
- G06Q20/401—Transaction verification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q30/00—Commerce
- G06Q30/06—Buying, selling or leasing transactions
- G06Q30/0601—Electronic shopping [e-shopping]
- G06Q30/0633—Lists, e.g. purchase orders, compilation or processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/72—Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
- H04M1/724—User interfaces specially adapted for cordless or mobile telephones
- H04M1/72448—User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions
- H04M1/72463—User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions to restrict the functionality of the device
- H04M1/724631—User interfaces specially adapted for cordless or mobile telephones with means for adapting the functionality of the device according to specific conditions to restrict the functionality of the device by limiting the access to the user interface, e.g. locking a touch-screen or a keypad
- H04M1/724634—With partially locked states, e.g. when some telephonic functional locked states or applications remain accessible in the locked states
-
- H04M1/72577—
Definitions
- This disclosure relates generally to computer-implemented methods and systems and more particularly relates to providing interactive notifications for completing online transactions.
- Mobile computing devices can allow users to conduct online transactions (e.g., purchases of goods or services via a website).
- electronic commerce via mobile devices can involve an increased risk of abandoned transactions as compared to in-person shopping.
- users shopping on mobile devices may be more susceptible to distraction or context switching (e.g., switching from a web browser application to a text messaging application in response to receiving a text message).
- distraction or context switching e.g., switching from a web browser application to a text messaging application in response to receiving a text message.
- a user may initiate an online purchase with an electronic shopping cart, but may become distracted and fail to complete the purchase.
- Cart abandonment can negatively impact profits for many online retailers.
- an online merchant may send an e-mail to a user's e-mail address indicating that products are available in an online shopping cart. The user can access a link to the online merchant via the e-mail.
- a processing device determines that completing an online transaction initiated at a mobile device requires fewer than a threshold number of operations.
- the processing device also generates an interface for obtaining input to initiate at least one subsequent operation for completing the online transaction.
- the interface is generated based on determining that completing the online transaction requires fewer than the threshold number of operations.
- the processing device configures the mobile device to display the interface.
- the processing device also configures the mobile device to receive input for completing the online transaction using the interface.
- FIG. 1 is a block diagram depicting an example of a system that includes a transaction server and a mobile device for performing online transactions according to certain exemplary embodiments;
- FIG. 2 is a diagram depicting an example of an interface used by the mobile device for performing online transactions according to certain exemplary embodiments
- FIG. 3 is a diagram depicting an example of a notification interface provided to the mobile device for completing an online transaction according to certain exemplary embodiments
- FIG. 4 is a diagram depicting an example of an updated interface presented at the mobile device after using the notification interface to complete the online transaction according to certain exemplary embodiments;
- FIG. 5 is a flow chart illustrating an example of a method for providing interactive notifications for completing online transactions according to certain exemplary embodiments
- FIG. 6 is a flow chart illustrating an example of a method for using interactive notifications to obtain analytics regarding online transactions.
- FIG. 7 is a block diagram depicting examples of implementations of a transaction server and a mobile device according to certain exemplary embodiments according to certain exemplary embodiments.
- Computer-implemented systems and methods are disclosed for providing interactive notifications for completing online transactions.
- the status of an online transaction e.g., the purchase of a product
- Push notifications that include interactive messages can be transmitted to the mobile device or generated at the mobile device.
- the interactive messages can prompt the user for a decision regarding the transaction.
- the interactive message can allow the user to complete or cancel the transaction at the time that the message is displayed.
- the interactive message can thereby prompt a user to complete the transaction in a manner that is more likely to cause the user to commit to a decision regarding the transaction (i.e., completion or cancellation of the transaction).
- a mobile device can establish a session with a web server or other transaction server for conducting online transactions.
- the mobile device can initiate a transaction with the web server, such as selecting one or more products or services for purchase.
- a user of the mobile device may not immediately complete the transaction. For example, the user may be distracted from the pending purchase or be indecisive about the pending purchase.
- a monitoring program that is executed at one or both of the server and the mobile device can detect that the mobile device has not completed the transaction and has not taken any action regarding the transaction for a specified period of time. The monitoring program can also determine that a small number of operations are required to complete the transaction.
- the monitoring program can generate a notification interface based on determining that the user has not taken any action regarding the transaction for a specified period of time and that a small number of operations are required to complete the transaction.
- the notification interface can be used to notify the user that the transaction is incomplete.
- the notification interface can also be used for obtaining input for completing the online transaction.
- the notification interface can be displayed at the mobile device immediately after the notification interface is generated at or received by the mobile device. The user can enter input via the displayed notification interface that either completes the transaction or cancels the transaction.
- FIG. 1 is a block diagram depicting an example of a system that includes a transaction server 102 and a mobile device 108 for performing online transactions.
- the transaction server 102 can communicate with one or more mobile devices 108 via signals communicated via one or more data networks 107 .
- the transaction server 102 can be a server device.
- the transaction server 102 can include multiple computing systems that are configured for grid-based computing or cloud computing.
- the mobile device 108 can include any computing device that can access the transaction server 102 and perform one or more operations involved in an online transaction.
- Non-limiting examples of a mobile device 108 include smart phones, tablet computers, laptop computers, etc.
- the transaction server 102 can include one or more processing devices that can execute program code stored in a non-transitory computer-readable medium.
- the program code can include a monitoring module 104 and a transaction application 106 .
- the mobile device 108 can include one or more processing devices that can execute program code stored in a non-transitory computer-readable medium.
- the program code can include a monitoring module 110 and a client application 112 .
- the transaction application 106 can be, for example, a web server application for purchasing goods or services.
- the client application 112 can be used to access the transaction application 106 to perform one or more online transactions.
- Non-limiting examples of the client application 112 include a browser application, a native application executed at the mobile device for remotely accessing the transaction application 106 , etc.
- One or both of the monitoring modules 104 , 110 can be used to monitor the status of an online transaction between the transaction application 106 and the client application 112 .
- One or both of the monitoring modules 104 , 110 can determine that the online transaction has been initiated, but not completed.
- One or both of the monitoring modules 104 , 110 can generate a notification or other interface that can prompt a user of the mobile device 108 to complete the online transaction or cancel the transaction.
- the monitoring module 104 can monitor the transaction application 106 on behalf of the mobile device 108 based on determining that the mobile device 108 is a smart phone or other device that is likely to be utilized by a single user. For example, the monitoring module 104 can monitor online transactions initiated by mobile device 108 based on receiving a device identifier from the mobile device 108 (or from a telecommunication network in communication with the mobile device 108 ) that identifies the mobile device 108 as a smart phone or other single-user device. In additional or alternative embodiments, the monitoring module 110 can monitor the client application 112 based on determining that the mobile device 108 is a smart phone or other device that is likely to be utilized by a single user. For example, the monitoring module 110 can monitor online transactions initiated by mobile device 108 based on receiving a device identifier from an operating system of the mobile device 108 that identifies the mobile device 108 as a smart phone or other single-user device.
- Restricting one or more of the monitoring modules 104 , 110 to monitoring online transactions initiated using a single-user mobile device 108 can reduce the risk of online transactions being initiated by a first user of a computing device and being completed by a second user of the same computing device without authorization by the first user.
- the owner of a smart phone will likely be the only user of the smart phone.
- an interactive notification for completing a transaction that is provided to a smart phone is more likely to be presented to the user who initiated the transaction as compared to a notification that would be provided to a user of a different type of computing device (e.g., a desktop computer).
- the monitoring module 110 can monitor the client application 112 based on determining that the mobile device 108 used to initiate an online transaction at a first point in time is being utilized by the same user at a second point in time. For example, the monitoring module 110 can monitor online transactions initiated by mobile device 108 during a session or other time period in which a user has been authenticated for accessing the mobile device 108 (e.g., by entering a password or other passcode, by providing biometric information for authenticating a user, etc.). In some embodiments, the monitoring module 110 can pause or terminate monitoring of the client application based on a user logging out of the mobile device 108 or otherwise terminating an authenticated session with the mobile device 108 .
- the monitoring module 110 can pause or terminate monitoring of the client application based on the mobile device 108 entering a locked state (e.g., if a given user of the mobile device 108 has not used the mobile device 108 for a certain period of time). In some embodiments, the monitoring module 110 may pause or terminate monitoring of the client application based on the mobile device 108 having a certain device type (e.g., tablet, laptop, etc.) that is more likely to be used by multiple users. In other embodiments, the monitoring module 110 may continue monitoring of the client application if the mobile device 108 enters a locked state and a user is logged into the mobile device 108 or has otherwise been authenticated by the mobile device 108 .
- a locked state e.g., if a given user of the mobile device 108 has not used the mobile device 108 for a certain period of time. In some embodiments, the monitoring module 110 may pause or terminate monitoring of the client application based on the mobile device 108 having a certain device type (e.g., tablet
- interactive notifications may be provided to a user of a locked mobile device 108 (e.g., a laptop in a screensaver state, a laptop in a lock screen state, etc.) if the user has logged into the device.
- the current user of the mobile device 108 is known to the monitoring module 110 (e.g., by logging into the device) but may be not currently authorized to use the device (e.g., if the user has not entered a password or other credential for unlocking the device).
- the monitoring module 110 may determine that monitoring of the client application should not be paused or terminated based on the mobile device 108 having a certain device type (e.g., a smart phone) that is more likely to be used by a single user.
- a certain device type e.g., a smart phone
- FIG. 2 is a diagram depicting an example of an interface 204 used by the mobile device 108 for performing online transactions.
- the client application 112 can configure the mobile device 108 to display the interface 204 at a screen 202 .
- the interface 204 can be a webpage of a website for accessing an online merchant (e.g., “Merchant.xyz”).
- a user of the mobile device 108 can initiate an online transaction via the interface 204 .
- the mobile device 108 can be used to select one or more products for an online purchase.
- the selected products can be displayed in the interface 204 .
- the interface 204 can also be used to enter payment or billing information for the transaction, such as a credit card number used to purchase the selected products.
- the interface 204 can also include interaction objects, such as clickable buttons for authorizing the purchase and cancelling the purchase.
- the user may become distracted. For example, the user may receive a phone call at the mobile device 108 while conducting the online transaction. During the call, the mobile device 108 may enter a locked state that hides the interface 204 . At the completion of the call, the user may put away the mobile device 108 and forget about the online transaction.
- FIG. 3 is a diagram depicting an example of a notification interface 304 provided to the mobile device 108 for completing an online transaction.
- the notification interface 304 can include one or more interaction objects that can be used to obtain input for completing or cancelling the transaction.
- the notification interface 304 depicted in FIG. 3 includes a clickable button for completing the purchase (i.e., “Buy Now”) and a clickable button for cancelling the purchase (i.e., “Cancel”).
- the notification interface 304 can be generated at transaction server 102 and transmitted to the mobile device 108 by the monitoring module 104 .
- the notification interface 304 can be generated at the mobile device 108 by the monitoring module 110 .
- the mobile device 108 can display the notification interface 304 at the screen 202 in response to the mobile device 108 receiving or generating the notification interface 304 .
- the notification interface 304 can be displayed on top of or in place of interfaces for other applications executed at the mobile device 108 .
- the notification interface 304 can be displayed on top of a lock interface 302 that indicates that the mobile device 108 has entered a locked state.
- a lock interface 302 can include any interface or interface elements used by an operating system of the mobile device 108 to regulate access to the mobile device 108 .
- the lock interface 302 can be displayed to require that a user perform a specific action or group of actions in order to access other applications of the mobile device 108 .
- Non-limiting examples of such an action or group of actions include entering a password, providing a certain combination of inputs to buttons of the mobile device 108 , performing a specific gesture using a touchscreen of the mobile device 108 , etc.
- the mobile device 108 can execute a suitable operating system that allows interactive notifications to be displayed in a lock interface 302 .
- an operating system of the mobile device 108 can have a default setting that allows notifications generated by one or more of the monitoring modules 104 , 110 to be displayed in the lock interface 302 .
- an operating system of the mobile device 108 can be configured by a user to allow notifications generated by one or more of the monitoring modules 104 , 110 to be displayed in the lock interface 302 (e.g., by selecting preferences for an application that includes or communicates with one or more of the monitoring modules 104 , 110 ).
- FIG. 3 depicts the notification interface 304 being displayed in a lock interface 302 for illustrative purposes.
- the notification interface 304 can be displayed by the mobile device 108 on top of or in place of other interfaces for other active applications executed by the mobile device 108 .
- the monitoring module 110 can configure the mobile device 108 to prevent interactions with other application at the mobile device 108 until an input has been received via the notification interface 304 (e.g., an input that causes an online transaction to be completed or an input that causes an online transaction to be cancelled). The monitoring module 110 can do so without presenting a lock interface 302 at the mobile device 108 .
- the input received by the notification interface 304 can be used to automatically complete the online transaction without additional actions by the users.
- the client application 112 can utilize the input from the notification interface 304 (i.e., clicking the button labeled “Buy Now”) to complete the transaction by authorizing the online purchase previously initiated at the mobile device 108 .
- FIG. 4 is a diagram depicting an example of an updated interface 404 presented at the mobile device 108 after using the notification interface 304 to complete the online transaction.
- FIG. 5 is a flow chart illustrating an example of a method 500 for providing interactive notifications for completing online transactions.
- the method 500 is described with reference to the examples and implementation depicted in FIGS. 1-4 . Other implementations, however, are possible.
- the method 500 involves determining that completing an online transaction initiated at a mobile device 108 requires fewer than a threshold number of operations, as depicted in block 510 .
- a processing device of the transaction server 102 can execute a monitoring module 104 to determine that the mobile device 108 has initiated a transaction and to identify one or more operations required for completing the transaction.
- a processing device of the mobile device 108 can execute a monitoring module 110 to determine that the mobile device 108 has initiated a transaction and to identify one or more operations required for completing the transaction.
- a processing device can determine that the mobile device 108 has initiated a transaction by accessing one or more records of transactions from a database or other data structure stored in a non-transitory computer-readable medium.
- the processing device can retrieve or otherwise obtain one or more records associated with the mobile device 108 that includes information about the online transaction.
- the processing device can determine from the obtained record that the online transaction has been initiated but not completed.
- the processing device can also identify one or more operations for completing the transaction based on information from the obtained record.
- a processing device of the transaction server 102 or the mobile device 108 can determine that an online transaction includes a potentially abandoned shopping cart for an online merchant.
- the shopping cart or other online transaction can be identified as potentially abandoned based on any suitable criteria.
- one or more of the monitoring modules 104 , 110 can identify a shopping cart or other online transaction as potentially abandoned based on a specified amount of time elapsing without the mobile device 108 performing an operation related to the shopping cart or other online transaction.
- one or more of the monitoring modules 104 , 110 can identify a shopping cart or other online transaction as potentially abandoned based on the mobile device 108 entering a locked state after the online transaction has been initiated.
- one or more of the monitoring modules 104 , 110 can identify a shopping cart or other online transaction as potentially abandoned based on the mobile device 108 navigating away from an application or interface used to initiate the online transaction.
- the mobile device 108 may receive input closing a web browser tab or window used to initiate the online transaction. In another non-limiting example such navigation, the mobile device 108 may receive input for accessing another application on the mobile device 108 other than an application used to initiate the online transaction. In some embodiments, one or more of the monitoring modules 104 , 110 can identify a shopping cart or other online transaction as potentially abandoned rather than cancelled based on determining that the mobile device 108 has not been used to perform an explicit operation to cancel the transaction (e.g., clicking a “cancel” button in an online shopping cart interface 204 ).
- the threshold number of operations can be identified based on the feasibility of using a single notification interface that can be presented at the mobile device 108 to obtain all of the required inputs for completing the transaction.
- a larger threshold number of operations e.g., 3-5 operations
- a smaller threshold number of operations e.g., 1-2 operations
- a mobile device 108 having a smaller display screen e.g., a display screen having a dimension or area smaller than a threshold dimension or area.
- one or more of the monitoring modules 104 , 110 can determine that completing the online transaction involves multiple operations (e.g., selecting one or more options for a product to be purchased and authorizing the purchase).
- One or more of the monitoring modules 104 , 110 can determine whether a display screen of the mobile device 108 is sufficiently large to display a notification interface that can be used to perform each of the multiple operations (e.g., a notification interface that can be used to present multiple buttons for selecting the product options and another button for authorizing the purchase).
- one or more of the monitoring modules 104 , 110 can wherein determine that completing the online transaction requires fewer than the threshold number of operations based on a quantity and/or a type of additional data to be entered by a user to complete the transaction.
- one or more of the monitoring modules 104 , 110 can determine that billing information or other data has not been provided by one of the parties to the online transaction (e.g., a user of the mobile device 108 ).
- One or more of the monitoring modules 104 , 110 can determine that entering the additional data requires multiple data inputs (e.g., keystrokes for typing data into the mobile device 108 ).
- One or more of the monitoring modules 104 , 110 can determine that the number of data inputs for entering the additional data is greater than the threshold number of operations for completing the transaction.
- one or more of the monitoring modules 104 , 110 can determine that billing information or other additional data required for the transaction has previously been provided for the online transaction. For example, one or more of the monitoring modules 104 , 110 can determine from an electronic record of an online purchase that all required fields of an online order form have been completed. One or more of the monitoring modules 104 , 110 can determine that only one operation (e.g., a command to authorize the online transaction) or a relatively small number of single-click operations (e.g., a selection from a list of shipping options and a command to authorize the online transaction) is required to complete the transaction.
- a relatively small number of single-click operations e.g., a selection from a list of shipping options and a command to authorize the online transaction
- One or more of the monitoring modules 104 , 110 can determine that completing the online transaction requires fewer than the threshold number of operations based on determining that the billing information or other additional data has been previously provided and that the transaction can be completed using only one operation or a relatively small number of single-click operations.
- the method 500 also involves generating an interface for obtaining input to initiate at least one subsequent operation for completing the online transaction based on determining that completing the online transaction requires fewer than the threshold number of operations, as depicted in block 520 .
- a processing device of the transaction server 102 can execute a monitoring module 104 to generate the interface.
- a processing device of the mobile device 108 can execute a monitoring module 110 to generate the interface.
- a non-limiting example of an interface is a “push” notification message that can be displayed on a mobile device 108 , such as the notification interface 304 depicted in FIG. 3 .
- Generating the interface can include generating one or more interaction objects that are used for receiving input indicative of one or more commands to perform one or more subsequent operations for completing the online transaction.
- the interface can include a clickable button or other interaction object labeled “Buy Now.” Input that is received using the clickable button can be indicative of a command to authorize an online transaction.
- the interface can include a menu (e.g., a drop-down menu, a set of check boxes, a set of radio buttons, etc.) for selecting one or more options associated with the online transaction (e.g., shipping information, product options such as size or color, etc.). Input that is received using the menu can be indicative of a command to authorize the online transaction with the selected options.
- the method 500 also involves configuring the mobile device 108 to display the interface and to receive the input to initiate the at least one subsequent operation via the interface, as depicted in block 530 .
- a processing device can execute suitable programming code for configuring the mobile device 108 to display the interface.
- the processing device can execute suitable programming code for configuring a touchscreen or other input device of the mobile device 108 to receive input via the interface.
- One or more of the monitoring modules 104 , 110 can be used to configure the mobile device 108 to display the interface.
- the transaction server 102 can execute the monitoring module 104 to transmit or otherwise provide a message via a data network 107 to the mobile device 108 .
- the message can include a command to display the interface and receive input via the interface.
- the mobile device 108 can respond to the command by displaying the interface and configuring one or more input devices to receive the input.
- the mobile device 108 can execute the monitoring module 110 to generate one or more signals that can be provided from a processing device of the mobile device 108 to a display device of the mobile device 108 .
- the processing device can provide the generated signals to the display device via a data bus of the mobile device 108 .
- the monitoring module 110 can also configure the processing device to respond to inputs received using the interface.
- one or more of the operations depicted in blocks 510 , 520 , 530 can be performed in response to or based on one or more hardware characteristics of the mobile device 108 .
- a suitable processing device can execute one or more of the monitoring modules 104 , 110 or other suitable program code to identify one or more hardware characteristics of the mobile device 108 .
- one or more operations can be performed in response to or based on the mobile device 108 being a certain device type (e.g., a smart phone, a tablet computer, etc.).
- One or more of the monitoring modules 104 , 110 may generate interactive notifications based on determining that the device type is associated with certain hardware or software constraints (e.g., display screen size, available processing power, available memory, etc.).
- the hardware or software constraints can be determined from the device type for the mobile device 108 .
- the monitoring module 104 can identify the hardware or software constraints from communications with the mobile device 108 via the data network 107 .
- the monitoring module 110 can identify the hardware or software constraints from communications with an operating system or other software executed at the mobile device 108 .
- providing interactive notifications for completing online transactions as described herein can reduce a processing load on a mobile device 108 , which may prolong the operational lifespan of the mobile device 108 .
- a mobile device must perform multiple operations involved in completing an online transaction if a user is required to first navigate from a text notification regarding an online transaction to an e-mail application describing the transaction and then navigate from the e-mail application to a web browser application for completing the transaction.
- the mobile device can perform fewer operations for completing the online transaction (e.g., clicking a “complete purchase” button), thereby requiring fewer processing resources (e.g., processor time, memory allocation, utilization of a display device, etc.) for completing the online transaction.
- processing resources e.g., processor time, memory allocation, utilization of a display device, etc.
- each notification interface generated for a respective online transaction can include a first interaction object for cancelling the online transaction and a second interaction object for obtaining input to complete the additional online transaction.
- a non-limiting example of a notification interface 304 generated by a monitoring module is depicted in FIG. 3 .
- a first online transaction can be cancelled in response to receiving input in a first interface via the first interaction object that is indicative of a cancellation command.
- a second online transaction can be completed in response to receiving input in a second interface via the second interaction object that is indicative of an authorization command.
- One or more of the monitoring modules 104 , 110 can log or otherwise obtain data regarding the cancellation of the first transaction and the completion of the second transaction.
- One or more of the monitoring modules 104 , 110 can generate analytical data based on the data for the cancellation of the first transaction and the completion of the second transaction.
- FIG. 6 is a flow chart illustrating an example of a method 600 for using interactive notifications to obtain analytics regarding online transactions.
- the method 600 is described with reference to the examples and implementation depicted in FIGS. 1-5 . Other implementations, however, are possible.
- the method 600 involves determining, for each of multiple online transactions, that completing an online transaction initiated at a mobile device 108 requires fewer than a threshold number of operations, as depicted in block 610 .
- a suitable processing device can execute one or more of the monitoring modules 104 , 110 to determine that a mobile device 108 has initiated a transaction and to identify one or more operations required for completing the transaction. For each online transaction, the determination that the transaction initiated at a given mobile device 108 requires fewer than a threshold number of operations can be performed in a manner similar to that described above with respect to block 510 of method 500 .
- the online transactions can be initiated using, for example, different client applications 112 (e.g., different web browsers), different instances of the same client application 112 (e.g., the same type of web browser or native application being executed at different mobile devices 108 ), or some combination thereof.
- the multiple online transactions can include different online transactions initiated by different mobile devices 108 .
- the multiple online transactions can include different online transactions initiated using the same mobile device 108 .
- the online transactions can include a combination of multiple online transactions initiated using the same mobile device 108 and multiple online transactions initiated using different mobile devices 108 .
- the method 600 also involves generating, for each of the online transactions, an interface that includes a first interaction object for obtaining input to initiate at least one subsequent operation for completing the online transaction and a second interaction object for obtaining input to cancel the online transaction, as depicted in block 620 .
- Each notification interface can be generated based on determining that completing the online transaction requires fewer than the threshold number of operations.
- a suitable processing device can execute one or more of the monitoring modules 104 , 110 to generate a notification interface or other suitable interface.
- the notification interface can be generated in a manner similar to that described above with respect to block 520 of method 500 .
- each generated notification interface can include one or more interaction objects or other electronic content items that are specific to a respective online transaction.
- a generated notification interface for a given online purchase may include a summary of the items to be purchased.
- each generated notification interface can include a standard set of interaction objects or other electronic content.
- each generated notification interface may be limited to a message that a purchase from a merchant is pending, a first interaction object for completing the purchase, and a second interaction object for cancelling the purchase.
- the method 600 also involves configuring one or more mobile devices 108 to display the generated interfaces and to receive the input via at least one of the first and second interface objects to initiate the subsequent operation for completing the online transaction or to cancel the online transaction, as depicted in block 630 .
- a processing device can execute suitable programming code for configuring the same mobile device 108 to display multiple notification interfaces for multiple transactions, for configuring the different mobile device 108 to display different notification interfaces for different transactions, or some combination thereof.
- the processing device can execute suitable programming code for configuring a touchscreen or other input device of the one or more mobile devices 108 to receive input via the displayed notification interfaces.
- a mobile device can be configured to display the notification interface and receive input via the notification interface in a manner similar to that described above with respect to block 630 of method 600 .
- the method 600 also involves generating analytical data based on receiving at least one first input via a first interface for completing a first one of the online transactions and at least one second input via a second interface for completing a second one of the online transactions, as depicted in block 640 .
- a suitable processing device can execute one or more of the monitoring modules 104 , 110 or other suitable program code to collect data for generating analytics related to the online transactions for which the notification interfaces are generated.
- One or more of the monitoring modules 104 , 110 can log or otherwise obtain data regarding the cancellation of the first transaction and the completion of the second transaction.
- One or more of the monitoring modules 104 , 110 can generate analytical data based on the data for the cancellation of the first transaction and the completion of the second transaction.
- analytical data can be generated based on the absence of a response to an interactive notification (e.g., the notification was observed, ignored and no action was taken).
- a suitable processing device can execute one or more of the monitoring modules 104 , 110 or other suitable program code to collect data for generating analytics related an absence of a response to an interactive notification associated with an online transaction.
- One or more of the monitoring modules 104 , 110 can log or otherwise obtain data regarding the absence of the response.
- one or more of the monitoring modules 104 , 110 can identify or otherwise determine the absence of a response based on an absence of interaction with the notification interface for a specified period of time. For example, one or more of the monitoring modules 104 , 110 can initiate a timer simultaneously or near simultaneously with presenting a notification interface. One or more of the monitoring modules 104 , 110 can determine that no response has been received based on the timer expiring without input being received via the notification interface. In some embodiments, one or more of the monitoring modules 104 , 110 can cause the notification interface to be removed from the display screen after expiration of the timer without the receipt of an input to the interactive notification.
- one or more of the monitoring modules 104 , 110 can identify or otherwise determine the absence of a response based on a detection of user interaction with the mobile device 108 and an absence of interaction with the notification interface. For example, after a notification is presented at the mobile device 108 , one or more of the monitoring modules 104 , 110 can detect or receive information indicating that one or more controls on the mobile device 108 have been actuated (e.g., by pressing a button to illuminate the display screen in a locked state). One or more of the monitoring modules 104 , 110 can identify or otherwise determine the absence of a response based on a control of the mobile device 108 being actuated without input being subsequently received via the interactive notification.
- one or more of the monitoring modules 104 , 110 can detect or receive information indicating that one or more components of the mobile device 108 have been moved. For instance, one or more of the monitoring modules 104 , 110 can detect or receive information indicating that an orientation of the mobile device 108 has been changed (e.g., by moving the mobile device from a vertical to a horizontal orientation as the user raises the mobile device 108 to view the device screen, by rotating a smart phone or mobile device 108 such that the screen is facing a different direction, by moving the screen of a laptop to an open position, etc.). One or more of the monitoring modules 104 , 110 can identify or otherwise determine the absence of a response based on one or more components of the mobile device 108 being moved without a subsequent interaction with the interactive notification.
- one or more of the monitoring modules 104 , 110 can initiate a timer in response to a detection of user interaction with the mobile device 108 (e.g., actuating a control, moving the device, etc.).
- One or more of the monitoring modules 104 , 110 can determine the absence of an interaction with an interactive notification based on the timer expiring without an input being received via the interactive notification interface.
- one or more of the monitoring modules 104 , 110 can cause the notification interface to be removed from the display screen after expiration of the timer without the mobile device 108 receiving an input to the interactive notification.
- Generating data distinguishing between an explicit cancellation of an online transaction using a notification interface and an absence of response to a notification interface can provide more detailed analytics about user behavior with respect to interactive notifications as compared to generating analytics based only on an absence of response to a notification interface (or a completion of a transaction via the interface).
- analytical data describing positive responses e.g., completion of an online transaction using a notification interface
- negative responses e.g., an explicit cancellation of the online transaction using the notification interface
- null responses e.g., an absence of input received via the notification interface
- capturing a non-null, negative response can be used to identify such anti-preferences (e.g., users' expressed disinterest) for determining future consumer behavior.
- providing interactive notifications for completing online transactions as described herein can improve one or more functions performed by a system that includes multiple mobile devices or other computing devices in communication with servers that perform online transactions.
- interactive notifications for completing online transactions can be used to generate or otherwise obtain analytics regarding online purchases or other transactions.
- the analytics regarding online purchases or other transactions can be used to identify circumstances under which promotions, notifications, or other electronic communications provided from a transaction server to other computing devices are more likely to be effective (e.g., by resulting in a revenue generating event). Identifying one or more circumstances under which these electronic communications are more likely to be effective can allow the transaction server to limit the transmission of these electronic communications to those circumstances. Limiting the transmission of electronic communications to circumstances under which the electronic communications may be more effective can reduce the data traffic between the transaction server and the computing devices and thereby result in a more efficient use of the communication networks between the transaction server and the computing device.
- FIG. 7 is a block diagram depicting examples of implementations of a transaction server 102 and a mobile device 108 according to certain exemplary embodiments.
- the transaction server 102 can include a processor 702 that is communicatively coupled to a memory 704 and that executes computer-executable program code and/or accesses information stored in the memory 704 .
- the processor 702 may comprise a microprocessor, an application-specific integrated circuit (“ASIC”), a state machine, or other processing device.
- the processor 702 can include any of a number of processing devices, including one.
- Such a processor can include or may be in communication with a computer-readable medium storing instructions that, when executed by the processor 702 , cause the processor to perform the operations described herein.
- the memory 704 can include any suitable computer-readable medium.
- the computer-readable medium can include any electronic, optical, magnetic, or other storage device capable of providing a processor with computer-readable instructions or other program code.
- Non-limiting examples of a computer-readable medium include a magnetic disk, memory chip, ROM, RAM, an ASIC, a configured processor, optical storage, magnetic tape or other magnetic storage, or any other medium from which a computer processor can read instructions.
- the instructions may include processor-specific instructions generated by a compiler and/or an interpreter from code written in any suitable computer-programming language, including, for example, C, C++, C#, Visual Basic, Java, Python, Perl, JavaScript, and ActionScript.
- the transaction server 102 may also comprise a number of external or internal devices such as input or output devices.
- the transaction server 102 is shown with an input/output (“I/O”) interface 708 that can receive input from input devices or provide output to output devices.
- I/O input/output
- a bus 706 can also be included in the transaction server 102 .
- the bus 706 can communicatively couple one or more components of the transaction server 102 .
- the transaction server 102 can execute program code that configures the processor 702 to perform one or more of the operations described above with respect to FIGS. 1-6 .
- the program code can include one or more of the monitoring module 104 and the transaction application 106 .
- the program code may be resident in the memory 704 or any suitable computer-readable medium and may be executed by the processor 702 or any other suitable processor.
- one or more of the monitoring module 104 and the transaction application 106 can be resident in the memory 704 , as depicted in FIG. 7 .
- one or more of the monitoring module 104 and the transaction application 106 can be resident in a memory that is accessible via a data network, such as a memory accessible to a cloud service.
- the transaction server 102 can also include at least one network interface device 710 .
- the network interface device 710 can include any device or group of devices suitable for establishing a wired or wireless data connection to one or more data networks 107 .
- Non-limiting examples of the network interface device 710 include an Ethernet network adapter, a modem, and/or the like.
- the transaction server 102 can transmit messages as electronic or optical signals via the network interface device 710 .
- the mobile device 108 can include a processor 712 that is communicatively coupled to a memory 714 and that executes computer-executable program code and/or accesses information stored in the memory 714 .
- the processor 712 may comprise a microprocessor, an application-specific integrated circuit (“ASIC”), a state machine, or other processing device.
- the processor 712 can include any of a number of processing devices, including one.
- Such a processor can include or may be in communication with a computer-readable medium storing instructions that, when executed by the processor 712 , cause the processor to perform the operations described herein.
- the memory 714 can include any suitable computer-readable medium.
- the computer-readable medium can include any electronic, optical, magnetic, or other storage device capable of providing a processor with computer-readable instructions or other program code.
- Non-limiting examples of a computer-readable medium include a magnetic disk, memory chip, ROM, RAM, an ASIC, a configured processor, optical storage, magnetic tape or other magnetic storage, or any other medium from which a computer processor can read instructions.
- the instructions may include processor-specific instructions generated by a compiler and/or an interpreter from code written in any suitable computer-programming language, including, for example, C, C++, C#, Visual Basic, Java, Python, Perl, JavaScript, and ActionScript.
- the mobile device 108 can also include a bus 716 .
- the bus 716 can communicatively couple one or more components of the mobile device 108 .
- the mobile device 108 can also include a number of external or internal devices such as input or output devices.
- the mobile device 108 is shown with an input/output (“I/O”) interface 718 that can receive input from one or more input devices 720 or provide output to one or more output devices 722 .
- the one or more input devices 720 and one or more output devices 722 can be communicatively coupled to the I/O interface 718 .
- the communicative coupling can be implemented via any suitable manner (e.g., a connection via a printed circuit board, connection via a cable, communication via wireless transmissions, etc.).
- Non-limiting examples of input devices 720 include a touch screen (e.g., one or more cameras for imaging a touch area or pressure sensors for detecting pressure changes caused by a touch), a mouse, a keyboard, or any other device that can be used to generate input events in response to physical actions by a user of a computing device.
- Non-limiting examples of output devices 722 include an LCD screen, an external monitor, a speaker, or any other device that can be used to display or otherwise present outputs generated by a computing device.
- the mobile device 108 can execute program code that configures the processor 712 to perform one or more of the operations described above with respect to FIGS. 1-6 .
- the program code can include one or more of the monitoring module 110 and the client application 112 .
- the program code may be resident in the memory 714 or any suitable computer-readable medium and may be executed by the processor 712 or any other suitable processor.
- the monitoring module 110 can be omitted.
- the mobile device 108 can also include at least one network interface device 724 .
- the network interface device 724 can include any device or group of devices suitable for establishing a wired or wireless data connection to one or more data networks 107 .
- Non-limiting examples of the network interface device 724 include an Ethernet network adapter, a modem, and/or the like.
- the mobile device 108 can transmit messages as electronic or optical signals via the network interface device 724 .
- a computing system or environment can include at least one mobile device 108 .
- a system can be formed by establishing communication between a transaction server 102 and multiple mobile devices 108 .
- a computing device can include any suitable arrangement of components that provides a result conditioned on one or more inputs.
- Suitable computing devices include multipurpose microprocessor-based computer systems accessing stored software that programs or configures the computing system from a general purpose computing apparatus to a specialized computing apparatus implementing one or more embodiments of the present subject matter. Any suitable programming, scripting, or other type of language or combinations of languages may be used to implement the teachings contained herein in software to be used in programming or configuring a computing device.
- Embodiments of the methods disclosed herein may be performed in the operation of such computing devices.
- the order of the blocks presented in the examples above can be varied—for example, blocks can be re-ordered, combined, and/or broken into sub-blocks. Certain blocks or processes can be performed in parallel.
Landscapes
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Engineering & Computer Science (AREA)
- Finance (AREA)
- General Business, Economics & Management (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- Development Economics (AREA)
- Marketing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Human Computer Interaction (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- User Interface Of Digital Computer (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
Description
- This disclosure relates generally to computer-implemented methods and systems and more particularly relates to providing interactive notifications for completing online transactions.
- Mobile computing devices can allow users to conduct online transactions (e.g., purchases of goods or services via a website). However, electronic commerce via mobile devices can involve an increased risk of abandoned transactions as compared to in-person shopping. For example, users shopping on mobile devices may be more susceptible to distraction or context switching (e.g., switching from a web browser application to a text messaging application in response to receiving a text message). Thus, a user may initiate an online purchase with an electronic shopping cart, but may become distracted and fail to complete the purchase. Cart abandonment can negatively impact profits for many online retailers.
- Current solutions for reducing abandonment of online transactions involve sending notifications to users. For example, an online merchant may send an e-mail to a user's e-mail address indicating that products are available in an online shopping cart. The user can access a link to the online merchant via the e-mail.
- These solutions may be insufficient for facilitating the completion of online transactions. For example, simple push notifications and emails require the performance of multiple steps for the user to return to the online transaction and complete it (e.g., navigating from the notification to an e-mail program, opening a message in the e-mail program, clicking a link in the message to the purchaser's website). A distracted user of a mobile device may be less likely to perform such a multi-step process to complete a transaction.
- It is desirable to provide improved solutions for facilitating the completion of online transactions using mobile devices.
- According to certain embodiments, systems and methods are provided for generating interactive notifications that facilitate the completion of online transactions using mobile devices. In some embodiments, a processing device determines that completing an online transaction initiated at a mobile device requires fewer than a threshold number of operations. The processing device also generates an interface for obtaining input to initiate at least one subsequent operation for completing the online transaction. The interface is generated based on determining that completing the online transaction requires fewer than the threshold number of operations. The processing device configures the mobile device to display the interface. The processing device also configures the mobile device to receive input for completing the online transaction using the interface.
- These illustrative embodiments are mentioned not to limit or define the disclosure, but to provide examples to aid understanding thereof. Additional embodiments are discussed in the Detailed Description, and further description is provided there.
- These and other features, embodiments, and advantages of the present disclosure are better understood when the following Detailed Description is read with reference to the accompanying drawings, where:
-
FIG. 1 is a block diagram depicting an example of a system that includes a transaction server and a mobile device for performing online transactions according to certain exemplary embodiments; -
FIG. 2 is a diagram depicting an example of an interface used by the mobile device for performing online transactions according to certain exemplary embodiments; -
FIG. 3 is a diagram depicting an example of a notification interface provided to the mobile device for completing an online transaction according to certain exemplary embodiments; -
FIG. 4 is a diagram depicting an example of an updated interface presented at the mobile device after using the notification interface to complete the online transaction according to certain exemplary embodiments; -
FIG. 5 is a flow chart illustrating an example of a method for providing interactive notifications for completing online transactions according to certain exemplary embodiments; -
FIG. 6 is a flow chart illustrating an example of a method for using interactive notifications to obtain analytics regarding online transactions; and -
FIG. 7 is a block diagram depicting examples of implementations of a transaction server and a mobile device according to certain exemplary embodiments according to certain exemplary embodiments. - Computer-implemented systems and methods are disclosed for providing interactive notifications for completing online transactions. The status of an online transaction (e.g., the purchase of a product) initiated by a mobile device can be monitored to determine that a user has not yet completed the transaction. Push notifications that include interactive messages can be transmitted to the mobile device or generated at the mobile device. The interactive messages can prompt the user for a decision regarding the transaction. The interactive message can allow the user to complete or cancel the transaction at the time that the message is displayed. The interactive message can thereby prompt a user to complete the transaction in a manner that is more likely to cause the user to commit to a decision regarding the transaction (i.e., completion or cancellation of the transaction).
- The following non-limiting example is provided to help introduce the general subject matter of certain embodiments. A mobile device can establish a session with a web server or other transaction server for conducting online transactions. The mobile device can initiate a transaction with the web server, such as selecting one or more products or services for purchase. A user of the mobile device may not immediately complete the transaction. For example, the user may be distracted from the pending purchase or be indecisive about the pending purchase. A monitoring program that is executed at one or both of the server and the mobile device can detect that the mobile device has not completed the transaction and has not taken any action regarding the transaction for a specified period of time. The monitoring program can also determine that a small number of operations are required to complete the transaction. For example, completing the transaction may only involve clicking a “submit” button if the user has already entered his or her payment information. The monitoring program can generate a notification interface based on determining that the user has not taken any action regarding the transaction for a specified period of time and that a small number of operations are required to complete the transaction. The notification interface can be used to notify the user that the transaction is incomplete. The notification interface can also be used for obtaining input for completing the online transaction. The notification interface can be displayed at the mobile device immediately after the notification interface is generated at or received by the mobile device. The user can enter input via the displayed notification interface that either completes the transaction or cancels the transaction.
- Referring now to the drawings,
FIG. 1 is a block diagram depicting an example of a system that includes atransaction server 102 and amobile device 108 for performing online transactions. Thetransaction server 102 can communicate with one or moremobile devices 108 via signals communicated via one ormore data networks 107. In some embodiments, thetransaction server 102 can be a server device. In other embodiments, thetransaction server 102 can include multiple computing systems that are configured for grid-based computing or cloud computing. - The
mobile device 108 can include any computing device that can access thetransaction server 102 and perform one or more operations involved in an online transaction. Non-limiting examples of amobile device 108 include smart phones, tablet computers, laptop computers, etc. - The
transaction server 102 can include one or more processing devices that can execute program code stored in a non-transitory computer-readable medium. The program code can include amonitoring module 104 and atransaction application 106. Themobile device 108 can include one or more processing devices that can execute program code stored in a non-transitory computer-readable medium. The program code can include amonitoring module 110 and aclient application 112. - The
transaction application 106 can be, for example, a web server application for purchasing goods or services. Theclient application 112 can be used to access thetransaction application 106 to perform one or more online transactions. Non-limiting examples of theclient application 112 include a browser application, a native application executed at the mobile device for remotely accessing thetransaction application 106, etc. - One or both of the
monitoring modules transaction application 106 and theclient application 112. One or both of themonitoring modules monitoring modules mobile device 108 to complete the online transaction or cancel the transaction. - In some embodiments, the
monitoring module 104 can monitor thetransaction application 106 on behalf of themobile device 108 based on determining that themobile device 108 is a smart phone or other device that is likely to be utilized by a single user. For example, themonitoring module 104 can monitor online transactions initiated bymobile device 108 based on receiving a device identifier from the mobile device 108 (or from a telecommunication network in communication with the mobile device 108) that identifies themobile device 108 as a smart phone or other single-user device. In additional or alternative embodiments, themonitoring module 110 can monitor theclient application 112 based on determining that themobile device 108 is a smart phone or other device that is likely to be utilized by a single user. For example, themonitoring module 110 can monitor online transactions initiated bymobile device 108 based on receiving a device identifier from an operating system of themobile device 108 that identifies themobile device 108 as a smart phone or other single-user device. - Restricting one or more of the
monitoring modules mobile device 108 can reduce the risk of online transactions being initiated by a first user of a computing device and being completed by a second user of the same computing device without authorization by the first user. For example, the owner of a smart phone will likely be the only user of the smart phone. Thus, an interactive notification for completing a transaction that is provided to a smart phone is more likely to be presented to the user who initiated the transaction as compared to a notification that would be provided to a user of a different type of computing device (e.g., a desktop computer). - In additional or alternative embodiments, the
monitoring module 110 can monitor theclient application 112 based on determining that themobile device 108 used to initiate an online transaction at a first point in time is being utilized by the same user at a second point in time. For example, themonitoring module 110 can monitor online transactions initiated bymobile device 108 during a session or other time period in which a user has been authenticated for accessing the mobile device 108 (e.g., by entering a password or other passcode, by providing biometric information for authenticating a user, etc.). In some embodiments, themonitoring module 110 can pause or terminate monitoring of the client application based on a user logging out of themobile device 108 or otherwise terminating an authenticated session with themobile device 108. In additional or alternative embodiments, themonitoring module 110 can pause or terminate monitoring of the client application based on themobile device 108 entering a locked state (e.g., if a given user of themobile device 108 has not used themobile device 108 for a certain period of time). In some embodiments, themonitoring module 110 may pause or terminate monitoring of the client application based on themobile device 108 having a certain device type (e.g., tablet, laptop, etc.) that is more likely to be used by multiple users. In other embodiments, themonitoring module 110 may continue monitoring of the client application if themobile device 108 enters a locked state and a user is logged into themobile device 108 or has otherwise been authenticated by themobile device 108. For example, interactive notifications may be provided to a user of a locked mobile device 108 (e.g., a laptop in a screensaver state, a laptop in a lock screen state, etc.) if the user has logged into the device. In this example, the current user of themobile device 108 is known to the monitoring module 110 (e.g., by logging into the device) but may be not currently authorized to use the device (e.g., if the user has not entered a password or other credential for unlocking the device). In additional or alternative embodiments, themonitoring module 110 may determine that monitoring of the client application should not be paused or terminated based on themobile device 108 having a certain device type (e.g., a smart phone) that is more likely to be used by a single user. -
FIG. 2 is a diagram depicting an example of aninterface 204 used by themobile device 108 for performing online transactions. Theclient application 112 can configure themobile device 108 to display theinterface 204 at ascreen 202. In a non-limiting example, theinterface 204 can be a webpage of a website for accessing an online merchant (e.g., “Merchant.xyz”). A user of themobile device 108 can initiate an online transaction via theinterface 204. For example, themobile device 108 can be used to select one or more products for an online purchase. The selected products can be displayed in theinterface 204. Theinterface 204 can also be used to enter payment or billing information for the transaction, such as a credit card number used to purchase the selected products. Theinterface 204 can also include interaction objects, such as clickable buttons for authorizing the purchase and cancelling the purchase. - After inputting the information used for the online transaction at the
interface 204, the user may become distracted. For example, the user may receive a phone call at themobile device 108 while conducting the online transaction. During the call, themobile device 108 may enter a locked state that hides theinterface 204. At the completion of the call, the user may put away themobile device 108 and forget about the online transaction. - One or both of the
monitoring modules FIG. 3 is a diagram depicting an example of anotification interface 304 provided to themobile device 108 for completing an online transaction. Thenotification interface 304 can include one or more interaction objects that can be used to obtain input for completing or cancelling the transaction. For example, thenotification interface 304 depicted inFIG. 3 includes a clickable button for completing the purchase (i.e., “Buy Now”) and a clickable button for cancelling the purchase (i.e., “Cancel”). In some embodiments, thenotification interface 304 can be generated attransaction server 102 and transmitted to themobile device 108 by themonitoring module 104. In other embodiments, thenotification interface 304 can be generated at themobile device 108 by themonitoring module 110. Themobile device 108 can display thenotification interface 304 at thescreen 202 in response to themobile device 108 receiving or generating thenotification interface 304. - In some embodiments, the
notification interface 304 can be displayed on top of or in place of interfaces for other applications executed at themobile device 108. For example, as depicted inFIG. 3 , thenotification interface 304 can be displayed on top of alock interface 302 that indicates that themobile device 108 has entered a locked state. Alock interface 302 can include any interface or interface elements used by an operating system of themobile device 108 to regulate access to themobile device 108. For example, thelock interface 302 can be displayed to require that a user perform a specific action or group of actions in order to access other applications of themobile device 108. Non-limiting examples of such an action or group of actions include entering a password, providing a certain combination of inputs to buttons of themobile device 108, performing a specific gesture using a touchscreen of themobile device 108, etc. - The
mobile device 108 can execute a suitable operating system that allows interactive notifications to be displayed in alock interface 302. In some embodiments, an operating system of themobile device 108 can have a default setting that allows notifications generated by one or more of themonitoring modules lock interface 302. In additional or alternative embodiments, an operating system of themobile device 108 can be configured by a user to allow notifications generated by one or more of themonitoring modules monitoring modules 104, 110). -
FIG. 3 depicts thenotification interface 304 being displayed in alock interface 302 for illustrative purposes. Other implementations are possible. For example, in some embodiments, thenotification interface 304 can be displayed by themobile device 108 on top of or in place of other interfaces for other active applications executed by themobile device 108. In additional or alternative embodiments, themonitoring module 110 can configure themobile device 108 to prevent interactions with other application at themobile device 108 until an input has been received via the notification interface 304 (e.g., an input that causes an online transaction to be completed or an input that causes an online transaction to be cancelled). Themonitoring module 110 can do so without presenting alock interface 302 at themobile device 108. - The input received by the
notification interface 304 can be used to automatically complete the online transaction without additional actions by the users. Theclient application 112 can utilize the input from the notification interface 304 (i.e., clicking the button labeled “Buy Now”) to complete the transaction by authorizing the online purchase previously initiated at themobile device 108.FIG. 4 is a diagram depicting an example of an updated interface 404 presented at themobile device 108 after using thenotification interface 304 to complete the online transaction. -
FIG. 5 is a flow chart illustrating an example of amethod 500 for providing interactive notifications for completing online transactions. For illustrative purposes, themethod 500 is described with reference to the examples and implementation depicted inFIGS. 1-4 . Other implementations, however, are possible. - The
method 500 involves determining that completing an online transaction initiated at amobile device 108 requires fewer than a threshold number of operations, as depicted inblock 510. In some embodiments, a processing device of thetransaction server 102 can execute amonitoring module 104 to determine that themobile device 108 has initiated a transaction and to identify one or more operations required for completing the transaction. In additional or alternative embodiments, a processing device of themobile device 108 can execute amonitoring module 110 to determine that themobile device 108 has initiated a transaction and to identify one or more operations required for completing the transaction. A processing device can determine that themobile device 108 has initiated a transaction by accessing one or more records of transactions from a database or other data structure stored in a non-transitory computer-readable medium. The processing device can retrieve or otherwise obtain one or more records associated with themobile device 108 that includes information about the online transaction. The processing device can determine from the obtained record that the online transaction has been initiated but not completed. The processing device can also identify one or more operations for completing the transaction based on information from the obtained record. In a non-limiting example, a processing device of thetransaction server 102 or themobile device 108 can determine that an online transaction includes a potentially abandoned shopping cart for an online merchant. - The shopping cart or other online transaction can be identified as potentially abandoned based on any suitable criteria. In some embodiments, one or more of the
monitoring modules mobile device 108 performing an operation related to the shopping cart or other online transaction. In additional or alternative embodiments, one or more of themonitoring modules mobile device 108 entering a locked state after the online transaction has been initiated. In additional or alternative embodiments, one or more of themonitoring modules mobile device 108 navigating away from an application or interface used to initiate the online transaction. In one non-limiting example of such navigation, themobile device 108 may receive input closing a web browser tab or window used to initiate the online transaction. In another non-limiting example such navigation, themobile device 108 may receive input for accessing another application on themobile device 108 other than an application used to initiate the online transaction. In some embodiments, one or more of themonitoring modules mobile device 108 has not been used to perform an explicit operation to cancel the transaction (e.g., clicking a “cancel” button in an online shopping cart interface 204). - In some embodiments, the threshold number of operations can be identified based on the feasibility of using a single notification interface that can be presented at the
mobile device 108 to obtain all of the required inputs for completing the transaction. A larger threshold number of operations (e.g., 3-5 operations) can be used for amobile device 108 having a larger display screen (e.g., a display screen having a dimension or area greater than a threshold dimension or area). A smaller threshold number of operations (e.g., 1-2 operations) can be used for amobile device 108 having a smaller display screen (e.g., a display screen having a dimension or area smaller than a threshold dimension or area). In one non-limiting example, one or more of themonitoring modules monitoring modules mobile device 108 is sufficiently large to display a notification interface that can be used to perform each of the multiple operations (e.g., a notification interface that can be used to present multiple buttons for selecting the product options and another button for authorizing the purchase). - In additional or alternative embodiments, one or more of the
monitoring modules monitoring modules monitoring modules monitoring modules - In another example, one or more of the
monitoring modules monitoring modules monitoring modules monitoring modules - The
method 500 also involves generating an interface for obtaining input to initiate at least one subsequent operation for completing the online transaction based on determining that completing the online transaction requires fewer than the threshold number of operations, as depicted inblock 520. In some embodiments, a processing device of thetransaction server 102 can execute amonitoring module 104 to generate the interface. In additional or alternative embodiments, a processing device of themobile device 108 can execute amonitoring module 110 to generate the interface. A non-limiting example of an interface is a “push” notification message that can be displayed on amobile device 108, such as thenotification interface 304 depicted inFIG. 3 . - Generating the interface can include generating one or more interaction objects that are used for receiving input indicative of one or more commands to perform one or more subsequent operations for completing the online transaction. In one non-limiting example, the interface can include a clickable button or other interaction object labeled “Buy Now.” Input that is received using the clickable button can be indicative of a command to authorize an online transaction. In another non-limiting example, the interface can include a menu (e.g., a drop-down menu, a set of check boxes, a set of radio buttons, etc.) for selecting one or more options associated with the online transaction (e.g., shipping information, product options such as size or color, etc.). Input that is received using the menu can be indicative of a command to authorize the online transaction with the selected options.
- The
method 500 also involves configuring themobile device 108 to display the interface and to receive the input to initiate the at least one subsequent operation via the interface, as depicted inblock 530. A processing device can execute suitable programming code for configuring themobile device 108 to display the interface. The processing device can execute suitable programming code for configuring a touchscreen or other input device of themobile device 108 to receive input via the interface. - One or more of the
monitoring modules mobile device 108 to display the interface. In some embodiments, thetransaction server 102 can execute themonitoring module 104 to transmit or otherwise provide a message via adata network 107 to themobile device 108. The message can include a command to display the interface and receive input via the interface. Themobile device 108 can respond to the command by displaying the interface and configuring one or more input devices to receive the input. In additional or alternative embodiments, themobile device 108 can execute themonitoring module 110 to generate one or more signals that can be provided from a processing device of themobile device 108 to a display device of themobile device 108. The processing device can provide the generated signals to the display device via a data bus of themobile device 108. Themonitoring module 110 can also configure the processing device to respond to inputs received using the interface. - In some embodiments, one or more of the operations depicted in
blocks mobile device 108. A suitable processing device can execute one or more of themonitoring modules mobile device 108. In some embodiments, one or more operations can be performed in response to or based on themobile device 108 being a certain device type (e.g., a smart phone, a tablet computer, etc.). One or more of themonitoring modules mobile device 108. In additional or alternative embodiments, themonitoring module 104 can identify the hardware or software constraints from communications with themobile device 108 via thedata network 107. In additional or alternative embodiments, themonitoring module 110 can identify the hardware or software constraints from communications with an operating system or other software executed at themobile device 108. - In some embodiments, providing interactive notifications for completing online transactions as described herein can reduce a processing load on a
mobile device 108, which may prolong the operational lifespan of themobile device 108. For example, a mobile device must perform multiple operations involved in completing an online transaction if a user is required to first navigate from a text notification regarding an online transaction to an e-mail application describing the transaction and then navigate from the e-mail application to a web browser application for completing the transaction. In some embodiments, if an interactive notification is provided to themobile device 108 as described herein, the mobile device can perform fewer operations for completing the online transaction (e.g., clicking a “complete purchase” button), thereby requiring fewer processing resources (e.g., processor time, memory allocation, utilization of a display device, etc.) for completing the online transaction. - In additional or alternative embodiments, one or more of the
monitoring modules mobile devices 108. For example, each notification interface generated for a respective online transaction can include a first interaction object for cancelling the online transaction and a second interaction object for obtaining input to complete the additional online transaction. A non-limiting example of anotification interface 304 generated by a monitoring module is depicted inFIG. 3 . A first online transaction can be cancelled in response to receiving input in a first interface via the first interaction object that is indicative of a cancellation command. A second online transaction can be completed in response to receiving input in a second interface via the second interaction object that is indicative of an authorization command. One or more of themonitoring modules monitoring modules -
FIG. 6 is a flow chart illustrating an example of amethod 600 for using interactive notifications to obtain analytics regarding online transactions. For illustrative purposes, themethod 600 is described with reference to the examples and implementation depicted inFIGS. 1-5 . Other implementations, however, are possible. - The
method 600 involves determining, for each of multiple online transactions, that completing an online transaction initiated at amobile device 108 requires fewer than a threshold number of operations, as depicted inblock 610. A suitable processing device can execute one or more of themonitoring modules mobile device 108 has initiated a transaction and to identify one or more operations required for completing the transaction. For each online transaction, the determination that the transaction initiated at a givenmobile device 108 requires fewer than a threshold number of operations can be performed in a manner similar to that described above with respect to block 510 ofmethod 500. The online transactions can be initiated using, for example, different client applications 112 (e.g., different web browsers), different instances of the same client application 112 (e.g., the same type of web browser or native application being executed at different mobile devices 108), or some combination thereof. In some embodiments, the multiple online transactions can include different online transactions initiated by differentmobile devices 108. In additional or alternative embodiments, the multiple online transactions can include different online transactions initiated using the samemobile device 108. In additional or alternative embodiments, the online transactions can include a combination of multiple online transactions initiated using the samemobile device 108 and multiple online transactions initiated using differentmobile devices 108. - The
method 600 also involves generating, for each of the online transactions, an interface that includes a first interaction object for obtaining input to initiate at least one subsequent operation for completing the online transaction and a second interaction object for obtaining input to cancel the online transaction, as depicted inblock 620. Each notification interface can be generated based on determining that completing the online transaction requires fewer than the threshold number of operations. A suitable processing device can execute one or more of themonitoring modules method 500. - In some embodiments, each generated notification interface can include one or more interaction objects or other electronic content items that are specific to a respective online transaction. For example, a generated notification interface for a given online purchase may include a summary of the items to be purchased. In other embodiments, each generated notification interface can include a standard set of interaction objects or other electronic content. For example, each generated notification interface may be limited to a message that a purchase from a merchant is pending, a first interaction object for completing the purchase, and a second interaction object for cancelling the purchase.
- The
method 600 also involves configuring one or moremobile devices 108 to display the generated interfaces and to receive the input via at least one of the first and second interface objects to initiate the subsequent operation for completing the online transaction or to cancel the online transaction, as depicted inblock 630. A processing device can execute suitable programming code for configuring the samemobile device 108 to display multiple notification interfaces for multiple transactions, for configuring the differentmobile device 108 to display different notification interfaces for different transactions, or some combination thereof. The processing device can execute suitable programming code for configuring a touchscreen or other input device of the one or moremobile devices 108 to receive input via the displayed notification interfaces. For each online transaction, a mobile device can be configured to display the notification interface and receive input via the notification interface in a manner similar to that described above with respect to block 630 ofmethod 600. - The
method 600 also involves generating analytical data based on receiving at least one first input via a first interface for completing a first one of the online transactions and at least one second input via a second interface for completing a second one of the online transactions, as depicted inblock 640. A suitable processing device can execute one or more of themonitoring modules monitoring modules monitoring modules - In additional or alternative embodiments, analytical data can be generated based on the absence of a response to an interactive notification (e.g., the notification was observed, ignored and no action was taken). For example, a suitable processing device can execute one or more of the
monitoring modules monitoring modules - In some embodiments, one or more of the
monitoring modules monitoring modules monitoring modules monitoring modules - In additional or alternative embodiments, one or more of the
monitoring modules mobile device 108 and an absence of interaction with the notification interface. For example, after a notification is presented at themobile device 108, one or more of themonitoring modules mobile device 108 have been actuated (e.g., by pressing a button to illuminate the display screen in a locked state). One or more of themonitoring modules mobile device 108 being actuated without input being subsequently received via the interactive notification. In another example, after a notification is presented at themobile device 108, one or more of themonitoring modules mobile device 108 have been moved. For instance, one or more of themonitoring modules mobile device 108 has been changed (e.g., by moving the mobile device from a vertical to a horizontal orientation as the user raises themobile device 108 to view the device screen, by rotating a smart phone ormobile device 108 such that the screen is facing a different direction, by moving the screen of a laptop to an open position, etc.). One or more of themonitoring modules mobile device 108 being moved without a subsequent interaction with the interactive notification. - In some embodiments, one or more of the
monitoring modules monitoring modules monitoring modules mobile device 108 receiving an input to the interactive notification. - Generating data distinguishing between an explicit cancellation of an online transaction using a notification interface and an absence of response to a notification interface can provide more detailed analytics about user behavior with respect to interactive notifications as compared to generating analytics based only on an absence of response to a notification interface (or a completion of a transaction via the interface). For example, analytical data describing positive responses (e.g., completion of an online transaction using a notification interface), negative responses (e.g., an explicit cancellation of the online transaction using the notification interface) and null responses (e.g., an absence of input received via the notification interface) can allow marketers and other analytical entities to determine if a user is interested in certain products or services, if the user expressed no preference in certain products or services, or if the user is disinterested in certain products or services. Thus, capturing a non-null, negative response can be used to identify such anti-preferences (e.g., users' expressed disinterest) for determining future consumer behavior.
- In some embodiments, providing interactive notifications for completing online transactions as described herein can improve one or more functions performed by a system that includes multiple mobile devices or other computing devices in communication with servers that perform online transactions. In a non-limiting example, interactive notifications for completing online transactions can be used to generate or otherwise obtain analytics regarding online purchases or other transactions. The analytics regarding online purchases or other transactions can be used to identify circumstances under which promotions, notifications, or other electronic communications provided from a transaction server to other computing devices are more likely to be effective (e.g., by resulting in a revenue generating event). Identifying one or more circumstances under which these electronic communications are more likely to be effective can allow the transaction server to limit the transmission of these electronic communications to those circumstances. Limiting the transmission of electronic communications to circumstances under which the electronic communications may be more effective can reduce the data traffic between the transaction server and the computing devices and thereby result in a more efficient use of the communication networks between the transaction server and the computing device.
- Any suitable computing system or group of computing systems can be used to implement the
transaction server 102 and themobile device 108. For example,FIG. 7 is a block diagram depicting examples of implementations of atransaction server 102 and amobile device 108 according to certain exemplary embodiments. - The
transaction server 102 can include aprocessor 702 that is communicatively coupled to amemory 704 and that executes computer-executable program code and/or accesses information stored in thememory 704. Theprocessor 702 may comprise a microprocessor, an application-specific integrated circuit (“ASIC”), a state machine, or other processing device. Theprocessor 702 can include any of a number of processing devices, including one. Such a processor can include or may be in communication with a computer-readable medium storing instructions that, when executed by theprocessor 702, cause the processor to perform the operations described herein. - The
memory 704 can include any suitable computer-readable medium. The computer-readable medium can include any electronic, optical, magnetic, or other storage device capable of providing a processor with computer-readable instructions or other program code. Non-limiting examples of a computer-readable medium include a magnetic disk, memory chip, ROM, RAM, an ASIC, a configured processor, optical storage, magnetic tape or other magnetic storage, or any other medium from which a computer processor can read instructions. The instructions may include processor-specific instructions generated by a compiler and/or an interpreter from code written in any suitable computer-programming language, including, for example, C, C++, C#, Visual Basic, Java, Python, Perl, JavaScript, and ActionScript. - The
transaction server 102 may also comprise a number of external or internal devices such as input or output devices. For example, thetransaction server 102 is shown with an input/output (“I/O”)interface 708 that can receive input from input devices or provide output to output devices. A bus 706 can also be included in thetransaction server 102. The bus 706 can communicatively couple one or more components of thetransaction server 102. - The
transaction server 102 can execute program code that configures theprocessor 702 to perform one or more of the operations described above with respect toFIGS. 1-6 . The program code can include one or more of themonitoring module 104 and thetransaction application 106. The program code may be resident in thememory 704 or any suitable computer-readable medium and may be executed by theprocessor 702 or any other suitable processor. In some embodiments, one or more of themonitoring module 104 and thetransaction application 106 can be resident in thememory 704, as depicted inFIG. 7 . In additional or alternative embodiments, one or more of themonitoring module 104 and thetransaction application 106 can be resident in a memory that is accessible via a data network, such as a memory accessible to a cloud service. - The
transaction server 102 can also include at least onenetwork interface device 710. Thenetwork interface device 710 can include any device or group of devices suitable for establishing a wired or wireless data connection to one ormore data networks 107. Non-limiting examples of thenetwork interface device 710 include an Ethernet network adapter, a modem, and/or the like. Thetransaction server 102 can transmit messages as electronic or optical signals via thenetwork interface device 710. - The
mobile device 108 can include aprocessor 712 that is communicatively coupled to amemory 714 and that executes computer-executable program code and/or accesses information stored in thememory 714. Theprocessor 712 may comprise a microprocessor, an application-specific integrated circuit (“ASIC”), a state machine, or other processing device. Theprocessor 712 can include any of a number of processing devices, including one. Such a processor can include or may be in communication with a computer-readable medium storing instructions that, when executed by theprocessor 712, cause the processor to perform the operations described herein. - The
memory 714 can include any suitable computer-readable medium. The computer-readable medium can include any electronic, optical, magnetic, or other storage device capable of providing a processor with computer-readable instructions or other program code. Non-limiting examples of a computer-readable medium include a magnetic disk, memory chip, ROM, RAM, an ASIC, a configured processor, optical storage, magnetic tape or other magnetic storage, or any other medium from which a computer processor can read instructions. The instructions may include processor-specific instructions generated by a compiler and/or an interpreter from code written in any suitable computer-programming language, including, for example, C, C++, C#, Visual Basic, Java, Python, Perl, JavaScript, and ActionScript. - The
mobile device 108 can also include a bus 716. The bus 716 can communicatively couple one or more components of themobile device 108. - The
mobile device 108 can also include a number of external or internal devices such as input or output devices. For example, themobile device 108 is shown with an input/output (“I/O”)interface 718 that can receive input from one ormore input devices 720 or provide output to one ormore output devices 722. The one ormore input devices 720 and one ormore output devices 722 can be communicatively coupled to the I/O interface 718. The communicative coupling can be implemented via any suitable manner (e.g., a connection via a printed circuit board, connection via a cable, communication via wireless transmissions, etc.). Non-limiting examples ofinput devices 720 include a touch screen (e.g., one or more cameras for imaging a touch area or pressure sensors for detecting pressure changes caused by a touch), a mouse, a keyboard, or any other device that can be used to generate input events in response to physical actions by a user of a computing device. Non-limiting examples ofoutput devices 722 include an LCD screen, an external monitor, a speaker, or any other device that can be used to display or otherwise present outputs generated by a computing device. - The
mobile device 108 can execute program code that configures theprocessor 712 to perform one or more of the operations described above with respect toFIGS. 1-6 . The program code can include one or more of themonitoring module 110 and theclient application 112. The program code may be resident in thememory 714 or any suitable computer-readable medium and may be executed by theprocessor 712 or any other suitable processor. In some embodiments, themonitoring module 110 can be omitted. - The
mobile device 108 can also include at least onenetwork interface device 724. Thenetwork interface device 724 can include any device or group of devices suitable for establishing a wired or wireless data connection to one ormore data networks 107. Non-limiting examples of thenetwork interface device 724 include an Ethernet network adapter, a modem, and/or the like. Themobile device 108 can transmit messages as electronic or optical signals via thenetwork interface device 724. - In some aspects, a computing system or environment can include at least one
mobile device 108. In additional or alternative aspects, a system can be formed by establishing communication between atransaction server 102 and multiplemobile devices 108. - Numerous specific details are set forth herein to provide a thorough understanding of the claimed subject matter. However, those skilled in the art will understand that the claimed subject matter may be practiced without these specific details. In other instances, methods, apparatuses, or systems that would be known by one of ordinary skill have not been described in detail so as not to obscure claimed subject matter.
- Unless specifically stated otherwise, it is appreciated that throughout this specification discussions utilizing terms such as “processing,” “computing,” “calculating,” “determining,” and “identifying” or the like refer to actions or processes of a computing device, such as one or more computers or a similar electronic computing device or devices, that manipulate or transform data represented as physical electronic or magnetic quantities within memories, registers, or other information storage devices, transmission devices, or display devices of the computing platform.
- The system or systems discussed herein are not limited to any particular hardware architecture or configuration. A computing device can include any suitable arrangement of components that provides a result conditioned on one or more inputs. Suitable computing devices include multipurpose microprocessor-based computer systems accessing stored software that programs or configures the computing system from a general purpose computing apparatus to a specialized computing apparatus implementing one or more embodiments of the present subject matter. Any suitable programming, scripting, or other type of language or combinations of languages may be used to implement the teachings contained herein in software to be used in programming or configuring a computing device.
- Embodiments of the methods disclosed herein may be performed in the operation of such computing devices. The order of the blocks presented in the examples above can be varied—for example, blocks can be re-ordered, combined, and/or broken into sub-blocks. Certain blocks or processes can be performed in parallel.
- The use of “adapted to” or “configured to” herein is meant as open and inclusive language that does not foreclose devices adapted to or configured to perform additional tasks or steps. Additionally, the use of “based on” is meant to be open and inclusive, in that a process, step, calculation, or other action “based on” one or more recited conditions or values may, in practice, be based on additional conditions or values beyond those recited. Headings, lists, and numbering included herein are for ease of explanation only and are not meant to be limiting.
- While the present subject matter has been described in detail with respect to specific embodiments thereof, it will be appreciated that those skilled in the art, upon attaining an understanding of the foregoing, may readily produce alterations to, variations of, and equivalents to such embodiments. Accordingly, it should be understood that the present disclosure has been presented for purposes of example rather than limitation, and does not preclude inclusion of such modifications, variations, and/or additions to the present subject matter as would be readily apparent to one of ordinary skill in the art.
Claims (20)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/479,486 US9639888B2 (en) | 2014-09-08 | 2014-09-08 | Providing interactive notifications for completing online transactions |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/479,486 US9639888B2 (en) | 2014-09-08 | 2014-09-08 | Providing interactive notifications for completing online transactions |
Publications (2)
Publication Number | Publication Date |
---|---|
US20160071194A1 true US20160071194A1 (en) | 2016-03-10 |
US9639888B2 US9639888B2 (en) | 2017-05-02 |
Family
ID=55437913
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/479,486 Active 2034-11-25 US9639888B2 (en) | 2014-09-08 | 2014-09-08 | Providing interactive notifications for completing online transactions |
Country Status (1)
Country | Link |
---|---|
US (1) | US9639888B2 (en) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160117726A1 (en) * | 2014-10-28 | 2016-04-28 | Ebay Inc. | Tracking, storing, and analyzing abandonment pattern data to improve marketing tools available on a network-based e-commerce system |
US20180342151A1 (en) * | 2017-05-23 | 2018-11-29 | Lenovo (Singapore) Pte. Ltd. | Method of associating user input with a device |
US20180349953A1 (en) * | 2017-05-30 | 2018-12-06 | Paypal, Inc. | Digital activity abandonment |
US10410017B2 (en) | 2016-09-30 | 2019-09-10 | The Toronto-Dominion Bank | Device lock bypass on selectable alert |
US10659408B2 (en) * | 2016-02-19 | 2020-05-19 | Tencent Technology (Shenzhen) Company Limited | Media information release method, system, and computer storage medium |
US20200286164A1 (en) * | 2019-03-06 | 2020-09-10 | The Toronto-Dominion Bank | Expected transfer monitoring and notification |
US20220076323A1 (en) * | 2020-09-08 | 2022-03-10 | Square, Inc. | E-Commerce Tags in Multimedia Content |
US11798062B2 (en) | 2020-09-08 | 2023-10-24 | Block, Inc. | Customized e-commerce tags in realtime multimedia content |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102157289B1 (en) * | 2013-07-12 | 2020-09-17 | 삼성전자주식회사 | Method for processing data and an electronic device thereof |
US11947978B2 (en) | 2017-02-23 | 2024-04-02 | Ab Initio Technology Llc | Dynamic execution of parameterized applications for the processing of keyed network data streams |
US10831509B2 (en) | 2017-02-23 | 2020-11-10 | Ab Initio Technology Llc | Dynamic execution of parameterized applications for the processing of keyed network data streams |
US11328351B2 (en) * | 2017-09-27 | 2022-05-10 | The Toronto-Dominion Bank | Apparatus and method to securely instruct an order by efficiently invoking a program application on a computing device |
US10803476B2 (en) * | 2017-12-28 | 2020-10-13 | Paypal, Inc. | Monitoring device application usage for completion of checkout data processing |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080133349A1 (en) * | 2006-10-12 | 2008-06-05 | Ali Nazer | Online Abandonment Recovery |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100332337A1 (en) * | 2009-06-25 | 2010-12-30 | Bullock Roddy Mckee | Universal one-click online payment method and system |
US20130036023A1 (en) | 2011-08-04 | 2013-02-07 | 3C Interactive LLC | System And Method For Facilitating A Transaction Between An Enterprise And A Person Using A Mobile Device |
US8826153B2 (en) * | 2011-10-04 | 2014-09-02 | Google Inc. | Speculative actions based on user dwell time over selectable content |
US20130124276A1 (en) * | 2011-11-16 | 2013-05-16 | Marbue Brown | Method for advertising on a smart phone lock screen |
US20130325612A1 (en) | 2012-06-04 | 2013-12-05 | WebLinc LLC | Methods and systems for interfacing e-commerce platforms with brick and mortar presences |
-
2014
- 2014-09-08 US US14/479,486 patent/US9639888B2/en active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20080133349A1 (en) * | 2006-10-12 | 2008-06-05 | Ali Nazer | Online Abandonment Recovery |
Non-Patent Citations (1)
Title |
---|
"Find your lost phone with Android Device Manage," Official Android Blog, Aug 2, 2013, https://android.googleblog.com/2013/08/findyourlostphonewithandroid.html * |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160117726A1 (en) * | 2014-10-28 | 2016-04-28 | Ebay Inc. | Tracking, storing, and analyzing abandonment pattern data to improve marketing tools available on a network-based e-commerce system |
US10659408B2 (en) * | 2016-02-19 | 2020-05-19 | Tencent Technology (Shenzhen) Company Limited | Media information release method, system, and computer storage medium |
US10410017B2 (en) | 2016-09-30 | 2019-09-10 | The Toronto-Dominion Bank | Device lock bypass on selectable alert |
US10936755B2 (en) | 2016-09-30 | 2021-03-02 | The Toronto-Dominion Bank | Device lock bypass on selectable alert |
US20180342151A1 (en) * | 2017-05-23 | 2018-11-29 | Lenovo (Singapore) Pte. Ltd. | Method of associating user input with a device |
US10573171B2 (en) * | 2017-05-23 | 2020-02-25 | Lenovo (Singapore) Pte. Ltd. | Method of associating user input with a device |
US20180349953A1 (en) * | 2017-05-30 | 2018-12-06 | Paypal, Inc. | Digital activity abandonment |
US20200286164A1 (en) * | 2019-03-06 | 2020-09-10 | The Toronto-Dominion Bank | Expected transfer monitoring and notification |
US11869070B2 (en) * | 2019-03-06 | 2024-01-09 | The Toronto-Dominion Bank | Expected transfer monitoring and notification |
US20220076323A1 (en) * | 2020-09-08 | 2022-03-10 | Square, Inc. | E-Commerce Tags in Multimedia Content |
US11798062B2 (en) | 2020-09-08 | 2023-10-24 | Block, Inc. | Customized e-commerce tags in realtime multimedia content |
US11893624B2 (en) * | 2020-09-08 | 2024-02-06 | Block, Inc. | E-commerce tags in multimedia content |
Also Published As
Publication number | Publication date |
---|---|
US9639888B2 (en) | 2017-05-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9639888B2 (en) | Providing interactive notifications for completing online transactions | |
US11778439B2 (en) | Methods, apparatus and system for mobile piggybacking | |
US11282112B2 (en) | Linking a context environment to a context service | |
AU2020417722B2 (en) | Dynamically rendered interface elements during online chat sessions | |
US20120330835A1 (en) | Systems and methods for gesture-based interaction with computer systems | |
US10621655B1 (en) | Systems and methods for SMS e-commerce assistant | |
US9258691B2 (en) | Merchant server programmed for user acquisition within a repeat payment computer system | |
TW201516908A (en) | Method, device and system for verifying payment | |
US11601507B2 (en) | Mobile device transaction authentication application redirection system | |
KR102607791B1 (en) | Method for providing service based on transaction history and an electronic device thereof | |
US20150058221A1 (en) | Text-to-pay for redeemable codes | |
WO2018166097A1 (en) | Payment method, terminal and server | |
US20140235202A1 (en) | Mobile billing operator server programmed for user acquisition within a repeat payment computer system | |
CA2781511A1 (en) | Systems and methods for gesture-based interaction with computer systems | |
CA2781512A1 (en) | Systems and methods for gesture-based interaction with computer systems |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: ADOBE SYSTEMS INCORPORATED, CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:PROULX, JASON;REEL/FRAME:033687/0075 Effective date: 20140908 |
|
FEPP | Fee payment procedure |
Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY |
|
STCF | Information on status: patent grant |
Free format text: PATENTED CASE |
|
AS | Assignment |
Owner name: ADOBE INC., CALIFORNIA Free format text: CHANGE OF NAME;ASSIGNOR:ADOBE SYSTEMS INCORPORATED;REEL/FRAME:048525/0042 Effective date: 20181008 |
|
MAFP | Maintenance fee payment |
Free format text: PAYMENT OF MAINTENANCE FEE, 4TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1551); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY Year of fee payment: 4 |