User-configurable activation of card applets

Card applets associated with an electronic wallet are activated and deactivated based on user-defined rules. Based on the rules and a device state, a card emulation state and card applet states are modified to enable or disable completion of transactions. The transactions are between a computing device and a reader such as a point-of-sale terminal. In some embodiments, a user designates a plurality of the card applets as fast cards capable of completing a transaction via near-field communication (NFC) interaction without user input at a time of the transaction.

BACKGROUND

Short-range wireless communication protocols enable a computing device to communicate with readers proximate to the computing device. For example, radio frequency identification (RFID), BLUETOOTH brand communications, Wi-Fi, and near-field communication (NFC) technology enable a user to perform actions with the computing device such as completing a financial transaction, gaining access to a building, and gaining entry to a transit system. Existing systems have an electronic wallet that stores a plurality of cards. In some of the existing systems, however, the user is limited to manually selecting and activating one of the cards to complete a transaction. In some of the existing systems where each of the cards remains activated at all times, the reader, rather than the user, chooses among the activated cards to complete a transaction.

SUMMARY

Embodiments of the disclosure selectively activate card applets on a computing device for completing point-of-sale transactions. A device state for a computing device is determined. The computing device has an electronic wallet having a plurality of card applets stored therein. Each of the card applets has a card applet state. A card emulation state is adjusted based on the determined device state. A plurality of user-defined rules for each of the plurality of card applets is accessed. The card applet states are adjusted based on the adjusted card emulation state and the accessed plurality of user-defined rules to enable or disable point-of-sale transactions via the plurality of card applets.

DETAILED DESCRIPTION

Referring to the figures, embodiments of the disclosure selectively enable or disable card applets208based at least on user-defined rules214that operate, in some embodiments, responsive to user actions. A card emulation state212and card applet states210associated with the card applets208are adjusted or modified based on device state and the user-defined rules214. In some embodiments, a user202chooses which card applets208in an electronic wallet207are to be activated manually to complete a transaction (e.g., manually-activated cards), and which card applets208remain active to complete a transaction without user202input at a time of the transaction (e.g., fast cards). For each of the fast cards, the user202may further configure the availability, conditions, or criteria for activating the fast card, as well as enabling card emulation. The manually-activated cards may also be referred to as “slow cards” or “one-time-use cards.” In some embodiments, the manually-activated cards are used to complete only one transaction after being activated. To use one of the manually-activated cards again, the user202re-activates the manually-activated card.

While some embodiments are described herein with reference to interactions via near-field communication (NFC), aspects of the disclosure are operable with any wireless communication protocol including, for example, the BLUETOOTH brand wireless communications protocol. Further, while some embodiments are described herein with reference to interactions between a computing device102and a point-of-sale terminal, aspects of the disclosure are operable with interactions between the computing device102and any reader224, or other computing device. Still further, while some embodiments are described herein with reference to point-of-sale transactions between the computing device102and the reader224, such as those relating to the acquisition of goods and/or services, aspects of the disclosure are operable with any transactions. For example, the transactions may include transactions not associated with goods and/or services, such as providing user202identification, location information, contact information, and the like.

Referring next toFIG. 1, an exemplary block diagram illustrates an architecture for installing card applets208on a secure element114in the computing device102. The computing device102illustrated inFIG. 1includes one or more applications104, a wallet core106(e.g., logic for implementing the electronic wallet207), an NFC platform108for implementing NFC interactions, and an underlying operating system (OS) platform112. The computing device102also includes the secure element114, chip, or other hardware component on the computing device102for storing, among other items, one or more card applets208. The secure element114is accessible to the OS platform112and to one or more of the readers224that are in proximity of the computing device102. The secure element114may be stored in various places on the computing device102, such as on a motherboard or a universal integrated circuit card (UICC) (e.g., or other removable storage card). The secure element114cryptographically protects the information stored thereon (e.g., the card applets208).

The applications104on the computing device102communicate with application services116. Communication between the computing device102and the application services116(or other services or devices) may occur via one or more networks using any protocol or mechanism over any wired or wireless connection. Each of the application services116communicates with a service provider trusted service manager (TSM)118. The service provider TSM118communicates with a primary device TSM120. The primary device TSM120communicates state and/or status with a mobile network operator (MNO) plug-in110or other component that is associated with the NFC platform108on the computing device102. The MNO plug-in110communicates with the secure element114to install card applets208received from the primary device TSM120. For example, the card applets208are installed via over-the-air (OTA) installation.

Referring next toFIG. 2, an exemplary block diagram illustrates the computing device102storing a plurality of the card applets208. In the example ofFIG. 2, the computing device102represents a system for selectively activating one or more card applets208on the computing device102for completing any quantity of point-of-sale transactions with one or more of the readers224(e.g., point-of-sale terminals). The computing device102represents any device executing instructions (e.g., as application programs, operating system functionality, or both) to implement the operations and functionality associated with the computing device102. The computing device102may include a mobile computing device or any other portable device. In some embodiments, the mobile computing device includes a mobile telephone, laptop, tablet, computing pad, netbook, gaming device, and/or portable media player. The computing device102may also include less portable devices such as desktop personal computers, kiosks, and tabletop devices. Additionally, the computing device102may represent a group of processing units or other computing devices.

In some embodiments, the computing device102has at least one processor204, at least one memory area206, and at least one user interface (not shown). The processor204includes any quantity of processing units, and is programmed to execute computer-executable instructions for implementing aspects of the disclosure. The instructions may be performed by the processor204or by multiple processors executing within the computing device102, or performed by a processor external to the computing device102. In some embodiments, the processor204is programmed to execute instructions such as those illustrated in the figures (e.g.,FIG. 3).

In some embodiments, the processor204represents an implementation of analog techniques to perform the operations described herein. For example, the operations may be performed by an analog computing device and/or a digital computing device.

The computing device102further has one or more computer readable media such as the memory area206. The memory area206includes any quantity of media associated with or accessible by the computing device102. The memory area206may be internal to the computing device102(as shown inFIG. 2), external to the computing device102(not shown), or both (not shown). In some embodiments, the memory area206includes read-only memory and/or memory wired into an analog computing device.

The memory area206stores, among other data, one or more applications104. The applications104, when executed by the processor204, operate to perform functionality on the computing device102. Exemplary applications104include mail application programs, web browsers, calendar application programs, address book application programs, messaging programs, media applications, location-based services, search programs, and the like. The applications104may communicate with counterpart applications or services (e.g., application services116) such as web services accessible via a network. For example, the applications104may represent downloaded client-side applications that correspond to server-side services (e.g., application services116) executing in a cloud.

The memory area206further stores the electronic wallet207having a plurality of card applets208stored therein, such as card applet #1 through card applet #N. Each of the card applets208is associated with an electronic wallet item or card. For example, the card applets208may correspond to payment applets (e.g., credit or debit), access applets (e.g., for gaining access to a building or other area), loyalty applets, transit applets, coupon applets, and gift card applets.

Each of the plurality of card applets208has one of the card applet states210associated therewith, such as card applet state #1 through card applet state #N. In some embodiments, each card applet208maintains its corresponding card applet state210. The card applet states210may be read into the OS via an application programming interface (API) or may be published to the OS by the card applets208. For example, another applet in the secure element114may centralize the card applet states210and respond to queries via the API or publish the card applet states210. In some embodiments, each card applet state210stores data indicating whether the corresponding card applet208is active or inactive (e.g., available or unavailable to the reader224, respectively) and installed or uninstalled.

The memory area206also stores the card emulation state212. The card emulation state212affects the availability of the electronic wallet207for completing transactions. For example, the card emulation state212may enable or disable NFC interactions between the computing device102and the reader224, thus acting as a global setting that can enable or disable point of sale transactions without changing any of the card applet states210.

While the electronic wallet207, card applets208, card applet states210, and card emulation state212are shown as being logically stored in memory area206, some of this data may be physically stored elsewhere on the computing device102in some embodiments. For example, the secure element114(e.g., a module that is outside the memory area206) may store the card applets208while the memory area206stores the card applet states210in the electronic wallet207. In such embodiments, the electronic wallet207may store metadata describing the card applets208, such as a representation of the card applets208as well as a link from each of the card applet states210in the electronic wallet207to the corresponding card applets208physically stored in the secure element114.

Further, in some embodiments, the card emulation state212may be physically stored in an NFC driver and/or hardware outside, or separate from, the memory area206.

The user202interacts with the computing device102, as described below, to define, provide, or make accessible one or more of the rules214. For example, the user202may draft the rules214or may select or choose among pre-defined, suggested, or recommended rules. The user-defined rules214are stored in the memory area206, and affect the availability of the electronic wallet207and the card applets208therein. For example, the user-defined rules214may separate the card applets208into categories, such as fast cards and slow cards (e.g., manually-activated cards). Card applets208designated as fast cards are capable of completing transactions without explicit or manual selection, use, authorization, and/or confirmation input by the user202. In some embodiments, card applets208designated as fast cards are available to the readers224without explicit or manual selection by the user202, but the readers224may still attempt to challenge (e.g., authenticate) the user202by, for example, asking for a personal identification number (PIN). Further, fast cards may remain active after completing a transaction, or may be deactivated after completing the transaction (e.g., depending on the user-defined rules214).

In contrast, card applets208designated as manually-activated cards are capable of completing transactions only with explicit or manual selection, use, authorization, and/or confirmation input by the user202.

The rules214may also identify other criteria for enabling or disabling the card applets208. For example, the rules214may identify a location for the computing device102at which the card applet208is enabled. The rules214may also identify a time of day or durations during which the card applet208is enabled. For example, the user202may associate a duration with one of the card applets208designated as a fast card such that the fast card deactivates after expiration of the duration.

The memory area206further stores one or more computer-executable components. Exemplary components include an interface component216, a context component218, a driver component220, and a transaction preparation component222. Operation of these components, when executed, is described below with reference toFIG. 3.

In some embodiments, the user interface includes a display (e.g., a touch screen display) and/or computer-executable instructions (e.g., a driver) for operating the display. The user interface may also include one or more of the following to provide data to the user202or receive data from the user202: speakers, a sound card, a camera, a microphone, a vibration motor, one or more accelerometers, a BLUETOOTH brand communication module, global positioning system (GPS) hardware, and a photoreceptive light sensor. For example, the user202may input commands or manipulate data by moving the computing device102in a particular way.

Referring next toFIG. 3, an exemplary flow chart illustrates operation of the computing device102to enable or disable one or more of the card applets208based on the card applet states210and the card emulation state212. While the operations illustrated inFIG. 3are described as being executed by the computing device102, aspects of the disclosure are operable with other entities executing one or more of the operations. For example, one or more of the operations may be executed by a server remote from the computing device102yet in communication with the computing device102.

At302, the computing device102determines a device state. Determining the device state includes, but is not limited to, determining a hardware state and/or a software state. Determining the hardware state includes determining, for example, whether a display of the computing device102is on or off, and whether the computing device102is powered on or off. Determining the software state includes determining a current execution context. The execution context, for example, describes one or more of the applications104currently being executed by the computing device102. As another example, the execution context also identifies one or more of the following: whether the electronic wallet207is open or closed, whether the electronic wallet207is in a foreground of the user interface in the computing device102or in the background, and whether the computing device102is locked or unlocked. In some embodiments, the electronic wallet207and/or the card applets208may be locked and/or unlocked with a PIN or other security measure.

At304, the computing device102adjusts or modifies the card emulation state212based on the determined device state. For example, the computing device102may adjust the card emulation state212to be active or inactive. If the card emulation state212is set to active, then one or more of the card applets208may be available for transactions, depending on the corresponding card applet states210. If the card emulation state212is set to inactive, then none of the card applets208is available for transactions, regardless of the corresponding card applet states210. For example, modifying the card emulation state212includes enabling or disabling NFC interaction between the computing device102and the reader224.

In some embodiments, the computing device102accesses a plurality of the user-defined rules214. For each of the plurality of card applets208, the user-defined rules214represent settings or configurations defining the conditions under which the card applets208are available or unavailable for transactions. For example, the user-defined rules214may designate one or more of the card applets208as fast cards, as described above, that are capable of completing point-of-sale transactions without explicit user202input.

The card emulation state212may also be adjusted based on the user-defined rules214. For example, if the user-defined rules214specify that none of the card applets208should be available when the computing device102is powered off, the computing device102adjusts the card emulation state212to “inactive” when the computing device102powers off, thus disabling each of the card applets208(e.g., preventing the card applets208from completing transactions while the computing device102is powered off).

At306, the computing device102adjusts or modifies the card applet states210based on the adjusted card emulation state212and the user-defined rules214to enable or disable point-of-sale transactions via the plurality of card applets208. For example, one of the card applet states210may be set to inactive or otherwise disabled, thus making the corresponding card applet208unavailable for transactions. In another example, one of the card applet states210may be set to active or otherwise enabled, thus making the corresponding card applet208available for transactions.

In general, the card emulation state212and/or the card applet states210are used to control the availability of the card applets208. In some embodiments, the card emulation state212is adjusted to control when card applets208designated as fast cards are available, while the card applet states210are used to designate which of the card applets208are fast cards. Other embodiments, however, lack the card emulation state212. In such embodiments, the card applet states210are used both to control when the card applets208are available and to designate which of the card applets208are fast cards.

In embodiments in which the user-defined rules214identify some card applets208as fast cards and other card applets208as manually-activated cards, the computing device102may adjust the card applet states210to enable the fast cards when the electronic wallet207is open. Alternatively or in addition, the computing device102may adjust the card applet states210to enable the fast cards when a display of the computing device102is on. As another example, the computing device102may adjust the card applet states210to disable the fast cards when the computing device102is locked. In still another example, the computing device102may adjust the card applet states210to keep the fast cards enabled even when the computing device102is powered off. In such an example, the fast cards obtain power to complete transactions via the mechanism involved in the communication between the secure element114and the reader224. For example, during an NFC interaction, power is derived from an electromagnetic field provided by the reader224.

Adjusting the card applet states210produces a set of one or more of the card applets208that are available for transactions. If a point-of-sale terminal or other reader224is detected at308, the computing device102presents, or otherwise makes available, the available set of card applets208(e.g., enabled) at310for completing the transaction. Selection of one of the available card applets208may occur according to any selection process, as known in the art.

While examples of the user-defined rules214have been described herein, aspects of the disclosure are operable with any rules that affect the availability of the card applets208for completing transactions.

In some embodiments, the computer-executable components illustrated inFIG. 2execute to perform one or more of the operations illustrated inFIG. 3. For example, the interface component216, when executed by at least one processor204of the computing device102, causes the processor204to present to the user202the electronic wallet207in a user interface element and to receive, from the user202via the user interface element, one or more of the user-defined rules214. The user-defined rules214correspond to the electronic wallet207and/or the plurality of card applets208displayed in the electronic wallet207.

The context component218, when executed by at least one processor204of the computing device102, causes the processor204to determine a device state for the computing device102. The driver component220, when executed by at least one processor204of the computing device102, causes the processor204to adjust the card emulation state212based on the device state determined by the context component218. The transaction preparation component222, when executed by at least one processor204of the computing device102, causes the processor204to adjust the card applet states210based on the card emulation state212adjusted by the driver component220and the one or more user-defined rules214received by the interface component216to enable or disable point-of-sale transactions via the plurality of card applets208.

Referring next toFIG. 4, an exemplary diagram illustrates a user interface element402for configuring settings associated with the electronic wallet207. While the user interface element402illustrated inFIG. 4shows a set of exemplary configurations on a mobile telephone, aspects of the disclosure are operable with any quantity or type of settings or configurations on any mobile device. In the example ofFIG. 4, the user202has provided a password for entry to make purchases via an online marketplace. The user202has also enabled NFC transactions.

The user interface element402further illustrates a set of configuration options for selection by the user202. In this example, the configuration options relate to enabling the user-selected set of fast cards (1) only when the electronic wallet207is open, (2) when the mobile telephone is unlocked, (3) anytime the screen or display of the mobile telephone is on, or (4) even when the mobile telephone is powered down or off. If the user202selects option (1), the mobile telephone turns on card emulation (e.g., adjust the card emulation state212to allow any card applet208with a corresponding card applet state210of “active” to complete a transaction) when the user202opens the electronic wallet207. The mobile telephone turns off card emulation (e.g., adjusts the card emulation state212to disable each of the card applets208, regardless of the corresponding card applet states210) as soon as the user202closes the electronic wallet207or switches to another user interface element.

If the user202selects option (2), the mobile telephone turns on card emulation when the user202unlocks the mobile telephone and turns off card emulation when the user202locks the mobile telephone. If the user202selects option (3), the mobile telephone turns on card emulation when the user202turns on the display, even if the mobile telephone is locked. The mobile telephone turns off card emulation when the user202turns off the display. If the user202selects option (4), the mobile telephone keeps card emulation on even when the mobile telephone is turned off. In this option, card emulation may remain on even if a battery is removed from the mobile telephone (e.g., depending on whether hardware associated with the mobile telephone uses any power from the battery).

In the example ofFIG. 4, the user202has selected option (1), thus enabling the selected set of fast cards only when the electronic wallet207is open (e.g., the electronic wallet207is in the foreground of the display of the mobile telephone).

Additional user-defined rules214(not shown) may indicate whether the mobile telephone prompts for a password to open the electronic wallet207or unlock the mobile telephone.

Referring next toFIG. 5, an exemplary diagram illustrates a user interface element502displaying a set of fast cards selected and configured by the user202. In some embodiments, the user interface element502represents the electronic wallet207. In this example, the user202has selected four card applets to be “fast cards,” or otherwise activated the four card applets as described above. The fast cards are shown on the left side of the user interface element502, while a list of the available cards is shown on the right side of the user interface element502. The available cards include both fast cards (e.g., active) and manually-activated cards (e.g., inactive). The user202may designate one or more of the available cards as fast cards by, for example, selecting a menu item or dragging the card to the set of fast cards.

Referring next toFIG. 6A, an exemplary diagram illustrates a user interface element602for selecting a manually-activated card for a transaction. In the example ofFIG. 6A, the user202opens the electronic wallet207and reviews the set of card applets (e.g., by sliding through each of the card applets). The mobile telephone prompts the user202to select the currently presented card applet to complete a transaction. The user interface element602provides information relating to the presented card applet, such as a company name, available credit, and a link or other reference to execute an application (e.g., one of the applications104) associated with the card applet.

Referring next toFIG. 6B, an exemplary diagram illustrates a user interface element604for completing a transaction using a selected manually-activated card. Continuing the example fromFIG. 6A, the user202has selected or tapped on the presented card applet. The mobile telephone adjusts the card applet state210for the selected card applet to “active.” The user interface element604inFIG. 6Bthen prompts the user202to complete the transaction. The user202taps on the display to complete the transaction using the selected, activated card applet. Because the card applet is a manually-activated card, the mobile telephone adjusts the card applet state210of the selected card applet to disable or deactivate the card applet after the transaction completes.

Further, after the transaction completes, the mobile telephone may operate to reactivate one or more of the fast cards that were deactivated to enable use of the manually-activated card. For example, in environments where only one payment card may be active at any given time, in response to the user202activating one of the manually-activated cards, the mobile telephone deactivates any other active payment cards that have been designated as fast cards. After the transaction with the manually-activated card completes, the mobile telephone re-activates the fast card(s) that were de-activated.

Additional Examples

In some embodiments, the user-defined rules214specify locations for enabling one or more of the card applets208designated as fast cards. Such embodiments provide the user202with the capability to specify one card applet208(e.g., corresponding to a business credit card) as one of the fast cards available only while the user202is near a location designated as a workplace. Similarly, the user202may specific a different card applet208(e.g., corresponding to a personal credit card) as one of the fast cards available in locations other than the designated workplace location.

The user-defined rules214may also specify times during which one or more of the card applets208designated as fast cards are available. For example, the user202may specify that one card applet208(e.g., corresponding to a business credit card) as one of the fast cards available only during business hours. The user202may specify a different card applet208(e.g., corresponding to a personal credit card) as one of the fast cards available during times other than business hours.

In some embodiments, the card emulation state212and/or one or more of the card applet states210may be adjusted by the user202pressing one or more physical elements of the computing device102. For example, the computing device102may include one or more buttons (e.g., virtual or physical) that the user202pushes to activate or deactivate one or more of the card applets208. The user202may toggle the card emulation state212and/or one or more of the card applet states210in this manner, or the user202may push and hold the buttons to adjust the states. Further, some embodiments contemplate the computing device102including security elements such as a fingerprint reader to authenticate the user202before adjusting the card emulation state212and/or the card applet states210.

At least a portion of the functionality of the various elements inFIG. 1andFIG. 2may be performed by other elements inFIG. 1orFIG. 2, or an entity (e.g., processor, web service, server, application program, computing device, etc.) not shown inFIG. 1orFIG. 2.

While no personally identifiable information is tracked by aspects of the disclosure, embodiments have been described with reference to data monitored and/or collected from users202. In such embodiments, notice is provided to the users202of the collection of the data (e.g., via a dialog box or preference setting) and users202are given the opportunity to give or deny consent for the monitoring and/or collection. The consent may take the form of opt-in consent or opt-out consent.

Exemplary Operating Environment

Exemplary computer readable media include flash memory drives, digital versatile discs (DVDs), compact discs (CDs), floppy disks, and tape cassettes. By way of example and not limitation, computer readable media comprise computer storage media and communication media. Computer storage media include volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data. Computer storage media are tangible, exclude propagated data signals, and are mutually exclusive to communication media. In some embodiments, computer storage media are implemented in hardware. Exemplary computer storage media include hard disks, flash drives, and other solid-state memory. In contrast, communication media typically embody computer readable instructions, data structures, program modules, or other data in a modulated data signal such as a carrier wave or other transport mechanism and include any information delivery media.

Examples of well-known computing systems, environments, and/or configurations that may be suitable for use with aspects of the invention include, but are not limited to, mobile computing devices, personal computers, server computers, hand-held or laptop devices, multiprocessor systems, gaming consoles, microprocessor-based systems, set top boxes, programmable consumer electronics, mobile telephones, network PCs, minicomputers, mainframe computers, distributed computing environments that include any of the above systems or devices, and the like. Such systems or devices may accept input from the user202in any way, including from input devices such as a keyboard or pointing device, via gesture input, and/or via voice input.

Embodiments of the invention may be described in the general context of computer-executable instructions, such as program modules, executed by one or more computers or other devices. The computer-executable instructions may be organized into one or more computer-executable components or modules. Generally, program modules include, but are not limited to, routines, programs, objects, components, and data structures that perform particular tasks or implement particular abstract data types. Aspects of the invention may be implemented with any number and organization of such components or modules. For example, aspects of the invention are not limited to the specific computer-executable instructions or the specific components or modules illustrated in the figures and described herein. Other embodiments of the invention may include different computer-executable instructions or components having more or less functionality than illustrated and described herein.

Aspects of the invention transform a general-purpose computer into a special-purpose computing device when configured to execute the instructions described herein.

The embodiments illustrated and described herein as well as embodiments not specifically described herein but within the scope of aspects of the invention constitute exemplary means for selectively activating one or more of the plurality of card applets208on the mobile computing device for completing point-of-sale transactions.