2009-02-12

ASP.NET Development server and PayPal instant payment notification

I am currently developing part of a website where I pass cart information to PayPal to accept payment. PayPal will call back a "secret URL" on my website to allow me to confirm the cart details haven't been tampered with.

I hate installing software I don't need. This is especially the case with software like IIS which just feels so intrusive, which is why I use the ASP.NET Development Server when creating websites. The problem with this server is that it only accepts connections from the local machine. My computer is behind a hardware firewall and my web server wont accept remote connections, so how can I test my PayPal IPN call back?

Simple. Obviously I have to open a port on my firewall and direct it to my machine. So I opened port 80. Then I used this tool to list on port 80 and redirect all traffic to port 10101 (the port my ASP.NET development server was listening on). The result is that a remote computer can now make a HTTP request to my computer, and I can receive it + debug it in Visual Studio without having to install IIS.

The great thing about this port forwarder is that it is only 44KB in size and doesn't require any installation!

3 comments:

Anonymous said...

guest00:

Pete, thanks a lot for this simple solution!

chillfire said...

I have had to do this in the past, my firewall had a portforwarding option built in, saved loads of time, only problem I hit was the whole https:// part of the paypal integration as the visual studio webserver won't run https, I tried portforwarding 443 to the correct port but as it had no encryption paypal didn't like it.

Have you thought about running a virtual PC/server on your dev machine?

Kimberly said...

Hi I liked your information and would like to continue posting more about it .... in fact I did a while ago to work in or call virtual laser keyboard on this subject and I was fascinated ... thanks