5 minute read
November 30, 2022

Account Validation via Plaid (Beta)

This feature is currently in beta and subject to change. It also requires additional activation steps. To learn more about the Beta program for this feature and about activating it for your program, contact your Marqeta representative.

Verifying an account holder’s bank account

You must verify your account holder’s external funding source account before they can send or receive ACH payments. You can choose to either integrate with our partner Plaid to verify external bank accounts on the Marqeta platform, as described below, or you can verify the account independently. Seamlessly verifying via Plaid enables you to optimize user conversion, as well as shorten wait times to verify the external funding source. Robust account verification also helps you lower the number of costly returns that result from fraudulent transactions.

Plaid enables digital banks to offer their end-users an easy way to connect with their other financial accounts. When you validate your account holders' bank accounts via Plaid, you don’t handle any personally identifiable information (PII) yourself, enabling you to bypass the regulatory and compliance measures related to capturing, storing, and transmitting PII.

Plaid is able to instantly verify account existence and ownership because it accesses real-time account information from most financial institutions in the USA. If an account holder’s financial institution or account information are unavailable to Plaid, you could choose to have Plaid proceed with validation using microdeposits instead.

Integrating with Plaid

The following steps assume that you have already established a relationship with both Marqeta and Plaid. In addition, you must explicitly authorize the sharing of information with Plaid, and enable Marqeta as a processor for your integration. For more information, contact your Marqeta representative.

You can use Plaid to quickly and easily connect your account holders' bank accounts. By partnering with Plaid to authenticate and collect bank account details, you can reap the full benefits of Plaid’s seamless, reliable account linking experience and focus on building out your application.

Plaid’s API product Auth is included with your Marqeta integration. As part of a secure funding source verification flow for digital banks, Auth enables instant authentication of external accounts by retrieving their account and routing numbers. With Auth, you can minimize incorrect values because account holders don’t have to manually enter their account numbers. More information about how to use this product with the Marqeta platform is available on the Plaid website.

As part of connecting a bank account through Plaid, your application launches the Plaid Link experience. Link is a drop-in client-side component that your account holders will interact with to securely connect their bank accounts to the Plaid platform. Once securely connected, you will have the option to access your users' accounts via the Plaid API.

To prepare your implementation, refer to Plaid’s Quickstart guide. This document contains information on API keys, testing, and testing the Plaid Sample App. Once you open an account with Plaid, your API keys will be available in the Plaid Dashboard.

To activate the Marqeta integration in your Plaid account:

  • Sign up for a Plaid account, if you haven’t done so already.

  • Log in to the Plaid Dashboard.

  • Enable the Marqeta integration under Team Settings > Integrations.

  • Obtain your API keys under Team Settings > Keys. This is how you will communicate with the Plaid environment.

  • Complete your setup by following the instructions in the Add Marqeta to your app integration guide and Plaid’s Quickstart guide.

Validating a bank account with Plaid

Once you have successfully integrated with Plaid, follow these steps to validate your account holders' bank accounts:

  • Your application makes a call to Plaid’s platform, and they invoke Link, their account information collection widget. Your account holder enters their financial institution credentials in Link and sends them to Plaid.

  • Plaid validates the account holder as the owner of the account, then creates a secure public_token and returns it to you.

  • You exchange the Plaid public_token for a Plaid access_token by sending a POST request to Plaid’s /item/public_token/exchange endpoint. The access_token represents all accounts permissioned by that particular user at that financial institution.

  • Generate a processor token for the intended account by sending a POST request to Plaid’s /processor/token/create endpoint that includes the access_token. In the account_id field, indicate the specific account you are linking. In the processor field, enter marqeta.

    Your response should resemble the following:


    Is this helpful?

  • You are now ready to add this account as an external funding source on the Marqeta platform by sending a POST request to the /fundingsources/ach/partner endpoint. Remember to include the processor_token you created previously.

  • The Marqeta platform contacts Plaid to retrieve the account and routing numbers.

  • The Marqeta platform saves the processor token, as well as the account number and routing number from Plaid. This information is saved internally for future use. For more information about adding an external funding source via a partner integration, see Create ACH source via a partner integration.

Below is a summary view of the account validation flow:

Partnering with Plaid to validate an account holder bank account

Is this helpful?


Once you have successfully added the external funding account, you are ready to pull or push the account holder’s funds using ACH origination.

Subscribe to our developer newsletter