# WebSDK

## **Comenzar**

Para comenzar a rastrear con el SDK web de Offer18, es necesario añadir una etiqueta script en el sitio web.

<mark style="color:morado;">Ubicación : Encabezado (Todas las páginas)</mark>

{% code fullWidth="false" %}

```html
<script src="https://web-resources.offer18.net/sdk/web/WebSDK.js"></script>
```

{% endcode %}

***

Los usuarios deben añadir el siguiente fragmento de código en todas las páginas de destino excepto la página de confirmación de pedido / página de éxito del pedido (Gracias).

<mark style="color:morado;">Ubicación : Encabezado (Todas las páginas)</mark>

```html
<script>
    window.Offer18WebSDK.initializeConversion('<YOUR-CLICK-ID-PARAMETER>');
</script>
```

Después de añadir el script, es necesario agregar el siguiente script en la página de agradecimiento/confirmación de pedido

<mark style="color:morado;">Ubicación : Página de agradecimiento/Página de éxito del pedido (Una página)</mark>

```html
<script>
    window.Offer18WebSDK.trackConversion({
        domain: '',
        accountId: '',
        offerId: '',
        coupon:'',
        postbackType: '', // 'iframe' o 'pixel'
        isGlobalPixel: false, // true o false
        iGamingCampaign: true, // true o false
        allowMultiConversion: false, // true o false
        conversionData: {
            event: '', // Nombre del evento (Por favor especifique el evento)
            payout: '', // Monto de la comisión (Por favor especifique el monto de la comisión)
            sale: '', // Monto de la venta (Por favor especifique el monto de la venta)
            currency: '',
            adv_sub1: '',
            adv_sub2: '',
            adv_sub3: '',
            adv_sub4: '',
            adv_sub5: '',
        },
        userActivityData: {
            'ig-user-id': '',
            'ig-deposit-amount': '',
            'ig-bet-amount': '',
            'ig-win-amount': '',
            'ig-withdrawal-amount': '',
            'ig-bonus-amount': '',
            'ig-product-id': '', 
      }
    })
</script>
```

{% tabs %}
{% tab title="Configuración del objeto - window\.Offer18WebSDK.trackConversion()" %}

1. **domain** (Obligatorio) : Dominio de postback del usuario.
2. **accountId** (Obligatorio) : Id de cuenta de Offer18 del usuario.
3. **offerId** (Obligatorio) : Id de la campaña.
4. **coupon :** Aquí se puede usar el código de cupón
5. **postbackType** : Puede ser cualquiera `'iframe'` o `'pixel'`, el valor predeterminado es `'iframe'`.&#x20;
6. **isGlobalPixel** : El usuario puede configurar el píxel global estableciendo esto `true` , el valor predeterminado es `false`.
7. **iGamingCampaign :** El usuario puede configurar el Postback de iGaming estableciendo esto `true` , el valor predeterminado es `false`.&#x20;
8. **allowMultiConversion** : El usuario puede permitir MultiConversion estableciendo esto `true` , el valor predeterminado es `false`.&#x20;
9. **conversionData** : Este objeto contiene los parámetros que pueden usarse para obtener valores de la red.
10. **userActivityData** : Este objeto contiene los parámetros que se pueden usar para rastrear los datos de actividad del usuario de iGaming
    {% endtab %}
    {% endtabs %}

{% hint style="info" %}
**ID de usuario** (ig-user-id) es obligatorio pasarlo en el Postback de iGaming
{% endhint %}

#### **Código de ejemplo**

```html
<script>
    window.Offer18WebSDK.trackConversion({
        domain: 'example.o18.link',
        accountId: '0000',
        offerId: '00000000',
        iGamingCampaign: true,
        userActivityData: {
            'ig-user-id': 'Customer12',
            'ig-deposit-amount': '12',
            'ig-bet-amount': '5',
            'ig-win-amount': '5',
            'ig-withdrawal-amount': '10',
            'ig-bonus-amount': '5'
            'ig-product-id': 'ludo12', 
      }
    });
</script>
```

***

## Modo de depuración

Para habilitar el modo de depuración en un SDK, se puede añadir el siguiente código dentro de su script:

```html
<script>
    window.Offer18WebSDK.activateDebugMode();
</script>
```

Habilitar el modo de depuración permite al usuario obtener información más detallada sobre el funcionamiento del SDK, incluidos errores o mensajes de depuración.
