我正在尝试将 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();
}
?>
答案 0 :(得分:1)
如果您使用的是Vault,则需要获得批准才能接受直接信用卡。您需要确保已为Rest API和Vault提交的应用程序已完全获得直接信用卡批准。
来自PayPal开发者网站:
存储和使用客户信用卡
某些国家/地区的直接信用卡付款和相关功能受到限制。
以下是有关使用您的应用程序实现的其他信息:
Apps 101
以下是说明: