我正在建立一个电子商务网站,而paypal集成似乎正在发挥作用.我有一个购物车,总计了里面的所有物品,添加了运费,然后用这些线将该号码发送到paypal.
string address = "https://api-3t.sandbox.paypal.com/nvp?USER=<username>&PWD=<password>&VERSION=71.0&SIGNATURE=<signature>&METHOD=SetExpressCheckout&PAYMENTREQUEST_0_AMT=" + lblTotal.Text + "&PAYMENTREQUEST_0_CURRENCYCODE=USD&RETURNURL=http://www.secretskeletonminiatures.com/checkout.aspx&CANCELURL=http://www.secretskeletonminiatures.com/cart.aspx&PAYMENTREQUEST_0_PAYMENTACTION=Sale";
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(address);
Run Code Online (Sandbox Code Playgroud)
然后我使用HTTPWebResponse从paypal获取响应并解析令牌并将用户重定向到
Response.Redirect("https://www.sandbox.paypal.com/us/cgi-bin/webscr?cmd=_express-checkout&useraction=commit&token=" + token);
Run Code Online (Sandbox Code Playgroud)
当用户进入paypal然后登录并点击"立即付款"按钮并重定向到我的网站的结帐页面.
所以一切似乎都好.但是,当我检查沙箱帐户时,这些钱实际上都没有转移.
最常见的原因是重定向url中缺少useraction = commit参数,但它存在,所以这不是问题.
在PayPal(沙盒)中,我定义了一个日语用户,其名字和姓氏带有日文字符.
但是,我收到的IPN通知使用charset = windows-1252进行编码.实际上,这是从Paypal收到的HTTP请求中的参数之一.
我想用他/她的名字问候用户,但由于我似乎收到的不是Unicode,我会发送垃圾字符而不是付款人姓名.
有没有办法让Paypal的IPN通知以Unicode发送给我的监听器?
我在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 With Paypal"
谢谢.