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.
Related
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.
We run a service where, amongst other things, members can exchange "digital goods" and are setting up to allow PayPal adaptive payments to cover to 'purchase for real money' aspect.
PayPal requires that we set the chain like this:
buyerMember -> sellerMember -> usTheService
The problem I am experiencing (payments themselves work great!) is that the buyer and seller members can look at their PayPal logs and see the name, mailing address, and maybe even the phone number of each other (mainly the sellerMember, as 'merchant' sees pretty much everything about the buyerMember
Our members would prefer not to exchange their physical mailing address (or, probably, in some cases not even their PayPal email account address) with other members.
Is there some way that I, as the adaptive payments API use, can suppress this personal information from being available between the members?
I see the same issue and the only solution I have come up with is not to chain payments. Instead, after I receive payment confirmation with payment details (e.g. which product was purchased), I invoke massPay to the seller. Since these are digital goods, I can make it real-time if I choose. But, as per policy I established with sellers, I delay payment (at least) 48 to 72 hours to be able to handle refund requests from the buyer.
I am using paypal to handle subscriptions to my website and am concerned because PayPal emails users each month when their payment is sent. I realize this is very transparent but I see it as detrimental to my business. Other subscription services I purchase don't send me an email each month reminding me that I am paying them and how to cancel. I'm not trying to hide the fact that I am charging my users but I also don't want paypal activelty reminding them that they are paying money and giving them a link to cancel their accounts.
Does anyone know how to stop automatic emails from being sent from the merchant end or can it only be done by each individual user?
If it can't be done does anyone know of other services I can use to run my subscription billing that give me that control? Thank you!
I currently manage 3,000+ subscriptions via PayPal and have used PayPal for subscriptions for three years. You are correct, this is for transparency. I've never seen the option to disable this, and I doubt PayPal would ever offer it. You'll learn that PayPal is much more interested in catering to buyers than sellers. They keep the buyer happy to the detriment of the seller. For example, PayPal recently reversed 7 months of subscription payments because the buyer called into PayPal and claimed it was unauthorized. We keep plenty of records to prove this isn't true, but PayPal consistently rules in the buyer's favor regardless (we have, yet, in three years to "win" a claim against us). There is very little protection for sellers of digital goods.
Depending on how you decide to run your business, the payment reminders can be used to your advantage. I often receive emails from buyers who claim that they've canceled, yet, we've charged them again, or, they claim they've been charged for months and didn't know it. Thanks to the emails from PayPal, I know, without a doubt, that they were notified each time they were charged, and that if they had actually cancelled, they wouldn't have been charged.
There are many other payment processing services like PayPal that are more "hands-off", but their rates are equal or greater. The only one I've found that's comparable is Payza. Again, there are others, but you have to weigh the benefit of full control (including being the help desk for payment issues), and higher rate, versus PayPal's practices.
We are a UK-based marketplace site that wants to never force buyers to sign up for paypal. We allow users to set up customized stores through our site, and our second requirement is that these users be able to become sellers with only a basic paypal account. When a buyer makes a purchase, we are the primary receiver, taking 15% and passing on the entire paypal fees to the secondary receiver (user), as well as all the remainder of the transaction. My question is: What's the best solution paypal offers for this? It seems that chained payments would be, but if I understand correctly the Website Payments Pro system is the only one that guarantees that buyers outside the UK wouldn't need a paypal account. Is there a way to take the money in ourselves with Website Payments Pro and use the API so it transfers the 85% (minus the fees) to the user's paypal account?
It depends on what approach you want to take.
I would prefer Chained Payments as it allows guest checkout (credit card payments outside a PayPal account) with certain restrictions and will easily allow the user to receive the funds and automatically forwards the 15% cut to your account. This removes the need to collect funds outside of the payment flow. This means no invoicing or no lost dues!
Website Payments Pro only offers credit card payments however you would also need to offer Express Checkout for PayPal payments as well. You also have the flexibility of hosting the order form so you control what the users see. The downside is you'd have to collect funds from the user outside the payments. Such as monthly invoicing, billing agreements or manual processing.
Here is the criteria we use to allow guest checkout. Please keep in mind these are due to rules and regulations, not PayPal's choosing.
The credit card has a lifetime limit of 10 purchases outside a PayPal account
The user's email address must not be attached to an existing PayPal account
I don't have a direct answer for you but hopefully this helps make your decision.
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.