定制 eadortsu/laravel-omnipay 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

eadortsu/laravel-omnipay

Composer 安装命令:

composer require eadortsu/laravel-omnipay

包简介

Integerates Omnipay with Laravel and provides an easy configuration.

README 文档

README

Total Downloads Latest Version Dependency Status

Integrates the Omnipay PHP library with Laravel 5 via a ServiceProvider to make Configuring multiple payment tunnels a breeze!

Laravel 4 Support

For Laravel 4 see the version 1.x tree

Now using Omnipay 2.3/2.5

Version 2.0 and onwards has been updated to use Omnipay 2.3.

Version 2.2 and onwards is using Omnipay 2.5

Version 2.3 and onwards supports Laravel 5.4

Composer Configuration

Include the laravel-omnipay package as a dependency in your composer.json:

"ignited/laravel-omnipay": "2.*"

Note: You don't need to include the omnipay/common in your composer.json - it is a requirement of the laravel-omnipay package.

Omnipay recently went refactoring that made it so that each package is now a seperate repository. The omnipay/common package includes the core framework. You will then need to include each gateway as you require. For example:

"omnipay/eway": "*"

Alternatively you can include every gateway by requring:

"omnipay/omnipay": "*"

Note: this requires a large amount of composer work as it needs to fetch each seperate repository. This is not recommended.

Installation

Run composer install to download the dependencies.

Laravel 5

Add a ServiceProvider to your providers array in config/app.php:

'providers' => [

	'Ignited\LaravelOmnipay\LaravelOmnipayServiceProvider',

]

Add the Omnipay facade to your facades array:

	'Omnipay' => 'Ignited\LaravelOmnipay\Facades\OmnipayFacade',

Finally, publish the configuration files:

php artisan vendor:publish --provider="Ignited\LaravelOmnipay\LaravelOmnipayServiceProvider" --tag=config

Lumen

For Lumen add the following in your bootstrap/app.php

$app->register(Ignited\LaravelOmnipay\LumenOmnipayServiceProvider::class);

Copy the laravel-omnipay.php file from the config directory to config/laravel-omnipay.php

And also add the following to bootstrap/app.php

$app->configure('laravel-omnipay');

Configuration

Once you have published the configuration files, you can add your gateway options to the config file in config/laravel-omnipay.php.

PayPal Express Example

Here is an example of how to configure password, username and, signature with paypal express checkout driver

...
'gateways' => [
    'paypal' => [
        'driver'  => 'PayPal_Express',
        'options' => [
            'username'  => env( 'OMNIPAY_PAYPAL_EXPRESS_USERNAME', '' ),
            'password'  => env( 'OMNIPAY_PAYPAL_EXPRESS_PASSWORD', '' ),
            'signature' => env( 'OMNIPAY_PAYPAL_EXPRESS_SIGNATURE', '' ),
            'solutionType' => env( 'OMNIPAY_PAYPAL_EXPRESS_SOLUTION_TYPE', '' ),
            'landingPage'    => env( 'OMNIPAY_PAYPAL_EXPRESS_LANDING_PAGE', '' ),
            'headerImageUrl' => env( 'OMNIPAY_PAYPAL_EXPRESS_HEADER_IMAGE_URL', '' ),
            'brandName' =>  'Your app name',
            'testMode' => env( 'OMNIPAY_PAYPAL_TEST_MODE', true )
        ]
    ],
]
...

Usage

$cardInput = [
	'number'      => '4444333322221111',
	'firstName'   => 'MR. WALTER WHITE',
	'expiryMonth' => '03',
	'expiryYear'  => '16',
	'cvv'         => '333',
];

$card = Omnipay::creditCard($cardInput);
$response = Omnipay::purchase([
	'amount'    => '100.00',
	'returnUrl' => 'http://bobjones.com/payment/return',
	'cancelUrl' => 'http://bobjones.com/payment/cancel',
	'card'      => $cardInput
])->send();

dd($response->getMessage());

This will use the gateway specified in the config as default.

However, you can also specify a gateway to use.

Omnipay::setGateway('eway');

$response = Omnipay::purchase([
	'amount' => '100.00',
	'card'   => $cardInput
])->send();

dd($response->getMessage());

In addition you can take an instance of the gateway.

$gateway = Omnipay::gateway('eway');

统计信息

  • 总下载量: 41
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 2
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 97
  • 开发语言: PHP

其他信息

  • 授权协议: Unknown
  • 更新时间: 2020-08-13

承接程序开发

PHP开发

VUE

Vue开发

前端开发

小程序开发

公众号开发

系统定制

数据库设计

云部署

网站建设

安全加固