A method of binding a magnetic stripe transporter (MST) to a user account set-up on a server , comprising: determining, by an application on a mobile communication device , that the MST is connected to the mobile communication device, the MST to be used in conjunction with the application to emit magnetic pulses corresponding to magnetic stripe card data; sending, by the application after determining that the MST is connected and the MST has not been bound to a user account, a query for binding information to the MST; generating, by the MST , a random number R MST ; sending, by the MST to the application, a response to the query, the response comprising the random number R MST and a unique identifier of the MST ID MST ; sending, by the application, a binding request to the server , the binding request including account information in the form of a username and password associated with the user account , and comprising the random number R MST and the unique identifier of the MST; receiving, by the application, a binding token from the server in response to the binding request, the binding token signed using a key corresponding to the MST, and comprising a personal identification number (PIN) and the random number R MST , the PIN being a secret associated with the user account that was shared between the server and a user during set-up; sending the binding token to the MST ; verifying, by the MST , that the binding token was signed using the key corresponding to the MST and that the random number R MST in the binding token matches the random number R MST in the response to the query; and installing the PIN in the MST after verifying the binding token , thereby binding the MST to the user account wherein the PIN is used to authenticate the user before allowing the user to operate the MST . determining, by an application on a mobile communication device , that the MST is connected to the mobile communication device, the MST to be used in conjunction with the application to emit magnetic pulses corresponding to magnetic stripe card data; sending, by the application after determining that the MST is connected and the MST has not been bound to a user account, a query for binding information to the MST; generating, by the MST , a random number R MST ; sending, by the MST to the application, a response to the query, the response comprising the random number R MST and a unique identifier of the MST ID MST ; sending, by the application, a binding request to the server , the binding request including account information in the form of a username and password associated with the user account , and comprising the random number R MST and the unique identifier of the MST; receiving, by the application, a binding token from the server in response to the binding request, the binding token signed using a key corresponding to the MST, and comprising a personal identification number (PIN) and the random number R MST , the PIN being a secret associated with the user account that was shared between the server and a user during set-up; sending the binding token to the MST ; verifying, by the MST , that the binding token was signed using the key corresponding to the MST and that the random number R MST in the binding token matches the random number R MST in the response to the query; and installing the PIN in the MST after verifying the binding token , thereby binding the MST to the user account wherein the PIN is used to authenticate the user before allowing the user to operate the MST . <EOS>