1

我正在使用 Paypal REST,PHP SDK 大师。这个问题涉及付款。

当我使用“credit_card”付款方式时,我需要知道如何获取 PayerID。

如果您查看示例/付款下的 PHP SDK,您将看到两个示例文件,CreatePayment.php 和 ExecutePayment.php。这些样本独立运行。

这就是我想要做的。在 CreatePayment.php 我想调用 ExecutePayment.php。在 CreatePaymet.php 文件的底部,我会有这样的一行。

 header( "Location: ExecutePayment.php?success=true&PayerID=ABC12345678

问题是,我从哪里获得 PayerID?

现在,我使用支付方式 paypal 进行这项工作。(在 SDK 中,请参阅 CreatePaymentUsingPayPal )工作方式是给它重定向 url 以返回和取消(你不提供approval_ur)
然后,在文件的底部,它有这个代码,它循环通过支付对象的链接,并获得approval_url。

foreach($payment->getLinks() as $link) {
   if($link->getRel() == 'approval_url') {
      $redirectUrl = $link->getHref();
      break;
   }
}

if(isset($redirectUrl)) {
   header("Location: $redirectUrl"); 
   exit;

}

$redirectUrl (approval_url) 是这样的,控制权将转移到那里。

< https://www.sandbox.paypal.com/cgi-bin/webscr?cmd=_express-checkout&token=EC-12345678AB5432123 >

当控制权返回到您的站点时,您将看到您指定的返回 url
现在在其末尾附加了 PayerID 和令牌。换句话说,paypal 服务为您提供 PayerID 并自动将其附加到您的退货 url。

这就是使用贝宝付款方式的工作方式。现在,问题是,我如何使用支付方式信用卡获取 PayerID?

4

1 回答 1

3

每当您使用 PayPal 付款时,您将在买家在 PayPal 结帐页面上批准付款后获得付款人 ID,然后您将使用该 ID 向他们的 PayPal 帐户收取费用,这是两步过程。

但是信用卡付款是一个步骤过程,您将使用信用卡和其他信息向 PayPal 提交创建请求,并且交易将同时完成。因此,信用卡付款不涉及“执行”步骤。

于 2014-10-07T22:06:06.880 回答