Arborescence des pages

Vous regardez une version antérieure (v. /pages/viewpage.action?pageId=747146306) de cette page.

afficher les différences afficher l'historique de la page

« Afficher la version précédente Vous regardez la version actuelle de cette page. (v. 16) afficher la version suivante »

Contenu


Comment configurer votre compte ?

Vous devez vous rapprocher de votre responsable de compte pour obtenir les informations nécessaires permettant de configurer votre compte sur Payline (contrat et le nom de la banque).
Ensuite veuillez adresser un email à notre équipe support@payline.com 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.



Comment proposer le paiement Cadhoc à vos clients ?

Les principes d’utilisation

Une fois le moyen de paiement activé, il est utilisable au travers des fonctions standard Payline en indiquant le contrat du moyen de paiement Contrat_Number. 
Le mode d'intégration est disponible avec l'API WebPayment  : services doWebPayment et getWebPaymentDetails
Le mode d'intégration avec l'API DirectPayment avec le service  doAuthorization.

Les web services en mode Web

  • Interfaces de paiement : API WebPayment, Cente d'administration, TPEV, Batch.

  • 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 : comptant avec le code Mode = CPT.

Les champs obligatoires

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

Nom du champType

Id transaction

Libellé

Numéro de carte

PAN masqué
Type = CadhocLibellé
Date d’expirationDate
MontantMontant avec code devise
Comment réaliser des tests ?

Il vous faut obtenir une carte de test auprès du processeur UP.

Les codes de retour

Avec l'API WebPayment, Payline vous informe du résultat d'un paiement via le code retour des messages getWebPaymentDetails et getTransactionDetails.
Avec l'API DirectPayment, Payline vous informe du résultat de manière synchrone en réponse du doAuthorization
Lorsque le paiement est accepté, Payline renvoie le code retour à la valeur  00000.
Pour un paiement refusé, le code varie en fonction du motif de refus (Par exemple : 04xxx pour une suspicion de fraude).

  • Reset : non; l'erreur suivante est retournée 02621 - Operation not allowed on this site
  • Debit (204) : non; l'erreur suivante est retournée 36016 - Requested function not available
  • Credit (422) : non; l'erreur suivante est retournée 36016 - Requested function not available

Return codes : Limonetik (36)

CodeShortMessageLongMessage
36000ONHOLD_PARTNER Credit Transaction In progress
36001REFUSEDTransaction refused
36002ERRORPayment partner error
36003REFUSEDTransaction charges
36004REFUSEDTransaction is charging
36005ACCEPTEDTransaction refunded
36010ERRORUnreachable host
36011ERRORThe fields shippingAddress.title, shippingAddress.firstname, shippingAddress.lastname, shippingAddress.name, shippingAddress.street1, shippingAddress.zipCode, shippingAddress.cityName, shippingAddress.country of object buyer are mandatory.
36012ERRORThe fields billingAddress.title, billingAddress.firstname, billingAddress.lastname, billingAddress.name, billingAddress.street1, billingAddress.zipCode, billingAddress.cityName, billingAddress.country of object buyer are mandatory.
36013ERRORThe fields order.deliveryMode, order.deliveryTime, order.deliveryexpectedDate, order.deliveryexpectedDelay, details.ref, details.comment, details.price, details.quantity, details.category, details.brand are mandatory.
36014ERRORSyntax error.
36015ERRORInvalid amount.
36016REFUSEDRequested function not available
36017ERRORInvalid title
36018ERRORInvalid Item Category
36019ERRORInvalid expected delivery date
36020ERRORInvalid data. Refer to transaction details.
36025ERROROperation not allowed. Refer to transaction details.
36030ERROROperation refused.
36500ERRORRemote error.
36505ERRORUnreachable host.
36940ERRORSyntax error.
36941ERRORAuthentication error.
36943ERRORUnauthorised request.
36944ERRORUnknown transaction.
36945ERRORUnauthorised http primitive.
36950ERRORError.


Exemple de trame SOAP

<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>9</impl:version>
         <impl:payment>
            <obj:amount>100</obj:amount>
            <obj:currency>978</obj:currency>
            <obj:action>100</obj:action>
            <obj:mode>CPT</obj:mode>
            <obj:contractNumber>CADHOC_01</obj:contractNumber>
            <!--Optional:-->
            <obj:differedActionDate></obj:differedActionDate>
            <!--Optional:-->
            <obj:method></obj:method>
            <obj:softDescriptor></obj:softDescriptor>
            <!--Optional:-->
            <obj:cardBrand></obj:cardBrand>
         </impl:payment>
         <impl:returnURL>http://www.soapui.org/</impl:returnURL>
         <impl:cancelURL>http://sahi.co.in/</impl:cancelURL>
         <impl:order>
            <obj:ref>CTUx30371</obj:ref>
            <!--Optional:-->
            <obj:origin></obj:origin>
            <!--Optional:-->
            <obj:country></obj:country>
            <!--Optional:-->
            <obj:taxes></obj:taxes>
            <obj:amount>11000</obj:amount>
            <obj:currency>978</obj:currency>
            <obj:date>06/07/2014 10:19</obj:date>
            <!--Optional:-->
            <obj:details>
               <!--0 to 100 repetitions:-->
               <obj:details>
                  <!--Optional:-->
                  <obj:ref>00001 (ref1)</obj:ref>
                  <!--Optional:-->
                  <obj:price>50</obj:price>
                  <!--Optional:-->
                  <obj:quantity>1</obj:quantity>
                  <!--Optional:-->
                  <obj:comment>comment1 (rem1)</obj:comment>
                  <!--Optional:-->
                  <obj:category>1</obj:category>
                  <!--Optional:-->
                  <obj:brand>My HERMES (brd1)</obj:brand>
                  <!--Optional:-->
                  <obj:subcategory1>BOSS</obj:subcategory1>
                  <!--Optional:-->
                  <obj:subcategory2>MONTRE</obj:subcategory2>
                  <!--Optional:-->
                  <obj:additionalData>LegalAge=18;Discount=0105</obj:additionalData>
                  <!--Optional:-->
                  <obj:taxRate>1234</obj:taxRate>
               </obj:details>
               <obj:details>
                  <obj:ref>00002 (ref2)</obj:ref>
                  <obj:price>50</obj:price>
                  <obj:quantity>1</obj:quantity>
                  <obj:comment>comment2 (rem2)</obj:comment>
                  <obj:category>1</obj:category>
                  <obj:brand>My HERMES (brd2)</obj:brand>
                  <obj:subcategory1>HERMES</obj:subcategory1>
                  <obj:subcategory2>FOULARD</obj:subcategory2>
                  <obj:additionalData>LegalAge=18;Discount=0105</obj:additionalData>
                  <obj:taxRate>1234</obj:taxRate>
               </obj:details>
               <obj:details>
                  <obj:ref>00003 (ref3)</obj:ref>
                  <obj:price>50</obj:price>
                  <obj:quantity>1</obj:quantity>
                  <obj:comment>comment3 (rem3)</obj:comment>
                  <obj:category>1</obj:category>
                  <obj:brand>My HERMES (brd3)</obj:brand>
                  <obj:subcategory1>HERMES</obj:subcategory1>
                  <obj:subcategory2>MONTRE</obj:subcategory2>
                  <obj:additionalData>LegalAge=19;Discount=0105</obj:additionalData>
                  <obj:taxRate>1234</obj:taxRate>
               </obj:details>
               <obj:details>
                  <obj:ref>00004 (ref4)</obj:ref>
                  <obj:price>50</obj:price>
                  <obj:quantity>1</obj:quantity>
                  <obj:comment>comment4 (rem4)</obj:comment>
                  <obj:category>1</obj:category>
                  <obj:brand>My HERMES (brd4)</obj:brand>
                  <obj:subcategory1>HERMES</obj:subcategory1>
                  <obj:subcategory2>MONTRE</obj:subcategory2>
                  <obj:additionalData>LegalAge=18;Discount=0105</obj:additionalData>
                  <obj:taxRate>4321</obj:taxRate>
               </obj:details>
               <obj:details>
                  <obj:ref>00005 (ref5)</obj:ref>
                  <obj:price>51</obj:price>
                  <obj:quantity>1</obj:quantity>
                  <obj:comment>comment5 (rem5)</obj:comment>
                  <obj:category>1</obj:category>
                  <obj:brand>My HERMES (brd5)</obj:brand>
                  <obj:subcategory1>HERMES</obj:subcategory1>
                  <obj:subcategory2>MONTRE</obj:subcategory2>
                  <obj:additionalData>LegalAge=18;Discount=0105</obj:additionalData>
                  <obj:taxRate>1234</obj:taxRate>
               </obj:details>
               <!--<obj:details>
                  <obj:ref></obj:ref>
                  <obj:price></obj:price>
                  <obj:quantity></obj:quantity>
                  <obj:comment></obj:comment>
                  <obj:category></obj:category>
                  <obj:brand></obj:brand>
                  <obj:subcategory1></obj:subcategory1>
                  <obj:subcategory2></obj:subcategory2>
                  <obj:additionalData></obj:additionalData>
                  <obj:taxRate></obj:taxRate>
               </obj:details>
               <obj:details>
                  <obj:ref></obj:ref>
                  <obj:price></obj:price>
                  <obj:quantity></obj:quantity>
                  <obj:comment></obj:comment>
                  <obj:category></obj:category>
                  <obj:brand></obj:brand>
                  <obj:subcategory1></obj:subcategory1>
                  <obj:subcategory2></obj:subcategory2>
                  <obj:additionalData></obj:additionalData>
                  <obj:taxRate></obj:taxRate>
               </obj:details>
               <obj:details>
                  <obj:ref></obj:ref>
                  <obj:price></obj:price>
                  <obj:quantity></obj:quantity>
                  <obj:comment></obj:comment>
                  <obj:category></obj:category>
                  <obj:brand></obj:brand>
                  <obj:subcategory1></obj:subcategory1>
                  <obj:subcategory2></obj:subcategory2>
                  <obj:additionalData></obj:additionalData>
                  <obj:taxRate></obj:taxRate>
               </obj:details>
               <obj:details>
                  <obj:ref></obj:ref>
                  <obj:price></obj:price>
                  <obj:quantity></obj:quantity>
                  <obj:comment></obj:comment>
                  <obj:category></obj:category>
                  <obj:brand></obj:brand>
                  <obj:subcategory1></obj:subcategory1>
                  <obj:subcategory2></obj:subcategory2>
                  <obj:additionalData></obj:additionalData>
                  <obj:taxRate></obj:taxRate>
               </obj:details>
               <obj:details>
                  <obj:ref></obj:ref>
                  <obj:price></obj:price>
                  <obj:quantity></obj:quantity>
                  <obj:comment></obj:comment>
                  <obj:category></obj:category>
                  <obj:brand></obj:brand>
                  <obj:subcategory1></obj:subcategory1>
                  <obj:subcategory2></obj:subcategory2>
                  <obj:additionalData></obj:additionalData>
                  <obj:taxRate></obj:taxRate>
               </obj:details>
               <obj:details>
                  <obj:ref></obj:ref>
                  <obj:price></obj:price>
                  <obj:quantity></obj:quantity>
                  <obj:comment></obj:comment>
                  <obj:category></obj:category>
                  <obj:brand></obj:brand>
                  <obj:subcategory1></obj:subcategory1>
                  <obj:subcategory2></obj:subcategory2>
                  <obj:additionalData></obj:additionalData>
                  <obj:taxRate></obj:taxRate>
               </obj:details>-->
            </obj:details>
            <!--Optional:-->
            <obj:deliveryTime>1</obj:deliveryTime>
            <!--Optional:-->
            <obj:deliveryMode>1</obj:deliveryMode>
            <!--Optional:-->
            <obj:deliveryExpectedDate>31/08/2017</obj:deliveryExpectedDate>
            <!--Optional:-->
            <obj:deliveryExpectedDelay>1</obj:deliveryExpectedDelay>
         </impl:order>
         <impl:notificationURL></impl:notificationURL>
         <impl:selectedContractList>
            <!--1 to 25 repetitions:-->
            <obj:selectedContract>CADHOC_01</obj:selectedContract>
            <obj:selectedContract></obj:selectedContract>
            <obj:selectedContract></obj:selectedContract>
            <obj:selectedContract></obj:selectedContract>
            <obj:selectedContract></obj:selectedContract>
         </impl:selectedContractList>
         <impl:secondSelectedContractList>
            <!--1 to 25 repetitions:-->
            <obj:selectedContract></obj:selectedContract>
            <obj:selectedContract></obj:selectedContract>
            <obj:selectedContract></obj:selectedContract>
            <obj:selectedContract></obj:selectedContract>
            <obj:selectedContract></obj:selectedContract>
         </impl:secondSelectedContractList>
         <impl:privateDataList>
            <!--0 to 100 repetitions:-->
            <obj:privateData>
               <obj:key>key1</obj:key>
               <obj:value>value1</obj:value>
            </obj:privateData>
            <!--<obj:privateData>
               <obj:key>PAYLINE.PRE_SCORE</obj:key>
               <obj:value>21330</obj:value>
            </obj:privateData>
            <obj:privateData>
               <obj:key></obj:key>
               <obj:value></obj:value>
            </obj:privateData>
            <obj:privateData>
               <obj:key></obj:key>
               <obj:value></obj:value>
            </obj:privateData>
            <obj:privateData>
               <obj:key></obj:key>
               <obj:value></obj:value>
            </obj:privateData>-->
         </impl:privateDataList>
         <impl:languageCode></impl:languageCode>
         <impl:customPaymentPageCode></impl:customPaymentPageCode>
         <impl:buyer>
            <obj:title>M</obj:title>
            <obj:lastName>TUPU</obj:lastName>
            <obj:firstName>Christian</obj:firstName>
            <obj:email>christian.tupu@monext.net</obj:email>
            <obj:shippingAdress>
               <!--Optional:-->
               <obj:title>2</obj:title>
               <!--Optional:-->
               <obj:name>BUYER (shipping)</obj:name>
               <!--Optional:-->
               <obj:firstName>Validation Team (shipping)</obj:firstName>
               <!--Optional:-->
               <obj:lastName>PAYLINE (shipping)</obj:lastName>
               <!--Optional:-->
               <obj:street1>Colombus Circle (shipping)</obj:street1>
               <!--Optional:-->
               <obj:street2>Central Park (shipping)</obj:street2>
               <!--Optional:-->
               <obj:cityName>New York (shipping)</obj:cityName>
               <!--Optional:-->
               <obj:zipCode>NY 10023</obj:zipCode>
               <!--Optional:-->
               <obj:country>france</obj:country>
               <!--Optional:-->
               <obj:phone>0123458789</obj:phone>
               <!--Optional:-->
               <obj:state>NYC (state)</obj:state>
               <!--Optional:-->
               <obj:county>Upper East Side (shipping)</obj:county>
               <!--Optional:-->
               <obj:phoneType>1</obj:phoneType>
            </obj:shippingAdress>
            <obj:billingAddress>
               <!--Optional:-->
               <obj:title>3</obj:title>
               <!--Optional:-->
               <obj:name>BUYER (billing)</obj:name>
               <!--Optional:-->
               <obj:firstName>Christian (billing)</obj:firstName>
               <!--Optional:-->
               <obj:lastName>TUPU (billing)</obj:lastName>
               <!--Optional:-->
               <obj:street1>260, rue Claude Nicolas Ledoux</obj:street1>
               <!--Optional:-->
               <obj:street2>Complément d'adresse</obj:street2>
               <!--Optional:-->
               <obj:cityName>AIX EN PROVENCE</obj:cityName>
               <!--Optional:-->
               <obj:zipCode>13593</obj:zipCode>
               <!--Optional:-->
               <obj:country>FR</obj:country>
               <!--Optional:-->
               <obj:phone>0442251515</obj:phone>
               <!--Optional:-->
               <obj:state></obj:state>
               <!--Optional:-->
               <obj:county>Bouches-du-Rhône</obj:county>
               <!--Optional:-->
               <obj:phoneType>4</obj:phoneType>
            </obj:billingAddress>
            <obj:accountCreateDate></obj:accountCreateDate>
            <obj:accountAverageAmount></obj:accountAverageAmount>
            <obj:accountOrderCount></obj:accountOrderCount>
            <obj:walletId></obj:walletId>
            <obj:walletDisplayed></obj:walletDisplayed>
            <obj:walletSecured></obj:walletSecured>
            <obj:walletCardInd></obj:walletCardInd>
            <obj:ip>172.22.120.218,172.0.0.3</obj:ip>
            <obj:mobilePhone></obj:mobilePhone>
            <obj:customerId>CTU</obj:customerId>
            <obj:legalStatus>1</obj:legalStatus>
            <obj:legalDocument>83006389468</obj:legalDocument>
            <obj:birthDate>1981-12-29</obj:birthDate>
            <obj:fingerprintID></obj:fingerprintID>
            <obj:deviceFingerprint></obj:deviceFingerprint>
            <obj:isBot></obj:isBot>
            <obj:isIncognito></obj:isIncognito>
            <obj:isBehindProxy></obj:isBehindProxy>
            <obj:isFromTor></obj:isFromTor>
            <obj:isEmulator></obj:isEmulator>
            <obj:isRooted></obj:isRooted>
            <obj:hasTimezoneMismatch></obj:hasTimezoneMismatch>
         </impl:buyer>
         <impl:owner>
            <obj:lastName>owner.lastName</obj:lastName>
            <obj:firstName>owner.firstName</obj:firstName>
            <obj:billingAddress>
               <obj:street>owner.billingAddress</obj:street>
               <obj:cityName>owner.billingAddress.cityName</obj:cityName>
               <obj:zipCode>zipCode 3</obj:zipCode>
               <obj:country>owner.billingAddress.country</obj:country>
               <obj:phone>0323458789</obj:phone>
            </obj:billingAddress>
            <obj:issueCardDate></obj:issueCardDate>
         </impl:owner>
         <impl:securityMode>SSL</impl:securityMode>
         <impl:recurring>
            <obj:firstAmount>51</obj:firstAmount>
            <obj:amount>100</obj:amount>
            <obj:billingCycle>10</obj:billingCycle>
            <obj:billingLeft>3</obj:billingLeft>
            <obj:billingDay></obj:billingDay>
            <obj:startDate></obj:startDate>
            <obj:endDate></obj:endDate>
            <obj:newAmount></obj:newAmount>
            <obj:amountModificationDate></obj:amountModificationDate>
         </impl:recurring>
         <impl:customPaymentTemplateURL></impl:customPaymentTemplateURL>
        <impl:contractNumberWalletList>
            <!--0 to 10 repetitions:-->
            <obj:contractNumberWallet></obj:contractNumberWallet>
            <obj:contractNumberWallet></obj:contractNumberWallet>
            <obj:contractNumberWallet></obj:contractNumberWallet>
            <obj:contractNumberWallet></obj:contractNumberWallet>
            <obj:contractNumberWallet></obj:contractNumberWallet>
         </impl:contractNumberWalletList>
         <impl:merchantName></impl:merchantName>
      </impl:doWebPaymentRequest>
   </soapenv:Body>
</soapenv:Envelope>
  • Aucune étiquette