Skip to content

Plugin de WooCommerce

El plugin oficial Genius Checkout for WooCommerce permite a las tiendas WordPress aceptar tarjetas a través de Genius Checkout sin código.

Instalación

  1. Descarga genius-checkout-for-woocommerce.zip desde tu panel de comerciante.
  2. En el admin de WordPress, ve a Plugins → Añadir nuevo → Subir plugin.
  3. Sube el zip y activa.

Configuración

En WooCommerce → Ajustes → Pagos → Genius Checkout, completa:

AjusteDescripción
API KeyTu clave gc_test_ o gc_live_
Webhook SecretDesde la página Webhooks del panel de GC
Send Order DetailsCuando está activo, líneas de pedido, impuestos y descripción fluyen al gateway y al recibo

Qué soporta

  • Productos simples y suscripciones
  • WooCommerce Subscriptions — renovaciones automáticas vía token guardado
  • Block checkout y classic checkout
  • Reembolsos desde el admin de WooCommerce (totales o parciales)
  • Notas privadas detalladas con IDs del gateway y motivos de rechazo

Metadatos almacenados por pedido

El plugin registra los siguientes metadatos en cada pedido pagado de WooCommerce — útiles para soporte, reembolsos y conciliación:

ClaveValor
_gc_session_idID de la sesión de checkout
_gc_transaction_idID de la transacción (usado para reembolsos)
_gc_receipt_numberNúmero de recibo legible
_gc_gateway_transaction_idReferencia subyacente del gateway
_gc_card_brandMarca de la tarjeta (Visa, Mastercard, etc.)
_gc_card_last4Últimos 4 dígitos
_gc_token_idToken reutilizable para renovaciones

Suscripciones

Si WooCommerce Subscriptions está activo, el plugin usa el _gc_token_id guardado para cobrar renovaciones automáticamente según el calendario de WooCommerce. Las renovaciones fallidas siguen tu configuración de dunning.

Reembolsos

En la página de detalle del pedido, pulsa Reembolsar como con cualquier gateway de WooCommerce. El plugin llama a POST /api/v1/payments/{transaction_id}/refund y publica una nota privada con el ID del reembolso.

Tarjetas guardadas (selector en el checkout)

Los clientes de WooCommerce que han iniciado sesión ven una lista de tarjetas guardadas en el checkout, gracias al endpoint GET /api/v1/customers/{external_customer_id}/payment-tokens.

Cómo se cablea dentro del plugin:

  1. El plugin registra el wp_users.ID del comprador como external_customer_id cuando hace checkout por primera vez (mapeamos wp_users.ID → GC customers.external_customer_id).
  2. En el checkout, el plugin llama al endpoint con la clave API del comerciante para obtener la lista de tarjetas. Solo {id, brand, last4, expiry_month, expiry_year} se expone al navegador — el token cifrado se queda en la plataforma.
  3. La selección del comprador (un pt_…) se enhebra en el meta de orden _gc_payment_token_id. Block checkout lo lee vía la extensión registrada de Store API; classic checkout lo lee de un campo de formulario oculto.
  4. Al hacer place-order, el plugin cobra ese token vía POST /api/v1/payments con payment_token_id. Si está vacío, recurre al flujo de redirección hospedada.

La clave API nunca llega al navegador. La búsqueda ocurre en PHP desde el plugin WP, igual que el patrón Controller/Index/Savedcards del módulo de Magento 2.

Para forzar solo el flujo de redirección hospedada (sin UI de tarjetas guardadas), desmarca Mostrar tarjetas guardadas en WooCommerce → Ajustes → Pagos → Genius Checkout. El módulo de Magento 2 lee el mismo ajuste desde su propio panel admin.

Solución de problemas

  • Notas de rechazo aparecen en el log de actividad del pedido con el código ISO del gateway.
  • Entrega de webhooks se puede inspeccionar y reentregar desde la página Webhooks del panel de GC.
  • El log de depuración del plugin está en WooCommerce → Estado → Registros → genius-checkout.

Released under the proprietary Genius Checkout license.