While trying to test/update our website code for TLS 1.2, I discovered that our production site wasn't working. I get "This transaction cannot be accepted." error, which I see means a transaction key isn't sent or is invalid.
The code and trans key haven't changed for 5+ years and has worked fine. I don't know why or when it stopped.
I generated a new key just to try, and I still get the same error.
Any ideas what else could be going on?
Some code snippets below:
vPostData = x_login=MYLOGIN&x_tran_key=MYKEY&x_method=CC&x_type=AUTH_CAPTURE&x_card_num=4111111111111111&x_exp_date=11/2021&x_amount=19.95&x_first_name=Wes&x_last_name=Test&x_description=Website.com Order&x_delim_char=|&x_delim_data=TRUE&x_relay_response=FALSE&merchant=The Company&x_address=123 Test St. &x_city=Mason&x_state=OH&x_zip=45040&x_country=USA
Const SXH_OPTION_IGNORE_SERVER_SSL_CERT_ERROR_FLAGS = 2
Const SXH_SERVER_CERT_IGNORE_ALL_SERVER_ERRORS = 13056
Set xml = Server.CreateObject("Microsoft.XMLHTTP")
xml.setOption SXH_OPTION_IGNORE_SERVER_SSL_CERT_ERROR_FLAGS, SXH_SERVER_CERT_IGNORE_ALL_SERVER_ERRORS
xml.open "POST", "https://test.authorize.net/gateway/transact.dll", false
strStatus = xml.Status
strRetval = xml.responseText
Set xml = nothing
Response: 3|1|103|This transaction cannot be accepted.
https://test.authorize.net/gateway/transact.dll is ANET sandbox endpoint. can you pls. confirm that using your x_login/x_password credentials related your sandbox account? I am assuming that you are testing aganist sandbox endpoint before switching to prod.
That is the endpoint I'm using. I've tried passing only the login, login and password, and login and transaction key. None of them work. I had this problem years ago, and the only solution was to turn password-required-mode off, but I can't find that option under my account anymore. See thread below.
I have a feeling Authorize.net is forcing password-required mode on, which has never worked for my account, and I don't know why.