VAVANG INVOICE / DOCS / FR

Installer Vavang Invoice

L’installation se fait depuis l’application Sylius hôte. L’accès au package commercial est fourni aux clients licenciés via la distribution Composer privée Vavang.

1. Configurer le dépôt privé

Le dépôt est servi depuis https://packages.vavang.dev. Conservez les credentials Composer dans auth.json hors Git, dans le secret manager du déploiement ou dans le mécanisme d’authentification fourni avec votre accès.

composer config repositories.vavang composer https://packages.vavang.dev

Le nom de package commercial définitif est vavang/invoice-plugin. Pendant la migration SI-226, certaines releases pré-V1 déjà publiées restent accessibles sous le nom historique sylius-invoice/sylius-invoice-plugin. Utilisez le nom associé à la release fournie avec votre accès ; les premières releases commerciales V1 utiliseront :

composer require vavang/invoice-plugin

Pour le RC pré-V1 actuellement validé sur Satis, la commande reste :

composer require sylius-invoice/sylius-invoice-plugin

2. Charger les bundles requis

Si aucune recette Flex ne les a déjà enregistrés, ajoutez les bundles suivants dans config/bundles.php :

return [
    // ...
    Knp\Bundle\SnappyBundle\KnpSnappyBundle::class => ['all' => true],
    Sylius\PdfGenerationBundle\SyliusPdfGenerationBundle::class => ['all' => true],
    Sylius\InvoicingPlugin\SyliusInvoicingPlugin::class => ['all' => true],
    SyliusInvoicePlugin\SyliusInvoicePlugin::class => ['all' => true],
];

Importez ensuite la configuration officielle de Sylius InvoicingPlugin :

# config/packages/sylius_invoicing.yaml
imports:
    - { resource: '@SyliusInvoicingPlugin/config/config.yaml' }

Puis les routes Vavang :

# config/routes/sylius_invoice.yaml
sylius_invoice:
    resource: '@SyliusInvoicePlugin/Resources/config/routes.yaml'

3. Commencer en mode MANUAL

Créez config/packages/sylius_invoice.yaml, configurez l’identité fiscale du vendeur et laissez la transmission en mode manuel pendant l’onboarding :

sylius_invoice:
    transmission:
        mode: MANUAL

4. Configurer Messenger

Le transport sylius_invoice_async doit disposer d’un DSN fourni par l’environnement :

framework:
    messenger:
        transports:
            sylius_invoice_async:
                dsn: '%env(MESSENGER_TRANSPORT_DSN)%'

5. Migrer et vérifier

bin/console sylius-invoice:check-requirements
bin/console doctrine:migrations:migrate --no-interaction
bin/console cache:clear
bin/console debug:router | grep sylius_invoice
bin/console sylius-invoice:compliance:doctor

Avant une transmission automatique, exécutez également un worker sylius_invoice_async sous votre superviseur de processus :

bin/console messenger:consume sylius_invoice_async --time-limit=3600 --memory-limit=256M