I have developed an Accept Hosted with an iframe implementation using a sandbox account that I created for dev purposes.
Now it is time to start using our company's actual account that is currently working in the wild as a SIM implementation.
In the new implementation, when I request a token, I have to assign a AuthorizeNet.Environment object (Either SANDBOX or PRODUCTION)
ApiOperationBase<ANetApiRequest, ANetApiResponse>.RunEnvironment = _oAuthorizeEnvironment;
If I examine that object, I see paths that are slightly different than what is used for the old SIM method.
Old SIM method: https://secure.authorize.net/gateway/transact.dll and https://test.authorize.net/gateway/transact.dll
New API method SANDBOX: _baseUrl = "https://test.authorize.net" and _xmlBaseUrl = "https://apitest.authorize.net"
New APi method PRODUCTION: _baseUrl = "https://secure2.authorize.net" and _xmlBaseUrl = "https://api2.authorize.net"
The question ultimately is, what do I need to do now to get my new Accept Hosted (iframe) implemenation to switch over to my current company account?
Currently, if I pass my old credentials (from SIM), it fails. code = "E00007" "User authentication failed due to invalid authentication values."
much thanks in advance!
08-02-2018 10:42 AM - edited 08-02-2018 10:54 AM
Hi @david_c
The getHostedPaymentPageRequest request used in AcceptHosted uses API_LOGIN_ID & the TRANSACTION_KEY as authentication mechanism.
And for SIM you must have been using Login_ID (which is the same API_LOGIN_ID) and Signature_Key which is different compared to TRANSACTION_KEY.
If you use this Signature key instead of Transaction key in the request for AcceptHosted (Production Environment), you will received error E00007, as the credentials would be invalid.
Thus generate a Transaction Key for your account if you don't have it,
for that login into the Merchant Account Interface and then go to
Account > Settings > Security Settings > General Security Settings > API Credential & Keys
and generate a Transaction Key and use that with the AcceptHosted request.
Hope this Helps!
08-02-2018 01:01 PM - edited 08-02-2018 01:02 PM
Thank you for the quick reply and information!
Very much appreciated.
So, it seems that I may be improperly using the Signature_Key (from the old SIM method) when what I really need is the Transaction_Key associated with this account.
Can I assume that if I use the correct key with the original SIM API_Login_ID, that I can work with both the PRODUCTION and SANDBOX Environments in the API?
Or will I need to configure something else to test and run real transactions?
Thanks again!
08-02-2018 02:11 PM