I'm currently trying my app to notify the buyer if he/she has no funds. But every time I use a paypal test account without funds, the payment still proceeds. What could be the cause of this error? I have negative testing on for my facilitator account.
If you have a credit card attached to the sandbox account it will use that as the funding source.
With negative testing, though, what you do is send a specific amount in the transaction request in order to get a specific error code back for testing.
See this documentation for more details.
Related
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
I want to simulate bank refusal(PayPal sandbox account) when attached card does not have enough money in it.
PayPal account with 0 balance.
Card with balance of 300 money(PayPal have no idea it is so).
I make payment, exceed this amount, PayPal refuses payment after I click "Pay Now".
Currently if test card is attached to PayPal account, it does have unlimited funding.
Of course, one of options is to create/use LIVE account on LIVE environment with card that have almost no balance and buy product that exceeds balance, but I would not prefer that.
Any experiences/ideas?
Thank you.
Take a look at the PayPal documentation: Testing Error Conditions with Negative Testing
You basically enable the negative testing on your sandbox account, and then you can trigger specific error codes by sending the amount that matches the error code.
For example, to trigger error code 10755 you would use 107.55 for the amount in your payment request.
I am trying to test PayPal payments that are authorised at a later date, examples being Pay on Delivery or a Bank Transfer.
I have created a new sandbox account with no credit/debit cards and £0 in the PayPal balance but when I come to make a payment I have to add a card.
I have set up a bank account and agreed the mandate so I must have something set up wrong somewhere because these type of payments happen in LIVE and we have an issue with the IPN message that comes X number of days later once the payment has cleared so I am trying to reproduce this to investigate.
Have you tried using the IPN Tester? (here after you log into your Sandbox account) https://developer.paypal.com/developer/ipnSimulator/ .
All sorts of conditions that you can test your 'listener' process against there.
I've been working (or should I say struggling) with the PayPal SDK to get recurring billing running for my website. I managed to get it to work, however I do not see how to automatically "claim" the money?
Basically what happens is:
The profile is created, after 24 hours the payment is done and I see the following in my merchant sandbox account:
It seems I need to manually accept the payment for the amount to be added to my PayPal balance.
Is there a way of doing this automatically?
This is usually caused by an issue with the recipient's account. Most commonly, The recipient hasn’t confirmed the email address on their PayPal account. Once the email address is confirmed the amount would automatically post to the balance on future payments.
We are running an e-commerce web site on Ruby on Rails and for the processing of Credit Cards we use the ActiveMerchant plugin to interface to our PayPal Website Payments Pro account using our API credentials.
As part of the checkout process we first call the authorize function on our gateway object and then, after some further checks, we perform the capture part.
We have lately been experiencing a bug where an amount gets reserved twice on a customer's account: one charge being only the authorization and the second being the final purchase. So to the client it looks like we are billing him twice (once for authorization, once for final purchase) while we are actually receiving the money only once and the "second charge" on his account is simply an authorization that we don't clear for some reason. (This seems to happen particularly when PayPal FMF rejects our transaction and we re-process.)
I am trying to troubleshoot this by creating PayPal Sandbox Accounts for Buyer and for Seller. I am running through the code line by line via Rails Console and simulating different conditions to try and replicate the error. However, my successful Credit Card transactions only appear in my "seller"/"merchant" account and not in the "buyer" account on the PayPal Sandbox so I cannot see what the effect of my code sequence is having on a customer's card. This post seems to indicate that that is just the way things are and that it is indeed not possible to test the effect on Buyer Credit Card side. This post suggests using PayPal Express Checkout but that is not what we need on our site as we're specifically looking at Credit Card transactions here that are integrated to our site.
How can I test the effect of my code on a client's Credit Card? Is there perhaps something I missed in PayPal or is there maybe some mode/log/monitor in ActiveMerchant that I can use to see this? I need to find the line of code that is causing us to authorize twice.
If the initial transaction is being rejected by FMF, and then you reattempt another transaction this would cause a second hold on the buyers card as this would be a completely different transaction attempt. The bank may have approved the first transaction, but then the FMF filters declined it based on your settings. As far as the bank is concerned, it is still a valid charge that was approved. So when you run your second attempt, this will cause a second hold on the card for the same amount but for a different transaction.