Like the customers who go searching for coupon codes AFTER they place the order and then want to apply the code to their already-placed order... or they'll cancel and then place a new order; either of which possibly costing you another transaction fee to credit them back or run a new transaction.
Transaction fee? Are you using Shopify or something? Not to mention the cost of spending 15 minutes replying to their emails and fixing the order.
I think supplying them with a code for their next purchase can work, but requires careful tactic and delivery to avoid cancellation & re-order. Some b&m stores have programs where they provide incentives for your next purchase, but put a starting date (which is usually a week or so from the time you earned it). Not that you want to delay their shopping, but it may be a worthy preventative measure.
Or just send them the coupons in the "Order Shipped" email. They cannot cancel at that point.
Or put a paper coupon in the package with your URL.