I am using SIM, trying to get relay_response to work on a test account with an ASP.NET 2.0 application. It is displaying the response URL page fine, but there is no data displayed... it's as if there was no form data posted to it at all, the same as if you just typed in the URL.
However, when I use https://developer.authorize.net/tools/paramdump/ as the response url I can see the posted data, so I know the problem is probably not with Authorize.net. However, when I post to my response page from a test page, it does recognize and display the posted data, so I know the page is handling the posted data correctly.
This is the test page that DOES work... the response page does display the posted data:
<html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> </head> <body> <form id="form1" runat="server" method='post' action="http://localhost/www.faea.org/FAEAWeb/TransSuccess.aspx"> <input type='hidden' runat="server" name='x_response_code' id='x_response_code' value="1" /> <input type='hidden' runat="server" name='x_response_reason_text' id='x_response_reason_text' value='Test response reason text' /> <input type='hidden' runat="server" name='x_description' id='x_description' value="Test Description" /> <input type='submit' runat="server" id='buttonLabel' /> </div> </form> </body> </html>
But for some reason, whenever Authorize.net posts to my response page after a transaction, the page comes up but with none of the POST data.
I have disabled viewStateMAC in the Page directive. I'm not behind a firewall other than the Windows 7 firewall. I'm running IIS 7 and the application is using ASP.NET 2.0. I'm not getting any error messages anywhere, it's just displaying my response page with all the data fields empty.
Here is my ASP.Net script that is handling the relay response page:
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Response.Expires = 0 '--I've tried with and without the Response.Expires Dim s_x_response_code As String = "" If Not String.IsNullOrEmpty(Request.Form("x_response_code")) Then s_x_response_code = Request.Form("x_response_code") End If Dim n_x_response_reason_code As Integer = 0 If Not String.IsNullOrEmpty(Request.Form("x_response_reason_code")) Then n_x_response_reason_code = CInt(Request.Form("x_response_reason_code")) End If Dim s_x_response_reason_text As String = "" If Not String.IsNullOrEmpty(Request.Form("x_response_reason_text")) Then s_x_response_reason_text = Request.Form("x_response_reason_text") End If Dim s_x_auth_code As String = "" If Not String.IsNullOrEmpty(Request.Form("x_auth_code")) Then s_x_auth_code = Request.Form("x_auth_code") End If Dim s_x_invoice_num As String = "" If Not String.IsNullOrEmpty(Request.Form("x_invoice_num")) Then s_x_invoice_num = Request.Form("x_invoice_num") End If Dim s_x_description As String = "" If Not String.IsNullOrEmpty(Request.Form("x_description")) Then s_x_description = Request.Form("x_description") End If Dim s_x_amount As String = "" If Not String.IsNullOrEmpty(Request.Form("x_amount")) Then s_x_amount = Request.Form("x_amount") End If If s_x_response_code = "1" Then UpdateTransaction(s_x_invoice_num) lblDescription.Text = "TRANSACTION APPROVED!! <BR /> A receipt has been sent to the e-mail address you provided on the previous screen.<br /><br />" & _ s_x_description & "<br />Total Amount: " & s_x_amount & "<br />Approval Code: " & s_x_auth_code Else lblDescription.Text = "YOUR CARD HAS BEEN DECLINED!!!!<BR />" & s_x_response_code & "<br />" & s_x_response_reason_text & "<br /><br />" End If End Sub
In searching these forums, I found that someone was told by Authorize.net support that you can't use ASP.NET with Relay Response, you have to use classic ASP (which I really don't want to do), but others have gotten it to work using EnableViewStateMAC="false" so I do have hope that this is possible and there is just something else that I haven't thought about yet.
Any help would be greatly appreciated!!!!
02-22-2011 11:43 AM
Hi,
Please find the lines of code which am using to send the request
Random random = new Random();
strAuthorizeNet_x_fp_timestamp = ((int)(DateTime.UtcNow - new DateTime(1970, 1, 1)).TotalSeconds).ToString();
strAuthorizeNet_x_fp_sequence = (random.Next(0, 1000)).ToString();
strAuthorizeNet_x_relay_response = "TRUE";
strAuthorizeNet_x_relay_url = ConfigurationManager.AppSettings["RelayURL"];
strAuthorizeNet_x_test_request = "TRUE";
I have not hardcoded any values,and i have only one account.
12-27-2013 10:00 AM
Can you please help me put,since this is the showstopper .No URL are hardcoded from the webpage and i have configured the same URL in merchant account login.
12-27-2013 10:15 AM
debug and see what
strAuthorizeNet_x_relay_url = ConfigurationManager.AppSettings["RelayURL"];
is
12-27-2013 11:28 AM
Hi,
Thanks for the response,as suggested URL is hardcoded.It is working fine now. I am using SIM Mechanism.I have configured the relay URL in the merchant account,is it possible to return the relay URLwit the Querystring.
For ex: https://www.....com/Thanks.aspx?OrderId=9
12-30-2013 08:38 AM
You can try, and if that don't work, you could remove all valid relay url from the account and try it again.
12-30-2013 09:02 AM
But OrderID Will be dynamic,How to configure the URL to accept the dynamic value as the Query string?
12-30-2013 09:16 AM
strAuthorizeNet_x_relay_url = ConfigurationManager.AppSettings["RelayURL"] + "whatever" + yourorderid;
or you can send it as a merchant defined fields
The thing to be careful is make sure it bigger then 4 digit, I think authorize.net will masked it if it think it is a CCV code.
12-30-2013 09:18 AM - edited 12-30-2013 09:22 AM
Not in the code,I need to configure the same in merchant account .
12-30-2013 09:20 AM
If I dont Configure the same in the merchant account of relay URL i am getting the error as relay URL or receipt URL is invalid.
12-30-2013 09:25 AM
I'm not sure what the issue is, I just tried it on my test account and it let me add something like
https://www.whatever.com/Thanks.aspx?OrderId=9
in the merchant account settings
12-30-2013 09:26 AM - edited 12-30-2013 09:26 AM