A computer-implemented method for writing application data in a secure element namespace of a secure element of a contactless device, using requests from a user-interface software application resident on the contactless device and outside the secure element, the method comprising: assigning, by a control software application in the secure element, one or more data memory blocks (332A-Z) of the secure element namespace to a software application from a software application provider, wherein the one or more data memory blocks (332A-Z) of the secure element namespace are protected from a read access type and a write access type by a plurality of access keys (320A-Z, 324A-Z), the plurality of access keys (320A-Z, 324A-Z) initially defined, by the control software application, in an access memory block of the secure element namespace, and wherein a copy of the plurality of access keys (320A-Z, 324A-Z) is maintained in the control software application; the user-interface software application forming a secure confection channel to a remote trusted service manager computer; transmitting over the secure connection channel, from the user-interface software application to the a remote trusted service manager computer, an encoded request for application data for the software application assigned to the one or more data memory blocks (332A-Z) of the secure element and one of the plurality of access keys (320A-Z, 324A-Z) for a write access type, the application data to be written to the secure element namespace; receiving via the secure connection channel, in a secure memory of the contactless device, from the a remote trusted service manager computer, a response message encrypted using a public key included in the request, the response message comprising the requested application data and the requested one of the plurality of access keys (320A-Z, 324A-Z); in response to the user-interface application determining that the response message is valid, the user-interface application packaging the application data into a command for the control software application; sending the command to the control software application over a locally secure channel; the control software application using a private key, that together with the public key forms a public/private key pair, to decode the command; and writing, by the control software application in the secure element, the requested application data from the secure memory to the one or more data memory blocks of the secure element namespace, wherein the one or more data memory blocks of the secure element namespace are accessed by the control software application using the requested one of the plurality of access keys (320A-Z, 324A-Z). assigning, by a control software application in the secure element, one or more data memory blocks (332A-Z) of the secure element namespace to a software application from a software application provider, wherein the one or more data memory blocks (332A-Z) of the secure element namespace are protected from a read access type and a write access type by a plurality of access keys (320A-Z, 324A-Z), the plurality of access keys (320A-Z, 324A-Z) initially defined, by the control software application, in an access memory block of the secure element namespace, and wherein a copy of the plurality of access keys (320A-Z, 324A-Z) is maintained in the control software application; the user-interface software application forming a secure confection channel to a remote trusted service manager computer; transmitting over the secure connection channel, from the user-interface software application to the a remote trusted service manager computer, an encoded request for application data for the software application assigned to the one or more data memory blocks (332A-Z) of the secure element and one of the plurality of access keys (320A-Z, 324A-Z) for a write access type, the application data to be written to the secure element namespace; receiving via the secure connection channel, in a secure memory of the contactless device, from the a remote trusted service manager computer, a response message encrypted using a public key included in the request, the response message comprising the requested application data and the requested one of the plurality of access keys (320A-Z, 324A-Z); in response to the user-interface application determining that the response message is valid, the user-interface application packaging the application data into a command for the control software application; sending the command to the control software application over a locally secure channel; the control software application using a private key, that together with the public key forms a public/private key pair, to decode the command; and writing, by the control software application in the secure element, the requested application data from the secure memory to the one or more data memory blocks of the secure element namespace, wherein the one or more data memory blocks of the secure element namespace are accessed by the control software application using the requested one of the plurality of access keys (320A-Z, 324A-Z).