I am working on a WebService that will accept payments from PayPal. There will be two sides (seller and buyer) and I will take commissions. However, I don't want to direct the payment instantly to the seller. The seller will complete the service through some conversations, but I want to guarantee to the buyer that it will receive the service as he wants and at the same time, guarantee the seller that he will receive his money.
Is there a way to reserve/freeze/hold the money from the buyer's PayPal account or do I need to take all the service money instantly to my account and then direct the money afterwards, after taking my commission, when the service is marked as completed by both parties? What is the optimal way to achieve what I am trying to do?
The delayed chained payment using Adaptive payment API would be the optimal way for your business pattern. It allows you to keep the money for 90 days during which you can pay the sellers their portion any time. You can refer to this page https://developer.paypal.com/webapps/developer/docs/classic/adaptive-payments/integration-guide/APIntro/#id091QF0I30YK to understand the basic function, and see this guide https://developer.paypal.com/webapps/developer/docs/classic/adaptive-payments/ht_ap-delayedChainedPayment-curl-etc/ for implementation.
Related
We're planning a web app that allows users to pay our clients directly through Paypal so there will be many different users and each will be paying a specific client through the website and there will be multiple clients.
These payments may be one-off payments but a few may be recurring.
We won't be charging a transaction fee for this so we basically want the whole payment amount to be deposited in the client's Paypal account (so they pay their own Paypal fees). I've looked at chained payments to be able to take a payment for a client but I'm just wondering what the actual flow of money is in a chained payment.
When a chained payment is made does Paypal deposit the payment go into our Paypal account first and then be paid into the client's account or does the client portion (in this case 100%) go directly into the client's account?
I'm asking as we're not sure how it would affect us in terms of accounting in our business if all the payment money was actually passing through our Paypal account (even if only briefly).
Or is a chained payment not the ideal solution for this?
Thanks,
Steve
If you are not taking a cut of the money, then I believe either Simple or Parallel payments would be a better solution. If you are going to be processing payments for a single buyer to a single merchant, then you can just use Simple Payments. If you are going to be processing payments for a single buyer to multiple merchants then you'd want to use Parallel Payments. More information on each of those APIs can be found here.
My use case: buyer buys service from seller, our app facilitates and guaranties the transaction. It should work in the way that buyer sends the money to us, we check if buyer received the service, in that case we send the money to seller. Otherwise we refund the buyer. Important is to have 2 payments solutions for the buyer: paypal account and card payment without account. The whole use case is international.
I'm testing this in sandbox environment.
Possible solutions:
Adaptive payments - Delayed chained payments:
Works fine. Disadvantage is that the seller must grant us permission so that the refund works. The problem here is that the permission api is under maintenance, so i am waiting for all the changes https://developer.paypal.com/docs/classic/permissions-service/integration-guide/PermissionsWhatsNew/ . Is this big deal?
Express checkout Authorize/Capture + Mass Pay:
Works OK. Advantage here is that in case of refund (void after authorize) we don't have to pay the fee. Disadvantage here is that I'm not sure if authorize holds the funds, so that even buyer without account paying with card cannot touch the money and I can capture them in 3 days. Another issue is that when I authorize 40$ from PayPal account with 30$ balance, I capture the whole 40$. How come?
I have no previous experience with PayPal I now the app should work on international scale. Please if you have any tips, articles or practical experience with this use case share it!
EDIT:
Delayed Chained Payment is great. I solved the issue by making my application the secondary receiver and the seller primary one. Seller must grant a permision to my app in case of refunds, but there is no better way.
However, now the issue is that when buyer pays without account (Guest Payment - with card) all receivers must be Business or Premier account holders:
Each receiver of a guest payment must be a verified PayPal business or premier account holder.
Source: https://developer.paypal.com/docs/classic/api/adaptive-payments/Pay_API_Operation/
The issue is that in sanbox it works even if the primary receiver (seller) is NOT Business or Premiere account. What is wrong?
1) Do you have yourself set as the primary receiver? If so, I don't think you would need to have permissions granted unless you had already run ExecutePayment to push the money to the secondary receiver account. If you're refunding before that happens you shouldn't need permissions (though I haven't tested this specifically, so I could be wrong.)
2) Regarding the fee, if you refund a payment that went through Adaptive then PayPal would refund the fee back to you, so you're not really gaining anything here as far as that goes.
The authorizations can be tricky. I theory, the authorized funds should be guaranteed for 3 days, but you still capture within 30 days (or maybe 60) even though it may or may not have funds available at that point (it would simply succeed or fail).
You could run a Reauthorization after the first 3 days to get yourself an additional 3 days of guaranteed funds, but I don't think you can do that more than once.
Much of that depends on the card issuing banks, though. Even though PayPal's docs may specify certain things regarding how authorizations work, if the card issuing bank has different rules associated with their credit cards that could throw things off.
As for why a $40 auth would work when the PayPal balance is only $30, I think that may be because of secondary funding sources. If you have bank account and/or credit cards setup in the account, PayPal would assume it can pull from those sources when the time comes to capture if the PayPal funds alone don't cover it. Depending on your use-case this may or may not be ideal.
You are mixing multiple concepts with this question. There are different PayPal PAYMENT products (adaptive with chained payments vs express checkout) and then there is the question of authorizations vs immediate payments.
Agree with Andrew that fees in the refund case is not the right basis to choose a solution. Much more significant is what the sender & receivers will see in their accounts (payments to/from you, or from/to the other party?), simplicity/reliability of the overall system (can an error on your side cause failed or multiple payments?), liability, and even regulatory questions (e.g., are you acting as an escrow service?).
If PayPal gives you an auth from a PayPal buyer it means that PayPal guarantees (with certain very limited exceptions) that it will honor a capture of those funds within the specified time and amount limits (which can vary with the specific scenario). PayPal might make that guarantee based on the sender's balance, credit cards, bank accounts, or combination of factors. You as the recipient needn't care - that is between PayPal and the buyer. (And it's PayPal's limits/conditions which apply to that auth, NOT the conditions of the sender's underlying credit card/bank/etc; PayPal protects you from that complexity.)
In contrast if the auth is from a card network rather than a PayPal account (ie the user gives card info rather than using a PP account, whether or not PayPal is your payment processor), then that network specifies and controls the conditions of the auth.
PS: if you are waiting for Adaptive Payments changes, you may have a long wait. Release 89 was quite some time ago and PayPal's priorities are on the RESTful APIs, not Adaptive.
I working on an e-commerce site where I need to do something like this.
When the users is on payment page, he should be doing the following things:
- pays a fee
- authorize the payment of an amount (which could vary, but not with a big amount...)
Up to here, everything goes find with PayPal Direct payment system.
But I need more. I need that the authorized amount at some point to be directly charged by another seller (or transferred)
Any chance I can do this with PayPal Direct (such the the payment would still be made in site)? Or is there any other method?
If you're receiving the money via DoDirectPayment you could use MassPay or Pay to send funds to a 3rd party. If you want the split to happen within the original payment you can use Pay by itself and set it up as a parallel or chained payment. See the Adaptive Payments documentation for more details on that.
(Disclaimer: I am employee) Balanced will work for your use case
capturing cards directly without sending user to a third party site
paying out to a merchant of your choice via ACH payout at a later point in time.
The caveat is it's US only so if your outside the US let me know and I'll see if I can find any other options for you.
I am using PayPal PreApproved payments for my crowd funding website, where project backers are only charged if the project is successfully backed.
I am worried that high rate of payments will fail when the PayPal API tries to collect the funds when a project is successful:
a backer might not have any funds in their PayPal account
a backer might close their account once the project is successful (to intentionally stop payment)
a backer might remove/cancel their preapproved payment
etc...
There are a number of ways that the payment could fail which would mean that the project owner would not get their funds.
Can anyone suggest a way of tightening or securing payments. Please note, that PayPal will only allow you to use PreApproved payments for crowdfunding. Please also note that project owners need to be able to receive the funds from my site. Sometimes, these funds can be as small as $10 or up to $10,000 so we need to use PayPal to pay them as there is not other method of getting the funds to the project owner
I've implemented Paypal Adaptive payments and used them for payments at http://www.wethetrees.com and we had the exact problems you are describing. The capture rate is almost random, we were down to 35% with one campaign and had to manually send all backers invoices.
When capturing we had backers with closed/unauthorized accounts, insufficient funds, unavailable payment methods etc. We switched to just doing direct capture for a while, which is great since we get 100% of all pledges, but Paypal closed our account without notice when one of our campaigns mentioned the word "Cuba".
The solution in the end was to scrap Paypal so now we're using Wepay and Dwolla, and we're considering Bitpay (Bitcoin) as well. Seems to like Paypal wants to kill crowdfunding or doesn't understand it. Anything less than a 90% capture rate is totally unacceptable and will cause projects to fail.
Preapproval isn't the only thing they'll allow you to use. That's just one part of the Adaptive Payments API, but you could go with a delayed chained payment, too.
This way your account can be treated sort of like an Escrow. You can use the Pay API to create payments in the system that are split between receivers accordingly. Only the primary receiver would get paid at first, though, and then you can call ExecutePayment to submit the secondary payments from the primary account within 90 days.
This way the primary account holds all of the funds so they're available to pay out when the goal is reached. If the goal is not reached the payments could be refunded.
I have a Paypal Standard gateway set up which pays the business account specified in the input no problem. I would like to make it so that at the same time, the customer is also paying a fee to the website - so they're paying our Paypal account a fee.
E.g. User buys a product (clicks Buy Now)
Goes to Paypal screen, and when the customer confirms the payment it will send the following money:
£10 - to the sellers account
£1.50 - to our account (fee)
I've heard a few methods such as Chain payments, Parallel payments and x.com says Adaptive payments, but I've not been able to understand the best method for doing this with a Paypal Standard integration.
Can someone point me in the right direction with this? Thanks in advance!
Adaptive Payments is a general term for the API's that handle this sort of thing. Chained Payments and Parallel Payments are under that same umbrella, so to speak.
Both chained and parallel payments will split your payment between multiple accounts like you're after. The primary difference is that the payer will see the split during checkout with a parallel payment, but you can hide that with a chained payment. You can also delay the secondary payment(s) using a chained setup.
If you happen to be working with PHP I'd recommend using my PHP class library for PayPal, which will make all of this very simple for you. I even offer 30 min of free training if you need help getting started, which is generally plenty of time to get you going if you understand how to work with array data.