Additions and improvements to Moov

Test mode

  • We’ve enabled test accounts so you can interact with Moov’s platform without sending real money or waiting on account verification.
    • API key creation for test accounts
    • Simulate micro-deposits by inputting $0.00
    • Simulate successful transfers

Transfers metadata

  • We now allow our customers to store free-form data on transfers. As a customer, you can store any type of data that suits your needs, for example: invoice numbers, correlation IDs, SKU data, etc.

Bug fixes

  • We resolved a bug that was preventing 2FA codes from being emailed out for a brief period of time.


  • We made small text updates to improve the consistency of member role names (i.e., “Administrator” instead of “Administrators”).
  • We improved internal logging across session refreshes to continue to monitor, track, and prevent fraudulent activity.
  • We updated the UX for adding multiple domains on an API key.

Plaid integration

  • Moov-managed Plaid integration allows our customers to offer instant account verification and launch the Plaid experience from Moov.js.


  • We finished a project this cycle to ensure all the required information is included on all the webhooks so developers can pull the information that is needed. We also updated our documentation to include a list of the schemas for all the webhook events.
  • Added the accountID and status to the bankAccount.created, .updated, and .disabled events.
  • The transfer.created and transfer.updated now include the accountID for the account facilitating the transfer along with the status of the transfer.
  • We are now sending events for the transfer.updated event when a transfer fails or is reversed, since sometimes things don’t go as planned.
  • We added the accountID to the balance.updated webhook to allow developers to get additional information about the wallet if needed.
  • The paymentMethod webhook events now include the accountID and the sourceID to allow developers to more quickly get information about that payment method.
  • The representative.created and representative.updated webhooks now include the accountID for the account the representative belongs to.


  • For users with “Developer,” “Support,” or “View only” permissions, the dashboard will now reflect what actions they can or cannot perform instead of getting an error message when they attempt to perform that action. If the user isn’t able to perform an action, the button will be disabled, hidden, and in some cases, the entire section won’t be visible.


  • We added verification status to the accounts list and account details.
  • Improved usability of date of birth, tax ID, and phone number fields.

Bug fixes

  • We resolved an issue where a warning banner was being shown when it wasn’t supposed to be when trying to add a new member.
  • We resolved a bug that was temporarily preventing you from switching the role of a user in the dashboard.


  • Moov Wallets are now available. Every application has wallet provisioned for its account, and you can request the wallet capability for any Moov account.

Faster transfers

  • Moov now processes all ACH debits with same-day processing by default. This means your bank-to-bank or bank-to-wallet transfers will happen a day faster if we receive the request before the 4:15pm ET cutoff window.


  • You can now generate an OAuth2 token by passing data as application/json in addition to passing as application/x-www-form-urlencoded when making a request to oauth2/token endpoint.
  • Added a confirmation when requesting a new two-factor code be sent to your email.
  • If you are inactive for a period of time, you will be warned a minute prior to being signed out.
  • Added and cards.write to the list of allowed scopes in preparation for allowing card transfers.
  • After a period of time, you will be signed out. We added the ability to reenter your password to stay signed in.


  • Updated the Webhook keys to use a consistent camel case format. TransferIDtransferID.
  • Added the accountID and status to the capability.updated webhook event. This will allow you to get additional information about the capability that was updated.
  • Added the status to the transfer.updated webhook.

Member management

  • You can now search for Members that have access to your account on the members page.
  • You will now be notified if you try to send an invite to someone who is already a member of that account.
  • If a member invitation has expired you will now see that the status of that invitation in the member list.

Account verification

  • Moov account verification is now automated. When you request capabilities like send-funds that require verification, the process will kick off as soon as all the data requirements outlined in the capability are satisfied for the individual or business. For any account that isn’t instantly verified, you can view outstanding requirement errors or the overall status from the API and from the Moov Dashboard.

Plaid integration

  • Updated our Plaid processor integration to not require Plaid’s identity product.

Transfer statuses

  • There are two new transfer statuses: failed and reversed. Receiving an ACH return will update the transfer status and send a transfer.updated event based on the transfer status:
    • failed - transfer returned/failed during clearing period or before funds movement
    • reversed - transfer returned/failed after clearing period or marked completed


  • Improved the experience of using the Moov app from a phone, particularly phones with notches.
  • The account ID for your account is now included on the Business Details page to help with troubleshooting and creating tokens.

Bug fixes

  • Some Moov Dashboard users experienced aggressive caching that caused them to see an older version of the app. We implemented new cache-busting to keep the app as fast as ever while serving new updates.
  • Resolved an issue that was preventing the capability.updated event when it should have been.
  • We fixed some typos and updated the wording for sign-in error messages to increase clarity.
  • Resolved an issue that prevented you from sending an invite to a member who had been previously removed from your account.
  • We updated our open source Slack application to properly format numbers and removed some typos.

Slack application

Realtime insights into money movement activity are vital to help prevent fraud and resolve errors quickly. We launched a new open-source project that allows you to host a Slack app and get updates when transactions are created and completed. You can find the open source project on the Moov Financial Github. The readme includes a guide for getting it up and running.


  • After a period of inactivity, you are automatically signed out. When you sign back in after you are automatically signed out, you’ll now return to the last page you were on in.
  • You will now see a notice on the login page letting you know you have been signed out automatically.
  • Invite, two factor, and signup emails will now be sent from you from “Moov” instead of “noreply.”
  • New users who sign up on the dashboard who are not part of the beta will now be giving a chance to request early access right from the dashboard.
  • We now prevent you from removing the last Admin on the account, ensuring you don’t accidentally lose access to your account.
  • We updated the member’s invite page to include the role, email address, and when they were invited.
  • If you get an error when signing in, those messages will now appear inline.
  • Redesigned the look of all our automated emails to ensure they have a consitent look.

Developer tools

  • On the edit API key modal, when you submit the form by pressing enter, it will now save your updates instead of prompting you to delete.
  • Added the ability to restrict which domains you can call our API for each API key.
  • Our scope list now includes, which is needed to read the information about a specific transfer via our API.
  • Added the scope for / to allow you to autofill information about companies that sign up for your platform.
  • We added the ability to revoke an access token that you no longer need. A token that has been revoke will cause any follow up requests signed with that access token to fail.
  • When creating a new access token, you will receive a refresh token which you can use to generate a new token with the same scopes.


Adjusted our sanctions screening to reduce the possibility of false positives.


  • ACH transfers for multi-party payouts, collecting funds, and account-to-account transfers
  • Bank account linking with micro-deposits and Plaid support
  • Opting in to capabilities for informing on data requirements
  • Every transfer is captured in a ledger and broken down into the primitive money movement, with transparent details
  • Listen for key Moov events by creating and managing webhooks in the dashboard
  • Wallets for storing funds or use as a payment source


  • Moov Dashboard (including dark mode)
  • Mobile friendly version of the Moov Dashboard
  • Inviting others to your account in the Moov Dashboard
  • Multi-factor authentication for Moov Dashboard sign-ins
  • Fast customer onboarding
  • OFAC/sanctions checks
  • Profile photos magically appear
  • Business information magically appears letting you change it or simply confirm it


  • Create and manage API keys restricted to your domains
  • Moov.js SDK for interacting with the Moov API in a browser
  • Restrict access of people with roles and access tokens based on Oauth
  • Webhook signature signing example project


  • New quick start guide
  • Dive deeper into Moov by reading through the new Concepts section
  • Dive deep into our API with a fully documented API reference
  • Get started quickly with a fully documented front end library, Moov.js