Skip to main content
This feature is currently in beta and subject to change. To learn more about the Beta program for this feature, contact your Marqeta Customer Success representative.
Use the Deposit Accounts v4 API to create and manage deposit accounts of types checking, savings, wallet, and deposit for users and businesses. You can create an account, retrieve or list accounts, transition an account between statuses, and manage customer due diligence (CDD) information for an account. Unlike the v3 API, the v4 API allows a single user or business to hold multiple deposit accounts. Account creation with the v4 API is asynchronous. A newly created account has a status of PENDING while it is being provisioned at the financial institution. Once provisioning is complete, the status transitions to ACTIVE and the account becomes available for use.
The v4 API supports end-user interest-bearing accounts, which is a separate feature currently in beta. To learn more about the Beta program for this feature, contact your Marqeta Customer Success representative.

Create deposit account

Action: POST Endpoint: /depositaccounts Creates a new deposit account for a user or business. Supports account types including CHECKING, SAVINGS, WALLET, and DEPOSIT_ACCOUNT.

Request body

Sample request body

Create a checking account for a user
JSON
Create a savings account for a business
JSON

Response body

Sample response body

Pending user checking account
JSON
Pending business savings account
JSON

Retrieve deposit account

Action: GET Endpoint: /depositaccounts/{account_token} Retrieves a deposit account using the specified account token.

URL path parameters

Response body

Sample response body

JSON

List deposit accounts for a user

Action: GET Endpoint: /depositaccounts/user/{user_token} Returns a paginated list of deposit accounts associated with the specified user.

URL path parameters

URL query parameters

Response body

Sample response body

JSON

Create account transition

Action: POST Endpoint: /depositaccounts/{account_token}/transitions Creates a new status transition for a deposit account, changing its status to ACTIVE, SUSPENDED, or TERMINATED.
Accounts in the TERMINATED state cannot be transitioned to another state. TERMINATED is a final state.

URL path parameters

Request body

Sample request body

JSON

Response body

Sample response body

JSON

List account transitions

Action: GET Endpoint: /depositaccounts/{account_token}/transitions Returns a paginated list of status transitions for a specific deposit account.

URL path parameters

URL query parameters

Response body

Sample response body

JSON

Retrieve account transition

Action: GET Endpoint: /depositaccounts/{account_token}/transitions/{transition_token} Retrieves a specific status transition for a deposit account using the provided transition token.

URL path parameters

Response body

The response body contains the same fields as Create account transition.

Sample response body

JSON

Retrieve CDD information

Action: GET Endpoint: /depositaccounts/{account_token}/cdd Retrieves customer due diligence (CDD) information for a specific deposit account. For more information on CDD, see About Customer Due Diligence.

URL path parameters

Response body

Sample response body

JSON

Update CDD answers

Action: PUT Endpoint: /depositaccounts/{account_token}/cdd/{cdd_token} Updates customer due diligence (CDD) answers for a specific deposit account.
Each CDD question must be updated separately. You cannot update multiple questions in a single request.

URL path parameters

Request body

Sample request body

JSON

Response body

Sample response body

JSON