Paying from any account to any other via PayPal API - paypal

I'm trying to figure out whether it is possible to send money directly from any paypal account to any other via PayPal API.
I tried to find the answer in the API documents as hard as I could, but unfortunately haven't found it :-(

Two choices: Mass Pay and Adaptive Payments API.
Mass payments is the simplest of the two, and also the old, legacy one (note also it is limited to 250 payments at once).
https://www.x.com/developers/paypal/products/mass-pay
The Adaptive Payments API is the next-generation API, allowing for more complex scenarios and implementations.
https://www.x.com/developers/paypal/products/adaptive-payments
Hope this helps.

Related

Is the Payout (REST api) functionality meant to replace Mass Pay (classic merchant api)?

It appears as though the newish payout (including batch) endpoints more or less match up with the older MassPay functionality. The fee structures seem to match up, with payouts having an advantage for transfers within the US. Even some of the events get logged as MassPay. It appears for all practical purposes that payouts is meant to replace MassPay.
What I haven't been able to find is a definitive statement from PayPal to that effect. I have looked for an announcement from when payouts was introduced, through technical and general support documentation, and generally in every place I could think of.
Obviously, the LACK of such a statement could say something all on its own. It just doesn't seem like it should be the case.
Has anyone seen an official statement that I can refer to? Or, if PayPal folks are listening, is such a statement possible?
Something along the lines of, "PayPal is encouraging developers to build new systems needing MassPay functionality using the Payout endpoints of the REST API"
Thanks!
The Payouts API is a brand new REST-based API that replaces Mass Payments classic APIs. Payouts has more features as compared to Mass Payments.
Businesses which need to send disbursements to up to 500 recipients in a single API call will use the Payouts API.
These new API’s close the product gap between PayPal Payouts capabilities, and our new crop of competitors. And crucially the new Payouts API’s solve numerous product problems inherent in the Mass Payments APIs
What does Payouts API have over Mass Payments API:
US and CA domestic pricing - $0.25 USD flat fee for US domestic payouts, and $0.32 CAD for CA domestic payouts
Send up to 500 payouts in a single API call
Duplicate checking – PayPal can check for duplicate payout requests
New Single payout capability – PayPal will return transaction status directly in the Payouts call response
-1:1 mapping of an entire batch’s requests – easily retrieve via API call the status of each request in a batch, when ever you want, how frequently you want
On-Demand Reporting – Allows you to easily query for payouts by time, status or recipient
What doesn’t Payouts have?
Payouts does not allow for manual file uploading.
https://developer.paypal.com/docs/integration/direct/payouts-overview/
They do the same thing; they even share a lot of internal PayPal code. The Payouts APIs essentially just more modern wrappers.
PayPal has yet to ever deprecate and replace APIs (which is a huge problem & source of confusion). So you are entirely welcome to use either set of APIs -- for now and, given the number of people already using the MassPay APIs, probably for a long, long time.
But yes, theoretically the Payouts APIs are the replacement for MassPay just as the other REST Payments APIs are the replacement for Express Checkout.

Paypal Payment via Classic or Rest API

I am a bit confused about the REST and Classic API and which one serves my business case best. My requirement is to be able to send money to one or many customers by just using their email addresses. No need to receive Payments, just to send...Additionally i do not want approvals, i just want to send the payment and the payment to be executed, since i am performing a receiver email validation via the getVerifiedStatus call.
I know there is the Mass Payment option and the Adaptive Payments option however for consistency i need to use only one API. Which API covers my needs?
This isn't yet covered well by PayPal's new REST APIs. But the MassPay api (with # of payments = a set, or just 1) can definitely do what you want. Check PayPal's handling of exception cases that is built into the MassPay product to ensure it meets your requirements; if it does then this is a great answer. The adaptive payments pay() can also definitely work; to determine which works for you will require evaluating the underlying PayPal products moreso than the APIs. They do NOT work entirely the same way....
I would stick to classic API for now as it's much more mature than the REST API is. For your situation I'd go with Adaptive Payments, specifically the Pay API. Since you are the app owner and the payer, you can simply trigger payments however you want to anybody you need.

Create Payments, PHP

I'm using paypal to make my users able to payout their credits, which they can earn on my site. So i am actually buying my users efforts. As i have up to 200 payments per month, i would like to know, is there a possibility to send payments to my users via paypal api?
If yes, which methods should i use and what should i take care of? I possible i would also take a ready to go implementation in php.
I tried to check the documentation of the paypal api, but it was to complex, so i did not find any solution.
If you'll be submitting payments to 200+ people at the same time, the MassPay API would work nicely for you, but you'll need to call PayPal to request it and get it specifically approved on your account.
If the users will be doing this on their own, one at a time, then you'll want to look at the Pay API, which is part of the Adaptive Payments platform.
You can use my PHP class library for PayPal to make the API calls very quick and easy for you regardless of which method you end up using.

Paypal ExpressCheckout + chained Payment

I developed a Web Application that accepts payments via the ExpressCheckout API, for users to become a members.
Everything works fine.
I now want to extend my Web Application Services and offer my users with the possibility to buy items which are sold by third parties (my members).
The principle I would like to implement is quite simple: for each order, let the user pay for the item they choose and then transfer a part of the amount I received to the item provider, and keep some money for me. I would like to automate this process so that once I received the payment notification, I compute the amount of money to transfer to the item provider who might or not have a Paypal account (in other words, this means that I could maybe need to transfer the money to a bank account, using the IBAN/SWIFT data) and then proceed with the money transfer.
I tried to find a solution reading your documentation and came across the "chained payment" but the latter does not seem to be used within the ExpressCheckout workflow.
Also, since my implementation of the ExpressCheckout flow works, I would not like to have to find a totally different solution but rather extend it... if possible.
Could you please tell me which is the best solution for me?
In advance, many thanks for your help.
You could do 1 of 2 things. You could use Express Checkout with parallel payments. This means you could split the transaction up between different accounts at the time of purchase. The other option would be to just receive all of the funds into your account, and then when you are wanting to send money to the other accounts you could either use the Adaptive Payments (Pay) API or the MassPayments API to send money to the other accounts. Keep in mind you would have to send it to their PayPal accounts, you would not be able to send it directly to a bank account with either one of these API's.
I had the same issue and I got an answer from PayPal that it is not allowed to use Express Checkout to transfer money to your PayPal account and - at a later point in time - transfer the amount minus your service fee (which stays on your PayPal account) via Adapative Payments API to the seller's PayPal account. PayPal suggested to use Chained Payments API instead. All works fine in the sandbox, but once you need a Live APP ID from PayPal they will review your business case and deny it. At least that what happened to me.
I know that is old question, but anyway, I tried to find solution and was enable to perform the simillar thing like described in question. So, then I asked paypal about this, and they gave me advice to use SellerDetailsType Fields that 's called PayPalAccountID, description for this field is Unique identifier for the merchant. For parallel payments, this field is required and must contain the Payer Id or the email address of the merchant. It wasn't clear for me to use this field for solving my problem. Here is link https://developer.paypal.com/webapps/developer/docs/classic/api/merchant/SetExpressCheckout_API_Operation_SOAP/ I described field for soap request, for NVP it's called PAYMENTREQUEST_n_SELLERPAYPALACCOUNTID, but the idea is the same. I hope it will help someone.

Adaptive Parallel Payment with REST API Example?

I didn't quite understand is it possible to split a payment
among several merchants using the REST API?
If so can anyone reference to an example (preferably PHP)
Google didn't quite find anything for me on the matter.
thanks.
REST does not support the full suite of calls that Classic does. You will have to implement Classic (NVP or SOAP) to get to Adaptive payments, where you can split payments via Chained Payments
This page talks about Chained Payments and all the examples it gives are Classic NVP
https://developer.paypal.com/docs/classic/adaptive-payments/ht_ap-basicChainedPayment-curl-etc/
As of this point in time it is not supported to do what you are asking. The options as suggested by others are to use Adaptive Payments or Express Checkout. I tend to prefer the former but to each his own.
Just to quote from their page
The Adaptive Payments API allows merchants and developers to pay
almost anyone and set up automated payments. They can create
applications that manage payments, payment preapprovals, and refunds.
They can also send money peer-to-peer, split payments in both parallel
and chained models, accept guest payments, and schedule disbursements.
The Adaptive Payments API works on multiple platforms including the
web and mobile environments.
The link is Adpative Payments
After going through the above link and understanding the basics, it should be easy to follow the steps mention Here as mentioned by the above answer as well
Not at this time. You would have to use either Adaptive Payments or Express Checkout.
https://github.com/paypal/adaptivepayments-sdk-php
use this sdk to integrate paypal adaptive payment.