Pas-à-pas
PRÉ-REQUIS : Obtenir vos identifiants API (5 à 10 mins)
- Déjà client ? Vous avez dû recevoir un email "Vos identifiants API - Débutez votre intégration SlimPay"
- Pas encore client ? Vous pouvez tester l'intégration Slimpay sur votre site en générant des identifiants API aléatoires ici.
Important
Dans ce guide vous ne trouverez pas les bases de l'authentification API ni le format des appels et des réponses. Veuillez consulter ces sections pour en savoir plus sur ces concepts.
Tous les exemples de code dans nos guides sont écrits en PHP et sont basés sur notre client HAPI, développé par SlimPay pour réduire la complexité de l’intégration avec notre API. Veuillez vous référer à notre page client HTTP pour plus de détails sur l'utilisation de ces bibliothèques.
- Téléchargez notre client PHP officiel ici et décompressez l'archive (sans rajouter de dossier supplémentaire) (5 mins)
- Placer le dossier extrait sur votre serveur HTTP, à la racine de votre site (5 mins)
- Créez une nouvelle page PHP qui s'affichera lorsque votre client effectuera le paiement (5 mins) Exemple : Votre page possède un bouton "Signer" or "Payer". Elle vous redirige vers cette nouvelle page "slimpay.php"
- Insérez le morceau de code suivant dans cette nouvelle page (10 mins)
N'oubliez pas de mettre à jour le code ci-dessous avec vos identifiants// Instructions: https://github.com/SlimPay/hapiclient-php require_once 'vendor/autoload.php'; use \HapiClient\Http; use \HapiClient\Hal; // The HAPI Client $hapiClient = new Http\HapiClient( 'https://api.preprod.slimpay.com', '/', 'https://api.slimpay.net/alps/v1', new Http\Auth\Oauth2BasicAuthentication( '/oauth/token', 'yourAppName', 'yourAppSecret' ) ); // The Relations Namespace $relNs = 'https://api.slimpay.net/alps#'; // Follow create-orders $rel = new Hal\CustomRel($relNs . 'create-orders'); $follow = new Http\Follow($rel, 'POST', null, new Http\JsonBody( [ 'started' => true, 'creditor' => [ 'reference' => 'yourCreditorReference' ], 'subscriber' => [ 'reference' => 'theSubscriberReference' ], 'items' => [ [ 'type' => 'signMandate', 'autoGenReference' => true, 'mandate' => [ 'signatory' => [ 'billingAddress' => [ 'street1' => '27 rue des fleurs', 'street2' => 'Bat 2', 'city' => 'Paris', 'postalCode' => '75008', 'country' => 'FR' ], 'honorificPrefix' => 'Mr', 'familyName' => 'Doe', 'givenName' => 'John', 'email' => 'change.me@slimpay.com', 'telephone' => '+33612345678' ], 'standard' => 'SEPA' ] ] ] ] )); try { $res = $hapiClient->sendFollow($follow); $url = $res->getLink('https://api.slimpay.net/alps#user-approval')->getHref(); header('Location:' . $url); exit; } catch (\HapiClient\Exception\HttpException $e) { $log = 'Error - ' . $e->getStatusCode() . ' ' . $e->getReasonPhrase() . ' - ' . $e->getResponseBody(); echo $log; }
// Instructions: https://github.com/SlimPay/hapiclient-php require_once 'vendor/autoload.php'; use \HapiClient\Http; use \HapiClient\Hal; // The HAPI Client $hapiClient = new Http\HapiClient( 'https://api.preprod.slimpay.com', '/', 'https://api.slimpay.net/alps/v1', new Http\Auth\Oauth2BasicAuthentication( '/oauth/token', 'yourAppName', 'yourAppSecret' ) ); // The Relations Namespace $relNs = 'https://api.slimpay.net/alps#'; // Follow create-orders $rel = new Hal\CustomRel($relNs . 'create-orders'); $follow = new Http\Follow($rel, 'POST', null, new Http\JsonBody( [ 'started' => true, 'creditor' => [ 'reference' => 'yourCreditorReference' ], 'subscriber' => [ 'reference' => 'testphpclient01' ], 'items' => [ [ 'type' => 'signMandate', 'autoGenReference' => true, 'mandate' => [ 'signatory' => [ 'billingAddress' => [ 'street1' => '27 rue des fleurs', 'street2' => 'Bat 2', 'city' => 'Paris', 'postalCode' => '75008', 'country' => 'FR' ], 'honorificPrefix' => 'Mr', 'familyName' => 'Doe', 'givenName' => 'John', 'email' => 'change.me@slimpay.com', 'telephone' => '+33612345678' ], 'standard' => 'SEPA' ], [ 'type' => 'payment', 'action' => 'create', 'payin' =>[ 'amount' => '29.99', 'scheme' => null, 'reference' => null, 'label' => 'First payment for your subscription', 'executionDate' => null ] ] ] ] ] )); try { $res = $hapiClient->sendFollow($follow); $url = $res->getLink('https://api.slimpay.net/alps#user-approval')->getHref(); header('Location:' . $url); exit; } catch (\HapiClient\Exception\HttpException $e) { $log = 'Error - ' . $e->getStatusCode() . ' ' . $e->getReasonPhrase() . ' - ' . $e->getResponseBody(); echo $log; }
- Testez le résultat en effectuant un parcours sur votre site (5 mins)
Prochaine étape
Maintenant que vous avez intégré SlimPay, vous devez remplacer les valeurs par défaut par vos valeurs (exemple : prénom, nom, adresse du client...).
Exemple :
'honorificPrefix' => $title,
'familyName' => $family_name,
'givenName' => $given_name,
'email' => $client_email,
Assurez-vous que les attributs suivants sont toujours remplis afin que Slimpay puisse signer un mandat (et débiter vos clients) :
'Creditor {reference}'
'Subscriber {reference}'
'Street1'
'City'
'PostalCode'
'Country'
'HonoricPrefix'
'FamilyName'
'GivenName'