Permalink
Cannot retrieve contributors at this time
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
103 lines (93 sloc)
3.25 KB
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
/** | |
* Probador de la generación de Token para la página de POST | |
* Pasos: | |
* 1 - Generar el token | |
* 2 - Invocar al formulario de POST para un IFRAME con ese token y los otros parámetros necesarios, | |
* puede invocarse al formulario intermedio de tests/inicio.php para completar | |
* los otros parámetros desde una interfaz más cómoda. | |
*/ | |
ini_set('display_errors', 1); | |
ini_set('display_startup_errors', 1); | |
include("../../api/lib/epagos_api.class.php"); | |
define("ID_ORGANISMO", ""); //TODO: ccmpletar con el ID de organismo proporcionado | |
define("ID_USUARIO", ""); //TODO: ccmpletar con el ID de usuario proporcionado | |
define("PASSWORD", ""); //TODO: ccmpletar con el password proporcionado | |
define("HASH", ""); //TODO: ccmpletar con el hash proporcionado | |
define("CONVENIO", ""); //TODO: ccmpletar con el convenio recibido | |
//TODO: reemplazar por su URL para el caso de pago correcto (no implica acreditado) | |
define("URL_OK", "https://postsandbox.epagos.com.ar/tests/ok.php"); | |
//TODO: reemplazar por su URL para el caso de pago con errores | |
define("URL_ERROR", "https://postsandbox.epagos.com.ar/tests/error.php"); | |
try { | |
$epagos = new epagos_api(ID_ORGANISMO, ID_USUARIO); | |
} catch (EPagos_Exception $e){ | |
echo "Error: Constructor:"; | |
echo "<pre>"; | |
print_r($e); | |
echo "</pre>"; | |
exit; | |
} | |
// | |
// el SDK soporta dos entornos: | |
// Testing -> EPAGOS_ENTORNO_SANDBOX | |
// Producción -> EPAGOS_ENTORNO_PRODUCCION | |
// | |
try { | |
$epagos->set_entorno(EPAGOS_ENTORNO_SANDBOX); | |
$respuesta = $epagos->obtener_token_post(PASSWORD, HASH); | |
// control de error en la respuesta | |
if (empty($respuesta->token)) { | |
echo 'Error: <b>obtener_token_post</b>: '; | |
echo "<pre>"; | |
print_r($respuesta); | |
echo '</pre>'; | |
exit; | |
} | |
$token = $respuesta->token; | |
//TODO: personalizar con sus valores y detalles a enviar, esto es opcional, puede no enviarlo | |
$detalle_op = urlencode(json_encode( | |
[ | |
[ | |
'id_item' => '1', | |
'desc_item' => 'Descripcion 1', | |
'monto_item' => '120', | |
'cantidad_item' => '1' | |
], | |
[ | |
'id_item' => '2', | |
'desc_item' => 'Descripcion 2', | |
'monto_item' => '120', | |
'cantidad_item' => '3' | |
], | |
] | |
)); | |
$datos_post = [ | |
'convenio' => CONVENIO, | |
'numero_operacion' => '1', | |
'id_moneda_operacion' => '1', | |
'monto_operacion' => 480, // TODO: reemplazar por el importe de la operación | |
'detalle_operacion' => $detalle_op, | |
// | |
// En el caso de que se desee mostrar el usuario el detalle en la pantalla de pago, incluir: | |
// 'detalle_operacion_visible' => 1, | |
// | |
'ok_url' => URL_OK, //TODO: reemplazar por sus URL | |
'error_url' => URL_ERROR, //TODO: reemplazar por sus URL | |
// | |
// Usos avanzados | |
// | |
// - Para restringir que solo se vean determinados medios de pago: | |
// $datos_post['fp_permitidas'] = serialize([1, 2, 3, 9, 10, 11]); | |
// | |
// - Para excluir determinados medios de pago: | |
// $datos_post['fp_excluidas'] = serialize([1, 2, 3]); | |
// | |
// - Para excluir determinados tipos de formas de pago: | |
// $datos_post['tp_excluidos'] = serialize([1, 2]); | |
// | |
]; | |
$epagos->solicitud_pago_post_iframe($datos_post); | |
} catch (EPagos_Exception $e){ | |
echo "Error: ".$e->getMessage(); | |
} /* try, catch */ |