如果PayPal IPN Listener脚本发现重复付款,PayPal会取消该交易吗?

时间:2017-11-21 03:16:13

标签: paypal

我正在使用IPN设置paypal集成,就在我的IPN侦听器将IPN数据添加到数据库之前,我使用下面的代码,检查以确保事务不在数据库中,并且如果是这样,它退出脚本:

 //Check if payment data exists with the same TXN ID.
    $stmt = $pdo->prepare("SELECT payment_id FROM payments WHERE transaction_id = ?");
    $stmt->execute([$transaction_id]);
    $num_rows= $stmt->rowCount();
    if($num_rows > 0){
        exit();
    } 
    //then more code to insert IPN data into database

我感到困惑的是:如果它发现transaction_id已经存在并退出脚本,付款是否仍然得到处理,它只是没有将任何信息放入我的数据库,或者它也是取消PayPal结束时的付款?希望它是后者,但如果它是前者,那么应如何处理这种情况,因为付款需要取消,而且我不确定如何完成这项工作。

1 个答案:

答案 0 :(得分:1)

这是一个重复的通知。 Paypal可能不止一次发送通知,但他们只给你一次钱,你应该只记录一次交易。