Integrating paypal recurring - paypal

I am new to PayPal integrating and need to integrate PayPal recurring for subscriptions. I googled for that, but I am confused with below questions.
Which API should I use with PayPal recurring, WPS or Paypal express checkout? Which one will be good?
Is there any good example or help to integrate this?
Thanks a ton in advance.

Good overview of recurring payments: Handling recurring payments
I'm using the Lionite PHP Paypal class. It's not free, but even if you're not going to use it, read through that page because it contains some useful info that is omitted from the Paypal docs.
If I understand correctly, Express Checkout requires your customer to set up a Paypal account, so Website Payments Standard would be a better option.
Unfortunately the Paypal SDK only has code examples for direct payment. If you want to use Website Payments Pro with Direct Payment, be aware of PCI compliance (which can be expensive and time-consuming) and also be aware that services like BrainTree exist which have transparent redirect, thus helping you to avoid PCI compliance (I haven't used this service however).
Express checkout code example: https://github.com/hrendoh/PayPal-Recurring-Payment-example
Set up your sandbox account at http://developer.paypal.com
Update: IPN for recurring payments is a nightmare. Not only are the recurring payment IPN responses completely undocumented, but none of the support staff I talked to had a clue about them either (in some cases they gave me incorrect answers to questions). Here is a list that others have put together, but all of these resources are incomplete:
https://www.x.com/developers/community/blogs/ppmacole/recurring-payments-ipns?page=1
http://docs.ipn-easy.com/html/T_Rolosoft_IpnEasy_Net_PayPal_TxnType.htm
Unfortunately because of the limits placed on recurring payments with express checkout, direct payment was the only option for me. I strongly suggest that if you need to do direct payment with recurring payments that you find a different payment provider.

Related

Paypal Rest API Payment or Braintree Payments

I used the Paypal NVP API (Express checkout) for a long time and it worked fine. I'm now developing a new project and wanted to use the 'new' Rest API that Paypal recommends for new projects. I, however, find the documentation rather imprecise at some points and often contradictory.
I'm using their sandbox to test the payments and I noticed that the payments work fine, except that once I log in to the Paypal Buyer account, I can only select the PayPal balance to pay.
Is this a limitation of the Rest API? I want to clarify that I am based outside the US and I do not want to accept credit card payments on my own website (well, if there is no other solution, I would accept it). I'd rather have the user get redirected to the PayPal page and provide his credit card information over there. I do, however, want to give the option to the user to at least select from PayPal balance or credit card. (As I'm used to from the NVP API)
UPDATE
In the meantime, I've done a lot of additional research. On the PHP SDK page, they've added the following notice:
Important: The PayPal REST API no longer supports new direct credit card integrations. Please instead consider Braintree Direct; which is, PayPal's preferred integration solution for accepting direct credit card payments in your mobile app or website. Braintree, a PayPal service, is the easiest way to accept credit cards, PayPal, and many other payment methods.
How should I understand the direct credit card integration? Is that the credit card payment on the PayPal website after being redirected onto that page or do they mean credit card payments where the card number is provided on ones own website?
I've got the impression, PayPal is entirely shifting to Braintree Payments. Even on the official PayPal Developer website, they propose Express Checkout for quick (client side only) integrations and Braintree Direct for other payments.
This is what I need:
PHP integration of the API calls
Payment methods: PayPal balance, Different Credit Cards
eventually recurring payments
I do not need:
Third party invoicing
client management
shipping address management
So my concrete questions would be:
What's the difference between Braintree and PayPal payment methods (since they belong to the same organisation)?
Should I use PayPal Rest API or Braintree solutions in my case?
What are those PayPal limitations that they list on their website?
Has nobody got any experience in this domain? Even partial answers are welcome!
I have partial answer, as I am also in the process of choosing between BrainTree, PayPal Rest API, and Express checkout.
I'm here to answer "How should I understand the direct credit card integration?"
I'm no expert on the subject, but during my recent work at the area of integration with checkout systems, I've learned this:
One of the types of credit-cards is called "direct credit card". It means that it is directly connected with a bank account - when it is billed, the money is instantly transfered from the connected bank-account to the merchant. This is different than how most credit-cards work - most will only charge the bank-acoount at the beginninng of the next month.
I've come accross situations where direct cards behave differently than regular credit-cards.
For instance - the checkout-system I integrate with doesn't allow to monthly-bill a direct card. direct card on a monthly payment plan have to be billed manually.
So for me, the PayPal announcement you qouted means a lot - I need to support direct credit cards, hence I'm choosing BrainTree. Thanks!
Note to moderators:
I originally wanted to post this as a comment to the question, becuase I thought it would help the OP. I don't have enough reputation to comment, so I posted an Answer.

Is Paypal Adaptive Payment API depreached

We are researching a way to automatically pay the developers of e-commerce modules we sell on our web shop. A lot of reading suggest the Paypal Adaptive Parallel Payment should be the solution. But Paypal developer docs seem to say that this API is now restricted and no option. If so, is there a new API from Paypal. The Braintree marketplace is no option for us in Europe
Express Checkout supports parallel payments as well -- https://developer.paypal.com/docs/classic/express-checkout/ht_ec-parallelPayments/
Actually Adaptive Payments are still supported now. You may try access below page to apply for an APP ID. If your application is approved, you may still continue integrate with Adaptive Payments.
https://www.paypal-apps.com/user/my-account/applications

Need some light on PayPal's Website Payments Pro

After having a good read through PayPal's docs, I'm still lost.
FYI in Canada and US it's called "Website Payments Pro", otherwise it's "PayPal Payments Pro".
I need to setup a way of:
User subscribing to a yearly fee
User can setup subscriptions WITHOUT a paypal account (pro feature)
This sounds really simple, but when you start searching for more technical docs about that matter I can only find articles like these:
http://net.tutsplus.com/tutorials/php/how-to-setup-recurring-payments/
Which is fine, but this isn't for PayPal Payments Pro. I heard I'll have to use server-side calls to the API but all I can find is people telling me to "create a button".
But the buttons, for some reason, doesn't support Pro features and ask users to register on PayPal to get subscribed which my client doesn't want at all.
Could anyone share me some light about those?
I find PayPal's docs misleading. I really really need to get this done as soon as possible but I cannot seem to find good docs or a good working example for this.
Thanks for your help, it's greatly appreciated!
PayPal Payments Pro is the new name for Website Payments Pro. The button way of doing things is called PayPal Payments Standard.
See https://developer.paypal.com/webapps/developer/docs/classic/paypal-payments-pro/integration-guide/WPRecurringPayments/. Recurring payments can be set up with ExpressCheckout (buyer has a paypal account and logs in to paypal site to approve subscription during setup) or DoDirectPayment (you provide buyer's credit card info when setting up the subscription)
There are a few ways to do it, but if you don't want to mess around with API calls, then I would suggest using a subscription button and signing up for Enhanced Recurring Payments. This allows you to accept subscriptions from buyers who don't have a PayPal account and don't want to sign up for one. To sign up, go to https://www.paypal.com/us/cgi-bin/webscr?cmd=xpt/Marketing/merchant/ERPOverview.

PayPal guest payments outside US

I need to process payments from customers who have credit cards, but not necessarily a PayPal account - and they need not be required to sign up for PayPal either. From what I have found in the docs so far, it seems I need so-called Adaptive Payments to do that. Does this work with the REST API and can I do this outside the US (I live in Austria)?
Both PayPal Payments Standard and PayPal Express Checkout support guest transactions; you really don't need Adaptive Payments for this.
I suggest you take a look at the Express Checkout documentation, including the Getting Started guide we have available.

Accept recurring payments with PayPal PayFlow Link

I am looking to set up a recurring payment option for my website. I was thinking of going with PayFlow since it does not require expensive SSL. But I am not sure how to set up a recurrence payment where if the user decides to change the account type, we can automatically set up recurring payment for them to get charged next month. Not sure if this is possible?
A few problems, they charge almost $60/month and they require to have a Merchant Account (any suggestions)?
Can some one help with what type of service should I use? I am looking to not have credit card acceptance on my webpage because SSL is really expensive.
The webpage is in php.
PayPal Express Checkout does this, and more. While Payflow Link is generally a good and robust solution, Express Checkout has a bit more to offers in terms of features. It also redirects your buyers to a PayPal landing page for entering their card details.
I assume you can simply delete / disable a recurring payments profile and set up a new one whenever someone switches plans, right? In that case you'll want to look at the CreateRecurringPaymentsProfile API.
Have a look at https://cms.paypal.com/us/cgi-bin/?cmd=_render-content&content_ID=developer/e_howto_api_ECRecurringPayments and https://www.x.com/docs/DOC-1168
Do keep in mind however, that recurring payments on Express Checkout only works with existing PayPal accounts. Someone who doesn't have a PayPal account yet, will have to create one during checkout.
Paypal is usually a great solution. There is no problem with billing recurring payments (subscriptions).
You can read all about it here:
https://www.paypal.com/pdn-recurring