2016-12-06 38 views
0

我必須在PHP中爲在線paymant系統實現Omnipay庫。我已經閱讀過Omnipay文檔,但我不明白它是如何工作的。在Laravel項目中使用Omnipay

// Setup payment gateway 
$gateway = Omnipay::create('Stripe'); 
$gateway->setApiKey('abc123'); 

什麼應該傳遞給create()方法,以及setApiKey的目的是什麼。

我應該在哪裏調用這些方法?

回答

2

Omnipay是通往無關庫,以便使用Omnipay::create()你需要指定的支付網關創建網關對象,當你想使用,在你的榜樣的情況下,網關是Stripeomnipay-stripe),所以你通過網關名進入create('Stripe')方法。

您可以在php聯盟網站上找到支持的網關列表(official/third party)。

每個支付網關都有不同的憑據要求,Stripe需要一個API密鑰,您可以在您的Stripe帳戶設置中找到該密鑰並通過網關對象的setApiKey()方法傳遞給Omnipay。

另一個例子Paypalomnipay-paypal)要求,你需要在網關對象上設置一個用戶名,密碼,簽名和PayPal帳戶ID:

$gateway = Omnipay::create('PayPal_Express'); 
$gateway->setUsername(USERNAME); 
$gateway->setPassword(PASSWORD); 
$gateway->setSignature(SIGNATURE); 
$gateway->setSellerPaypalAccountId(SELLERPAYPALACCOUNTID); 

一個簡單的方法,找出哪些方法可用於一個特定的網關是看它的Gateway.php文件; Omnipay\Stripe\GatewayOmnipay\PayPal\ProGateway