API & Drops quick start | Moov Documentation

This quick start guide brings you through the process of signing up for Moov, getting authorized for production, and creating user accounts with Moov's API and Moov.js Drops.

This guide focuses on the quickest and easiest way to get set up with a partner account and create your first connected account with Moov's API and Drops. With the API you can send secure onboarding links and create payment links to facilitate payments and payouts.

After setting up your own account, you can add and connect additional business and individual accounts to your Moov account.

Sign up for Moov

Before you get started with the API or Drops, you'll use the Moov Dashboard to create a Moov account. Once you're signed up, you can use test mode with no commitment.

If you want to move real money and onboard real business accounts, you'll need to go through verification, underwriting, and sign a contract with Moov before you'll be approved for production access. See the account requirements section for more information.

An individual with administrator or developer permissions is required to take the actions laid out in this guide.

Create API keys

To use Moov's API, you'll need to generate keys in the Dashboard. Navigate to Developers and click the New API key button. Test mode and production mode each require their own API keys. To create an API key:

  1. Name the API key (we suggest giving it a name that relates to the purpose)
  2. Make sure to copy the key and save it in a secure place
  3. Add any domains you'll use for testing and production
  4. Optional: Include a note to remind you where the key is stored

Read the API keys documentation for more information. If you're ready to jump into production mode, make sure to take any necessary precautions if you've previously been using test mode.

Explore test mode

In test mode, test data is automatically enabled in the Dashboard and the API, which allows you to explore how the platform works. Make sure you're in test mode by using the account switcher on the top left of the Dashboard view.

In the accounts API and payment links API, you can set "mode": "sandbox" to test in sandbox mode with test mode data.

Try out the following:

Switch to production mode

When you're ready to switch to production mode, use the account switcher to change modes. Before you start using production mode, make sure to:

Set brand colors

Select light and dark mode brand color settings with the POST create brand endpoint.

curl -X POST "https://api.moov.io/accounts/{accountID}/branding" \
  -H "Authorization: Bearer {token}" \
  -H "X-Moov-Version: v2026.07.00" \
  -d '{
  "colors": {
    "dark": {
      "accent": "#DB8774"
    },
    "light": {
      "accent": "#9E432B"
    }
  }
}'

Onboard with hosted onboarding

Moov's hosted onboarding allows you to select capabilities, scopes, pre-fill existing information, and select a fee plan before sending a link to a secure session to finish the sign up process. A new account can be redirected to your app upon completion.

Any account onboarded through Moov's hosted onboarding process will have access to their own Dashboard. You can send a support guide to the account owner so they'll know what information and documents to gather ahead of time.

All personally identifiable information (PII) goes straight to Moov, so you won’t be responsible for storing or handling sensitive user data.

Select Capabilities

Capabilities indicate what an account is able to do. Before you begin the hosted onboarding process, decide what capabilities the account will need:

Each capability has different data and verification requirements depending on whether the account represents a business or individual. You should familiarize yourself with capability requirements before moving on to the next step.

Available capabilities:

Capability Description
transfers Participation in any Moov transfer. Auto-enabled on all qualifying accounts.
wallet.balance Hold funds in a Moov wallet; participate in wallet-to-wallet transfers. Auto-enabled when any collect/send/money-transfer/card-issuing capability is enabled
collect-funds.card-payments Accept card and digital wallet payments
collect-funds.ach Accept ACH debit payments
send-funds.ach ACH credits (standard and same-day)
send-funds.instant-bank Real-time payouts via RTP (FedNow support coming soon)
send-funds.push-to-card Instant card payouts (Visa Direct & Mastercard Send)
money-transfer.pull-from-card Pull funds from cards (Visa Direct & Mastercard Send)
money-transfer.push-to-card Push funds to cards (Visa Direct & Mastercard Send)
card-issuing Create and manage virtual prepaid cards

See our capabilities section for more information.

Select scopes

Scopes specify what actions an account can take on Moov's platform. When you choose to enable certain scopes for an account, you create connections between your account, the business/merchant account, and the account's customers. You have the option to choose a set of scopes for your partner account (scopes) and a set of scopes for the account (grantScopes).

Available scopes:

For general usage, Moov suggests to enable at least basic scopes for all accounts.

Select pricing fee plan

During the onboarding process, you'll also choose a fee plan for the account, which they will agree to as part of their terms of service platform agreement.

With a cost plus plan, card networks’ interchange fees and Moov’s processing markup are passed along to the account. With a flat rate plan, you can lump all the processing fees together with a flat rate customized for each account.

To see what fee plans are available for an account, send the new account's accountID to the GET list fee plans endpoint.

Create & send onboarding link

Create the link by filling in all required and any optional or pre-fill data fields you want. The response will include a link you can send to a business/merchant via email or SMS.

A new account will be asked to provide bank details to set up a funding source. Moov will send a small deposit with a verification code to verify the bank account instantly, if eligible. If the bank doesn't support instant verification, Moov will automatically use same-day ACH instead of RTP for verification. ACH verification may take 1-2 days.

You can track the status of an account's application a few ways.

Onboarding Drop (alternative)

An alternative way to onboard an account is Moov's onboarding Drop. Drops are pre-built, customizable UI components that take care of the entire account creation workflow within your application.

The Drop interacts directly with Moov’s API using JWTs to securely send data between your end users browser and Moov. Drops provide a secure flow, and PII goes straight to Moov, so you won’t be responsible for storing or handling sensitive user data. The onboarding Drop has the Moov terms of service agreement built in to the process.

Moov Drops are defined in the Moov.js package. After initializing Moov.js, you will have access to our full library of Drops.

The Drop is an HTML element with properties accessed through JavaScript.

Create a product

Products are optional, but allow you to create a catalog of items with the following:

Options allow you to create additional properties on each item, such as a minimum or maximum selection, or identifiers. Use the POST create new product endpoint to create a product.

Move money with payment links

After successfully onboarding an account, you're ready to move money. First, you'll need to identify what payment methods can be used. Use the GET list payment methods endpoint to retrieve a list of payment methods associated with the account.

Tip options

Tips are enabled per payment link and can include preset options or a free-form option. Once presets are created, you'll set tippingEnabled: true when creating the payment link and they'll be displayed in the payment link.

Tax & surcharge fee

Tax and a surcharge fee can be added to amountDetails when creating a payment link.

Send link

When you're ready, create and send a payment link via your chosen form of communication, such as email or SMS.

Troubleshoot

Troubleshoot some common issues when integrating with and using Moov:

Transfers or payment links not working

Transfers and payment links will not work before capabilities are enabled. Ensure all involved accounts have the proper capabilities requested and enabled before attempting a transfer.

Missing terms of service agreement

All Moov accounts requiring wallet, send funds, or collect funds capabilities must agree to Moov's platform terms of service agreement. If the agreement is missing on an account, the account will not be able to participate in any action on Moov's platform that requires a wallet, sending funds, or collecting funds.

Next steps

You can manage wallet balances, send invoices, process refunds, and set up scheduled and recurring transfers all within the Dashboard. See our Dashboard documentation for more information.