Arborescence des pages



Contenu


Comment configurer votre compte ?

Vous devez vous rapprocher de votre responsable de compte partenaire pour obtenir les informations nécessaires permettant de configurer votre compte d'homologation et de production sur Payline (login du compte et  mot de passe). 
Ensuite veuillez adresser un email à notre équipe support avec les informations, afin qu'ils puissent procéder au paramétrage dans votre compte marchand Payline en indiquant l’ID Marchand et le nom de l’alias du contrat partenaire à créer. 
Vous devez réaliser des transactions 'pilote' pour valider le bon fonctionnement en production.

Contactez le support Monext Online.


Le code (card_code) du moyen de paiement est : KLARNA_PAY


Lors de la création du moyen de paiement, les champs à configurer sont :

  • La région (Union Européenne).
  • L'identifiant commerçant.
  • Le mot de passe.


Comment proposer le paiement Klarna à vos acheteurs ?

Avec l'API WebPayment, Payline vous informe du résultat d'un paiement via Shortmessage des services : getWebPaymentDetails.

Les web services en mode Web

  • Interfaces de paiement : API WebPayment.

  • Paiement à la commande : en utilisant le service  doWebPayment  avec payment.mode à CPT et code Action à 101.

  • Paiement à l'expédition : en utilisant les services doWebPayment  et doCapture avec le code Mode à CPT et code Action à 100.
  • Mode de paiement :  sélectionner votre mode de paiement : comptant avec le code Mode = CPT.
  • Demande d'annulation d'une autorisation non encaissée : utilisez la fonction doReset permet au marchand de demander l’annulation totale ou partielle de la commande.
  • Demande de remboursement d'une transaction remisée : utilisez la fonction doRefund pour rembourser la commande.


Les champs obligatoires

Les champs obligatoires doivent être renseignés lors de la demande de paiement, dans le cas contraire la demande sera refusée. 

Les balises ci-dessous sont obligatoires dans la trame SOAP Payline lors de la demande de paiement.

Balises

Obligatoire

Description

payment.amount(coche)
payment.currency(coche)

Code de la devise du paiement.
Liste des paires devises/pays supportées.

buyer.title
Titre de l'acheteur
buyer.lastName(coche)Nom de l’acheteur
buyer.firstName(coche)Prénom de l’acheteur
buyer.birthDate

buyer.legalDocument

buyer.shippingAddress.title

buyer.shippingAdress.lastName

buyer.shippingAdress.phone

buyer.shippingAdress.email(coche)
buyer.shippingAdress.street1(coche)Nom de la rue de la livraison
buyer.shippingAddress.street2

buyer.shippingAdress.cityName(coche)Nom de la ville de livraison
buyer.shippingAdress.zipCode(coche)Code postal de la livraison
buyer.shippingAdress.country
Pays de la livraison (ISO 3166-1)
buyer.shippingAdress.phone(coche)Téléphone de l'acheteur
buyer.billingAddress.title

buyer.billingAddress.firstName

buyer.billingAddress.lastName

buyer.billingAddress.phone

buyer.billingAddress.email

buyer.billingAdress.street1
Nom de la rue de facturation
buyer.billingAddress.street2

buyer.billingAdress.cityName
Nom de la ville de facturation
buyer.billingAdress.zipCode
Code postal de la facturation
buyer.billingAdress.country
Pays de la facturation (ISO 3166-1)
languageCode
Code de la langue (ISO 639-1)
order.ref

order.taxes
Montant taxes. Taux de TVA appliqué à l'article. Pour information : une TVA > 100% est interdite.
order.country(coche)
order.details
Détail d'une commande

La liste des balises ci-dessous présente le détail des articles d'une commande KLARNA y compris les frais de transport et les frais de manutention :

Services

Obligatoire

Description

orderDetail.comment
Description d'un article.
orderDetail.price(coche)Prix unitaire TVA comprise de l'article.
orderDetail.quantity
Quantité de l'article.
orderDetail.comment(coche)Commentaire.
orderDetail.additionalData avec la clé "discountRate"
Taux de réduction.
orderDetail.additionalData avec la clé "flags"

Identifie le type d'article :

Les valeurs possibles sont les suivantes :

8  : Frais de transport ;
16 : Frais de manutention ;
32 : Prix d'un article TTC.

par exemple : <obj:additionalData>discountRate=0.0;flags=32</obj:additionalData>

orderDetails.additionalData avec la clé "imageURL"
URL de l'image de l'article
orderDetail.additionnalData avec la clé "GTIN"
Numéro d'article : The product's Global Trade Item Number (GTIN)
orderDetail.additionnalData avec la clé "MPN"
Numéro du fabricant : The product's Manufacturer Part Number (MPN)
orderDetail.additionnalData avec la clé "productUrl"
URL du produit : URL to the product that can be later used in communications between Klarna and the customer
orderDetail.taxRate(coche) : capture et refund Taux de la taxe
orderDetail.ref
Référence.
orderDetails.brand
Marque.
orderDetails.category(coche) : capture et refund Catégorie.

(avertissement)  Les montants de commande, de la transaction et de la somme des Articles doivent être identiques. Si cette contrainte n'est pas respectée, le moyen de paiement ne sera pas affiché sur le formulaire.

  1. payment.amount
  2. order.amount
  3. order.details.details.price


(avertissement)  Les devises et les pays déclarés dans la commande, l'adresse de livraison, l'adresse de facturation et d'adresse de l'acheteur doivent correspondre au même pays, ainsi que la langue déclarée dans la balise languageCode.

Pour plus d’information concernant les formats et champs attendus coté Klarna, veuillez consulter la page suivante: https://docs.klarna.com/klarna-payments/in-depth-knowledge/customer-data-requirements/

Le service doWebPaymentRequest


Exemple de trame...
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:impl="http://impl.ws.payline.experian.com" xmlns:obj="http://obj.ws.payline.experian.com">
   <soapenv:Header/>
   <soapenv:Body>
      <impl:doWebPaymentRequest>
         <impl:version>21</impl:version>
         <impl:payment>
            <obj:amount>10000</obj:amount>
            <obj:currency>208</obj:currency>
            <obj:action>100</obj:action>
            <obj:mode>CPT</obj:mode>
            <obj:contractNumber>KLARNA_PAY</obj:contractNumber>
         </impl:payment>
         <impl:returnURL>https://monext.fr</impl:returnURL>
         <impl:cancelURL>https://google.com</impl:cancelURL>
         <impl:order>
            <obj:ref>XX</obj:ref>
            <obj:origin>10</obj:origin>
            <obj:country>DK</obj:country>
            <obj:taxes>0</obj:taxes>
            <obj:amount>10000</obj:amount>
            <obj:currency>208</obj:currency>
            <obj:date>28/08/2015 17:27</obj:date>
            <obj:details>
               <obj:details>
                  <obj:ref>1</obj:ref>
                  <obj:price>10000</obj:price>
                  <obj:quantity>1</obj:quantity>
                  <obj:comment>comment</obj:comment>
               </obj:details>
            </obj:details>
         </impl:order>
         <impl:notificationURL>http://www.concupourvendre.com/notif/notif.php</impl:notificationURL>
         <impl:selectedContractList>
            <obj:selectedContract>KLARNA_PAY</obj:selectedContract>
            <obj:selectedContract>1234567</obj:selectedContract>
         </impl:selectedContractList>
         <impl:secondSelectedContractList>
            <obj:selectedContract/>
         </impl:secondSelectedContractList>
         <impl:privateDataList>
            <obj:privateData>
               <obj:key/>
               <obj:value/>
            </obj:privateData>
         </impl:privateDataList>
         <impl:languageCode>da</impl:languageCode>
         <impl:customPaymentPageCode/>
         <impl:buyer>
            <obj:lastName>XX</obj:lastName>
            <obj:firstName>XX</obj:firstName>
            <obj:email>XX@xx.com</obj:email>
            <obj:title>11</obj:title>
            <obj:shippingAdress>
               <obj:firstName>XX</obj:firstName>
               <obj:lastName>XX</obj:lastName>
               <obj:title>11</obj:title>
               <obj:name>XX</obj:name>
               <obj:street1>Rue truc</obj:street1>
               <obj:street2>Bat B</obj:street2>
               <obj:cityName>Trucville</obj:cityName>
               <obj:zipCode>12345</obj:zipCode>
               <obj:country>DK</obj:country>
               <obj:phone>0123456789</obj:phone>
               <obj:state>XX</obj:state>
            </obj:shippingAdress>
            <obj:billingAddress>
               <obj:firstName>XX</obj:firstName>
               <obj:lastName>XX</obj:lastName>
               <obj:title>11</obj:title>
               <obj:name>XX</obj:name>
               <obj:street1>Rue truc</obj:street1>
               <obj:street2>Bat B</obj:street2>
               <obj:cityName>Trucville</obj:cityName>
               <obj:zipCode>12345</obj:zipCode>
               <obj:country>DK</obj:country>
               <obj:phone>0123456789</obj:phone>
               <obj:state>XX</obj:state>
            </obj:billingAddress>
            <obj:accountCreateDate/>
            <obj:accountAverageAmount/>
            <obj:accountOrderCount/>
            <obj:walletId/>
            <!--<obj:walletSecured>CVV+3DS</obj:walletSecured>-->
            <obj:ip>00.00.00.123</obj:ip>
            <obj:mobilePhone/>
            <obj:customerId>987654321</obj:customerId>
         </impl:buyer>
         <impl:securityMode>SSL</impl:securityMode>
         <impl:customPaymentTemplateURL/>
      </impl:doWebPaymentRequest>
   </soapenv:Body>
</soapenv:Envelope>

Mettre en place l'On-Site-Messaging Klarna

Afin d’informer les consommateurs de la présence de Klarna en amont du checkout, Klarna met à disposition des placements d’On-Site-Messaging via une librairie javaScript.

La présence de ce type de placement sur la page produit ou sur la page panier a un impact direct sur la conversion et le panier moyen observé.

Exemple de placement:

Veuillez consulter la page suivante pour plus de détails en cliquant sur ici.

Comment réaliser des tests ?

Pour plus d'informations sur les données de tests, veuillez consulter la page des données de test ici.


Les codes de retour

Monext Online vous informe du résultat d’un paiement via le ShortMessage, selon le mode d'intégration proposé par le moyen de paiement. 

Les états retournés :

  • Le paiement est accepté avec l'état ACCEPTED et le code retour 00000.
  • Le paiement est refusé avec l'état REFUSED. Le code varie en fonction du motif de refus (Par exemple : 01xxx pour une raison bancaire ou 04xxx pour une suspicion de fraude).

La gestion des états et des codes retour sont listés ici.