epartment/nshift-shipment-server-php-sdk

A PHP SDK for NShift Shipment Server

Installs: 2

Dependents: 0

Suggesters: 0

Security: 0

Stars: 0

Watchers: 0

Forks: 0

Open Issues: 0

pkg:composer/epartment/nshift-shipment-server-php-sdk

v2.0.0 2025-11-20 12:43 UTC

This package is not auto-updated.

Last update: 2025-11-21 13:36:53 UTC


README

![Latest Version on Packagist][ico-version] Software License

A library for making requests to the nShift API.

Install

Via Composer

$ composer require epartment/nshift-shipment-server-php-sdk

Usage

Here is the example also used on nShifts own page. It submits a shipment and saves the labels as PDF's.

<?php
require_once 'vendor/autoload.php';

$actor = '63';
$key = 'sample';
$env = \Epartment\NShift\ShipmentServer\Client\Client::ENV_DEV;
$client = new \Epartment\NShift\ShipmentServer\Client\Client($actor, $key, [], null, null, $env);

$data = [
    'Kind' => 1,
    'ActorCSID' => $actor,
    'ProdConceptID' => 1032,

    'Addresses' => [
        [
            'Kind' => 2,
            'Name1' => 'Test sender',
            'Street1' => 'Test Address',
            'PostCode' => '0580',
            'City' => 'Oslo',
            'CountryCode' => 'NO'],
        [
            'Kind' => 1,
            'Name1' => 'Ola Testmann',
            'Street1' => 'Test Address 1',
            'PostCode' => '0580',
            'City' => 'Oslo',
            'CountryCode' => 'NO'
        ]
    ],

    'Lines' => [
        [
            'PkgWeight' => 5000,
            'Pkgs' => [
                [
                    'ItemNo' => 1
                ]
            ]
        ]
    ]
];

$options = [
    'Labels' => 'PDF'
];

$request = new \Epartment\NShift\ShipmentServer\Request\SubmitShipmentRequest($data, $options);

/** @var \Epartment\NShift\ShipmentServer\Response\SubmitShippingResponse $response */
$response = $client->doRequest($request);

if ($response->wasSuccessful()) {
    echo "The request was successful, labels saved in: ".getcwd()."\n";
    $response->saveLabels('label-', getcwd());
} else {
    echo "The request was not successful\n";
    print_r($response->getErrors());
}

Testing

$ composer test

License

The MIT License (MIT). Please see License File for more information.