Hi there,
Thanks for this suggestion.

At present WHMCS considers a promo code "used" when an order is successfully placed. Some payment gateways can have a delay between initiating payment and being marked paid, the proposed change could allow another user to place an order using the same promo code in the interim. That could lead to a situation where a promo code is used more times than permitted.

The current design mitigates this situation, but we'd be interested to hear suggestions which could do both.