Allow to retry payments after failure, including (re)authentication for offsession payments (SCA)

Created on 21 September 2020, about 4 years ago
Updated 9 September 2024, 18 days ago

Problem/Motivation

Even if a payment method was setup for future off session usage, and even though a card processor may automatically seek a Merchant Initiated transaction exemption on off session payments, a customer's card issuer can always demmand Strong Customer Authentication on a payment.

Handling this requires collaboration between commerce_recurring and the payment gateway plugin; neither can handle this alone.

Providing a satisfactory UX for allowing customers to respond to failed recurring payments is also more broadly not a solved problem in commerce_recurring. Current dunning emails ( #2924191: Implement dunning emails ) simply send the customer to the user's payment methods page, which is problematic because
(1) it provides little reassuring context about the payment,
(2) if the customer provides a new payment method, this is not automatically applied to the subscription or the recurring order, and
(3) the payment is not reattempted while the customer is onsite, so may immediately fail again requiring further customer visits.

Proposed resolution

Create a checkout flow that allows customers to pay recurring orders that have failed.

Remaining tasks

Review and fix patch.
Progress upstream issues: #3044592: getVisibleSteps() can become stale and #3047103: Make it easier to use checkout with non-draft orders and schema from #15

User interface changes

A new checkout flow.

API changes

None.

Data model changes

None.

📌 Task
Status

Needs review

Version

1.0

Component

Code

Created by

🇬🇧United Kingdom jonathanshaw Stroud, UK

Live updates comments and jobs are added and updated live.
Sign in to follow issues

Merge Requests

Comments & Activities

Not all content is available!

It's likely this issue predates Contrib.social: some issue and comment data are missing.

Production build 0.71.5 2024