Asp.net, paypal and IPN.. how to automate payment? - asp.net

i'm trying to integrate Paypal in an asp.net app.
It works fine, the last thing i would like to do is to automize payment notify.
In particular, how does it works IPN ? I would like to set a field to 1 when a user buy a service... How can i do with ipn ?
I'm asking here to avoid to read all 120 pages of paypal IPN documentation... ;)
Thanks in advance...

Theres lots of examples out there on how to build a basic IPN listener. Once you build one and point your PayPal account at it, all transactions will have their details sent to this listener as a request. You will need to parse out the relevant data from this request to determine the success of the transaction and process the order.
Similar SO Question
PayPal Code Sample
Other good sample C#

Related

PayPal Smart Button: Get Transaction Details & Update into Database

Hi I am currently doing project that is creating a payment gateway for my webpage and currently I am using PayPal Smart Button for the payment gateway
For now, I have successfully doing the payment but I am unable to get the data that I decided to use for updating the database. I used the PayPal developer website as reference(code, methods etc.), but it doesn't work. Get Transaction <-- I am not sure where should I put the provided code in a Controller/Model
I am using ASP.NET MVC for my project.
Please help me.
Thank you.
Create two routes that return JSON, one for "Create an order" and one for "Capture an order", documented here: https://developer.paypal.com/docs/business/checkout/server-side-api-calls/#server-side-api-calls
Pair your two routes with Smart Button JS for approval. Here is a demo: https://developer.paypal.com/demo/checkout/#/pattern/server
This way when an order is captured, you'll have an immediate API response on your server with all the transaction details. Update your database then.

Tickera WordPress Plugin, getting a PayPal IPN error e-mail

I purchased the Tickera wordpress plugin from Tickera.com. I have repeatedly requested support from them, but they don't respond.
I installed this plugin on a client's website to sell tickets for an event. The plugin works. The visitor buys the ticket via paypal and then they are sent an e-mail with a PDF attachment of the ticket which can be scanned at the event.
The problem is that with each transaction, my client gets an e-mail from PayPal with this statement:
Please check your server that handles PayPal Instant Payment Notifications (IPN). IPNs sent to the following URL(s) are failing:
and then it has my client's URL with the folder where the WordPress lives and then ?ipn=paypal.
Do I need to open a IPN account on PayPal to stop the error e-mail? I have been afraid to do this, in case it screws up the function of the plugin. It is working now.
Does anyone have experience with this?
-w
It sounds like the plugin must be setting the IPN URL using the NotifyURL parameter of API requests, or just the notify parameter in a standard HTML button/form. That would override anything you set up in your PayPal profile anyway.
It sounds like there must be some sort of a problem with the IPN script itself that is causing it to send a failure code of some sort back to PayPal's IPN server. You should be able to check your web server logs for the times that URL is getting hit and see the result there so you can look at the error and resolve it.
I would be very reluctant using this plugin - see Facebook for more than enough reasons. As to not try to say too much, I will just say "client side only validation" and "tickera == name your own price ticket system". What made this bug even worse is that it could be triggered accidentally by merely using normal browser behavior and so a kid with no knowledge of Javascript or the sort could still easily add 4 tickets, proceed to payment, click back in the browser and again proceed and get 4 tickets for the price of 1... Someone with a bit more knowledge and malicious intent could mess with a client side value array and set prices to $0.01/ea if they wished... I was consulting for someone in an attempt to clean up the mess from using this plugin and quickly discovered Tickera to be less than helpful on the support front... Best I can tell, the client-only-validation "bug" (horrible design) is still in play.. When notified of the bug, they were pretty much like "Oh, no biggie - just review all sales and cancel/refund/etc manually" - an unacceptable solution for medium/large events and just bad business for an event of any size... There are some serious security concerns with this plugin and their lack of response or support is just the icing on the cake... Beware.

If I turn on IPN can I still redirect my button users to my custom response pages?

I am currently using email2db to read the emails PayPal sends regarding new subscriptions, payments, cancellations, etc.
Now that I have 6 different fork, including 1 from intl.paypal.com and one from paypal.co.uk it has become difficult to manage my db with email2db.
This is a production system. I want to know if the existing system will remain intact if I turn on IPN for testing and development. I need it continue to redirect the subscriber to my currently chosen thankyou page as included in my button code.
Is it safe for me to activate IPN?
Thank you,
Gordon L
IPN is an entirely separate process from anything else you do. It's simply a notice you can have PayPal send when you get a payment or the status of one changes (i.e. chargeback etc). So it's safe to use with any payment process.

How do I fetch the Transaction ID from PayPal website to my web site?

I am using Paypal sandbox testing module in my Shopping cart site. I have test account in paypal sandbox. i am sending amount to paypal. After payment success when retun back to my web page I want to get transaction id and amount.Kindly help me.
You probably want to use Paypal IPN. You can get the Paypal transaction id, amount, and a slew of other information, using Paypal IPN. Basically, this is where Paypal will do an https post back to your site after a transaction, and send all of the info for the transaction. See https://developer.paypal.com/webapps/developer/docs/classic/ipn/integration-guide/IPNIntro/ for info.
You need to specify redirect url.You can have two urls one for success and other for failure.Thats how i implemented it in one of my project (Dont have it now with me for reference).
Take a look here or here.This link has an sample project.It may help.

paypal buy it now button process flow

Im adding paypal payments to my site via a buy it now button, which as i understand it posts a form to paypal then the user completes payment on paypal's site.
To process the order after payment is confirmed im using an IPN listener, but id like to do some processing on our server at the time of ordering too. Is it possible to have the buy it now button submit to our own server first so i can record the order, before redirecting to paypal for payment details?
You have two options here.
First option that is more simple but can fail if the user did not have javascript, is to make a post to your server with what data you like, with ajax, and only after the return you let the user continue the submit.
Second option is to post your data to your server on code behind, there you prepare a simple page with auto submit to paypal - actually you make a redirect with post. Here you can find source code and one example on how to make it:
http://www.codeproject.com/Articles/37539/Redirect-and-POST-in-ASP-NET
Actually, you have many options.
As you said, the buy now button is nothing more than a form post to PayPal. You can build your own form using any of their standard variables rather than be limited to these buttons. They call this the cart upload method.
With this method you can do whatever you need to do whatever local processing you need to do prior to ever sending the user over to PayPal. It's a good practice to create an order record of some kind in your own system which you can then include with your PayPal payment info. That same value will come back in IPN so you can process it post-payment as well.
Another option that would you open you up even more is to use the Express Checkout APIs. This gives you complete control of your checkout system and has more features than standard payments. I recommend this if you're familiar with web service APIs.
Of course, IPN works with Express Checkout, too, so you can still use that for whatever you want/need as well.

Resources