You are here:
< Back

Overview

When using the SignaPay Credit Card Processing interface within PCSynergy’s Cashmate application, you get an error message with Script Error when loading the Authorize Credit Card window. Root cause: Embedded browser downloaded an incorrect file and it is now cached internally to the application. Solution: In the Options->Register Settings->Credit Card section of the Postalmate configuration, check the “Use Chromium” option.

Details

Randomly or after updates, the Postalmate Cashmate system generates a Script Error and pops up the message about 6-10 times each time a credit card is being attempted to authorize.

One of the Script Error messages

For the first 4-5 errors, the same “Line: 1, Char: 1, Error: Invalid character” is present but for a different URL in the message. When we have been able to debug this error with Internet Explorer, we found a file that just contains spaces or other empty characters. We believe the file downloaded an invalid or incomplete file and is causing the file to be stored in cache of the application.

Current Solution

To force Postalmate to re-download the script files from the BFC server, we must find the location of the cached files. We will use a Microsoft tool called “Handle“. This tool lists every file opened within the computer. We will be able to use this file to find the location of the cached data within Cashmate. Once you have this program downloaded, go back to a transaction within Cashmate and start a credit card payment. It will generate the error message. Once it does, please start an Administrator PowerShell prompt (press the Start button and type “power”, right click on the Windows PowerShell icon and select “Run as Administrator”), navigate to the location of the “Handle” program (cd c:\Users\{user}\Downloads\Handle{x}\ and execute the following command:

PS C:\Users\{User}\Downloads\ProcessExplorer> .\handle64.exe >cashmate.lst

If this command takes more than 5 seconds to run, you are not executing as an administrator and it is running very slow. Please re-open the Command Prompt and run it as an administrator. The file generated is output as UTF-16 and is not easily read with the standard system notepad tool. Instead, open a browser and navigate to https://vscode.dev and drag this file into the browser window. Next, search the file for “cashmate.”

Online tool VSCode with search on “Cashmate”

Scroll down until you find the line with “Authform2” in the name:

Finding the location of the Cashmate browser cache

Now we know the path to the cached files. Using Windows Explorer, copy and paste the path (the value without the Authform in the name) – C:\Users\raymond.mimick\AppData\Local\Microsoft\Windows\INetCache\IE\2K1JMBFF\ in this example.

Now, cancel out the payment window in Cashmate. Delete the files from this folder (you may even need to delete all the folders under the “IE” directory as each are supposed to be the cached files stored on the computer. Once you have removed the files, re-open the payment screen and verify the system loads the page without issue.

Temporary Solution

The current solution for this error is to use the “Use Chromium” option from the Credit Card configuration screen. From within Cashmate, cancel any pending sale and click on the Tools menu. From the Options pull out, select the Register Settings

Register Settings/Credit Card Settings

From the Credit Card tab, check the “Use Chromium” option

Chromium Browser Option

This changes the internal browser the Cashmate application will use from an Internet Explorer embedded browser to a Chromium-(ie, Google) based browser, which does not have these files cached internally at this moment. If you have the Chromium browser enabled, uncheck the option. Restart Cashmate after the change has been made.

Please note: The first use of the credit card payment screen using the Chromium browser may display only a grey background. It appears the first loading of the Chromium browser takes a little extra time than the non-Chromium browser. Cancelling the payment page and reloading the page will load faster and show the screen.

Additional Debugging ideas can be found here: https://bfc-usa.com/knowledge-base/applet-debug-steps/