A Unique Developer

Making Paypal standard checkbout more user friendly

Recently working with paypal standard checkout and it so easy to integrate with any application as it will redirect to paypal site and customer login and make all kind of payment stuff at paypal site only. But this task make really tuff for new customer who has limited knowledge of intenernet/paypal.

How this works? Well, paypal has very good documentation here. Basic flow is.

  1. Customer click on "Paypal" button which redirect to paypal site.
  2. Customer need to login or enter credit card information.
  3. Paypal ask for confirmation of payment.
  4. Thanks page for placing order with link to return original site.

On standard checkout user leave my site so I don't have any way to know has he finish payment or not and my order staus will be unpaid (or anything what you have code for). I am able to update order status only if customer click on return link that I have provided at the time of generating paypal button but in most of the case customers don't return to my site as they see "Thanks" message from paypal and close browser.

Later, I realize that paypal has an option to auto return (My Account OverView >> My Business Setup >> Customize my buyer's experience >> Auto Return) just enable it and provide auto return URL (Yes, you can override it at transaction level), simultanously enable "Payment Data Transfer" option as well so you will receive all your data back on return URL and perform necessary action on particular order. This option really help me lot as customer doesn't need to manually click on return URL instead paypal will redirect automatically after 10 seconds. Wait, 10 seconds.... Customer can close browser in between and again my order payment is not confirmed.

Well, this can be avoided by Instance Payment Notification (IPN). IPN will send notification all payment related transcation from your account to your specified server URL. I am not going to discuss it in detail about IPN here as it is very well documented here.