I am developing a booking system where users can make reservations and pay online. However, I need to implement a feature where the payment is held for 10 minutes, allowing the admin to approve the booking request before the payment is completed.
Here’s the flow I envision:
User makes a booking request and initiates payment.
The payment is held (not completed) for up to 10 minutes.
During this time, the admin reviews the booking request.
If the admin approves the request within 10 minutes, the payment is completed.
If the admin rejects the request or fails to approve within 10 minutes, the payment is canceled/refunded.
What are the best practices or methods to implement this kind of payment hold functionality? Are there any payment gateways that support this out-of-the-box, or would this require a custom implementation? Any guidance or examples would be greatly appreciated.
Researching Payment Gateways: I have looked into popular payment gateways like PayPal, Stripe, and Square. These gateways offer features like payment authorization and capture but don’t seem to support holding a payment for a specific duration and waiting for manual approval.
shaukat ali is a new contributor to this site. Take care in asking for clarification, commenting, and answering.
Check out our Code of Conduct.