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

# Phone Insights

> Phone Insights is a module that verifies phone numbers against identity data such as a name and DOB

It spans two use case types across 12 variants:

* **Identity verification**: confirms the phone number is associated with the stated identity.
* **Fraud verification**: checks whether the mobile number shows fraud signals such asSIM swap, number recycling, and so on.

The module covers US, UK, Germany, France, Spain, and Canada.

<AccordionGroup>
  <Accordion title="US phone verification">
    This variant performs phone-to-name (N2P) matching. It checks whether the submitted phone number is associated with the stated identity.

    | Detail          | Value                   |
    | --------------- | ----------------------- |
    | Required inputs | Full name, mobile phone |

    ## Capabilities

    This variant returns a phone match result alongside risk signals that describe the number itself.

    ### Result capabilities

    | Code                     | Label                   | Description                                                  |
    | ------------------------ | ----------------------- | ------------------------------------------------------------ |
    | `idphone.match`          | ID phone matched        | The phone number is associated with the stated identity.     |
    | `idphone.does.not.match` | ID phone does not match | The phone number is not associated with the stated identity. |
    | `idphone.not.available`  | ID phone not available  | No phone data could be located.                              |

    ### Risk capabilities

    | Code                              | Label                 | Description                                             |
    | --------------------------------- | --------------------- | ------------------------------------------------------- |
    | `resultcode.invalid.phone.number` | Invalid phone number  | The submitted phone number is not valid.                |
    | `resultcode.phone.data.exists`    | Phone data exists     | Phone data was found for the number.                    |
    | `idphone.name.match`              | ID phone name matched | The name associated with the phone number matches.      |
    | `idphone.proximity`               | ID phone proximity    | The phone number is in proximity to the stated address. |
    | `idphone.pager`                   | ID phone pager        | The number is a pager, not a phone.                     |
    | `idphone.wireless`                | ID phone wireless     | The number is a wireless/mobile number.                 |

    This variant also returns Trust USA risk and result capabilities. These use the same enumset documented under [US: Source 1 (Legacy)](/docs/go-v1/platform/modules/data/data-verification#us-source-1-legacy) on the Data Verification page.

    ## Default outcomes

    | Outcome            | Condition                                                                                       | Description                                                                    |
    | ------------------ | ----------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------ |
    | `Verified`         | Result includes `idphone.match`                                                                 | The phone number is confirmed as associated with the identity.                 |
    | `Not Verified`     | Result includes `idphone.does.not.match` **or** risk includes `resultcode.invalid.phone.number` | The phone number does not match the identity, or the number itself is invalid. |
    | `Could Not Locate` | Result includes `idphone.not.available`                                                         | No phone data could be found for the submitted number.                         |
    | `ERROR`            | Default (no conditions matched)                                                                 | An unexpected error occurred.                                                  |

    ## Input payload

    The following is a sample payload used to submit subject details to the **US phone verification** variant for processing.

    ```json JSON theme={null}
    {
      "resourceId": "<resourceId>",
      "context": {
        "subject": {
          "identity": {
            "firstName": "John",
            "lastNames": ["Doe"],
            "dateOfBirth": "1975-02-28",
            "emails": [
              {
                "type": "email",
                "email": "joe@target.com"
              }
            ],
            "phones": [
              {
                "type": "mobile",
                "number": "7707779999"
              }
            ],
            "currentAddress": {
              "lines": ["222333 PEACHTREE PLACE"],
              "locality": "ATLANTA",
              "dependentLocality": "GA",
              "postalCode": "30318",
              "country": "US"
            }
          }
        }
      }
    }
    ```

    | Field                                       | Required | Description                                       |
    | ------------------------------------------- | -------- | ------------------------------------------------- |
    | `identity.firstName`                        | Yes      | First name of the subject.                        |
    | `identity.lastNames`                        | Yes      | Array containing the last name(s) of the subject. |
    | `identity.phones[].type`                    | Yes      | Type of phone number (for example, `"mobile"`).   |
    | `identity.phones[].number`                  | Yes      | Phone number of the subject.                      |
    | `identity.dateOfBirth`                      | No       | Date of birth in `YYYY-MM-DD` format.             |
    | `identity.emails[].type`                    | No       | Type of email address (for example, `"email"`).   |
    | `identity.emails[].email`                   | No       | Email address of the subject.                     |
    | `identity.currentAddress.lines`             | No       | Array of address lines. Accepts up to 2 items.    |
    | `identity.currentAddress.locality`          | No       | Town or city.                                     |
    | `identity.currentAddress.dependentLocality` | No       | State or region.                                  |
    | `identity.currentAddress.postalCode`        | No       | Postal or ZIP code.                               |
    | `identity.currentAddress.country`           | No       | Country code (for example, `"US"`).               |

    ## Sample response

    The following is a sample response for a verified phone number.

    ```json JSON theme={null}
    {
      "response": {
        "advice": {
          "equals": {
            "n2p_risk_capabilities": ["idphone.wireless"],
            "n2p_result_capabilities": ["idphone.match"],
            "trust_usa_risk_capabilities": [],
            "trust_usa_result_capabilities": []
          }
        },
        "outcome": "Verified"
      }
    }
    ```
  </Accordion>

  <Accordion title="US mobile insights">
    This variant evaluates mobile account intelligence. It checks the status, type, and recent change history of a mobile number to surface fraud signals.

    Unlike US phone verification, which answers “does this phone belong to this person?”, mobile insights answers “is this phone account behaving normally?”.

    | Detail          | Value        |
    | --------------- | ------------ |
    | Required inputs | Mobile phone |
    | Optional inputs | Full name    |

    ## Capabilities

    This variant returns the mobile account verification result alongside risk signals about the account's status, type, and recent changes.

    ### Result capabilities

    | Code                              | Label          | Description                                               |
    | --------------------------------- | -------------- | --------------------------------------------------------- |
    | `mobile.attribute.verify.success` | Verify success | The mobile account attributes were successfully verified. |
    | `mobile.attribute.verify.failure` | Verify failure | The mobile account attributes could not be verified.      |

    ### Risk capabilities

    | Code                                           | Label                      | Description                                                  |
    | ---------------------------------------------- | -------------------------- | ------------------------------------------------------------ |
    | `resultcode.mobile.account.status.absent`      | Account status absent      | No account status data is available for this number.         |
    | `resultcode.mobile.account.status.active`      | Account status active      | The mobile account is active.                                |
    | `resultcode.mobile.account.status.deactivated` | Account status deactivated | The mobile account has been deactivated.                     |
    | `resultcode.mobile.account.status.suspended`   | Account status suspended   | The mobile account is suspended.                             |
    | `resultcode.mobile.account.type.postpaid`      | Account type postpaid      | The account is a postpaid (contract) account.                |
    | `resultcode.mobile.account.type.prepaid`       | Account type prepaid       | The account is a prepaid account.                            |
    | `resultcode.mobile.account.type.unknown`       | Account type unknown       | The account type could not be determined.                    |
    | `resultcode.mobile.change.event.device`        | Device change event        | A device change was recently detected on this number.        |
    | `resultcode.mobile.change.event.number`        | Number change event        | A number change was recently detected.                       |
    | `resultcode.mobile.change.event.ported`        | Ported change event        | The number was recently ported to a different carrier.       |
    | `resultcode.mobile.change.event.simswap`       | SIM swap change event      | A SIM swap was recently detected — a strong fraud indicator. |
    | `resultcode.mobile.change.event.status`        | Status change event        | The account status recently changed.                         |
    | `resultcode.mobile.service.not.available`      | Service not available      | The mobile insights service is unavailable.                  |
    | `resultcode.mobile.id.age.alert`               | Mobile ID age alert        | The mobile identity age raises a concern.                    |

    This variant also returns Trust USA risk and result capabilities. These use the same enumset documented under [US: Source 1 (Legacy)](/docs/go-v1/platform/modules/data/data-verification#us-source-1-legacy) on the Data Verification page.

    ## Default outcomes

    | Outcome   | Condition                                                                                                             | Description                                               |
    | --------- | --------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------- |
    | `Caution` | Risk includes `resultcode.mobile.account.status.absent` **or** risk includes `resultcode.mobile.account.type.unknown` | Insufficient mobile account data to make a determination. |
    | `Proceed` | Result includes `mobile.attribute.verify.success`                                                                     | Mobile account attributes verified successfully.          |
    | `Fail`    | Result includes `mobile.attribute.verify.failure`                                                                     | Mobile account verification failed.                       |
    | `ERROR`   | Default (no conditions matched)                                                                                       | An unexpected error occurred.                             |

    ## Input payload

    The following is a sample payload used to submit subject details to the **US mobile insights** variant for processing.

    ```json JSON theme={null}
    {
      "resourceId": "<resourceId>",
      "context": {
        "subject": {
          "identity": {
            "firstName": "John",
            "lastNames": ["Doe"],
            "dateOfBirth": "1975-02-28",
            "emails": [
              {
                "type": "email",
                "email": "joe@target.com"
              }
            ],
            "phones": [
              {
                "type": "phone",
                "number": "9193740211"
              }
            ],
            "currentAddress": {
              "lines": ["222333 PEACHTREE PLACE"],
              "locality": "ATLANTA",
              "dependentLocality": "GA",
              "postalCode": "30318",
              "country": "US"
            }
          }
        }
      }
    }
    ```

    | Field                                       | Required | Description                                       |
    | ------------------------------------------- | -------- | ------------------------------------------------- |
    | `identity.phones[].type`                    | Yes      | Type of phone number (for example, `"phone"`).    |
    | `identity.phones[].number`                  | Yes      | Phone number of the subject.                      |
    | `identity.firstName`                        | No       | First name of the subject.                        |
    | `identity.lastNames`                        | No       | Array containing the last name(s) of the subject. |
    | `identity.dateOfBirth`                      | No       | Date of birth in `YYYY-MM-DD` format.             |
    | `identity.emails[].type`                    | No       | Type of email address (for example, `"email"`).   |
    | `identity.emails[].email`                   | No       | Email address of the subject.                     |
    | `identity.currentAddress.lines`             | No       | Array of address lines. Accepts up to 2 items.    |
    | `identity.currentAddress.locality`          | No       | Town or city.                                     |
    | `identity.currentAddress.dependentLocality` | No       | State or region.                                  |
    | `identity.currentAddress.postalCode`        | No       | Postal or ZIP code.                               |
    | `identity.currentAddress.country`           | No       | Country code (for example, `"US"`).               |

    ## Sample response

    The following is a sample response where insufficient mobile account data returned a Caution outcome.

    ```json JSON theme={null}
    {
      "response": {
        "advice": {
          "equals": {
            "ma_risk_capabilities": ["resultcode.mobile.account.status.absent"],
            "ma_result_capabilities": ["mobile.attribute.verify.success"],
            "trust_usa_risk_capabilities": [],
            "trust_usa_result_capabilities": []
          }
        },
        "outcome": "Caution"
      }
    }
    ```
  </Accordion>

  <Accordion title="UK Mobile Identity Verification">
    This variant verifies identity data against UK mobile network records. It uses field-level match flags with `partial match` support across name, DOB, address, and mobile number capabilities.

    | Detail          | Value                                                                  |
    | --------------- | ---------------------------------------------------------------------- |
    | Required inputs | First name, last name, current address with country code, mobile phone |
    | Optional inputs | Date of birth, middle names                                            |

    ## Capabilities

    This variant returns field-level match flags for each identity element checked against the mobile network record.

    ### Name match flags

    | Capability              | Values                                                                                   | Description                                |
    | ----------------------- | ---------------------------------------------------------------------------------------- | ------------------------------------------ |
    | First name match result | `match`, `mismatch`, `partial match`, `not available`, `unrecognised value`, `no result` | Match result for the subject's first name. |
    | Last names match result | Same values                                                                              | Match result for the subject's last name.  |

    ### Address match flags

    | Capability                           | Values                                                                                   | Description                           |
    | ------------------------------------ | ---------------------------------------------------------------------------------------- | ------------------------------------- |
    | Current address overall match result | `match`, `mismatch`, `partial match`, `not available`, `unrecognised value`, `no result` | Overall address match result.         |
    | Building match result                | Same values                                                                              | Match result for the building number. |
    | Premise match result                 | Same values                                                                              | Match result for the property number. |
    | Thoroughfare match result            | Same values                                                                              | Match result for the street name.     |
    | Locality match result                | Same values                                                                              | Match result for the city or town.    |
    | Postal code match result             | Same values                                                                              | Match result for the postal code.     |

    ### Other match flags

    | Capability                 | Values                                                                                   | Description                                            |
    | -------------------------- | ---------------------------------------------------------------------------------------- | ------------------------------------------------------ |
    | Date of birth match result | `match`, `mismatch`, `partial match`, `not available`, `unrecognised value`, `no result` | Match result for DOB.                                  |
    | Mobile phone match result  | `match`, `mismatch`, `not available`, `unrecognised value`, `no result`                  | Whether the mobile number matched the identity record. |

    ## Default outcomes

    `partial match` is accepted as a positive match for all fields.

    | Outcome                  | Condition                                                                                                                                                | Description                                                             |
    | ------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------- |
    | `Identity Match`         | First name is `match`/`partial match` and last name is `match`/`partial match` and DOB is `match`/`partial match` and address is `match`/`partial match` | All four elements confirmed.                                            |
    | `Partial Identity Match` | First name is `match`/`partial match` and last name is `match`/`partial match` and DOB or address is `match`/`partial match`                             | Name confirmed plus either DOB or address, but not all four.            |
    | `Could Not Locate`       | First name is `not available` **or** mobile phone is `mismatch`                                                                                          | The identity could not be found, or the phone number itself mismatched. |
    | `Identity Mismatch`      | Default (no conditions matched)                                                                                                                          | The subject could not be verified.                                      |

    ## Input payload

    The following is a sample payload used to submit subject details to the **UK Mobile Identity Verification** variant for processing.

    ```json JSON theme={null}
    {
      "resourceId": "<resourceId>",
      "context": {
        "subject": {
          "identity": {
            "firstName": "John",
            "lastNames": ["Doe"],
            "dateOfBirth": "1990-03-26",
            "phones": [
              {
                "type": "mobile",
                "number": "+447700000000"
              }
            ],
            "currentAddress": {
              "premise": "0",
              "thoroughfare": "The Street",
              "locality": "Anyton",
              "postalCode": "AA1 1AA",
              "country": "GBR"
            }
          }
        }
      }
    }
    ```

    | Field                                  | Required | Description                                                             |
    | -------------------------------------- | -------- | ----------------------------------------------------------------------- |
    | `identity.firstName`                   | Yes      | First name of the subject.                                              |
    | `identity.lastNames`                   | Yes      | Array containing the last name(s) of the subject.                       |
    | `identity.phones[].type`               | Yes      | Type of phone number. Must be `"mobile"`.                               |
    | `identity.phones[].number`             | Yes      | Mobile number in international format (for example, `"+447700000000"`). |
    | `identity.currentAddress.thoroughfare` | Yes      | Street name.                                                            |
    | `identity.currentAddress.locality`     | Yes      | Town or city.                                                           |
    | `identity.currentAddress.postalCode`   | Yes      | Postal code.                                                            |
    | `identity.currentAddress.country`      | Yes      | Three-letter country code (for example, `"GBR"`).                       |
    | `identity.dateOfBirth`                 | No       | Date of birth in `YYYY-MM-DD` format.                                   |
    | `identity.middleNames`                 | No       | Array containing the subject's middle name(s).                          |
    | `identity.currentAddress.premise`      | No       | Property or building number.                                            |

    ## Sample response

    The following is a sample response where the subject could not be located in the mobile network records.

    ```json JSON theme={null}
    {
      "response": {
        "advice": {
          "contains": {}
        },
        "outcome": "Could Not Locate"
      }
    }
    ```
  </Accordion>

  <Accordion title="Germany Mobile Identity Verification">
    This variant verifies identity data against German mobile network records. Capabilities and default outcomes are the same as [UK Mobile Identity Verification](#uk-mobile-identity-verification).

    | Detail          | Value                                                                  |
    | --------------- | ---------------------------------------------------------------------- |
    | Required inputs | First name, last name, current address with country code, mobile phone |
    | Optional inputs | Date of birth, middle names                                            |

    ## Input payload

    The following is a sample payload used to submit subject details to the **Germany Mobile Identity Verification** variant for processing.

    ```json JSON theme={null}
    {
      "resourceId": "<resourceId>",
      "context": {
        "subject": {
          "identity": {
            "firstName": "John",
            "middleNames": ["David"],
            "lastNames": ["Doe"],
            "dateOfBirth": "1990-03-26",
            "phones": [
              {
                "type": "mobile",
                "number": "+447795111111"
              }
            ],
            "currentAddress": {
              "premise": "1A",
              "thoroughfare": "The Street",
              "locality": "Anyton",
              "postalCode": "AA1 1AA",
              "country": "GBR"
            }
          }
        }
      }
    }
    ```

    | Field                                  | Required | Description                                                             |
    | -------------------------------------- | -------- | ----------------------------------------------------------------------- |
    | `identity.firstName`                   | Yes      | First name of the subject.                                              |
    | `identity.lastNames`                   | Yes      | Array containing the last name(s) of the subject.                       |
    | `identity.phones[].type`               | Yes      | Type of phone number. Must be `"mobile"`.                               |
    | `identity.phones[].number`             | Yes      | Mobile number in international format (for example, `"+447795111111"`). |
    | `identity.currentAddress.thoroughfare` | Yes      | Street name.                                                            |
    | `identity.currentAddress.locality`     | Yes      | Town or city.                                                           |
    | `identity.currentAddress.postalCode`   | Yes      | Postal code.                                                            |
    | `identity.currentAddress.country`      | Yes      | Three-letter country code (for example, `"GBR"`).                       |
    | `identity.dateOfBirth`                 | No       | Date of birth in `YYYY-MM-DD` format.                                   |
    | `identity.middleNames`                 | No       | Array containing the subject's middle name(s).                          |
    | `identity.currentAddress.premise`      | No       | Property or building number.                                            |

    ## Sample response

    The following is a sample response for a confirmed identity match.

    ```json JSON theme={null}
    {
      "response": {
        "advice": {
          "contains": {}
        },
        "outcome": "Identity Match"
      }
    }
    ```
  </Accordion>

  <Accordion title="France Mobile Identity Verification">
    This variant verifies identity data against French mobile network records. Capabilities and default outcomes are the same as [UK Mobile Identity Verification](#uk-mobile-identity-verification).

    | Detail          | Value                                                                  |
    | --------------- | ---------------------------------------------------------------------- |
    | Required inputs | First name, last name, current address with country code, mobile phone |
    | Optional inputs | Date of birth, middle names                                            |

    ## Input payload

    The following is a sample payload used to submit subject details to the **France Mobile Identity Verification** variant for processing.

    ```json JSON theme={null}
    {
      "resourceId": "<resourceId>",
      "context": {
        "subject": {
          "identity": {
            "firstName": "John",
            "middleNames": ["David"],
            "lastNames": ["Doe"],
            "dateOfBirth": "1990-03-26",
            "phones": [
              {
                "type": "mobile",
                "number": "+33612345678"
              }
            ],
            "currentAddress": {
              "premise": "1A",
              "thoroughfare": "Rue de la Paix",
              "locality": "Paris",
              "postalCode": "75002",
              "country": "FRA"
            }
          }
        }
      }
    }
    ```

    | Field                                  | Required | Description                                                            |
    | -------------------------------------- | -------- | ---------------------------------------------------------------------- |
    | `identity.firstName`                   | Yes      | First name of the subject.                                             |
    | `identity.lastNames`                   | Yes      | Array containing the last name(s) of the subject.                      |
    | `identity.phones[].type`               | Yes      | Type of phone number. Must be `"mobile"`.                              |
    | `identity.phones[].number`             | Yes      | Mobile number in international format (for example, `"+33612345678"`). |
    | `identity.currentAddress.thoroughfare` | Yes      | Street name.                                                           |
    | `identity.currentAddress.locality`     | Yes      | Town or city.                                                          |
    | `identity.currentAddress.postalCode`   | Yes      | Postal code.                                                           |
    | `identity.currentAddress.country`      | Yes      | Three-letter country code (for example, `"FRA"`).                      |
    | `identity.dateOfBirth`                 | No       | Date of birth in `YYYY-MM-DD` format.                                  |
    | `identity.middleNames`                 | No       | Array containing the subject's middle name(s).                         |
    | `identity.currentAddress.premise`      | No       | Property or building number.                                           |

    ## Sample response

    The following is a sample response for a confirmed identity match.

    ```json JSON theme={null}
    {
      "response": {
        "advice": {
          "contains": {}
        },
        "outcome": "Identity Match"
      }
    }
    ```
  </Accordion>

  <Accordion title="Spain Mobile Identity Verification">
    This variant verifies identity data against Spanish mobile network records. Capabilities and default outcomes are the same as [UK Mobile Identity Verification](#uk-mobile-identity-verification).

    | Detail          | Value                                                                  |
    | --------------- | ---------------------------------------------------------------------- |
    | Required inputs | First name, last name, current address with country code, mobile phone |
    | Optional inputs | Date of birth, middle names                                            |

    ## Input payload

    The following is a sample payload used to submit subject details to the **Spain Mobile Identity Verification** variant for processing.

    ```json JSON theme={null}
    {
      "resourceId": "<resourceId>",
      "context": {
        "subject": {
          "identity": {
            "firstName": "John",
            "middleNames": ["David"],
            "lastNames": ["Doe"],
            "dateOfBirth": "1990-03-26",
            "phones": [
              {
                "type": "mobile",
                "number": "+34612345678"
              }
            ],
            "currentAddress": {
              "premise": "1A",
              "thoroughfare": "Calle de Alcalá",
              "locality": "Madrid",
              "postalCode": "28014",
              "country": "ESP"
            }
          }
        }
      }
    }
    ```

    | Field                                  | Required | Description                                                            |
    | -------------------------------------- | -------- | ---------------------------------------------------------------------- |
    | `identity.firstName`                   | Yes      | First name of the subject.                                             |
    | `identity.lastNames`                   | Yes      | Array containing the last name(s) of the subject.                      |
    | `identity.phones[].type`               | Yes      | Type of phone number. Must be `"mobile"`.                              |
    | `identity.phones[].number`             | Yes      | Mobile number in international format (for example, `"+34612345678"`). |
    | `identity.currentAddress.thoroughfare` | Yes      | Street name.                                                           |
    | `identity.currentAddress.locality`     | Yes      | Town or city.                                                          |
    | `identity.currentAddress.postalCode`   | Yes      | Postal code.                                                           |
    | `identity.currentAddress.country`      | Yes      | Three-letter country code (for example, `"ESP"`).                      |
    | `identity.dateOfBirth`                 | No       | Date of birth in `YYYY-MM-DD` format.                                  |
    | `identity.middleNames`                 | No       | Array containing the subject's middle name(s).                         |
    | `identity.currentAddress.premise`      | No       | Property or building number.                                           |

    ## Sample response

    The following is a sample response for a confirmed identity match.

    ```json JSON theme={null}
    {
      "response": {
        "advice": {
          "contains": {}
        },
        "outcome": "Identity Match"
      }
    }
    ```
  </Accordion>

  <Accordion title="Canada Mobile Identity Verification">
    This variant verifies identity data against Canadian mobile network records. Capabilities and default outcomes are the same as [UK Mobile Identity Verification](#uk-mobile-identity-verification), with one additional capability.

    | Detail          | Value                                                                  |
    | --------------- | ---------------------------------------------------------------------- |
    | Required inputs | First name, last name, current address with country code, mobile phone |
    | Optional inputs | Date of birth, middle names                                            |

    ## Additional capability

    | Capability     | Values                                         | Description                                                                                                                  |
    | -------------- | ---------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- |
    | Market segment | `PAYG`, `PAYM`, `Business`, `n/a`, `no result` | The account type associated with the mobile number. `PAYG` = pay-as-you-go, `PAYM` = contract. Not used in default outcomes. |

    ## Input payload

    The following is a sample payload used to submit subject details to the **Canada Mobile Identity Verification** variant for processing.

    ```json JSON theme={null}
    {
      "resourceId": "<resourceId>",
      "context": {
        "subject": {
          "identity": {
            "firstName": "John",
            "middleNames": ["David"],
            "lastNames": ["Doe"],
            "dateOfBirth": "1990-03-26",
            "phones": [
              {
                "type": "mobile",
                "number": "+14165551234"
              }
            ],
            "currentAddress": {
              "premise": "1A",
              "thoroughfare": "Yonge Street",
              "locality": "Toronto",
              "postalCode": "M5B 1M4",
              "country": "CAN"
            }
          }
        }
      }
    }
    ```

    | Field                                  | Required | Description                                                            |
    | -------------------------------------- | -------- | ---------------------------------------------------------------------- |
    | `identity.firstName`                   | Yes      | First name of the subject.                                             |
    | `identity.lastNames`                   | Yes      | Array containing the last name(s) of the subject.                      |
    | `identity.phones[].type`               | Yes      | Type of phone number. Must be `"mobile"`.                              |
    | `identity.phones[].number`             | Yes      | Mobile number in international format (for example, `"+14165551234"`). |
    | `identity.currentAddress.thoroughfare` | Yes      | Street name.                                                           |
    | `identity.currentAddress.locality`     | Yes      | Town or city.                                                          |
    | `identity.currentAddress.postalCode`   | Yes      | Postal code.                                                           |
    | `identity.currentAddress.country`      | Yes      | Three-letter country code (for example, `"CAN"`).                      |
    | `identity.dateOfBirth`                 | No       | Date of birth in `YYYY-MM-DD` format.                                  |
    | `identity.middleNames`                 | No       | Array containing the subject's middle name(s).                         |
    | `identity.currentAddress.premise`      | No       | Property or building number.                                           |

    ## Sample response

    The following is a sample response for a confirmed identity match.

    ```json JSON theme={null}
    {
      "response": {
        "advice": {
          "contains": {}
        },
        "outcome": "Identity Match"
      }
    }
    ```
  </Accordion>

  <Accordion title="UK Mobile Fraud Verification">
    This variant checks for SIM swap activity and call forwarding on a UK mobile number. It requires only a mobile phone number and country code. No identity data is needed.

    | Detail          | Value                                                                        |
    | --------------- | ---------------------------------------------------------------------------- |
    | Required inputs | Mobile phone in international format, current address with country code only |

    ## Capabilities

    This variant returns SIM swap detection signals alongside a phone match result and call forwarding status.

    ### SIM swap detection

    | Capability                     | Type    | Values                         | Description                                                                                      |
    | ------------------------------ | ------- | ------------------------------ | ------------------------------------------------------------------------------------------------ |
    | SIM swap found                 | Enum    | `Y`, `N`, `no result`          | Whether a SIM swap has occurred.                                                                 |
    | SIM swapped in last 24 hours   | Enum    | `Y`, `N`, `no result`          | Whether a SIM swap occurred in the last 24 hours.                                                |
    | SIM swap max days              | Enum    | `24`, `72`, `720`, `no result` | Maximum days since the last SIM swap. `24` = last day, `72` = last 3 days, `720` = last 30 days. |
    | Days since SIM swap            | Integer | 0–366                          | Exact number of days since the last SIM swap, when known.                                        |
    | Days since SIM swap is present | Boolean | `true`, `false`                | Whether the days-since-SIM-swap value is available.                                              |

    ### Other capabilities

    | Capability                | Type | Values                                                                  | Description                                         |
    | ------------------------- | ---- | ----------------------------------------------------------------------- | --------------------------------------------------- |
    | Mobile phone match result | Enum | `match`, `mismatch`, `not available`, `unrecognised value`, `no result` | Whether the mobile number was found in the network. |
    | Call forwarding           | Enum | `Y`, `N`, `no result`                                                   | Whether call forwarding is active on the number.    |

    ## Default outcomes

    The default outcome is `Low Risk`, meaning no fraud signals were detected.

    | Outcome            | Condition                                                                            | Description                                                                 |
    | ------------------ | ------------------------------------------------------------------------------------ | --------------------------------------------------------------------------- |
    | `Could Not Locate` | Mobile phone is `mismatch`                                                           | The mobile number could not be found in the network.                        |
    | `High Risk`        | SIM swap is `Y` and SIM swap max days is `24` or `72`, **or** call forwarding is `Y` | A SIM swap within the last 3 days, or active call forwarding, was detected. |
    | `Medium Risk`      | SIM swap is `Y` and SIM swap max days is `720`                                       | A SIM swap occurred within the last 30 days but not in the last 3 days.     |
    | `Low Risk`         | Default (no conditions matched)                                                      | No SIM swap or call forwarding activity detected.                           |

    ## Input payload

    The following is a sample payload used to submit a mobile number to the **UK Mobile Fraud Verification** variant for processing. This variant needs only a mobile number and a country code. No identity data is required.

    ```json JSON theme={null}
    {
      "resourceId": "<resourceId>",
      "context": {
        "subject": {
          "identity": {
            "phones": [
              {
                "type": "mobile",
                "number": "+447700000000"
              }
            ],
            "currentAddress": {
              "country": "GBR"
            }
          }
        }
      }
    }
    ```

    | Field                             | Required | Description                                                             |
    | --------------------------------- | -------- | ----------------------------------------------------------------------- |
    | `identity.phones[].type`          | Yes      | Type of phone number. Must be `"mobile"`.                               |
    | `identity.phones[].number`        | Yes      | Mobile number in international format (for example, `"+447700000000"`). |
    | `identity.currentAddress.country` | Yes      | Three-letter country code (for example, `"GBR"`).                       |

    ## Sample response

    The following is a sample response where fraud signals returned a High Risk outcome.

    ```json JSON theme={null}
    {
      "response": {
        "advice": {
          "contains": {}
        },
        "outcome": "High Risk"
      }
    }
    ```
  </Accordion>

  <Accordion title="Germany Mobile Fraud Verification">
    This variant checks for SIM swap activity on a German mobile number. Capabilities and default outcomes are the same as [UK Mobile Fraud Verification](#uk-mobile-fraud-verification), except that the call forwarding capability is **not available**, and the High Risk outcome is triggered only by a recent SIM swap.

    | Detail          | Value                                                                        |
    | --------------- | ---------------------------------------------------------------------------- |
    | Required inputs | Mobile phone in international format, current address with country code only |

    ## Default outcomes

    | Outcome            | Condition                                             | Description                                                             |
    | ------------------ | ----------------------------------------------------- | ----------------------------------------------------------------------- |
    | `Could Not Locate` | Mobile phone is `mismatch`                            | The mobile number could not be found in the network.                    |
    | `High Risk`        | SIM swap is `Y` and SIM swap max days is `24` or `72` | A SIM swap within the last 3 days was detected.                         |
    | `Medium Risk`      | SIM swap is `Y` and SIM swap max days is `720`        | A SIM swap occurred within the last 30 days but not in the last 3 days. |
    | `Low Risk`         | Default (no conditions matched)                       | No SIM swap activity detected.                                          |

    ## Input payload

    The following is a sample payload used to submit a mobile number to the **Germany Mobile Fraud Verification** variant for processing. This variant needs only a mobile number and a country code. No identity data is required.

    ```json JSON theme={null}
    {
      "resourceId": "<resourceId>",
      "context": {
        "subject": {
          "identity": {
            "phones": [
              {
                "type": "mobile",
                "number": "+447795111111"
              }
            ],
            "currentAddress": {
              "country": "GBR"
            }
          }
        }
      }
    }
    ```

    | Field                             | Required | Description                                                             |
    | --------------------------------- | -------- | ----------------------------------------------------------------------- |
    | `identity.phones[].type`          | Yes      | Type of phone number. Must be `"mobile"`.                               |
    | `identity.phones[].number`        | Yes      | Mobile number in international format (for example, `"+447795111111"`). |
    | `identity.currentAddress.country` | Yes      | Three-letter country code (for example, `"GBR"`).                       |

    ## Sample response

    The following is a sample response where no fraud signals returned a Low Risk outcome.

    ```json JSON theme={null}
    {
      "response": {
        "advice": {
          "contains": {}
        },
        "outcome": "Low Risk"
      }
    }
    ```
  </Accordion>

  <Accordion title="France Mobile Fraud Verification">
    This variant checks for SIM swap activity on a French mobile number. Capabilities and default outcomes are the same as [Germany Mobile Fraud Verification](#germany-mobile-fraud-verification).

    | Detail          | Value                                                                        |
    | --------------- | ---------------------------------------------------------------------------- |
    | Required inputs | Mobile phone in international format, current address with country code only |

    ## Input payload

    The following is a sample payload used to submit a mobile number to the **France Mobile Fraud Verification** variant for processing. This variant needs only a mobile number and a country code. No identity data is required.

    ```json JSON theme={null}
    {
      "resourceId": "<resourceId>",
      "context": {
        "subject": {
          "identity": {
            "phones": [
              {
                "type": "mobile",
                "number": "+33612345678"
              }
            ],
            "currentAddress": {
              "country": "FRA"
            }
          }
        }
      }
    }
    ```

    | Field                             | Required | Description                                                            |
    | --------------------------------- | -------- | ---------------------------------------------------------------------- |
    | `identity.phones[].type`          | Yes      | Type of phone number. Must be `"mobile"`.                              |
    | `identity.phones[].number`        | Yes      | Mobile number in international format (for example, `"+33612345678"`). |
    | `identity.currentAddress.country` | Yes      | Three-letter country code (for example, `"FRA"`).                      |

    ## Sample response

    The following is a sample response where no fraud signals returned a Low Risk outcome.

    ```json JSON theme={null}
    {
      "response": {
        "advice": {
          "contains": {}
        },
        "outcome": "Low Risk"
      }
    }
    ```
  </Accordion>

  <Accordion title="Spain Mobile Fraud Verification">
    This variant checks for SIM swap activity on a Spanish mobile number. Capabilities and default outcomes are the same as [Germany Mobile Fraud Verification](#germany-mobile-fraud-verification).

    | Detail          | Value                                                                        |
    | --------------- | ---------------------------------------------------------------------------- |
    | Required inputs | Mobile phone in international format, current address with country code only |

    ## Input payload

    The following is a sample payload used to submit a mobile number to the **Spain Mobile Fraud Verification** variant for processing. This variant needs only a mobile number and a country code. No identity data is required.

    ```json JSON theme={null}
    {
      "resourceId": "<resourceId>",
      "context": {
        "subject": {
          "identity": {
            "phones": [
              {
                "type": "mobile",
                "number": "+34612345678"
              }
            ],
            "currentAddress": {
              "country": "ESP"
            }
          }
        }
      }
    }
    ```

    | Field                             | Required | Description                                                            |
    | --------------------------------- | -------- | ---------------------------------------------------------------------- |
    | `identity.phones[].type`          | Yes      | Type of phone number. Must be `"mobile"`.                              |
    | `identity.phones[].number`        | Yes      | Mobile number in international format (for example, `"+34612345678"`). |
    | `identity.currentAddress.country` | Yes      | Three-letter country code (for example, `"ESP"`).                      |

    ## Sample response

    The following is a sample response where no fraud signals returned a Low Risk outcome.

    ```json JSON theme={null}
    {
      "response": {
        "advice": {
          "contains": {}
        },
        "outcome": "Low Risk"
      }
    }
    ```
  </Accordion>

  <Accordion title="Canada Mobile Fraud Verification">
    This variant checks for SIM swap activity on a Canadian mobile number. Capabilities and default outcomes are the same as [Germany Mobile Fraud Verification](#germany-mobile-fraud-verification).

    | Detail          | Value                                                                        |
    | --------------- | ---------------------------------------------------------------------------- |
    | Required inputs | Mobile phone in international format, current address with country code only |

    ## Input payload

    The following is a sample payload used to submit a mobile number to the **Canada Mobile Fraud Verification** variant for processing. This variant needs only a mobile number and a country code. No identity data is required.

    ```json JSON theme={null}
    {
      "resourceId": "<resourceId>",
      "context": {
        "subject": {
          "identity": {
            "phones": [
              {
                "type": "mobile",
                "number": "+14165551234"
              }
            ],
            "currentAddress": {
              "country": "CAN"
            }
          }
        }
      }
    }
    ```

    | Field                             | Required | Description                                                            |
    | --------------------------------- | -------- | ---------------------------------------------------------------------- |
    | `identity.phones[].type`          | Yes      | Type of phone number. Must be `"mobile"`.                              |
    | `identity.phones[].number`        | Yes      | Mobile number in international format (for example, `"+14165551234"`). |
    | `identity.currentAddress.country` | Yes      | Three-letter country code (for example, `"CAN"`).                      |

    ## Sample response

    The following is a sample response where no fraud signals returned a Low Risk outcome.

    ```json JSON theme={null}
    {
      "response": {
        "advice": {
          "contains": {}
        },
        "outcome": "Low Risk"
      }
    }
    ```
  </Accordion>
</AccordionGroup>
