The invention is described more fully hereinafter with references to the accompanying drawings, in which exemplary embodiments of the invention are shown.  This invention may, however, be embodied in many different forms and should not be construed as limited to the embodiments set forth herein.  Rather, these exemplary embodiments are provided so that this disclosure is thorough, and will fully convey the scope of the invention to those skilled in the art.  It will be understood that for the purposes of this disclosure, “at least one of each” will be interpreted to mean any combination the enumerated elements following the respective language, including combination of multiples of the enumerated elements.  For example, “at least one of X, Y, and Z” will be construed to mean X only, Y only, Z only, or any combination of two or more items X, Y, and Z (e.g. XYZ, XZ, YZ).  Throughout the drawings and the detailed description, unless otherwise described, the same drawing reference numerals are understood to refer to the same elements, features, and structures.  The relative size and depiction of these elements may be exaggerated for clarity, illustration, and convenience.
FIG. 1 is a system diagram of a mobile wallet system and associated integration, according to an exemplary embodiment of the present invention.
As shown in FIG. 1, an example system utilizing mobile wallet technology may include amobile device 100, mobile wallet management system (WMS) 110, supporting Trusted Service Manager (TSM)system 120, Mobile Network Operator (MNO) 130, and Service Provider (SP) 140.
WMS 110 includes a walletclient management component 111,widget management component 112, deviceprofile management component 113, userprofile management component 114,data management component 115, andrule engine 116.
In particular, walletclient management component 111 is responsible for the wallet application itself (referred as the container), which may house the individual widgets (e.g., applications stored at the application level related to a financial institution, transportation account, and the like).   The walletclient management component 111 may store container specific information, including the type of wallet application and manufacturer.  For example, walletclient management component 111 may recognize a user John has a mobile wallet application manufactured by Google® and has specified set of known functionalities.  By managing the type of wallet application the user has on the mobile device, it may be possible to provide the same wallet application when necessary.
Widget management component 112 on the other hand is responsible for the individual widgets stored within the wallet container.  Widgets may be an application configured to interface with a user of the mobile device.  In an example, widgets may refer to individual payment applications, transportation applications, and other related applications.  DeviceProfile management component 113 houses a memory to store one or more programs, such as applications, and other related information.  DeviceProfile management component 113 may store device specific information, such as information related to the mobile device itself including type of mobile device, supporting operating system (OS), mobile service provider, and other relevant information.  UserProfile management component 114 captures user identifying information such as name, address, birthday, phone number, and the like.Data Management component 115 allows further expansion of data management services offered by a mobile WMS (e.g., transaction history, user preferences, loyalty programs, digital receipts, digital coupons and the like).Rule engine 116 may filter widgets based on information related to the mobile device.  Although various components were illustrated to be included in theWMS 110, the configuration ofWMS 110 is not limited thereto.  The illustrated components may be included within theWMS 110 or external to theWMS 110.
The disclosedWMS 110 may reside withinTSM system 120 or independent of theTSM system 120.  For the purposes of this disclosure, it will be assumed that theWMS 110 is housed within theTSM system 120. Like theTSM system 120,WMS 110 may interact withMNO 130 to transmit and receive billing related information.  Further,WMS 110 may interact withSP 140 to receive and transmit SP payment card information.
TheTSM system 120 may refer to a third party entity positioned to consolidate various information from various service providers including, financial institutions, MNOs, handset manufacturers, and card manufacturers.  AsTSM system 120 may hold various information from various parties, the mobile device may interact with the TSM system individually rather than various discrete entities.  Accordingly, the describedTSM system 120 may act as an integration point for all of the external parties the mobile device may deal with, providing for a seamless and more efficient operation of mobile services.
A method for installing a mobile wallet application and associated management applet in a secure element (SE) is described below in reference to FIG. 2.  FIG. 2 is a system diagram illustrating a system and method for installing a mobile wallet application on the mobile device and correlating wallet management applet in the SE of the mobile device in accordance with an exemplary embodiment of the present invention.
As shown in FIG. 2, instep 201, themobile device 100 requests a newmobile wallet application 24.  In an alternative flow, aSP 140 may request installation of themobile wallet application 24 from theTSM system 120.  When requesting installation ofmobile wallet application 24 from theTSM system 120, theTSM system 120 may wait for themobile device 100 to connect to theTSM system 120 before installing themobile wallet application 24.  TheTSM system 120 may install themobile wallet application 24 directly upon connection to themobile device 100 or wait until the user approves the request to install themobile wallet application 24.  If installation is executed, a corresponding widget representing a virtual card, such as a virtual credit card, may be provisioned to reside within the respectivemobile wallet application 24.  In an example, the widget representing the virtual card may reside within themobile wallet application 24.
Once request is made, instep 202, theTSM system 120 receives the mobile wallet application installation request and corresponding identification information and checks for duplicate records existing in theTSM system 120.  If it is determined that the requesting customer is a new customer, a new record is created within theTSM system 120.  If the customer information already exists,TSM system 120 may verify the existing customer and update the customer’s information, if applicable.
After a customer account has been created or updated, if it is determined that themobile wallet application 24 is not installed on themobile device 100, theTSM system 120 will confirm the mobile wallet application installation request and initiate the wallet application installation process.  The installation process may be initiated by transmitting a Wireless Application Protocol (WAP) message with an embedded Uniform Resource Locator (URL) to the Short Message Service (SMS) platform instep 203, which relays the message to themobile device 100 instep 204.    However, themobile wallet application 24 may be obtained in various other ways as well and is not limited to the WAP message method as described above.  Themobile wallet application 24 may be downloaded directly to the requestingmobile device 100, sent to the user in a physical medium storing the application, or by other suitable methods for providing software applications.
The user, upon receipt of the installation message from the SMS platform, may initiate the actual installation process by sending a request to theTSM system 120 instep 205.
In response,TSM system 120 transmits the requestedmobile wallet application 24 tomobile device 100 for installation and an accompanying over-the-air (OTA) proxy program to allow OTA provisioning instep 206. Althoughmobile wallet application 24 and OTA proxy are shown as being part ofmobile device 100, an ordinarily skilled artisan understands that these elements may not be present onmobile device 100 until they are installed.
Once themobile wallet application 24 and accompanying OTA proxy program have been downloaded, themobile wallet application 24 may be launched by the requesting user instep 207.  Alternatively, themobile wallet application 24 may be launched automatically once it is downloaded.  Also, in the event OTA proxy is already downloaded or installed, themobile wallet application 24 may be downloaded independently of the OTA proxy. Although not illustrated, the accompanying OTA proxy may be included in themobile wallet application 24.
Instep 208, the OTA proxy captures the mobile device information (e.g. International Mobile Equipment Identity (IMEI)/Mobile Equipment Identifier (MEID), Mobile Subscriber Integrated Services Digital Network Number (MSISDN)), including SE information (e.g. Card Production Life Cycle (CPLC), Card Serial Number (CSN), Card Image Number (CIN), Integrated Circuit Card Identification (ICCID)), which may be stored in a device memory component of themobile device 100.  The OTA proxy may be a separate component from themobile wallet application 24, or may be included in themobile wallet application 24.
Afterwards, instep 209, the OTA proxy sends the captured SE and mobile device information to theTSM system 120, which may house a WMS 110 (as shown in Fig. 2) or be in communication with an external WMS 110 (as shown in Fig. 1).
TheWMS 110, upon receipt of the information provided by the OTA proxy, creates a Mobile identification (ID) for the installedmobile wallet application 24 in step 210.  Once the mobile ID has been created, theWMS 110requests TSM system 120 to provision a corresponding wallet management applet (WMA) 21 with the following information via OTA proxy: CPLC or CSN, CIN, Mobile ID and WMA personalization data.  In an example,WMA 21 may include both aWMA 21 container and one ormore WMA 21 applets.WMA 21 container may manage the information stored in theWMA 21 applets.WMA 21 container may be installed in themobile device 100 whenWMA 21 applet is requested to be installed, or when the mobile wallet application is installed, or separately without regard to either theWMA 21 applet or the mobile wallet application.
TheWMA 21 container is a software application that may reside within the SE of themobile device 100 to manage account information related to the contactless card applet 23 (i.e.WMA 21 applet) that may be typically inaccessible by the user.  In an example, the SE may store one or more contactless card applets that may be used through amobile device 100 with NFC capability, but the contactless card applets may largely be inaccessible by the user.  More specifically, during a financial transaction, the NFC enabled mobile device may transmit contactless card information, which may include account specific information to a POS device to complete the transaction.  However, even during this transaction, the user is typically limited to the selection of a generic logo corresponding to the contactless card applet being used in the transaction, but no account specific information may accessed by the user of themobile device 100.  In an example, account specific information may include credit card number, expiration date, security code (e.g., a combination of numbers typically found on back of credit cards), personal identification number (PIN) (e.g., a combination of numbers typically used to conduct financial transactions with the user’s financial institution), and other related information.
To provide the user of the mobile device with the account specific information related to contactless card applets, separate account information associated with the corresponding contactless card applet 23 (e.g. credit card number, expiration date, security code, PIN, etc.) may be provisioned into the SE asWMA 21 applets.  The respective account information orWMA 21 applet may be provided by duplicating the account information associated with the contactless card when the TSM system receives contactless card applets from SPs to provision into themobile device 100.  Alternatively, SP providing the contactless card applet may provide the account related information separately to the TSM system for provisioning.
Instep 211,TSM system 120 sends a wake up message to the mobile push server (e.g. Cloud to Device Messaging (C2DM)) with a mobile device identifier to wake up OTA proxy residing in the requestingmobile device 100.
The mobile push server routes the received message to themobile wallet application 24, which in turn sends the request to OTA proxy and wakes OTA proxy instep 212.
Instep 213, the OTA proxy gathers mobile device and SE specific information such as MSISDN and CIN and sends it over toTSM system 120.  In an example, OTA proxy gathers mobile device and SE specific information to send toTSM system 120 every time it is woken up.  Alternatively, this step may be skipped and the mobile device and SE information provided instep 209 to register themobile device 100 and the wallet application may be used.
OnceTSM system 120 receives the information sent by OTA Proxy instep 213,TSM system 120 processes the information and converts the identifying information along with the request to provisionWMA 21 container into Application Protocol Data Unit (APDU) commands in step 214 and sends them over to OTA proxy instep 215.
Next, instep 216, OTA proxy receives the APDU commands to installWMA 21 container and relays them to the SE, which processes the APDU commands to install the requestedWMA 21 container and its associated credentials.  SE then responds back with the result of each command request instep 217.    AlthoughWMA 21 container,PPSE 22, andContactless Card Applet 23 are shown as being part ofmobile device 100, an ordinarily skilled artisan understands that these elements may not be present on the SE of themobile device 100 until they are installed.
Subsequently, OTA Proxy relays the result back to theTSM system 120 instep 218, and theTSM system 120 updates its system with the result.
Once themobile wallet application 24 has been successfully installed in themobile device 100, the user may provisionSP 140 specificcontactless card applets 23, and its corresponding widget applications andWMA 21 applet ontomobile device 100.
FIG. 3 is a system diagram illustrating a method for installing a mobile widget into themobile wallet application 24 and its corresponding contactless card applet and account information into the SE of the requesting mobile device in accordance with an exemplary embodiment of the present invention.
Instep 301, the user logs into themobile wallet application 24 to start themobile wallet application 24 for use.  Once started, themobile wallet application 24 connects to theTSM system 120, which may houseWMS 110, for synchronization instep 302.  A more detailed description of how this synchronization process operates is provided below with reference to FIG. 5.
TSM system 120 checks for any updated information made by external parties (e.g.SP 140, user by web access,TSM system 120 administrator, and/or etc.) and sends the list of waiting updates to themobile wallet application 24 instep 303.  Further, additional applications that user may be interested in may be displayed for download through dynamic filtering. The applicable applications based on user attributes will be displayed through this filtering process.  A more detailed description of how this dynamic filtering works is provided below with reference to FIG. 4.
The mobile device user is prompted to decide whether to update themobile wallet application 24 with the changes made at theTSM system 120, if any, instep 304.  Alternatively, the mobile device may update themobile wallet application 24 automatically with the respective changes instep 304.
When themobile device 100 updates themobile wallet application 24 or downloads a new application, a request is made to theTSM system 120/WMS 110 to provision the updates and/or selected card applications instep 305.  If a request to update requires updating of account specific information, such as change in account number or expiration date, the process to update the application will follow the same steps regardless of the information being updated.
Further, if a request to provision the selectedcontactless card applet 23 is made, such as a “VISA®” contactless card applet, a corresponding widget andWMA 21 applet may be programmed to be provisioned automatically.  The corresponding widget may reside in themobile wallet application 24, at the application level, to provide an interface to the user.  The correspondingWMA 21 applet, which may include account specific information of the contactless card apple (e.g. credit card number, expiration date, security code, PIN, etc.), may be provisioned into the SE.  By installing both theWMA 21 applet and the widget, the user may view and manage the information stored in theWMA 21 applet through the corresponding widget.
TSM system 120 processes the provisioning request and sends a wake up message request to the mobile push server instep 306, and the push server proceeds to relay the request themobile wallet application 24, which in turn sends the message to OTA proxy, thereby waking OTA proxy instep 307.
Instep 308, OTA proxy wakes up and gathers mobile device and SE specific information, such as MSISDN and CIN, and sends the collected information toTSM system 120.
OnceTSM system 120 receives the information sent by OTA Proxy,TSM system 120 processes the received information along with the provisioning command and converts both the received information along with the provisioning command  into APDU commands to send to OTA proxy instep 309.  When sending the APDU commands, the contactless card applet and the correspondingWMA 21 applet are sent to OTA proxy for provisioning into the SE.  However, since the widget is provisioned at the application level and not into the SE, the widget may be provisioned through the OTA proxy or through a wireless network.
Next, instep 310, OTA proxy receives the APDU commands from theTSM system 120 to install requested issuercontactless applets 23 and correlatingWMA 21 applet to be provisioned.  In an example,contactless applets 23 and correlatingWMA 21 applet are provided in different domains of the same SE.  In response, SE processes the APDU commands for both the contactless applet and theWMA 21 applet and sends back the result of each command request instep 311.  As APDU commands may be processed one at a time, multiple communications may be passed back and forth between the OTA proxy and the SE.
Subsequently, OTA Proxy relays the result back to theTSM system 120 instep 312, and theTSM system 120 updates its system with the result of the request instep 313.  Once information is updated, notification of the results is sent toSP 140 instep 314.  Similarly, themobile wallet application 24 notifiesTSM system 120 of the result of the widget installation. For example, themobile wallet application 24 will notify theTSM system 120 whether the widget installation was a success or a failure.
Once account specific information is installed intoWMA 21 container asWMA 21 applet, the respectivemobile device 100 may access the information periodically for required updates.  For example, themobile device 100 may access the information stored in theWMA 21 applet using themobile wallet application 24 to check for the expiration dates of thecontactless card applets 23 stored within themobile device 100 and prompt user for updates as necessary.  Alternatively, themobile wallet application 24 may check for updates automatically.  In addition, the user may also gain access to the account number, security code, and corresponding expiration date as necessary to make purchases online for further utility.  In an example, the information stored in theWMA 21 applet may allow themobile device 100 to check the expiration date of thecontactless card applet 23 and request update when the card applet expires.
WMA 21 container may, however, limit amount of change requests to theWMA 21 applet as they contain account specific information.  For example, the number of times expiration date may be changed with a reference time period may be limited, or changes to the credit card numbers may be prohibited.  In addition,WMA 21 container may  prevent user from making changes directly in theWMA 21 applet but allow request for modification to theTSM system 120, which in turn will make the request to the relevant external parties.  While the described process illustrates a preferred embodiment of the present invention, the amount of modification allowed by theWMA 21 container is not limited to what has been described.  In some instances,WMA 21 container may allow direct modification to the account specific information as dictated by business needs.
FIG. 4 is a system diagram illustrating a method for dynamically filtering a list of mobile widget applications that are available for installation based upon corresponding mobile device attributes in accordance with an exemplary embodiment of the present invention.
Instep 401, the user logs into themobile wallet application 24, which seeks to connect with theTSM system 120/WMS 110.
TheTSM system 120 receives the connection request through a mobile gateway residing within theTSM system 120 and relays the request to a Rule Engine inTSM system 120 instep 402.  TheTSM system 120 queries the user account in its system instep 403 for equipment information, MNO, SP accounts, and any other relevant information.  Based on themobile device 100 attributes, a filtered list of downloadable applications from theTSM system 120 may be displayed to the mobile device.  In an example,mobile device 100 attributes may include, without limitation, the mobile network provider of the mobile device 100 (e.g. “Sprint®,” “Verizon®”, “AT&T®”, etc.), financial institutions associated with the contactless card applets stored (e.g. “Wachovia®,” “Bank of America®,” “Chase®”, etc.),mobile device 100 manufacturer (e.g. “HTC®”, “Motorola®”, “Apple®”, etc.), andmobile device 100 hardware specifications (i.e. hardware, software, operating system, etc.).
Here,TSM system 120 may house a large list of available applications, includingcontactless card applets 23, as illustrated in FIG. 4.TSM system 120 may house various applications without regard to the device capabilities, SPs’ relationship with other SPs, or other limitations that may be inherent in the business or technical environments.  However, as an individual user connects with theTSM system 120 to download new applications,TSM system 120 may dynamically filter the list of available applications based upon the mobile device attributes described above.
As many mobile devices operate with various operating systems and standards, not all of the applets provided by the SP may be compatible with the user mobile device or user’s MNO.  Because of lack of standardization of hardware and software on mobile devices, an efficient method to filter only the relevant applets is helpful.  Along with these technical limitations, many MNOs and SPs may decide not to provide their services to each other for business reasons.  As the general public may not be familiar with such knowledge, an additional filtering mechanism may be provided to provide only the applicable applets to the requesting user.   In an example, all of the provided limitations may be managed and applied by the Rule Engine in theTSM system 120.  The Rule Engine may be housed in theTSM system 120 or may exist as an external entity, which interacts withTSM system 120 through a network.  Further, the Rule Engine may be a combination of software and hardware, software to apply and manage the rules and hardware to store the relevant rules.  Accordingly, by providing an active dynamic filtering mechanism at theTSM system 120 level, all of the parties involved in such transaction need to make only a general request to theTSM system 120 to access and to provide customer specific services.
Once the list of applicable applets have been dynamically filtered,TSM system 120 sends the list of applets to display to the mobile gateway instep 404, which relays it back to themobile wallet application 24 instep 405.
In FIG. 5, a system diagram is provided for synchronizing the mobile wallet application residing within the mobile device with the TSM system in accordance with an exemplary embodiment of the present invention.  As with many electronic devices that may be prone to damage and wear, or often misplaced, a centralized management or storage may be beneficial to maintain a master file of the user wallet configuration.
Instep 501, multiple external parties, such as credit card service providers as illustrated in FIG. 5, may send a request for changes to be made to the user’s mobile wallet configuration directly to theTSM system 120/WMS 110, which may store the master configuration of the respectivemobile wallet application 24. In addition,TSM system 120 administrators and the user themselves may access theTSM system 120 via web access or any other remote access functionality.  As themobile wallet application 24 may not always be on, a central repository allows external parties to make the necessary requests without regard to user’smobile wallet application 24’s operating status.  For example,SPs 140 may request an additionalcontactless card applet 23 to be provisioned to the user’s SE on their own time without regard to themobile wallet application 24’s operating status.  Similarly,TSM system 120 itself may recognize that the expiration date of the respective application is coming up and prompt the user to update the card for provisioning when themobile wallet application 24 connects to the system.
Whileonly TSM system 120 administrator,SP 140, and the user were displayed, the requesting party may be any external party to theTSM system 120.
Subsequently, instep 502, when the user logs into themobile wallet application 24, themobile wallet application 24 checks with theTSM system 120/WMS 110 for any modifications to the wallet configuration since the last login by the user.  As themobile wallet application 24 synchronizes every time the application is logged into, the user can be sure that the user has access to the most current information during use.  In addition, by limiting synchronization events to access ofmobile wallet application 24, secure access to sensitive information is provided only when the user is utilizing themobile wallet application 24.  However, if desired,mobile wallet application 24 may always be in sync by automatically whenever mobile device is on and has mobile signal.
Any updates made in theWMS 110 whilemobile wallet application 24 was offline will be prompted for the user to make the updates instep 503.  User may update one application at a time or all at once if such is desired.  Also, the user may set the application to automatically update every change made in theTSM system 120/WMS 110 at synchronization.
Instep 504, whilemobile wallet application 24 is still active, any modifications that are made in themobile wallet application 24 itself will be updated in theWMS 110 instep 505 as synchronization is a continuous one during usage.  For example, if the user changes a user preference on themobile wallet application 24, changes to the user preference may be updated into theWMS 110 in real time.  Similarly, if themobile device 110 prompts the user to update the expiration date of the contactless applet and the user agrees, user’s request will be submitted toTSM system 120, which will process the request and route it toSP 140 for processing.
It will be apparent to those skilled in the art that various modifications and variation can be made in the present invention without departing from the spirit or scope of the invention.  Thus, it is intended that the present invention cover the modifications and variations of this invention provided they come within the scope of the appended claims and their equivalents.