# Configure Persona as an Authentication Method in Auth0

> How to add Persona to an Auth0 tenant as a custom step-up authentication factor using Auth0 Actions.

Source: https://help.withpersona.com/articles/RTNtAZtkfsWCcFDz2HxGlA/
Section: Marketplace and 3rd-Party Integrations > Authentication > Auth0

## Overview

Auth0 has no built-in "add an external identity provider as an authentication factor" setting that Persona can plug into with configuration alone. Bringing Persona into an Auth0-protected login flow means writing custom code against Auth0's [Actions](https://auth0.com/docs/customize/actions/flows-and-triggers/login-flow/redirect-with-actions) extensibility framework.

ℹ️

This article gives high-level guidance and links to Auth0's own documentation, rather than a full click-by-click walkthrough. It uses Auth0's general-purpose extensibility framework rather than a Persona-specific setting, so the implementation is specific to your tenant. Auth0's documentation is the source of truth for the details.

## Persona as a custom step-up authentication factor

To use Persona as a step-up factor, for example requiring a selfie check before a password reset or before access to a sensitive resource, you write a [post-login Action](https://auth0.com/docs/customize/actions/flows-and-triggers/login-flow/redirect-with-actions) that, at a high level:

1.  Checks `event.authentication.methods` for a record showing the user already completed the Persona factor recently; if not, calls `api.redirect.sendUserTo()` to suspend the login and send the user to a page that starts a Persona inquiry.
2.  After the user completes the inquiry, redirects back to Auth0's `/continue` endpoint to resume the login.
3.  In the `onContinuePostLogin` handler, the only handler this call is allowed in, calls `api.authentication.recordMethod()` to record that the custom factor completed, so later logins in the same session don't unnecessarily re-trigger it.

⚠️

Write verification results back to the user record using the [Auth0 Management API](https://auth0.com/docs/api/management/v2), for example to `app_metadata`, rather than relying on front-channel query parameters, which a user can tamper with in the browser.

Because this path is entirely custom code running in your tenant, review Auth0's [Redirect with Actions](https://auth0.com/docs/customize/actions/flows-and-triggers/login-flow/redirect-with-actions) documentation in full before implementing it, including its notes on how a redirect interacts with `prompt=none` silent authentication and refresh tokens.

## Need help?

Reach out to Persona support with details about your Auth0 tenant configuration.

## Plans Explained

### Auth0 Integration by plan

|                   | Startup Program | Essential Plan | Growth Plan | Enterprise Plan |
| ----------------- | --------------- | -------------- | ----------- | --------------- |
| Auth0 Integration | Not Available   | Not Available  | Limited     | Available       |

[Learn more about pricing and plans](https://withpersona.com/pricing?utm_source=product&utm_medium=referral&utm_audience=a&utm_campaign=cm_gen_ds_hc-plan-table).

_Last updated on September 3, 2026._
