Collapse the table of content
Expand the table of content

Microsoft.Phone.SecureElement Namespace

[ This article is for Windows Phone 8 developers. If you’re developing for Windows 10, see the latest documentation. ]

Provides types and members to interact with the Secure Element on the phone. You can use the members of this namespace to determine whether a Secure Element exists on the phone, register applets on the element, set up a communication channel and transmit commands, known as APDU commands, to the element.

The use of the Secure Element API in an app requires a specific type of SIM card provisioned by a mobile operator on phones that run the app. If you are collaborating with a mobile operator on an app that uses mobile payments, contact the mobile operator for the information necessary to use the Secure Element API.


If you use this API in your app, you must specify the following capabilities in the app manifest. Otherwise, your app might not work correctly or it might exit unexpectedly.


API that requires this capability


Required for all Wallet API, which is anything in Microsoft.Phone.Wallet or Microsoft.Phone.SecureElement.


Required for PaymentInstrument and OnlinePaymentInstrument.


Required for SecureElementSession, SecureElementChannel and SecureElementReader.

For more info, see App capabilities and hardware requirements for Windows Phone 8.

Public classRegisterSecureElementItemEventArgsEvent data passed to the handler of the RegisterSecureElementItemCompleted event.
Public classSecureElementChannelRepresents a Secure Element channel that has been opened in a SecureElementSession to transmit APDU commands to the Secure Element on the phone.
Public classSecureElementItemActionEventArgsAllows a wallet agent to respond to a request to perform an operation on a secure element. This object is passed into the OnSecureElementItemAction method of a wallet agent.
Public classSecureElementPropertiesRepresents the NFC-specific properties of a wallet item.
Public classSecureElementReaderRepresents an object that can interact with the Secure Element on the phone.
Public classSecureElementSessionRepresents a Secure Element sessions that is used to create channels and transmit commands to the Secure Element on the phone.
Public classUserActionEventArgsAllows a wallet agent to query for the secure element event that recently associated the provided item. This object is passed into the OnUserAction method of a wallet agent.

Public interfaceISecureElementItemExposes Secure Element properties.

Public enumerationActivationAuthenticationResultKindDescribes the result of activation authentication.
Public enumerationCardEmulationModeDescribes the user's selection in the wallet settings regarding the ability of the Secure Element to communicate with an external NFC terminal via the wireless NFC radio link.
Public enumerationSecureElementItemActionSpecifies the actions that an agent can perform on a Secure Element item.
Public enumerationSecureElementProperties.AppletStateRepresents the last known state of card’s corresponding applet on the Secure Element.

© 2017 Microsoft