Plate-forme de nouvelle génération

Implémentation de la modification de commande

En tant qu'associé de magasin, vous pouvez utiliser la fonction de modification de commande dans Sterling Store Engagement pour ajouter un nouveau produit ou supprimer un produit de la commande, modifier la quantité de produit, modifier les méthodes de livraison et capturer les détails de paiement appropriés pour la modification du total de la commande d'une commande existante. Cette section décrit les API, les services et les autres composants utilisés pour implémenter la fonction de modification de commande.

Limites

  • Vous devez disposer de tous les droits d'accès aux ressources requis, y compris ISF000058, pour pouvoir modifier des commandes et des lignes de commande.
  • La modification de commande est prise en charge uniquement pour les bons de commande.
  • La modification des lignes de report n'est pas prise en charge.
  • La modification de la commande est désactivée dans les cas suivants:
    • MaxOrderStatus est supérieur ou égal à 3700 (Order shipped).
    • La commande contient uniquement des lignes de report.
    • La commande est verrouillée par un autre utilisateur. C'est-à-dire si la commande comporte des modifications en attente (HasPendingChanges = 'Y') et que currentLoginId n'est pas égal à PendingChangesUserID.

Modification d'une commande à l'aide du bouton Editer de la page Récapitulatif de la commande

Cliquez sur le bouton Editer dans la page Récapitulatif de la commande pour ouvrir la page Editer la commande . Vous pouvez modifier la commande ainsi que la ligne de commande. Pour plus d'informations sur les actions que vous pouvez effectuer lors de la modification d'une commande, voir Modification d'une commande.

Toute modification apportée à un ordre confirmé reste en suspens jusqu'à ce que l'utilisateur enregistre ou annule les modifications, ou que les modifications expirent automatiquement après un délai préconfiguré, défini dans le gestionnaire d'applications. Après le délai spécifié, les modifications en attente expirent automatiquement et la commande revient à son état d'origine.

L'API getCompleteOrderDetails est appelée pour extraire les détails de la commande et de la ligne de commande, tels que le total de la commande, les bons de réduction appliqués, etc.

Ajout d'un nouveau produit à une commande existante

  • Vous devez disposer du droit d'accès aux ressources ISF000059 pour ajouter des lignes de commande à une commande existante.
  • Si la date en cours est postérieure à l'âge de la commande, vous ne pouvez pas ajouter de nouveau produit à la commande. La règle WSC_ORDER_AGE est utilisée pour extraire l'âge maximal de la commande. Toutefois, d'autres modifications, telles que l'application de bons de réduction ou la modification de la méthode de livraison, peuvent être apportées.
  • Si le produit est ajouté à la commande par numérisation et si une quantité suffisante est disponible, l'API getCompleteItemList est appelée pour ajouter le produit à la commande avec la quantité par défaut 1 et la méthode de livraison SHIP. Si le produit n'est pas disponible, vous êtes redirigé vers la page Détails du produit .
  • Si vous recherchez le produit à ajouter à la commande à l'aide de mots clés, la page Résultats de la recherche de produit s'ouvre avec la liste des produits correspondant aux mots clés de recherche. Vous pouvez sélectionner le produit que vous souhaitez ajouter à la commande à partir de ces résultats.
  • L'API modifyFulfillmentOptions est appelée pour ajouter une nouvelle ligne de commande et pour ajouter une remarque avec le code anomalie YCD_MULTI_ADD_LINES_INFO .
  • Les modifications apportées à la commande sont validées dans la base de données uniquement lorsque vous cliquez sur Sauvegarder, ce qui déclenche l'API changeOrder .
  • Si les modifications sont correctement enregistrées dans la commande, l'API getCompleteOrderDetails est appelée pour actualiser la page et afficher un message de réussite. Après cela, vous pouvez mettre à jour les détails du paiement.
  • Vous ne pouvez pas ajouter de lignes de commande de report à la commande en modifiant la commande.
  • Vous pouvez uniquement ajouter des éléments standard et des variantes.
  • Les règles de modification des commandes suivantes doivent être activées au niveau de la commande à l'aide du gestionnaire d'applications :
    • ADD_LINE
    • ADD_NOTE
  • Les API suivantes sont appelées pour ajouter un nouveau produit à une commande existante:
    • getRuleDetails: Pour extraire l'âge maximal de la commande à partir de la règle WSC_ORDER_AGE .
    • getCompleteItemList: Pour extraire les détails du produit.
    • modifyFulfillmentOptions: Pour ajouter un produit à la commande.
    • getCompleteOrderDetails: Pour actualiser la page avec un message affichant le total de la commande mise à jour et le montant dû ou le montant du remboursement.
    • changeOrder: Pour enregistrer les modifications apportées à la commande.

Suppression d'une ligne de commande d'une commande existante

  • Vous devez disposer du droit d'accès aux ressources ISF000060 pour supprimer une ligne de commande d'une commande existante.
  • L'annulation des lignes de commande est activée uniquement si MaxLineStatus < 3700 (Shipped) et qu'elle n'est pas égale à 1100.7777 (CARRIED).
  • Si le client décide d'annuler un ou plusieurs produits d'une commande, vous pouvez cliquer sur le bouton Supprimer de la ligne de commande correspondante.

    Une fenêtre de confirmation s'affiche pour vous permettre de sélectionner le motif de l'annulation et de confirmer. L'API modifyFulfillmentOptions est appelée pour supprimer le produit.

  • Lors de l'annulation de la ligne de commande, une remarque est ajoutée avec le code anomalie YCD_CANCEL_INFO .
  • Après l'annulation, vous pouvez uniquement afficher les remarques qui ont été ajoutées aux lignes annulées et vous ne pouvez pas effectuer d'autres actions.
  • Si la ligne de commande vient d'être ajoutée, il vous suffit de confirmer la suppression du produit de la commande. Aucune raison d'annulation n'est requise. L'API changeOrder est utilisée pour supprimer les produits nouvellement ajoutés à la commande.
  • Lors de la sauvegarde, l'API changeOrder est appelée pour appliquer les modifications à la commande.
  • Les règles de modification des commandes suivantes doivent être activées à l'aide du gestionnaire d'applications :
    • CANCEL
    • ADD_NOTE au niveau de la commande pour obtenir le statut de la commande annulée.
  • Les API suivantes sont appelées pour supprimer une ligne de commande d'une commande existante:
    • getCommonCodeList avec CodeType en tant que YCD_CANCEL_REASON. Pour afficher les raisons de l'annulation.
    • modifyFulfillmentOptions avec Action="CANCEL". Pour annuler la ligne de commande en mode modifications en attente.
    • changeOrder avec Action="REMOVE". Pour annuler les nouvelles lignes de commande en mode de modification en attente.
    • changeOrder: Pour valider les modifications apportées à la base de données.

Edition de la quantité de la ligne de commande

  • Le droit d'accès aux ressources ISF000049 est requis pour mettre à jour la quantité de la ligne de commande.
  • Vous pouvez mettre à jour la quantité de la ligne de commande uniquement si les conditions suivantes sont remplies:
    • MaxLineStatus < 3700 (Shipped) et MaxLineStatus ne sont pas égaux à 1100.7777 (CARRIED)
    • DeliveryMethod n'est pas égal à DEL.
  • Vous pouvez augmenter ou réduire la quantité d'une ligne de commande en fonction des besoins du client.
  • Si vous réduisez la quantité commandée, elle est validée par rapport à l'attribut AvailableQtyForCancelAndStopDelivery .
  • Lorsque la quantité de la ligne de commande est modifiée, l'API getItemAvailabilityForStore est appelée.
  • Si le stock requis est disponible, l'API modifyFulfillmentOptions est appelée dans le mode modifications en attente pour mettre à jour la quantité saisie.
  • L'API getCompleteOrderDetails est appelée pour actualiser la page avec un message affichant le total de la commande mise à jour et les détails du montant dû ou du remboursement. Lorsque vous cliquez sur Sauvegarder, l'API changeOrder est appelée pour sauvegarder les modifications apportées à la commande.
  • Les règles de modification des commandes suivantes doivent être activées à l'aide du gestionnaire d'applications :
    • ADD_QUANTITY
    • ADD_NOTE au niveau de la commande pour obtenir le statut de la commande en cours.
  • Les API suivantes sont appelées pour éditer la quantité de ligne de commande:
    • getItemAvailabilityForStore: Pour extraire la disponibilité en temps réel du produit pour la quantité mise à jour.
    • modifyFulfillmentOptions: Pour mettre à jour la quantité éditée.
    • getCompleteOrderDetails: Pour actualiser la page avec un message affichant le total de la commande mise à jour et le montant dû ou remboursé pour la commande.
    • changeOrder: Pour valider les modifications apportées à la base de données.

Remplacement d'un produit dans la commande par sa variante

Sur la page Modifier la commande, vous pouvez cliquer sur le lien de description du produit pour ouvrir la page Détails du produit. Vous pouvez afficher les variantes du produit et l'ajouter au panier.

Vous pouvez ensuite supprimer la variante précédemment ajoutée de la commande si elle n'est pas requise.

Les API suivantes sont appelées pour remplacer un produit de la commande par sa variante:
  • getRuleDetails: Pour extraire l'âge maximal de la commande à partir de la règle WSC_ORDER_AGE .
  • modifyFulfillmentOptions: Pour mettre à jour le produit avec variations.
  • changeOrder: Pour valider les modifications apportées à la base de données.

Modification des méthodes de distribution

  • Le droit d'accès aux ressources ISF000061 est requis pour modifier la méthode de livraison d'une ligne de commande.
  • L'option Editer la méthode de livraison n'est pas disponible si la méthode de livraison de la ligne de commande est CARRY, est Canceledou est égale à DEL (Delivery line).
  • Vous pouvez modifier la méthode de livraison d'une ligne de commande en cliquant sur Editer la méthode de livraison. La fenêtre Editer la méthode de livraison s'affiche avec deux onglets, Expédition et Prélèvement. Par défaut, la fenêtre Editer la méthode de distribution affiche l'onglet correspondant à la méthode de distribution en cours de la ligne de commande.
  • Lorsque le mode de livraison d'une ligne de commande passe du prélèvement à l'expédition, l'API modifyFulfillmentOptions est appelée pour définir l'attribut DeliveryMethod sur SHP et l'attribut CarrierServiceCode en fonction de l'option de service de transporteur sélectionnée, le cas échéant.

    L'API getCarrierServiceOptionsForOrdering est appelée pour extraire la liste des services de transporteur dans l'onglet Expédition . L'API modifyFulfillmentOptions définit également l'adresse de livraison pour la ligne de commande, si la commande n'a pas encore d'adresse de livraison.

  • Lorsque la méthode de livraison d'un produit passe de l'expédition à l'enlèvement, l'API modifyFulfillmentOptions est appelée pour définir l'attribut DeliveryMethod sur PICK et l'attribut ShipNode sur le magasin sélectionné. La logique implémentée pour sélectionner ou modifier un magasin est applicable.

    L'API modifyFulfillmentOptions est appelée en mode de modifications en attente à condition qu'il n'y ait pas de modifications en attente et que le statut de la ligne de commande soit inférieur à Scheduled.

    Si le statut de la ligne de commande est Scheduled (MaxLineStatus >= '1500' ) ou au-delà et que la règle Autoriser les modifications des commandes au-delà du statut prévu (WSC_ALLOW_ORDER_MODIFICATION_POST_RELEASE) est activée dans Sterling Business Center, les modifications en attente sont validées. La ligne de commande est déplanifiée lors de la confirmation.

    De même, si une expédition est créée pour la ligne de commande, la ligne de commande est supprimée de l'expédition avant que vous ne puissiez procéder à des modifications.

  • L'API getCompleteOrderDetails est appelée pour actualiser la page avec la nouvelle méthode de distribution.
  • Lorsque vous cliquez sur Sauvegarder, l'API changeOrder est appelée pour sauvegarder les modifications apportées à la commande.
  • La règle de modification de la commande CHANGE_DELIVERY_METHOD doit être activée à l'aide du gestionnaire d'applications
  • Les API suivantes sont appelées pour modifier les méthodes de distribution:
    • modifyFulfillmentOptions: Pour mettre à jour le mode de livraison de ligne de commande existant dans la commande.
    • changeOrder: Pour mettre à jour la nouvelle méthode de livraison de ligne sur la commande.
    • getCarrierServiceOptionsForOrdering: Pour extraire la liste des services de transporteur à afficher dans l'onglet Expédition .
    • getRuleDetails: Pour déterminer si les modifications de commande sont autorisées au-delà du statut planifié à partir de la règle WSC_ALLOW_ORDER_MODIFICATION_POST_RELEASE .
    • getCompleteOrderDetails: Pour actualiser la page avec la nouvelle méthode de distribution.
    • changeOrder: Pour valider les modifications apportées à la base de données.

Ajout, modification et suppression de frais et remplacement de prix dans les lignes de commande

Les droits d'accès aux ressources ISF000050 (Ajouter ou modifier les frais de ligne de commande) et ISF000045 (Remplacement de prix) sont requis pour modifier le mode de livraison d'une ligne de commande.

Affichage et modification des frais-en tant qu'associé de magasin, vous pouvez afficher et modifier les frais des produits en cliquant sur le lien Total de l'article pour chaque ligne de commande.

  • L'API getCompleteOrderDetails est appelée pour afficher la liste des frais appliqués sur la ligne de commande.
  • Vous devez disposer des droits requis pour ajouter et modifier des frais de ligne de commande afin d'ajouter ou de modifier les frais actuellement appliqués.
  • Seuls les frais appliqués manuellement sont modifiables. Les frais générés automatiquement par le moteur de tarification sont affichés en lecture seule.
  • Vous pouvez modifier les frais uniquement si le statut de la ligne de commande est inférieur à Inclus dans l'expédition ou n'est pas Acheminé et que le mode de livraison de la ligne de commande n'est pas égal à DEL (Delivery line).
  • Les remarques saisies lors de l'ajout ou de la modification de frais sont enregistrées dans la commande ou la ligne de commande avec YCD_ADD_MODIFY_CHARGES comme code raison.
  • Vous pouvez remplacer le prix uniquement pour les produits des lignes de commande existantes.
  • Les règles de modification des commandes suivantes doivent être activées à l'aide du gestionnaire d'applications :
    • PRICE
    • ADD_NOTE au niveau de la ligne de commande pour obtenir le statut de la ligne de commande en cours.
  • Les API suivantes sont appelées pour modifier les frais dans les lignes de commande:
    • getChargeCategoryList: Pour extraire la liste des catégories de frais.
    • getChargeNameList: Pour extraire la liste des noms de frais.
    • changeOrder: Pour appliquer les modifications de frais.
    • getCompleteOrderDetails: Pour afficher la liste des frais appliqués sur la ligne de commande.

Ajout, modification et suppression de frais dans les commandes

Vous pouvez afficher et modifier les frais de tous les produits de la commande en cliquant sur Total de la commande.

  • Le droit d'accès aux ressources ISF000051 (Ajouter ou modifier les frais d'en-tête de commande) est requis pour modifier les frais dans les commandes.
  • L'API getCompleteOrderDetails est appelée pour afficher la liste des frais appliqués à la commande.
  • Vous devez disposer des droits requis pour ajouter et modifier les frais d'en-tête de commande afin d'ajouter ou de modifier les frais actuellement appliqués.
  • Seuls les frais appliqués manuellement sont modifiables. Les frais générés automatiquement par le moteur de tarification sont affichés en lecture seule.
  • Vous pouvez modifier les frais uniquement si le statut de la commande est inférieur à Inclus dans l'expédition ou n'est pas Acheminé.
  • Les remarques saisies lors de l'ajout ou de la modification de frais sont enregistrées dans la commande ou la ligne de commande avec YCD_ADD_MODIFY_CHARGES comme code raison.
  • Les règles de modification des commandes suivantes doivent être activées à l'aide du gestionnaire d'applications :
    • PRICE
    • ADD_NOTE au niveau de la commande pour obtenir le statut de la commande en cours.
  • Les API suivantes sont appelées pour modifier les frais dans les commandes:
    • getChargeCategoryList: Pour extraire la liste des catégories de frais.
    • getChargeNameList: Pour extraire la liste des noms de frais.
    • changeOrder: Pour appliquer les modifications de frais.
    • getCompleteOrderDetails: Pour afficher la liste des frais appliqués à la commande.

Application et suppression de bons de réduction

  • Le droit d'accès aux ressources ISF000052 est requis pour mettre à jour des promotions ou des bons de réduction.
  • Vous pouvez ajouter un nouveau coupon à une commande existante en cliquant sur Editer et en cliquant sur Coupons appliqués. Vous pouvez ensuite numériser ou entrer un code de promotion dans la fenêtre Appliquer des bons de réduction. L'API translateBarCode est appelée, suivie de l'API changeOrder pour appliquer la promotion.
  • Vous pouvez également supprimer un coupon appliqué, qui appelle l'API changeOrder .
  • Lorsque la fenêtre Appliquer des bons de réduction est fermée, l'API changeOrder est appelée pour supprimer les promotions non valides des détails de la commande.
  • Les données ne sont pas sauvegardées définitivement dans la commande tant que vous n'avez pas cliqué sur le bouton Enregistrer. Le fait de cliquer sur Enregistrer permet d'appeler l'API changeOrder existante, qui transmet l'attribut ApplyPendingChanges="Y" .
  • La page Modifier la commande est actualisée avec les données mises à jour, telles que le total de la commande et les remises, en appelant l'API getCompleteOrderDetails existante.
  • Les règles de modification des commandes suivantes doivent être activées à l'aide du gestionnaire d'applications :
    • CHANGE_PROMOTION
    • REMOVE_PROMOTION
  • Les API suivantes sont appelées pour modifier la commande en appliquant ou en supprimant des bons de réduction:
    • getCompleteOrderDetails: Pour obtenir la liste des bons de réduction appliqués et pour actualiser les données de commande après avoir ajouté ou supprimé le bon de réduction.
    • translateBarCode avec BarCodeType="StoreCoupon". Pour traduire le code à barres d'un bon de réduction.
    • changeOrder: Pour ajouter un nouveau coupon avec l'action Promotion en tant que CREATE et pour supprimer un coupon avec l'action Promotion en tant que REMOVE.

Modification des options de cadeau

En tant qu'associé de magasin, vous pouvez marquer une ligne de commande nouvelle ou existante comme cadeau.
  • Vous ne pouvez pas modifier les options de cadeau pour les lignes CARRY existantes qui sont déjà transportées par le client.
  • Vous pouvez modifier les options de cadeau pour les lignes de commande d'expédition et de prélèvement existantes en fonction des droits de modification configurés.
  • Vous pouvez marquer toute ligne de commande nouvellement ajoutée comme cadeau. L'option permettant de marquer une ligne de commande comme cadeau est activée uniquement si MaxLineStatus < 3350 (Included in shipment) et qu'elle n'est pas égale à 1100.7777 (CARRIED).
  • Le bouton Options de cadeau au niveau de la commande n'est disponible que si au moins une des lignes de commande est valide pour l'application des options de cadeau et dispose de droits de modification. Dans tous les autres cas, vous pouvez utiliser les Options de cadeau au niveau de la ligne de commande.
  • L'API modifyFulfillmentOptions est appelée pour mettre à jour les informations de cadeau dans la commande.
  • Les modifications en attente sont validées uniquement en cliquant sur Sauvegarder en appelant l'API changeOrder .
  • Les règles de modification des commandes suivantes doivent être activées à l'aide du gestionnaire d'applications :
    • CHANGE_GIFT_FLAG
    • CHANGE_GIFT_WRAP
    • MARKFOR
    • CHANGE_INSTRUCTION
  • Les API suivantes sont appelées pour modifier les options de cadeau:
    • getCompleteOrderLineList: Pour obtenir les détails des options de cadeau qui sont appliquées au niveau de la ligne de commande.
    • getCompleteOrderDetails: Pour obtenir les détails de la commande.
    • modifyFulfillmentOptions: Pour mettre à jour les informations de cadeau dans la commande.
    • changeOrder: Pour valider les modifications apportées à la base de données.

Modification de l'adresse

En tant qu'associé de magasin, vous pouvez modifier l'adresse du client dans une commande existante à partir de la page Modifier la commande .
  • Le droit d'accès aux ressources ISF000062 est requis pour modifier l'adresse de la commande.
  • Vous ne pouvez modifier que l'adresse de commande f maxOrderStatus < 1500 (Scheduled)
  • Cliquez sur le lien du nom de client dans la page Modifier la commande pour ouvrir la fenêtre Identifier le client . Vous pouvez éditer l'adresse en cours qui s'affiche en cliquant sur Editer l'adresse de livraison. Lors de la modification de l'adresse de commande, toutes les lignes de commande associées à l'adresse de commande sont également mises à jour avec la nouvelle adresse.
  • L'adresse mise à jour est enregistrée par rapport à la commande uniquement lorsque vous cliquez sur le bouton Enregistrer dans la page Modifier la commande . Cliquez sur Sauvegarder pour appeler l'API changeOrder existante sur la page, qui transmet l'attribut ApplyPendingChanges="Y" .
  • Les API suivantes sont appelées pour modifier l'adresse:
    • verifyAddress: Pour vérifier l'adresse.
    • modifyFulfillmentOptions: Pour mettre à jour la commande avec la nouvelle adresse.

Ajout de remarques au niveau de la ligne de commande et de la commande

  • Le droit d'accès aux ressources ISF000057 (AddCommentsToOrder) est requis pour ajouter de nouvelles remarques. Si vous ne disposez pas de ce droit d'accès aux ressources, vous pouvez uniquement afficher les remarques existantes.
  • Lorsque vous cliquez sur le lien Remarques dans le niveau de ligne de commande, la fenêtre Remarques sur le produit s'ouvre et affiche toutes les remarques ajoutées. Vous pouvez cliquer sur Ajouter une nouvelle remarque pour ajouter des remarques au niveau de la ligne de commande.
  • Vous pouvez également cliquer sur l'option Remarques dans le menu Actions pour ouvrir la fenêtre Remarques , qui affiche toutes les remarques ajoutées au niveau de la commande. Vous pouvez cliquer sur Ajouter une nouvelle remarque pour ajouter des remarques au niveau de la commande.
  • Les remarques n'ont pas besoin d'appeler ApplyPendingChangescar elles sont directement enregistrées dans la commande.
  • La règle de modification de la commande ADD_NOTE doit être activée à l'aide du gestionnaire d'applications.

Capture du paiement pour le changement dans le total de la commande

  • Lors de l'ajout d'une nouvelle ligne de commande, un message s'affiche avec le total de la nouvelle commande et les détails du paiement en attente.
  • Lors de l'enregistrement des modifications dans la page Modifier la commande , un message de confirmation s'affiche avec un lien permettant de passer à la page Capturer le paiement .
  • Dans la page Capturer le paiement , vous pouvez également afficher les paiements précédemment capturés, le cas échéant. Vous pouvez capturer le montant dû pour effectuer le paiement.
  • Une fois le montant total payé, la page Récapitulatif de la commande s'ouvre.

Traitement du remboursement pour les lignes de commande annulées

Après avoir modifié une commande, si le total de la nouvelle commande est inférieur au montant payé, vous pouvez traiter le remboursement du montant excédentaire.
  • Lors de l'annulation d'une ligne de commande, un message s'affiche avec le nouveau total de la commande et les détails du remboursement:
    • Si le montant est facturé, le montant exact du remboursement est indiqué.
    • Si le montant du remboursement est autorisé, le montant autorisé est annulé sous peu. Le message n'affiche pas le montant exact du remboursement autorisé.
    • Si le montant est facturé et autorisé, le montant exact du remboursement est indiqué et le montant autorisé est inversé sous peu.
  • Si un paiement ou un remboursement du montant facturé, mais non autorisé, est en attente pour une commande enregistrée, un message d'avertissement s'affiche.
  • Lorsque vous sauvegardez les modifications, le remboursement est également traité en arrière-plan à l'aide de l'API processOrderPayments . Un message de confirmation s'affiche dans la page Modifier la commande avec le récapitulatif du remboursement.

    Si l'API processOrderPayments échoue, un message d'erreur s'affiche avec une option de nouvelle tentative. Si vous cliquez sur Réessayer, l'API processOrderPayments est appelée. Si l'API échoue à plusieurs reprises, vous avez la possibilité d'accéder à la page Récapitulatif de la commande . Ensuite, vous pouvez réessayer en modifiant à nouveau la commande ou le remboursement sera automatiquement traité après un certain temps.