贝宝集成中的未知错误

时间:2015-08-29 17:55:09

标签: php paypal

我正在尝试将 Paypal 整合到我的网站中,但它的混乱很多。

该文档似乎与他们的 PHP SDK 相匹配,因此遇到了麻烦请建议采用适当的整合方法。

我尝试过的代码如下:

<?php
    ini_set('max_execution_time', 300);
    require __DIR__  . '/bootstrap.php';
    // 3. Lets try to save a credit card to Vault using Vault API mentioned here
    // https://developer.paypal.com/webapps/developer/docs/api/#store-a-credit-card
    $apiContext->setConfig(
    array(
        'log.LogEnabled' => true,
        'log.FileName' => 'PayPal.log',
        'log.LogLevel' => 'DEBUG'
      )
    );
    $creditCard = new \PayPal\Api\CreditCard();
    $creditCard->setType("visa")
        ->setNumber("403*************")
        ->setExpireMonth("09")
        ->setExpireYear("2020")
        ->setCvv2("123")
        ->setFirstName("J***")
        ->setLastName("M*****");
    $fi = new \PayPal\Api\FundingInstrument();
    $fi->setCreditcard($creditCard);
    $payer = new \PayPal\Api\Payer();
    $payer->setPaymentmethod('credit_card');
    $payer->setFundinginstruments(array($fi));
    $amount = new \PayPal\Api\Amount();
    $amount->setCurrency('USD');
    $amount->setTotal('7.47');
    $transaction = new \PayPal\Api\Transaction();
    $transaction->setAmount($amount);
    $transaction->setDescription('This is the payment transaction  description.');
    $payment = new \PayPal\Api\Payment();
    $payment->setIntent('sale');
    $payment->setPayer($payer);
    $payment->setTransactions(array($transaction));
    // 4. Make a Create Call and Print the Card
    try {
        //$creditCard->create($apiContext);   
        //$creditCard->create($apiContext);       
        $payment->create($apiContext);
        echo $payment;
    }catch (\PayPal\Exception\PayPalConnectionException $ex) {
         // This will print the detailed information on the exception. 
        //REALLY HELPFUL FOR DEBUGGING
        echo $ex->getData();
    }
    ?>

1 个答案:

答案 0 :(得分:1)

如果您使用的是Vault,则需要获得批准才能接受直接信用卡。您需要确保已为Rest API和Vault提交的应用程序已完全获得直接信用卡批准。

来自PayPal开发者网站:

  

存储和使用客户信用卡
    某些国家/地区的直接信用卡付款和相关功能受到限制。

Vault Information

以下是有关使用您的应用程序实现的其他信息:
Apps 101

以下是说明:

  1. 登录developer.paypal.com
  2. 上的开发者帐户
  3. 点击我的帐户
  4. 向下滚动至直接信用卡
  5. 点击启用
  6. 点击继续
  7. 填写所要求的信息
  8. Visual Representation