Idea: Maybe you should block new payments when a transaction of a payment is pending.
Example: I paid for the fee of the NFT, and pay for the NFT itself. If I do an F5 on the page I can make another payment. If an inexperienced user gets bored of waiting, he can do this and pay again thinking that the first transaction didn't went though. Maybe you should block that second payment.