sf4/omnivabundle

Library to communicate with Omniva API

v1.6 2018-09-05 11:07 UTC

This package is not auto-updated.

Last update: 2024-04-26 14:10:27 UTC


README

PHP wrapper for courier Omniva integration.

Build Status Maintainability Total Downloads

SensioLabsInsight Scrutinizer Code Quality

Examples

$client = new \SoapClient('https://edixml.post.ee/epmx/services/messagesService.wsdl', array('login' => 'xxx', 'password' => 'xxx'));
/** @noinspection PhpUndefinedMethodInspection */
$request = $client->preSendMsg([
    'partner' => '24432',
    'interchange' => [
        'header' => [
            'file_id' => date('Ymd'),
            'sender_cd' => '24432'
        ],
        'item_list' => [
            [
                'id' => 'JJEE2443256789',
                'service' => 'PU',
                'comment' =>  "Comment",
                'receiverAddressee' => [
                    'person_name' => "xxx xxx",
                    'mobile' => '+372xxx',
                    'address' => ['offloadPostcode' => '96079'],
                ],
                'measures' => ['weight' => '0'],
                'add_service' => [
                    'option' => ['code' => 'ST'],
                ],
            ],
        ],
    ],
]);

Get label

Returns Label response (stdClass object) with encoded PDF & barcode. For Response structure view getLabel phpdoc.

$client = new Client($username, $password);
$client->getLabel($parcel);

Get pickup points list

This endpoint returns list of pickup points. Pickup point can be Terminal or Post office. Field Type determines whether field is Terminal (Type: 0) or Post office (Type: 1).

// username & password is not necessary for pickup points
$client = new Client($username, $password);

$points = $client->getPickupPoints();

Ideas for further development

  • implement Client tracking
  • add Symfony\Constraint for data validation