Looking to hire Laravel developers? Try LaraJobs

laravel-nagad maintained by sabuj073

Description
Nagad payment gateway integration for Laravel (Bangladesh)
Last update
2026/03/10 06:02 (dev-main)
License
Links
Downloads
0

Comments
comments powered by Disqus

Laravel Nagad

Nagad payment gateway integration for Laravel (Bangladesh).

Installation

composer require sabuj073/laravel-nagad
php artisan vendor:publish --tag=nagad-config

Configuration

In .env:

NAGAD_SANDBOX=true
NAGAD_MERCHANT_ID=your_merchant_id
NAGAD_MERCHANT_NUMBER=your_merchant_number
NAGAD_PUBLIC_KEY=your_public_key
NAGAD_PRIVATE_KEY=your_private_key
NAGAD_CALLBACK_URL=https://yoursite.com/nagad/callback
NAGAD_SUCCESS_URL=https://yoursite.com/nagad/success
NAGAD_FAIL_URL=https://yoursite.com/nagad/fail

Usage

Create payment and redirect:

use Sabuj073\Nagad\NagadGateway;

$nagad = app(NagadGateway::class);
$result = $nagad->createPayment('500', 'INV-001');
return redirect($nagad->getRedirectUrl($result));

Routes:

Route::get('/nagad/callback', \Sabuj073\Nagad\Http\Controllers\NagadCallbackController::class)->name('nagad.callback');
Route::get('/nagad/success', fn () => view('nagad.success'))->name('nagad.success');
Route::get('/nagad/fail', fn () => view('nagad.fail'))->name('nagad.fail');

Verify / Refund:

$nagad->verifyPayment($paymentRefId);
$nagad->refund($paymentRefId, '100', 'Customer request');

Note: Nagad API endpoints and payload may vary. Adjust NagadGateway and config per Nagad Developer docs when going live.