# Request identity verification API

### Sends OTP number via SMS confirming the user's identity based on the submitted personal information.

## Sends OTP number confirming user's identity via SMS.

<mark style="color:green;">`POST`</mark> `https://api.iamport.kr/certifications/otp/request`

If the user's personal information is passed to the API and verified by the carrier, an OTP (6-digit verification number) is sent to the user via SMS. This is only supported by some merchants who have been pre-approved by the carrier, and is currently only being serviced through **Danal**.&#x20;

You can call the API by directly entering the name, date of birth + 7th digit of social security number, mobile phone number, and carrier information from the merchant. If the transmitted personal information is correct, a verification code SMS is sent to the mobile phone.&#x20;

When you receive an HTTP Status 200 response, it contains the verification ID (`imp_uid`) in the response body. To complete the verification process, call the /certifications/otp/confirm/{imp\_uid} API with the OTP number.

#### Request Body

| Name                                            | Type    | Description                                                                                                                                                                                 |
| ----------------------------------------------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| name<mark style="color:red;">\*</mark>          | String  | <mark style="color:red;">**User name**</mark>                                                                                                                                               |
| phone<mark style="color:red;">\*</mark>         | String  | <p><mark style="color:red;"><strong>Mobile number</strong></mark></p><p>May contain special characters.</p>                                                                                 |
| birth<mark style="color:red;">\*</mark>         | String  | <p><mark style="color:red;"><strong>DOB</strong></mark> </p><p><strong><code>YYYYMMDD (6-digit)</code></strong></p><p>May contain special characters.</p>                                   |
| gender\_digit<mark style="color:red;">\*</mark> | String  | <p><mark style="color:red;"><strong>Gender code</strong></mark> </p><p>7th digit of 13-digit social security number</p>                                                                     |
| carrier<mark style="color:red;">\*</mark>       | String  | <p><mark style="color:red;"><strong>Carrier code</strong></mark></p><p><strong><code>SKT</code></strong></p><p><strong><code>KT</code></strong></p><p><strong><code>LGT</code></strong></p> |
| is\_mvno                                        | Boolean | **Budget phone?**                                                                                                                                                                           |
| company                                         | String  | **Merchant service name**                                                                                                                                                                   |
| merchant\_uid                                   | String  | **Order ID**                                                                                                                                                                                |
| pg                                              | String  | **PG code**                                                                                                                                                                                 |

{% tabs %}
{% tab title="400: Bad Request Missing or invalid parameter error" %}
```javascript
{
    // Response
}
```
{% endtab %}

{% tab title="401: Unauthorized Missing or invalid access token" %}
```javascript
{
    // Response
}
```
{% endtab %}

{% tab title="500: Internal Server Error Danal server error" %}
```javascript
{
    // Response
}
```
{% endtab %}

{% tab title="200: OK Success" %}
{% tabs %}
{% tab title="CertificationOTPResponse" %}
**`code`** <mark style="color:red;">**\***</mark>**&#x20;**<mark style="color:purple;">**integer**</mark>

**Response code**

0: success, Not 0: check the message



**`message`** <mark style="color:red;">**\***</mark>**&#x20;**<mark style="color:green;">**string**</mark>

**Response message**

A non-zero code includes a message like 'Invalid payment info'.



**response&#x20;**<mark style="color:red;">**(CertificationOTPAnnotation, optional)**</mark>
{% endtab %}
{% endtabs %}

{% tabs %}
{% tab title="CertificationOTPAnnotation" %}
**`imp_uid *`` `**<mark style="color:green;">**`String`**</mark>

**`i'mport verification ID`**&#x20;
{% endtab %}
{% endtabs %}
{% endtab %}
{% endtabs %}

### **Key request parameter description**

> **`gender_digit`**<mark style="color:red;">**`*`**</mark><mark style="color:green;">**`String`**</mark>
>
> **`Gender code`**
>
> 7th digit of 13-digit social security number
>
> 1 or 2 for those born before 2000, 3 or 4 those born on or after 2000 (odd: male, even: female)

> **`carrier`**<mark style="color:red;">**`*`**</mark><mark style="color:green;">**`String`**</mark>
>
> **`Carrier code`**&#x20;
>
> For budget phone users, set <mark style="color:red;">**`carrier`**</mark> to one of SKT, KT, or LGT, and set&#x20;
>
> **`is_mvno : true`**&#x20;

> **`company`**<mark style="color:red;">**`*`**</mark><mark style="color:green;">**`String`**</mark>
>
> **`Merchant service name`**&#x20;
>
> Service name to use in the SMS sent by KISA

> **`pg`` `**<mark style="color:green;">**`String`**</mark>
>
> **`PG code`**&#x20;
>
> &#x20;Specify this value as follows only when you are using multiple Danal Merchant IDs.
>
> **danal.{Merchant ID}**

<details>

<summary>Response Model Schema</summary>

```json
{
  "code": 0,
  "message": "string",
  "response": {
    "imp_uid": "string"
  }
}
```

</details>

{% hint style="success" %}
**Swagger Test Link**

[**https://api.iamport.kr/#!/certifications/requestOTP**](https://api.iamport.kr/#!/certifications/requestOTP)
{% endhint %}
