I also had this same problem when using the application.
In order to receive the appropriate error code from the command line, use "start/wait" to run the application.
For example, using the command you posted "start/wait UsbdmFlashProgrammer.exe -requiredBdm=USBDM-JS16-SWD_SER-0001 -target=s12z FCA_WL_SBMD_A_02_01.sx -device=MC9S12ZVL32 -erase=mass -program -verify -secure"
The reason running the application on the command line without "start/wait" does not work as expected is that the application is inherently a GUI application, therefore when run from the command line, the console does not wait for the application's process to complete execution.
On a side note, the "-program" command option also includes verify, therefore you don't need to include a "-verify" in the command. You can use "-verify" without "-program" if you specifically want to verify only.