cancel
Showing results for 
Search instead for 
Did you mean: 

SIM Relay Response URL invoked even when transaction declined

Greetings,

 

We're having an annoying problem with the relay_response SIM option.  We're using the Hosted payment form, and we only want Authorize.Net to return to us upon SUCCESSFUL transaction.  If a card transaction fails, we want it to just re-display the payment form for a retry.

 

To that end, we have set:

  x_relay_response = true

  x_relay_always = false

 

Successful transactions are working fine.  Declined transactions, however, are behaving erratically.  If it's a "hard failure" like a bad credit card number, the payment form will re-display as expected with a useful error message for the user.

 

However, if it's a "soft" failure like an AVS decline, the transaction is being sent to the relay_response url, with x_response_code = 2 (Declined).

 

This behavior seems to be counter to the documentation, and is also a pain to deal with since we have to catch this error, display a message, and just re-direct the user back to the Payment form on our own.  Is this expected, and is there any way around this so that the payment form ONLY returns on a successful transaction??

 

 

 

darlox
Member
1 ACCEPTED SOLUTION

Accepted Solutions

http://community.developer.authorize.net/t5/Integration-and-Testing/What-does-x-relay-always-do/m-p/...

 

Everything the catch by authorize.net, it stay on the page but if it was a response from the processor, it going to the relay response page.

View solution in original post

RaynorC1emen7
Expert
2 REPLIES 2

http://community.developer.authorize.net/t5/Integration-and-Testing/What-does-x-relay-always-do/m-p/...

 

Everything the catch by authorize.net, it stay on the page but if it was a response from the processor, it going to the relay response page.

RaynorC1emen7
Expert

Thanks for the reply and pointer.   I sifted through a dozen such posts without finding that explicit answer.

 

Seems fairly non-intuitive to me as well.  Essentially, making a typo in the credit card number would be caught, but a typo in expiration or CVV numbers would not be.  This is particularly annoying given that the only reason we're implementing SIM in this way to begin with, is because of the XSS bug in Authorize.Net that prevents proper styling of receipt pages in IE!  Oh, the tangled web bugs weave...