We use Stripe two step payments.
When a provider accepts your request, a transaction is created to authorize that funds are available in your account. Your card hasn't actually been charged. However, some banks do show the authorization as a "pending" charge. Once the provider completes your job the funds will be captured and your card will be charged.
If a provider happens to release your request for reasons including equipment malfunctions, family emergencies, etc., the charge will drop off and a new one will be made when the next provider accepts your request. The funds will not be removed from your account until the completion of service!
You can learn more about Stripes two step payments here. https://support.stripe.com/questions/does-stripe-support-authorize-and-capture