MFA: User experience

In this section, we showcase visuals and the primary user interactions with the MFA Element.

See MFA: Implementation for implementation details, including pre-conditions, custom events, and error handling.

Core behavior and requirements

With the MFA Element, BILL has a set of requirements for the expected behavior.

Behavior & requirements

Description

When is MFA required?

BILL requires an MFA-trusted user session for adding a funding method, scheduling a payment, and changing an MFA phone number. When one of these actions is attempted, the MFA flow is automatically triggered.

In addition, you can trigger the MFA Element at any point for the user to complete the MFA flow and generate an MFA-trusted user session.

When is a user session MFA-trusted?

The user session is MFA-trusted when the user sets up a valid phone number for MFA, and then completes the MFA challenge.

When the MFA rememberMe feature is enabled, BILL maintains MFA for the user's device for 180 days.

Select your preferred method to validate MFA challenge

You can receive the MFA challenge by text message or voice call. The text message option is not supported for international phone numbers.

MFA Setup for Additional Users

When an organization has more than one user, any additional user will be prompted to set up MFA the first time they access a BILL Element.

Plan your user experience

In this section, we outline key considerations for planning a seamless user experience when integrating with the MFA Element into your application. Ensure that you address each point thoughtfully to realize the full value of the Element capabilities in your existing experience.

Element overview

Element overview

Assumptions

When the user is using the MFA Element, BILL understands that the user wants to set up MFA with a valid phone number or complete the MFA challenge to generate an MFA-trusted user session.

Entry points

There are a set of workflows where the MFA Element can be integrated.

  • When the user is attempting to pay a bill
  • When the user is attempting to add a funding payment method
  • When the user is signing in. Also, when an additional user is signing in the first time.
Element entry point

Element entry point

Map the user flow

Map the complete user flow from identifying the need to set up MFA with a valid phone number to successfully completing the process of making a payment.

Maintain context

Ensure that your users understand that they are completing the BILL MFA flow. In addition, your users must understand how this relates to their ability to pay bills with your integrated experience.

Add or use funding payment method experience

When the user adds a funding payment method, BILL requires an MFA-trusted user session. In addition, using the funding payment method also requires an MFA-trusted session.

If the session is not MFA-trusted, the MFA flow is automatically triggered for the user to complete before they can proceed.

Flow for completing a payment in a user session that is not MFA-trusted

Flow for completing a payment in a user session that is not MFA-trusted

Related Elements

BILL Elements are connected and understanding this connection and hierarchy enables you to understand the user experience better.

Connection

Description

Parent

Onboarding Element: The user can complete BILL KYC/KYB checks for the organization, set up MFA, add funding payment methods for paying vendors and bills, and complete user verification (if required).

Add funding Element: The user can add funding payment methods in the organization.

Manage funding Element: The user can add additional funding payment methods and manage existing funding method details in the organization.


What’s Next

Now that you understand the user experience, the next step is to integrate the MFA element. Continue to the Implementation section to learn about pre-conditions, custom events, and error handling.