PHPackages                             waaz/sylius-tnt-plugin - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. waaz/sylius-tnt-plugin

ActiveSylius-plugin[Utility &amp; Helpers](/categories/utility)

waaz/sylius-tnt-plugin
======================

This TNT plugin enables you to easily print shipping labels and show available pickup locations for customers to choose from.

0.6(7mo ago)367[1 PRs](https://github.com/StudioWaaz/SyliusTntPlugin/pulls)MITPHPPHP ^8.0

Since Apr 1Pushed 7mo ago2 watchersCompare

[ Source](https://github.com/StudioWaaz/SyliusTntPlugin)[ Packagist](https://packagist.org/packages/waaz/sylius-tnt-plugin)[ RSS](/packages/waaz-sylius-tnt-plugin/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (6)Dependencies (34)Versions (10)Used By (0)

[![Logo](github.png)](github.png)

[![GitHub Workflow Status](https://camo.githubusercontent.com/7c7d7bddb8bfeea5b50a696bf910c638df4adb200b8ececa99bac60c6c51d24f/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f53747564696f5761617a2f53796c697573546e74506c7567696e2f6275696c642e796d6c3f7374796c653d666f722d7468652d6261646765)](https://camo.githubusercontent.com/7c7d7bddb8bfeea5b50a696bf910c638df4adb200b8ececa99bac60c6c51d24f/68747470733a2f2f696d672e736869656c64732e696f2f6769746875622f616374696f6e732f776f726b666c6f772f7374617475732f53747564696f5761617a2f53796c697573546e74506c7567696e2f6275696c642e796d6c3f7374796c653d666f722d7468652d6261646765)[![Scrutinizer Code Quality](https://camo.githubusercontent.com/670efdc6c0f9dd61378b2029c9bcf2277a2d7cb7ca8fc550bfcb2a387b8cdc09/68747470733a2f2f696d672e736869656c64732e696f2f7363727574696e697a65722f7175616c6974792f672f53747564696f5761617a2f53796c697573546e54506c7567696e3f7374796c653d666f722d7468652d6261646765)](https://camo.githubusercontent.com/670efdc6c0f9dd61378b2029c9bcf2277a2d7cb7ca8fc550bfcb2a387b8cdc09/68747470733a2f2f696d672e736869656c64732e696f2f7363727574696e697a65722f7175616c6974792f672f53747564696f5761617a2f53796c697573546e54506c7567696e3f7374796c653d666f722d7468652d6261646765)

WaazSyliusTntPlugin
===================

[](#waazsyliustntplugin)

This plugin allows you to generate shipping labels for TNT carrier.

Features
--------

[](#features)

- Shipping label export
- Check that the postal code and city match for TNT : for this feature, if the country chosen is 'FR' then the city field becomes a select with city proposals from the tnt webservice

Installation (*exporting label part*)
-------------------------------------

[](#installation-exporting-label-part)

**Prerequisite**: you must first configure/install the `bitbag/shipping-export-plugin`

Install plugin with composer

```
composer require waaz/sylius-tnt-plugin
```

Add plugin dependencies to your `config/bundles.php` file:

```
return [
    ...

    Waaz\SyliusTntPlugin\WaazSyliusTntPlugin::class => ['all' => true],
];
```

Add route in your `config/routes/sylius_shop.yaml` file:

```
...
waaz_tnt_shop:
    resource: "@WaazSyliusTntPlugin/Resources/config/routing/shop_tnt.yaml"
```

Add parameter validation\_groups in your `config/services.yaml` file:

```
parameters:
    ...
    sylius.form.type.checkout_address.validation_groups: ['sylius', 'tnt_address']
```

Run assets install command : `bin/console assets:install`

Add plugin asset in `templates/bundles/SyliusShopBundle/_scripts.html.twig` file

```
{% include '@SyliusUi/_javascripts.html.twig' with {'path': 'assets/shop/js/app.js'} %}
{% include '@SyliusUi/_javascripts.html.twig' with {'path': 'bundles/waazsyliustntplugin/js/tnt-city.js'} %}
```

Configuration
-------------

[](#configuration)

You can configure this plugin by creating a file `config/packages/waaz_sylius_tnt_plugin`:

```
# Defaults values
waaz_sylius_tnt:
    username: 'login' # Enter your tnt username here. You should use an environment variable like `%env(TNT_PASSWORD)%`
    password: 'password' # Same for password
    sandbox: true  # Sandbox mode
    weight_unit: 'g' # 'g' or 'kg'. Weight unit you use in your shop
    city_select_classes: 'ui dropdown' # Classes you want for city select field
```

Installation (*pickup point part*)
----------------------------------

[](#installation-pickup-point-part)

**Prerequisite**: you must first configure/install the `setono/sylius-pickup-point-plugin`

Running Tests
-------------

[](#running-tests)

- PHPSpec

```
vendor/bin/phpspec run
```

- Behat (non-JS scenarios)

```
vendor/bin/behat --strict --tags="~@javascript"
```

- Behat (JS scenarios)

    1. [Install Symfony CLI command](https://symfony.com/download).
    2. Start Headless Chrome:

    ```
    google-chrome-stable --enable-automation --disable-background-networking --no-default-browser-check --no-first-run --disable-popup-blocking --disable-default-apps --allow-insecure-localhost --disable-translate --disable-extensions --no-sandbox --enable-features=Metal --headless --remote-debugging-port=9222 --window-size=2880,1800 --proxy-server='direct://' --proxy-bypass-list='*' http://127.0.0.1
    ```

    3. Install SSL certificates (only once needed) and run test application's webserver on `127.0.0.1:8080`:

    ```
    symfony server:ca:install
    APP_ENV=test symfony server:start --port=8080 --dir=tests/Application/public --daemon
    ```

    4. Run Behat:

    ```
    vendor/bin/behat --strict --tags="@javascript"
    ```
- Psalm

    ```
    vendor/bin/psalm
    ```
- PHPStan

```
vendor/bin/phpstan analyse -c phpstan.neon -l max src/
```

- Coding Standard

```
vendor/bin/ecs check src
```

Author
------

[](#author)

- [@ehibes](https://www.github.com/ehibes) for [Studio Waaz](https://www.studiowaaz.com)

License
-------

[](#license)

This plugin's source code is completely free and released under the terms of the MIT license.

###  Health Score

35

—

LowBetter than 80% of packages

Maintenance64

Regular maintenance activity

Popularity12

Limited adoption so far

Community11

Small or concentrated contributor base

Maturity45

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 86.7% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~182 days

Recently: every ~216 days

Total

6

Last Release

222d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/be807124a2589dd8893abd7ce74a78a443e45f1c7c8ca135eb05e21c1a5191c7?d=identicon)[ehibes](/maintainers/ehibes)

---

Top Contributors

[![ehibes](https://avatars.githubusercontent.com/u/487124?v=4)](https://github.com/ehibes "ehibes (65 commits)")[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (9 commits)")[![KatzoArano](https://avatars.githubusercontent.com/u/16325747?v=4)](https://github.com/KatzoArano "KatzoArano (1 commits)")

---

Tags

syliusshippingsylius-pluginlabelstntpickup

###  Code Quality

TestsPHPUnit

Static AnalysisPsalm

Type Coverage Yes

### Embed Badge

![Health badge](/badges/waaz-sylius-tnt-plugin/health.svg)

```
[![Health](https://phpackages.com/badges/waaz-sylius-tnt-plugin/health.svg)](https://phpackages.com/packages/waaz-sylius-tnt-plugin)
```

###  Alternatives

[tilleuls/sylius-click-n-collect-plugin

Click and Collect plugin for Sylius, to sell and deliver securely during the COVID-19 pandemic.

7814.2k](/packages/tilleuls-sylius-click-n-collect-plugin)[sylius/refund-plugin

Plugin provides basic refunds functionality for Sylius application.

691.7M14](/packages/sylius-refund-plugin)[stefandoorn/sitemap-plugin

Sitemap Plugin for Sylius

851.0M](/packages/stefandoorn-sitemap-plugin)[monsieurbiz/sylius-rich-editor-plugin

A Rich Editor plugin for Sylius.

75380.8k6](/packages/monsieurbiz-sylius-rich-editor-plugin)[synolia/sylius-scheduler-command-plugin

Scheduler Command Plugin.

34361.5k](/packages/synolia-sylius-scheduler-command-plugin)[odiseoteam/sylius-blog-plugin

This plugin add blog capabilities to your Sylius project

37104.5k](/packages/odiseoteam-sylius-blog-plugin)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
