cancel
Showing results for 
Search instead for 
Did you mean: 

Redirect GET vs form POST using SIM

I want to make sure my scenario is supported before choosing your gateway.  We're coming from Google Checkout, and we originally chose it specifically for supporting our programmatic workflow.  Here is our purchase page:

 

http://www.screenconnect.com/Purchase

 

We also have an Upgrade page that is more sophisticated.  It does a lot of verification and generates more line items.

 

Anyway, we gather various user inputs, we generate several line items based on some server side processing, then we send the user to the payment page.

 

We don't want to host the payment page, figure out tax, verify inputs, or anything we don't have to do.  So I think SIM is best.

 

All of your examples require us to render a form with our order data which would require an additional step for the user submission.  I was wondering if it is possible and recommended for us to generate the order data on the server and issue an HTTP 302 redirect to your transact.dll with the form data encoded in the querystring rather than in the HTTP body?

crazyjncsu
Member
9 REPLIES 9

figure out tax,

Authorize.net do not do that, you would have to figure it out and pass it to authorize.net

 

Both AIM and SIM use the same url ???.authorize.net/gateway/transact.dll

So yes, you can send SIM info as a link and run it like AIM. Just make sure you don't pass the transactionKey and use the SIM fields.

RaynorC1emen7
Expert

Passing the data in a querystring is possible. I originally set out to do it that way. It was working fine until one day I started getting errors. Support directed me that they don't support querystrings, You need to do a form post. So I'd stay away from it. It's buggy at best. Plus, all the parameters being passed are visible in the browser of the client.

 

I ended up using a StingBuilder to build the form including all the required HTML with the hidden fields. Then used

_httpContext.Response.Write(builder.ToString()); to send the form to the API.

mbalog99
Member

I am also trying to do a server-side posting of form data. I am using the NameValueCollection and WebClient of C# to make this happen. I seem to be making a connection to secure.authorize.net... but I am getting an error that the merchant login ID or password is invalid. I am passing the correct login ID but am unsure of the password to send. I don't think it should be the transaction key. Can anyone help?

Thanks for reaching out. I originally started out with setting up the form data on the client side using some sample code from authorize.net and it worked just fine. I moved all of the data to the server side and that's when I ran into this error. I checked out your link and there were a couple of fields that I was missing (although they weren't needed on the client side). I added the additional fields and I still get the following error...The merchant login ID or password is invalid...

Ok. so your are doing it in code-behind server side? That AIM

http://www.authorize.net/support/AIM_guide.pdf

 

or look at the AIM sample code

http://developer.authorize.net/downloads/samplecode/

Ok, I used the AIM sample code and only changed the reference to login ID and transaction key to reflect actual values. I keep getting the same error... post_response "3|2|13|The merchant login ID or password is invalid or the account is inactive.||P|0|||19.99||auth_capture||||||||||||||||||||||||||F5FB0412546E713FCEC05FA033DCD235" string

 

This must be something simple but I am missing it...

The sample code point to the test server, are you using a test account?

 

If not change the URL to https://secure.authorize.net/gateway/transact.dll

Excellent point! I was pointing to the wrong server. Once that was fixed, all was well.

 

Thanks for your help!!