Mettre à jour les commandes

Définition des champs

Les champs obligatoires sont signalés par un crayon. Les définitions de champs se réfèrent à la syntaxe MySQL.

Tous les champs sont analysés en fonction de leur type avant l'importation. Si vous indiquez une chaîne vide dans « orders_id », celle-ci est convertie en 0 par un cast INT.

Lors de l'importation, la fonction backend_update_order correspondante au mode de paiement associé à la commande est automatiquement appelée, par exemple pour renvoyer un statut « expédié » via l'API.

orders_id
int(11)
L'identifiant unique de la commande.
La mise à jour de la commande s'effectue toujours à partir de cet identifiant.
orders_status_name
varchar(50)
Nom du statut de la commande dans la langue par défaut de la boutique. Si le statut n'existe pas, il est automatiquement créé.
rg
varchar(32)
Fichier de facturation personnalisé. Le fichier du même nom doit être enregistré dans le répertoire « files/rg/ ».
ls
varchar(32)
Fichier de bon de livraison individuel. Le fichier du même nom doit être enregistré dans le répertoire « files/ls/ ».
orders_comment
mediumtext
Commentaire sur la mise à jour. La visibilité pour les clients dépend des paramètres de la boutique et du nœud « customer-notified ».
po_number
varchar(50)
Référence de la commande/du document (par exemple, ID du document AB issu du système de gestion des stocks). Elle est enregistrée dans orders.po_number et apparaît sur les documents PDF sous la forme « ZUGFeRD BuyerReference », ainsi que dans l'historique des commandes du client. Les valeurs vides ou manquantes ne modifient pas le stock.
liens
link
Chaque nœud « links » contient [1..n] nœuds « link ». Si le nœud « links » est fourni avec au moins un élément, les anciennes entrées de suivi de la commande sont toujours supprimées et remplacées par la nouvelle liste.
lien
text ou nœud
Trois variantes de saisie sont acceptées :

(A) Ancien format : nœud de texte pur, par exemple https://nolp.dhl.de/nextt-online-public/de/search?piececode=00340434123456. Le code de suivi et le prestataire de services d’expédition sont automatiquement détectés à partir de l’URL (DHL, DHL Express, GLS, DPD, UPS, Hermes, FedEx, TNT, La Poste suisse, La Poste autrichienne, Planzer, Deutsche Post).

(B) Imbrication complète : ……… — contrôle maximal, aucune heuristique nécessaire.

(C) Transporteur + code uniquement : sans , par exemple DHL00340434123456. La boutique en ligne génère automatiquement l’URL de suivi visible par le client à partir du modèle de transporteur (shipping_provider.provider_tracking_link) enregistré dans la boutique + le code.
lien/URL
text
URL de suivi complète pour le client, par exemple https://nolp.dhl.de/nextt-online-public/de/search?piececode=00340434123456. Facultatif : si le champ reste vide et que les champs service_provider et code sont renseignés, l'URL est automatiquement générée à partir du modèle de transporteur et du code.
link/service_provider
varchar(16)
Code du prestataire de services d'expédition : DHL, DHLEXPRESS, GLS, DPD, UPS, HLG (Hermes), FEDEX, TNT, POSTCH, POSTAT, PLANZER, DP (Deutsche Post) ou OTHER. Si le champ reste vide, le prestataire est automatiquement identifié à partir de l'URL et/ou du code de suivi.

Les places de marché (eBay, Amazon, Otto, Kaufland, Idealo) reçoivent ce code sous la forme ShippingCarrierUsed / carrier / carrier_code.
lien/code
text
Numéro de suivi seul, sans URL. Si le champ est laissé vide, le code est automatiquement extrait de l'URL (dernier paramètre de requête ou segment de chemin).
customer_notified
tinyint(1)
Informer les clients par e-mail de la mise à jour du statut et leur envoyer un commentaire
  • 1 : informer les clients
  • 0 : Ne pas informer les clients (la mise à jour reste toutefois visible dans l'aperçu de la commande, selon les paramètres de la boutique)
customer_notified_template_id
int(11)
ID du bloc de texte du statut de commande. Vous pouvez simplement indiquer ici l'ID du bloc de texte ; son contenu sera automatiquement adapté à la langue du client. De plus, le remplacement des espaces réservés s'effectue automatiquement.

Exemple de fichier XML

Le fichier XML doit respecter la convention de nommage suivante :
Orders(.)*.xml

Exemple intégré combinant les trois variantes de suivi dans un seul fichier :



  
    441535
    Expédiée
    Votre commande a été expédiée.
    AB-2026-0042
    RG-2026-0042.pdf
    LS-2026-0042.pdf
    
      
      https://gls-group.eu/DE/de/paketverfolgung?match=987654321012
      
      
        https://nolp.dhl.de/nextt-online-public/de/search?piececode=00340434123456
        DHL
        00340434123456
      
      
      
        DHL
        00340434123457
      
    
    1
    0
  

Télécharger les fichiers d'exemple :

Exemple complet (toutes les variantes) (A) Ancien format (B) Imbriqué (C) Transporteur + code

Remarques concernant le traitement

  • Protection contre l'idempotence : les changements de statut identiques (mêmes orders_id + orders_status_name + comment) ne sont pas traités deux fois lors d'une nouvelle importation. Les e-mails clients, les appels API de la place de marché et les prolongations de téléchargement sont ignorés lors d’une réimportation ; toutefois, la mise à jour du statut de la commande et les données de suivi sont actualisées. Cela permet de réimporter sans risque les fichiers XML d’archive, par exemple pour ajouter des codes de prestataires de livraison manquants.
  • Suivi de la synchronisation des places de marché : Pour les commandes provenant des places de marché (Amazon, eBay, Otto, Kaufland, Idealo, Mirakl, Galaxus, Shöpping.at), chaque importation d’expédition ou d’annulation génère en outre une entrée interne dans l’historique de la commande (customer_notified=0) avec le résultat de la synchronisation : [xoPort] Synchronisation de la place de marché (amazon, ship) : transfert réussi ou ERREUR — . Il est ainsi possible de vérifier directement dans le backend, pour chaque commande, si le transfert vers la place de marché a abouti.

Last updated: 9 octobre 2026