Paypal Checkout Express 不显示订单详细信息
Paypal Checkout Express doesn't show the order details
我在 Laravel 4
上使用库 PayPal-PHP-SDK
我在显示订单详细信息时遇到问题。
我按照 Paypal Web Checkout 中的步骤操作
它没有向我显示订单详情。
它说 "You'll be able to see your order details before you pay."
- Image Link
这是我收到link付款时的方法:
public function checkout()
{
$apiContext = new ApiContext($this->cred, 'Request' . time());
$apiContext->setConfig($this->sdkConfig);
$payer = new Payer();
$payer->setPaymentMethod("paypal");
$amount = new Amount();
$amount->setCurrency("EUR");
$amount->setTotal("10");
$transaction = new Transaction();
$transaction->setDescription("Example");
$transaction->setCustom('abv');
$transaction->setAmount($amount);
$redirectUrls = new RedirectUrls();
$redirectUrls->setReturnUrl(URL::to('/') . '/payment/success/');
$redirectUrls->setCancelUrl(URL::to('/') . '/payment/cancel/');
$payment = new Payment();
$payment->setIntent("sale");
$payment->setPayer($payer);
$payment->setRedirectUrls($redirectUrls);
$payment->setTransactions(array($transaction));
$payment->create($apiContext);
print $payment->getApprovalLink();
}
我在您的请求中没有看到任何详细信息。查看发送到 PayPal 的原始请求示例会有所帮助,但据我所知,这些参数根本没有包含在内。
附带说明一下,您可能有兴趣查看我的 PHP class library for PayPal. It's available on GitHub and Packagist 并与 Composer 一起工作,因此它与 Laravel 一起工作得非常好,并且比 PayPal 的 SDK 更容易使用.它设置了您可能想要使用的所有参数,包括逐项详细信息,因此您只需填写参数即可。
正如安德鲁所提到的,您的请求中缺少逐项详细信息。这就是你可以做到的。 http://paypal.github.io/PayPal-PHP-SDK/sample/doc/payments/CreatePaymentUsingPayPal.html
如您所见,create payment has an array of transactions 具有 item_list
属性,需要对其进行设置。您可以在上面 link.
中使用我们的 SDK 查看如何执行此操作
我们现在在我们的 SDK 中附加了很多示例,可以 运行 在您的本地机器上只用一个命令。请按照说明here
您需要运行的命令是:
php -f <paypal SDK Directory>/paypal/rest-api-sdk-php/sample/index.php
这将在 localhost:5000 托管一个本地服务器,允许您 运行 位于 samples directory 的示例。
PayPal-PHP-SDK 正在大力发展,我们正在为其添加越来越多的功能。请访问我们的 SDK page 查看所有支持文档、API 规格、示例等。
我在 Laravel 4
上使用库 PayPal-PHP-SDK我在显示订单详细信息时遇到问题。 我按照 Paypal Web Checkout 中的步骤操作 它没有向我显示订单详情。
它说 "You'll be able to see your order details before you pay."
这是我收到link付款时的方法:
public function checkout()
{
$apiContext = new ApiContext($this->cred, 'Request' . time());
$apiContext->setConfig($this->sdkConfig);
$payer = new Payer();
$payer->setPaymentMethod("paypal");
$amount = new Amount();
$amount->setCurrency("EUR");
$amount->setTotal("10");
$transaction = new Transaction();
$transaction->setDescription("Example");
$transaction->setCustom('abv');
$transaction->setAmount($amount);
$redirectUrls = new RedirectUrls();
$redirectUrls->setReturnUrl(URL::to('/') . '/payment/success/');
$redirectUrls->setCancelUrl(URL::to('/') . '/payment/cancel/');
$payment = new Payment();
$payment->setIntent("sale");
$payment->setPayer($payer);
$payment->setRedirectUrls($redirectUrls);
$payment->setTransactions(array($transaction));
$payment->create($apiContext);
print $payment->getApprovalLink();
}
我在您的请求中没有看到任何详细信息。查看发送到 PayPal 的原始请求示例会有所帮助,但据我所知,这些参数根本没有包含在内。
附带说明一下,您可能有兴趣查看我的 PHP class library for PayPal. It's available on GitHub and Packagist 并与 Composer 一起工作,因此它与 Laravel 一起工作得非常好,并且比 PayPal 的 SDK 更容易使用.它设置了您可能想要使用的所有参数,包括逐项详细信息,因此您只需填写参数即可。
正如安德鲁所提到的,您的请求中缺少逐项详细信息。这就是你可以做到的。 http://paypal.github.io/PayPal-PHP-SDK/sample/doc/payments/CreatePaymentUsingPayPal.html
如您所见,create payment has an array of transactions 具有 item_list
属性,需要对其进行设置。您可以在上面 link.
我们现在在我们的 SDK 中附加了很多示例,可以 运行 在您的本地机器上只用一个命令。请按照说明here
您需要运行的命令是:
php -f <paypal SDK Directory>/paypal/rest-api-sdk-php/sample/index.php
这将在 localhost:5000 托管一个本地服务器,允许您 运行 位于 samples directory 的示例。
PayPal-PHP-SDK 正在大力发展,我们正在为其添加越来越多的功能。请访问我们的 SDK page 查看所有支持文档、API 规格、示例等。