Paypal IPN - 返回时自定义为空

时间:2013-12-20 22:39:53

标签: c# asp.net asp.net-mvc-4 paypal paypal-ipn

提前感谢您提供任何帮助。

我正在使用ASP.NET C#MVC 4创建一个网站,用户可以在其中支付一种游戏货币以添加到他们的帐户中,我使用Paypal作为我的用户的桥梁购买此货币。我在我的网站上添加了一个“立即购买”按钮,我使用PayPal的沙盒测试环境创建了该按钮。这是表单的HTML代码:

        <form action="https://www.sandbox.paypal.com/cgi-bin/webscr" method="post" target="_top" id="PayPal">
            <input type="hidden" name="custom" value="@SessionManager.CurrentUser.UserID">
            <input type="hidden" name="cmd" value="_s-xclick">
            <input type="hidden" name="hosted_button_id" value="MHV7ZLEXJC6YJ">
            <input type="hidden" name="on0" value="CurrencyAmounts">
            <label for="os0">How Much?</label>
            <select name="os0">
                <option value="One Thousand">One Month $3.00 USD</option>
                <option value="Six Thousand">Six Months $15.00 USD</option>
                <option value="Ten Thousand">One Year $25.00 USD</option>
            </select>
            <br class="clearfix" />
            <br />
            <input type="hidden" name="currency_code" value="USD">
            <input type="image" src="https://www.sandbox.paypal.com/en_US/i/btn/btn_buynowCC_LG.gif" border="0" name="submit" alt="PayPal - The safer, easier way to pay online!">
            <img alt="" border="0" src="https://www.sandbox.paypal.com/en_US/i/scr/pixel.gif" width="1" height="1">
        </form>

现在,表单发送,我可以登录我的沙盒用户购买它,并且事务确认。我的IPN监听器正在记录我从IPN获得的所有数据,但每次,custom都没有价值。我做错了什么?

1 个答案:

答案 0 :(得分:0)

您正在使用托管按钮,因此在创建按钮时必须设置项目编号和其他详细信息。如果你想在这样的HTML代码中构建细节,你需要在按钮创建向导中禁用“PayPal上的保存按钮”选项,但当然这会让你的代码容易受到人们的干扰,所以你会我们希望确保您在订单时检查价格和所有内容是否匹配。