Integración de IZIPAY
Para integrar IZIPAY en tu sitio web, sigue estos pasos:
- Regístrate en IZIPAY y obtén tus claves de acceso.
- Descarga el SDK de PHP de IZIPAY y configura las claves en tu aplicación. Esto se puede hacer en un archivo como `keys.php`.
- Crea un formulario de pago en tu página web. Puedes usar JavaScript para cargar dinámicamente el formulario de pago de IZIPAY en tu sitio.
- Maneja la respuesta de IZIPAY después de que se complete la transacción. Puedes utilizar un archivo como `respuesta.php` para procesar la respuesta y actualizar tu base de datos según sea necesario.
Ejemplo de Código
A continuación, se muestra un ejemplo de cómo podría ser la integración de IZIPAY en una página web:
Configuración de Claves (keys.php)
<?php / ** * Consigue el cliente * / require_once __DIR__ . '/rest-php-sdk-master/src/autoload.php'; /** * Define configuration */ /* Username, password y endpoint utilizados para llamadas web de servidor a servidor */ //(En el Back Office) Copiar Usuario Lyra\Client::setDefaultUsername("55579682"); //(En el Back Office) Copiar Contraseña de test Lyra\Client::setDefaultPassword("testpassword_lJW13iYDE9nwmrJD7M7rGXmdRaZzvpoTRwRScsDQmewfR"); //(En el Back Office) Copiar Contraseña de Nombre del servidor API REST Lyra\Client::setDefaultEndpoint("https://api.micuentaweb.pe"); /* Clave pública utilizada por el cliente JavaScript */ //(En el Back Office) Copiar Clave pública de test Lyra\Client::setDefaultPublicKey("55579682:testpublickey_wcgEPYT7gxPzUJEJE6HfnmbG18Hj8mMPBd2JUumwu8Lkn"); /* Clave SHA256 */ //(En el Back Office) Clave HMAC-SHA-256 de test Lyra\Client::setDefaultSHA256Key("Yga5AOlU5qomnyEj3EQvwMvpotybpd7q4Yk0z9ZZtUaJQ"); ?>
Integración del Formulario de Pago (pagoIncrustado.php)
Incluir este codigo en el inicio, antes del html
<?php /** * Inicializar el PHP SDK */ require_once __DIR__ . '/rest-php-sdk-master/src/autoload.php'; require_once __DIR__ . '/keys.php'; /** * Inicializar el SDK * ver keys.php */ $client = new Lyra\Client(); /** * Creo un formToken * **/ $store = array("amount" => 1800, "currency" => "PEN", "orderId" => uniqid("MyOrderId"), "customer" => array( "email" => "sample@example.com" )); $response = $client->post("V4/Charge/CreatePayment", $store); /* Compruebo si hay algunos errores */ if ($response['status'] != 'SUCCESS') { /* an error occurs, I throw an exception */ display_error($response); $error = $response['answer']; throw new Exception("error " . $error['errorCode'] . ": " . $error['errorMessage'] ); } /* todo está bien, extraigo el formToken */ $formToken = $response["answer"]["formToken"]; ?>
Configuración en el html
Respuesta de IZIPAY
Después de que un cliente complete una transacción, IZIPAY enviará una respuesta que puedes procesar en tu servidor. Aquí tienes un ejemplo de cómo manejar la respuesta:
Configuración de la respuesta (respuesta.php)
<?php /** *Inicializo el SDK de PHP */ require_once __DIR__ . '/rest-php-sdk-master/src/autoload.php'; require_once __DIR__ . '/keys.php'; /** * Inicializa el SDK * ver keys.php */ $client = new Lyra\Client(); //$_POST['kr-hash']= 'Yga5AOlU5qomnyEj3EQvwMvpotybpd7q4Yk0z9ZZtUaJQ'; /* Comprobar la firma mediante contraseña */ if (!$client->checkHash()) { // algo va mal, probablemente un fraude... signature_error($formAnswer['kr-answer']['transactions'][0]['uuid'], $hashKey, $client->getLastCalculatedHash(), $_POST['kr-hash']); throw new Exception('Firma inválida'); } $rawAnswer = $client->getParsedFormAnswer(); $formAnswer = $rawAnswer['kr-answer']; /* Obtener el ID de transacción de los datos de IPN */ $transaction = $formAnswer['transactions'][0]; /* Obtener algunos parámetros de la respuesta */ $orderStatus = $formAnswer['orderStatus']; $orderId = $formAnswer['orderDetails']['orderId']; $transactionUuid = $transaction['uuid']; echo json_encode($formAnswer); ?>
Esperamos que esta guía te haya ayudado a comprender cómo integrar IZIPAY en tu sitio web. Si tienes alguna pregunta o necesitas más información, no dudes en contactarnos.