Paypal货件详情

时间:2012-11-07 17:59:30

标签: paypal paypal-sandbox paypal-adaptive-payments

我正在使用PayPal自适应付款(链式付款)。

如果我设置: 1.创建付款 2.在SetPaymentOptions中 - >需要送货地址选择= true 3.当我将用户重定向到https://www.sandbox.paypal.com/webscr&cmd=_ap-payment&paykey=[PA KEY]用户后,未显示任何提示传送地址

为什么?

相应的

https://www.x.com/developers/paypal/documentation-tools/api/pay-api-operation

使用CREATE时我应该这样做:创建 - 使用此选项设置使用SetPaymentOptions的付款指令,然后使用ExecutePayment稍后执行付款。

但是一旦我尝试运行ExecutePayment,我就会得到以下信息:

  
    

此付款申请必须由发件人授权

  

如何设置其他付款方式?

2 个答案:

答案 0 :(得分:1)

发件人是否真的授权付款? 流程应该是:

  1. 使用actionType作为CREATE
  2. 调用Pay API操作
  3. 如果paymentExecStatus =已创建且ack =成功,请获取payKey(此处,在此detailLevel字段中保留ReturnAll = RequestEnvelope付费API请求)
  4. 将用户重定向到Paypal https://www.sandbox.paypal.com/webscr?cmd=_ap-payment&paykey=YOUR_PAYKEY_ABOVE
  5. 如果用户批准付款,您将被重定向到作为Pay API请求的一部分发送的returnURL
  6. 使用PaymentDetails API操作验证审批状态
  7. 稍后您可以使用ExecutePayment API操作执行步骤4中设置的付款。发送您在步骤2中获得的payKey
  8. 您的错误代码为550001,因为用户批准似乎尚未成功完成。这可能是由于: 该应用程序未将用户/发件人重定向到Paypal进行授权

    OR

    用户未输入正确的登录详细信息

    OR

    没有足够的资金可用 等

答案 1 :(得分:1)

只有在您使用延迟链式付款时才会使用ExecutePayment调用。否则,只要买家登录并批准付款,付款仍然会发生,因此不需要ExecutePayment。在那个时候调用它会导致你得到的错误,付费密钥已经被使用了。