mohamedhekal / shipbridge-egyptpost
Egypt Post carrier driver for ShipBridge (Egypt)
Package info
github.com/mohamedhekal/shipbridge-egyptpost
pkg:composer/mohamedhekal/shipbridge-egyptpost
v0.2.0
2026-07-16 15:31 UTC
Requires
- php: ^8.2
- illuminate/http: ^11.0|^12.0
- illuminate/support: ^11.0|^12.0
- mohamedhekal/shipbridge: ^0.1
Requires (Dev)
- laravel/pint: ^1.18
- orchestra/testbench: ^9.0|^10.0
- pestphp/pest: ^3.0
- pestphp/pest-plugin-laravel: ^3.0
- phpstan/phpstan: ^2.0
README
Egypt Post shipping driver for ShipBridge · Region: Egypt / مصر
Honest limitation: Egypt Post does not expose a public merchant create-shipment API. Merchants use the Wassalha app. This driver tracks via the official TrackTrace endpoint and optionally routes create/label through a partner B2B gateway when you have one.
بالعربي — في ٣ خطوات
١) ثبّت الحزمتين
composer require mohamedhekal/shipbridge mohamedhekal/shipbridge-egyptpost
٢) اختار الوضع
تتبع فقط (الافتراضي بدون API key):
SHIPBRIDGE_DRIVER=egyptpost EGYPTPOST_MODE=track_only
بوابة شريك B2B (إنشاء + تتبع):
SHIPBRIDGE_DRIVER=egyptpost EGYPTPOST_MODE=partner EGYPTPOST_API_KEY=your-partner-key EGYPTPOST_BASE_URL=https://your-gateway.example/v1
الدليل العربي الكامل:
docs/GUIDE_AR.md
٣) تتبع شحنة
use Hekal\ShipBridge\Facades\ShipBridge; $tracking = ShipBridge::driver('egyptpost')->track('EP123456789'); $label = ShipBridge::driver('egyptpost')->label('EP123456789'); // public track URL in track_only
إنشاء شحنة (partner فقط):
use Hekal\ShipBridge\DTOs\Address; use Hekal\ShipBridge\DTOs\CreateShipmentRequest; use Hekal\ShipBridge\DTOs\Parcel; $shipment = ShipBridge::driver('egyptpost')->createShipment(new CreateShipmentRequest( origin: new Address('المخزن', 'شارع ١', 'القاهرة', 'EG'), destination: new Address('العميل', 'شارع النيل', 'الجيزة', 'EG', phone: '01000000000'), parcels: [new Parcel(weightKg: 1.2)], reference: 'ORD-42', ));
English — Quick start
composer require mohamedhekal/shipbridge mohamedhekal/shipbridge-egyptpost
# Track only (no public create API) EGYPTPOST_MODE=track_only # Or partner gateway when you have a B2B contract EGYPTPOST_MODE=partner EGYPTPOST_API_KEY=your-key EGYPTPOST_BASE_URL=https://your-gateway.example/v1
ShipBridge::driver('egyptpost')->track('BARCODE'); ShipBridge::driver('egyptpost')->label('BARCODE'); // track URL or partner PDF ShipBridge::driver('egyptpost')->createShipment(...); // partner mode only
See docs/API.md for endpoints and payload shapes.
How it fits
Your Laravel app
│
▼
ShipBridge (one API for all carriers)
│
├─► egyptpost.gov.eg TrackTrace (track — always)
└─► partner REST gateway (create — optional)
Testing
composer install && composer test && composer analyse && composer format
License
MIT © Mohamed Hekal
