neputertech / khalti
Php wrapper for khalti integration
v1.0.1
2023-08-11 13:43 UTC
Requires
- php: ^7.4.0|^8.0
Requires (Dev)
- illuminate/console: ^7|^8|^9
- illuminate/support: ^7|^8|^9
- illuminate/validation: ^9.52
This package is auto-updated.
Last update: 2024-11-06 13:05:36 UTC
README
This package can help you integrate Khalti new ePayment Gateway (NEW) to your php application.
Here is an example of how you can initiate Khalti transaction:
... use Neputer\Facades\Khalti; use Illuminate\Support\Facades\Redirect; class PaymentController extends Controller { ... public function pay() { $return_url = "http://example.com/verify"; $purchase_order_id = "your_transaction_id"; // example 123567; $purchase_order_name = "your_order_name"; // example Transaction: 1234, $amount = 1000; // Your total amount in paisa Rs 1 = 100 paisa $response = Khalti::initiate($return_url, $purchase_order_id, $purchase_order_name, $amount); // Custom handle of khalti response return Redirect::to($response->payment_url); } public function verify(Request $request) { $pidx = $request->get('pidx'); return Khalti::lookup($pidx); } }
Installation
You can install the package via composer:
composer require neputertech/khalti
The package will automatically register itself.
You can publish the config with:
php artisan vendor:publish --tag=khalti-config
This is the contents of the published config file:
<?php return [ 'debug' => env('KHALTI_DEBUG', true), // set false to run on live khalti url 'website_url' => 'https://example.com', // your website url 'public_key' => env('KHALTI_PUBLIC_KEY', ''), // public key from khalti 'secret_key' => env('KHALTI_SECRET_KEY', ''), // secret key from khalti ];
Update .env with your khalti credentials
This credentals are provided with merchant dashboard.
set debug flag to false in config to use live khalti
KHALTI_DEBUG=true # Set this flag to false to use khatli in production
KHALTI_PUBLIC_KEY=
KHALTI_SECRET_KEY=
Usage
The basic concept of this package is that you can integrate Khalti ePayment Gateway (NEW) to your laravel applications and initiate/verify transactions