LaravelPackages.net
Acme Inc.
Toggle sidebar
samibettayeb/paytabs-laravel

Paytabs Laravel

11
1
1.1.0
About samibettayeb/paytabs-laravel

samibettayeb/paytabs-laravel is a Laravel package for paytabs laravel. It currently has 1 GitHub stars and 11 downloads on Packagist (latest version 1.1.0). Install it with composer require samibettayeb/paytabs-laravel. Discover more Laravel packages by samibettayeb or browse all Laravel packages to compare alternatives.

Last updated

Paytabs Laravel

Installation

Begin by installing this package through Composer. Just run following command to terminal-

composer require SAMIBETTAYEB/paytabs-laravel

Once this operation completes the package will automatically be discovered for Laravel 5.6 and above, otherwise, the final step is to add the service provider. Open config/app.php, and add a new item to the providers array.

'providers' => [
	...
	Damas\Paytabs\PaytabsServiceProvider::class,
],

Now add the alias.

'aliases' => [
	...
	'Paytabs' => Damas\Paytabs\Facades\Paytabs::class,
],

Example:

Create Payment Page:

Route::get('/paytabs_payment', function () {
    $pt = Paytabs::getInstance("MERCHANT_EMAIL", "SECRET_KEY");
	$result = $pt->create_pay_page(array(
		"merchant_email" => "MERCHANT_EMAIL",
		'secret_key' => "SECRET_KEY",
		'title' => "John Doe",
		'cc_first_name' => "John",
		'cc_last_name' => "Doe",
		'email' => "[email protected]",
		'cc_phone_number' => "973",
		'phone_number' => "33333333",
		'billing_address' => "Juffair, Manama, Bahrain",
		'city' => "Manama",
		'state' => "Capital",
		'postal_code' => "97300",
		'country' => "BHR",
		'address_shipping' => "Juffair, Manama, Bahrain",
		'city_shipping' => "Manama",
		'state_shipping' => "Capital",
		'postal_code_shipping' => "97300",
		'country_shipping' => "BHR",
		"products_per_title"=> "Mobile Phone",
		'currency' => "BHD",
		"unit_price"=> "10",
		'quantity' => "1",
		'other_charges' => "0",
		'amount' => "10.00",
		'discount'=>"0",
		"msg_lang" => "english",
		"reference_no" => "1231231",
		"site_url" => "https://your-site.com",
		'return_url' => "https://www.mystore.com/paytabs_api/result.php",
		"cms_with_version" => "API USING PHP"
	));
    
    	if($result->response_code == 4012){
	    return redirect($result->payment_url);
        }
        return $result->result;
});

Verify Payment:

Route::post('/paytabs_response', function(Request $request){
    $pt = Paytabs::getInstance("MERCHANT_EMAIL", "SECRET_KEY");
    $result = $pt->verify_payment($request->payment_reference);
    if($result->response_code == 100){
        // Payment Success
    }
    return $result->result;
});

you will need to exclude your paytabs_response route from CSRF protection

Star History Chart