#martin_98625
1 messages ยท Page 1 of 1 (latest)
HI ๐
No, creating a payment method with a Setup Intent with perform an auth check either when you first create it (if you create the Setup Intent with a Customer) or when you attach the PM to a Customer.
the payment method and the setup intent are attached to the customer
I mean, you could always do exactly what you described but it's against our rules and card networks are likely to decline your transactions
the thing is that we're collecting the payment method to be charged after a 7 days trial period
but we're getting a bunch of failed payments after those 7 days
so we want to be able to genereate this micro payment to validate the payment method before we let them in
You can pre-authorize the card with a hold time of 7 days
https://stripe.com/docs/payments/place-a-hold-on-a-payment-method
Yes but in this case you would create the PM using the Payment Intent
so the charge won't happen you say?
This is how it works
because we tried using payment intents before (without the pre authorization thing) and it was charging the customer right away
This doc explains how you configure that not to happen but let me break it down
- You create the Payment Intent for the full amount you plan to charge
also, consider that we have a recurrent subscription going on in there
yep
so we have a subscription, that we give a 7 day free trial
but we want to collect the payment method before we give the 7 day free trial
the thing is that stripe is collecting it fine, but 7 days after payments start to fail. We want to detect those failures early, not when the trial ends
setup intent is only detecting invalid cards, but not insufficient funds or payments declined by banks
which is only detected when the charge is actually happening 7 days after the trial ends
Unfortunately you cannot do a pre-authorization using Subscriptions.
If you wanted to collect payment up front and then add in a trial period, you could do that using Susbcription Schedules
when you say collect the payment up front, you mean collect it and validate that the payment method has sufficient funds?
I mean actually collect the payment
We have some use cases documented here: https://stripe.com/docs/billing/subscriptions/subscription-schedules/use-cases
But the whole idea is that you can schedule changes to your subscription by creating a set of phases.
Let me test something out to confirm
so this is https://www.canva.com/
see the text there
that's exactly what we want to do
Yeah that isn't something you can do directly with Subscriptions. That flow would require you to use our auth and capture flow to create a small charge on the customers PM
https://stripe.com/docs/payments/place-a-hold-on-a-payment-method
But that would be up to you to build
so what if... instead of using a setup intent, we use a payment intent with a charge of 1 usd
wouldn't that suffice?
That would be up to you but it is possible. You would just add the configuration options to the Payment Intent to create the Payment Method and save it to the customer.
Those configurations are in this doc: https://stripe.com/docs/payments/save-during-payment
Correct .5 USD is the smallest amount you can charge
so recapping, we could, instead of using a setup intent:
- use a payment intent to charge 0.5 usd
- collect the payment method
- if everything goes fine, refund 0.5 usd charge using this API: https://stripe.com/docs/api/refunds/create
Complete reference documentation for the Stripe API. Includes code snippets and examples for our Python, Java, PHP, Node.js, Go, Ruby, and .NET libraries.
is this correct?
Correct
does stripe charges us for that refund?
Stripe will charge a fee on the payment and you won't get it back on the refund but there won't be an additional fee for the refund
I recommend you review our pricing page https://stripe.com/en-gb-us/pricing
And you can reach out to support (https://support.stripe.com/contact) if you have more questions on the fees. It's not something we on this server know about.
cool! thank you!