# 2. Request verification

### The credit card identity verification window can be invoked in the following two modes:

> **Popup** (Default)
>
> Opens the identity verification popup window. When verification is complete, post-processing is performed through the `callback` function specified as the second argument of `IMP.certification`.

> **Redirection** (applicable in **mobile** environment only)
>
> Redirects to the identity verification page by setting `param.popup` to <mark style="color:red;">**`false`**</mark>`(default)` in a mobile environment. When verification is complete, the page is redirected back to the URL specified by `param.m_redirect_url`.&#x20;
>
> To use the popup (default) mode, set `param.popup` to <mark style="color:red;">**`true`**</mark>.
>
> In environments where **popups are blocked, such as WebView**, it is recommended to set `popup` to `false`.

The following example calls the JavaScript SDK [**IMP.certification**](https://portone.gitbook.io/docs-en/sdk/javascript-sdk/identity-verification-request-parameters) function to open the credit card identity verification window.

{% tabs %}
{% tab title="JavaScript" %}
{% code title="client-side" %}

```javascript
// Call IMP.certification(param, callback)
IMP.certification({ // param
    merchant_uid: "ORD20180131-0000011", // Order ID
    m_redirect_url : "{Redirect URL}", // Required when popup:false in mobile, Example: https://www.myservice.com/payments/complete/mobile
    popup : false // Always set to true in PC
  }, function (rsp) { // callback
    if (rsp.success) {
      ...,
      // When verification is successful,
      ...
    } else {
      ...,
      // When verification fails,
      ...
    }
  });
```

{% endcode %}
{% endtab %}

{% tab title="ES Next" %}
{% code title="client-side" %}

```javascript
  // Call IMP.certification(param, callback)
  IMP.certification({ // param
    merchant_uid: "ORD20180131-0000011", // Order ID
    m_redirect_url : "{Redirect URL}", // Required when popup:false in mobile, Example: https://www.myservice.com/payments/complete/mobile
    popup : false // Always set to true in PC
  }, rsp => { // callback
    if (rsp.success) {
      ...,
      // When verification is successful,
      ...
    } else {
      ...,
      // When verification fails,
      ...
    }
  });
```

{% endcode %}
{% endtab %}
{% endtabs %}
