我是 paypal 开发的新手,我正在尝试在沙箱中创建一个 BuyNow 按钮,以使我能够在非生产环境中测试我的应用程序。如果我从我的普通帐户创建一个按钮,它会将我定向到 live paypal 站点,但是如果我尝试在沙盒中创建一个按钮,按钮创建页面总是在 live box 上,我无论如何都找不到创建按钮在沙箱中使用 Sandox 测试帐户,然后我可以在沙箱中进行测试付款。请帮忙。
5 回答
沙盒中的链接已损坏,并将您重定向到实时站点。发生这种情况时,有时您只需将沙箱添加到 URL 即可解决问题。因此,如果您单击该按钮,它会将您带到https://www.paypal.com/button/blah_blah,您只需将其更改为https://www.sandbox.paypal.com/button/blah_blah。另一种选择是从您的实时贝宝帐户创建一个非托管的明文按钮,然后只需修改 URL 以指向沙箱而不是实时站点。所以instewad以下:
<form target="paypal" action="https://www.paypal.com/cgi-bin/webscr" method="post">
您只需将其更改为
<form target="paypal" action="https://www.sandbox.paypal.com/cgi-bin/webscr" method="post">
然后您将更新业务变量以反映您的测试沙盒卖家帐户的电子邮件地址。
创建按钮的最后一个选项是不登录您的帐户,而是使用BMCreateButtom API调用。请记住,如果您只熟悉 HTML,则可能需要做更多的工作。
我遇到了同样的问题..
当我单击“为您的网站创建付款按钮”时,它会重定向到此链接www.paypal.com/us/webapps/mpp/standard-integration,这是实时贝宝网站。您的测试帐户在那里不存在,因此您无法使用沙盒测试帐户完成其余操作。
我通过以下方式解决了它..
重定向到上述链接后...您可以编辑链接。
放“沙盒”。在链接中。编辑后的链接将是 www.sandbox.paypal.com/us/webapps/mpp/standard-integration
现在您可以创建自定义按钮.. 生成的 HTML 将是这样的
<form action="https://www.sandbox.paypal.com/cgi-bin/webscr" method="post" target="_top">
<input type="hidden" name="cmd" value="_s-xclick">
<input type="hidden" name="hosted_button_id" value="5GW6UJKLK47R6">
<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>
我无法发表评论,因为我的声誉不够高,但我认为将这个元素添加到萨迪德汗的正确答案中很重要。尝试将地址更改为沙箱时,您需要在子域前面添加“www”。
sandbox.paypal.com将重定向到沙盒的首页/主页。 www.sandbox.paypal.com将正确运行购买仿真
您可以设置 data-env="sandbox" 来创建一个将您重定向到沙盒网站的按钮。
<script type="text/javascript" charset="utf-8"
src="/assets/paypal-button.min.js?merchant={merchant-email}"
data-button="buynow"
data-name="My product"
data-amount="1.00"
data-env="sandbox"
></script>