Laravel Nagad payment BD
composer require code4mk/lara-nagadphp artisan vendor:publish --provider="Code4mk\Nagad\NagadServiceProvider" --tag=config1.1 ) if you are using Laravel before version 5.4, manually register the service provider in your config/app.php file
Code4mk\Nagad\NagadServiceProvider::classconfig/nagad.php
<?php return [ 'sandbox_mode' => env('NAGAD_MODE', 'sandbox'), 'merchant_id' => env('NAGAD_MERCHANT_ID','683002007104225'), 'merchant_number' => env('NAGAD_MERCHANT_NUMBER','01711428036'), 'callback_url' => env('NAGAD_CALLBACK_URL', 'http://127.0.0.1:8000/nagad/callback'), 'public_key' => env('NAGAD_PUBLIC_KEY',''), 'private_key' => env('NAGAD_PRIVATE_KEY','') ];NAGAD_MERCHANT_ID=683002007104225 NAGAD_MERCHANT_NUMBER=01711428036 NAGAD_CALLBACK_URL=http://127.0.0.1:8000/nagad/callback NAGAD_MODE=sandbox // sandbox or live NAGAD_PUBLIC_KEY="" //sandbox <optional> NAGAD_PRIVATE_KEY="" // sandbox <optional><?php use NagadPayment; $redirectUrl = NagadPayment::tnxID($id) ->amount($amount) ->getRedirectUrl(); return $redirectUrl;<?php use NagadPayment; $verify = (object) NagadPayment::verify(); if($verify->status === 'Success'){ $order = json_decode($verify->additionalMerchantInfo); $order_id = $order->tnx_id; // your functional task with order_id } if ($verify->status === 'Aborted') { dd($verify); // redirect or other what you want } dd($verify);~Sandbox
- Need a merchant account.
- Register a Nagad number and need sandbox balance (contact with nagad)
~ Live
- Need a merchant account (live server)
- Contact with Nagad and provide your live server ip address.
- provide support id ($sid) the nagad office
Sandbox works fine but when you deploy your project on server you can't get any response and don't work payment system
- Contact with nagad, provide your ip and support ID which you will get from temporary route
get-support-id. Nagad will be white-listed your ip and approve your merchant. Now your nagad gateway work properly on server.
~ temporary route (copy and paste)
Route::get('get-support-id',function(){ $sid = NagadPayment::tnxID(1) ->amount(100) ->getSupportID(); return $sid; })