diff --git a/packages/@okta/vuepress-site/.vuepress/public/img/customLanding/features-4.svg b/packages/@okta/vuepress-site/.vuepress/public/img/customLanding/features-4.svg
new file mode 100644
index 00000000000..bf7f480f396
--- /dev/null
+++ b/packages/@okta/vuepress-site/.vuepress/public/img/customLanding/features-4.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/packages/@okta/vuepress-site/.vuepress/public/img/icons/customer_identity.svg b/packages/@okta/vuepress-site/.vuepress/public/img/icons/customer_identity.svg
new file mode 100644
index 00000000000..bf7f480f396
--- /dev/null
+++ b/packages/@okta/vuepress-site/.vuepress/public/img/icons/customer_identity.svg
@@ -0,0 +1,15 @@
+
+
\ No newline at end of file
diff --git a/packages/@okta/vuepress-site/docs/guides/add-an-external-idp/main/index.md b/packages/@okta/vuepress-site/docs/guides/add-an-external-idp/main/index.md
index 597965c3ec3..8e598a9d98e 100644
--- a/packages/@okta/vuepress-site/docs/guides/add-an-external-idp/main/index.md
+++ b/packages/@okta/vuepress-site/docs/guides/add-an-external-idp/main/index.md
@@ -27,7 +27,9 @@ Configure an external IdP so that your users can quickly sign up or sign in to y
Okta manages the connection to the IdP for your app. The connection sits between your app and the IdP that authenticates your users. The industry-standard term for this is Inbound Federation. When a user signs in, you can link the user's IdP account to an existing Okta user profile. You can also choose to create a user profile by using Just-In-Time (JIT) provisioning.
-> **Note:** Okta also supports other services such as directories and credential providers. See the [Okta Integration Network Catalog](https://www.okta.com/okta-integration-network/) to browse all integrations by use case.
+> **Notes:**
+> - Okta also supports other services such as directories and credential providers. See the [Okta Integration Network Catalog](https://www.okta.com/okta-integration-network/) to browse all integrations by use case.
+> - Independent Software Vendors (ISVs) can use the IDV integration capability to integrate your IDV apps directly with Okta through the Okta Integration Network (OIN). See [Submit an integration with the OIN Wizard](/docs/guides/submit-oin-app/xidv/main/).
## Create an app at the Identity Provider
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-app-overview/index.md b/packages/@okta/vuepress-site/docs/guides/submit-app-overview/index.md
index baa939a823c..5a75bf96bf9 100644
--- a/packages/@okta/vuepress-site/docs/guides/submit-app-overview/index.md
+++ b/packages/@okta/vuepress-site/docs/guides/submit-app-overview/index.md
@@ -13,7 +13,7 @@ If you're an integrator, from an independent software vendor (ISV) or an existin
## Submission process
-Okta introduced a seamless experience to submit Single Sign-On (SSO), provisioning, Entitlement Management, Universal Logout (UL), and API service integrations for OIN publication. This experience enables you to build and test your integration before submission directly from the Admin Console with the [OIN Wizard](/docs/guides/submit-oin-app/). This reduces the tools that you need to build, test, and submit your integration. It also reduces the time needed for the OIN team to review and validate your integration, which shortens the time to publish in the OIN.
+Okta introduced a seamless experience to submit Single Sign-On (SSO), provisioning, Entitlement Management, Universal Logout (UL), API service, and Identity Verification (IDV) integrations for OIN publication. This experience enables you to build and test your integration before submission directly from the Admin Console with the [OIN Wizard](/docs/guides/submit-oin-app/). This reduces the tools that you need to build, test, and submit your integration. It also reduces the time needed for the OIN team to review and validate your integration, which shortens the time to publish in the OIN.
You can also submit updates to a previously published integration in the OIN Wizard.
@@ -29,7 +29,7 @@ Before you submit your integration, in either the OIN Wizard or OIN Manager, rev
Consider the following questions to help you choose which pathway to use for submission:
-* Are you submitting a new or published SSO, provisioning, Entitlement Management, UL, or API service integrations?
+* Are you submitting a new or published SSO, provisioning, Entitlement Management, UL, API service, and Identity Verification (IDV) integrations?
* [Use the OIN Wizard](#submission-process-for-sso-and-scim-integrations).
> **Note:** Published SSO or SCIM integrations that were submitted through the OIN Manager have been moved to the OIN Wizard and appear in the **Your OIN Integrations** dashboard.
* Are you submitting a new or published Workflows integration?
@@ -39,9 +39,9 @@ Submit your integration to Okta and work with the OIN team as they test and revi
The Okta OIN team reviews and prioritizes all submissions.
-### Submission process for SSO, SCIM provisioning, and API service integrations
+### Submission process for SSO, SCIM provisioning, API service, and Identity Verification integrations
-The following steps outline the process for submitting SSO, SCIM provisioning, Entitlement Management, UL, and API service integrations.
+The following steps outline the process for submitting SSO, SCIM provisioning, Entitlement Management, UL, API service, and Identity Verification (IDV) integrations.
1. Build the integration in your app.
1. Sign in to the Admin Console of your Integrator Free Plan org.
@@ -186,4 +186,6 @@ Ready to make your integration public? Submit an integration with the following
Submit an integration with API Integration Actions
+Submit an integration with Identity Verification
+
\ No newline at end of file
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/index.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/index.md
index f352daf6ff4..6ceb93c08c1 100644
--- a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/index.md
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/index.md
@@ -6,7 +6,7 @@ meta:
layout: Guides
---
-Learn how to submit an integration with SSO, Universal Logout, provisioning, entitlement management, or API service capabilities to the Okta Integration Network (OIN) using the OIN Wizard.
+Learn how to submit an integration with SSO, Universal Logout, provisioning, entitlement management, API service, or Identity Verification (IDV) capabilities to the Okta Integration Network (OIN) using the OIN Wizard.
---
@@ -59,38 +59,10 @@ Start your integration submission for OIN publication:
Configure your OIN catalog properties:
-#### OIN catalog properties
+
-1. In the **OIN catalog properties** section, specify the following OIN catalog information:
+
- |
Property
| Description |
- | ----------------- | ------------ |
- | **Display name** `*` | Provide a name for your integration. This is the main title used for your integration in the OIN. The maximum field length is 64 characters. |
- | **Description** `*` | Give a general description of your app and the benefits of this integration to your customers. See [App description guidelines](/docs/guides/submit-app-prereq/main/#app-description-guidelines). |
- | **Logo** `*` | Upload a PNG, JPG, or GIF file of a logo to accompany your integration in the catalog. The logo file must be less than one MB. See [Logo guidelines](/docs/guides/submit-app-prereq/main/#logo-guidelines). |
- | **Use Cases** | Add optional use case categories that apply to your integration:
Automation
Centralized Logging
Directory and HR Sync
Identity Governance and Administration (IGA)
Identity Verification
Multifactor Authentication (MFA)
Zero Trust
You can select up to three optional use cases. Default use cases are assigned to your integration based on supported features. See [Use case guidelines](/docs/guides/submit-app-prereq/main/#use-case-guidelines). |
-
- `*` Required properties
-
-#### Tenant settings
-
-Configure integration variables if your URLs are dynamic for each tenant. The variables are for your customer admins to add their specific tenant setting values during installation. See [Dynamic properties with Okta Expression Language](#dynamic-properties-with-okta-expression-language).
-
-2. In the **Tenant settings** section, specify the name and label for each tenant setting variable:
-
- |
Property
| Description |
- | --------------- | ------------ |
- | **Label** `*` | The tenant setting label that's displayed when admins install your app integration. For example: `Subdomain` or `Tenant name` |
- | **Name** `*` | Specify the tenant setting variable name. This variable name is used to construct dynamic URLs or other app properties that are dependent on the tenant. It's hidden from admins and is only used to pass tenant details to your external app. String is the only variable type supported. **Note:** Use alphanumeric lowercase and underscore characters for the variable name field. The first character must be a letter and the maximum field length is 1024 characters. For example: `subdomain_div1` |
-
- `*` This section is optional, but if you specify a variable, both `Label` and `Name` properties are required.
-
-1. Click **+ Add another** to add another variable. You can add up to eight variables.
-
- > **Note:** Apps that are migrated from the OIN Manager and that have more than eight variables can retain those variables, but you can't add new ones. However, you can update or delete the existing variables.
-
-1. If you need to delete a variable, click the delete icon () next to it.
-
@@ -118,15 +90,9 @@ Configure your integration settings. Settings appear based on your capability se
2. Click **Get started with testing** to save your edits and move to the **Test your integration** section, where you need to [enter test information](#enter-test-information) for your integration.
-#### Dynamic properties with Okta Expression Language
-
- The OIN Wizard supports [Okta Expression Language](/docs/reference/okta-expression-language/#reference-user-attributes) to generate dynamic properties, such as URLs or URIs, based on your customer tenant. You can specify dynamic strings for your properties in the OIN Wizard:
+
-1. Add your [tenant settings](#tenant-settings) in the OIN Wizard. These settings become fields for customer admins to enter during your OIN integration installation to identify their tenant.
-
-2. Use the tenant setting variables with Expression Language format in your integration properties for dynamic values based on customer information.
-
-
+
### Enter test information
@@ -209,16 +175,13 @@ The Integrator Free Plan org has no limit on active instances. You can create as
> **Note:** The steps in this section are for generating one instance to test the ****.
> If you want to change the instructions that you see on this page, select a different option from the **Instructions for** dropdown list.
-
+
-
+
### Required app instances
-The **Required app instances** box shows you the instances detected in your org that are available to test your integration. It also shows you the test instances required for the OIN Submission Tester based on your selected protocols:
-
-* The **CURRENT VERSION** status indicates the instances that you need to test your current integration submission.
-* The **PUBLISHED VERSION** status indicates the instances that you need to test backwards compatibility if you edit a previously published integration. See [Update a published integration with the OIN Wizard](/docs/guides/update-oin-app/).
+
### Application instances for testing
@@ -228,7 +191,7 @@ The **Application instances for testing** section displays, by default, the inst
An instance is eligible if it was generated from the latest version of the integration submission in the OIN Wizard. An instance is ineligible if it was generated from a previous version of the integration submission and you later made edits to the submission. This is to ensure that you test your integration based on the latest submission details.
-If you modify a published OIN integration, you must generate an instance based on the currently published integration for backward compatibility testing. A backward-compatible instance is eligible if it was generated from the published version of the integration before any edits are made in the current submission. The OIN Wizard detects if you're modifying a published OIN integration and asks you to generate a backward-compatible instance before you make any edits.
+
> **Note:** The Integrator Free Plan org has no limit on active instances. You can create as many test instances as needed for your integration. To deactivate any instances you no longer need, see [Deactivate an app instance in your org](#deactivate-an-app-instance-in-your-org).
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/openidconnect/catalog-properties.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/openidconnect/catalog-properties.md
new file mode 100644
index 00000000000..ed8b0af5a24
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/openidconnect/catalog-properties.md
@@ -0,0 +1,12 @@
+#### OIN catalog properties
+
+1. In the **OIN catalog properties** section, specify the following OIN catalog information:
+
+ |
Property
| Description |
+ | ----------------- | ------------ |
+ | **Display name** `*` | Provide a name for your integration. This is the main title used for your integration in the OIN. The maximum field length is 64 characters. |
+ | **Description** `*` | Give a general description of your app and the benefits of this integration to your customers. See [App description guidelines](/docs/guides/submit-app-prereq/main/#app-description-guidelines). |
+ | **Logo** `*` | Upload a PNG, JPG, or GIF file of a logo to accompany your integration in the catalog. The logo file must be less than one MB. See [Logo guidelines](/docs/guides/submit-app-prereq/main/#logo-guidelines). |
+ | **Use Cases** | Add optional use case categories that apply to your integration:
Automation
Centralized Logging
Directory and HR Sync
Identity Governance and Administration (IGA)
Identity Verification
Multifactor Authentication (MFA)
Zero Trust
You can select up to three optional use cases. Default use cases are assigned to your integration based on supported features. See [Use case guidelines](/docs/guides/submit-app-prereq/main/#use-case-guidelines). |
+
+ `*` Required properties
\ No newline at end of file
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/openidconnect/dynamic-properties.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/openidconnect/dynamic-properties.md
new file mode 100644
index 00000000000..1f7b544f699
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/openidconnect/dynamic-properties.md
@@ -0,0 +1,7 @@
+#### Dynamic properties with Okta Expression Language
+
+ The OIN Wizard supports [Okta Expression Language](/docs/reference/okta-expression-language/#reference-user-attributes) to generate dynamic properties, such as URLs or URIs, based on your customer tenant. You can specify dynamic strings for your properties in the OIN Wizard:
+
+1. Add your [tenant settings](#tenant-settings) in the OIN Wizard. These settings become fields for customer admins to enter during your OIN integration installation to identify their tenant.
+
+2. Use the tenant setting variables with Expression Language format in your integration properties for dynamic values based on customer information.
\ No newline at end of file
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/openidconnect/req-app-instance.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/openidconnect/req-app-instance.md
new file mode 100644
index 00000000000..2f126ab59da
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/openidconnect/req-app-instance.md
@@ -0,0 +1,5 @@
+
+The **Required app instances** box shows you the instances detected in your org that are available to test your integration. It also shows you the test instances required for the OIN Submission Tester based on your selected protocols:
+
+* The **CURRENT VERSION** status indicates the instances that you need to test your current integration submission.
+* The **PUBLISHED VERSION** status indicates the instances that you need to test backwards compatibility if you edit a previously published integration. See [Update a published integration with the OIN Wizard](/docs/guides/update-oin-app/).
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/openidconnect/tenant-settings.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/openidconnect/tenant-settings.md
new file mode 100644
index 00000000000..333101d1e4c
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/openidconnect/tenant-settings.md
@@ -0,0 +1,20 @@
+#### Tenant settings
+
+Configure integration variables if your URLs are dynamic for each tenant. The variables are for your customer admins to add their specific tenant setting values during installation. See [Dynamic properties with Okta Expression Language](#dynamic-properties-with-okta-expression-language).
+
+2. In the **Tenant settings** section, specify the name and label for each tenant setting variable:
+
+ |
Property
| Description |
+ | --------------- | ------------ |
+ | **Label** `*` | The tenant setting label that's displayed when admins install your app integration. For example: `Subdomain` or `Tenant name` |
+ | **Name** `*` | Specify the tenant setting variable name. This variable name is used to construct dynamic URLs or other app properties that are dependent on the tenant. It's hidden from admins and is only used to pass tenant details to your external app. String is the only variable type supported. **Note:** Use alphanumeric lowercase and underscore characters for the variable name field. The first character must be a letter and the maximum field length is 1024 characters. For example: `subdomain_div1` |
+
+ `*` This section is optional, but if you specify a variable, both `Label` and `Name` properties are required.
+
+1. Click **+ Add another** to add another variable. You can add up to eight variables.
+
+ > **Note:** Apps that are migrated from the OIN Manager and that have more than eight variables can retain those variables, but you can't add new ones. However, you can update or delete the existing variables.
+
+1. If you need to delete a variable, click the delete icon () next to it.
+
+
\ No newline at end of file
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/openidconnect/test-back-comp.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/openidconnect/test-back-comp.md
new file mode 100644
index 00000000000..0aff3d498f5
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/openidconnect/test-back-comp.md
@@ -0,0 +1 @@
+If you modify a published OIN integration, you must generate an instance based on the currently published integration for backward compatibility testing. A backward-compatible instance is eligible if it was generated from the published version of the integration before any edits are made in the current submission. The OIN Wizard detects if you're modifying a published OIN integration and asks you to generate a backward-compatible instance before you make any edits.
\ No newline at end of file
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/saml2/catalog-properties.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/saml2/catalog-properties.md
new file mode 100644
index 00000000000..ed8b0af5a24
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/saml2/catalog-properties.md
@@ -0,0 +1,12 @@
+#### OIN catalog properties
+
+1. In the **OIN catalog properties** section, specify the following OIN catalog information:
+
+ |
Property
| Description |
+ | ----------------- | ------------ |
+ | **Display name** `*` | Provide a name for your integration. This is the main title used for your integration in the OIN. The maximum field length is 64 characters. |
+ | **Description** `*` | Give a general description of your app and the benefits of this integration to your customers. See [App description guidelines](/docs/guides/submit-app-prereq/main/#app-description-guidelines). |
+ | **Logo** `*` | Upload a PNG, JPG, or GIF file of a logo to accompany your integration in the catalog. The logo file must be less than one MB. See [Logo guidelines](/docs/guides/submit-app-prereq/main/#logo-guidelines). |
+ | **Use Cases** | Add optional use case categories that apply to your integration:
Automation
Centralized Logging
Directory and HR Sync
Identity Governance and Administration (IGA)
Identity Verification
Multifactor Authentication (MFA)
Zero Trust
You can select up to three optional use cases. Default use cases are assigned to your integration based on supported features. See [Use case guidelines](/docs/guides/submit-app-prereq/main/#use-case-guidelines). |
+
+ `*` Required properties
\ No newline at end of file
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/saml2/dynamic-properties.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/saml2/dynamic-properties.md
new file mode 100644
index 00000000000..1f7b544f699
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/saml2/dynamic-properties.md
@@ -0,0 +1,7 @@
+#### Dynamic properties with Okta Expression Language
+
+ The OIN Wizard supports [Okta Expression Language](/docs/reference/okta-expression-language/#reference-user-attributes) to generate dynamic properties, such as URLs or URIs, based on your customer tenant. You can specify dynamic strings for your properties in the OIN Wizard:
+
+1. Add your [tenant settings](#tenant-settings) in the OIN Wizard. These settings become fields for customer admins to enter during your OIN integration installation to identify their tenant.
+
+2. Use the tenant setting variables with Expression Language format in your integration properties for dynamic values based on customer information.
\ No newline at end of file
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/saml2/req-app-instance.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/saml2/req-app-instance.md
new file mode 100644
index 00000000000..2f126ab59da
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/saml2/req-app-instance.md
@@ -0,0 +1,5 @@
+
+The **Required app instances** box shows you the instances detected in your org that are available to test your integration. It also shows you the test instances required for the OIN Submission Tester based on your selected protocols:
+
+* The **CURRENT VERSION** status indicates the instances that you need to test your current integration submission.
+* The **PUBLISHED VERSION** status indicates the instances that you need to test backwards compatibility if you edit a previously published integration. See [Update a published integration with the OIN Wizard](/docs/guides/update-oin-app/).
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/saml2/tenant-settings.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/saml2/tenant-settings.md
new file mode 100644
index 00000000000..5c134a7b727
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/saml2/tenant-settings.md
@@ -0,0 +1,19 @@
+#### Tenant settings
+
+Configure integration variables if your URLs are dynamic for each tenant. The variables are for your customer admins to add their specific tenant setting values during installation. See [Dynamic properties with Okta Expression Language](#dynamic-properties-with-okta-expression-language).
+
+2. In the **Tenant settings** section, specify the name and label for each tenant setting variable:
+
+ |
Property
| Description |
+ | --------------- | ------------ |
+ | **Label** `*` | The tenant setting label that's displayed when admins install your app integration. For example: `Subdomain` or `Tenant name` |
+ | **Name** `*` | Specify the tenant setting variable name. This variable name is used to construct dynamic URLs or other app properties that are dependent on the tenant. It's hidden from admins and is only used to pass tenant details to your external app. String is the only variable type supported. **Note:** Use alphanumeric lowercase and underscore characters for the variable name field. The first character must be a letter and the maximum field length is 1024 characters. For example: `subdomain_div1` |
+
+ `*` This section is optional, but if you specify a variable, both `Label` and `Name` properties are required.
+
+1. Click **+ Add another** to add another variable. You can add up to eight variables.
+
+ > **Note:** Apps that are migrated from the OIN Manager and that have more than eight variables can retain those variables, but you can't add new ones. However, you can update or delete the existing variables.
+
+1. If you need to delete a variable, click the delete icon () next to it.
+
\ No newline at end of file
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/saml2/test-back-comp.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/saml2/test-back-comp.md
new file mode 100644
index 00000000000..0aff3d498f5
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/saml2/test-back-comp.md
@@ -0,0 +1 @@
+If you modify a published OIN integration, you must generate an instance based on the currently published integration for backward compatibility testing. A backward-compatible instance is eligible if it was generated from the published version of the integration before any edits are made in the current submission. The OIN Wizard detects if you're modifying a published OIN integration and asks you to generate a backward-compatible instance before you make any edits.
\ No newline at end of file
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/scim/catalog-properties.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/scim/catalog-properties.md
new file mode 100644
index 00000000000..ed8b0af5a24
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/scim/catalog-properties.md
@@ -0,0 +1,12 @@
+#### OIN catalog properties
+
+1. In the **OIN catalog properties** section, specify the following OIN catalog information:
+
+ |
Property
| Description |
+ | ----------------- | ------------ |
+ | **Display name** `*` | Provide a name for your integration. This is the main title used for your integration in the OIN. The maximum field length is 64 characters. |
+ | **Description** `*` | Give a general description of your app and the benefits of this integration to your customers. See [App description guidelines](/docs/guides/submit-app-prereq/main/#app-description-guidelines). |
+ | **Logo** `*` | Upload a PNG, JPG, or GIF file of a logo to accompany your integration in the catalog. The logo file must be less than one MB. See [Logo guidelines](/docs/guides/submit-app-prereq/main/#logo-guidelines). |
+ | **Use Cases** | Add optional use case categories that apply to your integration:
Automation
Centralized Logging
Directory and HR Sync
Identity Governance and Administration (IGA)
Identity Verification
Multifactor Authentication (MFA)
Zero Trust
You can select up to three optional use cases. Default use cases are assigned to your integration based on supported features. See [Use case guidelines](/docs/guides/submit-app-prereq/main/#use-case-guidelines). |
+
+ `*` Required properties
\ No newline at end of file
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/scim/dynamic-properties.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/scim/dynamic-properties.md
new file mode 100644
index 00000000000..1f7b544f699
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/scim/dynamic-properties.md
@@ -0,0 +1,7 @@
+#### Dynamic properties with Okta Expression Language
+
+ The OIN Wizard supports [Okta Expression Language](/docs/reference/okta-expression-language/#reference-user-attributes) to generate dynamic properties, such as URLs or URIs, based on your customer tenant. You can specify dynamic strings for your properties in the OIN Wizard:
+
+1. Add your [tenant settings](#tenant-settings) in the OIN Wizard. These settings become fields for customer admins to enter during your OIN integration installation to identify their tenant.
+
+2. Use the tenant setting variables with Expression Language format in your integration properties for dynamic values based on customer information.
\ No newline at end of file
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/scim/req-app-instance.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/scim/req-app-instance.md
new file mode 100644
index 00000000000..2f126ab59da
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/scim/req-app-instance.md
@@ -0,0 +1,5 @@
+
+The **Required app instances** box shows you the instances detected in your org that are available to test your integration. It also shows you the test instances required for the OIN Submission Tester based on your selected protocols:
+
+* The **CURRENT VERSION** status indicates the instances that you need to test your current integration submission.
+* The **PUBLISHED VERSION** status indicates the instances that you need to test backwards compatibility if you edit a previously published integration. See [Update a published integration with the OIN Wizard](/docs/guides/update-oin-app/).
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/scim/tenant-settings.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/scim/tenant-settings.md
new file mode 100644
index 00000000000..5c134a7b727
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/scim/tenant-settings.md
@@ -0,0 +1,19 @@
+#### Tenant settings
+
+Configure integration variables if your URLs are dynamic for each tenant. The variables are for your customer admins to add their specific tenant setting values during installation. See [Dynamic properties with Okta Expression Language](#dynamic-properties-with-okta-expression-language).
+
+2. In the **Tenant settings** section, specify the name and label for each tenant setting variable:
+
+ |
Property
| Description |
+ | --------------- | ------------ |
+ | **Label** `*` | The tenant setting label that's displayed when admins install your app integration. For example: `Subdomain` or `Tenant name` |
+ | **Name** `*` | Specify the tenant setting variable name. This variable name is used to construct dynamic URLs or other app properties that are dependent on the tenant. It's hidden from admins and is only used to pass tenant details to your external app. String is the only variable type supported. **Note:** Use alphanumeric lowercase and underscore characters for the variable name field. The first character must be a letter and the maximum field length is 1024 characters. For example: `subdomain_div1` |
+
+ `*` This section is optional, but if you specify a variable, both `Label` and `Name` properties are required.
+
+1. Click **+ Add another** to add another variable. You can add up to eight variables.
+
+ > **Note:** Apps that are migrated from the OIN Manager and that have more than eight variables can retain those variables, but you can't add new ones. However, you can update or delete the existing variables.
+
+1. If you need to delete a variable, click the delete icon () next to it.
+
\ No newline at end of file
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/scim/test-back-comp.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/scim/test-back-comp.md
new file mode 100644
index 00000000000..0aff3d498f5
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/scim/test-back-comp.md
@@ -0,0 +1 @@
+If you modify a published OIN integration, you must generate an instance based on the currently published integration for backward compatibility testing. A backward-compatible instance is eligible if it was generated from the published version of the integration before any edits are made in the current submission. The OIN Wizard detects if you're modifying a published OIN integration and asks you to generate a backward-compatible instance before you make any edits.
\ No newline at end of file
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/uapiservice/catalog-properties.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/uapiservice/catalog-properties.md
new file mode 100644
index 00000000000..ed8b0af5a24
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/uapiservice/catalog-properties.md
@@ -0,0 +1,12 @@
+#### OIN catalog properties
+
+1. In the **OIN catalog properties** section, specify the following OIN catalog information:
+
+ |
Property
| Description |
+ | ----------------- | ------------ |
+ | **Display name** `*` | Provide a name for your integration. This is the main title used for your integration in the OIN. The maximum field length is 64 characters. |
+ | **Description** `*` | Give a general description of your app and the benefits of this integration to your customers. See [App description guidelines](/docs/guides/submit-app-prereq/main/#app-description-guidelines). |
+ | **Logo** `*` | Upload a PNG, JPG, or GIF file of a logo to accompany your integration in the catalog. The logo file must be less than one MB. See [Logo guidelines](/docs/guides/submit-app-prereq/main/#logo-guidelines). |
+ | **Use Cases** | Add optional use case categories that apply to your integration:
Automation
Centralized Logging
Directory and HR Sync
Identity Governance and Administration (IGA)
Identity Verification
Multifactor Authentication (MFA)
Zero Trust
You can select up to three optional use cases. Default use cases are assigned to your integration based on supported features. See [Use case guidelines](/docs/guides/submit-app-prereq/main/#use-case-guidelines). |
+
+ `*` Required properties
\ No newline at end of file
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/uapiservice/dynamic-properties.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/uapiservice/dynamic-properties.md
new file mode 100644
index 00000000000..1f7b544f699
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/uapiservice/dynamic-properties.md
@@ -0,0 +1,7 @@
+#### Dynamic properties with Okta Expression Language
+
+ The OIN Wizard supports [Okta Expression Language](/docs/reference/okta-expression-language/#reference-user-attributes) to generate dynamic properties, such as URLs or URIs, based on your customer tenant. You can specify dynamic strings for your properties in the OIN Wizard:
+
+1. Add your [tenant settings](#tenant-settings) in the OIN Wizard. These settings become fields for customer admins to enter during your OIN integration installation to identify their tenant.
+
+2. Use the tenant setting variables with Expression Language format in your integration properties for dynamic values based on customer information.
\ No newline at end of file
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/uapiservice/req-app-instance.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/uapiservice/req-app-instance.md
new file mode 100644
index 00000000000..2f126ab59da
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/uapiservice/req-app-instance.md
@@ -0,0 +1,5 @@
+
+The **Required app instances** box shows you the instances detected in your org that are available to test your integration. It also shows you the test instances required for the OIN Submission Tester based on your selected protocols:
+
+* The **CURRENT VERSION** status indicates the instances that you need to test your current integration submission.
+* The **PUBLISHED VERSION** status indicates the instances that you need to test backwards compatibility if you edit a previously published integration. See [Update a published integration with the OIN Wizard](/docs/guides/update-oin-app/).
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/uapiservice/tenant-settings.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/uapiservice/tenant-settings.md
new file mode 100644
index 00000000000..5c134a7b727
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/uapiservice/tenant-settings.md
@@ -0,0 +1,19 @@
+#### Tenant settings
+
+Configure integration variables if your URLs are dynamic for each tenant. The variables are for your customer admins to add their specific tenant setting values during installation. See [Dynamic properties with Okta Expression Language](#dynamic-properties-with-okta-expression-language).
+
+2. In the **Tenant settings** section, specify the name and label for each tenant setting variable:
+
+ |
Property
| Description |
+ | --------------- | ------------ |
+ | **Label** `*` | The tenant setting label that's displayed when admins install your app integration. For example: `Subdomain` or `Tenant name` |
+ | **Name** `*` | Specify the tenant setting variable name. This variable name is used to construct dynamic URLs or other app properties that are dependent on the tenant. It's hidden from admins and is only used to pass tenant details to your external app. String is the only variable type supported. **Note:** Use alphanumeric lowercase and underscore characters for the variable name field. The first character must be a letter and the maximum field length is 1024 characters. For example: `subdomain_div1` |
+
+ `*` This section is optional, but if you specify a variable, both `Label` and `Name` properties are required.
+
+1. Click **+ Add another** to add another variable. You can add up to eight variables.
+
+ > **Note:** Apps that are migrated from the OIN Manager and that have more than eight variables can retain those variables, but you can't add new ones. However, you can update or delete the existing variables.
+
+1. If you need to delete a variable, click the delete icon () next to it.
+
\ No newline at end of file
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/uapiservice/test-back-comp.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/uapiservice/test-back-comp.md
new file mode 100644
index 00000000000..0aff3d498f5
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/uapiservice/test-back-comp.md
@@ -0,0 +1 @@
+If you modify a published OIN integration, you must generate an instance based on the currently published integration for backward compatibility testing. A backward-compatible instance is eligible if it was generated from the published version of the integration before any edits are made in the current submission. The OIN Wizard detects if you're modifying a published OIN integration and asks you to generate a backward-compatible instance before you make any edits.
\ No newline at end of file
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/wfactions/catalog-properties.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/wfactions/catalog-properties.md
new file mode 100644
index 00000000000..ed8b0af5a24
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/wfactions/catalog-properties.md
@@ -0,0 +1,12 @@
+#### OIN catalog properties
+
+1. In the **OIN catalog properties** section, specify the following OIN catalog information:
+
+ |
Property
| Description |
+ | ----------------- | ------------ |
+ | **Display name** `*` | Provide a name for your integration. This is the main title used for your integration in the OIN. The maximum field length is 64 characters. |
+ | **Description** `*` | Give a general description of your app and the benefits of this integration to your customers. See [App description guidelines](/docs/guides/submit-app-prereq/main/#app-description-guidelines). |
+ | **Logo** `*` | Upload a PNG, JPG, or GIF file of a logo to accompany your integration in the catalog. The logo file must be less than one MB. See [Logo guidelines](/docs/guides/submit-app-prereq/main/#logo-guidelines). |
+ | **Use Cases** | Add optional use case categories that apply to your integration:
Automation
Centralized Logging
Directory and HR Sync
Identity Governance and Administration (IGA)
Identity Verification
Multifactor Authentication (MFA)
Zero Trust
You can select up to three optional use cases. Default use cases are assigned to your integration based on supported features. See [Use case guidelines](/docs/guides/submit-app-prereq/main/#use-case-guidelines). |
+
+ `*` Required properties
\ No newline at end of file
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/wfactions/dynamic-properties.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/wfactions/dynamic-properties.md
new file mode 100644
index 00000000000..1f7b544f699
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/wfactions/dynamic-properties.md
@@ -0,0 +1,7 @@
+#### Dynamic properties with Okta Expression Language
+
+ The OIN Wizard supports [Okta Expression Language](/docs/reference/okta-expression-language/#reference-user-attributes) to generate dynamic properties, such as URLs or URIs, based on your customer tenant. You can specify dynamic strings for your properties in the OIN Wizard:
+
+1. Add your [tenant settings](#tenant-settings) in the OIN Wizard. These settings become fields for customer admins to enter during your OIN integration installation to identify their tenant.
+
+2. Use the tenant setting variables with Expression Language format in your integration properties for dynamic values based on customer information.
\ No newline at end of file
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/wfactions/req-app-instance.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/wfactions/req-app-instance.md
new file mode 100644
index 00000000000..2f126ab59da
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/wfactions/req-app-instance.md
@@ -0,0 +1,5 @@
+
+The **Required app instances** box shows you the instances detected in your org that are available to test your integration. It also shows you the test instances required for the OIN Submission Tester based on your selected protocols:
+
+* The **CURRENT VERSION** status indicates the instances that you need to test your current integration submission.
+* The **PUBLISHED VERSION** status indicates the instances that you need to test backwards compatibility if you edit a previously published integration. See [Update a published integration with the OIN Wizard](/docs/guides/update-oin-app/).
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/wfactions/tenant-settings.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/wfactions/tenant-settings.md
new file mode 100644
index 00000000000..5c134a7b727
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/wfactions/tenant-settings.md
@@ -0,0 +1,19 @@
+#### Tenant settings
+
+Configure integration variables if your URLs are dynamic for each tenant. The variables are for your customer admins to add their specific tenant setting values during installation. See [Dynamic properties with Okta Expression Language](#dynamic-properties-with-okta-expression-language).
+
+2. In the **Tenant settings** section, specify the name and label for each tenant setting variable:
+
+ |
Property
| Description |
+ | --------------- | ------------ |
+ | **Label** `*` | The tenant setting label that's displayed when admins install your app integration. For example: `Subdomain` or `Tenant name` |
+ | **Name** `*` | Specify the tenant setting variable name. This variable name is used to construct dynamic URLs or other app properties that are dependent on the tenant. It's hidden from admins and is only used to pass tenant details to your external app. String is the only variable type supported. **Note:** Use alphanumeric lowercase and underscore characters for the variable name field. The first character must be a letter and the maximum field length is 1024 characters. For example: `subdomain_div1` |
+
+ `*` This section is optional, but if you specify a variable, both `Label` and `Name` properties are required.
+
+1. Click **+ Add another** to add another variable. You can add up to eight variables.
+
+ > **Note:** Apps that are migrated from the OIN Manager and that have more than eight variables can retain those variables, but you can't add new ones. However, you can update or delete the existing variables.
+
+1. If you need to delete a variable, click the delete icon () next to it.
+
\ No newline at end of file
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/wfactions/test-back-comp.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/wfactions/test-back-comp.md
new file mode 100644
index 00000000000..0aff3d498f5
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/wfactions/test-back-comp.md
@@ -0,0 +1 @@
+If you modify a published OIN integration, you must generate an instance based on the currently published integration for backward compatibility testing. A backward-compatible instance is eligible if it was generated from the published version of the integration before any edits are made in the current submission. The OIN Wizard detects if you're modifying a published OIN integration and asks you to generate a backward-compatible instance before you make any edits.
\ No newline at end of file
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/add-tester.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/add-tester.md
new file mode 100644
index 00000000000..e69de29bb2d
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/assign-test.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/assign-test.md
new file mode 100644
index 00000000000..e69de29bb2d
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/auth-settings.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/auth-settings.md
new file mode 100644
index 00000000000..e69de29bb2d
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/backward-compatible-eg.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/backward-compatible-eg.md
new file mode 100644
index 00000000000..93b54d0d2d1
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/backward-compatible-eg.md
@@ -0,0 +1,9 @@
+ Your integration update introduced a new variable (`companyId`), and you use it in your updated redirect URL. The redirect URL changed from `https://login.myapp.io` to `https://login.myapp.io?connection={app.companyId}`. In this case, ensure that the dynamic redirect URL is also valid for existing instances where the `companyId` value isn't set.
+
+ To handle empty `companyId` values, you can define the redirect URL as follows:
+
+ ```bash
+ https://{String.len(app.companyId) == 0 ? 'login.myapp.io' : 'login.myapp.io?connection=' + app.companyId}
+ ```
+
+ This expression handles both scenarios where `companyId` is populated or empty.
\ No newline at end of file
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/catalog-properties.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/catalog-properties.md
new file mode 100644
index 00000000000..970173d9989
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/catalog-properties.md
@@ -0,0 +1,13 @@
+#### OIN catalog properties
+
+1. In the **OIN catalog properties** section, specify the following OIN catalog information:
+
+ |
Property
| Description |
+ | ----------------- | ------------ |
+ | **Display name** `*` | Provide a name for your integration. This is the main title used for your integration in the OIN. The maximum field length is 64 characters. |
+ | **Description** `*` | Give a general description of your app and the benefits of this integration to your customers. See [App description guidelines](/docs/guides/submit-app-prereq/main/#app-description-guidelines). |
+ | **Logo** `*` | Upload a PNG, JPG, or GIF file of a logo to accompany your integration in the catalog. The logo file must be less than one MB. See [Logo guidelines](/docs/guides/submit-app-prereq/main/#logo-guidelines). |
+
+ `*` Required properties
+
+1. Click **Configure your integration**.
\ No newline at end of file
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/dynamic-properties.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/dynamic-properties.md
new file mode 100644
index 00000000000..e69de29bb2d
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/entitlement-management-properties.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/entitlement-management-properties.md
new file mode 100644
index 00000000000..e69de29bb2d
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/entry-path.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/entry-path.md
new file mode 100644
index 00000000000..d91967c7ebb
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/entry-path.md
@@ -0,0 +1,13 @@
+2. On the **Home** page, click **Create app** to create an app that you want to list in the Okta Integration Network. The **Manage your app** page appears.
+
+3. Select your integration capabilities, and then enter a display name and description.
+
+4. Click **Add Integration Details**. The **Integration details** page appears.
+
+ > **Note:**
+ > Alternatively, you can go to **Applications** > **Your OIN Integrations** to build your integration and select your capabilities.
+
+ If you only want to test an existing submission, see [Navigate directly to test your integration](#navigate-directly-to-test-your-integration).
+
+ > **Note:** The instructions on this page are for **Identity Verification** integrations.
+ > If you want to change the instructions that you see on this page, select a different option from the **Instructions for** dropdown list on the right.
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/express-submission-note.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/express-submission-note.md
new file mode 100644
index 00000000000..e69de29bb2d
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/generate-ins-step1.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/generate-ins-step1.md
new file mode 100644
index 00000000000..e69de29bb2d
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/generate-ins-step2.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/generate-ins-step2.md
new file mode 100644
index 00000000000..e69de29bb2d
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/generate-ins-step3-note.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/generate-ins-step3-note.md
new file mode 100644
index 00000000000..e69de29bb2d
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/generate-instance-rec.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/generate-instance-rec.md
new file mode 100644
index 00000000000..e69de29bb2d
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/oin-sub-test.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/oin-sub-test.md
new file mode 100644
index 00000000000..e69de29bb2d
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/overview-generate.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/overview-generate.md
new file mode 100644
index 00000000000..c60d4bf1b4d
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/overview-generate.md
@@ -0,0 +1,2 @@
+
+* Test your Identity Verification (IDV) integration with the OIN submission Tester using the Okta Browser Plugin.
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/overview-note.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/overview-note.md
new file mode 100644
index 00000000000..8b137891791
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/overview-note.md
@@ -0,0 +1 @@
+
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/protocol-fullname.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/protocol-fullname.md
new file mode 100644
index 00000000000..3fa050ffbaf
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/protocol-fullname.md
@@ -0,0 +1 @@
+Identity Verification integration
\ No newline at end of file
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/protocol-name.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/protocol-name.md
new file mode 100644
index 00000000000..67c045e6d1f
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/protocol-name.md
@@ -0,0 +1 @@
+Identity Verification
\ No newline at end of file
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/protocol-properties.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/protocol-properties.md
new file mode 100644
index 00000000000..84c86c487d6
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/protocol-properties.md
@@ -0,0 +1,20 @@
+#### Identity Verification integration properties
+
+> **Note:** The instructions on this page are for **Identity Verification integrations**.
+> If you want to change the instructions that you see on this page, select a different option from the **Instructions for** dropdown list.
+
+1. Specify the following properties:
+
+ | Property | Description |
+ | --- | --- |
+ | Issuer URL * | Used to check if the identity verification token received from the provider is from the expected issuer platform. |
+ | PAR URL * | The endpoint for Pushed Authorization Requests (PAR) that is used during the authorization process. |
+ | Authorization URL * | The endpoint where the request URL obtained during the PAR process is appended to retrieve the verification code. |
+ | Token URL * | The endpoint Okta uses to exchange the authorization code for a token from the identity verification provider. |
+ | JWKS URL * | The URL hosted by the vendor that provides the JSON Web Key Set (JWKS) to cryptographically verify token signatures. |
+ | **End user experience properties** ||
+ | End user license agreement URL * | The link to your end user License Agreement (EULA) or terms of use that is displayed directly within the Okta Sign-In Widget. |
+ | Privacy statement URL * | The link to your privacy policy that is displayed to users within the Okta Sign-In Widget environment. |
+ | Configuration guide URL * | The public link containing step-by-step instructions for customer administrators on how to obtain their client ID and client secret keys from your service platform. |
+
+ `*` Required properties
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/protocol-supported.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/protocol-supported.md
new file mode 100644
index 00000000000..27a4f9fa116
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/protocol-supported.md
@@ -0,0 +1,7 @@
+### Integration supported
+
+This guide covers submissions for an Identity Verification (IDV) integration.
+
+> **Notes:**
+ > * Identity Verification (IDV) integration is an *Early Access* feature. To enable this feature in the OIN admin console, go to **Settings** > **Features** and turn on **Enable Identity Verification (IDV) submission**.
+ > * The IDV capability is mutually exclusive of other capabilities in a submission. If you select the IDV capability, you can't select any other capability, such as SSO or provisioning. Similarly, if you select another capability, the Identity Verification (IDV) option is unavailable.
\ No newline at end of file
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/protocol-test-flow.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/protocol-test-flow.md
new file mode 100644
index 00000000000..e69de29bb2d
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/req-app-instance.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/req-app-instance.md
new file mode 100644
index 00000000000..933ace6b537
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/req-app-instance.md
@@ -0,0 +1,2 @@
+
+The **Required app instances** box shows you the instances detected in your org that are available to test your integration. It also shows you the test instances required for the OIN Submission Tester based on your selected protocols.
\ No newline at end of file
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/see-also.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/see-also.md
new file mode 100644
index 00000000000..e69de29bb2d
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/submit-req.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/submit-req.md
new file mode 100644
index 00000000000..2158d6e9511
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/submit-req.md
@@ -0,0 +1,5 @@
+The OIN Wizard checks the following for Identity Verification (IDV) submissions:
+
+* All required instances are created.
+* Required user to be tested on IDV added.
+* All required tests are passed within the past 48 hours.
\ No newline at end of file
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/tenant-settings.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/tenant-settings.md
new file mode 100644
index 00000000000..e69de29bb2d
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/test-back-comp.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/test-back-comp.md
new file mode 100644
index 00000000000..e69de29bb2d
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/test-info-review.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/test-info-review.md
new file mode 100644
index 00000000000..8b137891791
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/test-info-review.md
@@ -0,0 +1 @@
+
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/test-instance.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/test-instance.md
new file mode 100644
index 00000000000..3309cbda5cb
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/test-instance.md
@@ -0,0 +1,42 @@
+
+1. From the **Test integration** page, click **Generate instance**.
+
+ The **Identity Providers** page opens within the **Security** tab, displaying the **Configure IDV instance** page. When your integration is published in the OIN catalog, the customer admin uses this configuration page to activate your service. This enables you to assume the customer admin persona to verify that labels and properties are appropriate for your integration.
+
+ If you need to change any labels or properties, go back to edit your submission.
+
+ > **Note:** The Integrator Free Plan has no limit on active app instances. You can create as many test instances as needed for your integration. To deactivate any instances that you no longer need, see [Deactivate an app instance in your org](#deactivate-an-app-instance-in-your-org).
+
+1. Under **General settings**, enter the name of the app instance in the **Instance name** field.
+1. In the **Configure identity verification** section, enter the following properties:
+
+ | Property | Description |
+ | :--- | :--- |
+ | **Client ID \*** | Enter the client ID from your IDV vendor. |
+ | **Client secret \*** | Enter the client secret from your IDV vendor. |
+ | **Scope \*** | The `openid`, `profile`, and `identity_assurance` scopes are pre-filled in the field and are required to perform the verification. Select the field and enter the name of another scope that you want to add. Press Enter. Repeat for each additional scope that you want to add. |
+
+1. Click **Finish** to complete configuring your instance..
+1. Add your user attributes by clicking the user profile dropdown menu, selecting the appropriate profile attribute, and mapping it to your configuration.
+1. Click **Finish**.
+1. Click **Begin testing**. This action redirects you back to the **Test integration** page, where the newly created instance is now listed under the detected instances section.
+
+##### Run the OIN Submission Tester for IDV
+
+The OIN Submission Tester uses a real-time policy evaluation Workflow to verify that your identity verification service correctly interacts with Okta core auditing systems.
+
+1. In the **OIN submission tester** section, click **Add test user**. The **Test user for identity verification** dialog box appears.
+1. Select an active test user from your directory.
+ * **Note:** If you need to populate your environment with more accounts, click **Add more users to directory** before making your selection.
+1. Click **Add test user** to bind the selected account to the active test cycle.
+1. Click **Run test** to initiate the automated test sequence. The tester executes the following validation flow:
+ * **Policy rule generation**: The tester creates a rule for the selected test user within the **Authentication Policies** tab of your [Okta Access Management Policy](/docs/guides/okta-account-management-policy/main).
+ * **Isolated session execution**: The tester opens a new browser window in incognito mode. Sign in to this session using the test user credentials.
+ * **Identity verification flow invocation**: Once authenticated, manually trigger an event to force an [Okta account management policy](/docs/guides/okta-account-management-policy/main) evaluation. For a list of valid events, see [Alternate Use Cases for IDV](https://developer.okta.com/docs/guides/add-id-verification-idp/customidv/main/#alternate-use-cases).
+ * **Identity verification flow evaluation**: Complete the identity proofing checkpoints required by your vendor service platform. If the integration fails to communicate with Okta, the tester displays an error message. For details on the system log events captured during this phase, see [Identity Verification Events](/docs/guides/idv-integration/main/#identity-verification-events).
+ * **Session cleanup**: The incognito window closes automatically, and the temporary authentication policy rule is deleted from your organization configuration.
+
+1. Review your test results on the main **Test integration** page. When the testing sequence passes successfully, the following status criteria display with confirmation check marks:
+ * **All required app instances are active**
+ * **User to be tested on IDV added**
+ * **All required tests passed within the past 48 hours**
\ No newline at end of file
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/test-instruction.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/test-instruction.md
new file mode 100644
index 00000000000..8b137891791
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/test-instruction.md
@@ -0,0 +1 @@
+
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/test-scim.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/test-scim.md
new file mode 100644
index 00000000000..8b137891791
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/test-scim.md
@@ -0,0 +1 @@
+
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/test-ul-int.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/test-ul-int.md
new file mode 100644
index 00000000000..8b137891791
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/test-ul-int.md
@@ -0,0 +1 @@
+
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/universal-logout-properties.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/universal-logout-properties.md
new file mode 100644
index 00000000000..e69de29bb2d
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/update-app-instance.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/update-app-instance.md
new file mode 100644
index 00000000000..5159e34f561
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/update-app-instance.md
@@ -0,0 +1,22 @@
+
+#### Update an app instance in your org
+
+To edit the app instance from the OIN Wizard, follow these steps:
+
+1. Go to **Test integration** > **Application instances for testing**.
+1. Click **Clear filters** to see all instances in your org if you don't see the instance that you want to edit.
+1. Select **Update instance details** from the more icon () next to the app instance you want to update. The instance details page appears.
+1. Edit the app instance. You can [edit app instance settings](#generate-an-instance-for) or [assign users to your app instance](https://help.okta.com/okta_help.htm?type=oie&id=ext_Apps_Apps_Page-assign).
+
+5. Return to the OIN Wizard:
+
+ * Click **Begin testing** (upper-right corner) for the current submission instance.
+
+ The **Test integration** page appears.
+
+ * Click **Go to integrations** (upper-right corner) for the backward-compatible instance.
+
+ The **Your OIN Integrations** dashboard appears.
+ Go to your integration submission > **Configure your integration** > **Get started with testing** to continue with testing your integration.
+
+> **Note:** After you edit a test instance, any previous test results for that instance are invalid and removed from the OIN Submission Tester. Rerun all the required tests again with the new instance.
\ No newline at end of file
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/variable-desc.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/variable-desc.md
new file mode 100644
index 00000000000..e69de29bb2d
diff --git a/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/what-need.md b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/what-need.md
new file mode 100644
index 00000000000..544cd75c252
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/submit-oin-app/main/xidv/what-need.md
@@ -0,0 +1,3 @@
+* A functional integration that's based on the [Integrate Okta with identity verification vendors](/docs/guides/idv-integration/main/) guide
+
+* Google Chrome browser with the Okta Browser Plugin installed (see [OIN Wizard requirements](/docs/guides/submit-app-prereq/main/#oin-wizard-requirements))
\ No newline at end of file
diff --git a/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/index.md b/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/index.md
index f580ddc04a5..9af58f659b0 100644
--- a/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/index.md
+++ b/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/index.md
@@ -6,13 +6,13 @@ meta:
layout: Guides
---
-Learn how to submit an OIDC, SAML 2.0, SCIM 2.0, Universal Logout, or API service integration to the Okta Integration Network (OIN) using the OIN Wizard.
+Learn how to submit an OIDC, SAML 2.0, SCIM 2.0, Universal Logout, API service, or Identity Verification (IDV) integration to the Okta Integration Network (OIN) using the OIN Wizard.
---
#### What you need
-* A published OIDC, SAML 2.0, SCIM, or API service integration in the OIN.
+* A published OIDC, SAML 2.0, SCIM, API service, or Identity Verification (IDV) integration in the OIN.
* The [Okta Integrator Free Plan org](https://developer.okta.com/signup/) from where you originally submitted your published integration. The OIN Wizard is only available in Integrator Free Plan orgs.
* An admin user in the Integrator Free Plan org with either the super admin or the app and org admin roles.
@@ -20,7 +20,7 @@ Learn how to submit an OIDC, SAML 2.0, SCIM 2.0, Universal Logout, or API servic
## Overview
-If you have a published Single Sign-On (SSO), lifecycle management, or API service integration in the [OIN catalog](https://www.okta.com/integrations/), you can update and resubmit it with the OIN Wizard.
+If you have a published Single Sign-On (SSO), lifecycle management, API service, or IDV integration in the [OIN catalog](https://www.okta.com/integrations/), you can update and resubmit it with the OIN Wizard.
The OIN Wizard currently supports updates for integrations that use the following protocols:
@@ -36,7 +36,7 @@ The OIN Wizard currently supports updates for integrations that use the followin
* [API service integration](/docs/guides/oin-api-service-overview/)
-> **Note:** You can use the [OIN Wizard](/docs/guides/update-oin-app/) to update OIDC, SAML 2.0, SCIM 2.0, and API service integrations that were originally submitted through the [OIN Manager](/docs/guides/submit-app/).
+> **Note:** You can use the [OIN Wizard](/docs/guides/update-oin-app/) to update OIDC, SAML 2.0, SCIM 2.0, API service, or IDV integrations that were originally submitted through the [OIN Manager](/docs/guides/submit-app/).
When you edit a published OIN integration, you need to test the flows for the updated version and the published version for backwards compatibility. The integration version that was previously installed in your customer's org isn't modified with the updated version from the OIN catalog. Testing the published version for backwards compatibility ensures that your integration still works for customers who have already installed it. See [Update integration considerations](#update-integration-considerations) before you edit your published integration.
@@ -44,30 +44,13 @@ After you successfully test the updated and published versions of your integrati
## Update integration considerations
-For published integrations that were migrated from the OIN Manager, if you need to update configured properties that aren't available in the OIN Wizard, contact .
-
> **Note:** Some considerations on this page are specifically for the **** .
> If you want to change the instructions that you see on this page, select a different option from the **Instructions for** dropdown list.
-* When you update an integration that's already published, be mindful to preserve backwards compatibility for your integration. Older instances of your integration could be in use by Okta customers.
-
- * If you modify the **Name** (`name`) property of your [tenant settings](/docs/guides/submit-oin-app/openidconnect/main/#tenant-settings), Okta removes the original variable and creates a variable with your updated name. This action negatively impacts your existing customers if you use the original variable in your integration dynamic properties.
-
- * Migrated published integrations from the OIN Manager don't have some OIN Wizard restrictions. For instance:
-
- * Published integrations can have more than three integration variables
- * Published integrations can have variable names with uppercase letters
- * Published integrations can use `http` (instead of enforced `https`) in URLs and Expression Language-supported properties
-
- * If your update introduces new variables and you're using dynamic URLs, ensure that your tests cover various scenarios with different possible values for those variables. The newly introduced variables aren't populated for older instances of your integration.
-
- For example:
-
-
- * Entitlement Management is only supported for SCIM-based provisioning.
+
## Update your integration
diff --git a/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/openidconnect/considerations.md b/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/openidconnect/considerations.md
index e69de29bb2d..50e12382615 100644
--- a/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/openidconnect/considerations.md
+++ b/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/openidconnect/considerations.md
@@ -0,0 +1,18 @@
+For published integrations that were migrated from the OIN Manager, if you need to update configured properties that aren't available in the OIN Wizard, contact .
+
+* When you update an integration that's already published, be mindful to preserve backwards compatibility for your integration. Older instances of your integration could be in use by Okta customers.
+
+ * If you modify the **Name** (`name`) property of your [tenant settings](/docs/guides/submit-oin-app/openidconnect/main/#tenant-settings), Okta removes the original variable and creates a variable with your updated name. This action negatively impacts your existing customers if you use the original variable in your integration dynamic properties.
+
+ * Migrated published integrations from the OIN Manager don't have some OIN Wizard restrictions. For instance:
+
+ * Published integrations can have more than three integration variables
+ * Published integrations can have variable names with uppercase letters
+ * Published integrations can use `http` (instead of enforced `https`) in URLs and Expression Language-supported properties
+
+ * Entitlement Management is only supported for SCIM-based provisioning.
+
+ * If your update introduces new variables and you're using dynamic URLs, ensure that your tests cover various scenarios with different possible values for those variables. The newly introduced variables aren't populated for older instances of your integration.
+
+ For example:
+
diff --git a/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/saml2/considerations.md b/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/saml2/considerations.md
index e69de29bb2d..50e12382615 100644
--- a/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/saml2/considerations.md
+++ b/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/saml2/considerations.md
@@ -0,0 +1,18 @@
+For published integrations that were migrated from the OIN Manager, if you need to update configured properties that aren't available in the OIN Wizard, contact .
+
+* When you update an integration that's already published, be mindful to preserve backwards compatibility for your integration. Older instances of your integration could be in use by Okta customers.
+
+ * If you modify the **Name** (`name`) property of your [tenant settings](/docs/guides/submit-oin-app/openidconnect/main/#tenant-settings), Okta removes the original variable and creates a variable with your updated name. This action negatively impacts your existing customers if you use the original variable in your integration dynamic properties.
+
+ * Migrated published integrations from the OIN Manager don't have some OIN Wizard restrictions. For instance:
+
+ * Published integrations can have more than three integration variables
+ * Published integrations can have variable names with uppercase letters
+ * Published integrations can use `http` (instead of enforced `https`) in URLs and Expression Language-supported properties
+
+ * Entitlement Management is only supported for SCIM-based provisioning.
+
+ * If your update introduces new variables and you're using dynamic URLs, ensure that your tests cover various scenarios with different possible values for those variables. The newly introduced variables aren't populated for older instances of your integration.
+
+ For example:
+
diff --git a/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/scim/considerations.md b/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/scim/considerations.md
index 01c7cf2dbca..1d17fefdbec 100644
--- a/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/scim/considerations.md
+++ b/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/scim/considerations.md
@@ -1,3 +1,21 @@
+For published integrations that were migrated from the OIN Manager, if you need to update configured properties that aren't available in the OIN Wizard, contact .
+
* You can't update a published SCIM integration with Basic authentication. This breaks the integration for existing customers. For any updates, you must submit a new SCIM integration that implements header authentication or OAuth 2.0 authentication. You can use either token or bearer token format for header authentication.
* If you edit a published SCIM integration that was migrated from the OIN Manager, the **Import users** (and **Import groups** if groups are managed) capability is automatically enabled in the OIN Wizard. You must support and test this capability if your previous SCIM integration didn't support it. If you need help with implementing this feature, contact .
+
+* When you update an integration that's already published, be mindful to preserve backwards compatibility for your integration. Older instances of your integration could be in use by Okta customers.
+
+ * If you modify the **Name** (`name`) property of your [tenant settings](/docs/guides/submit-oin-app/openidconnect/main/#tenant-settings), Okta removes the original variable and creates a variable with your updated name. This action negatively impacts your existing customers if you use the original variable in your integration dynamic properties.
+
+ * Migrated published integrations from the OIN Manager don't have some OIN Wizard restrictions. For instance:
+
+ * Published integrations can have more than three integration variables
+ * Published integrations can have variable names with uppercase letters
+ * Published integrations can use `http` (instead of enforced `https`) in URLs and Expression Language-supported properties
+
+ * Entitlement Management is only supported for SCIM-based provisioning.
+
+ * If your update introduces new variables and you're using dynamic URLs, ensure that your tests cover various scenarios with different possible values for those variables. The newly introduced variables aren't populated for older instances of your integration.
+
+ For example:
diff --git a/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/uapiservice/considerations.md b/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/uapiservice/considerations.md
index e69de29bb2d..50e12382615 100644
--- a/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/uapiservice/considerations.md
+++ b/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/uapiservice/considerations.md
@@ -0,0 +1,18 @@
+For published integrations that were migrated from the OIN Manager, if you need to update configured properties that aren't available in the OIN Wizard, contact .
+
+* When you update an integration that's already published, be mindful to preserve backwards compatibility for your integration. Older instances of your integration could be in use by Okta customers.
+
+ * If you modify the **Name** (`name`) property of your [tenant settings](/docs/guides/submit-oin-app/openidconnect/main/#tenant-settings), Okta removes the original variable and creates a variable with your updated name. This action negatively impacts your existing customers if you use the original variable in your integration dynamic properties.
+
+ * Migrated published integrations from the OIN Manager don't have some OIN Wizard restrictions. For instance:
+
+ * Published integrations can have more than three integration variables
+ * Published integrations can have variable names with uppercase letters
+ * Published integrations can use `http` (instead of enforced `https`) in URLs and Expression Language-supported properties
+
+ * Entitlement Management is only supported for SCIM-based provisioning.
+
+ * If your update introduces new variables and you're using dynamic URLs, ensure that your tests cover various scenarios with different possible values for those variables. The newly introduced variables aren't populated for older instances of your integration.
+
+ For example:
+
diff --git a/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/uapiservice/test b/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/uapiservice/test
new file mode 100644
index 00000000000..3f07623e796
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/uapiservice/test
@@ -0,0 +1,32 @@
+```mermaid
+flowchart LR
+ classDef clientBox fill:#E8F4FD,stroke:#006AC1,color:#1B1B1B,font-size:13px
+ classDef mcpBox fill:#006AC1,stroke:#004F8C,color:#FFFFFF,font-size:13px
+ classDef subBox fill:#1A6DB5,stroke:#FFFFFF,color:#FFFFFF,font-size:11px
+ classDef oktaBox fill:#F5F5F5,stroke:#CCCCCC,color:#1B1B1B,font-size:13px
+
+ subgraph CLIENT["MCP Client"]
+ C1["Claude Desktop\nVS Code\nAmazon Bedrock"]
+ end
+
+ subgraph MCP["Okta-Hosted MCP Server"]
+ direction TB
+ S1["① Authentication & Validation\n─────────────────────\n• Verifies OIDC session\n• Checks OAuth scopes\n• Validates inputs against security schemas"]
+ S2["② API Execution\n─────────────────────\n• Identifies relevant Okta API\n• Executes call against your Okta org\n• Retrieves result"]
+ S3["③ Response Optimization\n─────────────────────\n• Removes _links and _embedded\n• Returns clean, concise result"]
+ S1 --> S2 --> S3
+ end
+
+ subgraph OKTA["Okta Admin Console"]
+ O1["Users\nGroups\nApplications\nPolicies\nSystem Logs\nOIG"]
+ end
+
+ CLIENT -->|"① HTTPS\nSecure request"| MCP
+ MCP -->|"② Okta API call"| OKTA
+ OKTA -->|"③ API response"| MCP
+ MCP -->|"④ Clean, optimized\nresponse"| CLIENT
+
+ class CLIENT,C1 clientBox
+ class MCP mcpBox
+ class S1,S2,S3 subBox
+ class OKTA,O1 oktaBox
\ No newline at end of file
diff --git a/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/xidv/backward-compatible-eg.md b/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/xidv/backward-compatible-eg.md
new file mode 100644
index 00000000000..8b137891791
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/xidv/backward-compatible-eg.md
@@ -0,0 +1 @@
+
diff --git a/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/xidv/considerations.md b/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/xidv/considerations.md
new file mode 100644
index 00000000000..bbf5cb5f62f
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/xidv/considerations.md
@@ -0,0 +1 @@
+* When you update an integration that's already published, be mindful to preserve backwards compatibility for your integration. Older instances of your integration could be in use by Okta customers.
diff --git a/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/xidv/detect-old-instance.md b/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/xidv/detect-old-instance.md
new file mode 100644
index 00000000000..8b137891791
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/xidv/detect-old-instance.md
@@ -0,0 +1 @@
+
diff --git a/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/xidv/edit-links.md b/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/xidv/edit-links.md
new file mode 100644
index 00000000000..a4c7a4bc7aa
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/xidv/edit-links.md
@@ -0,0 +1,2 @@
+* [Identity Verification integration properties](/docs/guides/submit-oin-app/xidv/main/#properties)
+ > **Note:** The **Identity Verification** capability is mutually exclusive of other capabilities in a submission. If you select Identity Verification, you can’t select any other capability. Similarly if you select another capability, the **Identity Verification** option is unavailable.
diff --git a/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/xidv/express-submission-note.md b/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/xidv/express-submission-note.md
new file mode 100644
index 00000000000..e69de29bb2d
diff --git a/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/xidv/generate-instance.md b/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/xidv/generate-instance.md
new file mode 100644
index 00000000000..8b137891791
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/xidv/generate-instance.md
@@ -0,0 +1 @@
+
diff --git a/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/xidv/protocol-name.md b/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/xidv/protocol-name.md
new file mode 100644
index 00000000000..dda2f30a01c
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/xidv/protocol-name.md
@@ -0,0 +1 @@
+ Identity Verification integration
\ No newline at end of file
diff --git a/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/xidv/required-app-instances.md b/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/xidv/required-app-instances.md
new file mode 100644
index 00000000000..1a3cd83b3ed
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/xidv/required-app-instances.md
@@ -0,0 +1,3 @@
+The **Required app instances** section shows you the instances detected in your org that are required for the OIN submission Tester.
+
+[Generate an instance](#generate-an-instance) to test the specific protocol if **No instance detected** appears next to the protocol.
diff --git a/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/xidv/submit-checks.md b/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/xidv/submit-checks.md
new file mode 100644
index 00000000000..dc5a748778b
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/xidv/submit-checks.md
@@ -0,0 +1,5 @@
+The OIN Wizard checks the following for Identity Verification submissions:
+
+* All required instances are created.
+* Required user to be tested on IDV added.
+* All required tests are passed within the past 48 hours.
\ No newline at end of file
diff --git a/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/xidv/test-instance.md b/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/xidv/test-instance.md
new file mode 100644
index 00000000000..f685ec3813d
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/xidv/test-instance.md
@@ -0,0 +1 @@
+See [Generate an instance for Identity Verification integration](/docs/guides/submit-oin-app/xidv/main/#generate-an-instance-for) to test your generated instance.
diff --git a/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/xidv/test-steps.md b/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/xidv/test-steps.md
new file mode 100644
index 00000000000..6bde83a1997
--- /dev/null
+++ b/packages/@okta/vuepress-site/docs/guides/update-oin-app/main/xidv/test-steps.md
@@ -0,0 +1 @@
+1. Generate app instances from your updated integration. See [Generate instances for testing](#generate-instances-for-testing).
diff --git a/packages/@okta/vuepress-theme-prose/assets/css/okta/icons/classes.scss b/packages/@okta/vuepress-theme-prose/assets/css/okta/icons/classes.scss
index 9b8de8dd5e4..3f7517bc159 100755
--- a/packages/@okta/vuepress-theme-prose/assets/css/okta/icons/classes.scss
+++ b/packages/@okta/vuepress-theme-prose/assets/css/okta/icons/classes.scss
@@ -2116,6 +2116,12 @@ h1 {
background-image: url("/img/icons/odyssey/APIs.svg");
}
+.icon.xidv::before{
+ content: "";
+
+ background-image: url("/img/icons/customer_identity.svg");
+}
+
.icon.uapiservice::before {
content: "";
diff --git a/packages/@okta/vuepress-theme-prose/custom-landings/OktaIntegrationNetwork/components/Features.vue b/packages/@okta/vuepress-theme-prose/custom-landings/OktaIntegrationNetwork/components/Features.vue
index b68443dd2e7..859f9f1e830 100644
--- a/packages/@okta/vuepress-theme-prose/custom-landings/OktaIntegrationNetwork/components/Features.vue
+++ b/packages/@okta/vuepress-theme-prose/custom-landings/OktaIntegrationNetwork/components/Features.vue
@@ -132,6 +132,17 @@
'Securely access Okta API endpoints using OAuth 2.0 without user association (service-to-service use case)',
'Allow customers to find and configure your integration through the Okta Integration Network catalog'
]
+ },
+ {
+ id: 4,
+ title: 'Integrate Identity Verification',
+ text: "Verify and securely validate user identities directly from your app using the Identity Verification integration",
+ link: '/docs/guides/submit-oin-app/xidv/main/',
+ linkText: 'Get started with Identity Verification integrations',
+ list: [
+ 'Allow customers to find and easily connect your identity verification app through the Okta Integration Network catalog.'
+
+ ]
}
]
}
diff --git a/packages/@okta/vuepress-theme-prose/util/frameworks.js b/packages/@okta/vuepress-theme-prose/util/frameworks.js
index 9257c71e199..0d7f815ca4e 100644
--- a/packages/@okta/vuepress-theme-prose/util/frameworks.js
+++ b/packages/@okta/vuepress-theme-prose/util/frameworks.js
@@ -29,6 +29,7 @@ const COMMON_NAME_TO_FANCY_NAME = {
incode: 'Incode',
clear: 'CLEAR1',
customidv: 'Custom IDV',
+ xidv: 'Identity verification',
react: 'React',
preact: 'Preact',
vue: 'Vue.js',