Support » Plugin: PayPal Plus for WooCommerce » paymentId cannot be null

  • Resolved grosssmutttrwp

    (@grosssmutttrwp)


    Hi,

    wir bekommen sehr viele Fehlermeldungen, die wie folgt aussehen (Version 2.2.1):`

    2021-04-20T20:43:31+00:00 INFO GET https://api.paypal.com/v1/payments/payment/PAYID-MB7TZYYXXXXXXXXXXXXXXXXXXXXX
    2021-04-20T20:43:31+00:00 INFO Response Status 	: 200
    2021-04-20T20:47:08+00:00 ERROR paymentId cannot be null
    2021-04-20T20:47:08+00:00 ERROR paymentId cannot be null
    2021-04-20T20:47:08+00:00 ERROR paymentId cannot be null
    2021-04-20T20:47:08+00:00 ERROR paymentId cannot be null
    2021-04-20T20:47:08+00:00 ERROR paymentId cannot be null
    2021-04-20T20:47:08+00:00 ERROR paymentId cannot be null
    2021-04-20T20:47:08+00:00 ERROR paymentId cannot be null
    2021-04-20T20:47:08+00:00 ERROR paymentId cannot be null
    2021-04-20T20:47:08+00:00 ERROR paymentId cannot be null
    2021-04-20T20:47:08+00:00 ERROR paymentId cannot be null
    2021-04-20T20:47:08+00:00 ERROR paymentId cannot be null
    2021-04-20T20:47:08+00:00 ERROR paymentId cannot be null
    2021-04-20T20:47:08+00:00 ERROR paymentId cannot be null
    2021-04-20T20:47:08+00:00 ERROR paymentId cannot be null
    2021-04-20T20:47:08+00:00 ERROR paymentId cannot be null
    2021-04-20T20:47:08+00:00 ERROR paymentId cannot be null
    2021-04-20T20:47:08+00:00 ERROR paymentId cannot be null
    2021-04-20T20:47:08+00:00 ERROR paymentId cannot be null
    2021-04-20T20:47:08+00:00 ERROR paymentId cannot be null
    2021-04-20T20:47:08+00:00 ERROR paymentId cannot be null
    2021-04-20T20:47:08+00:00 ERROR paymentId cannot be null
    2021-04-20T20:47:08+00:00 ERROR paymentId cannot be null
    2021-04-20T20:47:08+00:00 ERROR paymentId cannot be null
    2021-04-20T20:47:08+00:00 ERROR paymentId cannot be null
    2021-04-20T20:47:08+00:00 ERROR paymentId cannot be null
    2021-04-20T20:48:06+00:00 ERROR paymentId cannot be null
    2021-04-20T20:48:06+00:00 ERROR paymentId cannot be null
    2021-04-20T20:48:06+00:00 ERROR paymentId cannot be null
    2021-04-20T20:48:06+00:00 ERROR paymentId cannot be null
    2021-04-20T20:48:06+00:00 ERROR paymentId cannot be null
    2021-04-20T20:48:06+00:00 ERROR paymentId cannot be null
    2021-04-20T20:48:06+00:00 ERROR paymentId cannot be null
    2021-04-20T20:48:06+00:00 ERROR paymentId cannot be null
    2021-04-20T20:48:06+00:00 ERROR paymentId cannot be null
    2021-04-20T20:48:06+00:00 ERROR paymentId cannot be null
    2021-04-20T20:48:06+00:00 ERROR paymentId cannot be null
    2021-04-20T20:48:06+00:00 ERROR paymentId cannot be null
    2021-04-20T20:48:06+00:00 ERROR paymentId cannot be null
    2021-04-20T20:48:06+00:00 ERROR paymentId cannot be null
    2021-04-20T20:48:06+00:00 ERROR paymentId cannot be null
    2021-04-20T20:48:06+00:00 ERROR paymentId cannot be null
    2021-04-20T20:48:06+00:00 ERROR paymentId cannot be null
    2021-04-20T20:48:06+00:00 ERROR paymentId cannot be null
    2021-04-20T20:48:06+00:00 ERROR paymentId cannot be null
    2021-04-20T20:48:06+00:00 ERROR paymentId cannot be null
    2021-04-20T20:48:06+00:00 ERROR paymentId cannot be null
    2021-04-20T20:48:06+00:00 ERROR paymentId cannot be null
    2021-04-20T20:48:06+00:00 ERROR paymentId cannot be null
    2021-04-20T20:48:06+00:00 ERROR paymentId cannot be null
    2021-04-20T20:48:06+00:00 ERROR paymentId cannot be null
    2021-04-20T20:49:38+00:00 ERROR paymentId cannot be null
    2021-04-20T20:49:38+00:00 ERROR paymentId cannot be null
    2021-04-20T20:49:38+00:00 ERROR paymentId cannot be null
    2021-04-20T20:49:38+00:00 ERROR paymentId cannot be null
    2021-04-20T20:49:38+00:00 ERROR paymentId cannot be null
    2021-04-20T20:49:38+00:00 ERROR paymentId cannot be null
    2021-04-20T20:49:38+00:00 ERROR paymentId cannot be null
    2021-04-20T20:49:38+00:00 ERROR paymentId cannot be null
    2021-04-20T20:49:38+00:00 ERROR paymentId cannot be null
    2021-04-20T20:49:38+00:00 ERROR paymentId cannot be null
    2021-04-20T20:49:38+00:00 ERROR paymentId cannot be null
    2021-04-20T20:49:38+00:00 ERROR paymentId cannot be null
    2021-04-20T20:49:38+00:00 ERROR paymentId cannot be null
    2021-04-20T20:49:38+00:00 ERROR paymentId cannot be null
    2021-04-20T20:49:38+00:00 ERROR paymentId cannot be null
    2021-04-20T20:49:38+00:00 ERROR paymentId cannot be null
    2021-04-20T20:49:38+00:00 ERROR paymentId cannot be null
    2021-04-20T20:49:38+00:00 ERROR paymentId cannot be null
    2021-04-20T20:49:38+00:00 ERROR paymentId cannot be null
    2021-04-20T20:49:38+00:00 ERROR paymentId cannot be null
    2021-04-20T20:49:38+00:00 ERROR paymentId cannot be null
    2021-04-20T20:49:38+00:00 ERROR paymentId cannot be null
    2021-04-20T20:49:38+00:00 ERROR paymentId cannot be null
    2021-04-20T20:49:38+00:00 ERROR paymentId cannot be null
    2021-04-20T20:49:38+00:00 ERROR paymentId cannot be null
    2021-04-20T20:50:03+00:00 INFO POST https://api.paypal.com/v1/payments/payment
    2021-04-20T20:50:04+00:00 INFO Response Status 	: 201

    Hier gibt es vermutlich noch einen Bug.

    Wurde hier bereits diskutiert aber geschlossen:
    https://wordpress.org/support/topic/die-adresse-kann-von-paypal-nicht-aufgerufen-werden/

    Es hängt wohl mit dem folgenden zusammen:

    Wir haben das gleiche Problem.

    Das Problem tritt auf, nachdem die Bestellung durchgeführt wurde (also Nutzungsbedingungen und AGBs akzeptiert und “kostenpflichtig bestellt” wurde).
    Die Bestellung wird auch per E-Mail bestätigt und ist auch in WooCommerce als Bestellung mit “Zahlung ausstehend” vermerkt.
    Meine erste Analse hat gezeigt, dass die PaymentId nicht mehr aus der Session ausgelesen werden kann bzw. nicht mehr in der Session vorhanden ist.

    Datei /woo-paypalplus/src/ExpressCheckoutGateway/CheckoutAddressOverride.php
    Zeile 132: $paymentId = $this->wooCommerce->session->get(Session::PAYMENT_ID);

    Hier wird nach der Bestellung kein Wert mehr zurückgeliefert. Dadurch kann die Zahlung nicht mehr durchgeführt werden.

    Spontane Vermutung: Die PAYMENT_ID wird nach der Bestellung aus der Session gelöscht.

    Folgende WooCommerce-Plugins sind installiert:
    – WooCommerce
    – WooCommerce Admin
    – PayPal PLUS für WooCommerce
    – German Market
    – DHL for WooCommerce

Viewing 12 replies - 1 through 12 (of 12 total)
  • Plugin Support Andreas W.

    (@aweissinpsyde)

    Hallo @grosssmutttrwp

    bitte einmal alle andere PLugin testweise deaktvieren. Solltest du Germanized benutzen oder German Market bitte einmal die Option stornierung durhc den Kunden verhindern deaktivieren. Auch bitte alle Cache PLugins deaktivieren.

    Mit besten Grüssen
    Andreas

    Plugin Support Andreas W.

    (@aweissinpsyde)

    We haven’t heard back from you in a while, so I’m going to mark this as resolved – if you have any further questions, you can start a new thread.

    Hi,

    I have the same problem.

    When PayPal Express is active, and I use the buttons on the mini-cart or the cart pages to checkout, the PayPal window opens and I get to select the delivery address. So far so good. When clicking on Continue I am redirected to my website’s checkout and the following error messages appear (sometimes only one of them, sometimes both):

    “Zahlungsabwicklung: Unzureichende Daten für die Zahlung.” and
    “Die Adresse kann von PayPal nicht aufgerufen werden. Bitte versuche erneut, zur Kasse zu gehen.”

    This is what the log says:
    “`2021-05-19T14:19:33+00:00 INFO GET https://api.paypal.com/v1/payments/payment/PAYID-MCSR4UQ5YM37176DT133291P
    2021-05-19T14:19:33+00:00 INFO Response Status : 200
    2021-05-19T14:19:38+00:00 ERROR paymentId cannot be null
    2021-05-19T14:19:38+00:00 ERROR paymentId cannot be null
    2021-05-19T14:19:38+00:00 ERROR paymentId cannot be null
    2021-05-19T14:19:38+00:00 ERROR paymentId cannot be null
    2021-05-19T14:19:40+00:00 ERROR paymentId cannot be null
    2021-05-19T14:19:40+00:00 ERROR paymentId cannot be null
    2021-05-19T14:19:40+00:00 ERROR paymentId cannot be null
    2021-05-19T14:19:40+00:00 ERROR paymentId cannot be null`”

    Normal PayPal checkout with PayPal Plus plugin works.

    I am not sure whether this error only appeared now when I updated all of the plugins and theme or whether it has been there for a while. I only stumbled upon it when doing some testing now.

    I use German Market but there seems to be no option called “Stornierung durch den Kunden verhindern” (or something similar) which I could deactivate.

    Please reopen. This issue seems to prevail.

    Thanks and best regards,
    David

    Hi,

    I have been waiting for a reply for a whole week now… When can I expect a reaction? In the meantime I did some further testing. I deactivated German Market which did not change anything.

    But what I realized is that the error does not occur on the staging site, which is probably why I did not encounter it when doing my usual testing scheme before unrolling the updates in the live environment.

    That the Express button works on the staging site suggests that this has nothing to do with plugins or themes but that the issue must be located somewhere else.

    Please let me know what could be done and have a look into this.

    Thanks,
    David

    Same problem for me. No Woocommerce Germanized installed.

    2021-05-29T16:56:50+00:00 ERROR paymentId cannot be null
    2021-05-29T16:56:50+00:00 ERROR paymentId cannot be null
    2021-05-29T16:56:50+00:00 ERROR paymentId cannot be null
    2021-05-29T16:56:50+00:00 ERROR paymentId cannot be null
    2021-05-29T16:56:50+00:00 ERROR paymentId cannot be null
    2021-05-29T16:56:50+00:00 ERROR paymentId cannot be null
    2021-05-29T16:56:50+00:00 ERROR paymentId cannot be null
    2021-05-29T16:56:50+00:00 ERROR paymentId cannot be null
    2021-05-29T16:56:50+00:00 ERROR paymentId cannot be null
    2021-05-29T16:56:50+00:00 ERROR paymentId cannot be null
    2021-05-29T17:07:53+00:00 INFO POST https://api.paypal.com/v1/payments/payment
    2021-05-29T17:07:53+00:00 INFO Response Status 	: 201
    2021-05-29T18:01:41+00:00 INFO POST https://api.paypal.com/v1/payments/payment
    2021-05-29T18:01:42+00:00 INFO Response Status 	: 201

    2021-05-27T09:17:34+00:00 CRITICAL Uncaught Error: Call to a member function getPayerInfo() on null in /var/www/vhosts/abcdefg.de/httpdocs/wp-content/plugins/woo-paypalplus/src/ExpressCheckoutGateway/CheckoutAddressOverride.php:152

    Is it possible deactivate the whole express checkout part of the plugin? If possible by code, please let me know which code i need to comment out.

    I am using angelleye paypal extress checkout for this.

    Thanks, please help fast its making a lot of trouble to merchants.

    Plugin Support Andreas W.

    (@aweissinpsyde)

    Hello @derweltbuerger @kawo83

    do you use any caching systems like plugins or on your server?

    @derweltbuerger when it’s working on the staging site I would recommend checking what’s the difference between staging and live site. Server Config? Can it be connected to your live domain. Please create a new API Live and Secret keys and try it again. Additionally please use the WooCommerce tools and check if you can reset some session, cache, transitions, etc.

    @kawo83

    yes, you can deactivate the express checkout. Just deactivate it under payment options and in the settings.

    Can you please check if it’s working with an older version. The older version can be downloaded here at the end: https://wordpress.org/plugins/woo-paypalplus/advanced/

    Thank you
    Regards
    Andreas

    Hi Andreas,

    Thanks for your reply. Please allow a few days for me to check.

    Thanks,
    David

    Hi Andreas,

    I finally did some further testing and did the following:

    – Created new API Live and Secret Keys and entered them in PayPal Express Checkout settings
    – I emptied WC and WP transient cache.
    – I purged the caching plugin I’m using (NitroPack)

    The result is still the same. I get the error message in the checkout: “Die Adresse kann von PayPal nicht aufgerufen werden. Bitte versuche erneut, zur Kasse zu gehen.”

    Log says this:
    “`2021-07-02T09:19:02+00:00 INFO POST https://api.paypal.com/v1/payments/payment
    2021-07-02T09:19:02+00:00 INFO Response Status : 201
    2021-07-02T09:19:14+00:00 INFO POST https://api.paypal.com/v1/payments/payment
    2021-07-02T09:19:14+00:00 INFO Response Status : 201
    2021-07-02T09:19:31+00:00 INFO GET https://api.paypal.com/v1/payments/payment/PAYID-MDPNUEQ9X877579XN8957134
    2021-07-02T09:19:32+00:00 INFO Response Status : 200
    2021-07-02T09:19:35+00:00 ERROR paymentId cannot be null
    2021-07-02T09:19:35+00:00 ERROR paymentId cannot be null
    2021-07-02T09:19:35+00:00 ERROR paymentId cannot be null
    2021-07-02T09:19:35+00:00 ERROR paymentId cannot be null`”

    Do you have any other ideas what I can try?

    Thanks,
    David

    Hey Andreas,

    I also tried using version 2.2.0 as suggested by you but that did not change anything either. What I noticed though is that there is an error message / notice in the WP Admin on the PayPal Express Checkout settings page that reads: “<html> <head><title>403 Forbidden</title></head> <body bgcolor=”white”> <center><h1>403 Forbidden</h1></center> <hr><center>nginx</center> </body> </html>”

    With all the html code in plain text. Does that hint towards anything particular?

    Thanks,
    David

    @aweissinpsyde just adding this to notify you

    @derweltbuerger Hey, have you found a solution to the problem by now?

    @rt87 No, do you have the same problem? Nobody here really seems to care…

Viewing 12 replies - 1 through 12 (of 12 total)
  • The topic ‘paymentId cannot be null’ is closed to new replies.