PayPal不返回变量

时间:2014-12-05 19:38:52

标签: php paypal

我正在将PayPal添加到我的结帐表单中。我只使用表单脚本而不是使用API​​。但是,付款完成后,我没有收到PayPal的响应变量。我想确认我收到的金额,以确定用户是否支付了他应该支付的金额。

由于我没有从paypal收到响应变量,我无法看到用户是否确实支付了大量金钱。难道我做错了什么?我看到很多人都遇到了问题,他们都没有答案。

我的表格:

<form action="https://www.sandbox.paypal.com/cgi-bin/webscr" method="post" >
                        <input type="hidden" name="business" value="seller@seller.com">
                        <input type="hidden" name="cmd" value="_xclick">
                        <input type="hidden" name="upload" value="1" />
                        <input type="hidden" name="item_name" value="<?php echo $_amount_credits ?> credits">
                        <input type="hidden" name="item_number" value="<?php echo $_invoice_id ?>">
                        <input type="hidden" name="amount" value="<?php echo $_total_amount ?>">
                        <input type="hidden" name="lc" value="NL">
                        <input type="hidden" name="rm" value="2">
                        <input type="hidden" name="cbt" value="Go back to http://domain.com">
                        <input type="hidden" name="no_note" value="1" />
                        <input type="hidden" name="currency_code" value="EUR">
                        <input type="hidden" name="return" value="http://domain.com/index.php?payment=success&transaction_id=<?php echo $_GET['tx'] ?>"/>

                        <input type="hidden" name="cancel_return" value="http://domain.com/index.php?payment=canceled&transaction_id=<?php echo $_GET['tx'] ?>"/>
                        <input type="submit" class="button blue _quick_order_overview _payment_paypal" name="submit" value="Pay via PayPal">
                    </form>

1 个答案:

答案 0 :(得分:1)

你应该使用Instant Payment Notification (IPN)来做这类事情。 GitHub / Packagist等提供了很多很好的模板。

当您的PayPal帐户发生交易时,IPN会将交易数据发布到您在服务器上设置的监听器脚本。这将是付款,退款,争议,清除​​电子支票等。您可以根据IPN发送给您的不同txn_type自动执行各种任务。