Paypal API结算协议 - 待定的协议状态

时间:2014-08-01 14:20:11

标签: php curl paypal paypal-sandbox paypal-subscriptions

我对可能存在的问题感到困惑,最初是正确处理了付款,但现在不是直接完成,而是处于待定模式,数小时并且尚未完成任何一个。< / p>

我已经制定了一个结算方案,用户必须按月支付费用。

我去购买了订阅,如果我们查看API调用是按照以下顺序完成的,并且响应中没有错误: 1 - 发送创建协议调用并收到令牌。 2 - 将用户重定向到Paypal网站,让他们同意这些条款。 3 - 重定向回站点后,成功调用“执行协议”并收到订阅标识。

Paypal帐户未启用付款审核,我已启用接收任何货币的功能,并且允许重复付款。

当我通过ID检索协议时,我可以看到开始日期是2014-07-31T14:00:00Z。 我也有初始付款,也没有收到。

以下是用于创建结算方案的示例数组:

    $data['description'] = 'up to 10';
    $data['type'] = 'INFINITE';

    $data['payment_definitions'] = array(array());
    $data['payment_definitions'][0]['name'] = 'Up to 10';
    $data['payment_definitions'][0]['type'] = 'REGULAR';
    $data['payment_definitions'][0]['frequency'] = 'MONTH';
    $data['payment_definitions'][0]['frequency_interval'] = '1'; 
    $data['payment_definitions'][0]['amount'] = array();
    $data['payment_definitions'][0]['amount']['value'] = '16.66';
    $data['payment_definitions'][0]['amount']['currency'] = 'AUD'; 
    $data['payment_definitions'][0]['cycles'] = '0';

    $data['merchant_preferences']['setup_fee'] = array();
    $data['merchant_preferences']['setup_fee']['value'] = '16.66';
    $data['merchant_preferences']['setup_fee']['currency'] = 'AUD';

    $data['merchant_preferences']['return_url'] = PAYPAL_RETURN_URL;
    $data['merchant_preferences']['cancel_url'] = PAYPAL_CANCEL_URL;
    $data['merchant_preferences']['auto_bill_amount'] = "YES";
    $data['merchant_preferences']['initial_fail_amount_action'] = "CONTINUE";
    $data['merchant_preferences']['max_fail_attempts'] = "0";

这是创建协议调用的示例

    $objDateTime = new DateTime('NOW');
    $start_date = $objDateTime->format('c'); // ISO8601 formated datetime 

    $options['name'] = "Subscription 1";
    $options['description'] = "Subscription 1";
    $options['start_date'] = $start_date;
    $options['plan'] = array();
    $options['plan']['id'] = "P-4DG30035CX372533MSFKYBFI";
    $options['payer'] = array();
    $options['payer']['payment_method'] = 'paypal';

这是一个示例协议执行调用

    $result = $this->paypal_curl_billing->billing_agreements_execute($token);

0 个答案:

没有答案