Hallo @artep,
ich habe alle Kombinationen getestet, leider erfolglos.
[@Michael Telgmann](http://forum.shopware.com/profile/17553/Michael Telgmann „Michael Telgmann“)
Die folgenden zwei Logeinträge kommen unregelmäßig vor uns werden glaube ich bereits in einem Issue Ticket behandelt:
[2018-06-12 23:31:55] plugin.INFO: PayPal Products: Sending request [POST] to https://api.paypal.com/v1/payments/payment {„payload“:„{„intent“:„sale“,„experience_profile_id“:„XP-XXXX-XXXX-9293-XJNG“,„payer“:{„payment_method“:„paypal“,„status“:null,„external_selected_funding_instrument_type“:null},„transactions“:[{„amount“:{„currency“:„EUR“,„total“:„0.00“,„details“:{„shipping“:0,„subtotal“:“",„tax“:„0.00“}},„item_list“:null}],„redirect_urls“:{„return_url“:"https://www.shop-url.de/PaypalUnified/return/basketId/plus",„cancel\_url“:„https://www.shop-url.de/PaypalUnified/cancel“},„create\_time“:null,„update\_time“:null,„id“:null,„cart“:null,„state“:null}"} {„uid“:„269XXXX“}
[2018-06-12 23:31:56] plugin.ERROR: PayPal Products: Could not create payment for plus payment wall due to a communication failure {„message“:„Client error response [url] https://api.paypal.com/v1/payments/payment [status code] 400 [reason phrase] Bad Request“,„payload“:"{„name“:„VALIDATION_ERROR“,„details“:[{„field“:„transactions.amount.details“,„issue“:„Currency amount must be non-negative number, may optionally contain exactly 2 decimal places separated by ‚.‘, optional thousands separator ‚,‘, limited to 7 digits before the decimal point and currency which is a valid ISO Currency Code“}],„message“:„Invalid request - see details“,„information_link“:"https://developer.paypal.com/docs/api/payments/#errors",„debug\_id“:„18f8ec94XXXXX“}"} {„uid“:„269XXXX“}
Das eigentliche Problem wirft aber keine plugin.ERROR Einträge. Ich habe eben mal einen Testbestellung gemacht (bis zu dem Hinweis ‚Der Warenkorb hat sich während des Bezahlvorganges geändert.‘), hier die Logeinträge:
Heute kam auch eine Rückmeldung von PayPal:
Mir viel dabei auf, Sie erstellen ein Experience Profile pro Transaktion in REST und 50% davon sind leer. Wie Sie in der Integrations Dokumentation von PayPal Plus sehen können, es sollte nur ein Profile erstellt und für alle Transaktionen genutzt werden, also keine temporären Profile.
https://www.paypalobjects.com/webstatic/de_DE/downloads/PayPal-PLUS-IntegrationGuide.pdf
Ebenso sah ich, 96% aller Webhook calls resultieren in einem : Webhook existiert schon. Sie versuche also den gleichen Aufruf zu machen und das mehrfach.
10% der erstellten PayPal Plus Zahlungen erfolgen fehlerhaft, resultieren damit in einen Validation Error.
Die 1% invalid resource ID calls kommen vom Versuch eines Patch Calls (updaten einer Zahlung mit Adressdaten z.b.) allerdings mit einer ausgelaufenen oder nicht existierenden ID.
10.42% aller Webhooks auf erfolgte Zahlungen schlagen fehl, weil Ihr Webhook Listener nicht reagiert/ansprechbar/erreichbar ist.
Der Shop ist hatte in der Zeit keine Downtime oder sonstigen Fehler. Auch eine Überlastung des Servers kann ausgeschlossen werden.
Beste Grüße,
Dennis