zangra/geodis-bundle

Geodis REST/JSON integration for Sylius / Symfony projects

Installs: 17

Dependents: 0

Suggesters: 0

Security: 0

Stars: 0

Watchers: 2

Forks: 0

Open Issues: 0

Type:symfony-bundle

3.0.4 2025-08-13 14:18 UTC

README

Latest Stable Version Build Status Scrutinizer Code Quality PHP Version Require License

About

GeodisBundle is a Symfony bundle for generating and managing Geodis shipping labels.
It provides a simple and efficient integration of the Geodis API into Symfony projects.

What's new in 3.0

  • ✅ Full compatibility with modern Symfony versions
  • ✅ Improved service configuration with autowire & autoconfigure support
  • ✅ Cleaner error handling with a new ExceptionListener
  • ✅ Lazy-loading for the GeodisJsonApi service
  • ✅ Refactored code for better maintainability

Installation

Install the bundle via Composer:

composer require zangra/geodis-bundle:^3.0

Requirements

  • PHP ^8.1
  • Symfony Framework Bundle >= 6.4
  • Doctrine Bundle
  • Guzzle HTTP Client ^6.5.8 || ^7.8

Configuration

Enable the bundle in config/bundles.php:

return [
    // Other bundles...
    GeodisBundle\GeodisBundle::class => ['all' => true],
];

Usage

Once configured, you can use the provided services to create and manage Geodis shipments. Example service configuration:

services:
  GeodisBundle\Manager\GeodisJsonApi:
    lazy: true

Then inject GeodisJsonApi into your services or controllers:

use GeodisBundle\Manager\GeodisJsonApi;

class ShippingController
{
    public function __construct(private GeodisJsonApi $geodisApi) {}

    public function createLabel(): void
    {
        // Your logic to create a label
    }
}