Skip to main content

Build a Microdeposits Flow with our API

Building a microdeposits flow lets your end users verify their accounts with institutions that don't support Instant Account Verification.

This guide shows you that process if you're using our Platform API to power your own connection experience.

Step 1

Create a Microdeposit

After you have an account number, routing number, and account type, request Create a Microdeposit.

Request
Response
Language:text

_10
curl -L -X POST 'https://int-api.mx.com/users/:user_guid/micro_deposits' \
_10
-H 'Content-Type: application/json' \
_10
-H 'Accept: application/json' \
_10
-H 'Authorization: Basic BASE_64_ENCODING_OF{client_id:api_key}' \
_10
--data-raw '{"micro_deposit":{"account_name":"My test account","account_number":"3331261","account_type":"CHECKING","email":"joshyboy2@example.com","first_name":"Joshy","last_name":"Grobanne","routing_number":"091000019"}}'

Step 2

Check the Microdeposit's Status

To track the status of microdeposits, you can either use the Microdeposits webhook or poll the Read a Microdeposit for a User endpoint at regular intervals.

Approximately 36 hours after creating a microdeposit, begin polling the Read a Microdeposit for a User endpoint at an interval of 15 minutes (which is the interval MX updates it at) until its status is either DEPOSITED or ERRORED.

We recommend waiting 36 hours because microdeposits typically don't reach a DEPOSITED or ERRORED status for 12 to 36 hours.

Step 3

Handle the Microdeposit Status

note

For a full list of all microdeposit statuses, see Microdeposit Statuses.

If the status of the microdeposit is DEPOSITED, prompt the end user to verify the deposit amounts and send their input using Verify Microdeposit.

If the status of the microdeposit is VERIFIED, you can check the connection_status of the member to ensure you can retrieve any data from that connection.