cancel
Showing results for 
Search instead for 
Did you mean: 

Transaction ID from getHostedPaymentPageRequest?

I just noticed that we don't appear to get a transaction ID back from getHostedPaymentPageRequest, just a transaction token, which I now realize are not the same thing.  Is that correct?

 

What I need is to be able to call getTransactionDetails after the return from the redirect to the Accept Hosted page (once again, we are required to do a full page redirect in order to integrate with our application, rather than an iFrame solution).  I saw another similar thread here that appeared to suggest using a webhook, but that won't work for us since we need to be able to request the transaction details as part of our server's response to the redirect back to our application.

dsandberg
Contributor
10 REPLIES 10

Any luck or progress on this? I am running into the exact same problem. 

 

I am building a website for a movie theater, and I obviously need to verify that the transaction was successfull after the user makes the payment before I reserve their seats and get a pickup number from the ticketing server for them. 

 

Found another thread too which suggests using "Web Hooks". I've https://community.developer.authorize.net/t5/Integration-and-Testing/Verify-an-Accept-Hosted-tr...

 

I've looked into that though, and the problem I have with that is it looks like my site would to wait for a payment event to act on, rather than being able to give the user instant feedback. Doesn't seem like a great solution. I want to make this easy for the user, but I also don't just want to give away free movie tickets or my client might be a little upset. So far as I can tell Authorize.net is not providing an easy way to do that.

dominick
Member

@dominick wrote:

Any luck or progress on this? I am running into the exact same problem. 

 

I am building a website for a movie theater, and I obviously need to verify that the transaction was successfull after the user makes the payment before I reserve their seats and get a pickup number from the ticketing server for them. 

 

Found another thread too which suggests using "Web Hooks". I've https://community.developer.authorize.net/t5/Integration-and-Testing/Verify-an-Accept-Hosted-tr...

 

I've looked into that though, and the problem I have with that is it looks like my site would to wait for a payment event to act on, rather than being able to give the user instant feedback. Doesn't seem like a great solution. I want to make this easy for the user, but I also don't just want to give away free movie tickets or my client might be a little upset. So far as I can tell Authorize.net is not providing an easy way to do that.


It sounds like we are in very similar circumstances.  No, I have not found a solution for using full page redirects other than a webhook, and I agree with it not being a suitable solution for the reason you have outlined.  The way I am currently going about trying to resolve it is by switching to an iframe-hosted solution ... I've also been having some unrelated problems with that, but at least it does return a transaction ID.

It doesn't seem like it would be that hard for Authorize.net to just include an ID in the POST data when the user returns to our sites after the payment is complete. Oh well.

 

The solution I ended up using was the Accept.js library. It does work for me but I was really hoping to have a site that was not reliant on Javascript. But, it doesn't seem like theres a good way to use authorize.net without javascript, unless you want to just give away free stuff, so I guess that's that...

If I’m understanding you correctly you want a process where the customer is redirected to the accept hosted form, enters payment, and when they hit continue on the receipt page the transaction Id is included in the response.

I use the transaction Id in my process as well, and I’ve found that Webhooks are by far a better option. For instance, my app uses the transaction id to clear shopping carts. This can also be done when the customer hits continue, as the cart is tied to a cookie that can be killed. I have that built in too. If I had to pick one or the other I would pick Webhooks hands down. What do you do if a customer does an X out instead of hitting continue? In my case the cart isn’t cleared and the order has no transaction tied to it to indicate successful payment.

The Webhooks come very fast. If the customer prints the receipt before hitting continue, 95% of the time the Webhooks will beat them to your server. I was sending a series of test orders today and finally had 2 that took 3 minutes to arrive. The rest hit in a few seconds.

I think at this point you may have only been considering doing the calls that are on the doc page, all of the http requests. What you want to do is setup an endpoint and enroll in events. If you’re doing an authonly then you enroll in authonly notifications. The transaction id will be delivered in the payload that hits your endpoint. Then you can do whatever it is you need to do with it just the same as you would if it came in the receipt page redirect.
Renaissance
All Star

I'm having the exact same issue.  I have to use the redirect method (iframe and webhook will not work for us) and I can't get the transaction ID.  The vendor I'm working with to build the form system has done this exact same setup (redirect method with transation id) on multiple other payment processing providers, so I think our best option is to switch payment processing providers away from Authorize.net.

 

 

The redirect method and Webhooks are not mutually exclusive alternatives. They are something you use together. I have tested 100s of Webhooks with 0 failures, and unless the customer is a speedreader and/or extremely fast with their mouse, 99% + of Webhooks beat them to the server. In other words, by the time they have reviewed and/or printed their receipt and clicked continue, the Webhook has already came back.

I would highly suggest you give them a try. You can click on my name for numerous posts about these. You can post your progress as you go along with the implementation and people here, including myself can get you up and running. As long as the IHOP up the road from my place, where I’m at now, stays in business your success is guaranteed. This is my new hobby while waiting.

@Renaissance wrote:
The redirect method and Webhooks are not mutually exclusive alternatives. They are something you use together. I have tested 100s of Webhooks with 0 failures, and unless the customer is a speedreader and/or extremely fast with their mouse, 99% + of Webhooks beat them to the server. In other words, by the time they have reviewed and/or printed their receipt and clicked continue, the Webhook has already came back.

 

But we don't use Auth.net receipts.  When the customer clicks on Pay, the postback to our site is immediate and then we have to have the transaction data in order to show them our own receipt.  In this scenario webhooks seem unsuitable.  Not to mention that 99% accuracy on our receipts is not acceptable.

 

We also have a 2nd problem with webhooks in our testing areas because of the rerouting that needs to take place, and the lack of information in the webhook about the URL that was redirected from would require us to build a new system of associated reference IDs to specific source machines, but this only compounds the reasons why we are not using webhooks.

If you are using the redirect method then the post back to your site would have to happen on the auth.net receipt page. This is unavoidable as best I know. I notice in another post that you said you switched to an iframe.

How is it that you use the transaction data? You display your own receipt that will have the transaction Id and what else? Where there’s a will there’s a way, generally, and my hunch is the way isn’t hard in this case.

Assuming you are utilizing the divert strategy, the post back to your site would need to occur on the auth.net receipt page. This is unavoidable as best I know. I notice in another post that you said you changed to an iframe.

How could it be that you utilize the exchange information? You show your own receipt that will have the exchange Id and what else? Nothing is impossible for someone who is truly determined, for the most part, and my hunch is the way isn't hard for this situation.

hixirel730
Member