Reply
Member
Posts: 7
Registered: ‎01-09-2014

Re: Triggering Specific Transaction Responses

Hi Richard,

 

The transaction id is 0

 

Posts: 2,057
Topics: 47
Kudos: 136
Blog Posts: 62
Registered: ‎12-05-2011

Re: Triggering Specific Transaction Responses

If you get a transaction ID of zero, it means either 1) your sandbox is set to test mode, or 2) test mode is set to true in the request.  When testing in the sandbox, it should be set to live mode and you should NOT set test mode to true.  This may be something controlled by the module you are using.

 

When test mode is true, the gateway will only validate that the credentials are correct and return success.  However, it does not actually attempt a transaction and nothing is stored at the gateway, hence the transaction id of zero.

 

Richard

--------

Webhooks are now available for Authorize.Net

Using SOAP, see our deprecation notice.
Check out Accept.js, our Javascript replacement for DPM.
Pro Tip: Never use test mode in the sandbox, instead use the Testing Guide.
Member
Posts: 7
Registered: ‎01-09-2014

Re: Triggering Specific Transaction Responses

Hi Richard,

 

Upon setting the sandbox account to test or live mode the transactions still go through as approved. Also if I set the Chronoforms component to live mode, it give me an error about invalid login and trans key upon submitting the webform page. If I set the mode back to test, the webform can be submitted and is approved whether the Authorize Sandbox is in test or live mode. 

 

Upon looking at the source of the Chronoforms component, setting the mode to test or live only switches reference to a different url. I'm assuming for authentication.

 

Test mode uses this url: https://test.authorize.net/gateway/transact.dll

Live mode uses this url: https://secure.authorize.net/gateway/transact.dll

 

Any suggestions?

Posts: 2,057
Topics: 47
Kudos: 136
Blog Posts: 62
Registered: ‎12-05-2011

Re: Triggering Specific Transaction Responses

@rjrsinc

 

I suggest confirming that your sandbox is running in live mode.  The next option is to examine the actual request being sent to the gateway from chronoforms to determine if it's setting test mode as true in the request.

 

Richard

--------

Webhooks are now available for Authorize.Net

Using SOAP, see our deprecation notice.
Check out Accept.js, our Javascript replacement for DPM.
Pro Tip: Never use test mode in the sandbox, instead use the Testing Guide.
Member
Posts: 7
Registered: ‎01-09-2014

Re: Triggering Specific Transaction Responses

[ Edited ]

Richard,

 

I have the sandbox running in live mode and also regenerated the Transaction key with the account in Live Mode. However still when I try to test with the 46282 zipcode to get declined transactions it still goes through as approved.

 

In the ChronoForms component if I change the setting to Live from Test mode I still get the error "

  • The merchant login ID or password is invalid or the account is inactive.

". If I set it back to Test mode in ChronoForms it goes through as approved.

 

It seems that the setting in Authorize.net sandbox has no affect. What is interesting about the Sandbox is I noticed that the receipt email's coming from authorize sandbox says TEST MODE in the email whether I set the Sandbox account to Test or Live. Also when the mode is set to Test in the Chronoforms component it adds this to the end of the request "x_test_request=TRUE&" 

 

Any suggestions?

Posts: 2,057
Topics: 47
Kudos: 136
Blog Posts: 62
Registered: ‎12-05-2011

Re: Triggering Specific Transaction Responses

@rjrsinc

 

That last addition by Chronoforms is the culprit.  They are correctly pointing to the sandbox endpoint, but they are incorrectly adding x_test_request=TRUE which is forcing the gateway to respond as though it was in test mode.

 

If they remove test request it will test properly.

 

Ric ha

--------

Webhooks are now available for Authorize.Net

Using SOAP, see our deprecation notice.
Check out Accept.js, our Javascript replacement for DPM.
Pro Tip: Never use test mode in the sandbox, instead use the Testing Guide.
Member
Posts: 7
Registered: ‎01-09-2014

Re: Triggering Specific Transaction Responses

Richard,

 

Thank you! You must be right. I went ahead and modified the code to not append that on "x_test_request=TRUE" the url and BANG! I'm able to test declined transactions with the 46282 as the zipcode. So my working setup is Authorize.net Sandbox account in Live Mode with Transaction key generated after set to Live mode. ChronoForms set to Test mode. It is now working as expected and I'm seeing the transactions in the Sandbox account.

 

One more question however, do you know how to test a Held response?

 

Posts: 2,057
Topics: 47
Kudos: 136
Blog Posts: 62
Registered: ‎12-05-2011

Re: Triggering Specific Transaction Responses

If you want to simulate a HELD response, you must first go into the Sandbox Merchant interface and set an amount filter in the advanced fraud detection options.  Set the amount filter to "Do not Auth but HOLD for review" and submit a transaction over the amount.

 

 

Richard

--------

Webhooks are now available for Authorize.Net

Using SOAP, see our deprecation notice.
Check out Accept.js, our Javascript replacement for DPM.
Pro Tip: Never use test mode in the sandbox, instead use the Testing Guide.
Member
Posts: 7
Registered: ‎01-09-2014

Re: Triggering Specific Transaction Responses

[ Edited ]

Richard,

 

Thanks for the directions. Let me clarify how I found it by going to Tools  > Fraud Detection Suite > Transaction Filters - Amount Filter. I created one and set it to Do not Authorize and Hold for Review. Now I'm able to test HELD Response successfully. Thanks for your help!

 

 

Member
Posts: 5
Registered: ‎07-10-2015

Re: Use Testing Guide for Specific Transaction Responses

Hi Richard,

 

Is there a way to generate response code 3 errors? Specifically, the "try again in 5 minutes" error would be very helpful.

 

I see I can generate response code 3 in the legacy section, but changing the price of products changes the tests and sort of defeats the purpose.

 

Would really like the errors to be generated based on user input if possible.

 

Thanks!

Jim