Shopware Import / Export

DataFirefly Odoo Connector — Shopware ↔ Odoo

Connecteur Shopware ↔ Odoo natif XML-RPC

Reliez votre boutique Shopware 6 à votre ERP Odoo en quelques minutes. Synchronisation bidirectionnelle des produits, du stock, des clients et des commandes. Compatible Odoo 12 à 18, sans dépendance externe, sans surcoût d'API tierce.

Shopware 6.6 & 6.7 Odoo 12 → 18 PHP 8.2+ XML-RPC natif Multi sales channel
  • Remboursement 30 jours
  • 12 mois de mises à jour
  • Support 24h
www.datafirefly.com/
DataFirefly Odoo Connector — Shopware ↔ Odoo
v1.0.0 · mis à jour 2026-05-23
Ce que ça fait

La version courte.

01

Bidirectionnel produits

Importez le catalogue depuis Odoo ou poussez vos produits Shopware vers Odoo. Stratégies de correspondance SKU, ID Odoo ou code-barres.

02

Stock temps quasi-réel

Le stock Odoo (qty_available / free_qty) est répliqué dans Shopware toutes les 15 minutes, par lots optimisés.

03

Commandes au checkout

Chaque commande validée est instantanément poussée dans Odoo comme sale.order, avec lignes, transport, confirmation et facture optionnelles.

04

Clients avec adresses

Les clients deviennent des res.partner avec adresses de facturation et livraison comme partenaires enfants. Déduplication par email.

05

Aucune dépendance externe

Client XML-RPC écrit en PHP natif (ext-curl + ext-simplexml). Pas de bibliothèque tierce, pas de SaaS intermédiaire, pas de coût par appel.

La version longue

Tout ce que vous voudriez savoir avant d'installer.

Un regard détaillé sur le fonctionnement de DataFirefly Odoo Connector — Shopware ↔ Odoo, pourquoi nous l'avons conçu ainsi, et la réflexion derrière les fonctionnalités ci-dessus.

§ 01

Pourquoi un connecteur natif XML-RPC ?

Odoo expose nativement une API XML-RPC stable depuis la version 8, parfaitement documentée et utilisable sans installer aucun module côté Odoo. Plutôt que de passer par un middleware payant, un connector SaaS ou Zapier facturé à l'appel, ce plugin parle directement XML-RPC depuis Shopware. Pas de coût récurrent, pas de file d'attente externe, pas de fuite de données. Le client XML-RPC est écrit en PHP natif (DOMDocument et SimpleXML), sans aucune bibliothèque tierce.

§ 02

Synchronisation des produits

Trois stratégies de correspondance au choix : par SKU (Shopware productNumber ↔ Odoo default_code, par défaut), par identifiant Odoo, ou par code-barres (EAN). Une fois liés, les produits restent appariés via une table de mapping persistante, même si la SKU change ensuite. La détection de changements par hash évite les écritures inutiles. Les produits poussés vers Odoo sont créés comme product.template avec catégorie, prix, description, poids et taxes.

§ 03

Stock toujours à jour

Le stock est tiré depuis Odoo toutes les 15 minutes par lots optimisés. Le plugin lit les variantes product.product par batch de 100 sur l'identifiant template, agrège qty_available ou free_qty (configurable), et écrit le résultat dans Shopware en une seule requête DAL. Idéal pour les boutiques où Odoo est la source de vérité du stock physique.

§ 04

Commandes poussées au checkout

Dès qu'une commande est validée (event CheckoutOrderPlacedEvent), elle est immédiatement transformée en sale.order Odoo : partner_id résolu via le mapping client (création automatique si absent), order_line avec syntaxe tuple Odoo, frais de transport en ligne supplémentaire, taxes correctement mappées. Options : confirmation automatique (action_confirm), création de la facture (_create_invoices). En cas de panne Odoo, le checkout n'est jamais bloqué — l'échec est tracé dans le journal et la commande sera reprise par la tâche planifiée.

§ 05

Clients et adresses fidèles à Odoo

Les clients sont poussés comme res.partner avec déduplication par email. Les adresses de facturation et livraison sont créées comme partenaires enfants (parent_id, type='invoice' / 'delivery'), la TVA intracommunautaire est reportée sur vat, et le pays comme la région sont résolus par code ISO avec cache mémoire.

§ 06

Multi sales channel

Chaque canal de vente Shopware peut pointer vers une instance Odoo distincte. Idéal si vous opérez plusieurs marques sur Shopware et plusieurs bases Odoo (par exemple B2C et B2B). Les paramètres sont hérités du canal global ou surchargés par canal via le système natif Shopware.

§ 07

Module d'administration dédié

Une nouvelle section Df Odoo apparaît dans Paramètres → Plugins, avec quatre pages : tableau de bord (compteurs de correspondances, activité 24 h, sync manuelle par entité), paramètres (formulaire complet avec test de connexion en un clic), journal (filtres par statut, type, direction avec pagination serveur), et correspondances (vue sur la table df_odoo_mapping).

§ 08

Sécurité et conformité

Authentification par clé API Odoo (plus sûre qu'un mot de passe car révocable individuellement et limitable par utilisateur). Aucune donnée client ne transite par un tiers — les échanges sont directs entre votre Shopware et votre Odoo, en HTTPS. Les payloads JSON des opérations sont stockés dans le journal pour audit, et purgés à la désinstallation si la conservation des données n'est pas explicitement demandée.