I am planning to use Stripe to accept payments for digital products and want to redirect the (legit) user to a download/thank you page after payment. Until now, I have been using PayPal and its PDT service helped me do just that. Infact, I could do a callback to PayPal from the download page, to confirm that the transaction info was correct, that the order was actually placed and then process the same (did so using the following tutorial:- http://www.paysketch.com/setup-paypal-pdt/)
I have been looking around a lot, but have been unable to find PDT like functionality in Stripe. What way can I implement the same? Following are the primary motives:-
User should be redirected to a thank you/download page after payment
My script should be able to verify the same from stripe
Please suggest.
Related
My dear fellow IT developers...
I am currently working for a client of mine on Laravel 5.5 and we are using omnipay library for PHP and it's PayPal part omnipay-paypal. Now since this a specific request from client I am using PayPal-Express method to redirect the users to PayPal then there they login and pay with their account PayPal or CreditCard and come back to my clients page on Thank you page.
Now since the client wants to create an upSell page which stands between checkout page and Thank you page, and it offers 1 additional unit of the product on 50% discount.
The story is that after the first charge I would need to recharge them again somehow, ideally with what I already have and that is PayPal Express.
On our checkout page we have two options PayPal or Checkout.com, the latter one offers storing of card_id property and after that you can do the recharging, this is already implemented and working like charm with Checkout.com. Now back to PayPal.
I've spent fair amount of time trying to find the same solution for PayPal but with no luck. If there is some good soul out there to help me out with this I would appreciate it very much, so Omnipay PayPal library + recharge the customer if they click Yes on upSell page after initial successful charge/payment via PayPal Express.
Thank you in advance.
There isn't an easy solution to this problem, however I can point you in the direction of a couple of things you need to do:
What you need is a card token. That's where (in Omnipay) you call a method like createCard() with the customer's credit card details and you get back a token. You can't do that with a PayPal account, you have to capture the customer's credit card details and then charge the card.
Creation of card tokens can't be done by the PayPal Express gateway. It can be done using the PayPal REST gateway (an alternative and newer gateway in the same Omnipay package as PayPal express) which means you need to switch from PayPal Express to REST. That's as simple as generating a new set of API keys. That will allow you to call createCard() with the card data and get back a card token (called a cardReference in Omnipay) just like you do with checkout.com
Just to reiterate, what you're trying to do can't be done with a PayPal account. You need to have the customer's credit card details.
I am building website which requires customer to update paypal account.
Is there anyway to check the reality of customer's account?
When my customer fill out their paypal account in my site, I want them to be directed to paypal login page to login and paypal will return the result.
Does paypal api support this situation?
Pretty much any implementation of PayPal you choose would follow the flow you mentioned.
Payments Standard would allow you to create basic buttons or create an HTML form and POST directly to PayPal to process. It would send the user to PayPal for login and approval to complete the payment. The transaction details would include the payer status (verified or unverified) as well as the address status (confirmed or unconfirmed) and lots of other details about the order.
Express Checkout is basically the API version of Standard, but it's much more advanced and open to integrate in the way that works best for your site or application. In this case, some of buyer/transaction data is available during the process within your app through API requests and responses, and then you can also get to it via transaction details after the fact just like payments standard provides.
Another option would be to use Adaptive Payments, but if you're doing a general payment of any kind you probably don't need that. That's what you would use if/when you start wanting to split payments among multiple receivers within the same transaction, setup preapproval profiles, etc.
If you happen to be working with PHP my class library for PayPal will make the API calls very simple for you.
You could do what PayPal itself does when you register. Send them a few cents and have them tell you how many when they get it. The payment itself will fail if the account doesn't exist, and telling you how many cents proves that they own the account.
I am working on a event-based website that requires PayPal payment. I checked the documentation as well as the questions and answers on Stackoverflow. However, I am still don't know what is the best way to accomplish this. The following are the steps that I have to do:
An audience registers for an event. He provides all the personal information and choose the sessions that he will attend.
The system saves his information into a database and redirects him to the PayPal website so that he can pay by using credit card or PayPal account.
After the payment is verified by Paypal, call back to the website so that I can save the payment status in the database and process further steps.
If you have done something similar, please share it with me. Thank you in advance
PS: I am using PHP Laravel Framework.
You can use Omnipay to do via Paypal: https://github.com/adrianmacneil/omnipay
Your steps 2 and 3 are covered, for PayPal and many other payment gatways.
But if you are on US or UK, you should think about using Stripe as payment gateway. It's what Laracasts (by Jeffrey Way) and Userscape (Taylor's company) is using. It's very easy.
Stripe documentation is awsome and there are some stuff written about this, screencasts, like this one: http://www.screenr.com/d3v8 (for Laravel 3, but you'll get the idea) and Composer packages, like those:
http://packalyst.com/packages/package/mosey/stripe
https://github.com/Abodeo/laravel-stripe
Good luck!
I have downloaded sample code from paypal to allow me to use parallel payments via their sandbox accounts. When I run parallel.php, I get redirected to paypal's sandbox login page.
How am I supposed to know "server side" that the payment has been made successfully, so I can update my database records?
I believe you have to work with PayPals IPN system. This will basically send a confirmation to your server that tells you it has gone through.
https://www.paypal.com/ipn
Paypal lets you register a notification url which is part of the IPN (instant payment notification IIRC) system. So if someone pays by a delayed payment (such as a bank transfer) the transaction will update days later. You need to have an application (web page) on your server that can be called by Paypal with transaction details to update a payment.
You'll need to create an initial transaction record in your system when paypal redirects back to you so refer to their documentation for that. I'd also recommend looking at either OSCommerce or Zen cart for an idea of how they do it as they support the same kind of thing.
I want to integrate paypal in my website. But my requirement is, I dont want my customers to go into paypal site for payment. (I know it is not a secure way, but it is my requirements) Is there a way such that I can do credit card checks in backend using paypal APIs ? If so, which method to be used? I want it for "singapore" country and SGD as currency.
Waiting for your suggestions!!!
Thanks in advance. :)
Are you trying to avoid your users having to navigate to PayPal or are you trying to 'hide' the use of PayPal?
The prior should be easy enough to resolve. PayPay provide several tools (and instructions) on how to build a "Pay Now" button, which you can manipulate server side to include a dynamic amount and order ID etc. This would forward the user to a PayPal page to login and confirm payment, then return them to your site (any page you specify) on completion. You can also link this to an IPN. The PayPal payment page can be skinned / branded to an extent.
What you are looking is called Direct Payment. Here is more info about it:
https://cms.paypal.com/us/cgi-bin/?cmd=_render-content&content_ID=developer/e_howto_api_WPDirectPayment
Maybe you are looking for this Paypal product