2016-09-30 67 views
5

我已經創建了Paypal /開發人員/沙盒帳戶。已獲得API憑證。Magento 2:如何在Paypal Express中快速更改付款操作方法

下載PHP SDK http://paypal.github.io/PayPal-PHP-SDK/

參考:https://developer.paypal.com/docs/api/

https://devtools-paypal.com/guide/expresscheckout/php?interactive=ON&env=sandbox

我已經做了沙箱一項交易,使用我的PHP腳本授權方法。

我得做些什麼。 我需要獲得授權付款,將「授權」付款轉換爲「拍賣/銷售」方式&通知客戶&管理員以及。

如何獲得授權ID?

通過上述文件提到我需要使用3個Web服務

  • 獲得授權的支付細節
  • 捕捉授權支付
  • 獲取捕獲的付款細節

已具有「授權」付款的交易ID。

請提供要遵循的步驟&如果任何可用的例子,那麼請分享

需要把這個功能在Magento 2集成

[更新]

我已經改變了我在PayPal-PHP-SDK-master\sample\bootstrap.php文件中,PHP SDK中的API Sandbox憑據。

sample/payments/AuthorizePayment.php我將得到ID:PAY-0TV39791XXX02404VK7XD32I &它的工作正常的授權付款。

當我輸入我的Transaction Id它給

{ 「名」: 「INVALID_RESOURCE_ID」, 「消息」: 「請求的資源ID是不 找到。」, 「information_link」: 「https://developer.paypal.com/webapps/developer/docs/api/#INVALID_RESOURCE_ID」,」 debug_id「:」1f2b08ce88633「}

我的沙盒交易ID是3AA32794KF48247AA。所以問題是如何將您的交易ID轉換爲付款ID?

https://magento.stackexchange.com/questions/138579/magento-2-change-paypal-action-method-on-the-fly

下面是從貝寶

事務ID可後REST API執行付款, 經典API [NVP/SOAP] DoEC API或普通按鈕支付完成而產生的答覆。 它永遠不會工作,以扭轉搜索找到付款ID。

+0

這是由SO主持人是否他們想從SO網站切換到http://magento.stackexchange.com或不是?因爲這個我想在Magento 2的最終結果。謝謝 –

+0

嗨SO社區,請指導我實現功能。謝謝 –

+0

嗨,我已經更新了我的答案,請參閱下文。 – stweb

回答

1

如果你有paymentId,你可以得到認可的付款的細節是這樣的:

$payment = Payment::get($paymentId, $apiContext); 

對於支付類的所有化子性質來看看這個 - Payment.php

要更改沙盒/ API憑證在您的項目中編輯bootstrap.php

UPDATE

你並不需要使用AuthorizePayment.php。 Istead,請執行以下操作:

  1. 創建付款並獲取授權的網址(您的網站端)。
  2. 打印授權網址(您的網站側)。
  3. Cutomer遵循授權網址並轉到PayPal並授權付款(PayPal方)。
  4. 貝寶通過paymentId(PayPal方)將客戶返還給您的網站。
  5. 抓住paymentId並執行付款(您的網站端)。
+0

PaymentId =交易ID?我有交易ID。如何根據TransactionId獲取PaymentId? –

+0

當支付在PayPal側被批准後,它將paymentId作爲get參數返回到您的網站,並添加到您的返回網址中。你能澄清你如何獲得TransactionId? – stweb

+0

雖然我的交易ID存儲在我的數據庫從貝寶。我仍然必須重新創造整個事物嗎? –