3D secure - Unsure of using verifyBuyer with 'CHARGE' and changing payment amount value later

Hello, I’m currently implementing Stripe 3D secure into my companies shopping platform.

#CURRENT SETUP The payment flow after selecting items:

  1. a payment page where card information is collected (there is a subtotal amount)
  2. after submitting step 1, proceeds to a confirmation page, final discounts, points, and shipping charges have been calculated into the total
  3. after submitting step 2, proceeds to the completion page.
  4. In between the confirmation page and completion page, there is a settle step on the php backend (here the final payment amount is set, and the square createPayment method is called)

From reading through the documentation, I’m unsure of the following.
#ADDING SQUARE 3DSecure
On my payment page, I call verifyBuyer with it being set to “Charge”, and set the amount as the subtotal. Then in the settle step, I set the updated amount. Things seems to work ok in the sandbox environment. Though I’m unsure if I’ve implemented 3D Secure in a way that was not intended.

#QUESTION
Is it a problem to set an amount that does not reflect the final amount on my payment page, and use CHARGE, even though the payment will not be created until a later step with a different amount?

Do I need to call verifyBuyer again when the amount has changed in the settle step?

Apologies if anything is unclear. I’m coming back to this task after sometime away, and there may be things I have overlooked. I can clarify further, if something was missed, or doesn’t make sense.
Any advise would be much appreciated, thank you!

We always recommend the currency and amount exactly match whats being charged for the best chance of the bank not declining the payment. Banks may accept the payment but we don’t recommend verifying with an amount thats different than whats being charged. :slight_smile: