Create accounts

Learn how to create accounts and use Moov.js to easily capture information from your users and link bank accounts.

Streamline interactions with our API with Moov.js. With Moov.js, all personally identifiable information (PII) goes to Moov, so you aren’t responsible for sensitive user data. This guide goes over how to set up accounts and collect information using Moov.js (install here).

Collect information

The following example creates a new Moov account and requests four capabilities for that account.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
const moov = Moov(token);

const account = await moov.accounts.create({
  "accountType": "business",
  "profile": {
    "business": {
      "legalBusinessName": "Whole Body Fitness LLC",
      "businessType": "llc",
    }
  },
  "foreignId": "your-correlation-id",
  "capabilities": ["transfers"],
})

The account creation method will return the account object. You can use the account.accountID to request the capabilities required.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
const moov = Moov(token);

const accountID = accountID;
const capabilities = [
  "transfers", 
  "send-funds", 
  "collect-funds", 
  "wallet"
];

moov.accounts.capabilities.request({accountID, capabilities});

Capabilities

Moov has four capabilities, each with their own requirements depending on whether the account type is business or individual. Click on the capability to view the requirements for each account type. You can request multiple capabilities at once.

Capability Account type
Transfers Individual, business
Wallet Individual, business
Send funds Individual, business
Collect funds Business

Depending on the capabilities requested for the Moov account you just set up, you may need to provide additional information about the account in order for Moov to start the automatic verification process. For more information, read our Verification guide.

tip
Some capabilities require your users to accept Moov’s terms of service. Check out the Capabilities guide for detailed requirements.

Financial ownership

Moov is required to certify beneficial ownership, which is any individual with ≥25% ownership of the business. Beneficial owners can be created via the Dashboard or the API.

Dashboard

The Dashboard will bring you through the entire owner flow, which incudes creating owners and providing ownership percentage. Once you finish the process, if any information is missing, you’ll receive a notification in the Dashboard. Once all owners have been created, and all required information is entered, Moov can begin account verification.

API

Use the representatives POST endpoint to create each owner. For each owner, set isOwner to true, as well as provide the ownershipPercentage. If a representative does not own ≥25% of the company, they are not considered a beneficial owner. You can set isOwner to false and leave the ownershipPercentage field blank.

Some businessTypes require the additional step of updating ownersProvided before Moov can verify an account:

Moov account businessType ownersProvided required
privateCorporation
llc
partnership
soleProprietorship
unincorporatedAssociation
trust
publicCorporation
unincorporatedNonProfit
incorporatedNonProfit

After you’ve created all the owners, patch the profile’s business object by setting ownersProvided to true using the accounts PATCH endpoint. This indicates to Moov the profile is complete, and verification can begin.

If no one owns ≥25%, you don’t need to create any owners. However, even if no owners are created, you’ll still need to set ownersProvided to true using the PATCH endpoint if the business type is a private corporation, an LLC, or a partnership.

Foreign ID

You can add a foreignID or alias to a Moov account to easily track the one-to-one relationship between your users and Moov accounts. If you set the foreignID, it must be unique.

You can find use the foreignID query parameter on the list accounts GET endpoint to find a Moov account.

Metadata

Metadata is a free-form key-value pair list that you can add to a Moov account. This may be useful for capturing information such as the type of account or segment the Moov account belongs to.

Form shortening

Moov makes it easier for your customers to fill in their details by offering form shortening. Start by collecting an email address and passing it through profile enrichment.

For an individual, publicly available details like their name and portions of their address may be returned. For businesses, the legal business name, website, email, phone, and industry codes may be returned. Use this data to autofill forms and ask your users to confirm it for accuracy.

Platform terms of service agreement

If the account requested a capability that requires acceptance of the Moov terms of service, the account holder must accept Moov’s platform agreement. In your application, you must display a link to the Moov platform terms of service agreement, and have them accept those terms.

Once they’ve accepted the terms of service, you’ll need to update the account via API:

tip
Learn more about implementing platform agreement acceptance via Moov.js, our browser client that collects PII data so you don’t have to be responsible for handling and storing sensitive customer information.