View Issue Details

IDProjectCategoryView StatusLast Update
0007054module PayPalmodule PayPal - subpublic2019-12-05 11:10
Reportertte 
PrioritynormalSeverityminorReproducibilityalways
Status acknowledgedResolutionopen 
Product Version5.2.5 
Target VersionFixed in Version 
Summary0007054: Order state not always in sync with IPN capture
DescriptionScenario:
An order is placed using PayPal as payment method. If there's a problem with the PayPal transaction, the IPN capture is "Pending", so the order state is pending/not finished, too. Later, if the problem has been fixed and an additional IPN capture is triggered manually on PayPal's end, this new capture is being sent to the shop stating that the capture is "Completed", which will be updated in oepaypal_orderpayments properly. However, the overall order state remains "Pending" or "Failed". This leads to problems if you are processing orders afterwards as some orders diverge from their correct transaction state.

My guess is that the setPaymentStatus() method of the PayPalOrder object isn't invoked when an IPN capture is being triggered after the order process has already been completed.
Steps To ReproduceSee above.
TagsNo tags attached.

Activities

QA

2019-11-21 15:56

administrator   ~0013053

You forgot to write how to reproduce the behavior on the sandbox.
Please let us know how a payment is first rejected and then the additional IPN capture is triggered on the Sandbox.

- es -

tte

2019-11-29 10:42

reporter   ~0013059

Last edited: 2019-12-02 10:41

View 2 revisions

After various tests I can confirm I'm not able to reproduce this behavior using PayPal's sandbox or your implementation of PayPal's sandbox (this might be related to IPN processing not taking place). However, I'm able to reproduce this problem consistently using our live system (and your live PayPal implementation).

Attached please find screenshots which were made after the following steps have been taken:
1) OXID's order state and PayPal's capture state after the order has been placed successfully (screenshot_1)
2) OXID's order state and PayPal's capture state after the user has reported a problem with this order using PayPal's platform (screenshot_2)
3) OXID's order state and PayPal's capture state after the problem has been solved and an additional IPN has been sent manually to complete the order again (screenshot_3)

Notice that PayPal's capture state is now "Completed" again whereas the overall order state remains "Incomplete" (or "Fehlgeschlagen" in German).



screenshot_3.png (56,661 bytes)
screenshot_3.png (56,661 bytes)
screenshot_1.png (55,471 bytes)
screenshot_1.png (55,471 bytes)
screenshot_2.png (54,105 bytes)
screenshot_2.png (54,105 bytes)

tte

2019-11-29 10:46

reporter   ~0013060

Note: 3) corresponds to screenshot_3 (not screenshot_1 as written above).