Contenu



Le tableau ci-dessous liste les dernières modifications effectuées sur ce document.

Version

Date

Modifications

1.D21/05/12

Livraison version en français
Suppression de la description des pages du centre d'admin inaccessible au commerçant

1.E03/06/16Traitement du service doAuthorization et version du batch







Introduction

Le batch permet le traitement des transactions en mode asynchrones produisant un fichier résultat en retour. Cette page décrit les fonctions du batch Payline V4.

Conformité PCI

Fichier en entrée

Juste après le traitement, le fichier d'entrée est crypté avec PGP et est supprimé au bout de 7 jours.


Version du batch :
Payline ajoute la gestion du numéro de version dans les demandes par batch.
La version d'interface est gérée au niveau de chaque demande. Dans un même fichier batch il est possible de demander l'exécution de deux commandes dans deux versions différentes.
La numérotation des versions des commandes de l'interface batch reprend celle de l'interface Web Service.

Fichier en sortie

Le fichier de sortie ne contient pas de données sensibles. Ils ne sont pas cryptés et sont supprimés au bout de 7 jours.

Glossaire


Capture

La validation est envoyée immédiatement ou en différé, après une autorisation en succès.

Authorization

La demande d'autorisation est envoyée immédiatement ou en différé à l'acquéreur pour réaliser les contrôles de validation du moyen de paiement.

Refund

Le remboursement est une décision prise par le marchand APRES que la transaction ait été remise en banque et qu'ils aient reçu les fonds

Debit

Débit du Compte client et crédit du compte marchand
Le débit « avec le numéro de l'autorisation » est une décision prise par le marchand après avoir appelé sa banque qui lui donne le numéro d'autorisation

Credit

Crédit du Compte client et débit du compte marchand
Le crédit est une décision prise par le marchand APRES que la transaction ait été remise en banque et qu'ils aient reçu les fonds

Reset

L'annulation est une décision prise avant que les transactions ne soient remises en banque; l'annulation est faite dans le produit Payline sans intervention de la banque.

Settlement file

Ce fichier contient toutes les opérations de règlement "de débit, de crédit, remboursement, de le capturer", et ce fichier est envoyé à la banque, la banque peut être transformé en débit ou crédit du compte marchand.

Wallet

Un Wallet est un portefeuille virtuel, destiné à conserver les informations client et de lui éviter lors d'une prochaine commande une nouvelle saisie de ses informations.

XSD

XSD est un langage de description de format de document XML permettant de définir la structure et le type de contenu d'un document XML. Cette définition permet notamment de vérifier la validité de ce document.

L'Interface batch

Les Fonctions disponibles

L'interface batch peut traiter les transactions suivantes :

  • Authorization : La version des services webservices doit être égale ou supérieure à 13.
  • Capture
  • Refund.
  • Debit
  • Credit
  • Reset
  • Scheduled Wallet Payment
  • Disable Wallet

Cinématique

L'interface batch se déroule en quatre etapes :

  • La réception du fichier en provenance de commerçant.
  • Intégration du fichier dans Payline.
  • Traitement du fichier dans Payline.
  • Retour du fichier résultats vers le marchand.

Workflow: Flux de traitement dans le produit Payline




Réception du fichier

Le transfert de fichier est géré par le système Payline XFT

Contrôle du numéro de séquence

Le fichier contient un numéro de séquence. Ce numéro de séquence doit suivre immédiatement le numéro de séquence précédent. Sinon, le fichier est rejeté. Si le fichier est rejeté, un processus automatique informe l'équipe de production Monext et un fichier d'erreur est envoyé au commerçant (voir fichier d'erreurs chapitre).

Contrôle de la structure du fichier

Le fichier de format est XML.
La structure du fichier est contrôlée avec le XSD. Si la structure du fichier n'est pas cohérente, le fichier est rejeté.Si le fichier est rejeté, un processus automatique informe l'équipe de production Monext et un fichier d'erreur est envoyé au commerçant (voir fichier d'erreurs chapitre).

Retour du résultat

Pour chaque transaction, le résultat est retourné au marchand.
Afin de suivre la transaction en entrée du fichier comme en sortie, un identifiant (ID) de transaction unique doit être positionné par le marchand dans le fichier d'entrée.
Dans le fichier de rapport, Payline se référera au même ID de transaction pour le résultat.


Description des fichiers XSD

Cette section décrit la façon de remplir le fichier xml.
Le format de fichier est défini en trois fichiers de type XSD:

Fichier

Description

PaylineObject.xsd

Le fichier XSD qui décrit principalement des objets Payline (tels que «Paiement» ou «carte», etc ...)

PaylineFunction.xsd

Le fichier XSD qui décrit principalement les fonctions Payline (tels que "DoCapture", etc ...).
Références PaylineObject.xsd

PaylineBatchInterface.xsd

Le fichier XSD qui décrit le format du fichier.
Références PaylineObject.xsd and PaylineFunction.xsd


PaylineObject.xsd et PaylineFunction.xsd


Le fichier PaylineObject.xsd décrit les objets utilisés dans la transaction comme le paiement ou la carte etc ... Tous les objets qui peuvent être utilisés, sont décrits dans le guide d'intégration.
Ce fichier xsd est présent dans le chapitre 6.1.

Pour le fichier PaylineFunction.xsd, utilisez le même principe que l'interface webservice qui sont décrits dans la description de l'API webservices.
Ce fichier xsd est présent dans le chapitre 6.2.

PaylineBatchInterface.xsd

Ce fichier décrit le format du fichier batch. Ce fichier xsd est présent dans le chapitre 6.3.

Niveau 1


Élément

Format

Description

TransactionsFile

Object

L'élément racine

sequenceNumber

String

Numéro de séquence du fichier.
Ce numéro doit suivre le numéro du fichier précédent.
Même numéro sera envoyé dans le fichier de rapport

merchant_ID

String

Payline Merchant ID

TransactionsList

Object

Élément qui contient la liste des transactions

Error

Object

Élément qui contient les erreurs de données


Élément Error



Élément

Format

Description

Erreur

Object

Élément qui contient les erreurs de données

code

String

Code erreur

Message

String

Message d'erreur


Code d'erreur lié au fichier

Error Code

Error message

Description

00001

File structure is not correct

Le fichier n'est pas correct avec la définition XSD

00002

Bad sequence number

Le numéro de séquence n'est pas correct.

Élément TransactionsList



Élément

Format

Description

TransactionsList

Object

Élément qui contient la liste des transactions

AuthorizationList

Object

Élément qui contient la liste des Autorisations

CapturesList

Object

Élément qui contient la liste des Validations.
Cet élément n'est pas obligatoire

RefundsList

Object

Élément qui contient la liste des Remboursements
Cet élément n'est pas obligatoire

CreditsList

Object

Élément qui contient la liste des Transactions de type Credit
Cet élément n'est pas obligatoire

DebitsList

Object

Élément qui contient la liste des Transactions de type Debit
Cet élément n'est pas obligatoire

ResetsList

Object

Élément qui contient la liste des Annulations

ScheduledWalletPaymentsList

Object

Élément qui contient la liste des Paiements programmés par portefeuille

DisableWalletsList

Object

Élément qui contient la liste des portefeuilles qui ont été désactivés


AuthorizationList


Élément

Format

Description

AuthorizationList

Object

Élément qui contient la liste des Autorisations

Authorization

Object

Élément qui contient la demande ou la réponse d'autorisation (mais pas les deux).
La cardinalité de l'élément est 0 ... *

id

String

Nombre fixé par le commerçant. Il sera utilisé pour relier la demande et la réponse.

DoAuthorizationRequest

Object

Cet élément est la demande d'autorisation.

DoAuthorizationResponse

Object

Cet élément est la réponse d'autorisation.


CapturesList



Élément

Format

Description

CapturesList

Object

Élément qui contient la liste des Validations
Cet élément n'est pas obligatoire

Capture

Object

Élément qui contient la demande ou la réponse de transaction (mais pas les deux).
La cardinalité de l'élément est 0 ... *

id

String

Nombre fixé par le commerçant. Il sera utilisé pour relier la demande et la réponse.

doCaptureRequest

Object

Cet élément est la demande de transaction. Les détails sont dans "guide d'intégration".

doCaptureResponse

Object

Cet élément est la réponse d'une transaction. Les détails sont dans "guide d'intégration".

RefundsList



Élément

Format

Description

RefundsList

Object

Élément qui contient la liste des Remboursements
Cet élément n'est pas obligatoire

Refund

Object

Élément qui contient la demande ou la réponse de transaction (mais pas les deux).
La cardinalité de l'élément est 0 ... *

id

String

Nombre fixé par le commerçant. Il sera utilisé pour relier la demande et la réponse.

doRefundRequest

Object

Cet élément est la demande de transaction. Les détails sont dans "guide d'intégration".

doRefundResponse

Object

Cet élément est la réponse d'une transaction. Les détails sont dans "guide d'intégration".

CreditsList



Élément

Format

Description

CreditsList

Object

Élément qui contient la liste des Credit
Cet élément n'est pas obligatoire

Credit

Object

Élément qui contient la demande ou la réponse de transaction (mais pas les deux).
La cardinalité de l'élément est 0 ... *

id

String

Nombre fixé par le commerçant. Il sera utilisé pour relier la demande et la réponse.

doCreditRequest

Object

Cet élément est la demande de transaction. Les détails sont dans "guide d'intégration".

doCreditResponse

Object

Cet élément est la réponse d'une transaction. Les détails sont dans "guide d'intégration".


DebitsList



Élément

Format

Description

debitsList

Object

Élément qui contient la liste des Debit
Cet élément n'est pas obligatoire

Debit

Object

Élément qui contient la demande ou la réponse de transaction (mais pas les deux).
La cardinalité de l'élément est 0 ... *

id

String

Nombre fixé par le commerçant. Il sera utilisé pour relier la demande et la réponse.

doDebitRequest

Object

Cet élément est la demande de transaction. Les détails sont dans "guide d'intégration".

doDebitResponse

Object

Cet élément est la réponse d'une transaction. Les détails sont dans "guide d'intégration".


ResetsList



Élément

Format

Description

resetsList

Object

Élément qui contient la liste des Reset
Cet élément n'est pas obligatoire

Reset

Object

Élément qui contient la demande ou la réponse de transaction (mais pas les deux).
La cardinalité de l'élément est 0 ... *

id

String

Nombre fixé par le commerçant. Il sera utilisé pour relier la demande et la réponse.

doResetRequest

Object

Cet élément est la demande de transaction. Les détails sont dans "guide d'intégration".

doResetResponse

Object

Cet élément est la réponse d'une transaction. Les détails sont dans "guide d'intégration".


ScheduledWalletPaymentsList



Élément

Format

Description

scheduledWalletPaymentsList

Object

Élément qui contient la liste des Paiements programmés par portefeuille
Cet élément n'est pas obligatoire

ScheduledWalletPayment

Object

Élément qui contient la demande ou la réponse de transaction (mais pas les deux).
La cardinalité de l'élément est 0 ... *

id

String

Nombre unique fixé par le commerçant. Il sera utilisé pour relier la demande et la réponse.

doScheduledWalletPaymentRequest

Object

Cet élément est la demande de transaction. Les détails sont dans "guide d'intégration".

doScheduledWalletPaymentResponse

Object

Cet élément est la réponse d'une transaction. Les détails sont dans "guide d'intégration".


DisableWalletsList


Élément

Format

Description

disableWalletsList

Object

Élément qui contient la liste des portefeuilles désactivés
Cet élément n'est pas obligatoire

DisableWallet

Object

Élément qui contient la demande ou la réponse de transaction (mais pas les deux).
La cardinalité de l'élément est 0 ... *

id

String

Nombre unique, fixé par le commerçant. Il sera utilisé pour relier la demande et la réponse.

disableWalletRequest

Object

Cet élément est la demande de transaction. Les détails sont dans "guide d'intégration".

disableWalletResponse

Object

Cet élément est la réponse d'une transaction. Les détails sont dans "guide d'intégration".


Code réponse

Un code réponse est retourné à la fin du process du batch.

Liste des codes réponse

Code de retour

Message de retour

Description

12

File structure is not correct

Le fichier n'est pas en adéquation avec la définition XSD

13

Bad sequence number

Le numéro de séquence n'est pas correct.


Exemples de fichier réponse

Fichier réponse en erreur


<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
 	<TransactionsFile xmlns:ns3="http://obj.ws.payline.com" xmlns:ns2="http://impl.ws.payline.com">
 		<Error>
 			<code>12</code>
			<message> File structure is not correct - org.xml.sax.SAXParseException: The element type "ns2:transactionID" must be terminated by the matching end-tag "</message>
 		</Error>
 	</TransactionsFile>

Fichier réponse avec résultat des transactions


<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
 <TransactionsFile merchant_ID="111111111" sequenceNumber="1234567890" xmlns:ns3="http://obj.ws.payline.com" xmlns:ns2="http://impl.ws.payline.com" xmlns:xsi="xsi" xmlns:mlns="mlns">
   <TransactionsList>
      <CapturesList>
         <Capture id="1">
            <ns2:doCaptureResponse>
               <ns2:result>
                  <ns3:code>02301</ns3:code>
                  <ns3:shortMessage>Invalid Transaction</ns3:shortMessage>
                  <ns3:longMessage>Transaction ID is invalid.</ns3:longMessage>
               </ns2:result>
               <ns2:transaction>
                  <ns3:id>PV404090921089</ns3:id>
                  <ns3:date>04/09/09 10:48</ns3:date>
                  <ns3:isDuplicated xsi:nil="true" mlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
                  <ns3:fraudResult xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
                  <ns3:explanation xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
                  <ns3:score xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
               </ns2:transaction>
               <ns2:reAuthorization>0</ns2:reAuthorization>
            </ns2:doCaptureResponse>
         </Capture>
         <Capture id="2">
            <ns2:doCaptureResponse>
               <ns2:result>
                  <ns3:code>02301</ns3:code>
                  <ns3:shortMessage>Invalid Transaction</ns3:shortMessage>
                  <ns3:longMessage>Transaction ID is invalid.</ns3:longMessage>
               </ns2:result>
               <ns2:transaction>
                  <ns3:id>PV404090921090</ns3:id>
                  <ns3:date>04/09/09 10:48</ns3:date>
                  <ns3:isDuplicated xsi:nil="true" mlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
                  <ns3:fraudResult xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
                  <ns3:explanation xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
                  <ns3:score xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
               </ns2:transaction>
               <ns2:reAuthorization>0</ns2:reAuthorization>
            </ns2:doCaptureResponse>
         </Capture>
      </CapturesList>
      <RefundsList>
         <Refund id="3">
            <ns2:doRefundResponse>
               <ns2:result>
                  <ns3:code>02301</ns3:code>
                  <ns3:shortMessage>Invalid Transaction</ns3:shortMessage>
                  <ns3:longMessage>Transaction ID is invalid.</ns3:longMessage>
               </ns2:result>
               <ns2:transaction>
                  <ns3:id>PV404090921091</ns3:id>
                  <ns3:date>04/09/09 10:48</ns3:date>
                  <ns3:isDuplicated xsi:nil="true" mlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
                  <ns3:fraudResult xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
                  <ns3:explanation xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
                  <ns3:score xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
               </ns2:transaction>
            </ns2:doRefundResponse>
         </Refund>
         <Refund id="4">
            <ns2:doRefundResponse>
               <ns2:result>
                  <ns3:code>02301</ns3:code>
                  <ns3:shortMessage>Invalid Transaction</ns3:shortMessage>
                  <ns3:longMessage>Transaction ID is invalid.</ns3:longMessage>
               </ns2:result>
               <ns2:transaction>
                  <ns3:id>PV404090921092</ns3:id>
                  <ns3:date>04/09/09 10:49</ns3:date>
                  <ns3:isDuplicated xsi:nil="true" mlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
                  <ns3:fraudResult xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
                  <ns3:explanation xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
                  <ns3:score xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
               </ns2:transaction>
            </ns2:doRefundResponse>
         </Refund>
      </RefundsList>
      <CreditsList>
         <Credit id="6">
            <ns2:doCreditResponse>
               <ns2:result>
                  <ns3:code>00000</ns3:code>
                  <ns3:shortMessage>Transaction approved</ns3:shortMessage>
                  <ns3:longMessage>Transaction approved</ns3:longMessage>
               </ns2:result>
               <ns2:transaction>
                  <ns3:id>90904104908092</ns3:id>
                  <ns3:date>04/09/09 10:49</ns3:date>
                  <ns3:isDuplicated>0</ns3:isDuplicated>
                  <ns3:isPossibleFraud>0</ns3:isPossibleFraud>
                  <ns3:fraudResult xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
                  <ns3:explanation xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
                  <ns3:score xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
               </ns2:transaction>
            </ns2:doCreditResponse>
         </Credit>
         <Credit id="5">
            <ns2:doCreditResponse>
               <ns2:result>
                  <ns3:code>00000</ns3:code>
                  <ns3:shortMessage>Transaction approved</ns3:shortMessage>
                  <ns3:longMessage>Transaction approved</ns3:longMessage>
               </ns2:result>
               <ns2:transaction>
                  <ns3:id>90904104908093</ns3:id>
                  <ns3:date>04/09/09 10:49</ns3:date>
                  <ns3:isDuplicated>0</ns3:isDuplicated>
                  <ns3:isPossibleFraud>0</ns3:isPossibleFraud>
                  <ns3:fraudResult xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
                  <ns3:explanation xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
                  <ns3:score xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
               </ns2:transaction>
            </ns2:doCreditResponse>
         </Credit>
      </CreditsList>
      <DebitsList>
         <Debit id="9">
            <ns2:doDebitResponse>
               <ns2:result>
                  <ns3:code>00000</ns3:code>
                  <ns3:shortMessage>Transaction approved</ns3:shortMessage>
                  <ns3:longMessage>Transaction approved</ns3:longMessage>
               </ns2:result>
               <ns2:transaction>
                  <ns3:id>90904104909094</ns3:id>
                  <ns3:date>04/09/09 10:49</ns3:date>
                  <ns3:isDuplicated>0</ns3:isDuplicated>
                  <ns3:isPossibleFraud>0</ns3:isPossibleFraud>
                  <ns3:fraudResult xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
                  <ns3:explanation xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
                  <ns3:score xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
               </ns2:transaction>
            </ns2:doDebitResponse>
         </Debit>
         <Debit id="10">
            <ns2:doDebitResponse>
               <ns2:result>
                  <ns3:code>00000</ns3:code>
                  <ns3:shortMessage>Transaction approved</ns3:shortMessage>
                  <ns3:longMessage>Transaction approved</ns3:longMessage>
               </ns2:result>
               <ns2:transaction>
                  <ns3:id>90904104909095</ns3:id>
                  <ns3:date>04/09/09 10:49</ns3:date>
                  <ns3:isDuplicated>0</ns3:isDuplicated>
                  <ns3:isPossibleFraud>0</ns3:isPossibleFraud>
                  <ns3:fraudResult xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
                  <ns3:explanation xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
                  <ns3:score xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
               </ns2:transaction>
            </ns2:doDebitResponse>
         </Debit>
      </DebitsList>
      <ResetsList>
         <Reset id="8">
            <ns2:doResetResponse>
               <ns2:result>
                  <ns3:code>02604</ns3:code>
                  <ns3:shortMessage>Transaction refused</ns3:shortMessage>
                  <ns3:longMessage>This transaction does not exist</ns3:longMessage>
               </ns2:result>
               <ns2:transaction>
                  <ns3:id>144792</ns3:id>
                  <ns3:isDuplicated xsi:nil="true" mlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
                  <ns3:fraudResult xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
                  <ns3:explanation xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
                  <ns3:score xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
               </ns2:transaction>
            </ns2:doResetResponse>
         </Reset>
         <Reset id="7">
            <ns2:doResetResponse>
               <ns2:result>
                  <ns3:code>02604</ns3:code>
                  <ns3:shortMessage>Transaction refused</ns3:shortMessage>
                  <ns3:longMessage>This transaction does not exist</ns3:longMessage>
               </ns2:result>
               <ns2:transaction>
                  <ns3:id>144793</ns3:id>
                  <ns3:isDuplicated xsi:nil="true" mlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
                  <ns3:fraudResult xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
                  <ns3:explanation xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
                  <ns3:score xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
               </ns2:transaction>
            </ns2:doResetResponse>
         </Reset>
      </ResetsList>
   </TransactionsList>
</TransactionsFile>



Annexe

Exemples de fichier


Batch interfaceFonctionObject

Fichier avec des remboursements


Fichier PaylineObject.xsd


 <?xml version="1.0" encoding="utf-8" ?>
 <xsd:schema elementFormDefault="qualified" targetNamespace="http://obj.ws.payline.com" xmlns:tns1="http://obj.ws.payline.com" xmlns:impl="http://impl.ws.payline.com" xmlns="http://www.w3.org/2001/XMLSchema" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
   <complexType name="result">
      <annotation>
         <documentation>This element contains information about the process</documentation>
      </annotation>
      <sequence>
         <element name="code" type="string"/>
         <element name="shortMessage" nillable="true" type="string"/>
         <element name="longMessage" nillable="true" type="string"/>
      </sequence>
   </complexType>
   <complexType name="order">
      <annotation>
         <documentation>This element contains information about the order</documentation>
      </annotation>
      <sequence>
         <element name="ref" type="string"/>
         <element name="origin" nillable="true" type="string"/>
         <element name="country" nillable="true" type="string"/>
         <element name="taxes" nillable="true" type="string"/>
         <element name="amount" type="string"/>
         <element name="currency" type="string"/>
         <element name="date" type="string"/>
         <element name="details" nillable="true" type="tns1:details"/>
      </sequence>
   </complexType>
   <complexType name="details">
      <annotation>
         <documentation>This element contains an array of orderDetail</documentation>
      </annotation>
      <sequence>
         <element minOccurs="0" maxOccurs="100" name="details" type="tns1:orderDetail"/>
      </sequence>
   </complexType>
   <complexType name="orderDetail">
      <annotation>
         <documentation>This element contains information about the order product</documentation>
      </annotation>
      <sequence>
         <element name="ref" nillable="true" type="string"/>
         <element name="price" nillable="true" type="string"/>
         <element name="quantity" nillable="true" type="string"/>
         <element name="comment" nillable="true" type="string"/>
      </sequence>
   </complexType>
   <complexType name="privateData">
      <annotation>
         <documentation>This element contains information about the merchant private data</documentation>
      </annotation>
      <sequence>
         <element name="key" type="string"/>
         <element name="value" type="string"/>
      </sequence>
   </complexType>
   <complexType name="transaction">
      <annotation>
         <documentation>This element contains information about the transaction</documentation>
      </annotation>
      <sequence>
         <element name="id" type="string"/>
         <element name="date" type="string"/>
         <element name="isDuplicated" nillable="true" type="string"/>
         <element name="isPossibleFraud" type="string"/>
         <element name="fraudResult" nillable="true" type="string"/>
         <element name="explanation" nillable="true" type="string"/>
         <element minOccurs="0" name="threeDSecure" nillable="true" type="string"/>
         <element name="score" nillable="true" type="string"/>
      </sequence>
   </complexType>
   <complexType name="payment">
      <annotation>
         <documentation>This element contains information about the payment</documentation>
      </annotation>
      <sequence>
         <element name="amount" type="string"/>
         <element name="currency" type="string"/>
         <element name="action" type="string"/>
         <element name="mode" type="string"/>
         <element name="contractNumber" type="string"/>
         <element name="differedActionDate" nillable="true" type="string"/>
      </sequence>
   </complexType>
   <complexType name="authorization">
      <annotation>
         <documentation>This element contains information about the authorization</documentation>
      </annotation>
      <sequence>
         <element name="number" type="string"/>
         <element name="date" type="string"/>
      </sequence>
   </complexType>
   <complexType name="card">
      <annotation>
         <documentation>This element contains information about the card</documentation>
      </annotation>
      <sequence>
         <element name="number" type="string"/>
         <element name="type" type="string"/>
         <element name="expirationDate" nillable="true" type="string"/>
         <element name="cvx" nillable="true" type="string"/>
         <element name="ownerBirthdayDate" nillable="true" type="string"/>
         <element name="password" nillable="true" type="string"/>
         <element name="cardPresent" nillable="true" type="string"/>
      </sequence>
   </complexType>
   <complexType name="buyer">
      <annotation>
         <documentation>This element contains information about the buyer</documentation>
      </annotation>
      <sequence>
         <element name="lastName" nillable="true" type="string"/>
         <element name="firstName" nillable="true" type="string"/>
         <element name="email" nillable="true" type="string"/>
         <element name="shippingAdress" nillable="true" type="tns1:address"/>
         <element name="accountCreateDate" nillable="true" type="string"/>
         <element name="accountAverageAmount" nillable="true" type="string"/>
         <element name="accountOrderCount" nillable="true" type="string"/>
         <element name="walletId" nillable="true" type="string"/>
         <element name="ip" nillable="true" type="string"/>
      </sequence>
   </complexType>
   <complexType name="address">
      <annotation>
         <documentation>This element contains information about the address</documentation>
      </annotation>
      <sequence>
         <element name="name" nillable="true" type="string"/>
         <element name="street1" nillable="true" type="string"/>
         <element name="street2" nillable="true" type="string"/>
         <element name="cityName" nillable="true" type="string"/>
         <element name="zipCode" nillable="true" type="string"/>
         <element name="country" nillable="true" type="string"/>
         <element name="phone" nillable="true" type="string"/>
      </sequence>
   </complexType>
   <complexType name="privateDataList">
      <annotation>
         <documentation>An array of private data</documentation>
      </annotation>
      <sequence>
         <element minOccurs="0" maxOccurs="100" name="privateData" type="tns1:privateData"/>
      </sequence>
   </complexType>
   <complexType name="authentication3DSecure">
      <annotation>
         <documentation>This element contains element for a 3DSecure transaction</documentation>
      </annotation>
      <sequence>
         <element name="md" nillable="true" type="string"/>
         <element name="pares" nillable="true" type="string"/>
         <element name="xid" nillable="true" type="string"/>
         <element name="eci" nillable="true" type="string"/>
         <element name="cavv" nillable="true" type="string"/>
         <element name="cavvAlgorithm" nillable="true" type="string"/>
         <element name="vadsResult" nillable="true" type="string"/>
      </sequence>
   </complexType>
   <complexType name="walletIdList">
      <annotation>
         <documentation>This element contains the list of selected card</documentation>
      </annotation>
      <sequence>
         <element minOccurs="1" maxOccurs="500" name="walletId" type="string"/>
      </sequence>
   </complexType>
</xsd:schema>

 

Fichier PaylineFunction.xsd


<?xml version="1.0" encoding="utf-8" ?>
<xsd:schema xmlns:tns1="http://obj.ws.payline.com" xmlns:impl="http://impl.ws.payline.com" xmlns="http://www.w3.org/2001/XMLSchema" xmlns:xsd="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://impl.ws.payline.com">
<import schemaLocation="PaylineObject.xsd" namespace="http://obj.ws.payline.com" />

<element name="doAuthorizationRequest">
    <complexType>
        <annotation>
            <documentation>
    This element is the request for the doAuthorization method
</documentation>
        </annotation>
        <sequence>
            <element name="payment" type="tns1:payment" />
            <element name="card" type="tns1:card" />
            <element name="order" type="tns1:order" />
            <element name="buyer" nillable="true" type="tns1:buyer" />
            <element name="privateDataList" nillable="true" type="tns1:privateDataList" />
            <element name="authentication3DSecure" nillable="true" type="tns1:authentication3DSecure" />
            <element name="linkedTransactionId" nillable="true" type="xsd:string"/>
        </sequence>
    </complexType>
</element>
<element name="doAuthorizationResponse">
    <complexType>
        <annotation>
            <documentation>
This element is the reponse from the
doAuthorization method
</documentation>
        </annotation>
        <sequence>
            <element name="result" type="tns1:result" />
            <element name="transaction" type="tns1:transaction" />
            <element name="authorization" type="tns1:authorization" />
            <element name="linkedTransactionId" nillable="true" type="xsd:string"/>
        </sequence>
    </complexType>
</element>
	<element name="disableWalletRequest">
		<complexType>
			<annotation>
				<documentation>
					This element is the request for the disableWallet
					method
				</documentation>
			</annotation>
			<sequence>
				<element name="contractNumber" type="string" />
				<element name="cardInd" type="string" />
				<element name="walletIdList" type="tns1:walletIdList" />
			</sequence>
		</complexType>
	</element>
	<element name="disableWalletResponse">
		<complexType>
			<annotation>
				<documentation>
					This element is the reponse from the disableWallet
					method
				</documentation>
			</annotation>
			<sequence>
				<element name="result" type="tns1:result" />
				<element name="walletIdList" type="tns1:walletIdList" />
			</sequence>
		</complexType>
	</element>
   <element name="doCaptureRequest">
		<complexType>
			<annotation>
				<documentation>
					This element is the request for the doCapture method
				</documentation>
			</annotation>
			<sequence>
				<element name="transactionID" type="string" />
				<element name="payment" type="tns1:payment" />
				<element name="privateDataList" nillable="true" type="tns1:privateDataList" />
				<element name="sequenceNumber" nillable="true" type="string" />
			</sequence>
		</complexType>
	</element>
   <element name="doCaptureResponse">
		<complexType>
			<annotation>
				<documentation>
					This element is the reponse from the doCapture
					method
				</documentation>
			</annotation>
			<sequence>
				<element name="result" type="tns1:result" />
				<element name="transaction" type="tns1:transaction" />
				<element name="reAuthorization" nillable="true" type="string" />
			</sequence>
		</complexType>
	</element>
	<element name="doDebitRequest">
		<complexType>
			<sequence>
				<element name="version" nillable="false" type="string"/>
				<element name="payment" type="tns1:payment" />
				<element name="card" type="tns1:card" />
				<element name="order" type="tns1:order" />
				<element name="buyer" nillable="true" type="tns1:buyer" />
				<element name="privateDataList" nillable="true" type="tns1:privateDataList" />
				<element name="authentication3DSecure" nillable="true" type="tns1:authentication3DSecure" />
				<element name="authorization" type="tns1:authorization" />
			</sequence>
		</complexType>
	</element>
	<element name="doDebitResponse">
		<complexType>
			<sequence>
				<element name="result" type="tns1:result" />
				<element name="transaction" type="tns1:transaction" />
			</sequence>
		</complexType>
	</element>
	<element name="doRefundRequest">
		<complexType>
			<annotation>
				<documentation>
					This element is the request for the doRefund method
				</documentation>
			</annotation>
			<sequence>
				<element name="transactionID" type="string" />
				<element name="payment" type="tns1:payment" />
				<element name="comment" nillable="true" type="string" />
				<element name="privateDataList" nillable="true" type="tns1:privateDataList" />
				<element name="sequenceNumber" nillable="true" type="string" />
			</sequence>
		</complexType>
	</element>
	<element name="doRefundResponse">
		<complexType>
			<annotation>
				<documentation>
					This element is the reponse from the doRefund method
				</documentation>
			</annotation>
			<sequence>
				<element name="result" type="tns1:result" />
				<element name="transaction" type="tns1:transaction" />
			</sequence>
		</complexType>
	</element>
	<element name="doResetRequest">
		<complexType>
			<annotation>
				<documentation>
					This element is the request for the doReset method
				</documentation>
			</annotation>
			<sequence>
				<element name="transactionID" type="string" />
				<element name="comment" nillable="true" type="string" />
			</sequence>
		</complexType>
	</element>
	<element name="doResetResponse">
		<complexType>
			<annotation>
				<documentation>
					This element is the reponse from the doReset method
				</documentation>
			</annotation>
			<sequence>
				<element name="result" type="tns1:result" />
				<element name="transaction" type="tns1:transaction" />
			</sequence>
		</complexType>
	</element>
	<element name="doResetRequest">
		<complexType>
			<annotation>
				<documentation>
					This element is the request for the doReset method
				</documentation>
			</annotation>
			<sequence>
				<element name="transactionID" type="string" />
				<element name="comment" nillable="true" type="string" />
			</sequence>
		</complexType>
	</element>
	<element name="doResetResponse">
		<complexType>
			<annotation>
				<documentation>
					This element is the reponse from the doReset method
				</documentation>
			</annotation>
			<sequence>
				<element name="result" type="tns1:result" />
				<element name="transaction" type="tns1:transaction" />
			</sequence>
		</complexType>
	</element>
	<element name="doScheduledWalletPaymentRequest">
		<complexType>
			<annotation>
				<documentation>
					This element is the request for the
					doScheduledWalletPayment method
				</documentation>
			</annotation>
			<sequence>
				<element name="payment" type="tns1:payment" />
				<element name="orderRef" nillable="true" type="string" />
				<element name="orderDate" nillable="true" type="string" />
				<element name="scheduledDate" type="string" />
				<element name="walletId" type="string" />
				<element name="cardInd" type="string" />
				<element name="order" nillable="true" type="tns1:order" />
				<element name="privateDataList" nillable="true" type="tns1:privateDataList" />
                <element name="linkedTransactionId" nillable="true" type="xsd:string"/>
			</sequence>
		</complexType>
	</element>
	<element name="doScheduledWalletPaymentResponse">
		<complexType>
			<annotation>
				<documentation>
					This element is the reponse from the
					doScheduledWalletPayment method
				</documentation>
			</annotation>
			<sequence>
				<element name="result" type="tns1:result" />
				<element name="paymentRecordId" type="string" />
                <element name="linkedTransactionId" nillable="true" type="xsd:string"/>
			</sequence>
		</complexType>
	</element>
 	<element name="disableWalletRequest">
		<complexType>
			<annotation>
				<documentation>
					This element is the request for the disableWallet
					method
				</documentation>
			</annotation>
			<sequence>
				<element name="contractNumber" type="string" />
				<element name="cardInd" type="string" />
				<element name="walletIdList" type="tns1:walletIdList" />
			</sequence>
		</complexType>
	</element>
	<element name="disableWalletResponse">
		<complexType>
			<annotation>
				<documentation>
					This element is the reponse from the disableWallet
					method
				</documentation>
			</annotation>
			<sequence>
				<element name="result" type="tns1:result" />
				<element name="walletIdList" type="tns1:walletIdList" />
			</sequence>
		</complexType>
	</element>
 </xsd:schema>




Fichier PaylineBatchInterface.xsd


<?xml version="1.0" encoding="utf-8" ?>
<xs:schema xmlns:ns0="http://impl.ws.payline.com" elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema">
  <xs:import schemaLocation="PaylineFunction.xsd" namespace="http://impl.ws.payline.com" />
  <xs:import schemaLocation="PaylineObject.xsd" namespace="http://obj.ws.payline.com" />
  <xs:element name="TransactionsFile">
    <xs:complexType>
      <xs:choice>
        <xs:element name="TransactionsList">
          <xs:annotation>
            <xs:documentation>List of transaction
				Tranactions are grouped by type</xs:documentation>
          </xs:annotation>
          <xs:complexType>
            <xs:sequence>
              <xs:element minOccurs="0" name="AuthorizationList">
                <xs:complexType>
                  <xs:sequence minOccurs="0" maxOccurs="unbounded">
                    <xs:element name="Authorization">
                      <xs:complexType>
                        <xs:choice>
                          <xs:element ref="ns0:doAuthorizationRequest" />
                          <xs:element ref="ns0:doAuthorizationResponse" />
                        </xs:choice>
                        <xs:attribute name="id" type="xs:string" use="required">
                          <xs:annotation>
                            <xs:documentation>Unique ID per file.
								It will be used to track transaction response</xs:documentation>
                          </xs:annotation>
                        </xs:attribute>
                      </xs:complexType>
                    </xs:element>
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
              <xs:element minOccurs="0" name="CapturesList">
                <xs:complexType>
                  <xs:sequence minOccurs="0" maxOccurs="unbounded">
                    <xs:element name="Capture">
                      <xs:complexType>
                        <xs:choice>
                          <xs:element ref="ns0:doCaptureRequest" />
                          <xs:element ref="ns0:doCaptureResponse" />
                        </xs:choice>
                        <xs:attribute name="id" type="xs:string" use="required">
                          <xs:annotation>
                            <xs:documentation>Unique ID per file.
								It will be used to track transaction response</xs:documentation>
                          </xs:annotation>
                        </xs:attribute>
                      </xs:complexType>
                    </xs:element>
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
              <xs:element minOccurs="0" name="RefundsList">
                <xs:complexType>
                  <xs:sequence minOccurs="0" maxOccurs="unbounded">
                    <xs:element name="Refund">
                      <xs:complexType>
                        <xs:choice>
                          <xs:element ref="ns0:doRefundRequest" />
                          <xs:element ref="ns0:doRefundResponse" />
                        </xs:choice>
                        <xs:attribute name="id" type="xs:string" use="required">
                          <xs:annotation>
                            <xs:documentation>Unique ID per file.
								It will be used to track transaction response</xs:documentation>
                          </xs:annotation>
                        </xs:attribute>
                      </xs:complexType>
                    </xs:element>
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
              <xs:element minOccurs="0" name="CreditsList">
                <xs:complexType>
                  <xs:sequence minOccurs="0" maxOccurs="unbounded">
                    <xs:element name="Credit">
                      <xs:complexType>
                        <xs:choice>
                          <xs:element ref="ns0:doCreditRequest" />
                          <xs:element ref="ns0:doCreditResponse" />
                        </xs:choice>
                        <xs:attribute name="id" type="xs:string" use="required">
                          <xs:annotation>
                            <xs:documentation>Unique ID per file.
								It will be used to track transaction response</xs:documentation>
                          </xs:annotation>
                        </xs:attribute>
                      </xs:complexType>
                    </xs:element>
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
              <xs:element minOccurs="0" name="DebitsList">
                <xs:complexType>
                  <xs:sequence minOccurs="0" maxOccurs="unbounded">
                    <xs:element name="Debit">
                      <xs:complexType>
                        <xs:choice>
                          <xs:element ref="ns0:doDebitRequest" />
                          <xs:element ref="ns0:doDebitResponse" />
                        </xs:choice>
                        <xs:attribute name="id" type="xs:string" use="required">
                          <xs:annotation>
                            <xs:documentation>Unique ID per file.
								It will be used to track transaction response</xs:documentation>
                          </xs:annotation>
                        </xs:attribute>
                      </xs:complexType>
                    </xs:element>
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
              <xs:element minOccurs="0" name="ResetsList">
                <xs:complexType>
                  <xs:sequence minOccurs="0" maxOccurs="unbounded">
                    <xs:element name="Reset">
                      <xs:complexType>
                        <xs:choice>
                          <xs:element ref="ns0:doResetRequest" />
                          <xs:element ref="ns0:doResetResponse" />
                        </xs:choice>
                        <xs:attribute name="id" type="xs:string" use="required">
                          <xs:annotation>
                            <xs:documentation>Unique ID per file.
								It will be used to track transaction response</xs:documentation>
                          </xs:annotation>
                        </xs:attribute>
                      </xs:complexType>
                    </xs:element>
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
              <xs:element minOccurs="0" name="DisableWalletsList">
                <xs:complexType>
                  <xs:sequence minOccurs="0" maxOccurs="unbounded">
                    <xs:element name="DisableWallet">
                      <xs:complexType>
                        <xs:choice>
                          <xs:element ref="ns0:disableWalletRequest" />
                          <xs:element ref="ns0:disableWalletResponse" />
                        </xs:choice>
                        <xs:attribute name="id" type="xs:string" use="required">
                          <xs:annotation>
                            <xs:documentation>Unique ID per file.
								It will be used to track transaction response</xs:documentation>
                          </xs:annotation>
                        </xs:attribute>
                      </xs:complexType>
                    </xs:element>
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
              <xs:element minOccurs="0" name="ScheduleWalletPaymentsList">
                <xs:complexType>
                  <xs:sequence minOccurs="0" maxOccurs="unbounded">
                    <xs:element name="ScheduleWallet">
                      <xs:complexType>
                        <xs:choice>
                          <xs:element ref="ns0:doScheduledWalletPaymentRequest" />
                          <xs:element ref="ns0:doScheduledWalletPaymentResponse" />
                        </xs:choice>
                        <xs:attribute name="id" type="xs:string" use="required">
                          <xs:annotation>
                            <xs:documentation>Unique ID per file.
								It will be used to track transaction response</xs:documentation>
                          </xs:annotation>
                        </xs:attribute>
                      </xs:complexType>
                    </xs:element>
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
              <xs:element minOccurs="0" name="DisablePaymentRecordsList">
                <xs:complexType>
                  <xs:sequence minOccurs="0" maxOccurs="unbounded">
                    <xs:element name="DisablePaymentRecord">
                      <xs:complexType>
                        <xs:choice>
                          <xs:element ref="ns0:disablePaymentRecordRequest" />
                          <xs:element ref="ns0:disablePaymentRecordResponse" />
                        </xs:choice>
                        <xs:attribute name="id" type="xs:string" use="required">
                          <xs:annotation>
                            <xs:documentation>Unique ID per file.
								It will be used to track transaction response</xs:documentation>
                          </xs:annotation>
                        </xs:attribute>
                      </xs:complexType>
                    </xs:element>
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
              <xs:element minOccurs="0" name="CreateWalletList">
                <xs:complexType>
                  <xs:sequence minOccurs="0" maxOccurs="unbounded">
                    <xs:element name="CreateWallet">
                      <xs:complexType>
                        <xs:choice>
                          <xs:element ref="ns0:createWalletRequest" />
                          <xs:element ref="ns0:createWalletResponse" />
                        </xs:choice>
                        <xs:attribute name="id" type="xs:string" use="required">
                          <xs:annotation>
                            <xs:documentation>Unique ID per file.
								It will be used to track transaction response</xs:documentation>
                          </xs:annotation>
                        </xs:attribute>
                      </xs:complexType>
                    </xs:element>
                  </xs:sequence>
                </xs:complexType>
              </xs:element>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="Error">
          <xs:annotation>
            <xs:documentation>Error element
				If the input file is rejected, the reason is set in this element</xs:documentation>
          </xs:annotation>
          <xs:complexType>
            <xs:sequence>
              <xs:element name="code" type="xs:string">
                <xs:annotation>
                  <xs:documentation>Error code</xs:documentation>
                </xs:annotation>
              </xs:element>
              <xs:element name="message" type="xs:string">
                <xs:annotation>
                  <xs:documentation>Human readable error message</xs:documentation>
                </xs:annotation>
              </xs:element>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
      </xs:choice>
      <xs:attribute name="sequenceNumber" type="xs:string">
        <xs:annotation>
          <xs:documentation>File sequence Number</xs:documentation>
        </xs:annotation>
      </xs:attribute>
      <xs:attribute name="merchant_ID" type="xs:long">
        <xs:annotation>
          <xs:documentation>Unique Payline merchant_ID</xs:documentation>
        </xs:annotation>
      </xs:attribute>
    </xs:complexType>
  </xs:element>
</xs:schema>
 




Fichier FileNamePrefix.XML


<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<TransactionsFile merchant_ID="12345678912345" sequenceNumber="040718104237" xmlns:ns3="http://obj.ws.payline.com" xmlns:ns2="http://impl.ws.payline.com">
    <TransactionsList>
        <RefundsList>
            <Refund id="1">
                <ns2:doRefundRequest>
                    <ns2:transactionID>18079144815129</ns2:transactionID>
                    <ns2:payment>
                        <ns3:amount>7400</ns3:amount>
                        <ns3:currency>978</ns3:currency>
                        <ns3:action>421</ns3:action>
                        <ns3:mode>CPT</ns3:mode>
                        <ns3:contractNumber>1234567</ns3:contractNumber>
                        <ns3:differedActionDate></ns3:differedActionDate>
                    </ns2:payment>
                    <ns2:comment xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
                    <ns2:privateDataList>
                        <ns3:privateData>
                        </ns3:privateData>
                    </ns2:privateDataList>
                    <ns2:sequenceNumber>1</ns2:sequenceNumber>
                </ns2:doRefundRequest>
            </Refund>
            <Refund id="2">
                <ns2:doRefundRequest>
                    <ns2:transactionID>18079162106311</ns2:transactionID>
                    <ns2:payment>
                        <ns3:amount>3700</ns3:amount>
                        <ns3:currency>978</ns3:currency>
                        <ns3:action>421</ns3:action>
                        <ns3:mode>CPT</ns3:mode>
                        <ns3:contractNumber>1234567</ns3:contractNumber>
                        <ns3:differedActionDate></ns3:differedActionDate>
                    </ns2:payment>
                    <ns2:comment xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
                    <ns2:privateDataList>
                        <ns3:privateData>
                        </ns3:privateData>
                    </ns2:privateDataList>
                    <ns2:sequenceNumber>2</ns2:sequenceNumber>
                </ns2:doRefundRequest>
            </Refund>
            <Refund id="3">
                <ns2:doRefundRequest>
                    <ns2:transactionID>18085093909157</ns2:transactionID>
                    <ns2:payment>
                        <ns3:amount>7400</ns3:amount>
                        <ns3:currency>978</ns3:currency>
                        <ns3:action>421</ns3:action>
                        <ns3:mode>CPT</ns3:mode>
                        <ns3:contractNumber>1234567</ns3:contractNumber>
                        <ns3:differedActionDate></ns3:differedActionDate>
                    </ns2:payment>
                    <ns2:comment xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
                    <ns2:privateDataList>
                        <ns3:privateData>
                        </ns3:privateData>
                    </ns2:privateDataList>
                    <ns2:sequenceNumber>3</ns2:sequenceNumber>
                </ns2:doRefundRequest>
            </Refund>
            <Refund id="4">
                <ns2:doRefundRequest>
                    <ns2:transactionID>18085221751104</ns2:transactionID>
                    <ns2:payment>
                        <ns3:amount>3700</ns3:amount>
                        <ns3:currency>978</ns3:currency>
                        <ns3:action>421</ns3:action>
                        <ns3:mode>CPT</ns3:mode>
                        <ns3:contractNumber>1234567</ns3:contractNumber>
                        <ns3:differedActionDate></ns3:differedActionDate>
                    </ns2:payment>
                    <ns2:comment xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
                    <ns2:privateDataList>
                        <ns3:privateData>
                        </ns3:privateData>
                    </ns2:privateDataList>
                    <ns2:sequenceNumber>4</ns2:sequenceNumber>
                </ns2:doRefundRequest>
            </Refund>
        </RefundsList>
   </TransactionsList>
</TransactionsFile>



Cas d'usage

Effectuer des transactions doCredit via le batch interface avec la tokenization (sans PAN en clair dans  votre fichier)

Fichier d'entrée à envoyer à Payline : 

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<TransactionsFile xmlns:ns2="http://impl.ws.payline.com" xmlns:ns3="http://obj.ws.payline.com" sequenceNumber="93167" merchant_ID="61220772865154">
  <TransactionsList>
    <CreditsList>
      <Credit id="1">
        <ns2:doCreditRequest>
          <ns2:version>18</ns2:version>
          <ns2:payment>
            <ns3:amount>1000</ns3:amount>
            <ns3:currency>978</ns3:currency>
            <ns3:action>422</ns3:action>
            <ns3:mode>CPT</ns3:mode>
            <ns3:contractNumber>CB</ns3:contractNumber>
            <ns3:differedActionDate xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/>
            <ns3:softDescriptor>My soft descriptor</ns3:softDescriptor>
            <ns3:cardBrand xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/>
          </ns2:payment>
          <ns2:card>
            <ns3:number xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/>
            <ns3:type>CB</ns3:type>
            <ns3:expirationDate>1221</ns3:expirationDate>
            <ns3:cvx xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/>
            <ns3:ownerBirthdayDate xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/>
            <ns3:password xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/>
            <ns3:cardPresent xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/>
            <ns3:token>4897832FxUmvS1234</ns3:token>
          </ns2:card>
          <ns2:comment xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/>
          <ns2:order>
            <ns3:ref>myreference1</ns3:ref>
            <ns3:amount>1000</ns3:amount>
            <ns3:origin xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/>
            <ns3:country xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/>
            <ns3:taxes xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/>
            <ns3:details xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/>
          </ns2:order>
          <ns2:buyer xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/>
          <ns2:privateDataList xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:nil="true"/>
        </ns2:doCreditRequest>
      </Credit>
    </CreditsList>
  </TransactionsList>
</TransactionsFile>



Fichier de sortie renvoyé par Payline :


<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<TransactionsFile sequenceNumber="1" merchant_ID="12346789101112" xmlns:ns2="http://impl.ws.payline.com" xmlns:ns3="http://obj.ws.payline.com">
    <TransactionsList>
        <CreditsList>
            <Credit id="1">
                <ns2:doCreditResponse>
                    <ns2:result>
                        <ns3:code>00000</ns3:code>
                        <ns3:shortMessage>ACCEPTED</ns3:shortMessage>
                        <ns3:longMessage>Transaction approved</ns3:longMessage>
                    </ns2:result>
                    <ns2:transaction>
                        <ns3:id>18144172911215</ns3:id>
                        <ns3:date>24/05/16 17:29</ns3:date>
                        <ns3:isDuplicated>0</ns3:isDuplicated>
                        <ns3:isPossibleFraud>0</ns3:isPossibleFraud>
                        <ns3:fraudResult xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
                        <ns3:fraudResultDetails xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
                        <ns3:explanation xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
                        <ns3:threeDSecure xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
                        <ns3:softDescriptor xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
                        <ns3:score xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
                        <ns3:externalWalletType xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
                        <ns3:externalWalletContractNumber xsi:nil="true" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"/>
                    </ns2:transaction>
                </ns2:doCreditResponse>
            </Credit>
        </CreditsList>
    </TransactionsList>
</TransactionsFile>




Pages associées