Hola amigos,
Saludos y anticipadas disculpas por mis errores e inexperiencia, para lo cual espero su comprension, paciencia y ayuda
Tengo una cuenta en pasarela pagos payulatam. Para integrar me piden codificar contenido de unas variables en MD5 y me dan el ejemplo, sin embargo el resultado de la codificación
mia es diferente a la que ellos envían…desde luego la mia la toma como
invalida.
Este es el ejemplo de ellos y que si funciona
---
merchantId: 500238
ApiKey: 6u39nqhq8ftd0hlvnjfs66eh8c
referenceCode: TestPayU
amount: 3
currency: USD
accountId: 500537
buyerEmail: test@test.com
Me dicen que debo codificar estos campos
“ApiKey~merchantId~referenceCode~amount~currency”.
La firma sería según el ejemplo:
"6u39nqhq8ftd0hlvnjfs66eh8c~500238~TestPayU~3~USD"
A esta firma se
le aplica el MD5 y debería quedar asi:
"be2f083cb3391c84fdf5fd6176801278"
Yo
he creado el código de la siguiente manera, según las indicaciones
suministradas
<?php
$merchantId = "500238";
$ApiKey = "6u39nqhq8ftd0hlvnjfs66eh8c";
$referenceCode = "TestPayU";
$amount = "3";
$currency = "USD";
$accountId = "500537";
$buyerEmail = "test@test.com";
Y codifico
asi:
$signatu = md5($ApiKey.$merchantId.$referenceCode.$amount.$currency);
echo md5, php, payu$signatu;
?>
El resultado de la codificación MD5 o firma que me muestra es:
“11640c6e82078e4d9b0e1ebc07a29709”, la cual es diferente a la que ellos dicen debe dar para esos campos y que es "be2f083cb3391c84fdf5fd6176801278"
Puede alguien ayudarme?
Comentarios
Tal cual lo tienes:
$signatu = md5("$ApiKey~$merchantId~$referenceCode~$amount~$currency");
Y así lo tienes.
Un saludo.