Paypal: Express Checkout PayerID is missing

Hi I am trying to add Paypal payment method to shop. I am using Oxid 4.10.8 CE and standard Paypal module 3.4.0. which is included in Oxid installation.

I am using Paypal sandbox account and when I tried Paypal Express button it works correctly. (I was redirected to Paypal, pay the order and the returned back to shop, where order is processed).
But I also want to use PayPal basic (standard) payment method. Choose paypay on payment method page and redirect to paypal after order is processed. But it does not work. After I submit order it came back with error from paypal “Express Checkout PayerID is missing.”

Strange thing is, that payment module is calling DoExpressCheckoutPayment which I think is used for express button but not for standard payment process. Sure I Paypal Basis is checked in module configuration.

Here is my log:
======================= Request to PayPal [2019-08-17 11:34:27] ======================= #

SESS ID: rmq2j2922jiccmfjl7koq8ddm7
array (
‘VERSION’ => ‘84.0’,
‘PWD’ => ‘NV4FEZFXHXANGESL’,
‘USER’ => ‘sb-rdobw84498_api1.business.example.com’,
‘SIGNATURE’ => ‘A5swqA9TZ3.phImB66rmkCwUZj7PAbjTv7ThPr.FQGU4k3khILX7xOlo’,
‘TOKEN’ => ‘EC-2S107980EE6008901’,
‘PAYERID’ => ‘’,
‘PAYMENTREQUEST_0_PAYMENTACTION’ => ‘Sale’,
‘PAYMENTREQUEST_0_AMT’ => ‘30.98’,
‘PAYMENTREQUEST_0_CURRENCYCODE’ => ‘EUR’,
‘PAYMENTREQUEST_0_NOTIFYURL’ => ‘https://www.kingdomcome-store.com/index.php?cl=oePayPalIPNHandler&fnc=handleRequest&shp=oxbaseshop’,
‘PAYMENTREQUEST_0_DESC’ => ‘Order number 367’,
‘PAYMENTREQUEST_0_CUSTOM’ => ‘Order number 367’,
‘BUTTONSOURCE’ => ‘OXID_Cart_CommunityECS’,
‘PAYMENTREQUEST_0_SHIPTONAME’ => ‘John Doe’,
‘PAYMENTREQUEST_0_SHIPTOSTREET’ => ‘Maple Street 2425’,
‘PAYMENTREQUEST_0_SHIPTOCITY’ => ‘Any City’,
‘PAYMENTREQUEST_0_SHIPTOZIP’ => ‘9041’,
‘PAYMENTREQUEST_0_SHIPTOPHONENUM’ => ‘217-8918712’,
‘PAYMENTREQUEST_0_SHIPTOCOUNTRYCODE’ => ‘CZ’,
‘METHOD’ => ‘DoExpressCheckoutPayment’,
)

======================= Response from PayPal [2019-08-17 11:34:28] ======================= #

SESS ID: rmq2j2922jiccmfjl7koq8ddm7
array (
‘TOKEN’ => ‘EC-2S107980EE6008901’,
‘TIMESTAMP’ => ‘2019-08-17T09:34:28Z’,
‘CORRELATIONID’ => ‘25b195c9c7e62’,
‘ACK’ => ‘Failure’,
‘VERSION’ => ‘84.0’,
‘BUILD’ => ‘53420567’,
‘L_ERRORCODE0’ => ‘10419’,
‘L_SHORTMESSAGE0’ => ‘Express Checkout PayerID is missing.’,
‘L_LONGMESSAGE0’ => ‘Express Checkout PayerID is missing.’,
‘L_SEVERITYCODE0’ => ‘Error’,
)

It’s just sandbox passwords and I changed it.

Your Request to PayPal Sandbox the Field PAYERID is empty.

‘PAYERID’ => ‘’,

See also PayPal API Error Documentation with Error Code Number 10419 https://www.paypal.com/kh/smarthelp/article/why-did-i-get-api-error-code-10419-ts2024

I found also https://www.paypal-community.com/t5/About-Payments/Missing-Payer-express-checkout-ID/td-p/1194197

Re: Missing Payer express checkout ID!!!

This happens often with PayPal Express. Many transactions go through, but some transactions do not. The ones that do not go through are missing the Payer Id field that is sent in the query string back to the Merchant’s site: note that both a token and a payer id needs to be present after the redirect from PayPal to the merchant’s site in order to process the payment. It has nothing to do with a developer’s integration of PayPal Express. It is on PayPal’s end.