TransbankDevelopers / transbank-plugin-woocommerce-webpay

OBSOLETO: Código fuente de Plugin WooCommerce para Transbank Webpay
BSD 3-Clause "New" or "Revised" License
19 stars 17 forks source link

API REST Wordpress #130

Closed ghost closed 4 years ago

ghost commented 4 years ago

Describe el bug

Hola buenas tardes, cuando actualicé la versión de transbank a sitio web de mi cliente, me generan errores en la API REST de Wordpress,

La API de REST es una forma en la que WordPress y otras aplicaciones se comunican con el servidor. Un ejemplo es la pantalla del editor de bloques, que se basa en esto para mostrar, y guardar, sus entradas y páginas.

La solicitud de la API de REST falló debido a un error. Error: cURL error 28: Operation timed out after 10000 milliseconds with 0 bytes received (http_request_failed)

Este error, aparece en la salud del sistema que tiene integrado Wordpress. Cuando desactivo el plugin, ya no existe dicho error. Una explicación concisa y clara de qué es lo que esperas que ocurra.

Capturas de pantalla

errror api rest

Versiones (por favor agrega aquí la siguiente información):

ghost commented 4 years ago

Hola buenas tardes, ¿alguien me puede ayudar?, por favor.

ghost commented 4 years ago

Hola buenas noches, ¿esto es soporte?, porque parece que ignoran la petición de un cliente que usa su plataforma. Agradeceré que me puedan ayudar por favor. Gracias

melvisnap commented 4 years ago

Hola, no creo que el problema venga del plugin de transbank, intenta desactivando todo lo demás y dejando solo WC y Transbank a ver si sucede algo. Por otro lado revisa los logs de WC y los del servidor, tal vez puedas ver mejor que está causando el problema.

También te recomiendo el canal de soporte en Slack, tal vez puedas conseguir repuestas más inmediatas.

truchosky commented 4 years ago

a mi no me da ningún error parecido, como dicen arriba, revisar los logs

ghost commented 4 years ago

Estimados, muchas gracias por las respuestas, ya solucioné el tema. Saludos

rrojasloup commented 4 years ago

Amigo podrías indicar en este caso cual fue tu problema y una posible solución en tos momentos mantengo el mismo problema

folmedov commented 4 years ago

A mi tb me pasa lo mismo, me aparecen esos 2 error cuando activo el plugin de transbank, si lo desactivo los errores desaparecen. Por favor, podrías explicar cómo resolviste este problema? Muchas gracias.

ghost commented 4 years ago

Estimados, no encontré solución al problema, lamentablemente nos tuvimos que cambiar a otros canales de pago ya que me estaba afectando en rendimiento y seguridad. Siento no poder ayudar más.

truchosky commented 4 years ago

que versión de php usan?, por cierto, yo tengo ese mismo error pero en otro sitio que no usa éste plugin de transbank, asi que quizas las fallas en tus transacciones no se deben especificamente a ese error si no que otro, revisaste el log de transbank ?

rrojasloup commented 4 years ago

Buenas mi web utiliza 7.3 me contacte con transbank vía telefónica y lo único que me dijeron fue que bajara la versión de PHP a 7.1 con la cual la web mantiene los errores y reinstalar el plugin lo cual ya lo hice cientos de veces, el log de transbank contiene lo siguente:

[2020-06-26 15:46:42] [INFO ] INFO: initTransaction - amount: 6000, sessionId: 5ef618618d027, buyOrder: 158, txDate: 26-06-2020, txTime: 15:46:42 [2020-06-26 15:46:43] [INFO ] INFO: initTransaction - initResult: {"return":null,"token":"e7c0c769531c46a00355a47507aba8c2445a49e6b4cc3f5eaf4d9a5b7fb6bbe7","url":"https:\/\/webpay3gint.transbank.cl\/webpayserver\/initTransaction"} [2020-06-26 15:51:42] [INFO ] INFO: initTransaction - amount: 6000, sessionId: 5ef6198e310bb, buyOrder: 159, txDate: 26-06-2020, txTime: 15:51:42 [2020-06-26 15:51:42] [INFO ] INFO: initTransaction - initResult: {"return":null,"token":"ec57e2320e5035bbe23cc1b96f901f76f7ed6f7b917e194c77ae588748951232","url":"https:\/\/webpay3gint.transbank.cl\/webpayserver\/initTransaction"} [2020-06-26 15:58:44] [INFO ] INFO: initTransaction - amount: 6000, sessionId: 5ef61b348f30a, buyOrder: 163, txDate: 26-06-2020, txTime: 15:58:44 [2020-06-26 15:58:45] [INFO ] INFO: initTransaction - initResult: {"return":null,"token":"e347d85e21df3ce1a8569229910b2864b6e75975110c33b4bfec0ae0045f372c","url":"https:\/\/webpay3gint.transbank.cl\/webpayserver\/initTransaction"} [2020-06-26 16:12:37] [INFO ] INFO: initTransaction - amount: 6000, sessionId: 5ef61e75a578f, buyOrder: 165, txDate: 26-06-2020, txTime: 16:12:37 [2020-06-26 16:12:38] [INFO ] INFO: initTransaction - initResult: {"return":null,"token":"e8c00682a9fdc97577e9d2990585fcafe311a9ab1e21ea14fd4edc91cd6e3047","url":"https:\/\/webpay3gint.transbank.cl\/webpayserver\/initTransaction"} [2020-06-26 17:29:00] [INFO ] INFO: initTransaction - amount: 12000, sessionId: 5ef6305cb70df, buyOrder: 169, txDate: 26-06-2020, txTime: 17:29:00 [2020-06-26 17:29:03] [INFO ] INFO: initTransaction - initResult: {"return":null,"token":"e4b88973dd252605fe5e287d7591583b70f47b63392b24c0e293c01fd194e7ff","url":"https:\/\/webpay3gint.transbank.cl\/webpayserver\/initTransaction"} [2020-06-26 17:32:42] [INFO ] INFO: initTransaction - amount: 6000, sessionId: 5ef6313a2a80c, buyOrder: 170, txDate: 26-06-2020, txTime: 17:32:42 [2020-06-26 17:32:42] [INFO ] INFO: initTransaction - initResult: {"return":null,"token":"e418cf5aae4ca23e5cadaf708254718ef3466cfb52ddbe482c247f0444b82be5","url":"https:\/\/webpay3gint.transbank.cl\/webpayserver\/initTransaction"} [2020-06-26 17:50:57] [INFO ] INFO: initTransaction - amount: 10, sessionId: 5ef63581bda7c, buyOrder: 172, txDate: 26-06-2020, txTime: 17:50:57 [2020-06-26 17:50:58] [INFO ] INFO: initTransaction - initResult: {"return":null,"token":"e04a235b40f431d7ab6428a9a24a8499b6adc99aed1cbdedee46dbabe7c68181","url":"https:\/\/webpay3gint.transbank.cl\/webpayserver\/initTransaction"} [2020-06-26 18:02:53] [INFO ] INFO: initTransaction - amount: 10, sessionId: 5ef6384d7c0f6, buyOrder: 173, txDate: 26-06-2020, txTime: 18:02:53 [2020-06-26 18:02:55] [INFO ] INFO: initTransaction - initResult: {"return":null,"token":"e6155504671bbf29ec5fb3ff89d79d482e4e0f81515ca26082f78dcec9037a5f","url":"https:\/\/webpay3gint.transbank.cl\/webpayserver\/initTransaction"} [2020-06-26 18:08:12] [INFO ] INFO: initTransaction - amount: 10, sessionId: 5ef6398bf0cfa, buyOrder: 174, txDate: 26-06-2020, txTime: 18:08:12 [2020-06-26 18:08:13] [INFO ] INFO: initTransaction - initResult: {"return":null,"token":"ed099197225719816b80ce86959a5ad729e2589a855aa3f30d8ede9e0b7f60d9","url":"https:\/\/webpay3gint.transbank.cl\/webpayserver\/initTransaction"} [2020-06-26 18:14:18] [INFO ] INFO: initTransaction - amount: 10, sessionId: 5ef63afa6583a, buyOrder: 174, txDate: 26-06-2020, txTime: 18:14:18 [2020-06-26 18:14:19] [INFO ] INFO: initTransaction - initResult: {"return":null,"token":"ebdf95a8884f0359b6e3b3255354160ed5b88e9929efd39fb517232b2dcf8078","url":"https:\/\/webpay3gint.transbank.cl\/webpayserver\/initTransaction"} [2020-06-26 18:21:44] [INFO ] INFO: initTransaction - amount: 10, sessionId: 5ef63cb80f302, buyOrder: 174, txDate: 26-06-2020, txTime: 18:21:44 [2020-06-26 18:21:44] [INFO ] INFO: initTransaction - initResult: {"return":null,"token":"ebba8ccaa3c4d140415bdf7a7a9a6d8dd1a8980c859dd3924d1ac73a071ed974","url":"https:\/\/webpay3gint.transbank.cl\/webpayserver\/initTransaction"} [2020-06-26 19:25:00] [INFO ] INFO: initTransaction - amount: 10, sessionId: 5ef64b8c4b353, buyOrder: 174, txDate: 26-06-2020, txTime: 19:25:00 [2020-06-26 19:25:02] [INFO ] INFO: initTransaction - initResult: {"return":null,"token":"e80ec4c18f4efb9d7c1c1bb5d65950278d319dddb7ad38c33d4255f36431981f","url":"https:\/\/webpay3gint.transbank.cl\/webpayserver\/initTransaction"} [2020-06-26 19:28:07] [INFO ] INFO: initTransaction - amount: 10, sessionId: 5ef64c47b1062, buyOrder: 174, txDate: 26-06-2020, txTime: 19:28:07 [2020-06-26 19:28:08] [INFO ] INFO: initTransaction - initResult: {"return":null,"token":"e11a6c0b4689c27984036c77355b175e6b5e413ac0eb37676eea90988279be02","url":"https:\/\/webpay3gint.transbank.cl\/webpayserver\/initTransaction"} [2020-06-26 19:33:23] [INFO ] INFO: initTransaction - amount: 990, sessionId: 5ef64d8321954, buyOrder: _Healthcheck_, txDate: 26-06-2020, txTime: 19:33:23 [2020-06-26 19:33:23] [INFO ] INFO: initTransaction - initResult: {"return":null,"token":"ecff8d4d038678a78ea1ca6597b03ce6aca59097c16696e057f7c85f9570694f","url":"https:\/\/webpay3gint.transbank.cl\/webpayserver\/initTransaction"} [2020-06-26 19:39:58] [INFO ] INFO: initTransaction - amount: 990, sessionId: 5ef64f0e50653, buyOrder: _Healthcheck_, txDate: 26-06-2020, txTime: 19:39:58 [2020-06-26 19:39:59] [INFO ] INFO: initTransaction - initResult: {"return":null,"token":"e55fd3de9b29377e6ea94bde152e775e8aec6f42005b6f6325c5efeeeb44920d","url":"https:\/\/webpay3gint.transbank.cl\/webpayserver\/initTransaction"} [2020-06-26 19:47:53] [INFO ] INFO: initTransaction - amount: 990, sessionId: 5ef650e93ef9c, buyOrder: _Healthcheck_, txDate: 26-06-2020, txTime: 19:47:53 [2020-06-26 19:47:54] [INFO ] INFO: initTransaction - initResult: {"return":null,"token":"efdd43d1b63039f0f8956a44e5b3abeee6e664d75661c3388b14fc24b24f2b04","url":"https:\/\/webpay3gint.transbank.cl\/webpayserver\/initTransaction"} [2020-06-26 19:48:57] [INFO ] INFO: initTransaction - amount: 10, sessionId: 5ef6512956602, buyOrder: 176, txDate: 26-06-2020, txTime: 19:48:57 [2020-06-26 19:48:58] [INFO ] INFO: initTransaction - initResult: {"return":null,"token":"e01afbefe13f57362855052c70bed516d3518d67b8493ebfb9b511038860df91","url":"https:\/\/webpay3gint.transbank.cl\/webpayserver\/initTransaction"} [2020-06-26 19:51:22] [INFO ] INFO: initTransaction - amount: 990, sessionId: 5ef651ba6e212, buyOrder: _Healthcheck_, txDate: 26-06-2020, txTime: 19:51:22 [2020-06-26 19:51:23] [INFO ] INFO: initTransaction - initResult: {"return":null,"token":"e24cf8a67ee8c76f4ebfd79a27d068fb183eeaeb8826d8875071dd2a1b53686e","url":"https:\/\/webpay3gint.transbank.cl\/webpayserver\/initTransaction"} [2020-06-26 19:53:43] [INFO ] INFO: initTransaction - amount: 1, sessionId: 5ef65247dd9c9, buyOrder: 178, txDate: 26-06-2020, txTime: 19:53:43 [2020-06-26 19:53:44] [INFO ] INFO: initTransaction - initResult: {"return":null,"token":"e69c6e084b26319567512d7bdfeeed1737a328efb66a1ec91d863e7519ce3a88","url":"https:\/\/webpay3gint.transbank.cl\/webpayserver\/initTransaction"} [2020-06-26 21:13:59] [INFO ] INFO: initTransaction - amount: 1, sessionId: 5ef66517a600d, buyOrder: 179, txDate: 26-06-2020, txTime: 21:13:59 [2020-06-26 21:14:01] [INFO ] INFO: initTransaction - initResult: {"return":null,"token":"efe563e45d91f0f7cc21ef3b6993b7a53624499ca1191783ebc701f478657f91","url":"https:\/\/webpay3gint.transbank.cl\/webpayserver\/initTransaction"}

indagando dentro del la web para poder encontrar algún log de errores se encontró lo siguiente:

`2020-06-26T18:20:10+00:00 CRITICAL Uncaught Transbank\WooCommerce\Webpay\Exceptions\TokenNotFoundOnDatabaseException: Token 'ed099197225719816b80ce86959a5ad729e2589a855aa3f30d8ede9e0b7f60d9' no se encontró en la base de datos de transacciones, por lo que no se puede completar el proceso in /home/admin/public_html/wp-content/plugins/woocommerce-transbank-3/src/TransbankWebpayOrders.php:40 Stack trace:

0 /home/admin/public_html/wp-content/plugins/woocommerce-transbank-3/src/Controllers/FinalProcessController.php(93): Transbank\WooCommerce\Webpay\TransbankWebpayOrders::getByToken('ed0991972257198...')

1 /home/adminfutbolayuda/public_html/wp-content/plugins/woocommerce-transbank-3/src/Controllers/FinalProcessController.php(39): Transbank\WooCommerce\Webpay\Controllers\FinalProcessController->getWebpayTransactionByToken()

2 /home/admin/public_html/wp-includes/class-wp-hook.php(287): Transbank\WooCommerce\Webpay\Controllers\FinalProcessController->show('')

3 /home/admin/public_html/wp-includes/class-w en /home/admin/public_html/wp-content/plugins/woocommerce-transbank-3/src/TransbankWebpayOrders.php en la línea 40`

tal como lo decías yo tengo otros sitios con transbank y ningún problema al parecer es un problema con la ultima versión de woocommerce por que en el resto no lo tengo actualizado y ningún drama funciona a la perfección

folmedov commented 4 years ago

Hola a todos.

En mi caso, este error que marca Wordpress no genera problemas para hacer transacciones con webpay, aunque aún estoy en etapa de integración, y por lo mismo no quisiera pasar a producción sabiendo que el plugin genera este error. La version de PHP que uso es la 7.3, wordpress v5.4.2 con woocommerce v4.2.2 y el plugin de la página oficial de transbank v2.7.4.

Buscando en internet encontré este link en donde tienen un problema muy parecido con un plugin de paypal: https://wordpress.org/support/topic/the-loopback-request-to-your-site-failed-4/page/2/#post-10662220. Al parecer el problema tiene relación con las sesiones de php y con wordpress desde la version 4.9. Acá otro link que detalla este problema en especifico con las sesiones de php y el error de loopback: https://wpengine.com/support/php-editor-errors-wordpress-4-9-higher/.

Revisando el código del plugin se puede ver que efectivamente hace uso se las sesiones de php y las inicia con la función session_start(), pero pareciera q nunca se cierra (al menos yo no encontré que se hiciera), y eso es lo que debiera generar el error.

Saludos.

folmedov commented 4 years ago

Pregunta al margen. ¿Sería posible reabrir este hilo para dejarlo visible y se pueda tener en cuenta por los autores de plugin?

Saludos

ffiebig commented 4 years ago

@folmedov Debo reconocer que nos demoramos más de lo que estamos orgullosos en percatarnos de que esto estaba pasando. Dicho eso, ya estamos al tanto qué ocurre este problema y estamos tratando de encontrar el tiempo para solucionarlo, lo tomaremos apenas podamos.

folmedov commented 4 years ago

Hola @ffiebig, me alegro que puedan tener en cuenta este bug y espero puedan darle pronta solución.

Saludos.

gdespirito commented 4 years ago

Hola! Este error debería resolverse con este PR: https://github.com/TransbankDevelopers/transbank-plugin-woocommerce-webpay/pull/141

Así que en la próxima versión 2.7.6 debería estar resuelto.

folmedov commented 4 years ago

Hola @gonzunigad .

Me alegro q hayan podido tomar esta solicitud, muchas gracias! Vi q el cambio fue incluir la opción 'read_and_close' en la función session_start(). Solamente quisiera señalar que dicha opción está disponible desde php 7 en adelante. https://www.php.net/manual/es/function.session-start.php

Saludos

gdespirito commented 4 years ago

Hola @folmedov . Efectivamente, este bug se soluciona desde PHP 7.0 en adelante. Para instalaciones con PHP <= 5.6 seguirá fallando el API REST de wordpress, pero el plugin sigue funcionando.

gdespirito commented 4 years ago

Resuelto en el último release: 2.7.6: https://github.com/TransbankDevelopers/transbank-plugin-woocommerce-webpay/releases/tag/2.7.6 👍