Magento PayPal Requested and configured seller emails do not match

Magento periodically logs the following error.

ERR (3): exception "Exception" with the message "Requested and configured. Email addresses of user@domain.com do not match. 'In / home / user / public _html / app / code / core / Mage / Paypal / Model / Ipn .php: 257

Based on my code reading:

  • "Merchant Email Configuration" comes from Magento configuration.
  • Empty "Requested Seller Email" arrives from Recipient_Receiver
    in the IPN message PayPal.

Why is there an empty recipient field in the IPN message? I can make a few guesses:

  • Protocol error from PayPal service.
  • Configuration error in PayPal.com account.
  • Magento error leading to empty or corrupted data.
  • Network issue leading to empty or corrupted data.

Most likely, and how can I narrow it down?


It looks like this is due to transaction adjustments. Some strange things:

  • The indicated order was paid by credit card, not Paypal Express.
  • The indicated order was adjusted several months ago.
  • This last transaction is not in the order comment history.

I suspect this is a code or protocol error. The transaction POST data below with identifiers hidden to protect the innocent.

Array ( [txn_type] => adjustment [payment_date] => 12:17:03 Jul 20, 2015 PDT [payment_gross] => -64.45 [mc_currency] => USD [verify_sign] => ... [payer_status] => verified [payer_email] => seller@address.com [txn_id] => ... [parent_txn_id] => ... [payer_id] => ... [invoice] => 123456789 [reason_code] => chargeback_settlement [payment_status] => Completed [payment_fee] => -20.00 [mc_gross] => -64.45 [charset] => windows-1252 [notify_version] => 3.8 [ipn_track_id] => ... ) 
+8
magento paypal
source share
2 answers

In my case, the problem was that the configured email was not the primary mailbox installed in my PayPal account. So PayPal sent the default email account (which was different) as the requested email. After setting the configured email address as the primary email address in paypal, the problem seems to be fixed.

+1
source share

I think this is a Magento bug. For chargebacks, the merchant is actually a "payer". That is why in this case the address can be found in the payer_email field. The _verifyOrder method must be adjusted accordingly.

0
source share

All Articles