Changelog

Discover new features and improvements to Moov.

Faster wallet transactions, secure file uploads in Moov.js

Faster wallet transactions list

We have optimized the LIST wallet transactions endpoint so that paginated and filtered transactions load faster than ever.

If you’re not already benefiting from wallet transactions, they make it easy to track all the money moving through your platform. You can use them to present detailed transaction history and for real-time reconciliation. See our wallet transactions guide to learn more.

File uploads in Moov.js

In addition to the Dashboard and Moov API, you can now upload files related to an account using Moov.js. This means you can stay out of the flow of sensitive documents and allow them to be passed directly from your user to Moov. To read more on file upload specifications, see our file uploading guide.

Business verification

We optimized our verification logic to improve business verification speed and consistency.

Transfer failure reasons

We’ve added transfer failure reasons to the Moov Dashboard for greater transparency and understanding for why a transfer did not succeed. See our transfer failures guide for more context on failure reasons.

Underwriting updates

Underwriting

As a part of our underwriting process, you can now provide underwriting data in the Moov Dashboard. When creating a new account via the Dashboard, you can input the required information depending on the capabilities the account needs. You can also edit these fields when viewing an account’s profile and clicking on transaction details.

Bug fixes

We resolved an issue that was causing some ACH transactions initiated during weekends to not complete as scheduled.

Issued card Moov Drop

Issued card Moov Drop

The new issued card Moov Drop enables customers to display a previously issued virtual card within a secure, Moov-hosted iframe.

Underwriting

We have added a new underwriting requirement for certain capabilities. See our underwriting guide for more context on when we need to underwrite an account and what we require. A section for underwriting will be added to the Moov Dashboard in the near future.

Bug fixes and improvements

We resolved an issue that was causing some ACH test mode transfers not to complete as scheduled.

We’ve improved visibility by surfacing reasons for failed bank account validation attempts. For example, when micro-deposits expire, the statusReason will be ErrMicroDepositExpired.

Card dispute resolution, failure reasons, and webhook updates

Card disputes

We have updated the status field on disputes objects. Pre-disputes resolved by Visa’s rapid dispute resolution will have the resolved status, while all other disputes have status response-needed status.

We have added the respondBy field added to disputes object. The date in the respondBy field should be must be presented to the merchant as the last day they are able to submit evidence to fight a chargeback. See our disputes guide for more information.

The networkReasonCode field for a dispute in the transfers endpoint will now return an empty string, and will be fully deprecated on January 21, 2023. The network code is still available via the GET dispute endpoint.

Failure reasons

When a transfer fails, we will now communicate the reason for the failure through the failureReason field in API response for a GET transfer. The failureReason field provides context so our platform partners can understand why a transfer failure happened and determine what next steps to take. See our failures guide for more information on the reasons and their corresponding descriptions. Please note, card and ACH specific failure codes are still available under the source and destination objects.

Webhook events

The availableBalance field on the balance.updated webhook event is deprecated. If you need to retrieve the available balance for a wallet, you can use the GET wallet endpoint.

We’ve made some updates that allow us to send webhook events faster. However, because we are prioritizing speed, we can no longer guarantee ordering on the walletTransaction.updated webhook event.

ACH transfer timing in test mode

ACH transfer timing in test mode

Previously, ACH transfers in test mode followed the same processing windows as production mode, taking up to 48 hours to process. However, we’ve updated our platform so that ACH transfers in test mode now complete much faster (within about an hour), since no real money movement is happening.

Changelog style

If you haven’t noticed already, our changelog got a new look. We now include titles in addition to the date timeline so you can get a quick sense of Moov’s latest product updates.

Synchronous transfer creation response

We added a 201 response for synchronous transfer creation. If Moov is unable to get transfer details that are returned in the 200 synchronous response, we’ll return a 201 confirming the transfer was created with the transferID.

Card acceptance

We reduced the potential for latency during periods of high traffic by adding rate limiting to some of our asynchronous processes.

Bug fixes

We resolved a bug in the Dashboard where the list of members were sorted in reverse alphabetical order by last name. We revised this so the list of members are sorted in alphabetical order.

Styling was broken for the card link iframe within the Payment method Drop. The styling has been updated and now works correctly.

Transfer peek previews, bank holiday notices, and more

Transfer peek previews

We’ve added transfer peek previews to allow faster access to transfer details from any list of transfers in the Dashboard. Toggle the preview on and off by tapping Space while on the transfers list. You can also dismiss the preview with the Esc key.

Bank holiday notices

We now have a notice that shows up on in the Dashboard whenever a bank holiday or observed bank holiday is coming up in a few days and stays until the day after. This update lets you know that the upcoming bank holidays may cause delays on pending transfers.

Synchronous refund responses

You can now use the x-wait-for header to wait for the payment rail response on refunds. Stay posted for updates to our documentation that includes detailed information on the responses.

NOCs and returns update bank accounts

A Notification of Change (NOC) is a notification provided by the ACH Network that something about a bank account we are interacting with has changed (i.e., a new account number or routing number). Moov now consumes data from ACH Network’s NOC and automatically revises transfer and bank account records accordingly. The bankAccount.updated webhook will reflect when an NOC change has been made on a bank account.

Wallet transaction and Apple Pay

Wallet transactions

We now provide insight into funds that move in and out of an account’s wallet at a granular level. Every Moov transfer that involves a wallet will also have a corresponding transaction representing how the wallet is impacted. This creates greater visibility into things like fees earned, disputes, and refunds. This record of wallet transactions also enables historical balance tracking. To learn more about this feature and the different transaction types, read our wallet transactions guide.

Apple Pay

Moov now supports Apple Pay as a way to accept card payments. Read our guide on accepting cards with Apple Pay to learn more.

Dashboard

We gave the interface a fresh coat of paint. New colors help shine a light on your accounts and transfers. Reminder that light and dark mode are available and that the Dashboard is a progressive web app that can be used on your phone or nearly any modern web-enabled device.

Onboarding

In order to accommodate longer addresses, we’ve increased the maximum length of an address to 60 characters.

API docs

To help give more context and guidance, we’ve added links to our guides in our API reference endpoint descriptions.

Bug fixes

  • We resolved a bug where an invalid wallet balance.updated webhook events were being generated for some accounts.
  • We’ve updated our platform to fix incorrect reporting of disputes received on pending transfers.
  • Hidden whitespace characters were preventing some micro-deposits from working properly. This has been resolved.

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
Subscribe

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