Skip to main content

Setup

Time to Complete15 minutes
Skills RequiredNo technical skills!
tip

Complete this Setup guide before following the 1-Click Signup SDK Integration or API Integration guide.

1. Access the Dashboard.

Create or log into your Verified Dashboard account.

How to Create a Dashboard Account

a. Enter your email and click the 1-Click Login button.

We'll send you a verification code by email.

tip

Use your work email. We use AI to auto-magically set brand information based on your email domain, so you don't have to manually enter it!

b. Complete the verification step.

Click the verification button in the email or enter the verification code. We'll automatically log you in. It's a 1-click experience, as promised!

c. (optional) Set up MFA.

Set up multi-factor authentication with an authenticator app. This is optional until you request approval for Production access, at which point it's required.

d. (if necessary) Confirm your company name.

If you're creating the Dashboard account for your company, we'll ask you to confirm your company name. If someone on your team has already created your account, you won't need to do this.

If your account doesn't have a brand yet, we'll automatically create one for you and take you to its Brand Details page.

Why Multiple Brands?

Your company account can have one or more brands. Generally, you'll only need one brand, but there are some cases where it's helpful to use multiple. For example:

  • If you have multiple products: If you have products that go by different names, it can be useful to create different brands to help users know which product they're using 1-Click Signup for — and to help your team track metrics specific to that product.
  • If you want to try different brand settings: If you want to change brand settings without affecting your existing implementation (even in Sandbox), you can duplicate your brand and configure different settings on the new brand.

e. (optional) Invite team members.

Invite your team members to join your Dashboard account.

2. Configure brand settings.

On the Brands page, click the Create button to create a new brand, or click Brand Details to access brand settings for an existing brand.

Brand Name

Choose an external name for your brand. This will be used elsewhere in the Dashboard (for example on the Metrics page) and displayed to users in the SDK (if you choose to use the SDK).

The internal brand name is separate, and you can edit it at the top of the page. You can use this to label brands created for testing purposes, for example.

1-Click Signup Settings

Click the 1-Click Signup tab to access these settings.

Challenges

A challenge is a secondary input (alongside verified phone, which is always required) that must match the corresponding output.

By default, First Name is set to Always, and Birth Date and SSN4 are disabled.

Choose which challenge(s) to use:

OptionDescription
First NamePrompt the user for their first name
BirthdayPrompt the user for their birthday
SSN4Prompt the user for their SSN4

For the enabled challenge(s), choose when to prompt the user for them:

OptionDescription
AlwaysUpfront, every time
Only if necessaryOnly if Verified can't source data based on other inputs
What We Recommend

We recommend using a single challenge, either First Name or Birthday, and always requiring it.

Why We Recommend This
  • One challenge is generally better than multiple:
    • Every additional input adds friction, with the risk that we won't be able to source data for the user.
    • We can successfully source data based on phone and one challenge the vast majority of the time.
    • Prompting for another challenge only slightly increases the chance that we'll be able to source data for the user, and it adds substantial friction.
  • First Name is generally easiest for the user:
    • Users are typically comfortable providing their first name.
    • Most users will have an autofill option for first name from their browser or OS.
    • First names are easy and fast to type.
  • Birthday is generally better than SSN4:
    • Users are typically more comfortable providing their birthday.
    • Some users will have an autofill option for birthday from their browser or OS.
    • Everyone has a birthday, but not everyone has an SSN.
  • Data quality is higher with a challenge than without one:
    • You can use 1-Click Signup without always requiring any challenge.
    • If you do, we'll return data if we can source a unique user record based on phone only.
    • However, for most use cases this isn't worth the slightly lower friction, because data quality is lower with phone only.

If you enable multiple challenges, drag and drop them into the order in which you want the user to be prompted for them. Challenges set to Always will automatically be put before those set to Only if necessary.

Manual Signup

Choose how to handle manual signup:

OptionDescription
Use Verified's
Coming Soon
Use Verified to handle manual signup
Use your ownUse your own manual signup flow
HideDon’t show user manual signup button
note

A manual signup flow begins if the user clicks the “Sign Up Manually Instead” button on the phone screen. If you select the Hide option below, this button will be hidden.

tip

Hiding the manual signup option could reduce conversion or it could reduce fraud — it depends on your use case and implementation.

Risk Signals

Definition

Risk signals are metadata that enhance 1-Click Signup's anti-fraud capabilities.

Choose which risk signals to include in Verified's responses:

OptionDescription
OnInclude risk signals
Off
Not Recommended
Don't include risk signals
Risk Signals Enable Multiple Addresses

We can return up to 3 most recent addresses for a user, if you have risk signals turned on. We order these addresses from most to least recent, as best as we're able to determine recency.

You can show the user a dropdown to select one of the addresses on the info confirmation step (see here on the User Experience page). We highly recommend this because it helps reduce the chance the user will need to manually enter an address, reducing friction and boosting conversion.

danger

Off is not recommended. It will prevent us from sourcing risk signals for a user — and blocking them if the risk score is too high. It will also prevent us from returning multiple addresses for a user.

Default Credential Requests

Definitions
  • A credential is a piece of identity data about a user (like a first name or address).
  • A credential request is how you ask Verified for a particular credential. It encodes what type of data you're asking for, whether it's required or optional, whether multiple values should be returned, etc. See the CredentialRequest type for full details.

Choose which credentials Verified should try to source about the user:

Settings for a Credential Request
SettingRelevant to Integration WithOptionsDefaultDescriptionExample
Field TypeSDK and APICredential type-Type of user data this field is forFull Name
Field DescriptionSDK onlyText-Text that appears under the fieldLegal name (for Full Name field type)
Optional or RequiredSDK only
  • Optional
  • Required if available (see note below)
Optional
Whether the field is optional or required
Optional
Allow User InputSDK only
  • Yes
  • No
YesWhether the user is allowed data returned for the fieldYes
Multiple ValuesSDK and API
  • Yes
  • No
  • Yes for Address field type
  • No for all other field types
Whether the user can choose among multiple values (if they're returned)No
note

Field Description, Optional or Required, and Allow User Input are only relevant if you use our SDK because they affect the user interface the SDK displays.

What Required If Available Means

If Optional or Required is set to Required if available:

  • If data is returned for the field, the user is required to share it. (If Allow User Input is set to Yes, the user can edit the data.)
  • If data is not returned for the field, the user can optionally share it. (If Allow User Input is set to Yes, the user can edit the data. If it's set to No, the field is not displayed to the user.)

When you create a new brand, the Dashboard starts you off with standard credential requests to provide you with a helpful starting point:

Standard Credential Requests
Field TypeField DescriptionOptional or RequiredAllow User InputMultiple Values
Full Name-
Optional
YesNo
↳ First Name-
Optional
Yes-
↳ Last Name-
Optional
Yes-
Phone-
Optional
YesNo
Address-
Optional
YesYes
↳ Line 1-
Optional
Yes-
↳ Line 2Apt, Unit, etc.
Optional
Yes-
↳ City-
Optional
Yes-
↳ State-
Optional
Yes-
↳ ZIP Code-
Optional
Yes-
↳ Country-
Optional
Yes-
Birth Date-
Optional
Yes-
SSN-
Optional
Yes-

Styling Settings

important

Styling settings only apply to 1-Click Signup using the SDK because they affect the user interface the SDK displays. (They also apply to Text to Signup.)

So, if you are only using 1-Click Signup with the the API, you can ignore these settings.

Verified Auto-Magically Configures Styling Settings

We use AI to auto-magically configure styling settings based on your email domain, so you don't have to do so manually from scratch!

Click the Styling tab to access these settings.

Choose how to style the SDK:

SettingOptionsDefaultDescription
LogoAny square image (max size 200 KB, JPG or PNG)-Logo displayed to users
Alignment
  • Left
  • Center
  • Right
  • Stretch
CenterAlignment used for most text, buttons, and the powered by Verified graphic
Font FamilyAny Google fontLatoFont used for all elements
1-Click Word
  • Signup
  • Login
  • Verify
  • Apply
  • Access
  • AutoFill
SignupWord that appears after "1-Click" in the powered by Verified graphic
Input Border RadiusAny number4Border radius used for all inputs
Button Border RadiusAny number4Border radius used for all buttons
Success Animation
  • Full
  • None
FullWhether to show the success animation
Primary ColorAny hex code#0DBC3DColor used for primary buttons and success indicators
Error ColorAny hex code#EB0D28Color used for errors
Muted ColorAny hex code#BDBDBDColor used for secondary buttons and text
Background ColorAny hex code#FFFFFFColor used for background
Graphic Color
  • Green
  • Gray
  • Black
  • White
GreenColor of the Verified logo in the powered by Verified graphic
Advanced StylingCustom JSON-Custom JSON configuration that allows fine-grained control over any SDK component styling, using the MUI theme system
The SDK Automatically Adjusts Text Color for Contrast

The SDK will automaticallly adjust the color of text to achieve good contrast, given the color of an element. For example:

  • If you set Background Color to be dark, the SDK will adjust text on the background to be light.
  • If you set Primary Color to be light, the SDK will adjust text on buttons to be dark.

Advanced Styling

The sections below give examples of how you can use custom code to style the SDK in more complex ways.

warning

It's up to you to ensure that custom code you use in the Advanced Styling setting works reliably — and to adapt it as needed for future versions of the SDK.

Wrapper
Update External SDK Wrapper
// In some style file that applies style to the wrapper of the parent element of the SDK
.sdk-iframe-container > iframe {
padding: 2rem;
margin: 2rem;
max-width: 1000px;
}
Container
Change Container Padding
{
"components": {
"MuiCssBaseline": {
"styleOverrides": {
"body": {
"[data-testid=\"client-sdk-container\"]": {
"padding": "2rem"
}
}
}
}
}
}
Background
Make Background Transparent
{
"components": {
"MuiCssBaseline": {
"styleOverrides": {
"body": {
"&, & .MuiContainer-root > main > .MuiPaper-root": {
"backgroundColor": "transparent"
},
"& [data-testid='phone-input-container'] label.MuiFormLabel-root": {
"background": "transparent"
},
"& [data-testid='phone-input-container'] .MuiInputBase-root::before": {
"opacity": 0
},
"& [data-testid='phone-input-container'] .MuiOutlinedInput-notchedOutline": {
"border": "1px solid #ffffff",
"zIndex": 0,
"m": 0,
"top": 0,
"&::before": {
"content": "none",
"position": "relative",
"inset": 0,
"backgroundColor": "#ffffff",
"zIndex": 0
},
"& legend": {
"display": "block"
}
},
"& [data-testid='phone-input-container'] .MuiOutlinedInput-root:hover .MuiOutlinedInput-notchedOutline": {
"border": "1px solid #ffffff"
},
"& [data-testid='phone-input-container'] .MuiOutlinedInput-root.Mui-focused .MuiOutlinedInput-notchedOutline": {
"border": "1px solid #ffffff"
}
}
}
}
}
}
Headers
Change Header Font Sizes
{
"components": {
"MuiCssBaseline": {
"styleOverrides": {
"body": {
"[data-testid=\"header\"] h2": {
"font-size": "24px"
},
"[data-testid=\"header\"] #signin-instructions": {
"font-size": "20px"
},
"[data-testid=\"header\"] #verification-instructions *": {
"font-size": "20px"
},
"[data-testid=\"header\"] #form-instructions": {
"font-size": "20px"
},
"[data-testid=\"header\"] #birthday-form-instructions": {
"font-size": "20px"
},
"[data-testid=\"header\"] #ssn4-form-instructions": {
"font-size": "20px"
}
}
}
}
}
}
Buttons
Modify Confirm Button
{
"components": {
"MuiCssBaseline": {
"styleOverrides": {
"body": {
"[data-testid=\"confirm-button\"]": {
"display": "block",
"width": "100%",
"box-shadow": "none !important"
}
}
}
}
}
}
Modify Manual Signup Button
{
"components": {
"MuiCssBaseline": {
"styleOverrides": {
"body": {
"[data-testid=\"manual-signup-button\"]": {
"display": "block",
"width": "100%",
"box-shadow": "none !important"
}
}
}
}
}
}
Modify Edit Phone Button
{
"components": {
"MuiCssBaseline": {
"styleOverrides": {
"body": {
"[data-testid=\"edit-phone-button\"]": {
"display": "block",
"width": "100%",
"box-shadow": "none !important"
}
}
}
}
}
}
Modify Resend Code Button
{
"components": {
"MuiCssBaseline": {
"styleOverrides": {
"body": {
"[data-testid=\"resend-code-button\"]": {
"display": "block",
"width": "100%",
"box-shadow": "none !important"
}
}
}
}
}
}
Modify Edit Info Button
{
"components": {
"MuiCssBaseline": {
"styleOverrides": {
"body": {
"#credentials-region > div > button": {
"display": "block",
"width": "100%",
"box-shadow": "none !important"
}
}
}
}
}
}
Modify Open Help Modal Button
{
"components": {
"MuiCssBaseline": {
"styleOverrides": {
"body": {
"[data-testid=\"help-button\"]": {
"display": "block",
"width": "100%",
"box-shadow": "none !important"
}
}
}
}
}
}
Modify Close Help Modal Button
{
"components": {
"MuiCssBaseline": {
"styleOverrides": {
"body": {
"[data-testid=\"data-provider-dialog-close-button\"]": {
"display": "block",
"width": "100%",
"box-shadow": "none !important"
}
}
}
}
}
}
Success Animation
Hide Confetti
{
"components": {
"MuiCssBaseline": {
"styleOverrides": {
"body": {
"[data-testid=\"client-sdk-container\"] > main > div > div+div": {
"display": "none"
}
}
}
}
}
}
Hide Verified Checkmark
{
"components": {
"MuiCssBaseline": {
"styleOverrides": {
"body": {
"[data-testid=\"step-success\"] > div": {
"display": "none"
}
}
}
}
}
}

You're done with this Setup guide! ✅

Now, follow the SDK Integration or API Integration guide to integrate 1-Click Signup into your application.