I'm trying to integrate DPM with grails rather than JSP/GSP. Rather than have the relay response url go to a jsp I am sending it to a URL that points to a grails controller (i.e. servlet if your not familiar with grails) . The controller is never called by authorize. I've also tried calling the gsp directly just to see if authorize had an issue with a URL with no extension. But the gsp was never called either.
Pretty much what I get is the script time out error that seems so prevalent with authorize.net. From what I've seen authorize waits 10 seconds for a response before throwing the timout. But when I send my transaction the timeout is almost imediate.
The relay response URL is valid and can be reached. Here is the form data that I am sending. Everything seems to be there. I don't know what else to do here. Any thoughts would be appreciated.
<form action="https://test.authorize.net/gateway/transact.dll" method="post" name="secure_redirect_form" id="secure_redirect_form_id" > <input type="hidden" name="x_card_num" value="411111111111111" id="x_card_num" /> <input type="hidden" name="x_exp_date" value="0312" id="x_exp_date" /> <input type="hidden" name="x_amount" value="$24.94" id="x_amount" /> <input type="hidden" name="x_invoice_num" value="20111209152105999" id="x_invoice_num" /> <input type="hidden" name="x_relay_url" value="http://test.mysite.com/authorizeNet/paymentConfirmed" id="x_relay_url" /> <input type="hidden" name="x_login" value="API LOGIN" id="x_login" /> <input type="hidden" name="x_fp_sequence" value="9387264918285" id="x_fp_sequence" /> <input type="hidden" name="x_fp_timestamp" value="1323465666" id="x_fp_timestamp" /> <input type="hidden" name="x_fp_hash" value="0bffbba6335b7f7760774fb308b7bcd5" id="x_fp_hash" /> <input type="hidden" name="x_version" value="3.1" id="x_version" /> <input type="hidden" name="x_method" value="CC" id="x_method" /> <input type="hidden" name="x_type" value="AUTH_CAPTURE" id="x_type" /> <input type="hidden" name="x_test_request" value="false" id="x_test_request" /> <input type='image' name='submit' src='../images/confirmPayment.png' border='0' align='top' alt='Check out with Credit Card'/>
</form>
12-09-2011 01:56 PM
How do you know it's a timeout? Are you getting a blank screen of death, an error code, what? What URL does it end up at?
12-09-2011 03:27 PM
Here is the text from the email that I get:
Your script timed out while we were trying to post transaction results to it.
Transaction ID: 0
Transaction Result: This transaction cannot be accepted.
The following message was displayed to the customer:
------------------------------An error occurred while trying to report this transaction to the merchant. An e-mail has been sent to the merchant informing them of the error. The following is the result of the attempt to charge your credit card.
This transaction cannot be accepted.
I get the customer message at this URL:
12-12-2011 07:06 AM
Sounds like Authorize.net is having problems connecting to your relay page. This could be because it's being blocked, or it could be that your DNS is set up at a high refresh rate and Authorize.net is taking more than x seconds to retrieve the location of your domain. Have you tried this several times in close succession?
12-12-2011 07:29 AM
Yeah I tried it five or six times over and over to see if it would find it. Im wondering since the relay URL is forwarding to SSL and since it is a test server that does not have a certificate that matches the test url right now if that could be an issue. Do you know if authorize will have issues with that?
12-12-2011 08:53 AM
Yeah I don't think it's the SSL thing. I gat the same result on my production site that has a good cert. Maybe I'll check into the DNS issue that you talked about.
12-12-2011 10:27 AM
Try reading the posts here:
12-12-2011 02:10 PM
I just went ahead and integrated AIM instead. Maybe someday I'll come back and look at DPM some more.
12-13-2011 07:15 AM