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 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.
Image Removed Inclusion d'extrait |
---|
| Contactez le support Monext Online |
---|
| Contactez le support Monext Online |
---|
nopanel | true |
---|
|
Le code (card_code) du moyen de paiement est : CADHOC
Image Added
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
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 champ | Type |
---|
Id transaction | Libellé |
Numéro de carte | PAN masqué |
Type = Cadhoc | Libellé |
Date d’expiration | Date |
Montant | Montant 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
retour
Inclusion d'extrait |
---|
| Les codes retour |
---|
| Les codes retour |
---|
nopanel | true |
---|
|
Liste des codes retour les plus utilisés :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
Inclusion d'extrait |
---|
| DT:Return codes : Limonetik (36)DT: |
---|
| Return codes : Limonetik (36) |
---|
nopanel | true |
---|
|
Exemple de trame SOAP
Développer |
---|
|
Bloc de code |
---|
language | xml |
---|
theme | Confluence |
---|
| <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> |
|