#Muhammad Awais

1 messages · Page 1 of 1 (latest)

full wrenBOT
shy dew
#

Do you mean you would like to authorise the payment first, then capture it later?

worn wren
#

yes

shy dew
worn wren
#

I need to hold $1 initially and then I need to charge full order amount.
What's the best way to handle this senario?

#

With above method you suggested, I will be able to make hold on $1 but then I won't be able to charge customer full order amount.

#

?

shy dew
#

Why would you want to hold $1?

worn wren
#

I want to make sure it's an actual customer before allow them to place an order

shy dew
shy dew
#

I need to hold $1 initially and then I need to charge full order amount.
If this is the case, the recommended steps will be:

  1. Place the hold with Payment Intent of $1 and save the payment method at the same time:
  2. When you are ready to charge, cancel the Payment Intent with $1 and create the new Payment Intent with final amount on saved payment method
worn wren
#

So I need to pass


[
'capture_method' => 'manual',
'setup_future_usage' => 'off_session'
]

while creating the payment intent right?

shy dew
#

yup! in addition, you'd need to create customer and set customer ID in customer in Payment Intent creation request in order to use the saved payment method in the future

worn wren
#

so guest customer won't work in that case?

shy dew
#

yup, guest customer won't work

worn wren
#

ok thanks for the help

shy dew
#

No problem! Happy to help 😄

worn wren
#

If we have a payment method saved for later use, and we try to charge the customer, does that require authentication?
How to deal with that?

shy dew
#

When you set off_session: true in the next Payment Intent payment, Stripe will inform the issuer that the customer is not present to perform authentication. Authentication may not be required mostly. However, if the issuer insists on having authentication, you should bring customer back to perform it

worn wren
#

So it will throw an error on backend right?

full wrenBOT
shy dew
#

No, it won't throw error. The payment intent status will be in requires_action for you to bring the customer back to complete authentication

worn wren
#

ok

swift briar
#

Not with an off_session: true payment. It'll transition to requires_payment_method