Compatibility with options to save payment method at checkout

Created on 27 May 2023, over 1 year ago

Problem/Motivation

There's an open merge request for #2871483: Add checkout settings for payment method behaviour in Commerce core - perhaps it's time to open an issue in this project for compatibility ?

A few issues have been created previously and closed, since the changes in commerce weren't yet ready for testing:
* #2912488 Provide option not to store card during checkout
* #3014502 Don't save credit card or save me credit card for a next purchase

Stripe has been mentioned in that thread a few times, most recently: https://www.drupal.org/project/commerce/issues/2871483#comment-14382871 📌 Add checkout settings for payment method behavior Needs review :

Stripe distinguishes between 2 different kinds of reusability: on_session and off_session. The difference has SCA implications.

I don't think we need to consider this here, it seems like commerce_stripe can add a Stripe-specific payment information pane extending the work here and adding an additional option. Just mentioning in case anyone else can see an implication from this use case.

In my testing (with commerce_stripe dev), this change in commerce means that it is no longer possible to save a payment method.

These changes add options to the checkout flow that can be configured on the Payment method checkout pane. The below screenshot shows the default options, to allow customers to reuse payment methods IF they opt-in. This can be changed to always store the payment method, or the setting can be disabled in order to NOT allow customers to reuse payment methods.

With the above settings, the option to opt in is not displayed during checkout and the payment method isn't listed in the payment methods tab on the customer profile.

I also edited these settings to try to "Always store" the payment method, with the same result as if "opt-in" was selected. No payment methods are listed on the customer profile after checkout.

Steps to reproduce

Patch commerce for MR 149 in commerce
Edit the Payment method checkout pane to Allow customers to reuse payment methods (with either 'opt-in' or 'always')
Checkout with a product using the edited checkout flow and try to save a payment method during checkout

Proposed resolution

Add a Stripe-specific payment information pane extending the work in #2871483 and adding an additional option (quoting @jonathanshaw ;)

Remaining tasks

User interface changes

API changes

Data model changes

Feature request
Status

Active

Version

1.0

Component

User interface

Created by

🇨🇦Canada jmee Canada

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

Comments & Activities

Production build 0.71.5 2024