salamek / czech-post-api
Czech Post api(unofficial), parsing html of filings online portal
Installs: 11 965
Dependents: 1
Suggesters: 0
Security: 0
Stars: 4
Watchers: 5
Forks: 3
Open Issues: 3
Requires
- php: >=5.3.0
- nategood/httpful: ^0.2.20
- pear/numbers_words: dev-master
- salamek/http-request: ^v1.1
- tecnickcom/tc-lib-barcode: ^1.8
- tecnickcom/tcpdf: ^6.2
Requires (Dev)
- phpunit/phpunit: 5.3
README
Czech post API client in PHP (Parsing podani online) with custom Label generator
Requirements
- PHP 5.4 or higher
Installation
Install salamek/czech-post-api using Composer
$ composer require salamek/czech-post-api
or if you want master branch code:
$ composer require salamek/czech-post-api:dev-master
Usage
Create Packages
Creates package/s on Ceska posta
$username = 'my_api_username'; $password = 'my_api_password'; $cookieJar = __DIR__.'/cookieJar.txt'; $czechPostApi = new Salamek\CzechPostApi\Api($username, $password, $cookieJar); $sender = new Salamek\CzechPostApi\Model\Sender('C9569', 'Olomouc', 'My Compamy s.r.o.', 'My Address', '77900', 'info@example.com', '+420123456789', 'http://www.example.cz', Country::CZ); $recipient = new Salamek\CzechPostApi\Model\Recipient('Olomouc', 'Adam Schubert', 'My Address', '77900', 'adam@example.com', '+420123456789', 'http://www.salamek.cz', Country::CZ, 'My Compamy a.s.'); $myPackageIdFromNumberSeries = 115; $weight = 3.15; $insurance = 100; $package = new Salamek\CzechPostApi\Model\Package($myPackageIdFromNumberSeries, Product::PACKAGE_TO_HAND, $sender, $recipient, null, null, $insurance, [], 'Package desc', 1, 1, null); try { $czechPostApi->createPackages([$package]); } catch (\Exception $e) { echo $e->getMessage() . PHP_EOL; }
Get Labels
Returns PDF with label/s for print on paper, two decompositions are supported, LabelDecomposition::FULL (one A4 Label per page) or LabelDecomposition::QUARTER (one label per 1/4 of A4 page)
$sender = new Salamek\CzechPostApi\Model\Sender('Olomouc', 'My Compamy s.r.o.', 'My Address', '77900', 'info@example.com', '+420123456789', 'http://www.example.cz', Country::CZ); $recipient = new Salamek\CzechPostApi\Model\Recipient('Olomouc', 'Adam Schubert', 'My Address', '77900', 'adam@example.com', '+420123456789', 'http://www.salamek.cz', Country::CZ, 'My Compamy a.s.'); $myPackageIdFromNumberSeries = 115; $weight = 3.15; $insurance = 100; $package = new Salamek\CzechPostApi\Model\Package($myPackageIdFromNumberSeries, Product::PACKAGE_TO_HAND, $sender, $recipient, null, null, $insurance, [], 'Package desc', 1, 1, null); $rawPdf = Label::generateLabels([$package]); file_put_contents($package->getPackageNumber() . '.pdf', $rawPdf);