Problem/Motivation

Sometimes customers don't return from the payment provider. In this case no payment is added to the order, so you never know what happened, of even if the user got to the payment provider or just stopped.

Steps to reproduce

Proposed resolution

  • The provider supports IPN. When the status of a payment changes, it can call a webhook. With the passed information we can collect the new response. We should implement this
  • We should save the payment before we go to the payment provider. Thus we can see the payment has been initiated (status NEW).

Comments

JoshaHubbers created an issue. See original summary.

joshahubbers’s picture

This patch saves the payment before going to the external payment provider. When you return we check if there is a payment. If there is, we update it, else we create a new one.

joshahubbers’s picture

This patch adds the ipn-page. Is work in progress, because I need to test this some more.

joshahubbers’s picture

New day, new patch...

* fixed dependency injection. For some reason the entityTypeManager that came from the base class returned null.
* changed the request handling
* return a minimal page when the request is processed
* added catch phrases
* improved logging

joshahubbers’s picture

Hm, I've been screwing with the tags, so the patch didn't apply. Try again.

joshahubbers’s picture

Version: 8.x-1.0-alpha5 » 8.x-1.0-alpha6
joshahubbers’s picture

Well... that was not very clever. I should use the onNotify to handle the IPN-call. So that is updated in this patch.

joshahubbers’s picture

Title: When you don't return from the payment provider, the payment is not added to the order » Add IPN functionality
joshahubbers’s picture

This patch has been tested and works.

joshahubbers’s picture

Status: Active » Fixed

Status: Fixed » Closed (fixed)

Automatically closed - issue fixed for 2 weeks with no activity.