Hi there,
I understand that you mentioned the other keys are 100% correct, but it is best to assume they are not if the gateway response indicates otherwise. I would suggest not comparing them with another site, but to refer straight back to the actual Authorize.Net account they were originally sourced from. In any case, the plugin will only relay errors from the gateway, it does not determine the validity of the keys by itself.
It is possible to configure the site without the Public Client Key. However, it might not fix the issue for you if the it was already correct. Also putting in the Public Client Key ensures that your site tokenizes all card data using Accept.js, which makes it a lot more secure than passing plain card details in the API request. You can remove the key temporarily as part of the debugging process.
The plugin uses API Login ID and Public Client Key for front end tokenization and it uses API Login ID and Transaction Key for the Payments API.
With all that said, this is what I would do. First I would keep Public Client Key entered in the settings and try to process the transaction. If the error appears without the page refreshing, then one of API Login ID or Public Client Key are incorrect. You can skip to the next paragraph. If the page refreshes before you see the error, the Transaction Key would be incorrect. Since the tokenization was successful, the API Login ID and Public Client Key are valid.
You can now remove the Public Client Key and repeat the process. If the transaction was successful then the API Login ID and Transaction Key are valid, but the Public Client Key is invalid, since the tokenization failed earlier. If the transaction still returns the error, it is possible that only the API Login ID is incorrect, but the other two keys are correct. The reverse, although less likely, could be true too, it is possible only the API Login ID is correct, but the other two keys are incorrect. I know the chances of this are very remote, but all the keys could be incorrect too.
As mentioned earlier, it is best to look into the Authorize.Net account itself. If you double checked that you have already a valid API Login ID and Public Client Key, the tokenization will be successful and the page will refresh before the error appears. In that case, the best course of action is to generate a new Transaction Key, since Authorize.Net will not let you simply view the current one, and if you end up doing that, the old one will not work anymore so please remember to update it on all sites you used the old one on. Please use the link below for instructions on obtaining/locating the keys from the Authorize.Net dashboard:
https://support.authorize.net/knowledgebase/Knowledgearticle/?code=000001271
Please let me know if that does not help.