1. Go to this page and download the library: Download ferotres/redsys-bundle library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
ferotres / redsys-bundle example snippets
php
class PaymentController extends AbstractController
{
/** @var RedsysRedirection */
private $redsysRedirection;
/**
* DefaultController constructor.
* @param RedsysRedirection $redsysRedirection
*/
public function __construct(RedsysRedirection $redsysRedirection)
{
$this->redsysRedirection = $redsysRedirection;
}
public function pay(int $optionalIdOffer)
{
$paymentOrder = PaymentOrderBuilder::create()
->toApp('sample1')
->withAmount(1000)
->withCurrency('EUR')
->withLocale('ES')
->withPaymentHolder('Juan Alvarez')
->withDescription('Product Test description')
->withOrder('201901015001')
// This params is used for success/error callbacks and notification response
->addUserParams(['optionalIdOffer' => $optionalIdOffer])
// For use a secure terminal
->usingCes(true)
->build();
/** @var RedsysOrder $redsysOrder */
$redsysOrder = $this->redsysRedirection->createPayment($paymentOrder);
return $this->render('Acme/pay.html.twig', ['redsysOrder' => $redsysOrder]);
}
}
php
// The cancelAuthorization do a curl to redsys, template is not needed.
/** @var RedsysOrder $redsysOrder */
$redsysOrder = $this->redsysRedirection->cancelAuthorization($paymentOrder);
php
// src/EventListener/PaymentResponseHandler.php
class PaymentResponseHandler
{
/**
* @param RedsysResponseSuccessEvent $redsysResponseEvent
*/
public function onPaymentSuccess(RedsysResponseSuccessEvent $redsysResponseEvent)
{
$redsysResponse = $redsysResponseEvent->redsysResponse();
$order = $redsysResponse->order();
$authCode = $redsysResponse->authCode();
// This use __call magic method
$optionalIdOffer = $redsysResponseEvent->getOptionalIdOffer()
$valid = $redsysResponseEvent->isValidated();
// TODO: Yout bussines logic
// By default, If in this function something throw and exception, RedsysResponseFailedEvent will be triggered.
}
/**
* @param RedsysResponseFailedEvent $responseFailedEvent
*/
public function onPaymentError(RedsysResponseFailedEvent $responseFailedEvent)
{
$redsysResponse = $redsysResponseEvent->redsysResponse();
// This use __call magic method
$optionalIdOffer = $redsysResponseEvent->getOptionalIdOffer();
$exception = $responseFailedEvent->exception();
$valid = $redsysResponseEvent->isValidated();
// TODO: Yout bussines logic
}
}
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.