Changelog

Discover new features and improvements to Moov.

File uploads in Moov Dashboard

File upload

We’ve updated the Moov Dashboard so you can now upload documents for a connected account under the “Documents” section of the Moov account. If you need to upload a file for your platform partner (facilitator) account (vs. connected accounts), you can do this in the “settings” section of the Dashboard. Feel free to refer to our dashboard guide for further guidance.

Account protection

We added and started enforcing password rules for more rigorous account protection.

Onboarding

We consolidated and clarified information about capability requirements for Moov accounts in our documentation. To read more see:

Changelog email newsletter

There’s now a way to subscribe to Moov’s changelog updates and receive them in your email inbox. If you’d like to receive a newsletter with our changelog, feel free to hit the subscribe button.

Card issuing

Card issuing

Behind the scenes, we’ve been working hard on card issuing. Our program is still in a closed beta, so stay tuned for more updates!

Dashboard

The issuing view in the Moov Dashboard includes pagination on the list of issued cards and transaction history. You’ll only see this view if you’re one of our card issuing beta customers.

Cards

We added a new clear() method to the Moov Drop for linking a card to clear all user input. This allows you add multiple cards quickly: if you want, you can set up their code to submit card info, then clear out the form to get it ready for the next card.

Refund webhooks

We have renamed two fields in the refund.createdand refund.updated webhook events to match the field naming with our platform. Note that originalTransferID is now transferID and refundTransferID is now refundID. We’ll support the old fields for 1 month before deprecating.

Dispute webhooks

The dispute.created webhook now supports transferID vs. transactionID that previously did not link back to anything in our system.

Bug fixes

  • We resolved an issue where patching an account could unexpectedly fail
  • We fixed a bug where Moov Drops could throw an error in certain situations where a valid JWT was used
  • We addressed some broken links and made some minor improvements to our Node SDK documentation

Document uploading

Dashboard improvements

We got rid of the “load more” button and replaced it with infinite scrolling for a more seamless user experience experience. This update applies to all tables that display entries loaded from the API. In addition, we improved our address field by adding support for suite and apartment numbers.

Document upload

We’ve added a new service that allows clients to upload documents to their own dashboard via API. To learn more, see our files endpoint.

Business verification

We simplified how we define business owners. Previously, business owners had to own 25% or more of the business in order to communicate they are an owner. That limit still exists to technically be counted as a beneficial owner, but we accept any percentage now.

Instant account verification with Plaid

We’ve updated our documentation to clarify a few common sticking points on using Plaid Link with Moov.js.

Partial refunds

Partial refunds

We now support partial refunds on card payments. Use the API or dashboard to process any number of partial refunds summing up to the amount of the original transfer.

Transfer updates

The deprecated fields, createdAt and ach, have been removed from the transfer model. We’ve switched the names of these fields to createdOn and achDetails for clarity.

Fraud prevention

We improved fraud prevention and detection by adding Captcha to the Moov Dashboard.

Onboarding

We made it easier for new clients to complete their business profile in production and ask for help from a team member if necessary.

Verification statuses

We finished adding the new verification statuses to the Dashboard, Moov Drops, and Node SDK.

Faster searching in Moov Dashboard

Dashboard improvements

We’ve made several improvements to the Moov Dashboard for a cleaner, faster user experience:

  • Improved the loading and search speed for accounts
  • Simplified verification statuses (so it’s easier to tell whether any action is needed on your part)
  • Enhanced our autofill address input field by adding support for apartments and suites

Disputes

We are continuing to improve how Moov handles disputes, with the most recent changes being:

  • GET transfer model now returns the disputedAmount
  • Support for MasterCard disputes

Card statement descriptors

You can now include more information in statement descriptors and receive descriptor information from the transfers API. Specifically:

  • dynamicDescriptor and statementDescriptor character limit increased to 22 characters
  • GET transfer response now returns the dynamicDescriptor

Transfer errors

We investigated and addressed a bug on transfer error responses.

ACH statement descriptors, disputes, and more

Custom ACH statement descriptors

You can now set a customized ACH statement descriptor when creating a transfer. We’ve introduced two new optional fields you can use to adjust the default Nacha file entry:

  • achDetails.companyEntryDescription
  • achDetails.originatingCompanyName

This provides you the opportunity to add more context about what the payment was for, allowing recipients to more easily recognize the transaction.

Verification

We made some bug fixes for our verification flow and streamlined the process to account for a few edge cases. We also improved our manual review process by removing errors from client dashboards after a manual review is required.

Capabilities

We now automatically enable the wallet capability if you have the card-issuing capability. Note that our card issuing functionality is currently in a closed beta.

Failure reason codes

We shipped failure reason codes that explain why a card transfer was unsuccessful. You can now see a human-readable code for why the transfer failed in the Moov Dashboard. We’ve also implemented machine-readable failurecode, which you can view when you get a transfer in the API.

Disputes

We’ve shipped and documented dispute handling for card transfers. You can view dispute information on the transfer objectin the API and in the Dashboard via transfer status. Support for Mastercard is in progress.

Dashboard and API experience improvements

Dashboard

  • You can now quickly find an account by pasting an account ID into the search field on the accounts list.
  • Have a transfer ID that you need to debug? Paste it into the new search bar on the transfers list.
  • You can now filter the transfer list by refunded state.
  • The Dashboard overview now includes your Moov wallet balance.

Cards

  • If you’re PCI level 1 and have been using the API to link cards directly, you can now use the base path of the API instead of cards.moov.io. The latter is now deprecated and will be removed in the future. This keeps consistency with all other Moov endpoints.

Improvements

  • We made it easier to identify and fix requirements that need attention.
  • We hardened our capabilities service by reprocessing failures if the account mode was missing.
  • We enhanced our verification service by streamlining manual reviews
  • We added an additional security and fraud prevention measure by running all card acquiring merchants through the Mastercard MATCH database.

Bug fixes

  • We addressed a few issues around account creation and updating:
    • We only require a phone number OR email address but not both.
    • Fixed our process for updating an SSN or ITIN.
  • We addressed an issue with our support contact section that required all of the fields or none of them.

Card acquiring improvements

Moov Drops

If you need to limit which card brands you accept, you can now toggle which brands you support using the allowCardBrands option in the Card link, payment methods, and onboarding Moov Drops.

Cards

  • To improve fraud detection and prevention, we integrated with Mastercard’s MATCH service.
  • transactionSource for transfers using a card is now supported on all card brands.

Improvements

  • Improvements and bug fixes relating to missing account requirements and locking down fields after verification.
  • For clarity, we renamed the “Profile” navigation link within an Account to “Settings”.
  • We now show all fields under your account’s Business details section.
  • Improved our tracking of when a customer has moved to production to prevent multiple employees from having to fill out the same form.

Bug fixes

  • We resolved an error where previous transfers in a transfer group wouldn’t show if they had been refunded.
  • We fixed an issue where some users weren’t able to advance past the initial loading screen.
  • We fixed an issue where the markup fee set on a transfer could be incorrectly calculated.

Simpler onobarding

Onboarding

We rebuilt our entire sign-up and onboarding process to remove as much friction as possible before folks start building. Specifically, we: - Rebuilt our test environment and removed all of the hoops customers previously had to jump through before building. This includes filling out a test business profile, adding test business representatives, and even creating connected accounts and payment methods. All you have to do after signing up is generate test mode API keys and start building. More to come! - Streamlined how we collect required information about your business to get you to production. This historically cumbersome process of inputting data is now seamless. Ensuring that we have all of the necessary information to verify your business up front can shave days off the onboarding timeline.

Dashboard

We improved how we communicate with our clients through their Moov Dashboard by clarifying action items and statuses for your accounts. This includes showing when an account has been verified and therefore can no longer be updated, as well as communicating any verification issues with your accounts and what needs to be corrected to proceed.

Subscribe

Moov is constantly improving. Subscribe to our changelog email to receive a summary of changes twice a month.