I've suddenly been getting this error since yesterday when paying multiple accounts: "Invalid request: We had to block this payment because it didn't comply with regulatory requirements".
This was working fine last week (and have been so for a long time) but started returning this error yesterday. I can't find any info about it and what needs to be done, can anyone help?
Without more information about the accounts involved and the full error message returned, it's only possible to guess that it might have to do with the country or currency of the accounts involved.
Contact PayPal for support
Related
I am integrating Paypal into my website and I am currently testing it using 2 sandbox accounts (1 merchant and 1 buyer). I have tried about 30 transactions between them and it is all working but just now, Paypal has blocked the transactions with the error PimpAbort with return code 4002. I searched online and it seems this error occurs if Paypal decides this to be a risky transaction, most likely because I keep sending money from the same buyer account to the merchant account. I want to ask it is possible to change some settings so that I disable this checking? Or is there an alternative method?
I think there may be an issue on PayPal's end. I've had all my sandbox transactions end with that error yesterday and today.
we test our application on PayPal sandbox.
I was able to make payment form one account (ewa.tkacz#zoho.com) to another (ewa.tkacz-facilitator#mmigroup.pl), and status of this payment is completed on payer account (payment ID 3F335538TV000622E), but on receiver business account I can't see this payment and can't get it by API.
This question is to PayPal, as You recommend to ask on Your forum on Stackoverflow, however if anyone faced similar issue, please vote or response.
I don't believe in what I see; it seems I make some stupid mistake... I wasn't able to find any such issue on Google, here and in PayPal technical support.
I have reviewed both test accounts and I see transaction 3F335538TV000622E (buyer transaction ID)/28A51825L7124154N (seller transaction ID) appearing correctly. There is a difference in the date for the two payments due to the default timezone for the accounts. Based on your screenshots, you are seeing the correct information as the transaction would show on 6/3/14 in the ewa.tkacz-facilitator#mmigroup.pl as it defaults to PDT and 6/4/14 in the ewa.tkacz#zoho.com which defaults to BST.
I integrated PayPal in my web shop in order to allow instant payments with automatic product delivery (already had this before but only with instant wire transfers via sofort.com). I integrated it with the help of the example provided by PayPal (I'm using ReviewOrder.php, GetExpressCheckoutDetails and DoExpressCheckoutPayment).
It's working great if they pay with PayPal balance or a linked credit card. However, some customers from Germany don't have balance in their accounts but only a bank account linked to their account. The payments go through and they receive their product, however I noticed the payment status would remain "Pending" for 1 month and change to "Expired" afterwards, so effectively no money arrives.
Why is this happening? Or is there any way to deny such payments? (Payments from backup funds)
Any help would be appreciated.
Its hare to day with out looking at the transaction specifically. But there are several things that can cause your payment to be pending, such as your preferences that you may have set in the account. Check to make sure you dont have your preferences set to ask me before accepting a payment in a currency that you do not hold. Did the buyer pay with an eCheck? If so, it could be waiting for the payment to clear. If this is in the sandbox, you have to manually clear the payment. If you are still not able to determine the cause of the pending payment, if you provide the transaction id, I will check it on my end.
Hey guys I managed to find a solution to this odd problem after all.
It turned out I had the following code in my implementation where I actually initialized the payment process:
$_REQUEST['paymentType'] = "Order";
This was a mistake though, since this payment type won't place a hold on the funds and if the DoCapture call is never called this payment will remain pending for about one month and then expire entirely (as described in my question, so this is what actually happened to me). The bad thing is that it's impossible for such payments to even accept them manually from within PayPal (not even the local PayPal phone support was able/wanted to accept these payments for unknown reasons because they told me they'd come up with a solution and contact me via Email within 24 hours but they never did).
So in order to fix this issue I changed the payment type to Sale which instantly captures the payment rather than waiting for sort of approval or a capture call. It worked fine for two weeks now and I think I'll leave it like this now.
$_REQUEST['paymentType'] = "Sale";
I lost about 110€ because this stupidly trivial detail but at least it's working fine now and I was able to re-enable PayPal as a payment form. I hope they'll at least add an option to manually accept these payments if the DoCapture call was not implemented because it worked fine without it for most of the payments as well and after all this is still about real money, so this absolutely would be an essential thing to have....
This can happen also if you are trying to accept a payment in a different currency of your account. To avoid that you must create a "PayPal balance" in the currency of the payment.
IPN is also giving hints on the pending reason in this case:
[pending_reason] => multi_currency
NOTE: I've already looked at reasons for paypal 10544 Gateway Decline error. This is happening in production for us.
We use DoDirectPayment and DoReferenceTransaction with our customers to set up a regular payment transactions and when we get failures, the vast majority of them are for this error code. I've asked for details for specific transactions before and was instructed to get our client to contact PayPal directly for security reasons, which is understandable.
But I was wondering if there was something more to this particular error than the rather vague description implies. E.g. is there some setting in the account settings that causes it to occur more often than it needs to? Is it because we are a Canadian merchant accepting credit cards from other currencies?
We don't really like asking our customers to contact PayPal about this because it feels like we're passing the buck.
This is a catch-all for a variety of messages that unfortunately aren't spelled out in the Payflow Gateway Developers Guide but do appear here Classic API Error Codes with a vague explanation of:
The transaction was declined by PayPal. Contact PayPal for more information.
We recently switched to Paypal from Paymentech (but still using Payflow Gateway). About 15 of our customers with monthly service billings began getting declined. These were all customers whose credit cards were approved for years on Paymentech.
Paypal told us that (for security reasons) the customer had to call Paypal directly for more information. One of our customers did that and reported that Paypal couldn't tell them what was up so they lifted the "ban" on that card. Another customer reported that Paypal support couldn't understand that this was a problem with a Merchant account, not a Personal. Yet another left us for the competition.
In the end, I wrote code to trap for this error and print the following message on our commerce site and email notification:
Our payment processor, PayPal, was unable to process your credit card. Please try a different card, or contact PayPal Support at 888.221.1161 to determine why your credit card wasn't accepted.
Furthermore, I've ask that this be escalated within Paypal because this is bit of a hack.
There is not a lot more specific reason for this error, it is vague due to the number of reasons that can cause this. Usually this is due to an issue with the buyers account or card, in which case the buyer would need to contact PayPal to resolve the issue.
I get a 400: Bad Request error when trying to make payment in GBP, where as USD is working fine. I am getting this error since last few days earlier it was working fine, I think the issue has started after Paypal has made changes to its site rencently.
Also all the payment is going to a default sandbox account (it has a word facilitator appended to it, I did not create this account) I am not sure if I can change and set a sandbox account that I created as default account for receiving payment. Any idea?
Any suggestion would be helpful.
Currently the REST API's only support USD, passing a different currency can cause errors to be generated. There are plans to eventually support additional currencies, but currently it is only set up for USD.