Use the tips in this guide to ensure your custom onboarding UX/UI enables your customers to have a smooth onboarding experience.

Moov requires very specific information for every account registered on our platform. Providing clear instructions in your custom onboarding experience ensures customers don't get stuck in the onboarding and verification process due to incomplete or missed information.

---

## Form shortening

With a user's work email, use our [form shortening API](https://docs.moov.io/api/enrichment/form-shortening/business/get/) to autofill the business name, website, address, phone, and industry fields.

## Business logo

Business logos are automatically fetched from the business's website. You can fetch the image with the [avatar API](https://docs.moov.io/api/enrichment/form-shortening/avatars/get/).

## Business name

Always provide additional context that a business name needs to be the _full legal business name_ as it appears on their filing documents. This includes capitalization and punctuation.

If the business is using a "Doing business as" name (DBA), you can allow users to enter the DBA name in the "Doing business as" field. Moov will use the DBA in most cases, but will still require the legal business name for verification.

Legal business name

This must match official documents exactly

I use a registered DBA to conduct business.

Doing business as

## Business address

Always provide additional context that business address must be the physical, commercial address where the business is located. The business address _cannot be any of the following_:

- P.O. Box  
- Registered agent address  
- Mailing service

Use [address autocomplete](https://docs.moov.io/moovjs/enrichment/#autocomplete-address) to help users fill out the address fields and avoid mistakes.

Business address

Physical location where you conduct day to day business. P.O. Boxes, registered agents, and mailing services are not allowed.

Street address  
Suite or floor (optional)  
City  
State  
Select  
Alabama  
Alaska  
Arizona  
Arkansas  
California  
Colorado  
Connecticut  
Delaware  
District Of Columbia  
Florida  
Georgia  
Hawaii  
Idaho  
Illinois  
Indiana  
Iowa  
Kansas  
Kentucky  
Louisiana  
Maine  
Marshall Islands  
Maryland  
Massachusetts  
Michigan  
Minnesota  
Mississippi  
Missouri  
Montana  
Nebraska  
Nevada  
New Hampshire  
New Jersey  
New Mexico  
New York  
North Carolina  
North Dakota  
Ohio  
Oklahoma  
Oregon  
Pennsylvania  
Rhode Island  
South Carolina  
South Dakota  
Tennessee  
Texas  
Utah  
Vermont  
Virginia  
Washington  
West Virginia  
Wisconsin  
Wyoming  
American Samoa  
Guam  
Northern Mariana Islands  
Puerto Rico  
United States Minor Outlying Islands  
Virgin Islands  
Armed Forces Americas  
Armed Forces Pacific  
Armed Forces Europe  
Armed Forces Other  
Zip code

## Industry selection

List all industries that are available for selection in your custom onboarding UI. Use our [industry taxonomy](https://docs.moov.io/api/enrichment/form-shortening/industries/get/) to get the list of industries and their corresponding MCC codes.

## Business representatives

Clearly indicate that users must add _all_ owners with at least 25% ownership or more in the company and at least one control officer with significant management authority. In some instances, a control officer and an owner will be the same person. The maximum amount of business representatives you can enter is 7.

Additionally, ensure that users confirm they have added _all_ required business representatives before submitting their account to Moov for verification.

Owners & officers

Add all owners with at least a 25% stake in your company and one control officer. Control officers can be executives, senior managers, or anyone with significant management authority. [Learn more.](https://docs.moov.io/guides/accounts/requirements/business-representatives/)

I certify, for my company, that I have provided all owners with 25% or greater ownership and one control officer with significant management authority.

## Representative address

Always provide additional context that representative addresses must be their personal, residential address and cannot be a:

- P.O. Box  
- Commercial address

The most common mistake users make is using a commercial address for their personal address.

Residential address

Your physical residential address. P.O. Boxes, registered agents, and mailing services are not allowed.

Street address  
Apartment, suite, or floor (optional)  
City  
State  
Select  
Alabama  
Alaska  
Arizona  
Arkansas  
California  
Colorado  
Connecticut  
Delaware  
District Of Columbia  
Florida  
Georgia  
Hawaii  
Idaho  
Illinois  
Indiana  
Iowa  
Kansas  
Kentucky  
Louisiana  
Maine  
Marshall Islands  
Maryland  
Massachusetts  
Michigan  
Minnesota  
Mississippi  
Missouri  
Montana  
Nebraska  
Nevada  
New Hampshire  
New Jersey  
New Mexico  
New York  
North Carolina  
North Dakota  
Ohio  
Oklahoma  
Oregon  
Pennsylvania  
Rhode Island  
South Carolina  
South Dakota  
Tennessee  
Texas  
Utah  
Vermont  
Virginia  
Washington  
West Virginia  
Wisconsin  
Wyoming  
American Samoa  
Guam  
Northern Mariana Islands  
Puerto Rico  
United States Minor Outlying Islands  
Virgin Islands  
Armed Forces Americas  
Armed Forces Pacific  
Armed Forces Europe  
Armed Forces Other  
Zip code

---

## Date of birth

When capturing a date of birth, provide a placeholder than indicates the format of the date. Especially on mobile devices, ensure a default value is provided. The native iOS `DatePicker` component defaults to the current date and can't be set to a `nil` value without wrapping it in a custom component.

---

## Bank accounts

For both business and individual accounts, Moov will only accept bank accounts for financial institutions in the United States. Ensure this context is provided when a user is filling out the bank account field in a custom onboarding UI.

Use [routing number lookup](https://docs.moov.io/moovjs/institutions/) to show the institution name when a user enters a routing number, giving them confidence that the routing number is valid. You can pass a valid routing number to [avatar](https://docs.moov.io/moovjs/enrichment/#get-avatar) to get the institution's logo.

Routing number
