> ## Documentation Index
> Fetch the complete documentation index at: https://developers.argosidentity.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Warning Codes and Fields

> Trigger conditions for each WarningOccurred value, the warning[] field mapping, and how to use the values in Custom Policy.

<div style={{paddingLeft: '2rem', paddingRight: '2rem'}}>
  ## Overview

  KYC validation branches into **Reject / Retry / Warning** based on the result. **Warning** skips only the affected check and continues the KYC flow — nothing is blocked and the user is not asked to retake the photo; only a record is left.

  The accumulated Warning records appear in the `warning[]` array of the [GET Submission API](/en/idcheck/api-reference/api-reference-guide/get-submission) response. Each element contains the fields `userDataType`, `relatedEngine`, and `occurrenceTime`. Customers can pick these values up with the **"Warning Occurred" trigger** in [Custom Policy](/dashboard/en/project-management/policy-and-authentication/kyc-process) to apply post-processing such as ARGOS Score deductions, Pending status, or Reject.

  This page lists the 11 `WarningOccurred` values produced by the liveform, grouped by the mechanism that generates them, the field combination each value exposes in `warning[]`, and the dashboard option that controls it.

  ## warning\[] Field Schema

  <div style={{overflowX: 'auto', width: '100%'}}>
    | Field                       | Type   | Description                                                                                      |
    | --------------------------- | ------ | ------------------------------------------------------------------------------------------------ |
    | `warning[i].userDataType`   | String | Type of input data that triggered the warning (e.g. `ID Card`, `ID_card_uploaded`, `User Input`) |
    | `warning[i].relatedEngine`  | String | Name of the engine or validation stage that produced the warning                                 |
    | `warning[i].occurrenceTime` | String | Time the warning was raised (ISO 8601)                                                           |
  </div>

  <Info>
    For the full response field definitions, see [GET Submission response fields](/en/idcheck/api-reference/api-reference-guide/get-submission-response-fields).
  </Info>

  ## Group A — ID Liveness Upload-mode Warnings

  In the ID Liveness policy, when a pipeline (**Screen replay / Paper printed / Replace portraits**) is set to **Retry** and the sub-option **"Apply Warning on Upload"** is enabled, the Retry decision is converted to a Warning **only when the user submitted via Upload mode**. Upload mode does not allow re-capture, so the flow continues with a Warning instead of forcing a Retry.

  <div style={{overflowX: 'auto', width: '100%'}}>
    | WarningOccurred                 | Pipeline          | Trigger condition                                                 | userDataType       | relatedEngine                   |
    | ------------------------------- | ----------------- | ----------------------------------------------------------------- | ------------------ | ------------------------------- |
    | `id_liveness_screen_replay`     | Screen replay     | Screen replay pipeline hits Retry, submission via Upload mode     | `ID_card_uploaded` | `ID Liveness Screen replay`     |
    | `id_liveness_paper_printed`     | Paper printed     | Paper printed pipeline hits Retry, submission via Upload mode     | `ID_card_uploaded` | `ID Liveness Paper printed`     |
    | `id_liveness_replace_portraits` | Replace portraits | Replace portraits pipeline hits Retry, submission via Upload mode | `ID_card_uploaded` | `ID Liveness Replace portraits` |
  </div>

  <Tip>
    See the April 2026 update — [ID Liveness Upload-mode automatic Warning conversion](/en/idcheck/notices/2026-04-update) — and the [Anti-Fraud & Forgery Prevention](/dashboard/en/project-management/policy-and-authentication/anti-fraud-and-forgery-prevention) dashboard guide for configuration details.
  </Tip>

  ## Group B — Expiry-validation Warnings

  When the dashboard option for ID expiry / passport stay expiry is set to **Warning**, the submission is not auto-rejected; instead it is Approved with a Warning record.

  <div style={{overflowX: 'auto', width: '100%'}}>
    | WarningOccurred                          | Trigger condition                                                                                                                                                      | userDataType             | relatedEngine                  |
    | ---------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------ | ------------------------------ |
    | `expired_id`                             | The **Expired ID** option is set to Warning, and either the OCR expiry date or the user-input expiry date is in the past — Step 1 / Step 2 expiry blocking is bypassed | `ID Card` / `User Input` | `Expiry validation`            |
    | `gov_verification_passport_expired_stay` | Korean government verification finds the passport's stay-period expiry (`expiryDateOfStayKor`, registered with the Ministry of Justice) is in the past                 | `User Input`             | `KOR Gov Passport stay expiry` |
  </div>

  <Tip>
    For the Retry / Warning behavior of the Expired ID option, see the April 2026 update — [Expired ID post-processing options](/en/idcheck/notices/2026-04-update). For the stay-period expiry field, see [`expiryDateOfStayKor`](/en/idcheck/api-reference/api-reference-guide/get-submission-response-fields).
  </Tip>

  ## Group C — Engine-error Warning Conversion

  For **ID Liveness · Selfie Passive Liveness · Korean government verification** engines, the dashboard provides an **Error Handling Method** setting. When this is set to **Warning** the flow does not redirect to the engine-specific error page (`SE-5002x` / `SE-5003x`); the affected check is skipped and a Warning record is left instead.

  <div style={{overflowX: 'auto', width: '100%'}}>
    | WarningOccurred                        | Mapped error code | Engine                                                   |
    | -------------------------------------- | ----------------- | -------------------------------------------------------- |
    | `id_liveness_engine_error_warning`     | `SE-50020`        | ID Liveness                                              |
    | `selfie_liveness_engine_error_warning` | `SE-50021`        | Selfie Passive Liveness                                  |
    | `kor_gov_rrc_error_warning`            | `SE-50030`        | KOR government verification — Resident Registration Card |
    | `kor_gov_drvlic_error_warning`         | `SE-50031`        | KOR government verification — Driver's License           |
    | `kor_gov_passport_error_warning`       | `SE-50032`        | KOR government verification — Passport                   |
    | `kor_gov_foreign_error_warning`        | `SE-50033`        | KOR government verification — Alien Registration Card    |
  </div>

  <Note>
    Face Compare engine errors (`SE-50022`) are **Error-only** and cannot be converted to Warning. Matching the selfie to the ID photo is core to KYC integrity, so no skip branch is provided.
  </Note>

  <Tip>
    For configuration, see the May 2026 update — [Error Handling Method — Warning conversion & Custom Policy integration](/en/idcheck/notices/2026-05-update) — and the [Anti-Fraud & Forgery Prevention](/dashboard/en/project-management/policy-and-authentication/anti-fraud-and-forgery-prevention) dashboard guide. For the full SE error code mapping, see [Error codes and pages](/en/idcheck/reference_tables/Error-codes-and-pages).
  </Tip>

  ## Using Warnings in Custom Policy

  Each item recorded in `warning[]` can be picked up by the **Custom Policy → Trigger → "Warning Occurred"** condition in the [KYC Process dashboard](/dashboard/en/project-management/policy-and-authentication/kyc-process), and acted on with a post-processing step.

  ### Matching conditions

  Conditions are built from combinations of `userDataType` and `relatedEngine`. Examples:

  <div style={{overflowX: 'auto', width: '100%'}}>
    | Match target                                                                   | Meaning                                                           |
    | ------------------------------------------------------------------------------ | ----------------------------------------------------------------- |
    | `userDataType = ID Card`, `relatedEngine = Expiry validation`                  | Warning raised from ID-document OCR expiry date                   |
    | `userDataType = ID_card_uploaded`, `relatedEngine = ID Liveness Screen replay` | Screen-replay liveness Warning produced by Upload-mode submission |
    | `relatedEngine = SE-50020` (or engine name `ID Liveness`)                      | ID Liveness engine-error Warning conversion                       |
  </div>

  ### Applicable post-actions

  * ARGOS Score deduction (e.g. -10 to -30)
  * Switch the result to **Pending** for manual admin review
  * **Reject** the submission
  * Default pass-through (when no policy applies)

  <Info>
    The Trigger list, operators, and action composition in Custom Policy are documented in the [KYC Process](/dashboard/en/project-management/policy-and-authentication/kyc-process) dashboard guide.
  </Info>

  ## Related Documents

  * [GET Submission response fields](/en/idcheck/api-reference/api-reference-guide/get-submission-response-fields) — `warning[]` schema and other response fields
  * [Error codes and pages](/en/idcheck/reference_tables/Error-codes-and-pages) — SE error pages used when Error Handling Method is set to Error
  * [Reject codes and Retry codes](/en/idcheck/reference_tables/reject-codes-and-comments) — Reject and Retry branch codes
  * [April 2026 update](/en/idcheck/notices/2026-04-update) — Introduction of Expired ID / ID Liveness Upload-mode Warning
  * [May 2026 update](/en/idcheck/notices/2026-05-update) — Introduction of engine-error Warning conversion
</div>
