If you cancel an order where the payment has been captured you will still be charged processing fees.
To prevent this in the future, you can turn on manual payment capture. This means the customers payment will process at checkout, but you will have to manually capture it once you know the order will be fulfilled.
A second option is to turn on inventory tracking. This will ensure you don't sell products you don't have in stock.
I hope that helps!
Skye | Social Care @ Shopify - Was my reply helpful? Click Like to let me know! - Was your question answered? Mark it as an Accepted Solution - To learn more visit the Shopify Help Center or the Shopify Blog