Create 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.
|
|
The account creation method will return the account object. You can use the account.accountID
to request the capabilities required.
|
|
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.
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.
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:
GET
the terms of service tokenPATCH
the generated terms of service token to the account