> ## Documentation Index
> Fetch the complete documentation index at: https://docs.launcherforge.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Integración con WooCommerce

> Instala el plugin de LauncherForge, vincula productos y entrega keys después de confirmar pedidos.

# Integración con WooCommerce

El plugin LauncherForge Commerce for WooCommerce conecta las órdenes de WooCommerce con la entrega de keys de LauncherForge.

<Info>
  WooCommerce administra el checkout, impuestos, métodos de pago, reembolsos y correos al cliente. LauncherForge genera la key. El plugin conecta ambos sistemas.
</Info>

## Qué hace el plugin

```text theme={null}
La orden de WooCommerce queda pagada
        ↓
El plugin identifica productos vinculados a LauncherForge
        ↓
Solicita una key por cada unidad comprada
        ↓
LauncherForge devuelve la entrega y la key
        ↓
El plugin guarda el resultado en la orden
        ↓
WooCommerce incluye la key en los correos del cliente
```

## Requisitos

* WordPress con WooCommerce activo.
* Plugin LauncherForge Commerce for WooCommerce.
* Add-on Commerce API activo.
* Commerce API key completa.
* App ID de LauncherForge para cada producto.
* Protección mediante CD-Key habilitada en cada juego vinculado.

## 1. Instalar el plugin

<Steps>
  <Step title="Abre el instalador de plugins">
    En WordPress, abre **Plugins → Añadir plugin → Subir plugin**.
  </Step>

  <Step title="Sube el ZIP">
    Selecciona `launcherforge-commerce-for-woocommerce.zip`.
  </Step>

  <Step title="Instala y activa">
    Instala el plugin y luego actívalo.
  </Step>
</Steps>

<img src="https://mintcdn.com/launcher-forge/NH6VSyZ-G481NLw_/images/integrations/woocommerce/plugin-upload.png?fit=max&auto=format&n=NH6VSyZ-G481NLw_&q=85&s=235bda68d7b576a3c891990c6496e937" alt="Subir el plugin de LauncherForge" width="1600" height="900" data-path="images/integrations/woocommerce/plugin-upload.png" />

## 2. Configurar la integración

Abre:

```text theme={null}
WooCommerce → Ajustes → Integraciones → LauncherForge Commerce
```

Configura:

| Campo              | Valor                                     |
| ------------------ | ----------------------------------------- |
| Enable integration | Activado                                  |
| API base URL       | `https://backend.launcherforge.io/api/v1` |
| Commerce API key   | Secreto completo mostrado una sola vez    |
| Debug logging      | Activado temporalmente durante pruebas    |

<img src="https://mintcdn.com/launcher-forge/NH6VSyZ-G481NLw_/images/integrations/woocommerce/integration-settings.png?fit=max&auto=format&n=NH6VSyZ-G481NLw_&q=85&s=8240324a765d41651a883586e9e4f658" alt="Configurar LauncherForge Commerce" width="1600" height="900" data-path="images/integrations/woocommerce/integration-settings.png" />

<Warning>
  No pegues solamente el prefijo visible. Un valor como `lf_commerce_live_d122d2cc091f` no es la API key completa.
</Warning>

## 3. Crear el producto

Abre:

```text theme={null}
Productos → Añadir nuevo
```

Configuración recomendada:

| Campo                  | Valor                            |
| ---------------------- | -------------------------------- |
| Tipo de producto       | Producto simple                  |
| Virtual                | Activado                         |
| Descargable            | No es necesario                  |
| Precio normal          | Precio del juego                 |
| LauncherForge delivery | Activado                         |
| LauncherForge App ID   | App ID numérico de LauncherForge |

<img src="https://mintcdn.com/launcher-forge/NH6VSyZ-G481NLw_/images/integrations/woocommerce/product-basic-settings.png?fit=max&auto=format&n=NH6VSyZ-G481NLw_&q=85&s=203f01502a029a4b7f3530e1446b730b" alt="Crear un producto de juego en WooCommerce" width="1600" height="900" data-path="images/integrations/woocommerce/product-basic-settings.png" />

<img src="https://mintcdn.com/launcher-forge/NH6VSyZ-G481NLw_/images/integrations/woocommerce/product-launcherforge-fields.png?fit=max&auto=format&n=NH6VSyZ-G481NLw_&q=85&s=a900d3deabe3349e3547acc21e0815fc" alt="Vincular el producto con el App ID de LauncherForge" width="1600" height="900" data-path="images/integrations/woocommerce/product-launcherforge-fields.png" />

<Note>
  Usa el App ID numérico esperado por Commerce API. No escribas el slug del juego.
</Note>

## 4. Realizar una prueba manual

Para una prueba manual clara:

<Steps>
  <Step title="Crea un pedido">
    Abre **WooCommerce → Pedidos → Añadir pedido**.
  </Step>

  <Step title="Agrega el correo">
    Escribe un correo de facturación.
  </Step>

  <Step title="Agrega el producto">
    Añade el producto vinculado a LauncherForge.
  </Step>

  <Step title="Guarda el pedido">
    Guarda antes de cambiar el estado final.
  </Step>

  <Step title="Márcalo como Completado">
    Cambia el pedido a **Completado** y guarda nuevamente.
  </Step>
</Steps>

<img src="https://mintcdn.com/launcher-forge/NH6VSyZ-G481NLw_/images/integrations/woocommerce/order-completed.png?fit=max&auto=format&n=NH6VSyZ-G481NLw_&q=85&s=2584fbb4a767bfe4b972216a222126e7" alt="Marcar el pedido de prueba como Completado" width="1600" height="900" data-path="images/integrations/woocommerce/order-completed.png" />

<Warning>
  Para pruebas manuales usa **Completado**. En un checkout real, el plugin también escucha la confirmación de pago y transiciones de órdenes pagadas, pero el proveedor de pago controla el flujo exacto de estados.
</Warning>

## 5. Verificar la entrega

Abre el pedido y comprueba:

* Una nota indicando que LauncherForge generó la key.
* La key debajo del producto de la orden.
* El delivery ID de LauncherForge.
* La nueva key dentro de LauncherForge.

<img src="https://mintcdn.com/launcher-forge/NH6VSyZ-G481NLw_/images/integrations/woocommerce/order-generated-key.png?fit=max&auto=format&n=NH6VSyZ-G481NLw_&q=85&s=8777627233086e4da73fda98811a5b99" alt="Key generada dentro del pedido" width="1600" height="900" data-path="images/integrations/woocommerce/order-generated-key.png" />

El cliente también puede verla en:

```text theme={null}
Mi cuenta → Pedidos → Ver
```

<img src="https://mintcdn.com/launcher-forge/NH6VSyZ-G481NLw_/images/integrations/woocommerce/customer-order-key.png?fit=max&auto=format&n=NH6VSyZ-G481NLw_&q=85&s=546d0dcb20ebedd94e6f1ea02e3c242c" alt="Detalle del pedido del cliente con la key" width="1600" height="900" data-path="images/integrations/woocommerce/customer-order-key.png" />

## Entrega por correo

El backend de LauncherForge no envía el correo al comprador en las entregas externas.

El plugin de WooCommerce agrega las keys a los correos del pedido que WooCommerce envía al cliente.

```text theme={null}
Backend de LauncherForge
→ genera y devuelve la key

Plugin de WooCommerce
→ guarda la key en el pedido

WooCommerce
→ envía el correo al cliente
```

<Note>
  La instalación de WordPress debe poder enviar correos. Para producción configura un transporte de correo confiable o un plugin SMTP según tu hosting.
</Note>

## Cantidades

Si el comprador adquiere cantidad `3`, el plugin solicita tres keys.

Cada unidad usa una idempotency key diferente, por lo que los reintentos no duplican licencias.

```text theme={null}
Orden 1001, ítem 72, unidad 1 → key 1
Orden 1001, ítem 72, unidad 2 → key 2
Orden 1001, ítem 72, unidad 3 → key 3
```

## Procesamiento en segundo plano

El plugin programa las entregas mediante WooCommerce Action Scheduler.

Abre:

```text theme={null}
WooCommerce → Estado → Acciones programadas
```

Busca:

```text theme={null}
lf_wc_fulfill_order
```

<img src="https://mintcdn.com/launcher-forge/NH6VSyZ-G481NLw_/images/integrations/woocommerce/scheduled-actions.png?fit=max&auto=format&n=NH6VSyZ-G481NLw_&q=85&s=044dc11e44da5f62804c5e310ad6bfa4" alt="Acción programada de LauncherForge" width="1600" height="900" data-path="images/integrations/woocommerce/scheduled-actions.png" />

Estados posibles:

* Pendiente.
* Completada.
* Fallida.

## Reintentar una entrega

Abre el pedido y usa:

```text theme={null}
Acciones del pedido → Retry LauncherForge key delivery
```

El plugin reutiliza los identificadores idempotentes. Las unidades ya entregadas no vuelven a generarse.

## Logs

Activa **Debug logging** en la configuración y abre:

```text theme={null}
WooCommerce → Estado → Registros
```

Selecciona:

```text theme={null}
launcherforge-commerce
```

<img src="https://mintcdn.com/launcher-forge/NH6VSyZ-G481NLw_/images/integrations/woocommerce/logs.png?fit=max&auto=format&n=NH6VSyZ-G481NLw_&q=85&s=3442190c9450a2cbf6cac3c8232b3602" alt="Logs del plugin LauncherForge" width="1600" height="900" data-path="images/integrations/woocommerce/logs.png" />

El plugin no escribe la Commerce API key ni las keys generadas en el log técnico.

## Problemas comunes

### No aparecen los campos de LauncherForge en el producto

Confirma que:

* WooCommerce esté activo.
* El plugin de LauncherForge esté activo.
* Estés editando un producto de WooCommerce.

### El pedido queda completado, pero no aparece la key

Confirma que:

* La integración esté habilitada.
* La API key completa esté guardada.
* LauncherForge delivery esté habilitado en el producto.
* El App ID sea numérico y correcto.
* La protección mediante CD-Key esté activa.
* El add-on Commerce API esté activo.

Luego revisa Acciones programadas y los logs de WooCommerce.

### `INVALID_COMMERCE_API_KEY`

La credencial guardada es inválida o contiene solamente el prefijo. Regenera la key en LauncherForge y copia el valor completo.

### `EXTERNAL_GAME_NOT_AVAILABLE`

El App ID es incorrecto, el juego pertenece a otro workspace o la protección mediante CD-Key está desactivada.

## Checklist para producción

* Usa primero una tienda de staging.
* Desactiva debug logging después de probar.
* Configura envío confiable de correos en WordPress.
* Prueba el método de pago real en modo sandbox.
* Verifica el correo y la página Mi cuenta.
* Prueba cantidades mayores que uno.
* Repite una actualización de estado para confirmar que no se duplican keys.
* Protege el acceso de administrador de WordPress.
