tamara-solution / php-sdk
Tamara PHP Client Library
3.0.3
2026-08-10 07:20 UTC
Requires
- php: >=8.1
- ext-json: *
- firebase/php-jwt: ^7.0
- guzzlehttp/guzzle: >=6.0
- kriswallsmith/buzz: ^1.2|^0.16
- nyholm/psr7: ^1.3
- psr/http-client: ^1.0
- psr/log: ^3.0.0
- symfony/http-foundation: ^6.4||^7.0||^8.0
Requires (Dev)
None
Suggests
None
Provides
None
Conflicts
None
Replaces
None
- dev-master
- 3.0.3
- 3.0.1
- 3.0.0
- 2.0.11
- 2.0.10
- 2.0.9
- 2.0.8
- 2.0.7
- 2.0.6
- 2.0.5
- 2.0.4
- 2.0.3
- 2.0.2
- 2.0.1
- 1.3.15
- 1.3.14
- 1.3.13
- 1.3.12
- 1.3.11
- 1.3.10
- 1.3.9
- 1.3.8
- 1.3.7
- 1.3.6
- 1.3.5
- 1.3.4
- 1.3.3
- 1.3.2
- 1.3.1
- 1.3.0
- 1.2.14
- 1.2.13
- 1.2.12
- 1.2.11
- 1.2.10
- 1.2.9
- 1.2.8
- 1.2.7
- 1.2.6
- 1.2.5
- 1.2.4
- 1.2.3
- 1.2.2
- 1.2.1
- 1.2.0
- 1.1.1
- 1.1.0
- 1.0.4
- 1.0.3
- 1.0.2
- 1.0.1
- v1.0.0
- dev-build/version-2/php7
- dev-php7
- dev-nokey/handle-empty-response
- dev-php8
This package is auto-updated.
Last update: 2026-09-10 07:42:15 UTC
README
Tamara PHP SDK is a wrapper for the Tamara API.
Installation
Update composer.json
"require": { "tamara-solution/php-sdk": "^3.0.0" }
If you are using PHP < 8.1, please use the version, 2.x
"require": { "tamara-solution/php-sdk": "^2.0.0" }
Usage
$configuration = Configuration::create($apiUrl, $apiToken, $apiRequestTimeout, $transport); $client = Client::create($configuration); $response = $client->getPaymentTypes('SA'); if ($response->isSuccess()) { var_dump($response->getPaymentTypes()); }
Notification Service
$notification = \Tamara\Notification\NotificationService::create('token-key'); $message = $notification->processAuthoriseNotification(); var_dump($message->getOrderId()); var_dump($message->getOrderStatus()); var_dump($message->getData());
Symfony DI
tamarapay.configuration: factory: ['Tamara\Configuration', create] arguments: - https://api.tamarapay.com - test_token tamarapay.client: factory: ['Tamara\Client', create] arguments: ['@tamarapay.configuration']
Notes
- We use Guzzlehttp library as the default http client transport and Nyholm http as a backup
- You can use your own transport service and just need to implement the
Tamara\HttpClient\ClientInterfaceand pass it toConfiguration::createfunction