---
title: Getting started with PingOne Verify
description: You can integrate identity verification directly into your mobile app using PingOne Verify.
component: pingone
page_id: pingone:identity_verification_using_pingone_verify:p1_getting_started_with_p1_verify
canonical_url: https://docs.pingidentity.com/pingone/identity_verification_using_pingone_verify/p1_getting_started_with_p1_verify.html
revdate: March 14, 2025
section_ids:
  configuring-and-orchestrating-pingone-verify: Configuring and orchestrating PingOne Verify
  before-you-begin: Before you begin
  steps: Steps
  choose-from: Choose from:
  steps-2: Steps
  result: Result:
  choose-from-2: Choose from:
  before-you-begin-2: Before you begin
  steps-3: Steps
  result-2: Result:
  choose-from-3: Choose from:
  using-pingfederate: Using PingFederate
  steps-4: Steps
  using-the-pingone-verify-mobile-sdk: Using the PingOne Verify mobile SDK
  steps-5: Steps
  integrating-with-pingone-advanced-identity-cloud-and-pingam: Integrating with PingOne Advanced Identity Cloud and PingAM
  before-you-begin-3: Before you begin
  steps-6: Steps
  next-steps: Next steps
---

# Getting started with PingOne Verify

You can integrate identity verification directly into your mobile app using PingOne Verify.

The PingOne Verify mobile SDK prompts end users to provide proof of identity, streamlining the verification process to prevent fraud and abuse by:

* Capturing a live facial image of the end user

* Scanning and validating the end user's government-issued identity documents

* Confirming data matching

## Configuring and orchestrating PingOne Verify

Configure PingOne Verify and orchestrate the verification flow to manage how a verify transaction is triggered and processed for end users.

![Metro map of configuring and orchestrating PingOne Verify.](_images/p1-verify-metro-map.png)

## Before you begin

Regardless of the configuration method you choose, you'll need:

* A PingOne account with at least one environment that includes the PingOne Verify service. Learn more in [Starting a PingOne trial](../pingone_tutorials/p1_start_a_trial_tutorial_basic_passwordless.html) and [Creating an environment](../getting_started_with_pingone/p1_getting_started_adding_environment.html).

* A PingOne Verify policy, which can be the default policy you modify or a new policy. Learn more in [Creating a verify policy](p1_verify_creating_verify_policy.html).

## Steps

* You can choose one of the following methods to orchestrate a verify transaction:

  ### Choose from:

  * API integration

  * PingOne DaVinci

  * PingFederate Integration Kit

  * Mobile SDK

  * PingOne Advanced Identity Cloud and PingAM

- PingOne API

- PingOne DaVinci

- PingFederate

- Mobile SDK

- PingOne Advanced Identity Cloud and PingAM

To configure PingOne Verify with the PingOne REST API:

## Steps

1. Create your theme in PingOne [Branding and themes](../user_experience/p1_branding_themes.html) to brand the PingOne Verify web experience for your end users.

2. (Optional) Use [language localization](p1_verify_language_localization.html) to configure one or more languages and modify the PingOne Verify text fields that are presented to end users.

3. (Optional) If you enabled one-time passcode (OTP) *(tooltip: \<div class="paragraph">
   \<p>A passcode valid for only one sign-on or transaction on a computer system or other digital device. Also known as a one-time password, one-time PIN, or dynamic password.\</p>
   \</div>)* through phone or email verification in your policy, [create notification templates](../user_experience/p1_notifications.html).

4. Trigger your first verify transaction:

   1. Read [Getting started with the PingOne APIs](https://developer.pingidentity.com/pingone-api/getting-started/introduction.html).

   2. Download the [PingOne Postman collection](https://developer.pingidentity.com/pingone-api/getting-started/where-to-go-from-here.html#platform-postman-collection).

   3. Note the [Variables you must value](https://developer.pingidentity.com/pingone-api/verify/working-with-pingone-apis/postman-and-pingone/use-the-pingone-postman-environment-template.html#variables-you-must-value).

   4. Obtain a [PingOne access token](https://developer.pingidentity.com/pingone-api/getting-started/create-a-test-environment/step-1-get-access-token.html).

      Your *{{authPath}}* environment variable in Postman should begin with `auth.pingone`. See [Variables you must value](https://developer.pingidentity.com/pingone-api/verify/working-with-pingone-apis/postman-and-pingone/use-the-pingone-postman-environment-template.html#variables-you-must-value) in the PingOne API documentation to determine the correct *{{authPath}}* for your geography. Note that nothing trails the domain in the *{{authPath}}* variable.

   5. Create a new verify transaction with the [Create Verify Transaction API call](https://developer.pingidentity.com/pingone-api/verify/verify-transactions/create-verify-transaction.html).

      Your *{{apiPath}}* environment variable in Postman should begin with `api.pingone`. See [Variables you must value](https://developer.pingidentity.com/pingone-api/verify/working-with-pingone-apis/postman-and-pingone/use-the-pingone-postman-environment-template.html#variables-you-must-value) in the PingOne API documentation to determine the correct *{{apiPath}}* for your geography. Note that the trailing `/v1` is required (for example, `api.pingone.com/v1`).

      Learn more in [PingOne API requests](https://developer.pingidentity.com/pingone-api/foundations/conventions/pingone-api-requests.html).

      ### Result:

      Postman renders a QR code.

      ![A screen capture of the QR code that Postman renders when creating a Verify transaction.](_images/wtk1692637325156.png)

   6. Scan the QR code with a smartphone camera to try the mobile web flow.

5. View the data submitted in the transaction and the scores returned from verification services.

   ### Choose from:

   * Using the API: Use the [Verified Data](https://developer.pingidentity.com/pingone-api/verify/verified-data.html) and [Verification Metadata](https://developer.pingidentity.com/pingone-api/verify/verification-metadata.html) endpoints.

   * Using the PingOne admin console:

     1. In PingOne, go to **Environment → Audit**.

     2. Edit the **Time Range** and **Within** fields as needed.

     3. For **Filter Type**, select **Event Type**.

     4. For **Filter**, enter `verify` in the **Search Filter Type** field.

     5. Select any of the **Verify** event types.

        |   |                                                                                                                                                                                                                       |
        | - | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
        |   | You can find a complete list of events logged in PingOne in [Audit Reporting Events](https://developer.pingidentity.com/pingone-api/platform/reference/audit-reporting-events.html) in the PingOne API documentation. |

        ![A screen capture of the PingOne Audit page with 'verify' entered in the Filter field.](_images/wse1692638943327.png)

     6. Click **Run**.

     7. To view the specific data and scores from an event, click **View** in the **Details** column in the report summary.

To configure PingOne Verify using PingOne DaVinci:

## Before you begin

Add PingOne DaVinci to your PingOne environment. Learn more in [Creating an environment](../getting_started_with_pingone/p1_getting_started_adding_environment.html).

## Steps

1. Create your theme in PingOne [Branding and themes](../user_experience/p1_branding_themes.html) to brand the PingOne Verify web experience for your end users.

2. (Optional) Use [language localization](p1_verify_language_localization.html) to configure one or more languages and modify the PingOne Verify text fields that are presented to end users.

3. (Optional) If you enabled OTP *(tooltip: \<div class="paragraph">
   \<p>A passcode valid for only one sign-on or transaction on a computer system or other digital device. Also known as a one-time password, one-time PIN, or dynamic password.\</p>
   \</div>)* through phone or email verification in your policy, [create notification templates](../user_experience/p1_notifications.html).

4. Import the [PingOne Verify quick start flow template](https://marketplace.pingone.com/item/pingone-verify-quick-start) in PingOne DaVinci by downloading it from the Ping Identity Marketplace.

5. Update the flow with your PingOne Verify policy:

   1. Click the PingOne Verify `Create transaction` node in the flow.

   2. In the **Verify Policy** list, select the policy to use.

   ![A screen capture of the PingOne Verify Create transaction node details in PingOne DaVinci.](_images/mmx1692649385736.png)

6. To run the flow and trigger a PingOne Verify transaction, click **Try Flow**.

   ### Result:

   PingOne DaVinci renders a QR code.

   ![A screen capture of the QR code that you can scan with your mobile device to start the verification process.](_images/qui1692650257383.png)

7. Scan the QR code on your mobile device to try the mobile web flow.

8. View the data submitted in the transaction and the scores returned from verification services.

   ### Choose from:

   * Using the API: Use the [Verified Data](https://developer.pingidentity.com/pingone-api/verify/verified-data.html) and [Verification Metadata](https://developer.pingidentity.com/pingone-api/verify/verification-metadata.html) endpoints.

   * Using the PingOne admin console:

     1. In PingOne, go to **Environment → Audit**.

     2. Edit the **Time Range** and **Within** fields as needed.

     3. For **Filter Type**, select **Event Type**.

     4. For **Filter**, enter `verify` in the **Search Filter Type** field.

     5. Select any of the **Verify** event types.

        |   |                                                                                                                                                                                                                       |
        | - | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
        |   | You can find a complete list of events logged in PingOne in [Audit Reporting Events](https://developer.pingidentity.com/pingone-api/platform/reference/audit-reporting-events.html) in the PingOne API documentation. |

        ![A screen capture of the PingOne Audit page with 'verify' entered in the Filter field.](_images/wse1692638943327.png)

     6. Click **Run**.

     7. To view the specific data and scores from an event, click **View** in the **Details** column in the report summary.

## Using PingFederate

To use PingFederate to configure the PingOne Verify Integration Kit:

### Steps

* Download PingFederate and the PingOne Verify Integration Kit from the [PingFederate Downloads website](https://www.pingidentity.com/en/resources/downloads/pingfederate.html).

  |   |                                                                                                     |
  | - | --------------------------------------------------------------------------------------------------- |
  |   | You'll need to work with your Ping Identity account team to start a trial license for PingFederate. |

  Learn more about getting started in the [PingOne Verify Integration Kit documentation](https://docs.pingidentity.com/integrations/pingone/pingone_verify_integration_kit/pf_p1_verify_ik.html).

## Using the PingOne Verify mobile SDK

Mobile application developers use the PingOne Verify mobile SDK for iOS and PingOne Verify mobile SDK for Android to create the PingOne Verify app for their users. The app is a self-service app for iOS or Android devices that guides the user through the process of taking photos of their ID and a selfie and submitting the photos to PingOne for verification.

To use the PingOne Verify mobile SDK:

### Steps

1. Run the sample app from Github:

   * [Running the sample app for iOS](https://developer.pingidentity.com/pingone-api/native-sdks/pingone-neo-native-sdks/pingone-verify-native-sdks/pingone-verify-native-sdk-for-ios.html)

   * [Running the sample app for Android](https://developer.pingidentity.com/pingone-api/native-sdks/pingone-neo-native-sdks/pingone-verify-native-sdks/pingone-verify-native-sdk-for-android.html)

2. Integrate the PingOne Verify mobile SDK into your own app:

   * [Integrating the PingOne Verify SDK into your own app (iOS)](https://github.com/pingidentity/pingone-verify-mobile-sdk-ios/blob/master/README.md)

   * [Integrating the PingOne Verify SDK into your own app (Android)](https://github.com/pingidentity/pingone-verify-mobile-sdk-android/blob/master/README.md)

## Integrating with PingOne Advanced Identity Cloud and PingAM

Advanced Identity Cloud is a digital identity and access management (IAM) software as a service (SaaS) solution for any identity, workforce, or consumer.

PingAM software manages access to resources, such as web pages, applications, or web services available over a network. PingAM centralizes access control by handling both authentication and authorization.

To take advantage of PingOne Verify features, you can integrate PingOne Verify nodes into your Advanced Identity Cloud and PingAM journeys. Learn more in [Journeys](https://docs.pingidentity.com/pingoneaic/latest/realms/journeys.html).

### Before you begin

Make sure you have:

* A PingOne Advanced Identity Cloud or PingAM account. [Getting started with PingOne Advanced Identity Cloud](https://docs.pingidentity.com/pingoneaic/latest/home.html).

* A PingOne account. Learn more in [Starting a PingOne trial](../pingone_tutorials/p1_start_a_trial_tutorial_basic_passwordless.html).

* A verify policy configured in PingOne (or use the default verify policy).

* A worker application with the Identity Data Admin role assigned in PingOne.

### Steps

1. [Configure the PingOne service](https://docs.pingidentity.com/pingoneaic/latest/home.html) in Advanced Identity Cloud.

2. Set up your user journey in Advanced Identity Cloud or PingAM with PingOne Verify nodes in the journey:

   * The [PingOne Verify Evaluation node](https://docs.pingidentity.com/auth-node-ref/latest/pingone/pingone-verify-evaluation.html) to start a new identity verification with PingOne Verify.

   * The [PingOne Verify Completion Decision node](https://docs.pingidentity.com/auth-node-ref/latest/pingone/pingone-verify-completion-decision.html) to check the status of the last verify transaction.

   * The [PingOne Verify Authentication node](https://docs.pingidentity.com/auth-node-ref/latest/pingone/pingone-verify-authn.html) to integrate biometric authentication functionality in your journey.

   * The [PingOne Verify Proofing node](https://docs.pingidentity.com/auth-node-ref/latest/pingone/pingone-verify-proof.html) to integrate verification functionality using Government ID, Facial Comparison, and Liveness in a journey.

     |   |                                                                                                                                                                                                                                                                                                |
     | - | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
     |   | For self-managed deployments, these nodes are available only PingAM 8.0 or later. If you're using an earlier version of PingAM, use Marketplace nodes, such as the [PingOne Verify Authentication node](https://docs.pingidentity.com/auth-node-ref/latest/pingone/pingone-verify-authn.html). |

3. Validate that the PingOne Verify Evaluation node is working by doing the following:

   1. Configure the node with **Store Verification Metadata** and **Store Verified Data** enabled.

   2. Use a [Scripted Decision node](https://docs.pingidentity.com/auth-node-ref/latest/scripted-decision.html) to return the node state and make sure the values of the `pingOneVerifyMetadata`, `pingOneVerifyVerifiedData`, and `pingOneVerifyEvaluationFailureReason` properties are what you expect. You can also run the journey with Debugging enabled.

   3. Add message nodes attached to individual results outputs to understand the flow.

4. Validate that the PingOne Verify Completion Decision node is working by doing the following:

   1. Use logger messages in your Completion processing script to determine the processing goals and outcomes, and monitor the log.

   2. Evaluate the `nodeState` values of the PingOne Verify nodes that were set in the script using a Scripted Decision node that returns the nodeState, or with the Debugger enabled

   3. Add message nodes attached to individual results outputs to understand the flow.

## Next steps

After you've familiarized yourself with how PingOne Verify works and have it running:

* Learn more about [ID verification](p1_verify_id_verification.html).

* Learn more about monitoring verify transactions in [Using the Identity Verification Dashboard](p1_identity_verification_dashboard.html).

* Learn more about your PingOne Verify license and the quota of transactions allowed in [Viewing license information](p1_verify_view_license_info.html).
