# eMerchantPay V3

{% hint style="danger" %}
Do not create a new eMerchantPay or eMerchantPay V2 gateway. Use only the V3 gateway.
{% endhint %}

<figure><img src="https://1103784913-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FiAC0G99SjXjSv2GM5PAE%2Fuploads%2F5OOsEAA2Cj1oEtdosQcw%2FUntitled.png?alt=media&#x26;token=4d4c7b52-ee68-4882-912b-c02b6fe1bc3d" alt="" width="375"><figcaption></figcaption></figure>

**Step 1**

Activate the eMerchantPay V3 gateway tile

**Step 2**

Enter eMerchantPay V3 credentials on your account

<figure><img src="https://1103784913-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FiAC0G99SjXjSv2GM5PAE%2Fuploads%2FqhCTc3mQ0MMHpLqzMo3F%2FUntitled-1.png?alt=media&#x26;token=c590d307-1c3b-4c38-8af1-414075edbd12" alt="" width="375"><figcaption></figcaption></figure>

Enter **username** and **password** from your eMerchantPay account

Check the **enhancedRebill** box to process using eMerchantPay’s new recurring workflow. This workflow passes the recurring\_type parameter.

Obtain tokens from eMerchantPay and enter the values that correspond to your transaction processing requirements.

* **terminalToken3DS** is required when **secure3DS** is set to Yes
* **terminalTokenNon3DS** is required when **secure3DS** is set to No
* **terminalTokenRebill** is required to rebill. It is also required to process upsells using a token (without this upsells will be run with the card).
* **terminalTokenAPM** is required to process Bancontact, iDEAL, P24, and EPS. Enter the name of the payment method, a colon (:), and the terminal token for the payment type. Enter a new line for each type. The final result will look something like this (do not copy this as the tokens in this screenshot are dummy):

<figure><img src="https://1103784913-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FiAC0G99SjXjSv2GM5PAE%2Fuploads%2F92nL0phz8BLDNbbaWIex%2FUntitled.png?alt=media&#x26;token=ea82cb81-8b5c-47c5-95e9-6ff6ccdfe55c" alt=""><figcaption></figcaption></figure>

&#x20;If using ApplePay or GooglePay then include similar for each in **terminalTokenAPM**. These payment methods require a separate entry if rebills will be processed through Apple or Google. However the value may be the same (for example, APPLEPAY and APPLEPAY\_REBILL may be the same token, and there must be an entry for each if recurring transactions are needed).

* APPLEPAY:xxxxxxxxxxxxxxxxxxxx
* APPLEPAY\_REBILL:xxxxxxxxxxxxxxxxxxxx
* GOOGLEPAY:xxxxxxxxxxxxxxxxxx
* GOOGLEPAY\_REBILL:xxxxxxxxxxxxxxxxxx

**Step 3**

Please follow the below instructions to setup eMerchantPay on your checkout page and pass browserData on the Import Order API call

Add a hidden input for

`browserData`.

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

Add below script before the closing “body” tag.

```
<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**

For 3DS your checkout page must support the standard 3DS workflow

[Basic 3DS Instructions](https://help.konnektive.com/konnektive-crm/gateway-setup/basic-3ds-instructions)
