Skip to content

Webhook payment status using Direct Debit missing? #77

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
magnolia61 opened this issue Jan 5, 2021 · 7 comments
Open

Webhook payment status using Direct Debit missing? #77

magnolia61 opened this issue Jan 5, 2021 · 7 comments

Comments

@magnolia61
Copy link

magnolia61 commented Jan 5, 2021

We are using the omnipay Mollie library with a CiviCRM integration package (https://github.com/eileenmcnaughton/nz.co.fuzion.omnipaymultiprocessor).

When we use Mollie with iDeal all works well. When we use it with SEPA Direct Debit no webhook is called to notify the system that the direct debit mandate has successfully been given.

What I would expect is a webhook being called, with the transaction ID, and a payment status of in progress or so.

We are not sure if this is a bug or just not working (yet), maybe even by design. Right now in our registration system we cannot discern between Direct Debit payments that failed, canceled or successfully awaiting the debit.

We would love to hear advise on this. Thanks for this wonderful payment method!

@ndijkstra
Copy link

Hi @magnolia61, we also call the webhook for SDD payments if you have specified the webhookUrl when creating the payment or subscription.

For more info about webhooks in combination with subscriptions:
https://docs.mollie.com/payments/recurring#how-do-webhooks-for-subscriptions-work

If you just create a SDD payment via our Payments API, we just call the webhook like for any other payment method.

@magnolia61
Copy link
Author

magnolia61 commented Feb 9, 2021

I am only using Mollie for one-off payments. So basically you confirm that right now for one-off payments there is no webhook callback when a direct debit mandate is successfully given? Right now the CRM has no means to know if the mandate is given and what the status is of the payment. When status 'in progress' would be called back the CRM would know and be able to inform the enduser about the debit that is about to take place (conform SEPA regulations.

Could I propose to please also make this possible for one-off direct debit (eg. SEPA) payments? :-)

@ndijkstra
Copy link

For mandates, we do not have webhooks, only for payments. If you create a directdebit payment via the Payments API, you can pass a webhookUrl. If the direct debit payment is set to paid or failed, or a chargeback is received we shall call the webhook.

@magnolia61
Copy link
Author

Clear. I understand the way it is now with Mollie. Please consider this a cry for this feature to be on the wishlist as it would really serve a need (especially regarding mandatory SEPA communication). Would you be able to take this as a featrure request or would I need to follow another route to make this officially known?

@ndijkstra
Copy link

ndijkstra commented Feb 9, 2021

How do you create the mandates atm? Via a first payment, or via the Mandates API? I'll create a feature request on our side for webhooks related to mandates.

@magnolia61
Copy link
Author

magnolia61 commented Feb 9, 2021

We use the integrated SEPA Direct Debit payment method in which a mandate is given, no payment
Screenshot_2021-02-09 27-9163-Online bijdrage - Veilig betalen via Mollie

Currently we have no way to discern if someone cancelled the process and aborted the 'payment' or that a mandate was successfully given. By your feedback I realize this would entail more a change at Mollie's side than a change in the code of this repository. Thank you for thinking along.

@ndijkstra
Copy link

Ah, this is the legacy Direct Debit payment flow. In this case you create a "one-off" payment with the method "directdebit". In this flow, no mandate on our side is created (that is visible via the Mandates API). You can just use the webhookUrl of this one-off payment to see if it is paid, expired or canceled. If the shopper cancels the payment, the shopper is redirected back to the redirectUrl.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants