我正在为一个客户建立一个网站,该网站希望让网站上的用户能够出售电子书,网站会员和非会员都可以购买。该网站本身根本不参与交易。
我已经使用自适应支付,因为这似乎有助于两个用户之间的“点对点”交易,其中网站不涉及并且不会削减或支付任何费用。我正在使用https://developer.paypal.com/webapps/developer/docs/classic/adaptive-payments/integration-guide/APIntro/
中的指南不幸的是主机使用php 5.2.17,这意味着我无法在github上使用PHP API代码,所以我不得不使用PHP自己动手。这不是问题,我以前做过很多次。我设法让沙盒以下列方式工作
我的网站拨打https://svcs.sandbox.paypal.com/AdaptivePayments/Pay电话 使用以下json编码数组:
$payload = array(
'actionType' => 'PAY',
'currencyCode' => $currencyCode,
'receiverList' => array(
'receiver' => array(
array(
'amount' => $amount,
'email' => $receiverEmail,
'paymentType' => "DIGITALGOODS"
)
)
),
'returnUrl' =>$successUrl,
'cancelUrl' => $cancelUrl,
'requestEnvelope' => array(
'errorLanguage' => 'en_US',
'detailLevel' => 'ReturnAll'
)
);
这给了我一个付费ID
然而当我查看沙盒时,我看到最近的付款正在审核中(显然我的沙箱余额为10,000,这标志着我是澳大利亚法律规定的潜在恐怖分子。如图所示)我想也许我需要制作一个IPN,即使上面列出的开发者文档没有提到它。我想做的最后一件事是启用付款被拒绝的下载。
所以我想我的问题是: 事实上,paypal称我的返回URL足以允许下载数字商品,或者我应该设置IPN并在授权下载之前等待PayPal点击它?
答案 0 :(得分:-1)
PayPal是PITA ! 并且没有任何争论。
回到您的问题。您应该在调用返回网址时验证付款是否通过。它应该向您发送令牌/交易,您可以查询并检查其付款状态。没有那么多地使用自适应付款,但在授予访问权限之前,您应始终确保付款已完成。