Skip to main content
Note
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.
Use the /banktransfers endpoint to move funds between your program funding or cardholder account and an external account over the ACH Network. This kind of bank transfer is also known as ACH origination. You can create the following types of transfers:
  • Push funds from your program funding or cardholder account to an external account.
  • Pull funds from your external account into your program funding or cardholder account.
You must have an existing bank account at a US bank to fund or receive funds from your Marqeta account. To add an external program funding source account to the Marqeta platform, send a POST request to the /fundingsources/program/ach endpoint to PUSH or PULL money from or to the Program Funding Account. To add an external account holder funding source account to the Marqeta platform, send a POST request to the /fundingsources/ach endpoint to PUSH or PULL money from or to the Cardholder Account. For more information on ACH funding, see ACH Origination.

Create ACH transfer

Action: POST
Endpoint: /banktransfers/ach
Create an ACH transfer that pushes funds to an external account or pulls funds into your program funding account.

Request body

Create bank transfer request model

Sample request body

JSON

Response body

Sample response body

JSON

List ACH transfers

Action: GET
Endpoint: /banktransfers/ach
Retrieve a list of all ACH transfers.

URL query parameters

Response body

Sample response body

JSON

Perform faster funds ACH transfer

Action: POST
Endpoint: /banktransfers/ach/earlyfunds
Use this endpoint to post funds from an existing bank transfer more quickly to the cardholder’s account.

Request body

Sample request body

JSON

Response body

Sample response body

JSON

Retrieve ACH transfer

Action: GET
Endpoint: /banktransfers/ach/{token}
Retrieve a specific ACH transfer.

URL path parameters

Response body

Sample response body

JSON

Create ACH transfer transition

Action: POST
Endpoint: /banktransfers/ach/transitions
Create an ACH transfer transition that updates the status of an ACH transfer. Each ACH transfer has a lifecycle of statuses, as shown in the following diagram:
ACH transfer lifecycle
Note
You can create ACH transfer transitions in the sandbox environment. However, Marqeta transitions ACH transfers through their lifecycle in the production environment.

Request body

Create bank transfer transition request model

Sample request body

JSON

Response body

Sample response body

JSON

List ACH transfer transitions

Action: GET
Endpoint: /banktransfers/ach/transitions
Retrieve a list of all ACH transfer transitions for a given ACH transfer.

URL query parameters

Response body

Sample response body

JSON