Estoy tratando de integrar 2Checkout en una aplicación cuyo front-end se basa en Angular 11 y el back-end Node js. Logré integrar IPN (Notificación de pago instantánea) de 2Checkout pero recibo una notificación que dice: ""
Nuestro sistema detectó que tiene enlaces web de respuesta lenta.
después de verificar la documentación varias veces, vi que necesito devolver <EPAYMENT>20050303123434|7bf97ed39681027d0c45aa45e3ea98f0</EPAYMENT> pero aún obtengo la misma respuesta en el tablero y 2Checkout no puede verificar
mi código:
const bodyParse = parse(req.body); let date = new Date(); let updatedDate = date.getFullYear().toString() + pad2(date.getMonth() + 1) + pad2(date.getDate()) + pad2(date.getHours()) + pad2(date.getMinutes()) + pad2(date.getSeconds()); let hashToReturn = hmac( `${bodyParse['IPN_PID[]'].length}${bodyParse['IPN_PID[]']}${bodyParse['IPN_PNAME[]'].length}${bodyParse['IPN_PNAME']}${bodyParse['IPN_DATE'].length}${bodyParse['IPN_DATE']}${updatedDate.length}${updatedDate}` ); console.log('hashToReturn', hashToReturn); res.send(`Verified OK! <EPAYMENT>${updatedDate}|${hashToReturn}</>`) function hmac(stringToHash: string) { const secretKey = process.env.checkoutSecret; const hmac = crypto.createHmac('MD5', secretKey); return hmac.update(stringToHash).digest('hex'); }No puedo entender lo que me estoy perdiendo o lo que está mal. Traté de comunicarme con el soporte de 2Checkout, pero solo respondieron con ejemplos de código de PHP y partes de la documentación.