Hi, just wanted to clarify few things.
Original Payum Stripe Checkout now offered by Stripe as Legacy Checkout
(Charge API), new Stripe Checkout
is a hosted solution (Session API), but at the same time they now offer PaymentIntent API with manual web flow, which is very similar to previous charge api in terms of user experience (Self hosted payment page).
What StripeDirectGatewayFactory
and StripeJsGatewayFactory
do -- I have no idea.
So what I think is StripeCheckoutGatewayFactory
should become StripeLegacyCheckoutGatewayFactory
with previous Charge API and stripe/stripe-php lock as in original.
New StripeCheckoutGatewayFactory
should consist of Session API which will redirect to Stripe hosted page and your work should go into StripePaymentIntentGatewayFactory
with sca and without.
I'm not sure about web (self hosted), android/ios differences, should they be in same GatewayFactory or not. Maybe that's what Direct and JS gateways are about.
What do you think?
By the way, I've tried out new implementation (Inside Sylius) and I'm having this issue.
A Card token may not be passed in as a PaymentMethod. Instead, use payment_method_data with type=card
My model
is not constructed right, but I'm sure problem is either with my html template or related to Sylius.
![Screenshot_2019-09-11 Screenshot](https://user-images.githubusercontent.com/870747/64695144-a85fb080-d4c5-11e9-9aaa-b4f1df289a9e.png)
Anyway, my company decided to go with Session API and hosted checkout page, therefore I'll be developing it now. I've saw https://github.com/Combodo/CombodoPayumStripe using Session API, but their code is not idiomatic to Payum and it doesn't look like they plan to return changes to Payum. So maybe we will be able to support both flows inside your fork and eventually PR in master.