我在paypal沙盒中创建了一个帐户并创建了2个帐户,其中一个帐户有一些钱用于付款。我使用我的java程序中的签名详细信息来获得付款。当用户点击pay with paypal按钮时,我们将从paypal获得一个令牌并将其传递给此URL:
https://www.sandbox.paypal.com/webscr?cmd=_express-checkout&token=
成功付款后,我无法在paypal沙盒帐户中看到任何交易?为什么会这样,我在做什么错?我正在使用Google App Engine java和jsp。请向我提供任何有关“Pay Paypal”的完整链接
感谢。
答案 0 :(得分:6)
在Why is DoExpressCheckoutPayment required for Paypal?中查看我的回答
要使用Express Checkout,您必须至少调用以下API调用:
1. SetExpressCheckout
- 设置交易
2. DoExpressCheckoutPayment
- 完成交易。
如果您未在DoExpressCheckoutPayment
的{{1}}参数中指定的页面上调用SetExpressCheckout
,则交易未完成。这是为了在结账流程中提供更大的灵活性。
Express Checkout旨在作为您自己结账过程中的直接解决方案。在快速结账后,您将重定向回您的网站,您应该显示订单确认,买方可以在启动最终RETURNURL
API调用的按钮/链接之前查看他/她的最终订单详细信息。这就是DoExpressCheckoutPayment
需要的原因。
答案 1 :(得分:1)
首先,我会使用常规的“发送资金”界面从一个测试帐户到另一个测试帐户进行付款并检查付款是否显示,只是为了排除PayPal沙箱正在运行的可能性。< / p>
至于快速结账,您不仅需要在用户返回您的网站后进行GetExpressCheckoutDetails,而且您还需要在付款显示之前执行DoExpressCheckoutPayment(待定或已完成,具体取决于无论您是在进行销售还是授权。如果您没有致电DoExpressCheckoutPayment,那么PayPal会假定您的用户离开了您的网站,或者没有确认交易。
这是我最喜欢的EC参考: https://cms.paypal.com/us/cgi-bin/?cmd=_render-content&content_ID=developer/e_howto_api_ECSimpleIntegration