-
-
Notifications
You must be signed in to change notification settings - Fork 437
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Several Paypal Express Checkout errors (since 1 sept 2020) missing AMT, Array data #1177
Comments
https://magento.stackexchange.com/questions/154756/magento-1-9-paypal-nvp-api-logic-flow @sprankhub Saw you also did something with PP NVP .. .https://github.com/thinklikeamage/Stabilis_PaypalExpressRedirect Would you know how to solve this? |
I think Did this actually work for you before and does not work since September 1? Or haven't you had this enabled before? |
I use core Magento which works actually with some field name updates
already in LTS repo
The AMT error is new
…On Thu, 3 Sep 2020 at 09:29, Simon Sprankel ***@***.***> wrote:
I think Stabilis_PaypalExpressRedirect will not help in this case, see
https://github.com/thinklikeamage/Stabilis_PaypalExpressRedirect/blob/cd42b60253133fc2fbff25d527fa45b07c68d81d/code/community/Stabilis/PaypalExpressRedirect/Model/Api/Nvp.php#L30-L44
.
Did this actually work for you before and does not work since September 1?
Or haven't you had this enabled before?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
<#1177 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAE7I2ZGCE33I2YWU376323SD5AW5ANCNFSM4QS2ERXA>
.
|
Update 4sept - we are seeing this error more often now several counts today (problem is also that PP reports the sales as paid for an legit ... but Magento has no data at all and we have to copy the order data manually from PP to Magento) Would there be an easy fix for this? (is the AMT field really used, or can it be obtained from another field?) |
Sorry a brain wave .. ;) Can someone do as quick check who knows how?
I have already added extra logging to |
I am debuggin this and it is something to do with customers going back and forth between screens - also we have a PSP that also offers Paypal. Maybe it is related to that? I added some debugging and now we see indeed AMT field is missing, because there is an error
When the customer calls, this is the status
Can it be that the customer has some kind of unique flow?
Hope it helps Also see: |
I tried searching in our paypal logs for that error code and we did not get a match. The only error codes we have logged are 10486 (bad funding source) or 10605 (unsupported currency). Are you using any customized modules to process Paypal payments? Is there something in common between all payments (e.g. currency, destination, country)? |
Maybe related For some reason the flow is
|
@seansan Were you able to resolve this issue? I'm having the same problem in our store |
I'm currently facing the first exception randomly in my store. |
I also had that lately. It always occurred when DoExpressCheckoutPayment returned an error, because the API will not return AMT alongside w/ the error. class RockSolid_PayPal_Model_Api_Nvp extends Mage_Paypal_Model_Api_Nvp
{
// snip [...]
protected function _construct() {
parent::_construct();
// We'll remove the 'AMT' field from the required field to prevent an early exit.
// We'll check that in self::call();
$this->_requiredResponseParams[self::DO_EXPRESS_CHECKOUT_PAYMENT] = ['ACK', 'CORRELATIONID'];
}
// snip [...]
public function call($methodName, array $request)
{
// Will throw an exeption if there is an error
$res = parent::call($methodName, $request);
// We did remove AMT from the validation. If everything else is fine: check for it!
if ($methodName == self::DO_EXPRESS_CHECKOUT_PAYMENT && !isset($res['AMT'])) {
Mage::logException(new Exception(
Mage::helper('paypal')->__("PayPal response hasn't required fields.")
));
Mage::throwException(
Mage::helper('paypal')->__('There was an error processing your order. Please contact us or try again later.')
);
}
return $res;
}
// snip [...]
} Adjust the error-management in _handleCallErrors() to your liking... To reproduce it:
|
If someone has a custom patch for that, please share. |
Since 1 sept we are seeing Paypal Express errors (we have activated the express checkuot from cart - 1 click)
php 7.2
M 1.9.4.x latest LTS
This probably needs a fix
Preconditions (*)
Steps to reproduce (*)
Expected result (*)
Actual result (*)
Exception: PayPal response hasn't required fields.Array in app/code/core/Mage/Paypal/Model/Api/Nvp.php:996
Exception: Expected PayPal field not found in NVP Response: AMT in /app/code/core/Mage/Paypal/Model/Api/Nvp.php:1168
The text was updated successfully, but these errors were encountered: