How to test failed PayPal transactions through Braintree SDK - paypal

I am using Braintree SDK on ASP.NET Core and I can create transactions using the access code generated from developers.paypal.com however all transactions are accepted by the payment processor and gateway.
I've tried to enter the magic amounts that are supposed to trigger declines as listed on the Braintree documentation however I think that they only work when you use a Braintree sandbox access token and not a PayPal sandbox access token (mentioned here). I've tried using an error code as an amount as documented on the PayPal API documentation here but that was accepted as well as a valid amount and the transaction went through.
Do I have to sign up for a Braintree sandbox account and to be able to get one of the decline codes documented here?

Full Disclosure: I work at Braintree. If you need any further assistance, feel free to contact support.
If you are using the PayPal access codes, in order to receive the decline codes, you'll want to use the mocked checkout flow and will need to setup a Braintree sandbox.

Related

BrainTree & Paypal Account Linking

I am using Paypal for payments in my software. According to recent announcements from Paypal, /payments end point is deprecated and will not be working anymore. So they have mentioned in their API docs to use BrainTree for payments.
So I created a sandbox account for Braintree and link my Paypal account with it. Both accounts are in Sandbox mode.
According to following documentation, these accounts will not share data because these are in sandbox mode.
https://developers.braintreepayments.com/guides/paypal/testing-go-live/ruby
I have some queries regarding this, which are mentioned below:
Will these accounts share data with each other in live mode ?
If they share data in live mode then,
On Braintree, customer creation is required but on Paypal there is no requirement of creating a customer to make payment through card. So how they will share this data ?
Will they share cards details also? If yes, then Paypal returns card id which is used for transaction and Braintree returns Payment method token for each card to be used for transaction later. Will these details will also be shared ?
How amount can be refunded from Braintree ? Is there any end point for this ? Or for refund I need to use Paypal refund api ?
So, these are some questions which are striking my mind. If anybody can answer these queries, it will be very helpful for me work on Braintree.
Thanks!

UNAUTHORIZED_PAYMENT ERROR

While I am using my sandbox credential with test card my code is working fine and response.Status is coming as "approved" but when I try live credential with my real card its throwing "UNAUTHORIZED_PAYMENT" error.
This is the error I got:
{"name":"UNAUTHORIZED_PAYMENT","message":"Unauthorized payment.","information_link":"https://developer.paypal.com/docs/api/payments/#errors","debug_id":"c446507b37b6c"}\"https://developer.paypal.com/docs/api/payments/#errors\",\"debug_id\":\"c0d38fae9eade\"}"
The difference between my sandbox account and live accounts are,
Someone please help me to overcome this issue.
I got the same issue. It is not said load enough while playing with the sandbox, although Paypal knows exactly my Locality.
Anyway, only US and UK developer can use REST API for vaulted credit cards payments.
From that link:
https://developer.paypal.com/docs/faq/#international-developer-questions
"The REST API supports a number of countries and currencies. The REST API provides simple payment processing for common business needs, including PayPal payments, direct credit card payments, authorization and capture, and refunds. For more advanced payment solutions such as parallel and recurring payments, you can use the NVP/SOAP APIs."

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.

Accept paypal with braintree production account

With Braintree sandbox account, PayPal is enabled by default. With use of dropin js and sandbox API keys, payment form looks like this for me in sandbox account.
I am using following code as given in braintree documentation,
<script>
braintree.setup(
// Replace this with a client token from your server
"{{$clientToken}}",
'dropin', {
container: 'dropin'
});
</script>
But when I use Production API keys, the PayPal option is not visible anymore. I only see credit card form. I have linked PayPal merchant account to Braintree and PayPal seems to be enabled.
Reposting from a comment as I think this may have gotten to the bottom of it.
I'm one of the developers that works on the Pay with PayPal product at Braintree. PayPal should be enabled for you in production once you've linked your account. There are a few things that could be going wrong, e.g. if you're using a currency that isn't supported, or using a very old browser and a web page that doesn't use HTTPS.
If you're still having issues getting the PayPal button I encourage you to drop an email to our support team and they will help you see what the issue is.

Credit Card payments not working Paypal

Hi I am implementing paypal API on my website where different vendors come and sell their products.Currently I am using sandbox environment.Payments are working perfectly using paypal account but payments are not working using Credit Card.Getting following error:
We are sorry, we are experiencing temporary difficulties. Please try again later. If this error occurred while making a payment, avoid duplicate payments by checking your Account Overview before resending a payment.
For some browsers, this problem can be resolved by clearing or
deleting cookies.
Message 6838
Any ideas?
If this is an issue that is happening with every transaction, make certain that you are using live credentials with live endpoints.
If you are using Express Checkout make certain you have the correct API Signature credentials.
Below are two links for going live and correct API Endpoints:
PayPal Developer Site, Going Live
API Endpoints
If this is happening on only a handful of transactions it may be a technical issue.You can submit a ticket to PayPal Merchant Technical Support