Paypal Adaptive Payment sandbox account and unilateral receiver not allowed - paypal

I have some trouble understanding what's wrong with my sandbox accounts when I try to use Paypal Adaptive Payments. After hours of fighting, I guess it's time for me to ask for some help.
The problem is quite simple. When I use the credentials I generated in the Sandbox Test Accounts page of my account, our system is returning an error "Account not found. Unilateral receiver not allowed in chained payment is restricted". When I'm using the test credentials provided by the company that developed the escrow module we are using, it's working. As we did this test for exactly the same request (just API credentials are changing), my guess at this point is that there is something wrong with my credentials.
My Paypal account is verified and is a business account (not sure if relevant as I'm using the sandbox right now). The sandbox account I'm using is also verified and a business account. Do I maybe have to do something for Sandbox API accounts to work with the adaptive payments?
Regards

Related

paypal sandbox - verify identity

I am testing my payment integration using PayPal Sandbox
When I go to make payment using a sandbox account, the following message displays on the payment page
To use your balance next time, go to your PayPal account for an
identity check.
If I log into the sandbox account, I am not seeing any way to do this.
How do I set up the sandbox account so that it can use PayPal funds for the payment rather than the credit card option?
It doesn't matter how you are funding the payment in sandbox. There's no actual reason for you to be bothering to care about this issue, since the result of a completed PayPal payment on the receiver end will be identical.
But since you ask, you can create a bank verified account via https://www.paypal.com/signin?intent=developer&returnUri=https%3A%2F%2Fdeveloper.paypal.com%2Fdeveloper%2Faccounts%2F

Braintree sandbox accepts non-existent PayPal accounts?

It seems to me that you can type in any random username/password combination and both the drop-in UI widget and the backend will accept it as a valid PayPal account. The payment will go through and everything.
Is there a way I can set Braintree sandbox to only accept real PayPal accounts?
Full disclosure: I work at Braintree. If you have any further questions, feel free to contact support.
The Braintree Sandbox allows you to pass any email address and password you like into the PayPal dialog, as mentioned in Braintree's documentation. You can test with the fake PayPal nonces found on the Testing and Go-Live page, but keep in mind, Braintree didn't actually design the PayPal sandbox for handling end-to-end tests. All PayPal transactions made in the sandbox use the same, fake PayPal account. Because of that, there's no way to configure your Sandbox account to accept real PayPal accounts. We recommend that when you go live, you perform a few low-value sale transactions with each of the payment methods you plan to accept, including PayPal.
You can test cases where the information in a PayPal account is bad in the same way you would test a bad credit card: use one of the fake invalid nonces from our Testing and Go-Live page. If your code is handling those cases correctly, you can be confident that it will be able to handle a PayPal account with bad information as well.

How do I verify my receiver for paypal adaptive payments

I have what seems to be an uncommon situation. I need to accept payments on my website and send them to various merchants that do their business though my app.
So the payment flow is:
Payer -> My App -> My Customer
This flow seems to be exactly facilitated by paypal's adaptive payments api and while I have pored over all their integration guides, there doesn't seem to be any documentation for even simple email to account verification.
My question is, how can I verify that an email belongs to a verified paypal business account, or perform some other hand shake verification? Is there a way to do that, or even a good workaround? Thanks!
Found this API endpoint today:
https://developer.paypal.com/webapps/developer/docs/classic/api/adaptive-accounts/GetVerifiedStatus_API_Operation/
It seems to do what I wanted, and it at least indirectly test account existence and definitely tests the verified status.
One caveat that I would add for posterity is that in sandbox mode, you may only test against sandbox accounts that you have created for your app.

Accept PayPal payments using an unverified merchant account

I'm looking forward to use PayPal Express Checkout for Digital Goods. I'm using PayPal Business account.
When I was demonstrating in Sandbox, I was getting
We are unable to complete your request at this time. Please try again
later paypal digital goods. We apologize for the inconvenience.
When I verified my PayPal sandbox account it works fine.
Now, for live version I want to use unverified PayPal account, since I'm not ready to be verified yet. I have a plan to be verified in future but not now. But I really need to integrate PayPal payment opt asap. Please let me know if there is any way to accomplish that.
No you must be verified by paypal in order to use a business account. There are many ways to verify and it should be a simple process taking no more then 2 days.

PayPal API credentials for sandbox

I'm trying to implement recurring payments with PayPal in PHP. I found this example, which I'm looking into, but I need some API credentials. I created a PayPal sandbox account, and from there I created a merchant account. I'm trying to get the API credentials for that sandbox merchant account to replace the values in the example, but I can't find where. All the guides I find point to non-existant parts of the sandbox user interface. Does anyone know where I can find the API credential details for sandbox merchant accounts?
Thanks.
I'm beginning to I loathe PayPal. Spent an hour on their site looking for this, only to find it here on SO (works as of Oct-2014):
Live: https://www.paypal.com/us/cgi-bin/webscr?cmd=_login-api-run
Test: https://sandbox.paypal.com/us/cgi-bin/webscr?cmd=_login-api-run
To get API credentials in sandbox you must use the API Credentials menu in sandbox itself, instead of logging into the sandboxed account.