Download the PHP package shetabit/payment without Composer
On this page you can find all versions of the php package shetabit/payment. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download shetabit/payment
More information about shetabit/payment
Files in shetabit/payment
Package payment
Short Description Laravel Payment Gateway Integration Package
License MIT
Homepage https://github.com/shetabit/payment
Rated 3.00 based on 1 reviews
Informations about the package payment
Laravel Payment Gateway
This is a Laravel Package for Payment Gateway Integration. This package supports Laravel 5.8+
.
Donate me if you like this package :sunglasses: :bowtie:
For PHP integration you can use shetabit/multipay package.
This packages works with multiple drivers, and you can create custom drivers if you can't find them in the current drivers list (below list).
- داکیومنت فارسی
- English documents
- 中文文档
List of contents
- Laravel Payment Gateway
- List of contents
- List of available drivers
- Install
- Configure
- How to use
- Working with invoices
- Purchase invoice
- Pay invoice
- Verify payment
- Useful methods
- Create custom drivers:
- Events
- Change log
- Contributing
- Security
- Credits
- License
List of available drivers
- asanpardakht :heavy_check_mark:
- aqayepardakht :heavy_check_mark:
- atipay :heavy_check_mark:
- azkiVam (Installment payment) :heavy_check_mark:
- behpardakht (mellat) :heavy_check_mark:
- bitpay :heavy_check_mark:
- digipay :heavy_check_mark:
- etebarino (Installment payment) :heavy_check_mark:
- fanavacard :heavy_check_mark:
- idpay :heavy_check_mark:
- irankish :heavy_check_mark:
- local :heavy_check_mark:
- jibit :heavy_check_mark:
- nextpay :heavy_check_mark:
- omidpay :heavy_check_mark:
- parsian :heavy_check_mark:
- pasargad :heavy_check_mark:
- payir :heavy_check_mark:
- payfa :heavy_check_mark:
- paypal (will be added soon in next version)
- payping :heavy_check_mark:
- paystar :heavy_check_mark:
- poolam :heavy_check_mark:
- rayanpay :heavy_check_mark:
- sadad (melli) :heavy_check_mark:
- saman :heavy_check_mark:
- sep (saman electronic payment) Keshavarzi & Saderat :heavy_check_mark:
- sepehr (saderat) :heavy_check_mark:
- sepordeh :heavy_check_mark:
- sizpay :heavy_check_mark:
- toman :heavy_check_mark:
- vandar :heavy_check_mark:
- walleta (Installment payment) :heavy_check_mark:
- yekpay :heavy_check_mark:
- zarinpal :heavy_check_mark:
- zibal :heavy_check_mark:
- Others are under way.
Help me to add the gateways below by creating pull requests
- stripe
- authorize
- 2checkout
- braintree
- skrill
- payU
- amazon payments
- wepay
- payoneer
- paysimple
you can create your own custom drivers if it does not exist in the list, read the
Create custom drivers
section.
Install
Via Composer
Publish Vendor Files
-
publish configuration files:
- publish views for customization:
Configure
If you are using Laravel 5.5
or higher then you don't need to add the provider and alias. (Skip to b)
a. In your config/app.php
file add these two lines.
In the config file you can set the default driver
to use for all your payments. But you can also change the driver at runtime.
Choose what gateway you would like to use in your application. Then make that as default driver so that you don't have to specify that everywhere. But, you can also use multiple gateways in a project.
Then fill the credentials for that gateway in the drivers array.
How to use
your Invoice
holds your payment details, so initially we'll talk about Invoice
class.
Working with invoices
before doing any thing you need to use Invoice
class to create an invoice.
In your code, use it like the below:
available methods:
uuid
: set the invoice unique idgetUuid
: retrieve the invoice current unique iddetail
: attach some custom details into invoicegetDetails
: retrieve all custom detailsamount
: set the invoice amountgetAmount
: retrieve invoice amounttransactionId
: set invoice payment transaction idgetTransactionId
: retrieve payment transaction idvia
: set a driver we use to pay the invoicegetDriver
: retrieve the driver
Purchase invoice
In order to pay the invoice, we need the payment transactionId. We purchase the invoice to retrieve transaction id:
Pay invoice
After purchasing the invoice, we can redirect the user to the bank payment page:
Verify payment
When user has completed the payment, the bank redirects them to your website, then you need to verify your payment in order to ensure the invoice
has been paid.
Useful methods
-
callbackUrl
: can be used to change callbackUrl on the runtime. -
amount
: you can set the invoice amount directly -
via
: change driver on the fly -
config
: set driver configs on the fly
Create custom drivers:
First you have to add the name of your driver, in the drivers array and also you can specify any config parameters you want.
Now you have to create a Driver Map Class that will be used to pay invoices.
In your driver, You just have to extend Shetabit\Payment\Abstracts\Driver
.
Eg. You created a class: App\Packages\PaymentDriver\MyDriver
.
Once you create that class you have to specify it in the payment.php
config file map
section.
Note:- You have to make sure that the key of the map
array is identical to the key of the drivers
array.
Events
You can listen for 2 events
- InvoicePurchasedEvent: Occurs when an invoice is purchased (after purchasing invoice is done successfully).
- InvoiceVerifiedEvent: Occurs when an invoice is verified successfully.
Change log
Please see CHANGELOG for more information on what has been changed recently.
Contributing
Please see CONDUCT for details.
Security
If you discover any security related issues, please email [email protected] instead of using the issue tracker.
Credits
- Mahdi khanzadi
- All Contributors
License
The MIT License (MIT). Please see License File for more information.
Star History
All versions of payment with dependencies
illuminate/broadcasting Version ^5.0|^6.0|^7.0|^8.0|^9.0|^10.0|^11.0
illuminate/support Version ^5.0|^6.0|^7.0|^8.0|^9.0|^10.0|^11.0
shetabit/multipay Version ^1.0