Modifier le panier

La modification d'un panier peut porter sur :

  • une annulation partielle
    Concerne les transactions affichées dans l'onglet Transactions en cours du Back Office Marchand.
    Une annulation partielle de la commande peut être effectuée à condition que celle-ci :
    • ne soit pas remisée (dans le Back Office)
    • ne soit activée côté Klarna.
    Pour toute modification, il est obligatoire de récréer le panier avec l'ensemble des éléments qui doivent y figurer.
  • un remboursement partiel
    Concerne les transactions affichées dans l'onglet Transactions remisées du Back Office.
    Un remboursement partiel de la commande peut être effectué à condition que celle-ci soit remisée.
    Pour toute modification, il est obligatoire de soumettre le panier dans sa totalité.
    Si des éléments ne doivent plus y figurer, leur quantité doit être égale à 0.
    Seul le champs quantité peut être modifié (à la baisse).

Pour modifier un panier (annulation partielle ou remboursement partiel) :

  1. Utilisez l'opération updatePaymentDetails des Web services v5.

    Les web services sont développés suivant le protocole SOAP version 1.2 (Simple Object Access Protocol) et sont décrits par le fichier wsdl suivant :

  2. Valorisez le HEADER de votre requête afin de transmettre la valeur des attributs shopId, requestId, timestamp, mode et authToken.
    Pour plus d'information, veuillez-vous reporter à la documentation disponible sur notre site documentaire https://payzen.io/fr-FR/
  3. Valorisez le BODY de votre requête avec l'objet updatePaymentDetails.
    updatePaymentDetails est constitué des paramètres suivants :
    Objet Format Requis
    queryRequest queryRequest
    shoppingCartRequest shoppingCartRequest
  4. Valorisez l'objet queryRequest avec l'attribut uuid.
    Correspond à la référence unique de la transaction.
    Cet attribut permet de cibler la transaction qui fait l'objet d'une modification.
  5. Valorisez l'objet shoppingCartRequest avec les attributs :
    Tableau 1. Objet shoppingCartRequest
    shoppingCartRequest
    Attribut Requis Format
    insuranceAmount

    Montant de l'assurance

    n..3
    shippingAmount

    Frais d'expédition.

    n..3
    cartItemInfo

    Champs personnalisables permettant d'ajouter les éléments du panier.

    L'attribut cartItemInfo est composé de sous objets :

    • productLabel : nom du produit. Son format est "string".
    • productType : type de produit. Son format est "string (enum)".
      Tableau 1. Valeurs associées à productType
      Valeur Description
      FOOD_AND_GROCERY Produits alimentaires et d'épicerie
      AUTOMOTIVE Automobile / Moto
      ENTERTAINMENT Divertissement / Culture
      HOME_AND_GARDEN Maison et jardin
      HOME_APPLIANCE Equipement de la maison
      AUCTION_AND_GROUP_BUYING Ventes aux enchères et achats groupés
      FLOWERS_AND_GIFTS| Fleurs et cadeaux
      COMPUTER_AND_SOFTWARE Ordinateurs et logiciels
      HEALTH_AND_BEAUTY Santé et beauté
      SERVICE_FOR_INDIVIDUAL Services à la personne
      SERVICE_FOR_BUSINESS Services aux entreprises
      SPORTS Sports
      CLOTHING_AND_ACCESSORIES Vêtements et accessoires
      TRAVEL Voyage
      HOME_AUDIO_PHOTO_VIDEO Son, image et vidéo
      TELEPHONY Téléphonie
    • productRef : référence produit. Son format est "string".
    • productQty : quantité de produit. Son format est "integer".
    • productAmount : montant en centimes du produit. Son format est "string".
    • productVat : montant de la taxe sur le produit. Son format est "string".

    Exemple :

    <cartItemInfo>
             		<productLabel>CHIPS</productLabel>
             		<productType>FOOD_AND_GROCERY</productType>
             		<productRef>188545</productRef>
             		<productQty>10</productQty>
             		<productAmount>10000</productAmount>         		
    </cartItemInfo>
    cartItemInfo
    Remarque :
    Si un attribut est supprimé dans la requête, il est supprimé définitivement. Pour pallier à toute erreur ou omission, tous les champs sont requis. Nous vous conseillons de les envoyer dans la requête même si l'un d'entre eux est valorisé à 0 ou vide.