Send an HTTP POST to another server after purchase


(Rimantas Petrauskas) #1

Hi,

it seems to be a simple task to do but I cannot find the right way to do it.
Any help is highly appreciated.

What we need is to set the Infusionsoft post the information to our URL to notify of events related to transactions.
I have been integrating lots of payment providers using this simple “post to HTTP URL” method. Mostly every service calls it differently.

PayPal calls it the Instant Payment Notification service (IPN).
WePay calls it the Instant Payment Notification service (IPN).
ClickBank calls it the Instant Notification Service (INS).
Gate2Shop calls it Direct Merchant Notification (DMN).
Others call it Webhooks.

The closest thing I’ve found in Infusionsoft is this: “Send an http post to another server”.
I was excited as I thought this is what I need, but after making several purchases with different variations I noticed that this does not give much useful information.

It does post to my server’s URL, but the information provided is name, email and billing address. There’s not a single information about the products purchased or form used to make a purchase.
This means the script running on my server gets notification from Infusionsoft about the purchase but it does not receive any information about what purchase that was. So the script does not know which product the client should get access to.

I have also tried similar option in the “Purchase Actions” menu of the “E-Commerce Setup” but got the same result.

I have Googled for hours trying to find a solution and searching and reading Infusionsoft help sections and this forum. I believe I’ve scanned all the available topics that have keywords related to this topic. Did not find anything about the simple purchase notification posted to URL that all payment services have.

Can someone point me in the right direction?

Thank You


(John Borelli) #2

Hi @Rimantas_Petrauskas,

The REST api isn’t complete yet but it does have webhooks setup and provides for order hooks. You might want to take a look at the REST hooks documentation which would allow you to set up a webhook responder.

https://developer.infusionsoft.com/docs/rest/#!/Rest_Hooks/listHooksUsingGET


(Rimantas Petrauskas) #3

Thank you for your suggestion.
As I understand to use this I would need to create an application on Infusionsoft with the authentication, etc, right?


(Bradley Booth) #4

Yes you can register as an Infusionsoft Developer on http://developer.infusionsoft.com. Once you do that and create an OAuth Application under your account you can then user your client_id and client_secret to obtain an access token. This can be done easily in the interactive docs (link below). Once you have that you can register a callback url using the rest hooks.

https://developer.infusionsoft.com/docs/rest/#!/Rest_Hooks/listHooksUsingGET


(John Borelli) #5

So to add to what @bradb has mentioned. In the case of webhooks, you will only need the token long enough to validate the endpoint and then information will be automatically sent to that endpoint regardless, however, if you need to preform actions with the api/REST after receiving information from IS then the token will continue to be necessary and you should probably maintain a process that uses the refresh token to keep an active pair current.