Djust 3.51.0 - Semaine du 03 Fev 2025

Périmètre

Data Hub

Data Hub - Export de commandes SFTP | Nom de fichier court

Il est désormais possible de configurer le format du nom de fichier pour les exports de commandes via SFTP.

Formats disponibles :

  • Format standard (par défaut) :
    • DJUST_ORDERID_SUPPLIERID_TIMESTAMP_orders.FORMAT
    • Exemple : DJUST_172-189-1896838-1_FRMO_1721891899392_orders.xml
  • Format simplifié (nouveau format, sur demande) :
    • ORDERID.FORMAT
    • Exemple : 172-189-1896838-1.xml

Le format simplifié est disponible sur demande.

Back-Office

Visualisation des restrictions de catalogues (Catalog Views) sur une page produit

Il est désormais possible via la page produit d’identifier dans quelle restriction de catalogue se trouve le produit.



API

📘

NEW

Orders

Une évolution importante des commandes est en préparation. Elles vont apporter la possibilité de créer une commande sans panier ni devis au préalable et y ajouter un comportement similaire à celui du panier.

  • Nouvelle route de création de commande commerciale :

    • ORDER-108 - POST /v2/shop/commercial-orders
      Cette route permet de créer une nouvelle commande commerciale avec l'ajout possible de custom fields liés. Voici le body de l'API :
    "customFields": [
      {
        "customFieldId": "string",
        "customFieldValue": "string"
      }
    ]
    "customFieldIdType": "string", // DJUST_ID or EXTERNAL_ID

  • Nouvelle route de modification de commande commerciale :

    • ORDER-222 - PUT /v2/shop/commercial-orders/{commercialOrderId}
      Cette route permet la mise à jour d'une commande commerciale à partir de son id externe ou de se référence. Son body est similaire à celui de ORDER-108, il permet l'update des CF de la commande commerciale.
  • Nouvelle route d'ajout de ligne à la commande commerciale :

    • ORDER-150 - PUT /v2/shop/commercial-orders/{commercialOrderId}/lines
      Cette route permet d'ajouter des lignes de commande (automatiquement ventilées sur les commandes logistiques liées). Son comportement est semblable à l'ajout de lignes à un panier.
    {
    	"lineType": "OFFER_PRICE", // OFFER_PRICE or PRODUCT_VARIANT
    	"lineIdType": "EXTERNAL_ID", // DJUST_ID or EXTERNAL_ID
    	"customFieldIdType": "DJUST_ID",
    	"lines": [
    	  {
    	    "id": "123456", // can be offer price id or variant id
    	    "quantity": 10,
    	    "updateAction": "ADD_QUANTITY",
    	    {
    				"customFields": [
    				{
    					"customFieldId": "string",
    					"customFieldValue": "string"
    				}
    			],
    	  }
    	]
    }
    
    ⚠️

    Attention

    Le path param commercialOrderId est de type unique REFERENCE. Les business ids ou les external ids ne sont pas acceptés.

  • Nouvelle route de récupération des lignes d'une commande commerciale :

    • ORDER-561 - GET /v1/shop/commercial-orders/{commercialOrderId}/lines
      Cette route est dédiée à la récupération paginée des lignes d'une commande commerciale. Il est possible de la filtrer par ids de fournisseur, de variants ou d'offer prices.
  • Nouvelle route de suppression de commande commerciale :

    • ORDER-300 - DELETE /v2/shop/commercial-orders/{commercialOrderId}.
      📘

      Information

      Cette route pouvant être sensible, elle est contrainte par un droit utilisateur CHECKOUT_ORDER_DELETE. Si l'utilisateur possède ce droit, alors il sera autorisé à supprimer une commande commerciale. L'ensemble des commandes logistiques liées doivent être en statut DRAFT_ORDER.

  • Nouvelle route de suppression de ligne d'une commande commerciale :

    • ORDER-350 - DELETE /v2/shop/commercial-orders/{commercialOrderId}/lines
      Cette route permet la suppression d'une ou plusieurs lignes d'une commande commerciale.
    "lines": [
      {
        "offerPriceId": "string",
      }
    ]

👍

UPDATE

Orders

Les routes suivantes de gestion des commandes commerciales évoluent pour préparer les futures évolutions de réapprovisionnement automatiques.

L'ensemble des routes évoluent avec les changements de propriétés suivantes :

🆕

Nouvelles propriétés

customerAccountSnapshot : les informations d'account sont enregistrées au niveau de la commande commerciale

"customerAccountSnapshot": {
	"externalId": "string",
	"id": "string",
	"name": "string",
	"vatNumber": "string"
}

customerUserSnapshot : les informations de customer user sont enregistrées au niveau de la commande commerciale

"customerUserSnapshot": {
  "civility": "MR",
  "email": "string",
  "externalId": "string",
  "firstName": "string",
  "id": "string",
  "lastName": "string",
  "phone": "string"
}

lineCount : nombre total de lignes de produits contenus dans les différentes commandes logistiques

productCount : nombre total de produits contenus dans les différentes commandes logistiques. Si une ligne contient une quantité 10, on ajoutera 10 au productCount.

custom fields : les custom fields sont désormais présents au niveau de la commande commerciale

updatedAt : date de dernier update de la commande commerciale

validatedAt : date de passage en statut CREATED de l’ensemble des commandes logistiques

📘

Information

Le nombre de lignes n’est pas égal au nombre de produits. En effet, une ligne correspond à un prix. Sur un produit, il peut par exemple y avoir plusieurs conditionnements avec des offres/prix différents. Pour un produit on aura donc plusieurs lignes correspondantes.

Propriétés supprimées

numberOfLines : ancienne propriété non utilisée pour le nombre de lignes du commande

numberOfProducts : ancienne propriété non utilisée pour le nombre total de produits

  • Routes d'administration back-office concernées :
GET /v1/logistic-orders
POST /v1/logistic-orders
GET /v1/logistic-orders/{orderLogisticId}
GET /v1/logistic-orders/{orderLogisticId}/approvals
GET /v1/logistic-orders/{orderLogisticId}/shipments
GET /v1/supplier-quotes/{supplierQuoteId}/orders
  • Routes front-office concernées :
ORDER-560 - GET /v1/shop/commercial-orders
GET /v1/shop/customer-accounts/orders
GET /v1/shop/customer-accounts/organisations/{organisationId}/orders
GET /v1/shop/logistic-orders
POST /v1/shop/logistic-orders