Para garantizar la integridad de las operaciones y realizar transacciones de manera segura, es obligatorio incluir una firma de seguridad en cada petición. Esta firma valida que los datos no han sido alterados y que provienen de un comercio autenticado.
Para generar esta firma, se requieren los siguientes 4 elementos:
key ID: La llave pública del comercio.order_id: El identificador único de la orden.endpoint: El punto de entrada o identificador del servicio utilizado.secret key: La llave secreta del comercio (utilizada para firmar el hash).IMPORTANTE: ALERTA DE SEGURIDAD
La generación de esta firma DEBE realizarse estrictamente del lado del servidor (Backend).
Bajo ninguna circunstancia debes realizar este proceso en aplicaciones del lado del cliente (Frontend o Apps Móviles), ya que hacerlo expondría tu secret key al público. Si un atacante obtiene tu llave secreta, podría generar transacciones fraudulentas en tu nombre. Mantén tu lógica de verificación y tus llaves protegidas en tu servidor.
Concatenación Se debe crear una cadena concatenando los elementos en el siguiente orden específico, utilizando el carácter | (pipe) como delimitador. Patrón: key_id|order_id|endpoint
Hashing (Cifrado): El nuevo estándar de seguridad requiere el uso de HMAC con la familia SHA-3. La cadena concatenada debe ser procesada utilizando el algoritmo HMAC-SHA3-512, asignando tu secret_key como la llave criptográfica.
Ejemplo
| Nombre | Valor |
|---|---|
key ID |
7812290000 |
order_id |
00000123 |
endpoint |
https://pixelpay.app |
secret key |
3422da00-4dc2-4602-d366-56ac7 |
Cadena a firmar: 7812290000|00000123|https://pixelpay.app
Resultado (Firma): Al aplicar HMAC-SHA512 con la secret key sobre la cadena anterior, obtendrás el valor necesario para autorizar la transacción.
Para ver ejemplos de implementación en nuestros casos de uso, haz clic aquí.