I'm currently working on implementing a booking system where customers can provide their payment method. We're utilizing Stripe for payments. Once the customer completes the payment, we'll securely store their payment information. However, as an administrator, I'll only receive the payment if I approve the booking and confirm that the car is available. If not, we'll promptly refund the customer's payment. Additionally, in case of any damage to the car or discrepancies in mileage, we can process additional charges directly through Stripe. I'm using Nuxt for development. Can anyone offer assistance in implementing this scenario?
[enter image deenter image description herescription here](https://i.sstatic.net/AJmJmIa8.png)
You should look into Stripe's docs called Place a hold on a payment method. It will let you authorize a certain amount on a customer's card without capturing the funds immediately while you review the transaction. You can then release the funds by canceling the PaymentIntent (docs) or capture the funds (docs).
Similarly, you can configure whether to save payment method details for future payments during this payment as documented here