VibeFox Paymob for WooCommerce — Ayuda
Requisitos
WordPress: 6.2 o posterior.
WooCommerce: 8.0 o posterior, instalado y activo. El plugin no se activa sin él.
PHP: 8.0 o posterior.
Cuenta de Paymob: una cuenta de comerciante en uno de los países compatibles: Egipto, Emiratos Árabes Unidos, Arabia Saudí, Omán o Pakistán. Necesitas cuatro valores del panel de control de Paymob: la clave de API, el ID de integración de una integración de pago en línea, el ID de iFrame de la página de pago y el secreto HMAC.
Moneda: la moneda de la tienda debe ser la moneda de tu país de Paymob: EGP para Egipto, AED para Emiratos Árabes Unidos, SAR para Arabia Saudí, OMR para Omán y PKR para Pakistán. Con otra moneda, el método de pago no se muestra en la finalización de compra.
Clave de licencia de VibeFox: se compra en vibefox.net. Una clave funciona en un dominio.
Instalación
1. En WordPress, ve a Plugins > Add New > Upload Plugin, elige el archivo ZIP del plugin y haz clic en Install Now. También puedes subir la carpeta wcp_paymob_pay a /wp-content/plugins/ por FTP.
2. Haz clic en Activate.
3. Abre los ajustes: WooCommerce > Settings > Payments > Paymob > Manage, o haz clic en Settings debajo del nombre del plugin en la página Plugins.
4. Introduce tu clave de licencia de VibeFox en el bloque de licencia de la parte superior de la página y haz clic en Activate.
5. Elige el Paymob country e introduce la clave de API, el ID de integración, el ID de iFrame y el secreto HMAC (consulta Configuración).
6. En el panel de control de Paymob, configura las URL de callback de tu integración con la URL que aparece en la página de ajustes (consulta Callbacks).
7. Activa Enable/Disable. Prueba un pago con el ID de una integración de prueba de Paymob y, después, introduce el ID de tu integración real.
Configuración
Todos los ajustes están en una sola página: WooCommerce > Settings > Payments > Paymob. Encima de los campos, la página te avisa cuando falta uno de los cuatro valores de Paymob (hasta entonces, Paymob no se muestra en la finalización de compra) y cuando el país de Paymob seleccionado no acepta la moneda de la tienda. Un recuadro muestra la URL de callback con un botón Copy y un enlace al panel de control de Paymob del país seleccionado.
General
Enable/Disable: Enable Paymob activa o desactiva el método de pago. Por defecto: desactivado.
Title: el nombre del método de pago que ven los clientes en la finalización de compra. Por defecto: Paymob.
Description: el texto que se muestra debajo del método de pago en la finalización de compra. Por defecto: Pay securely by card or mobile wallet on the Paymob payment page.
Cuenta de Paymob
Todos los valores están en tu panel de control de comerciante de Paymob. No hay un modo de prueba aparte: para los pagos de prueba, introduce el ID de integración de una integración en modo de prueba. Ningún otro ajuste cambia.
Paymob country: el país de tu cuenta de Paymob. Selecciona el servidor de la API y de la página de pago, y la moneda de la tienda debe ser la moneda de este país. Por defecto: Egypt.
API key: en el panel de control de Paymob, en Settings > Account info > API Key.
Integration ID: en el panel de control de Paymob, en Developers > Payment Integrations: el ID numérico de la integración de tarjeta o monedero en línea. Los métodos de pago que ofrece la página de Paymob son los de esta integración.
iFrame ID: en el panel de control de Paymob, en Developers > iframes: el ID numérico del iFrame de pago.
HMAC secret: en el panel de control de Paymob, en Settings > Account info > HMAC. Obligatorio: los pedidos solo se marcan como pagados mediante callbacks firmados con este secreto.
Integration ID e iFrame ID solo pueden contener dígitos. Los espacios se eliminan. Cualquier otro valor se rechaza al guardar, con el mensaje de que el campo must contain digits only — the previous value was kept.
Callbacks
Paymob informa de cada transacción a tu tienda. En el panel de control de Paymob, abre Developers > Payment Integrations, elige tu integración, haz clic en Edit y configura tanto Transaction processed callback como Transaction response callback con la URL que aparece en la página de ajustes. Tiene este aspecto: https://your-site/wc-api/paymob_pay/. Cópiala con el botón Copy. Configura las URL en todas las integraciones que uses, incluida la de prueba.
El callback de transacción procesada lo envía el servidor de Paymob. El callback de respuesta de la transacción devuelve al cliente a tu tienda. Ambos van firmados con tu secreto HMAC y el plugin los comprueba. Los callbacks sin una firma válida se rechazan y no cambian nada. Si el callback del servidor llega tarde o se pierde, una vuelta firmada del cliente también confirma el pago.
Avanzado
Debug log: Log payment steps and callbacks escribe los pasos del pago y los callbacks en WooCommerce > Status > Logs, origen wcp_paymob_pay. Los errores y los callbacks rechazados siempre se registran. Las claves, los tokens y los datos de los clientes nunca se escriben. Por defecto: desactivado.
Clean uninstall: Delete the plugin settings and logs when the plugin is deleted. Desactivar el plugin nunca borra nada. Los ID de Paymob guardados en los pedidos se conservan. Por defecto: desactivado.
Finalización de compra
El cliente elige el método de pago (por defecto, Paymob) y realiza el pedido. El plugin registra un nuevo pedido en Paymob por el total del pedido en la moneda del pedido, envía a Paymob el nombre, el correo electrónico, el teléfono y la dirección de facturación del cliente, y lo lleva a la página de pago de Paymob de tu país. Allí el cliente paga con uno de los métodos de tu integración, por ejemplo una tarjeta o un monedero móvil.
Después de pagar, el cliente vuelve a tu tienda. El pedido se marca como pagado solo cuando Paymob lo confirma con una transacción firmada. Un pago realizado, pendiente o autorizado lleva al cliente a la página de pedido recibido.
Si el pago fue rechazado, el cliente vuelve a la finalización de compra (o a la página Pay for order, si el pago se inició allí) con el mensaje Your Paymob payment was not completed. Please try again or choose another payment method. Cada nuevo intento registra su propio pedido en Paymob, así que el cliente puede reintentar el mismo pedido. Si no se puede verificar la respuesta de Paymob, el cliente ve We could not verify the response from Paymob. If you were charged, your order will be updated as soon as Paymob confirms the payment.
Si Paymob no puede iniciar el pago, el cliente ve un mensaje breve y puede elegir otro método de pago, por ejemplo Paymob could not start the payment. Please check your billing details and try again, or choose another payment method. o Could not connect to Paymob. Please try again in a moment. El motivo técnico se escribe en el registro.
El método de pago funciona en la finalización de compra clásica, en el bloque de Finalizar compra y en la página Pay for order. En la página Pay for order se comprueba la moneda del pedido en lugar de la moneda de la tienda. Es compatible con WooCommerce High-Performance Order Storage (HPOS).
El plugin admite pagos únicos en la página de Paymob. No tiene tarjetas guardadas, suscripciones, formulario de tarjeta integrado en tu sitio ni reembolsos desde WooCommerce.
Pedidos
Estados del pedido
Pending payment: el cliente fue enviado a Paymob y aún no ha pagado, o Paymob aún no ha confirmado el pago.
Processing: Paymob confirmó el pago. Los pedidos con solo productos virtuales descargables pasan a Completado, el valor por defecto de WooCommerce. La nota del pedido muestra la transacción de Paymob, el importe y el tipo de tarjeta con los últimos cuatro dígitos. El ID de transacción es el ID de transacción de Paymob.
On hold: el pago está pendiente en Paymob, por ejemplo un pago en efectivo o en quiosco; o Paymob solo autorizó el importe y no lo ha capturado (captúralo en el panel de control de Paymob; el pedido se completa cuando llega el callback de captura); o el importe o la moneda pagados no coinciden con el pedido; o llegó un pago para un pedido que había sido cancelado. La nota del pedido explica el motivo.
Failed: Paymob rechazó el pago de un pedido pendiente. El cliente puede volver a pagar.
Si llega un segundo pago correcto para un pedido que ya está pagado, el pedido no cambia. Una nota te pide que reembolses el duplicado en el panel de control de Paymob. Un pago de un pedido cancelado que había sido pagado antes, o de un pedido reembolsado, solo añade una nota: el pedido no se reabre.
Reembolsos
Los reembolsos desde WooCommerce no son compatibles. Reembolsa o anula el pago en el panel de control de Paymob. Cuando Paymob informa de un reembolso o de una anulación, se añade una nota al pedido y el estado del pedido no cambia. Actualiza el pedido manualmente, por ejemplo con un reembolso manual en WooCommerce.
Clave de licencia
El plugin funciona con una clave de licencia de VibeFox de vibefox.net. El bloque de licencia está en la parte superior de WooCommerce > Settings > Payments > Paymob. Pega la clave en License key y haz clic en Activate. El bloque muestra el estado, por ejemplo la fecha hasta la que la licencia está activa, y tu dominio. Usa Check now para volver a comprobar el estado, Change key para introducir otra clave y Remove key para quitarla de este sitio. El enlace Manage licenses and domains in your account abre tu cuenta de vibefox.net.
Una clave funciona en un dominio. Quitar la clave de un sitio no libera su espacio de dominio. Libéralo en tu cuenta de vibefox.net.
Sin una clave activa, Paymob no se muestra a los clientes en la finalización de compra. Si se inicia un pago de todos modos, el cliente ve This payment method is not available. Please choose another one. Los gestores de la tienda que han iniciado sesión siguen viendo el método de pago, marcado como (unlicensed — visible to admins only), para que puedas configurar y probar el plugin antes de comprar una clave. Un aviso aparece en la página Plugins y en las páginas de WooCommerce. Los pedidos existentes no se ven afectados: los pagos ya iniciados siguen confirmándose.
Cuando una licencia caduca, el plugin sigue funcionando, pero las actualizaciones y el soporte requieren una renovación. El estado se vuelve a comprobar automáticamente en segundo plano.
Solución de problemas
Paymob no aparece en la finalización de compra: comprueba que la licencia esté activa, que Enable/Disable esté activado, que los cuatro valores (API key, Integration ID, iFrame ID, HMAC secret) estén rellenados y que la moneda de la tienda sea la del Paymob country seleccionado. La página de ajustes muestra un aviso cuando falta algo. Los desarrolladores con una cuenta de Paymob multimoneda pueden ampliar las monedas aceptadas con el filtro paymob_p_supported_currencies.
El pago se realizó, pero el pedido sigue en Pendiente de pago: los callbacks no llegan a tu tienda. Comprueba que Transaction processed callback y Transaction response callback de la integración que usas sean exactamente la URL que aparece en la página de ajustes, y que el HMAC secret sea el de la misma cuenta de Paymob. Los callbacks rechazados se registran como advertencias en WooCommerce > Status > Logs, origen wcp_paymob_pay, incluso si el registro de depuración está desactivado.
El callback responde Invalid signature: el secreto HMAC de los ajustes no coincide con la cuenta de Paymob, o se ha seleccionado la cuenta de otro país. Copia de nuevo el secreto HMAC.
El callback responde Not configured: el secreto HMAC está vacío. Introduce el secreto; Paymob volverá a enviar el callback.
El callback responde locked: otra petición estaba actualizando el pedido en el mismo momento, por ejemplo la vuelta del cliente. Paymob volverá a enviar el callback.
El cliente ve un error al realizar el pedido: activa el Debug log y revisa el registro. Paymob payments are temporarily unavailable significa una clave de API incorrecta o un valor que falta. Paymob could not start the payment significa que Paymob rechazó la solicitud, por ejemplo por un ID de integración incorrecto o datos de facturación incompletos. This order cannot be paid with Paymob significa que el total del pedido es cero.
El pedido queda en espera tras el pago: lee la nota del pedido. El pago está pendiente (en efectivo o en quiosco), la transacción solo se autorizó (captúrala en el panel de control de Paymob), el importe o la moneda no coincidían, o el pago llegó después de que el pedido se cancelara. La nota del pedido explica el motivo.
Pagos de prueba: introduce el ID de una integración de prueba de Paymob en Integration ID y configura las URL de callback en esa integración. Para los pagos reales, vuelve a introducir el ID de tu integración real.
El bloque de licencia muestra un error: sigue el mensaje del bloque. Por ejemplo, si la clave ya se usa en otro dominio, libera un espacio en tu cuenta de vibefox.net y haz clic en Check now. Si cambió la dirección del sitio, haz clic en Check now para activar la clave en el nuevo dominio. Si no se puede acceder al servidor de licencias, el plugin sigue funcionando con el último estado conocido.
Desinstalación
Desactivar el plugin conserva todos los datos. Para eliminarlo, desactívalo y bórralo en la página Plugins. La clave de licencia y el estado de licencia de este plugin siempre se eliminan. Los ajustes de la pasarela y los registros solo se eliminan si Clean uninstall estaba activado; en caso contrario, se conservan para una reinstalación posterior. Los pedidos existentes conservan sus notas de pago, los ID de transacción y los ID de Paymob.
Paymob es una marca comercial de su respectivo propietario. Este plugin no está afiliado a Paymob ni cuenta con su respaldo.
