mhunesi / yii2-hepsijet
Yii2 HepsiJet API Component
Installs: 25
Dependents: 1
Suggesters: 0
Security: 0
Stars: 2
Watchers: 2
Forks: 0
Open Issues: 0
Type:yii2-extension
Requires
- guzzlehttp/guzzle: ^6.3
- yiisoft/yii2: ~2.0.0
This package is auto-updated.
Last update: 2025-02-15 16:34:10 UTC
README
Yii2 HepsiJet API Component
Installation
The preferred way to install this extension is through composer.
Either run
composer require --prefer-dist mhunesi/yii2-hepsijet "*"
or add
"mhunesi/yii2-hepsijet": "*"
to the require section of your composer.json
file.
Usage
Once the extension is installed, simply use it in your code by :
'component' => [ ... 'hepsiJet' => [ 'class' => '\mhunesi\hepsijet\HepsiJet', 'username' => 'username', 'password' => 'password', 'clientOptions' => [ 'verify' => false, 'debug' => false, 'timeout' => '2.0' ] ] ] $hepsiJet = Yii::$app->hepsiJet;
OR
$hepsiJet = new HepsiJet([ 'username' => 'username', 'password' => 'password', 'clientOptions' => [ 'verify' => false, 'debug' => false, 'timeout' => '2.0' ] ]);
Create Order
use mhunesi\hepsijet\HepsiJet; use mhunesi\hepsijet\models\City; use mhunesi\hepsijet\models\DeliveryContent; use mhunesi\hepsijet\models\Town; use mhunesi\hepsijet\models\Cargo; use mhunesi\hepsijet\models\Company; use mhunesi\hepsijet\models\Country; use mhunesi\hepsijet\models\Address; use mhunesi\hepsijet\models\Product; use mhunesi\hepsijet\models\Delivery; use mhunesi\hepsijet\models\District; use mhunesi\hepsijet\models\Receiver; use mhunesi\hepsijet\models\CurrentXDock; use mhunesi\hepsijet\enums\ProductCode; use mhunesi\hepsijet\enums\DeliverySlotOriginal; use mhunesi\hepsijet\enums\DeliveryType; $model = new Cargo([ 'company' => new Company([ 'name' => 'CompanyName', 'abbreviationCode' => 'CMPNYNM' ]), 'currentXDock' => new CurrentXDock([ 'abbreviationCode' => 'CMP_ENSYRT' ]), 'delivery' => new Delivery([ 'customerDeliveryNo' => 'OrderNumber', 'customerOrderId' => 'OrderNumber', 'totalParcels' => 1, 'desi' => 4, 'deliverySlotOriginal' => 0, 'deliveryDateOriginal' => date('Y-m-d'), 'deliveryType' => 'RETAIL', 'product' => new Product([ 'productCode' => 'HX_STD' ]), 'receiver' => new Receiver([ 'companyCustomerId' => 'companyCustomerId', 'firstName' => 'Receiver Name', 'lastName' => 'Receiver Last Name', 'phone1' => '7777777777', 'email' => 'receiver@gmail.com' ]), 'senderAddress' => new Address([ 'companyAddressId' => 'ADD-12314', 'country' => new Country([ 'name' => 'Türkiye' ]), 'city' => new City([ 'name' => 'İstanbul' ]), 'town' => new Town([ 'name' => 'Esenyurt', ]), 'district' => new District([ 'name' => 'Akçaburgaz', ]), 'addressLine1' => 'Akçaburgaz Mahallesi Muhsin Yazıcıoğlu Caddesi 121. Sok No:21 Esenyurt/İSTANBUL Esenyurt İstanbul Türkiye' ]), 'recipientAddress' => new Address([ 'companyAddressId' => 'ADD-1012432', 'country' => new Country([ 'name' => 'Türkiye' ]), 'city' => new City([ 'name' => 'İstanbul' ]), 'town' => new Town([ 'name' => 'Tuzla', ]), 'district' => new District([ 'name' => 'Postane', ]), 'addressLine1' => 'Postane Mah. Barbaros Hayrettin Cad. Şule Sok. Kardeşler Apartmanı 4/11 Tuzla/İstanbul' ]), 'deliveryContent' => [ new DeliveryContent([ 'sku' => 'P1', 'description' => 'Product 1', 'quantity' => 2 ]), new DeliveryContent([ 'sku' => 'P2', 'description' => 'Product 2', 'quantity' => 1 ]) ], 'recipientPerson' => 'Receiver Name Lastname', 'recipientPersonPhone1' => '7777777777' ]) ]); $cargoResult = $hepsiJet->delivery()->sendDeliveryOrderEnhanced($model);
OR
$data = [ 'company' => [ 'name' => 'CompanyName', 'abbreviationCode' => 'CMPNYNM' ], 'delivery' => [ 'customerDeliveryNo' => 'OrderNumber', 'customerOrderId' => 'OrderNumber', 'totalParcels' => 1, 'desi' => 4, 'deliverySlotOriginal' => 0, 'deliveryDateOriginal' => '2021-12-17', 'deliveryType' => 'RETAIL', 'recipientPerson' => 'Receiver Name Lastname', 'recipientPersonPhone1' => '7777777777', 'receiver' => [ 'companyCustomerId' => 'companyCustomerId', 'firstName' => 'Receiver Name', 'lastName' => 'Receiver Last Name', 'phone1' => '7777777777', 'email' => 'receiver@company.com', ], 'product' => [ 'productCode' => 'HX_STD', ], 'senderAddress' => [ 'companyAddressId' => 'ADD-12314', 'addressLine1' => 'Akçaburgaz Mahallesi Muhsin Yazıcıoğlu Caddesi 121. Sok No:21 Esenyurt/İSTANBUL Esenyurt İstanbul Türkiye', 'country' => [ 'name' => 'Türkiye', ], 'city' => [ 'name' => 'İstanbul', ], 'town' => [ 'name' => 'Esenyurt', ], 'district' => [ 'name' => 'Akçaburgaz', ], ], 'recipientAddress' => [ 'companyAddressId' => 'ADD-1012432', 'addressLine1' => 'Postane Mah. Barbaros Hayrettin Cad. Şule Sok. Kardeşler Apartmanı 4/11 Tuzla/İstanbul', 'country' => [ 'name' => 'Türkiye', ], 'city' => [ 'name' => 'İstanbul', ], 'town' => [ 'name' => 'Tuzla', ], 'district' => [ 'name' => 'Postane', ], ], 'deliveryContent' => [ [ 'sku' => 'P1', 'description' => 'Product 1', 'quantity' => 2 ], [ 'sku' => 'P2', 'description' => 'Product 2', 'quantity' => 1 ] ] ], 'currentXDock' => [ 'abbreviationCode' => 'CMP_ENSYRT' ], ]; $model = new Cargo($data); $cargoResult = $hepsiJet->delivery()->sendDeliveryOrderEnhanced($model);
Delete Order
$deleteDeliveryOrder = $hepsiJet->delivery()->deleteDeliveryOrder(['OrderNumber']); if($deleteDeliveryOrder->status){ $data = $deleteDeliveryOrder->toArray(); }else{ echo $deleteDeliveryOrder->message; }
##Tracking
rest/delivery/integration/track
$trackResponse = $hepsiJet->delivery()->track(['OrderNumber']); if($trackResponse->status){ $data = $trackResponse->toArray(); }else{ echo $trackResponse->message; }
/rest/deliveryTransaction/getDeliveryTracking
$trackResponse = $hepsiJet->deliveryTransaction()->getDeliveryTracking(['OrderNumber']); if($trackResponse->status){ $data = $trackResponse->toArray(); }else{ echo $trackResponse->message; }
/rest/deliveryTransaction/getDeliveryTrackingV2
$trackResponse = $hepsiJet->deliveryTransaction()->getDeliveryTrackingV2(['OrderNumber']); if($trackResponse->status){ $data = $trackResponse->toArray(); }else{ echo $trackResponse->message; }
GetEndOfTheDay
$getEndOfTheDayResponse = $hepsiJet->deliveryTransaction()->getEndOfTheDay(); if($getEndOfTheDayResponse->status){ $data = $getEndOfTheDayResponse->toArray(); }else{ echo $getEndOfTheDayResponse->message; }
Settlement
Cities
$cities = $hepsiJet->settlement()->cities(); $cities = $cities->toArray();
Towns
$towns = $hepsiJet->settlement()->towns($id); $towns = $towns->toArray();
Districts
$districts = $hepsiJet->settlement()->districts(1); $districts = $districts->toArray();