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 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 : CADHOC
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 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 .
Liste des codes retour les plus utilisés :
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 Code ShortMessage LongMessage 36000 ONHOLD_PARTNER Credit Transaction In progress 36001 REFUSED Transaction refused 36002 ERROR Payment partner error 36003 REFUSED Transaction charges 36004 REFUSED Transaction is charging 36005 ACCEPTED Transaction refunded 36010 ERROR Unreachable host 36011 ERROR The fields shippingAddress.title, shippingAddress.firstname, shippingAddress.lastname, shippingAddress.name , shippingAddress.street1, shippingAddress.zipCode, shippingAddress.cityName, shippingAddress.country of object buyer are mandatory. 36012 ERROR The fields billingAddress.title, billingAddress.firstname, billingAddress.lastname, billingAddress.name , billingAddress.street1, billingAddress.zipCode, billingAddress.cityName, billingAddress.country of object buyer are mandatory. 36013 ERROR The fields order.deliveryMode, order.deliveryTime, order.deliveryexpectedDate, order.deliveryexpectedDelay, details.ref, details.comment, details.price, details.quantity, details.category, details.brand are mandatory. 36014 ERROR Syntax error. 36015 ERROR Invalid amount. 36016 REFUSED Requested function not available 36017 ERROR Invalid title 36018 ERROR Invalid Item Category 36019 ERROR Invalid expected delivery date 36020 ERROR Invalid data. Refer to transaction details. 36025 ERROR Operation not allowed. Refer to transaction details. 36030 ERROR Operation refused. 36500 ERROR Remote error. 36505 ERROR Unreachable host. 36940 ERROR Syntax error. 36941 ERROR Authentication error. 36943 ERROR Unauthorised request. 36944 ERROR Unknown transaction. 36945 ERROR Unauthorised http primitive. 36950 ERROR Error.
Exemple de trame SOAP Ouvrir l'exemple
<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>