> For the complete documentation index, see [llms.txt](https://help.checkoutchamp.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://help.checkoutchamp.com/crm/gateway-setup/gateway-integrations/solid.md).

# Solid

**STEP 1**

Obtain **publicKey** and **secretKey** from Solid.

Go to **Gateways** | **Gateway Integrations.**  Select the Solid tile. Click on <mark style="color:green;">**+ Activate**</mark>.

<figure><img src="/files/alRfoyD3iXMRxlRqzB6z" alt="" width="375"><figcaption></figcaption></figure>

Enter **publicKey** and **secretKey**.

Choose to force **Secure3DS** for all checkouts.  Solid may request a 3DS challenge even with this set to No.  The checkout page must handle a 3DS challenge (Step 4 below).

<figure><img src="/files/oJUmSRB8UwTW31hHSDle" alt=""><figcaption></figcaption></figure>

Click the green <mark style="color:green;">**Create Gateway**</mark> button to save your changes and create the gateway.

{% hint style="info" %}
Steps 2-4 can be skipped if using Checkout Champ hosted pages.
{% endhint %}

**STEP 2**

Add the hidden input browserData inside of the same form as the card input.

`<input type="hidden" name="browserData" value="" id="browserData">`

&#x20;

**STEP 3**

Add this script to your page before the closing body tag.

```
Script to get browserData:
<script type="text/javascript">
    const navigator = window.navigator;
    const browserData = {
        acceptHeader: 'application/json',
        userAgent: navigator.userAgent,
        language: navigator.language,
        timezone: (new Date()).getTimezoneOffset().toString(),
        colorDepth: screen.colorDepth,
        screen: {
            height: screen.height.toString(),
            width: screen.width.toString()
        },
        javaScriptEnabled: true,
        javaEnabled: navigator.javaEnabled()
    };
    document.getElementById('browserData').value = JSON.stringify(browserData);
</script>
```

**STEP 4**

Ensure the checkout page supports the standard 3DS workflow

[Basic 3DS Instructions](/crm/gateway-setup/direct-api-3ds-instructions.md)
