I'm building a site where one user can use PayPal to buy an item from another user. I want the money to go directly from one to the other while I just handle the IPN and the interface. I've set up the encrypted button to use cmd = _s-xclick and for the encrypted data: cmd = _xclick, business = the email of the seller and email = the email of the buyer. I'm having some issues completing the transaction. For example, User A has a PayPal account, User B does not. Both have an item being purchased by the opposite user. Clicking the "Pay with PayPal" button for User A (to buy User B's item) yields:
"The merchant is not a business or premier PayPal account. This feature is only enabled for a business or a premier PayPal account holder."
Clicking the "Pay with PayPal" button for User B (to buy User A's item) yields:
We were unable to authorize the transaction. Please contact your merchant.
I'm assuming the first message is because User B does not have a PayPal account, but I thought that PayPal will still accept the payment and hold it in a temporary account until that user signs up.
I'm also assuming that the second message is also because the buyer (in this case User B) doesn't have a PayPal account. But I thought PayPal would just give them the option to create one right there or use a credit card to make the payment.
Am I missing something (e.g. is there a different variable I need passed)? Or do I have to somehow confirm that a user has a PayPal account before allowing them to buy/sell an item.
PS: I'm pretty sure, but I'll have to confirm, that it works if both parties have PayPal accounts and the seller is a business/premium account.
This way is not a great solution because you have no way to check or guarantee that both parties have a PayPal account. I recommend using Adaptive Payments (Chain Payments). This will allow you as the PayPal account holder to run each transaction and it will send the money to the appropriate seller PayPal account, or e-mail them to let them know they have money waiting if they do not have a PayPal account, so that they can sign up and claim the money.
We recently began receiving this extremely unhelpful error message and we had to contact Paypal Merchant Technical Support. After much back and forth received the following response:
Unfortunately, we PayPal are facing some difficulties with encrypted button currently and our developer team is resolving this issue as we speak. In the meantime if you don't mind could you create a secondary email in your account then set it as primary, next regenerate the button again and test it out. For now this is the only work around they provided if you require to use encrypted button, give it a try and see if its worked, let me know if there's anything else you need, I would be happily assist you. Sorry for the inconvenience caused.
Tried that and it worked. It made me want to curse at someone, but it worked.
Related
The following link used to allow our customers to pay for an item, or amount due, without an account. We use this when we need to re-evaluate shipping costs and send an automated email to let the customer know and pay the balance due-
https://paypal.com/xclick/business=paypal#ourbusiness.com&item_name='Ordernumber'&amount='amount'
(There are values populating the ' '. )
This link now brings us to a sign in page for Paypal. After sign in, sending payment works fine. There is no "Use Credit Card Option"
The issue is allowing those without Paypal to pay.
In our business account settings we have enabled the "Paypal Account Optional" but it doesn't seem to have any effect on the URL method.
There are other link structures that work similarly. Some are noted in help documents, some from other users-
https://www.paypal.com/cgi-bin/webscr?cmd=_xclick&business=...
https://www.paypal.com/cgi-bin/webscr?cmd=_donations&business=...
Donations aren't what we're going for, but it does allow for payment without an account.
So what's the new URL structure to allow customers to use a credit card to pay for an item without making an account?
Is this still possible?
I have a simple Paypal payment button:
on production of my e-commerce website. It works. Many customers have already bought items with it.
But now I'd like to see exactly the payment workflow from a buyer's point of view, from the start, until payment successful + IPN mail + auto-redirect to payment-success page, etc.
Paypal sandboxing seems incredibly complex, one has to create a Developer account, then 2 sandbox accounts, a facilitator (?), a buyer one, etc.
It also seems that Paypal duplicates the real content, into a virtual sandbox button, etc. This is really complex.
All I want is to try my already-working production PayPal-button with a single sandbox buyer account. How to do that?
Is there a way to test a production Paypal button with a sandbox account (with, say, 10000€), and to proceed to the payment like would do a real customer?
... instead of having to create 3 accounts (Developer + Buyer SandBox account + Seller SandBox account)
PS: I've read many docs about sandboxing in Paypal docs, but they have very old docs (deprecated), some old docs, some new docs, some very new docs, + some of them in French with different content to English version, etc. I'm totally lost!
Actually you can test payment buttons I'm testing one of those right now.
At first it seems more complex that it needs to be, but all you need to know is that the sandbox system is a different enviroment, so the only way to test a sandbox payment button is a sanbox account.
Go to your developer dashboard, create 2 accounts, 1 for the seller (pick merchant account when creating this one), 1 for the buyer.
Log in to sandbox.paypal.com with the seller, create the button as you already did, set the ipn and all you need. Place the button in your site, now test your new button and when paying log in with the buyer (sandbox account) you previously created.
There's no way to test environment for paypal buttons. I sent a few messages to them asking the same thing. The only way to test that is get int touch with them through your account and tell your test user, then they won't charge you.
Here's a translation I received a few weeks ago:
In this case, the Sandbox environment does not allow payment on PayPal
buttons because there is no sandbox system for buttons, only for email
integration or PayPal account API.
In this case we recommend that we send a URL of the buttons or even
your site already with the buttons registered.
That way any analyst can do the actual payment test for you.
Our test balance is only R $ 50,00 reais, so the buttons can not
exceed this value with product price and freight.
I have an app that is both Web and Mobile. I know what I am trying to do is a bit messy but I was hoping someone could help guide me through the options please. I have done some reading and check replies on Stackoverflow but I'm am getting confused.
The main criteria here is I do not want to have the users log in to PayPal every time, approve a transaction every time. So I guess part of the solution is to have them set up an Agreement to pay ?
I have a Business account.
a)
is it possible to transfer funds from a users bank account they have with paypal, to some other paypal account. In other words make a payment from their bank account to a specified paypal account they do not own (namely some merchant)
b)
is it possible to transfer funds from one paypal account to another. Lets say mine to someone else's.
c)
is it possible to transfer funds from one paypal account to another. Lets say someone else's to mine.
d)
is it possible to transfer funds from my paypal account to someone else's bank account.
e)
I guess PayPal IPN could be used for instant notification ?
All of the above needs to be done in the background without user involvement apart from them entering the amount, and say yes proceed. No passwords or bank account details to be entered etc.
I would preferably like to do the above on a web server rather than on a mobile device. So within server-side code.
thanks in advance
It is possible to do some of what you are asking using a Billing Agreement. In a BA, you agree that I can charge your Paypal account without a further login. It's a one-time setup.
You can use the MassPay API call to pay anyone. All you need is their email address. There is a fee to you to do this, tho.
You can make third party calls (where I make calls on your behalf) so it's theoretically possible for me to issue a MassPay on your behalf.
You cannot send money to a bank account (i.e. ACH-style). You can send it to their paypal and they can log in and move it from there.
All transactions will send an IPN if you have one specified.
Hope that helps
I am trying to setup a chained payment app, and got the application approved. I was hoping that like in parallel payments, chained payments can have users with or without a registered paypal account. But with email accounts that are not registered, the api returns an error code 520009 saying the account 'email#domain.com' is restricted. I did see the following link having the same issue.
https://stackoverflow.com/a/10262241/903978
Though in their dev doc says anyone with an email can get paid/ notified (except the app owner who needs a verified account), It is throwing an error. I have posted a ticket to paypal/mts but have nt heard from them yet.
My app case is,
1. User gets paid eg $100. They are the primary recipient in chain.
2. application (secondary reciever) gets a cut of this payment. say $2.
Any one know if chained payments need primary as well as rest of the recipients to have valid paypal accounts and not just an email? Or is there something in the call that allows primary recipients with just an email address?
( I know that application owner needs a registered paypal account).
Thanks
Paypal/mts confirms that their documentation is incorrect. Chained payments require confirmed paypal accounts and not just an email ID. They said they will update the documentation.
I can confirm this also, Paypal Adaptive Payments with Chained Delayed payments does require the secondary receiver and the primary one to be verified, but there seems to be some confusion about 'confirmed' and 'verified'. When pressing PayPal on this we discovered the criteria differs (or so they told us at Eco Market) and that users sometimes have to have confirmed their email address (simply clicking the verification email they get sent), but sometimes also have to go a step further and verify their account (going through the other steps like bank account confirm). They told us is varies based on country sometimes but for security reasons didn't tell us much more on how they do this (not overly helpful).
What we do to handle this is catch the error and as a marketplace we automatically contact the customer/seller to inform them the order cannot be processed due to the sellers account not being verified.
Going a step further, you could also validate sellers (again in a marketplace model) accounts by using the exact same API to take a small payment from them (which could be refunded using the API), which would allow you to validate sellers to make sure that they had a verified account before signing up.
Hope it helps if anyone else has any experiences of this and how they handle it I'd love to hear.
Jason Dainter
Eco Market
In my experience, in adaptive payments, (in particular chained payments) you need this environment:
a) the app holder/developer must have a registered and verified paypal business account (the premium account is ok too but not the personal)
b) the recipients must have a business account
if the amount doesn't exceed the limits it is ok if it is not verified too but if the amount exceeds the limit you'll have a problem in the chain.
c) the sender must have a paypal account, a simple personal account will fit.
Sometimes (rarely) happens that one payment fails due to restrictions on the sender email. The most frequent case I saw this happens was when the sender made a preapproval with one e-mail and then, before the preapproval was payed, he/she changed the e-mail in his/her paypal account. Silly but paypal has no control on this environment.
Hope this is helpful for you.
Cheers, Fil.
Genoa, Italy
I'm changing my online store right now. I decided to remove accounts altogether... so that the users can go straight to paypal express checkout and just pay.
I'm doing the paypal part first, then i redirect back to my site to let them fill in a shipping address, billing address, and then review the information before submitting the order.
So far i noticed that Paypal always sends back the same PayerID if you are logging into a paypal account. Also, if you don't log into a paypal account (and just punch in your credit card), it will return the same payerID for that credit card in the future.
Is it safe for me to keep track of shipping address in order to create an address book and link them to the payerID? That way, returning paypal customers will be able to select a saved address...
Does paypal recycle these IDs... or are they always going to be unique and there is no fear of me showing someone elses information to another customer...
Thanks.
No, PayerID's are unique to each account. They won't ever change for the same account.