Create a flow where client pays freelancer - paypal

I am creating an app where clients connect with freelancers and send them money!
I am currently thinking of using Paypal as my Payment Integration.
My question is: Is it possible to create a flow where the client pays the freelancer directly, without my server being a broker?
Also, are there better solutions than PayPal!
Thank you in advance!!

Use PayPal Checkout with a payee parameter to pay another account.

Related

How to split incoming payments into two or more accounts? 2022 (Paypal or other platform?)

We are a team of completely junior developers and we'd like to know if there's a way to split incoming payments -equally- into different accounts, wether it's through Paypal or other platform.
For example, we would send a link button to the client to make the payment, let's say $100, and we would like to be automatically split into 2 accounts (50%-50%) or 3 accounts (33%-33%-33%).
Is there a way to do that?
Should we create a special type of account to be able to access that functionality? (for example I have my personal -non business- account on Paypal, should we create a business account in order to be able to have that split payment option and, from there, split it into my personal account and my partner's?)
Should we use another platform instead of Paypal?
Should we integrate the code into a website with the Paypal payment method? or can it just be a link that we send to the client, let's say, via email?
Are there easier ways to solve this (for example with crypto -binance or sth like that-)?
We are completely lost on this topic since we're just starting, so any advice would do.
Thanks in advance!!
For PayPal, after receiving the payment into a single account you control, you could (as separate transactions) send some of that amount to other account(s) using Payouts, which you can request access to. Approval may or may not be granted for your use case.
Without Payouts, a manual sending from that single account to others can be done in the www.paypal.com account interface, using the Send Money feature.

PayPal Checkout - can we send funds to another person?

We have been using the PayPal Checkout (v4) for a little while now, and really like the way it integrates. This is the system I'm talking about:
https://developer.paypal.com/docs/integration/direct/express-checkout/integration-jsv4/checkout-flow/
We are using this plugin to do the magic:
https://github.com/paypal/paypal-checkout
Anyway, as I said we have this all working fine when someone is sending US the money. However, we also have a tool on our site where "customers" can send money to sellers. For this, we currently have the Adaptive Payments system.
My question: How can we use the PayPal Checkout tool to let people send to a given email address, while still getting the callback for the order? (so we can enter it into our system, to track it)
At first I thought this wouldn't be possible - but I've seen this exact same logic on eBay:
Is this something that is publicly available? Or is it just a "PayPal-Ebay" thing? (as they are effectively the same company, so maybe have access to different tools than the general public do)
Thanks!
Here's another option -- the payee option in PayPal's REST api:
https://devblog.paypal.com/setting-payee/
Using this, you can set the money to be moved to whichever paypal account you like with just the email address.
The PayPal Express Checkout v4 is based on PayPal Rest API which does not support spliting or sending payment to a given PayPal account that is not the API caller. Adaptive payment is the right to do so in PayPal. The PayPal checkout on eBay is only for eBay, the checkout experience may look similar but it's using different product than the Express Checkout v4.
The basic integration lets you set up a button for a merchant using only their client id:
https://developer.paypal.com/docs/integration/direct/express-checkout/integration-jsv4/basic-integration/
So if you can collect the merchant's client id, you can set up a button to make payments to that merchant.
Hope that helps!

Create paypal sandbox account to use for different clients

I am working with WordPress and will be setting up online shops using PayPal for multiple clients.
Can I create a single PayPal Sandbox Developer Account through my personal PayPal merchant account and then use that to test my integrations for different clients? In other words, I want all the transaction emails to come to me while testing and not to my clients.
Thanks in advance!
If sites are all going to create the same call then yes, that what I normally do, Il include my PayPal login and once I'm done testing I simply include the client PayPal login instead.

Verifying paypal account

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.

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.