Verifone signing error : “Card is not in controlled mode”

You’re trying to use the Verifone FileSignature.exe command line tool to sign your application before deployment on your eVo terminal, and you get this error message :

Specified settings are incorrect. Unable to sign the file(s). Card is not in controlled mode.

This could happen, for example, if you’re using the sign.bat batch in the Verifone VMAC application folder (ex : C:\eVoAps\VMAC\2.1.0\Output\RV\Core\Files).

So, what’s happening ? You are most likely passing the “-nogui” parameter to filesignature.exe, while -nogui is incompatible with eVo application signature. Why ? Because eVo applications signature requires a smart card and manual input of PIN codes, and this part can’t be automated.

What’s the solution then ? You have two options :

  1. instead of using filesignature.exe, use fst.exe with your signature configuration file (*.fst). It will automatically prompt you for your smart card and PIN numbers. In the VMAC signing script, it’s done by passing “S” as a parameter to “sign.bat”. You will still require a human to input his signing card and PIN codes, but your process will be partially automated
  2. or you can cheat and use a keyboard/mouse event script to automate the input of your PIN codes. AutoIt would do the job. You would then be able to automate your whole signature process, but watch out : this would go against Verifone best pratices because your signature card would always be inserted, and one could easily get the corresponding PIN codes from the AutoIt script.

If you got this error in other situations, thanks to let me know !

5 thoughts on “Verifone signing error : “Card is not in controlled mode”

  1. Axel Mammes

    I’m coding on Vx820 now after several going through TXO, Verix and Verix V. I can sign files manually using my smart card but I would like to automate it. Do you happen to have the command line parameters for fst.exe?

    1. Nicolas Riousset Post author

      Hi Axel,
      unfortunately, you won’t be able to automate the signing process, at least not easily.
      The issue comes from the signing card PIN input. Even if you keep your signing card in your reader, you must manually input the PIN to start the signing process. The only way I could think of to automate the PIN input was to use a scripting tool (AutoIt for example). Simulating keyboard input when you are prompted for the PINs should do the job, but I never had the time to try it.


Leave a Reply

Your email address will not be published. Required fields are marked *