Certo, tieni l'hash della stringa in una tabella e prima di riprovare il pagamento verifica che non ci sia.
Se c'è => pagamento già fatto, è un doppione