nebijokit/dpd-interconnector

View on GitHub
readme.md

Summary

Maintainability
Test Coverage
# DPD Interconnector API integration

PHP wrapper for courier DPD Interconnector API integration. 

[![Build Status](https://travis-ci.org/nebijokit/dpd-interconnector.svg?branch=master)](https://travis-ci.org/nebijokit/dpd-interconnector)
[![Maintainability](https://api.codeclimate.com/v1/badges/2422a11cff6021595306/maintainability)](https://codeclimate.com/github/nebijokit/dpd-interconnector/maintainability)
[![Total Downloads](https://img.shields.io/packagist/dt/nebijokit/dpd-interconnector.svg)](https://packagist.org/packages/nebijokit/dpd-interconnector)

[![Scrutinizer Code Quality](https://scrutinizer-ci.com/g/nebijokit/dpd-interconnector/badges/quality-score.png?b=master)](https://scrutinizer-ci.com/g/nebijokit/dpd-interconnector/?branch=master)
[![SymfonyInsight](https://insight.symfony.com/projects/019f31b7-8a56-47c5-b2c4-7a1e722471d3/mini.svg)](https://insight.symfony.com/projects/019f31b7-8a56-47c5-b2c4-7a1e722471d3)

Official DPD documentation: ftp://ftp.dpd.ee/Integratsioon/Interconnector_dokumentatsioon.pdf.

Implemented endpoints:
- Create Shipment
- Get Labels
- Close Manifest
- Remove Shipment

## Installiation

```
composer req nebijokit/dpd-interconnector
```

# Todo

- add Tracking service
- allow to define which API endpoint to use. Pass GuzzleHttp/Client as a parameter to Client constructor
- use Money value object to represent COD;
- decouple Guzzle/Http from Client & test services;
- use print type, print format & service codes as constants;
- add validation (Symfony/Constraint) for Requests data;
- move _parcel_type_ to Enum;