Page tree
Skip to end of metadata
Go to start of metadata

Sommaire




Comment intégrer Payline


Avec l'API WebPayment en mode widget, Payline récupère les données bancaires sur votre site et réalise la transaction dès la validation de la commande. 

L'intégration se déroule en 3 étapes : 

Envoyer un paiement initial

Initier une requête serveur à serveur pour préparer le paiement avec les données requieses, les moyens de paiement, le montant, la devise, le customerID. La réponse contient un identifiant de session utilisé dans la deuxième étape

Créer un formulaire de paiement

Pour créer un formulaire de paiement affiché lors de la validation du panier, il suffit d'insérer une balise <DIV> dans le corps de votre page web. Payline va se servir de cette balise pour afficher le formulaire de paiement.

Obtenir l'état du paiement

Découvrez si le paiement a été réalisé avec succès.


Les étapes

1. Envoyer un paiement initial

Vous devez simplement initier une demande de paiement en appeler le service web doWebPayment de serveur à serveur avec les paramètres contrats sélectionnés et les données de la commande.


 Exemple d'une requête au service de paiement..
<ns1:doWebPaymentRequest xmlns:ns2="http://obj.ws.payline.experian.com" xmlns:ns1="http://impl.ws.payline.experian.com" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
  <ns1:version>20</ns1:version>
  <ns1:payment>
    <ns2:amount>33300</ns2:amount>
    <ns2:currency>978</ns2:currency>
    <ns2:action>101</ns2:action>
    <ns2:mode>CPT</ns2:mode>
    <ns2:contractNumber>VADCB</ns2:contractNumber>
  </ns1:payment>
  <ns1:returnURL>https://demo.payline.com/~kitphp/examples/demos/web.php?e=getWebPaymentDetails</ns1:returnURL>
  <ns1:cancelURL>https://demo.payline.com/~kitphp/examples/demos/web.php?e=getWebPaymentDetails</ns1:cancelURL>
  <ns1:order>
    <ns2:ref>REF001</ns2:ref>
    <ns2:amount>33300</ns2:amount>
    <ns2:currency>978</ns2:currency>
    <ns2:date>22/01/2019 17:33</ns2:date>
  </ns1:order>
  <ns1:notificationURL xsi:nil="true"/>
  <ns1:selectedContractList>
    <ns2:selectedContract>VADCB</ns2:selectedContract>
    <ns2:selectedContract>PAYPAL</ns2:selectedContract>
    <ns2:selectedContract>AMAZONPAY</ns2:selectedContract>
    <ns2:selectedContract>GOOGLEPAY</ns2:selectedContract>
  </ns1:selectedContractList>
  <ns1:buyer>
    <ns2:title>4</ns2:title>
    <ns2:lastName>DO</ns2:lastName>
    <ns2:firstName>JO</ns2:firstName>
    <ns2:email>johndoe@yopmail.com</ns2:email>
    <ns2:walletId>W_RG1</ns2:walletId>
    <ns2:mobilePhone>0600000000</ns2:mobilePhone>
    <ns2:customerId>RG1</ns2:customerId>
    <ns2:legalStatus>1</ns2:legalStatus>
    <ns2:legalDocument>5</ns2:legalDocument>
    <ns2:birthDate>1980-01-20</ns2:birthDate>
    <ns2:fingerprintID>65w4765xf45qs4fmjslgkj354q354</ns2:fingerprintID>
  </ns1:buyer>
  <ns1:merchantName>Demo</ns1:merchantName>
</ns1:doWebPaymentRequest>


2. Créer le formulaire de paiement

Pour créer un formulaire de paiement affiché lors de la validation du panier, il suffit d'insérer une balise <DIV> dans le corps de votre page web. Payline va se servir de cette balise pour afficher le formulaire de paiement.


 Exemple de page web..
<html>
 <head>
   <script src="https://homologation-payment.cdn.payline.com/cdn/scripts/widget-min.js"></script>
   <link href="https://homologation-payment.cdn.payline.com/cdn/styles/widget-min.css" rel="stylesheet" />
 </head>
 <body>
 <div id="PaylineWidget"
    data-token="the token obtained in doWebPayment Response"
    data-template="column"
    data-embeddedredirectionallowed="false"
 />
 </body>
</html>


2. Obtenir l'état du paiement

Résultat du paiement : depuis votre SI vous devez utiliser la fonction getWebPaymentDetails de l'API Web Payment pour obtenir le résultat du paiement.


 Exemple d'une demande de résultat..
<ns1:getWebPaymentDetailsRequest xmlns:ns1="http://impl.ws.payline.experian.com" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/">
  <ns1:version>20</ns1:version>
  <ns1:token>2wkKWP3h8kdaqW78DX061544613601241</ns1:token>
</ns1:getWebPaymentDetailsRequest>
 Exemple d'une réponse de résultat..
<getWebPaymentDetailsResponse xmlns="http://impl.ws.payline.experian.com" xmlns:obj="http://obj.ws.payline.experian.com" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
   <result>
      <obj:code>00000</obj:code>
      <obj:shortMessage>ACCEPTED</obj:shortMessage>
      <obj:longMessage>Transaction approved</obj:longMessage>
    </result>
    <transaction>
      <obj:id>28346122024986</obj:id>
      <obj:date>12/12/2018 12:20:24</obj:date>
      <obj:isDuplicated>0</obj:isDuplicated>
      <obj:isPossibleFraud>0</obj:isPossibleFraud>
      <obj:fraudResult/>
      <obj:explanation/>
      <obj:threeDSecure>N</obj:threeDSecure>
      <obj:score>0</obj:score>
      <obj:partnerAdditionalData xsi:nil="true"/>
   </transaction>
     <payment>
      <obj:amount>33300</obj:amount>
      <obj:currency>978</obj:currency>
      <obj:action>101</obj:action>
      <obj:mode>CPT</obj:mode>
      <obj:contractNumber>VADCB</obj:contractNumber>
      <obj:differedActionDate/>
      <obj:method>CB</obj:method>
      <obj:cardBrand xsi:nil="true"/>
   </payment>
   <authorization>
      <obj:number>OK</obj:number>
      <obj:date>12/12/2018 12:20:24</obj:date>
   </authorization>
   <privateDataList/>
   <paymentRecordId xsi:nil="true"/>
   <authentication3DSecure>
      <obj:md xsi:nil="true"/>
      <obj:xid xsi:nil="true"/>
      <obj:eci xsi:nil="true"/>
      <obj:cavv xsi:nil="true"/>
      <obj:cavvAlgorithm xsi:nil="true"/>
      <obj:vadsResult xsi:nil="true"/>
   </authentication3DSecure>
   <card>
      <obj:number>444433XXXXXX1111</obj:number>
      <obj:type>CB</obj:type>
      <obj:expirationDate>1220</obj:expirationDate>
      <obj:token>4444SxXvCAOj1111</obj:token>
   </card>
   <extendedCard>
      <obj:country/>
      <obj:isCvd/>
      <obj:bank/>
      <obj:type>CB</obj:type>
      <obj:network xsi:nil="true"/>
   </extendedCard>
   <order>
      <obj:ref>REF1</obj:ref>
      <obj:origin xsi:nil="true"/>
      <obj:country xsi:nil="true"/>
      <obj:taxes xsi:nil="true"/>
      <obj:amount>10000</obj:amount>
      <obj:currency>978</obj:currency>
      <obj:date>12/12/2018 12:20:00</obj:date>
      <obj:deliveryTime xsi:nil="true"/>
      <obj:deliveryMode>1</obj:deliveryMode>
      <obj:deliveryExpectedDate>16/12/2018</obj:deliveryExpectedDate>
      <obj:deliveryExpectedDelay>0</obj:deliveryExpectedDelay>
   </order>
   <media>Computer</media>
   <wallet>
      <obj:walletId>W_RG1</obj:walletId>
      <obj:lastName>DO</obj:lastName>
      <obj:firstName>JO</obj:firstName>
      <obj:email>johndoe@yopmail.com</obj:email>
      <obj:shippingAddress>
      <obj:name>Monext</obj:name>
      <obj:street1>260, rue Claude Nicolas Ledoux</obj:street1>
      <obj:street2/>
      <obj:cityName>Aix-en-Provence Cedex 3</obj:cityName>
      <obj:zipCode>13593</obj:zipCode>
      <obj:country>FR</obj:country>
      <obj:phone>0442000000</obj:phone>
      </obj:shippingAddress>
      <obj:card>
         <obj:encryptionKeyId xsi:nil="true"/>
                  <obj:encryptedData xsi:nil="true"/>
         <obj:number>444433XXXXXX1111</obj:number>
         <obj:type>CB</obj:type>
         <obj:expirationDate>1220</obj:expirationDate>
         <obj:ownerBirthdayDate/>
         <obj:password/>
         <obj:cardholder/>
         <obj:token>4444SxOvCAOj1111</obj:token>
      </obj:card>
      <obj:comment/>
      <obj:default>Y</obj:default>
   </wallet>
   <contractNumberWalletList>
      <obj:contractNumberWallet>VADCB</obj:contractNumberWallet>
   </contractNumberWalletList>
   <contractNumber>VADCB</contractNumber>
</getWebPaymentDetailsResponse>



Plus d'information

Intégration API WebPayment

Vous avez un profil avancé et de bonnes connaissances. Vous développez votre site, vous souhaitez intégrer cette page de paiement simple ou la personnaliser dans les moindres détails.
Payline propose un éventail de fonctionnalités supplémentaires.

Intégration pour une conformite PCI-DSS SAQ-A (simple).


Vous devez consulter les pages suivantes : 


Création d'un compte Payline

Pour réaliser un test sur une maquette vous pouvez déjà créer un compte, Payline vous accompagne.

Cinématique de paiement d'une page web

Vous pouvez consulter le principe d'un paiement web.

Vous pouvez également consulter les autres modes d'intégrations.