2017 © Pedro Peláez
 

library sips-payment-sdk

This library simplifies the use of Sips 2.0, the e-payments API.

image

worldline/sips-payment-sdk

This library simplifies the use of Sips 2.0, the e-payments API.

  • Friday, April 20, 2018
  • by nicolasros
  • Repository
  • 34 Watchers
  • 0 Stars
  • 198 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 1 Forks
  • 1 Open issues
  • 4 Versions
  • 539 % Grown

The README.md

:warning: As of 30/06/2021 the sips-atos.com urls will stop working. they have been replaced by sips-services.com urls. Make sure to update to version 1.0.7 or higher to avoid problems., (*1)

Sips Library

This package provides a PHP implementation for Sips, the Worldline e-payments gateway., (*2)

:warning: This library was written for Sips 2.0 and is not comptible with Sips 1.0!, (*3)

Installation

The recommended way to install this Sips Library is through Composer., (*4)

Run the composer commmand to install the latest stable version of the package:, (*5)

composer require worldline/sips-payment-sdk

After installing the package, you need to require Composer's autoloader:, (*6)

require 'vendor/autoload.php';

Usage

:bulb: Currently the library only supports Sips in paypage mode., (*7)

Initialization

First, create a client for the desired environment using your merchant ID, key version & secret key., (*8)

//these parameters should not be hardcoded.
$sipsClient = new SipsClient(
    new SipsEnvironment("SIMU"), 
    "002001000000001", 
    "002001000000001_KEY1",
    1
    );

Next, set up the request to initialize a session on the Sips server., (*9)

$paypageRequest = new PaypageRequest();
$paypageRequest->setAmount(200);
$paypageRequest->setCurrencyCode("EUR");
$paypageRequest->setNormalReturnUrl('http://lib.wl.be//return.php');
$paypageRequest->setOrderChannel("INTERNET");

Add a unique reference for the transaction., (*10)

$paypageRequest->setTransactionReference("myUniqueIdentifier");

:bulb: If no reference is provided by you, the plugin will generate one., (*11)

And finaly submit the request to the server to initialize the transaction., (*12)

$initializationResponse = $sipsClient->initialize($paypageRequest);

The initializationResponse you'll receive from the server contains all information needed to continue handling the transaction. If your initialization was successful, your response will contain redirectionStatusCode = '00', (*13)

Redirection to the paypage

In case your initialization was successful, you have to use the redirectionUrl received to perform a POST request with both the redirectionData and seal as parameters. Since this should redirect the customer to the Sips payment page, the cleanest example is a simpleHTML form:, (*14)

<form action="<?= $sipsResponse->getRedirectionUrl() ?>">
    <input type="hidden" name="redirectionVersion" value="<?= $sipsResponse->getRedirectionVersion() ?>">
    <input type="hidden" name="redirectionData" value="<?= $sipsResponse->getRedirectionData() ?>">
    <input type="submit" value="Go to PayPage">
</form>

Verifying the payment

When the customer is done, he will be able to return to your application. This is done via a form, making a POST request to the normalReturnUrl provided during the initialization of your payment. This POST request contains details on the payment. You can simply decode these responses and create a PaypageResult object by calling the finalizeTransaction function:, (*15)

$sipsClient = new SipsClient( new SipsEnvironment("SIMU"), "002001000000001", "002001000000001_KEY1", 1 );
$paypageResponse = $sipsClient->finalizeTransaction();

:warning: Since the customer is not always redirecting back (e.g. he closes the confirmation page), it's a good practice to include an automaticResponseUrl. Sips will always POST details of the transaction to this URL, even if a customer doesn't redirect back to your website., (*16)

The Versions

20/04 2018

dev-develop

dev-develop

This library simplifies the use of Sips 2.0, the e-payments API.

  Sources   Download

MIT

The Requires

 

The Development Requires

by Nicolas Ros

payments psp bancontact sips worldline

20/04 2018

dev-master

9999999-dev

This library simplifies the use of Sips 2.0, the e-payments API.

  Sources   Download

MIT

The Requires

 

The Development Requires

by Nicolas Ros

payments psp bancontact sips worldline

20/04 2018

1.0.1

1.0.1.0

This library simplifies the use of Sips 2.0, the e-payments API.

  Sources   Download

MIT

The Requires

 

The Development Requires

by Nicolas Ros

payments psp bancontact sips worldline

06/03 2018

1.0.0

1.0.0.0

This library simplifies the use of Sips 2.0, the e-payments API.

  Sources   Download

MIT

The Requires

 

The Development Requires

by Nicolas Ros

payments psp bancontact sips worldline