【问题标题】:Recieve initial amount from paypal when creating recurring profile创建定期资料时从贝宝接收初始金额
【发布时间】:2014-12-31 00:59:51
【问题描述】:

我正在尝试做一件简单的事情,但它不能正常工作:

我在创建个人资料时尝试进行初始付款,问题是,当用户(在他同意后)从贝宝返回时,个人资料的状态为待处理(可能是由于未发生初始付款),并且没有支付初始金额,这可能是什么原因?

我执行定期支付宝的代码:

$req = array(
            'USER'      => 'bennyrefaelov-facilitator_api1.gmail.com',
            'PWD'  => 'YWKQ3M3NXBTZQ78U',
            'SIGNATURE' => 'AFcWxV21C7fd0v3bYYYRCpSSRl31AuVEFUpBu6N8yXkmFksuwwSiQOW8',
            'VERSION'   => '98.0',
            'METHOD'    => 'CreateRecurringPaymentsProfile',
            'TOKEN'=>$token,
            'payerid'=>$payerId,
            'PROFILESTARTDATE' =>'2014-11-05T09:28:00Z',
            'TOTALBILLINGCYCLES'=>'11',
            'DESC'=>'Pay up',
            'BILLINGPERIOD'=>'Day',
            'BILLINGFREQUENCY'=>'1',
            'AMT'=>'100.00',
            'INITAMT' => '50.00',
            'CURRENCYCODE'=>'USD',
            'COUNTRYCODE'=>'US',
            'MAXFAILEDPAYMENTS'=>'3'
       );

   $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, 'https://api-3t.sandbox.paypal.com/nvp');
        curl_setopt($ch, CURLOPT_VERBOSE, 1);
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($ch, CURLOPT_POST, 1);
        curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($req));
        $return = curl_exec($ch);

简而言之,为什么不进行首期付款?

【问题讨论】:

  • 默认情况下,如果初始支付金额失败,PayPal 不会激活配置文件。要覆盖此默认行为,请将“FAILDINITAMTACTION”字段设置为“ContinueOnFailure”。如果初始付款失败,“ContinueOnFailure”会指示 PayPal 将失败的付款金额添加到此定期付款资料中的未结余额中。
  • 好的,我知道了,但是如何在创建配置文件时使初始数量发生,为什么不发生呢?我希望初始金额从创建中获得资金

标签: paypal


【解决方案1】:

您正在使用沙盒方法。沙箱有时很慢,配置文件需要几天时间才能激活并发送 IPN。即使实时有时也需要时间。

【讨论】:

  • 那我为什么需要首期付款?
  • 所以用户来到我的网站,点击每月订阅,回到我的网站,应该等待 24 小时? (或多或少),或更糟糕的是:他应该在我确认他至少支付一个月之前收到包裹吗!?
猜你喜欢
  • 2012-04-30
  • 2015-02-28
  • 2020-09-19
  • 2013-07-23
  • 2014-03-08
  • 2015-06-07
  • 2012-01-14
  • 2014-04-26
  • 1970-01-01
相关资源
最近更新 更多