#.gyges
1 messages · Page 1 of 1 (latest)
Hello!
When you say "inconsistent" does that mean that maybe you'll skip a month but the frequency is still regular?
Hey @late oar thanks for looking at it.
Or is it truly being charged "ad-hoc" at verious times?
We work with comic publishers that are inconsistent and customers are able to subscribe or unsubscribe to different series. So it's more 'ad-hoc' just because of the nature of the business.
For instance a run may happen for 4 months, and be somewhat consistent but stop. But the customer may have a number of these causing what we have set aside for that customer to differ from month to month
If you are familiar with a pull box in the comic industry, it's basically a digital version of that.
So I'm not familiar with a pull box, but let me start sharing some thing and see if this helps
So if you're truly dealing with ad-hoc payments that can happen at any point in time you can first collect card details (either through a setup intent or a paymentIntent with setup_future_usage). That should set up the card for future payments and then you can create future payment intents that use it
The card issuer/bank can always choose to still require 3ds authentication for these fuure payments (and reject the exemption that we request), so you'd need to build a resilient flow where you bring your customer back on session to finish authentication
If you were to use our Subscription instead - you can always choose to void a specific invoice so that the customer doesn't have to pay for it
and that would be one way where you could "skip" a specific payment
And you can always choose to change what a customer is subscribed to any any given point in time
So if for example you had a model where you charged a different subscription amount for a specific run, and you had a customer that was subscribed to two different comic book runs but one had stopped, you could always remove that one from the subscription
The payment intent flow is what we are currently using. Unfortunately it isn't that resilient and 3DS customers and cards are going through it, but causing some headaches on our end. It's something that we can overcome but I want to make sure I'm using the right strategy for the business.
Also the comic industry is a bit chaotic so a consistent billing like through a subscription would cause a lot of maintaining if we needed to stall or modify subscriptions for individual products. We have about 4500 skus we import monthly from our distributors, so it would be a lot to maintain without just building a cart and charging for what products we have on hand.
I think you're right about needing to bring customers with 3DS card authentication back to the site, but I'm unsure where to start with that. I don't think the stakeholders will like that much but that's what 3DS is. Is there anything you can point me to that has an example of this asynchronous 3DS verification?
I'd start by reading this section in our docs: https://stripe.com/docs/payments/save-and-reuse?platform=web&ui=elements#charge-saved-payment-method
Basically, you'd see if the off-session payment failed, and if it does you'd need to notify your customer (like sending them an email) the tells them to go back to your website
Once they're back on your site, you can call stripe.confirmPayment to trigger the authentication flow while you're on-session to complete it
Thanks, I'll read through that.