Arborescence des pages

Comparaison des versions

Légende

  • Ces lignes ont été ajoutées. Ce mot a été ajouté.
  • Ces lignes ont été supprimées. Ce mot a été supprimé.
  • La mise en forme a été modifiée.
Commentaire: mineur

Image Removed

Contenu

Sommaire
maxLevel2
stylenone
excerpt

Image Added 

hiddentrue

Historique des révisions

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

DateActeurDescription


Présentation

Un kit d'intégration est une librairie logicielle (sdk) qui facilite le développement informatique que vous allez devoir réaliser pour intégrer la solution de paiement Payline dans votre site.

(avertissement) Vous devez consulter la documentation Comment démarrer et l'intégration Paiement Page Web pour développer votre Paiement Page Web.


Le SKD

Installation

Le kit

PHP est composé des éléments suivants :

  • une notice d’installation du kit SDK de développement .;
  • un descripteur composer.json pour le téléchargement via Composer de la librairie PHP qui permet d'utiliser les fonctions de l'API Payline ;une librairie de fonction qui permet d’utiliser les fonctions de l’API Payline
  • un exemple d’application web utilisant le SDK.

En décompressant le fichier zip, on trouve trois répertoires :

Le répertoire 'exemples'

Le répertoire « exemple » correspond à l'application web implémentant l’ensemble des fonctionnalités Payline disponible via la librairie PHP. Chaque fonctionnalité se décline sous la forme de deux fichiers : 

  • un fichier <nom_fonction>Form.php contenant le formulaire de présentation.
  • un fichier <nom_fonction>.php qui récupère les données transmises par l’utilisateur via le formulaire. Le code PHP réalise l’appel au Web Service souhaité.
 
Par exemple, la fonctionnalité « doWebPayment » qui permet la réalisation d’un paiement Web via le kit, se traduit par la présence des deux fichiers suivant :
  • doWebPaymentForm.php : Ce fichier simule la page récapitulatif de la commande de votre client. Elle constitue l’étape 0 dans le processus de paiement web. Vous pouvez modifier les valeurs des champs du formulaire : Amount, Currency et OrderRef pour réaliser des paiements tests.




Installation

Exécuter les étapes suivantes :

1. Télécharger le SDK de l'API Payline :


2. Décompressez l'archive à la racine de votre serveur web.


Si vous n'utilisez pas encore Composer, téléchargez l'exécutable composer.phar via
https://getcomposer.org/download/
Déposez l'exécutable composer.phar au même niveau que le fichier composer.json inclu dans l'archive payline-php-sdk.

3. Via une invite de commande :
composer require monext/payline-sdk

Composer créée le répertoire vendor et y dépose la dernière version du SDK PHP Payline, ainsi que les librairies liées.

En montant le fichier avec composer on trouve trois répertoires :

doWebPayment.php : Ce fichier contient le code PHP qui récupère les informations transmises par le formulaire et utilise la librairie pour initialiser une demande de paiement web.


Le répertoire 'lib'


Il regroupe les classes qui décrivent les demandes, réponses et objets de l’API SOAP Payline.
  • paylineSDK.php : Ce fichier contient la classe principale qui permet la création de messages SOAP ainsi que les autres classes spécifiques qui réalisent gèrent les demandes et réponses métier. Par exemple : doWebPayment, getWebPaymentDetails.
  • lib_debug.php : C’est la librairie de
débug
  • debug qui permet l’affichage sous forme de tableau imbriqué du message retour de vos demandes à l’API SOAP Payline.
  • v4.XX.wsdl : Le descripteur des web services Payline, à partir duquel les requêtes/réponses sont construites. Ce fichier est remplacé à chaque nouvelle release de Payline, la compatibilité ascendante est assurée.

  • CONFIG.php : Ce fichier introduit dans la version
v4
  • V4.64.
39
  • 1 remplace le répertoire configuration et son contenu. Il contient les paramètres de connexion à Payline, ainsi que les paramètres (contrats, version, devise,...) affichés par défaut dans les pages d'exemple.
    Le
fichier CONFIG
  • fichier CONFIG.php peut être édité directement, ou via le formulaire
inclu
  • inclut dans la rubrique Home.

Le répertoire 'logs'

Au sein de l’archive, ce répertoire est vide. Il correspond au répertoire par défaut d’écriture des traces.

Un fichier <date>.log (<date> étant au format aaaa-mm-jj) est créé et/ou alimenté lors de chaque appel à une fonction de la librairie.
La fonction d’ajout d’une ligne dans ce fichier se nomme writeTrace. C’est une fonction publique de la classe paylineSDK, qui peut donc être réutilisée.


Extrait
hiddentrue

Le répertoire 'exemples'

Le répertoire « exemple » correspond à l'application web implémentant l’ensemble des fonctionnalités Payline disponible via la librairie PHP. Chaque fonctionnalité se décline sous la forme de deux fichiers : 

  • un fichier <nom_fonction>Form.php contenant le formulaire de présentation.
  • un fichier <nom_fonction>.php qui récupère les données transmises par l’utilisateur via le formulaire. Le code PHP réalise l’appel au Web Service souhaité.


 
Par exemple, la fonctionnalité « doWebPayment » qui permet la réalisation d’un paiement Web via le SDK, se traduit par la présence des deux fichiers suivant :

  • doWebPaymentForm.php : Ce fichier simule la page récapitulatif de la commande de votre client. Elle constitue l’étape 0 dans le processus de paiement web. Vous pouvez modifier les valeurs des champs du formulaire : Amount, Currency et OrderRef pour réaliser des paiements tests.
  • doWebPayment.php : Ce fichier contient le code PHP qui récupère les informations transmises par le formulaire et utilise la librairie pour initialiser une demande de paiement web.



Info

Télécharger le kit d'intégration :

View file
namepayline_PHP_v4.44.1.zip
height150

Fonctions


L’ensemble des fonctions Payline sont couvertes par le kit SDK PHP.
La classe paylineSDK propose une fonction correspondant à chaque web service, portant le même nom que ce dernier (doWebPayment, doAuthorization, …).

Appel

Le passage de paramètre entre votre boutique et ces fonctions se fait via un tableau associatif. Examinez les scripts d’exemple contenus dans le kit SDK pour comprendre ce mécanisme.

Retour

La réponse d’un web service Payline est également stockée par le kit SDK dans un tableau associatif. Examinez les scripts d’exemple contenus dans le kit SDK pour comprendre la lecture d’une réponse.

Cas particulier 

Si lors de l’appel à une fonction du kit SDK une exception se produit (par exemple en raison d’une absence de communication avec Payline du fait du mauvais paramétrage de l’authentification ou de proxy), une réponse contenant le code XXXXX ainsi que le libellé de l’exception est renvoyée.
Cette réponse n’est pas retournée par Payline, mais par le kit SDK PHP.

Configuration du

kit

SDK

Le fonctionnement du

kit

SDK nécessite l’activation des extensions PHP suivantes sur votre serveur : php_curl, php_http, php_openssl, php_soap

 

Une fois le
kit
SDK décompressé sur votre serveur, vous devez renseigner les paramètres dans le formulaire "configuration" de la rubrique "Home", ou directement dans le fichier CONFIG.php situé sous le répertoire lib.

MERCHANT_ID : l’identifiant de votre compte commerçant
ACCESS_KEY : la clé d’accès associé à votre compte commerçant
ACCESS_KEY_REF : la référence web2token associée à votre clé d’accès
PROXY_HOST : l’URL de votre proxy Internet
PROXY_PORT : le port de communication de votre proxy Internet
PROXY_LOGIN : l’identifiant utilisateur requis par votre proxy Internet
PROXY_PASSWORD : le mot de passe utilisateur requis par de votre proxy Internet
ENVIRONMENT : indicateur qui permet déterminer l'environnement Payline vers lequel les requêtes sont adressées. Deux valeurs sont utilisables par les commerçants :
HOMO (environnement d'homologation, pour réaliser les tests d'intégration) et PROD (environnement de production).
WS_VERSION : version applicative des web services Payline.
PAYMENT_CURRENCY : le code ISO de la devise à utiliser par défaut pour le paiement
ORDER_CURRENCY : le code ISO de la devise à utiliser par défaut pour la commande
SECURITY_MODE : le code du mode de sécurité à utiliser par défaut
LANGUAGE_CODE : le code ISO de la langue à faire afficher par défaut
PAYMENT_ACTION : le code de la méthode de paiement à utiliser par défaut
PAYMENT_MODE : le mode de paiement à utiliser par défaut
CANCEL_URL :
l’URL
 l’URL d’annulation utilisée lorsque
le paiement a été refusé ou que
votre client a annulé le paiement
NOTIFICATION_URL : l’URL de notification utilisée lorsque Payline vous notifie d’un paiement effectué
RETURN_URL :
l’URL
 l’URL de retour utilisée lorsque le paiement a été accepté ou refusé
CUSTOM_PAYMENT_TEMPLATE_URL : l’URL du template dynamique à appliquer aux pages web de paiement
CUSTOM_PAYMENT_PAGE_CODE : le code de personnalisation des pages de paiement Payline à utiliser par défaut.
CONTRACT_NUMBER : le numéro de contrat qui identifie votre point de vente et votre moyen de paiement par défaut,
CONTRACT_NUMBER_LIST : la liste des numéros de contrat à faire afficher si vous en possédez plusieurs.
Sinon votre
Votre numéro de contrat unique. La balise Payline SelectedContractList du doWebPayment.
Pour une version supérrieure ou égale à 4 du web service, cette balise est obligatoire. 
Exemple : $array['contracts'] = array('1234567','7777777');
SECOND_CONTRACT_NUMBER_LIST : la liste des numéros de contrat à faire afficher lorsque la première tentative de paiement est un échec.
 



Compatibilité du

kit

SDK

Le

kit

SDK PHP est

testé

compatible avec l’environnement suivant :

  • le système Windows 7 Professionnel
  • le serveur Apache 2.2.22
  • la version
PHP 5.3.13


Intégration

Veuillez consulter la documentation Comment démarrer et l'intégration Paiement Page Web pour développer votre Paiement Page Web.


(info)  Lors de l'intégration, veuillez bien à nommer les balises comme indiqué dans le kit. Elles peuvent être différentes de l' API Payline :

Pour la balise <authentication3DSecure>, il faut appeler <3DSecure>

  • Le commerçant doit valoriser le tableau en remplaçant ['authentication3DSecure'] par ['3DSecure']

Pour la balise <selectedContractList>  s'appelle <contracts>

  • Le commerçant doit valoriser le tableau en remplaçant [' selectedContractList '] par ['contracts']


Exemple d'utilisation de l'initialisation de paiement en mode page web :

Bloc de code
languagephp
themeEclipse
titledoWebPayment
linenumberstrue
collapsetrue
public function doWebPayment(array $array)
    {
        $this->formatRequest($array);
        $WSRequest = array(
            'payment'                    => $this->payment($array['payment']),
            'returnURL'                  => $array['returnURL'],
            'cancelURL'                  => $array['cancelURL'],
            'order'                      => $this->order($array['order']),
            'notificationURL'            => $array['notificationURL'],
            'customPaymentTemplateURL'   => $array['customPaymentTemplateURL'],
            'selectedContractList'       => $array['contracts'],
            'secondSelectedContractList' => $array['secondContracts'],
            'privateDataList'            => $this->privateData,
            'languageCode'               => $array['languageCode'],
            'customPaymentPageCode'      => $array['customPaymentPageCode'],
            'buyer'                      => $this->buyer($array['buyer'], $array['shippingAddress'], $array['billingAddress'], $array['merchantAuthentication']),
            'owner'                      => $this->owner($array['owner'], $array['ownerAddress']),
            'securityMode'               => $array['securityMode'],
            'contractNumberWalletList'   => $array['walletContracts'],
            'merchantName'               => $array['merchantName'],
            'subMerchant'                => $this->subMerchant($array['subMerchant']),
            'miscData'                   => $array['miscData'],
            'asynchronousRetryTimeout'   => $array['asynchronousRetryTimeout'],
            'threeDSInfo'                => $this->threeDSInfo($array['threeDSInfo'], $array['browser'], $array['sdk'])
        );


Exemple d'utilisation d'une demande d'autorisation de paiement en mode direct

Bloc de code
languagephp
themeEclipse
titledoAuthorization
linenumberstrue
collapsetrue
public function doAuthorization(array $array)
    {
        $this->formatRequest($array);
        $WSRequest = array(
            'payment'                   => $this->payment($array['payment']),
            'card'                      => $this->card($array['card']),
            'order'                     => $this->order($array['order']),
            'buyer'                     => $this->buyer($array['buyer'], $array['shippingAddress'], $array['billingAddress'], $array['merchantAuthentication']),
            'owner'                     => $this->owner($array['owner'], $array['ownerAddress']),
            'privateDataList'           => $this->privateData,
            'authentication3DSecure'    => $this->authentication3DSecure($array['3DSecure']),
            'bankAccountData'           => $this->bankAccountData($array['bankAccountData']),
            'subMerchant'               => $this->subMerchant($array['subMerchant']),
            'asynchronousRetryTimeout'  => $array['asynchronousRetryTimeout']
        );





Pages associées

Contenu par étiquette
showLabelsfalse
max10
spacescom.atlassian.confluence.content.render.xhtml.model.resource.identifiers.SpaceResourceIdentifier@9a3
showSpacefalse
sorttitle
typepage
cqllabel = "php" and label = "integration" and label = "fr" and type = "page" and space = "DT"
labelsbancontact belgique choixdelamarque