Download the PHP package paytabs/laravel-sdk without Composer
On this page you can find all versions of the php package paytabs/laravel-sdk. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Informations about the package laravel-sdk
PayTabs Laravel SDK
Official PayTabs Laravel SDK for Payment Gateway integrations. This package provides a Laravel-friendly wrapper around the PayTabs PHP SDK, making it easy to integrate PayTabs payment services into your Laravel application.
Features
- Seamless Laravel Integration: Built as a proper Laravel package with Service Provider and Facade support
- Configuration Management: Environment-based configuration with sensible defaults
- IPN Handling: Built-in Instant Payment Notification (IPN) handling with idempotency support
- Profile Resolution: Support for multiple PayTabs profiles with custom resolvers
- Signature Validation: Automatic signature verification for callbacks
- Type Safety: Full PHP 8.1+ type hints and comprehensive PHPDoc blocks
- Idempotency: Cache-based duplicate delivery prevention for IPNs
Requirements
- PHP >= 8.1 (>= 8.3 when using Laravel 13)
- Laravel >= 10.0
- PayTabs PHP SDK v3
Installation
Install the package via Composer:
Publish the configuration file:
Quick Start
1. Configure Environment Variables
Add the following to your .env file:
2. Create a Payment Request
3. Handle IPN Callbacks
The package automatically registers an IPN route at /paytabs/ipn. Configure your IPN handler in config/paytabs.php:
Create your handler:
Documentation
- Installation Guide - Detailed installation and configuration instructions
- Usage Guide - Comprehensive usage examples and patterns
- IPN Handling - Deep dive into IPN processing and customization
Configuration
The package configuration file config/paytabs.php includes the following options:
| Option | Description | Default |
|---|---|---|
endpoint |
PayTabs endpoint region code | ARE |
profile_id |
Your PayTabs profile ID | - |
server_key |
Your PayTabs server key | - |
auto_fill_plugin_info |
Automatically add Laravel SDK info to requests | true |
load_routes |
Load package routes automatically | true |
ipn_enabled |
Enable IPN handling | true |
ipn_route_path |
Custom IPN route path | paytabs/ipn |
ipn_route_middleware |
Middleware for IPN route | ['api', 'throttle:60,1'] |
ipn_handler |
Required IPN handler class | - |
ipn_profile_resolver |
Custom profile resolver class | - |
ipn_idempotency_enabled |
Enable IPN idempotency checks | true |
ipn_idempotency_cache_store |
Cache store for idempotency | null (default) |
ipn_idempotency_key_prefix |
Cache key prefix | paytabs:ipn |
ipn_idempotency_ttl_seconds |
Idempotency lock TTL | 180 |
ack_on_handler_exception |
Acknowledge IPN even if handler fails | false |
ipn_time_guard_enabled |
Enable transaction time Guard | true |
ipn_time_guard_ttl_seconds |
Transaction time guard TTL (seconds) | 3600 |
ipn_time_guard_future_skew_seconds |
Tolerance for IPNs ahead of server time | 300 |
Using Multiple Profiles
If you need to use different PayTabs profiles for different transactions:
Security
- Signature Validation: All callbacks are automatically verified using PayTabs signature validation
- Idempotency: Duplicate IPN deliveries are prevented using cache-based locks
- Configuration: Sensitive credentials should be stored in environment variables
- Middleware: IPN endpoint supports custom middleware for additional security layers
Support
For issues and questions:
- GitHub Issues: PayTabs Laravel SDK
- PayTabs PHP SDK Documentation (Chat mode):
- PayTabs Official Documentation: PayTabs Docs
License
This package is distributed under a proprietary license. See LICENSE.md for full terms.
All versions of laravel-sdk with dependencies
paytabs/php-sdk Version ^3.2.4
illuminate/cache Version ^10.0|^11.0|^12.0|^13.0
illuminate/config Version ^10.0|^11.0|^12.0|^13.0
illuminate/contracts Version ^10.0|^11.0|^12.0|^13.0
illuminate/http Version ^10.0|^11.0|^12.0|^13.0
illuminate/routing Version ^10.0|^11.0|^12.0|^13.0
illuminate/support Version ^10.0|^11.0|^12.0|^13.0
illuminate/log Version ^10.0|^11.0|^12.0|^13.0