finq / laravel-ihamkor
Laravel package for i-Hamkor API integration
Installs: 11
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 0
Forks: 0
Open Issues: 0
pkg:composer/finq/laravel-ihamkor
Requires
- php: ^8.3
- illuminate/contracts: ^11.0|^12.0
- illuminate/http: ^11.0|^12.0
- illuminate/support: ^11.0|^12.0
Requires (Dev)
- orchestra/testbench: ^9.0|^10.0
- phpunit/phpunit: ^11.0
README
Laravel package for i-Hamkor API integration.
Requirements
- PHP 8.3+
- Laravel 11.x or 12.x
Installation
Install the package via Composer:
composer require finq/laravel-ihamkor
The package will automatically register its service provider.
Configuration
Publish the configuration file:
php artisan vendor:publish --tag=ihamkor-config
Add the following environment variables to your .env file:
IHAMKOR_URL=https://api.i-hamkor.uz/ IHAMKOR_CLIENT_ID=your-client-id IHAMKOR_USERNAME=your-username IHAMKOR_PASSWORD=your-password IHAMKOR_TIMEOUT=30 IHAMKOR_RETRY_TIMES=3 IHAMKOR_RETRY_SLEEP=100
Usage
Using the Facade
use Finq\Ihamkor\Facades\Ihamkor; // Get taxi income data $response = Ihamkor::taxiIncome($pinfl, $signature); // Register user verification $response = Ihamkor::registerMyId($pinfl, $job_id); // Get person info $response = Ihamkor::getPersonInfo($pinfl, $signature);
Using Dependency Injection
use Finq\Ihamkor\IhamkorService; class YourController extends Controller { public function __construct( protected IhamkorService $ihamkor ) {} public function index() { $response = $this->ihamkor->taxiIncome($pinfl, $signature); if ($response->successful()) { return $response->json(); } return response()->json(['error' => 'Request failed'], 500); } }
Handling Responses
use Finq\Ihamkor\Facades\Ihamkor; $response = Ihamkor::taxiIncome($pinfl, $signature); // Check if request was successful if ($response->successful()) { $data = $response->json(); } // Check for specific status codes if ($response->status() === 200) { // Handle success } // Get response body as array $data = $response->json(); // Get response body as string $body = $response->body();
Available Methods
| Method | Description |
|---|---|
taxiIncome(string $pinfl, string $signature) |
Get taxi income data from GNK marketplace |
registerMyId(string $pinfl, string $job_id) |
Register user verification via MyID |
getPersonInfo(string $pinfl, string $signature) |
Get person info by PINFL |
getClient() |
Get the underlying HTTP client |
Testing
composer test
License
The MIT License (MIT). Please see License File for more information.