We are getting prepared to 9/21 change. We were advised that the sandbox already works the same way as the production server will after 9/21. We cannot, however, make it work with our current code.
These are the parameters we are trying to apply to the request. Currently, they are passed successfully to the production server https://secure.authorize.net/gateway/transact.dll (with the appropriate replacement of x_login and x_trankey values):
x_card_num=<test_card_number>&x_exp_date=09/16&x_amount=987.80&x_login=<test_login>&x_password=&x_adc_delim_data=true&x_adc_url=false&x_version=3.0&x_method=CC&x_bank_aba_code=&x_bank_acct_num=&x_bank_acct_type=&X_BANK_NAME=&X_TYPE=AUTH_ONLY&X_TranKey=<test_tran_key>&x_currency_code=USD&x_test_request=true&x_first_name=TESTNAME&x_last_name=TESTLAST&x_address=123 main Str&x_city=SAN DIEGO&x_state=CA&x_zip=92130-0000&x_card_code=123
For testing purposes, we set x_test_request to true.
Parameters x_login and X_TranKey come from my fresh registration at https://developer.authorize.net/sandbox/.
When I submit the request to the sandbox, that is https://test.authorize.net/gateway/transact.dll?x_card_num=, etc., I get the response with the error 103, which means that the transaction key was not accepted. In fact, I can use anything for transaction key and get the same result, error 103.
What could cause the error? What should I change in those parameters?
Thanks
Solved! Go to Solution.
09-17-2015 07:52 PM
Your production account might be using version 3.0 which still use the x_password fields.
the x_tran_key have 2 underscore, your have just 1
Here the doc
09-18-2015 08:14 AM
http://developer.authorize.net/tools/responsereasoncode/
103
Response Reason Text: A valid fingerprint, or transaction key is required for this transaction.
Integration Team Suggestions: This error is generated when your account is in "Password-Required Mode" and you are not sending a valid password, transaction key or hash fingerprint with your transaction request, which is a recommended security measure.
is x_tran_key
not X_TranKey
09-18-2015 04:20 AM
Thnk you for the response. I sure read that article, but do you mean that x_tran_key is now case-sensitive? The current code works successfully for many years by producing the string I showed.
09-18-2015 07:47 AM
Your production account might be using version 3.0 which still use the x_password fields.
the x_tran_key have 2 underscore, your have just 1
Here the doc
09-18-2015 08:14 AM
Thank you for pointing to that underscore discrepancy; adding the underscore did help. The currently working code does not submit the password - only the transaction key in the form x_trankey. Apparently, one underscore used to be acceptable before.
In the meantime, my colleagues found a workaround. They copied the transaction key into x_password field, and that works in both the existing system and the sandbox. Does that seem to be a reliable approach, or I have to stick to yours? I see no password field in the guide you referred to.
Thanks
09-18-2015 01:27 PM
x_password is for the old version, it will eventually not support anymore. x_tran_key will continue until authorize.net change the spec in the future
09-18-2015 01:34 PM