Create paypal form which handles both recurring and one off payments - paypal

Wanted to know if paypal allowed this functionality within one form or if I have to create two separate forms in order to obtain this functionality. Currently building a donation widget for a client per their request.
If there are any documentation regarding this within paypal a link would be greatly appreciated.
Cheers.

You can do that no problem. Just build your form with options for one-time or recurring payments, and then use the Express Checkout API to process the checkout accordingly.
If you're working with PHP you can take a look at my class library for PayPal, which will make the Express Checkout API calls very simple for you.
The calls you'd be utilizing are:
SetExpressCheckout
GetExpressCheckoutDetails
DoExpressCheckoutPayment (for one-time payments)
CreateRecurringPaymentsProfile (for subscriptions)

Related

How use PayPal API Request Money?

I need to use Request Money by PayPal. I have problem with find the best Paypal API (SOAP/REST) for this. After that i need sometimes refund this transfer.
Can somebody help me to ?
I want to see if there is a way to automate the PayPal request money part.
This is a PHP web application.
A sample payment link :
https://www.paypal.com/cgi-bin/webscr?cmd=_xclick&business=YOUR_PAYPAL_EMAIL&amount=10&currency_code=USD&item_name=test
Edit the value of each variable and you would be able to generate a payment link on your demand. You may also check below link for more details of PayPal Payment Standard 's variables.
https://developer.paypal.com/webapps/developer/docs/classic/paypal-payments-standard/integration-guide/Appx_websitestandard_htmlvariables/
You can send PayPal Invoices to people using the Invoicing APIs. For that you may be interested in our PayPal class library for PayPal, which makes those API calls very quick and easy.
Alternatively, you could build a more simplified money request by just generating a PayPal Standard payment URL using the variables outlined here. Then you could have that URL be a link from any button or trigger you want.

Payment and billing plan in one transaction

This is my first time using the PayPal API so go easy on me.
The case I am trying to handle is as follows:
My customers can purchase software licenses that can either be one time payments, or yearly payments.
They can multiple products to the cart, and each product can have either one of the pricing plans mentioned above.
If I understand correctly, "payments" in the API handle one time transactions, and "billing plans" are used for recurring payments.
Is it possible to processes both in one call to the API? If not, is there a different way to achieve this?
Any suggestions would be greatly appreciated! TIA!
Not one API call, but you can do it in one checkout flow with multiple API calls.
For PayPal wallet payments (logging in to PayPal and paying) I would recommend using Express Checkout w/ Recurring Payments.
With that you would be using SetExpressCheckout, GetExpressCheckoutDetails, and then either DoExpressCheckoutPayment, CreateRecurringPaymentsProfile, or a combination of both of those depending on the products in the card and whether they need one-time payment or recurring.
The CRPP call will allow you to setup a recurring profile and include an "initial payment" which would be charged when the profile is created. This could be used as the one time payment if you want, and then you wouldn't need the DECP call.
Alternatively, you could use DECP to process the one time payment and then follow that up with CRPP to create the profile. There are advantages and disadvantages to the different methods depending on your business needs.
For setting up profiles with direct credit cards you'll need PayPal Payments Pro. In this case you would either use the same CRPP call mentioned above, but it would be used by itself and include the credit card details. Or, depending on the version of Pro they put you on, which depends on the version of PayPal account you have, you might end up using PayFlow instead.
If you're working with PHP this PayPal PHP SDK will make all of those API calls very quick and easy for you.
I know that's a pretty broad answer, but that's because it's a pretty broad question. :)

Which paypal solution to use?

I just noticed that paypal now has a number of solutions to accept payment, and per this own page, it doesn't really compare their difference in a nice way:
https://developer.paypal.com/docs/accept-payments/
Does anyone happen to know (I am using C#/.net, but JS is also OK), if I want to have a customized checkout, in which I can customize the look and feel, and allow customers to enter/select shipping address (which is saved in the site's own database), which paypal method I should use?
Thanks! (also if any document that explain better the differences of the above different ways of accept payment, it would be great!)
If you want to completely customize everything then the PayPal Payments Pro Payflow Edition is a viable solution.
Here is the link to Sample Code C# is one of the programming languages offered in the Sample Payflow Code.
You will need to build your form/shopping cart and then the Sample Code can be used to make the payment request to process the payments. The Entire Transaction will take place place on your website from start to finish.
If you want PayPal to handle the payment portion with a customer leaving your site to use PayPal as the Payment method and then returning to your site to complete the payment, Express Checkout is the other option that will work.
You can make an API call to PayPal to get the Shipping information from PayPal and then store the shipping info in your own database.
Here is the Express Checkout Sample Code

paypal one time login during paypal payment

I need a help regarding paypal.
That is. Once I have logged in with paypal and made payment, Then for another payment no login will be asked, Direct payment will be done using paypal. Please comment your suggestions. Thanks in Advance.
You have a couple of options for this.
First, you could take a look at Preapproval, which is part of the Adaptive Payments platform. It allows users to create a Preapproval profile that your application can then use to trigger payments at any time without further approval as long as the payment fits within the guidelines of the preapproval profile.
Another option would be to look into Express Checkout with Reference Transactions. This would give you a little bit more flexibility and would be more in line what you're asking for, I think. Users would agree during their first payment with you to allow you to auto-charge this same account in the future. Then you would use DoReferenceTransaction to trigger future payments based on that "billing agreement" which is what it would be called that way.
I would recommend going with Express Checkout, and you might want to look at Digital Goods, too, which just adds some more functionality with quicker PayPal checkout in various ways.
It's all handled through a few simple API calls, so don't let all the info scare you.
My PHP class library for PayPal will make all of the API calls very simple for you regardless of which method you choose. Again, though, I'd recommend Express Checkout.

Paypal Adaptive Payments - Finalizing payment

Is there anyway to have user finalize payment on my site instead of on paypal.com? I want to run a script before sending off for final authorization (not just before redirecting and logging into paypal).
I know IPN would help but will not satisfy a race condition completely.
I know Express checkout can do this but I need someone to pay someone else, not direct payment to myself. I don't think that's how Express checkout works if I read correctly.
You're correct in your assumption on Express Checkout; although it can do split payments over multiple different receivers.
With regards to Adaptive Payments; you can still call the Pay API with actionType=CREATE and the transaction is only finalized once you've called the ExecutePayment API call.
See also page 123 in https://cms.paypal.com/cms_content/US/en_US/files/developer/PP_AdaptivePayments.pdf