上,这是2013年一年的工作很短的ExpressCheckout指南凌乱贝宝网站上的文档的广泛阅读后,我想有贝宝支付页面和商户交易记录网页上显示的商品信息。
宝文档链接
您可以拨打以下网址的方法直接在网页浏览器,相应地更新令牌和payerid参数。
这是一个数字商品,因此不收取运费和手续费。单项行。金额和税费被给出。不需要确认的送货地址,没有送货地址字段,不允许自由文本注释,付款人不需要PayPal账户,也不需要注册(solutiontype =单独)。激活paypal网站上的信用卡部分(landingpage = billing)。在贝宝网站上使用自定义品牌标题。使用自定义字段为追踪目的赋予自己的价值。商家网站交易记录必须显示商品详情(提供SetExpressCheckout和DoExpressCheckoutPayment方法的商品详情)。
SetExpressCheckout方法打开一个新的事务
https://api-3t.sandbox.paypal.com/nvp?
USER=<userid>
&PWD=<pwd>
&SIGNATURE=<mysig>
&METHOD=SetExpressCheckout
&VERSION=98
&PAYMENTREQUEST_0_PAYMENTACTION=SALE
&REQCONFIRMSHIPPING=0
&NOSHIPPING=1
&ALLOWNOTE=0
&SOLUTIONTYPE=Sole
&LANDINGPAGE=Billing
&BRANDNAME=MY+WEBSHOP+TITLE
&PAYMENTREQUEST_0_AMT=22.22
&PAYMENTREQUEST_0_TAXAMT=4.30
&PAYMENTREQUEST_0_ITEMAMT=17.92
&PAYMENTREQUEST_0_DESC=mypurdesc
&PAYMENTREQUEST_0_CUSTOM=custom1
&PAYMENTREQUEST_0_CURRENCYCODE=EUR
&L_PAYMENTREQUEST_0_NUMBER0=itemid1
&L_PAYMENTREQUEST_0_NAME0=MyItem1
&L_PAYMENTREQUEST_0_DESC0=Item1+description
&L_PAYMENTREQUEST_0_QTY0=1
&L_PAYMENTREQUEST_0_AMT0=17.92
&L_PAYMENTREQUEST_0_TAXAMT0=4.30
&RETURNURL=https://myserver.com/webapp/paypal.jsp%3Fcmd=successexp
&CANCELURL=https://myserver.com/webapp/paypal.jsp%3Fcmd=cancelexp
回复必须有ACK =成功或ACK = SuccessWithWarning,读TOKEN价值
重定向用户浏览器到PayPal网站,给令牌值
https://www.sandbox.paypal.com/cgi-bin/webscr?cmd=_express-checkout&token=<token>
用户使用PayPal帐户或信用卡。贝宝重定向用户返回或取消网址。 重定向目标网址获取标记和PayerID参数值。 交易尚未完成,我们必须调用doExpressCheckoutPayment方法。在屏幕上
显示确认对话框(与OK,CANCEL按钮)或简单的情况下 提交事务,并显示“谢谢你,购买完成”消息。 用户已经接受了贝宝网站的付款,并预计交易将完成。
您可以在同一个请求 - 响应处理程序中使用异步后台任务,也可以使用异步后台任务。贝宝网站可能暂时不可用,所以不要期望它立即生效。
提交的事务,如果重定向是成功的,使用令牌和payerid
https://api-3t.sandbox.paypal.com/nvp?
USER=<userid>
&PWD=<pwd>
&SIGNATURE=<mysig>
&METHOD=DoExpressCheckoutPayment
&VERSION=98
&PAYMENTREQUEST_0_PAYMENTACTION=SALE
&PAYMENTREQUEST_0_AMT=22.22
&PAYMENTREQUEST_0_TAXAMT=4.30
&PAYMENTREQUEST_0_ITEMAMT=17.92
&PAYMENTREQUEST_0_CURRENCYCODE=EUR
&L_PAYMENTREQUEST_0_NUMBER0=itemid1
&L_PAYMENTREQUEST_0_NAME0=MyItem1
&L_PAYMENTREQUEST_0_QTY0=1
&L_PAYMENTREQUEST_0_AMT0=17.92
&L_PAYMENTREQUEST_0_TAXAMT0=4.30
&token=<token>
&payerid=<payerid>
读ACK =成功和验证领域
ACK=Success
PAYMENTINFO_0_PAYMENTSTATUS=Completed
PAYMENTINFO_0_ACK=Success
PAYMENTINFO_0_AMT=22.22 total amount must match
PAYMENTINFO_0_FEEAMT=0.99 (just for fun, read paypal comission fee)
PAYMENTINFO_0_CURRENCYCODE=EUR currency must match
(可选)查看交易明细贝宝
您可以在交易工作流程或任何t如果存储了令牌供以后使用。
https://api-3t.sandbox.paypal.com/nvp
?USER=<userid>
&PWD=<pwd>
&SIGNATURE=<mysig>
&METHOD=GetExpressCheckoutDetails
&VERSION=98
&token=<token>
阅读响应参数。
ACK=Success
CHECKOUTSTATUS=PaymentActionCompleted
PAYMENTREQUEST_0_AMT=22.22
PAYMENTREQUEST_0_TAXAMT=4.30
PAYMENTREQUEST_0_CURRENCYCODE=EUR
(可选)读取并保存事务ID,关联ID和令牌ID并写入日志表。
PAYMENTREQUEST_0_TRANSACTIONID=11E585715B622391E
CORRELATIONID=4534b683c335f
如果有任何逻辑错误,我愿意收到评论。
您是否在字段中使用了正确的字段名称..? –
我没有使用窗体...当我调用这个函数时,应该在PayPal中设置付款......稍后在我的代码中,我打电话给这个函数,该函数发送用户到PayPal: RedirectToPayPal($ paypal [“TOKEN”]); –
https://github.com/hrendoh/PayPal-Express-Checkout-example –