> ## Documentation Index
> Fetch the complete documentation index at: https://www.marqeta.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Funding via ACH

> Use a transfer to move funds entirely within the Marqeta platform. Learn about the three types of supported transfers: fee transfers, peer transfers, and program transfers.

export const EndpointCard = ({method = "API", title, children, href, arrow = true}) => {
  const METHOD_STYLES = {
    GET: {
      bg: "mint-bg-green-400/20 dark:mint-bg-green-400/20",
      text: "mint-text-green-700 dark:mint-text-green-400",
      border: "mint-border-green-300 dark:mint-border-green-700"
    },
    POST: {
      bg: "mint-bg-blue-400/20 dark:mint-bg-blue-400/20",
      text: "mint-text-blue-700 dark:mint-text-blue-400"
    },
    PUT: {
      bg: "mint-bg-yellow-400/20 dark:mint-bg-yellow-400/20",
      text: "mint-text-yellow-700 dark:mint-text-yellow-400"
    },
    PATCH: {
      bg: "mint-bg-orange-400/20 dark:mint-bg-orange-400/20",
      text: "mint-text-orange-700 dark:mint-text-orange-400"
    },
    DELETE: {
      bg: "mint-bg-red-400/20 dark:mint-bg-red-400/20",
      text: "mint-text-red-700 dark:mint-text-red-400"
    },
    API: {
      bg: "mint-bg-black",
      text: "mint-text-white"
    }
  };
  const MethodBadge = ({method}) => {
    const style = METHOD_STYLES[method?.toUpperCase()] ?? METHOD_STYLES.GET;
    return <span className={`
          method-pill rounded-lg font-semibold px-1.5 py-0.5 text-xs leading-5 ${style.bg} ${style.text}`}>
        {method?.toUpperCase()}
      </span>;
  };
  const content = <div className="group flex items-center gap-4 border border-gray-200 dark:border-gray-700 rounded-xl p-5 hover:border-gray-400 dark:hover:border-gray-500 hover:shadow-md transition-all cursor-pointer">
      {}
      <div className="shrink-0">
        <MethodBadge method={method} />
      </div>
      {}
      <div className="flex-1 min-w-0">
        <p className="font-semibold text-gray-900 dark:text-white text-sm leading-snug">{title}</p>
        {children && <p className="mt-1 text-sm text-gray-500 dark:text-gray-400 line-clamp-2">{children}</p>}
      </div>
    </div>;
  if (!href) return content;
  return <a href={href} className="block no-underline border-b-0 mb-2">
      {content}
    </a>;
};

<Note>
  **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.
</Note>

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](/developer-guides/ach-origination/).

<h2 id="post_banktransfers_ach">
  Create ACH transfer
</h2>

**Action:** `POST`\
**Endpoint:** `/banktransfers/ach`

{/* <EndpointCard
title="Create ACH transfer"
path="/banktransfers/ach"
method="post"
/> */}

Create an ACH transfer that pushes funds to an external account or pulls funds into your program funding account.

<h3 id="_request_body">
  Request body
</h3>

Create bank transfer request model

| Fields                                                             | Description                                                                                                                                                                                                                                                           |
| ------------------------------------------------------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| amount<br /><br />decimal<br /><br />Required                      | Amount to push or pull.<br /><br />**Allowable Values:**<br /><br />0.01 min                                                                                                                                                                                          |
| currency\_code<br /><br />string<br /><br />Optional               | Currency of the push or pull.<br /><br />**Allowable Values:**<br /><br />Valid alpha-3 <a href="https://www.iso.org/iso-4217-currency-codes.html" target="_blank" rel="noopener">ISO 4217 currency code</a><br /><br />**Default value:**<br />USD                   |
| funding\_source\_token<br /><br />string<br /><br />Required       | ACH funding source token for the external account.<br /><br />**Allowable Values:**<br /><br />36 char max<br /><br />Existing ACH funding source token.                                                                                                              |
| memo<br /><br />string<br /><br />Optional                         | Additional text describing the ACH transfer.<br /><br />**Allowable Values:**<br /><br />255 char max                                                                                                                                                                 |
| standard\_entry\_class\_code<br /><br />string<br /><br />Optional | Three-letter code identifying the type of entry.<br /><br />- **WEB** — An internet-initiated entry<br />- **PPD** — Prearranged Payment and Deposit<br />- **CCD** — Corporate Credit or Debit Entry<br /><br />**Allowable Values:**<br /><br />`WEB`, `PPD`, `CCD` |
| statement\_descriptor<br /><br />string<br /><br />Optional        | Description of the transaction, as it will appear on the receiver’s bank statement.<br /><br />**Allowable Values:**<br /><br />10 char max                                                                                                                           |
| token<br /><br />string<br /><br />Optional                        | Unique identifier of the ACH transfer to retrieve.<br /><br />**Allowable Values:**<br /><br />36 char max                                                                                                                                                            |
| transfer\_speed<br /><br />string<br /><br />Optional              | Specifies how quickly to initiate the ACH transfer.<br /><br />**NOTE:** Same-day transfers are limited to a maximum amount of \$100,000.<br /><br />**Allowable Values:**<br /><br />`STANDARD`, `SAME_DAY`                                                          |
| type<br /><br />string<br /><br />Optional                         | Specifies whether the ACH transfer is a push (credit) or pull (debit).<br /><br />**Allowable Values:**<br /><br />`PUSH`, `PULL`                                                                                                                                     |

<h3 id="_sample_request_body">
  Sample request body
</h3>

```json JSON lines wrap theme={null}
{
  "funding_source_token": "d331b4b2-cef5-49a3-9c41-75d8f4e15cfz",
  "type": "PUSH",
  "amount": 10.49,
  "transfer_speed": "STANDARD",
  "statement_descriptor": "ACHTRNSFR",
  "standard_entry_class_code": "WEB",
  "currency_code": "USD",
  "memo": "Bank transfer"
}
```

<h3 id="_response_body">
  Response body
</h3>

| Fields                                                                                         | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| ---------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| amount<br /><br />decimal<br /><br />Returned                                                  | Amount to push or pull.<br /><br />**Allowable Values:**<br /><br />0.01 min                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| batch\_number<br /><br />string<br /><br />Conditionally returned                              | Field required in older versions of the API, but no longer used.<br /><br />**Allowable Values:**<br /><br />Any integer                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| created\_time<br /><br />datetime<br /><br />Conditionally returned                            | Date and time when the ACH transfer was created, in UTC.<br /><br />**Allowable Values:**<br /><br />datetime<br /><br />**Format:**<br />yyyy-MM-ddThh:mm:ssZ                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| currency\_code<br /><br />string<br /><br />Conditionally returned                             | Valid alpha-3 <a href="https://www.iso.org/iso-4217-currency-codes.html" target="_blank" rel="noopener">ISO 4217 currency code</a><br /><br />**Allowable Values:**<br /><br />Valid alpha-3 <a href="https://www.iso.org/iso-4217-currency-codes.html" target="_blank" rel="noopener">ISO 4217 currency code</a>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| funding\_source\_token<br /><br />string<br /><br />Returned                                   | ACH funding source token for the external account.<br /><br />**Allowable Values:**<br /><br />36 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| last\_modified\_time<br /><br />datetime<br /><br />Conditionally returned                     | Date and time when the ACH transfer was last modified, in UTC.<br /><br />**Allowable Values:**<br /><br />datetime<br /><br />**Format:**<br />yyyy-MM-ddThh:mm:ssZ                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| memo<br /><br />string<br /><br />Conditionally returned                                       | Additional text describing the ACH transfer.<br /><br />**Allowable Values:**<br /><br />99 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| return\_code<br /><br />string<br /><br />Conditionally returned                               | Standardized ACH return code for a returned transaction, generally sent by the RDFI.<br /><br />Transactions can be returned for any of the reasons listed in the <a href="/developer-guides/ach-origination/#_nacha_ach_return_codes">NACHA ACH return codes table</a> of the ACH Origination Guide.<br /><br />**Allowable Values:**<br /><br />`R01`, `R02`, `R03`, `R04`, `R05`, `R06`, `R07`, `R08`, `R09`, `R10`, `R11`, `R12`, `R13`, `R14`, `R15`, `R16`, `R17`, `R18`, `R19`, `R20`, `R21`, `R22`, `R23`, `R24`, `R25`, `R26`, `R27`, `R28`, `R29`, `R30`, `R31`, `R32`, `R33`, `R34`, `R35`, `R37`, `R38`, `R39`, `R40`, `R41`, `R42`, `R43`, `R44`, `R45`, `R46`, `R47`, `R50`, `R51`, `R52`, `R53`, `R61`, `R67`, `R68`, `R69`, `R70`, `R71`, `R72`, `R73`, `R74`, `R75`, `R76`, `R80`, `R81`, `R82`, `R83`, `R84`, `R85` |
| return\_reason<br /><br />string<br /><br />Conditionally returned                             | Human-readable description correlating to the `return_code`, such as `Insufficient funds`, if a return code is present in the response.<br /><br />**Allowable Values:**<br /><br />255 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| standard\_entry\_class\_code<br /><br />string<br /><br />Conditionally returned               | Three-letter code identifying the type of entry.<br /><br />- **WEB** — An internet-initiated entry<br />- **PPD** — Prearranged Payment and Deposit<br />- **CCD** — Corporate Credit or Debit Entry<br /><br />**Allowable Values:**<br /><br />`WEB`, `PPD`, `CCD`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| statement\_descriptor<br /><br />string<br /><br />Conditionally returned                      | Description of the transaction, as it will appear on the receiver’s bank statement.<br /><br />**Allowable Values:**<br /><br />10 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| status<br /><br />string<br /><br />Conditionally returned                                     | New state of the ACH transfer.<br /><br />**Allowable Values:**<br /><br />`INITIATED`, `PENDING`, `PROCESSING`, `SUBMITTED`, `RETURNED`, `COMPLETED`, `ERROR`, `CANCELLED`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| token<br /><br />string<br /><br />Conditionally returned                                      | Unique identifier of the ACH transfer to retrieve.<br /><br />**Allowable Values:**<br /><br />36 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| transfer\_speed<br /><br />string<br /><br />Conditionally returned                            | Specifies how quickly to initiate the ACH transfer.<br /><br />**NOTE:** Same-day transfers are limited to a maximum amount of \$100,000.<br /><br />**Allowable Values:**<br /><br />`STANDARD`, `SAME_DAY`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| transitions<br /><br />array of objects<br /><br />Conditionally returned                      | Array of ACH transfer transition objects.<br /><br />**Allowable Values:**<br /><br />Valid array of one or more `transitions` objects                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| transitions\[].**bank\_transfer\_token**<br /><br />string<br /><br />Returned                 | Unique identifier of the ACH transfer being transitioned.<br /><br />**Allowable Values:**<br /><br />36 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| transitions\[].**batch\_number**<br /><br />string<br /><br />Conditionally returned           | Field required in older versions of the API, but no longer used.<br /><br />**Allowable Values:**<br /><br />Any integer                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| transitions\[].**channel**<br /><br />string<br /><br />Returned                               | Mechanism by which the transaction was initiated.<br /><br />**Allowable Values:**<br /><br />`API`, `SYSTEM`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| transitions\[].**created\_time**<br /><br />datetime<br /><br />Conditionally returned         | Date and time when the ACH transfer was created, in UTC.<br /><br />**Allowable Values:**<br /><br />datetime<br /><br />**Format:**<br />yyyy-MM-ddThh:mm:ssZ                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| transitions\[].**last\_modified\_time**<br /><br />datetime<br /><br />Conditionally returned  | Date and time when the ACH transfer was last modified.<br /><br />**Allowable Values:**<br /><br />datetime<br /><br />**Format:**<br />yyyy-MM-ddThh:mm:ssZ                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| transitions\[].**program\_reserve\_token**<br /><br />string<br /><br />Conditionally returned | Not currently used.<br /><br />**Allowable Values:**<br /><br />36 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| transitions\[].**reason**<br /><br />string<br /><br />Conditionally returned                  | Explanation of why the transition is being made, for example "Created by POST call on API". Returned if this information was supplied when the transition was originally created.<br /><br />**Allowable Values:**<br /><br />255 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| transitions\[].**return\_code**<br /><br />string<br /><br />Conditionally returned            | Standardized ACH return code for a returned transaction, generally sent by the RDFI.<br /><br />Transactions can be returned for any of the reasons listed in the <a href="/developer-guides/ach-origination/#_nacha_ach_return_codes">NACHA ACH return codes table</a> of the ACH Origination Guide.<br /><br />**Allowable Values:**<br /><br />`R01`, `R02`, `R03`, `R04`, `R05`, `R06`, `R07`, `R08`, `R09`, `R10`, `R11`, `R12`, `R13`, `R14`, `R15`, `R16`, `R17`, `R18`, `R19`, `R20`, `R21`, `R22`, `R23`, `R24`, `R25`, `R26`, `R27`, `R28`, `R29`, `R30`, `R31`, `R32`, `R33`, `R34`, `R35`, `R37`, `R38`, `R39`, `R40`, `R41`, `R42`, `R43`, `R44`, `R45`, `R46`, `R47`, `R50`, `R51`, `R52`, `R53`, `R61`, `R67`, `R68`, `R69`, `R70`, `R71`, `R72`, `R73`, `R74`, `R75`, `R76`, `R80`, `R81`, `R82`, `R83`, `R84`, `R85` |
| transitions\[].**return\_reason**<br /><br />string<br /><br />Conditionally returned          | Human-readable description correlating to the `return_code`, such as `Insufficient funds`, if a return code is present in the response.<br /><br />**Allowable Values:**<br /><br />255 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| transitions\[].**status**<br /><br />string<br /><br />Returned                                | New state of the ACH transfer.<br /><br />**Allowable Values:**<br /><br />`PENDING`, `PROCESSING`, `SUBMITTED`, `RETURNED`, `COMPLETED`, `CANCELLED`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| transitions\[].**token**<br /><br />string<br /><br />Conditionally returned                   | Unique identifier of the bank transfer transition.<br /><br />**Allowable Values:**<br /><br />36 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| transitions\[].**transaction\_jit\_token**<br /><br />string<br /><br />Conditionally returned | Transaction token for JIT-related ledger entries for the ACH transfer.<br /><br />**Allowable Values:**<br /><br />Existing JIT Funding transaction token                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| transitions\[].**transaction\_token**<br /><br />string<br /><br />Conditionally returned      | Transaction token for **non**-JIT-related ledger entries for the ACH transfer.<br /><br />**Allowable Values:**<br /><br />Existing transaction token                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| type<br /><br />string<br /><br />Conditionally returned                                       | Specifies whether the ACH transfer is a push (credit) or pull (debit).<br /><br />**Allowable Values:**<br /><br />`PUSH`, `PULL`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |

<h3 id="_sample_response_body">
  Sample response body
</h3>

```json JSON expandable lines wrap theme={null}
{
  "token": "cf3b49d8-bd68-4fb1-8da5-c170cff3d788",
  "amount": 10.49,
  "memo": "Bank transfer",
  "funding_source_token": "d331b4b2-cef5-49a3-9c41-75d8f4e15cfz",
  "type": "PUSH",
  "currency_code": "USD",
  "transfer_speed": "STANDARD",
  "statement_descriptor": "ACHTRNSFR",
  "standard_entry_class_code": "WEB",
  "status": "PENDING",
  "transitions": [
    {
      "token": "0565329e-405d-45ca-9ab4-ca0cd07eca4c",
      "bank_transfer_token": "cf3b49d8-bd68-4fb1-8da5-c170cff3d788",
      "status": "PENDING",
      "reason": "Created by `POST` call on API",
      "channel": "API",
      "created_time": "2024-03-20T18:32:32Z",
      "last_modified_time": "2024-03-20T18:32:32Z"
    }
  ],
  "created_time": "2024-03-20T18:32:32Z",
  "last_modified_time": "2024-03-20T18:32:32Z"
}
```

<h2 id="get_banktransfers_ach">
  List ACH transfers
</h2>

**Action:** `GET`\
**Endpoint:** `/banktransfers/ach`

{/* <EndpointCard
title="List ACH transfers"
path="/banktransfers/ach"
method="get"
/> */}

Retrieve a list of all ACH transfers.

<h3 id="_url_query_parameters">
  URL query parameters
</h3>

| Fields                                                       | Description                                                                                                                                                                                                                                                                                                                                                                                                               |
| ------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| count<br /><br />integer<br /><br />Optional                 | Number of resources to retrieve.<br /><br />**Allowable Values:**<br /><br />1-10                                                                                                                                                                                                                                                                                                                                         |
| start\_index<br /><br />integer<br /><br />Optional          | Sort order index of the first resource in the returned array.<br /><br />**Allowable Values:**<br /><br />Any integer                                                                                                                                                                                                                                                                                                     |
| user\_token<br /><br />string<br /><br />Optional            | Unique identifier of the user resource.<br /><br />**Allowable Values:**<br /><br />Existing user token                                                                                                                                                                                                                                                                                                                   |
| business\_token<br /><br />string<br /><br />Optional        | Unique identifier of the business resource.<br /><br />**Allowable Values:**<br /><br />Existing business token                                                                                                                                                                                                                                                                                                           |
| funding\_source\_token<br /><br />string<br /><br />Optional | Unique identifier of the funding source.<br /><br />**Allowable Values:**<br /><br />Existing `funding_source` token                                                                                                                                                                                                                                                                                                      |
| statuses<br /><br />string<br /><br />Optional               | Comma-delimited list of bank transfer statuses.<br /><br />**Allowable Values:**<br /><br />`PENDING`, `PROCESSING`, `SUBMITTED`, `RETURNED`, `COMPLETED`, `CANCELLED`                                                                                                                                                                                                                                                    |
| sort\_by<br /><br />string<br /><br />Optional               | Field on which to sort. Use any field in the resource model, or one of the system fields `lastModifiedTime` or `createdTime`. Prefix the field name with a hyphen (`-`) to sort in descending order. Omit the hyphen to sort in ascending order.<br /><br />**Allowable Values:**<br /><br />`createdTime`, `lastModifiedTime`, or any field in the resource model<br /><br />**Default value:**<br />`-lastModifiedTime` |
| expand<br /><br />string<br /><br />Optional                 | Returns the full funding source object when `fundingsource` is passed. Otherwise, returns the funding source token.<br /><br />**Allowable Values:**<br /><br />`fundingsource` or blank                                                                                                                                                                                                                                  |
| funding\_source\_type<br /><br />string<br /><br />Optional  | Funding source type to filter.<br /><br />**Allowable Values:**<br /><br />`USER`, `PROGRAM`                                                                                                                                                                                                                                                                                                                              |

<h3 id="_response_body_2">
  Response body
</h3>

| Fields                                                                                                 | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| ------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| count<br /><br />integer<br /><br />Conditionally returned                                             | Number of resources retrieved.<br /><br />This field is returned if there are resources in your returned array.<br /><br />**Allowable Values:**<br /><br />1-10                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| data<br /><br />array of objects<br /><br />Conditionally returned                                     | Array of ACH transfer objects.<br /><br />Objects are returned as appropriate to your query.<br /><br />**Allowable Values:**<br /><br />Valid array of one or more ACH transfer transition objects                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| data\[].**amount**<br /><br />decimal<br /><br />Returned                                              | Amount to push or pull.<br /><br />**Allowable Values:**<br /><br />0.01 min                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| data\[].**batch\_number**<br /><br />string<br /><br />Conditionally returned                          | Field required in older versions of the API, but no longer used.<br /><br />**Allowable Values:**<br /><br />Any integer                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| data\[].**created\_time**<br /><br />datetime<br /><br />Conditionally returned                        | Date and time when the ACH transfer was created, in UTC.<br /><br />**Allowable Values:**<br /><br />datetime<br /><br />**Format:**<br />yyyy-MM-ddThh:mm:ssZ                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| data\[].**currency\_code**<br /><br />string<br /><br />Conditionally returned                         | Valid alpha-3 <a href="https://www.iso.org/iso-4217-currency-codes.html" target="_blank" rel="noopener">ISO 4217 currency code</a><br /><br />**Allowable Values:**<br /><br />Valid alpha-3 <a href="https://www.iso.org/iso-4217-currency-codes.html" target="_blank" rel="noopener">ISO 4217 currency code</a>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| data\[].**funding\_source\_token**<br /><br />string<br /><br />Returned                               | ACH funding source token for the external account.<br /><br />**Allowable Values:**<br /><br />36 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| data\[].**last\_modified\_time**<br /><br />datetime<br /><br />Conditionally returned                 | Date and time when the ACH transfer was last modified, in UTC.<br /><br />**Allowable Values:**<br /><br />datetime<br /><br />**Format:**<br />yyyy-MM-ddThh:mm:ssZ                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| data\[].**memo**<br /><br />string<br /><br />Conditionally returned                                   | Additional text describing the ACH transfer.<br /><br />**Allowable Values:**<br /><br />99 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| data\[].**return\_code**<br /><br />string<br /><br />Conditionally returned                           | Standardized ACH return code for a returned transaction, generally sent by the RDFI.<br /><br />Transactions can be returned for any of the reasons listed in the <a href="/developer-guides/ach-origination/#_nacha_ach_return_codes">NACHA ACH return codes table</a> of the ACH Origination Guide.<br /><br />**Allowable Values:**<br /><br />`R01`, `R02`, `R03`, `R04`, `R05`, `R06`, `R07`, `R08`, `R09`, `R10`, `R11`, `R12`, `R13`, `R14`, `R15`, `R16`, `R17`, `R18`, `R19`, `R20`, `R21`, `R22`, `R23`, `R24`, `R25`, `R26`, `R27`, `R28`, `R29`, `R30`, `R31`, `R32`, `R33`, `R34`, `R35`, `R37`, `R38`, `R39`, `R40`, `R41`, `R42`, `R43`, `R44`, `R45`, `R46`, `R47`, `R50`, `R51`, `R52`, `R53`, `R61`, `R67`, `R68`, `R69`, `R70`, `R71`, `R72`, `R73`, `R74`, `R75`, `R76`, `R80`, `R81`, `R82`, `R83`, `R84`, `R85` |
| data\[].**return\_reason**<br /><br />string<br /><br />Conditionally returned                         | Human-readable description correlating to the `return_code`, such as `Insufficient funds`, if a return code is present in the response.<br /><br />**Allowable Values:**<br /><br />255 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| data\[].**standard\_entry\_class\_code**<br /><br />string<br /><br />Conditionally returned           | Three-letter code identifying the type of entry.<br /><br />- **WEB** — An internet-initiated entry<br />- **PPD** — Prearranged Payment and Deposit<br />- **CCD** — Corporate Credit or Debit Entry<br /><br />**Allowable Values:**<br /><br />`WEB`, `PPD`, `CCD`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| data\[].**statement\_descriptor**<br /><br />string<br /><br />Conditionally returned                  | Description of the transaction, as it will appear on the receiver’s bank statement.<br /><br />**Allowable Values:**<br /><br />10 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| data\[].**status**<br /><br />string<br /><br />Conditionally returned                                 | New state of the ACH transfer.<br /><br />**Allowable Values:**<br /><br />`INITIATED`, `PENDING`, `PROCESSING`, `SUBMITTED`, `RETURNED`, `COMPLETED`, `ERROR`, `CANCELLED`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| data\[].**token**<br /><br />string<br /><br />Conditionally returned                                  | Unique identifier of the ACH transfer to retrieve.<br /><br />**Allowable Values:**<br /><br />36 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| data\[].**transfer\_speed**<br /><br />string<br /><br />Conditionally returned                        | Specifies how quickly to initiate the ACH transfer.<br /><br />**NOTE:** Same-day transfers are limited to a maximum amount of \$100,000.<br /><br />**Allowable Values:**<br /><br />`STANDARD`, `SAME_DAY`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| data\[].**transitions**<br /><br />array of objects<br /><br />Conditionally returned                  | Array of ACH transfer transition objects.<br /><br />**Allowable Values:**<br /><br />Valid array of one or more `transitions` objects                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| data\[].transitions\[].**bank\_transfer\_token**<br /><br />string<br /><br />Returned                 | Unique identifier of the ACH transfer being transitioned.<br /><br />**Allowable Values:**<br /><br />36 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| data\[].transitions\[].**batch\_number**<br /><br />string<br /><br />Conditionally returned           | Field required in older versions of the API, but no longer used.<br /><br />**Allowable Values:**<br /><br />Any integer                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| data\[].transitions\[].**channel**<br /><br />string<br /><br />Returned                               | Mechanism by which the transaction was initiated.<br /><br />**Allowable Values:**<br /><br />`API`, `SYSTEM`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| data\[].transitions\[].**created\_time**<br /><br />datetime<br /><br />Conditionally returned         | Date and time when the ACH transfer was created, in UTC.<br /><br />**Allowable Values:**<br /><br />datetime<br /><br />**Format:**<br />yyyy-MM-ddThh:mm:ssZ                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| data\[].transitions\[].**last\_modified\_time**<br /><br />datetime<br /><br />Conditionally returned  | Date and time when the ACH transfer was last modified.<br /><br />**Allowable Values:**<br /><br />datetime<br /><br />**Format:**<br />yyyy-MM-ddThh:mm:ssZ                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| data\[].transitions\[].**program\_reserve\_token**<br /><br />string<br /><br />Conditionally returned | Not currently used.<br /><br />**Allowable Values:**<br /><br />36 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| data\[].transitions\[].**reason**<br /><br />string<br /><br />Conditionally returned                  | Explanation of why the transition is being made, for example "Created by POST call on API". Returned if this information was supplied when the transition was originally created.<br /><br />**Allowable Values:**<br /><br />255 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| data\[].transitions\[].**return\_code**<br /><br />string<br /><br />Conditionally returned            | Standardized ACH return code for a returned transaction, generally sent by the RDFI.<br /><br />Transactions can be returned for any of the reasons listed in the <a href="/developer-guides/ach-origination/#_nacha_ach_return_codes">NACHA ACH return codes table</a> of the ACH Origination Guide.<br /><br />**Allowable Values:**<br /><br />`R01`, `R02`, `R03`, `R04`, `R05`, `R06`, `R07`, `R08`, `R09`, `R10`, `R11`, `R12`, `R13`, `R14`, `R15`, `R16`, `R17`, `R18`, `R19`, `R20`, `R21`, `R22`, `R23`, `R24`, `R25`, `R26`, `R27`, `R28`, `R29`, `R30`, `R31`, `R32`, `R33`, `R34`, `R35`, `R37`, `R38`, `R39`, `R40`, `R41`, `R42`, `R43`, `R44`, `R45`, `R46`, `R47`, `R50`, `R51`, `R52`, `R53`, `R61`, `R67`, `R68`, `R69`, `R70`, `R71`, `R72`, `R73`, `R74`, `R75`, `R76`, `R80`, `R81`, `R82`, `R83`, `R84`, `R85` |
| data\[].transitions\[].**return\_reason**<br /><br />string<br /><br />Conditionally returned          | Human-readable description correlating to the `return_code`, such as `Insufficient funds`, if a return code is present in the response.<br /><br />**Allowable Values:**<br /><br />255 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| data\[].transitions\[].**status**<br /><br />string<br /><br />Returned                                | New state of the ACH transfer.<br /><br />**Allowable Values:**<br /><br />`PENDING`, `PROCESSING`, `SUBMITTED`, `RETURNED`, `COMPLETED`, `CANCELLED`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| data\[].transitions\[].**token**<br /><br />string<br /><br />Conditionally returned                   | Unique identifier of the bank transfer transition.<br /><br />**Allowable Values:**<br /><br />36 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| data\[].transitions\[].**transaction\_jit\_token**<br /><br />string<br /><br />Conditionally returned | Transaction token for JIT-related ledger entries for the ACH transfer.<br /><br />**Allowable Values:**<br /><br />Existing JIT Funding transaction token                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| data\[].transitions\[].**transaction\_token**<br /><br />string<br /><br />Conditionally returned      | Transaction token for **non**-JIT-related ledger entries for the ACH transfer.<br /><br />**Allowable Values:**<br /><br />Existing transaction token                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| data\[].**type**<br /><br />string<br /><br />Conditionally returned                                   | Specifies whether the ACH transfer is a push (credit) or pull (debit).<br /><br />**Allowable Values:**<br /><br />`PUSH`, `PULL`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| end\_index<br /><br />integer<br /><br />Conditionally returned                                        | Sort order index of the last resource in the returned array.<br /><br />This field is returned if there are resources in your returned array.<br /><br />**Allowable Values:**<br /><br />Any integer                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| is\_more<br /><br />boolean<br /><br />Conditionally returned                                          | A value of `true` indicates that more unreturned resources exist. A value of `false` indicates that no more unreturned resources exist.<br /><br />This field is returned if there are resources in your returned array.<br /><br />**Allowable Values:**<br /><br />`true`, `false`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| start\_index<br /><br />integer<br /><br />Conditionally returned                                      | Sort order index of the first resource in the returned array.<br /><br />This field is returned if there are resources in your returned array.<br /><br />**Allowable Values:**<br /><br />Any integer                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |

<h3 id="_sample_response_body_2">
  Sample response body
</h3>

```json JSON expandable lines wrap theme={null}
{
  "count": 2,
  "start_index": 0,
  "end_index": 1,
  "is_more": false,
  "data": [
    {
      "token": "cf3b49d8-bd68-4fb1-8da5-c170cff3d788",
      "amount": 10.49,
      "memo": "Bank transfer",
      "funding_source_token": "d331b4b2-cef5-49a3-9c41-75d8f4e15cfz",
      "type": "PUSH",
      "currency_code": "USD",
      "transfer_speed": "STANDARD",
      "statement_descriptor": "ACHTRNSFR",
      "standard_entry_class_code": "WEB",
      "status": "PENDING",
      "transitions": [
        {
          "token": "0565329e-405d-45ca-9ab4-ca0cd07eca4c",
          "bank_transfer_token": "cf3b49d8-bd68-4fb1-8da5-c170cff3d788",
          "status": "PENDING",
          "reason": "Created by `POST` call on API",
          "channel": "API",
          "created_time": "2024-03-20T18:32:32Z",
          "last_modified_time": "2024-03-20T18:33:32Z"
        }
      ],
      "created_time": "2024-03-20T18:32:32Z",
      "last_modified_time": "2024-03-20T18:33:32Z"
    },
    {
      "token": "f8b8245f-fc36-49f3-9f9f-f63b159501b7",
      "amount": 100.11,
      "funding_source_token": "bbaefe8f-f5d0-43f6-8576-16f562d23f3f",
      "type": "PUSH",
      "currency_code": "USD",
      "transfer_speed": "STANDARD",
      "statement_descriptor": "ACHTRNSFR",
      "standard_entry_class_code": "WEB",
      "status": "PROCESSING",
      "transitions": [
        {
          "token": "1d208bf9-8439-4b35-9c43-6d5bc74995c7",
          "bank_transfer_token": "f8b8245f-fc36-49f3-9f9f-f63b159501b7",
          "status": "PENDING",
          "reason": "Created by `POST` call on API",
          "channel": "API",
          "created_time": "2024-03-22T18:01:00Z",
          "last_modified_time": "2024-03-22T18:02:00Z"
        },
        {
          "token": "55f5b1ac-39f6-484d-8284-116046a2efaa",
          "bank_transfer_token": "f8b8245f-fc36-49f3-9f9f-f63b159501b7",
          "status": "PROCESSING",
          "reason": "Created by `POST` call on API",
          "channel": "API",
          "created_time": "2024-03-22T18:01:17Z",
          "last_modified_time": "2024-03-22T18:01:27Z"
        }
      ]
    }
  ],
  "created_time": "2024-03-22T18:01:00Z",
  "last_modified_time": "2024-03-22T18:02:17Z"
}
```

<h2 id="post_apply_provisional_credit_to_bank_transfer">
  Perform faster funds ACH transfer
</h2>

**Action:** `POST`\
**Endpoint:** `/banktransfers/ach/earlyfunds`

{/* <EndpointCard
title="Perform faster funds ACH transfer"
path="/banktransfers/ach/earlyfunds"
method="post"
/> */}

Use this endpoint to post funds from an existing bank transfer more quickly to the cardholder’s account.

<h3 id="_request_body_2">
  Request body
</h3>

| Fields                                                      | Description                                                                                                                                                                                                 |
| ----------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| bank\_transfer\_token<br /><br />string<br /><br />Required | Unique identifier of the ACH transfer whose funds you want to post more quickly to the cardholder’s account.<br /><br />**Allowable Values:**<br /><br />36 char max<br /><br />Existing ACH transfer token |

<h3 id="_sample_request_body_2">
  Sample request body
</h3>

```json JSON lines wrap theme={null}
{
  "bank_transfer_token": "cf3b49d8-bd68-4fb1-8da5-c170cff3d788"
}
```

<h3 id="_response_body_3">
  Response body
</h3>

| Fields                                                                                         | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| ---------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| amount<br /><br />decimal<br /><br />Returned                                                  | Amount to push or pull.<br /><br />**Allowable Values:**<br /><br />0.01 min                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| batch\_number<br /><br />string<br /><br />Conditionally returned                              | Field required in older versions of the API, but no longer used.<br /><br />**Allowable Values:**<br /><br />Any integer                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| created\_time<br /><br />datetime<br /><br />Conditionally returned                            | Date and time when the ACH transfer was created, in UTC.<br /><br />**Allowable Values:**<br /><br />datetime<br /><br />**Format:**<br />yyyy-MM-ddThh:mm:ssZ                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| currency\_code<br /><br />string<br /><br />Conditionally returned                             | Valid alpha-3 <a href="https://www.iso.org/iso-4217-currency-codes.html" target="_blank" rel="noopener">ISO 4217 currency code</a><br /><br />**Allowable Values:**<br /><br />Valid alpha-3 <a href="https://www.iso.org/iso-4217-currency-codes.html" target="_blank" rel="noopener">ISO 4217 currency code</a>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| funding\_source\_token<br /><br />string<br /><br />Returned                                   | ACH funding source token for the external account.<br /><br />**Allowable Values:**<br /><br />36 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| last\_modified\_time<br /><br />datetime<br /><br />Conditionally returned                     | Date and time when the ACH transfer was last modified, in UTC.<br /><br />**Allowable Values:**<br /><br />datetime<br /><br />**Format:**<br />yyyy-MM-ddThh:mm:ssZ                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| memo<br /><br />string<br /><br />Conditionally returned                                       | Additional text describing the ACH transfer.<br /><br />**Allowable Values:**<br /><br />99 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| return\_code<br /><br />string<br /><br />Conditionally returned                               | Standardized ACH return code for a returned transaction, generally sent by the RDFI.<br /><br />Transactions can be returned for any of the reasons listed in the <a href="/developer-guides/ach-origination/#_nacha_ach_return_codes">NACHA ACH return codes table</a> of the ACH Origination Guide.<br /><br />**Allowable Values:**<br /><br />`R01`, `R02`, `R03`, `R04`, `R05`, `R06`, `R07`, `R08`, `R09`, `R10`, `R11`, `R12`, `R13`, `R14`, `R15`, `R16`, `R17`, `R18`, `R19`, `R20`, `R21`, `R22`, `R23`, `R24`, `R25`, `R26`, `R27`, `R28`, `R29`, `R30`, `R31`, `R32`, `R33`, `R34`, `R35`, `R37`, `R38`, `R39`, `R40`, `R41`, `R42`, `R43`, `R44`, `R45`, `R46`, `R47`, `R50`, `R51`, `R52`, `R53`, `R61`, `R67`, `R68`, `R69`, `R70`, `R71`, `R72`, `R73`, `R74`, `R75`, `R76`, `R80`, `R81`, `R82`, `R83`, `R84`, `R85` |
| return\_reason<br /><br />string<br /><br />Conditionally returned                             | Human-readable description correlating to the `return_code`, such as `Insufficient funds`, if a return code is present in the response.<br /><br />**Allowable Values:**<br /><br />255 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| standard\_entry\_class\_code<br /><br />string<br /><br />Conditionally returned               | Three-letter code identifying the type of entry.<br /><br />- **WEB** — An internet-initiated entry<br />- **PPD** — Prearranged Payment and Deposit<br />- **CCD** — Corporate Credit or Debit Entry<br /><br />**Allowable Values:**<br /><br />`WEB`, `PPD`, `CCD`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| statement\_descriptor<br /><br />string<br /><br />Conditionally returned                      | Description of the transaction, as it will appear on the receiver’s bank statement.<br /><br />**Allowable Values:**<br /><br />10 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| status<br /><br />string<br /><br />Conditionally returned                                     | New state of the ACH transfer.<br /><br />**Allowable Values:**<br /><br />`INITIATED`, `PENDING`, `PROCESSING`, `SUBMITTED`, `RETURNED`, `COMPLETED`, `ERROR`, `CANCELLED`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| token<br /><br />string<br /><br />Conditionally returned                                      | Unique identifier of the ACH transfer to retrieve.<br /><br />**Allowable Values:**<br /><br />36 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| transfer\_speed<br /><br />string<br /><br />Conditionally returned                            | Specifies how quickly to initiate the ACH transfer.<br /><br />**NOTE:** Same-day transfers are limited to a maximum amount of \$100,000.<br /><br />**Allowable Values:**<br /><br />`STANDARD`, `SAME_DAY`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| transitions<br /><br />array of objects<br /><br />Conditionally returned                      | Array of ACH transfer transition objects.<br /><br />**Allowable Values:**<br /><br />Valid array of one or more `transitions` objects                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| transitions\[].**bank\_transfer\_token**<br /><br />string<br /><br />Returned                 | Unique identifier of the ACH transfer being transitioned.<br /><br />**Allowable Values:**<br /><br />36 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| transitions\[].**batch\_number**<br /><br />string<br /><br />Conditionally returned           | Field required in older versions of the API, but no longer used.<br /><br />**Allowable Values:**<br /><br />Any integer                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| transitions\[].**channel**<br /><br />string<br /><br />Returned                               | Mechanism by which the transaction was initiated.<br /><br />**Allowable Values:**<br /><br />`API`, `SYSTEM`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| transitions\[].**created\_time**<br /><br />datetime<br /><br />Conditionally returned         | Date and time when the ACH transfer was created, in UTC.<br /><br />**Allowable Values:**<br /><br />datetime<br /><br />**Format:**<br />yyyy-MM-ddThh:mm:ssZ                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| transitions\[].**last\_modified\_time**<br /><br />datetime<br /><br />Conditionally returned  | Date and time when the ACH transfer was last modified.<br /><br />**Allowable Values:**<br /><br />datetime<br /><br />**Format:**<br />yyyy-MM-ddThh:mm:ssZ                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| transitions\[].**program\_reserve\_token**<br /><br />string<br /><br />Conditionally returned | Not currently used.<br /><br />**Allowable Values:**<br /><br />36 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| transitions\[].**reason**<br /><br />string<br /><br />Conditionally returned                  | Explanation of why the transition is being made, for example "Created by POST call on API". Returned if this information was supplied when the transition was originally created.<br /><br />**Allowable Values:**<br /><br />255 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| transitions\[].**return\_code**<br /><br />string<br /><br />Conditionally returned            | Standardized ACH return code for a returned transaction, generally sent by the RDFI.<br /><br />Transactions can be returned for any of the reasons listed in the <a href="/developer-guides/ach-origination/#_nacha_ach_return_codes">NACHA ACH return codes table</a> of the ACH Origination Guide.<br /><br />**Allowable Values:**<br /><br />`R01`, `R02`, `R03`, `R04`, `R05`, `R06`, `R07`, `R08`, `R09`, `R10`, `R11`, `R12`, `R13`, `R14`, `R15`, `R16`, `R17`, `R18`, `R19`, `R20`, `R21`, `R22`, `R23`, `R24`, `R25`, `R26`, `R27`, `R28`, `R29`, `R30`, `R31`, `R32`, `R33`, `R34`, `R35`, `R37`, `R38`, `R39`, `R40`, `R41`, `R42`, `R43`, `R44`, `R45`, `R46`, `R47`, `R50`, `R51`, `R52`, `R53`, `R61`, `R67`, `R68`, `R69`, `R70`, `R71`, `R72`, `R73`, `R74`, `R75`, `R76`, `R80`, `R81`, `R82`, `R83`, `R84`, `R85` |
| transitions\[].**return\_reason**<br /><br />string<br /><br />Conditionally returned          | Human-readable description correlating to the `return_code`, such as `Insufficient funds`, if a return code is present in the response.<br /><br />**Allowable Values:**<br /><br />255 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| transitions\[].**status**<br /><br />string<br /><br />Returned                                | New state of the ACH transfer.<br /><br />**Allowable Values:**<br /><br />`PENDING`, `PROCESSING`, `SUBMITTED`, `RETURNED`, `COMPLETED`, `CANCELLED`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| transitions\[].**token**<br /><br />string<br /><br />Conditionally returned                   | Unique identifier of the bank transfer transition.<br /><br />**Allowable Values:**<br /><br />36 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| transitions\[].**transaction\_jit\_token**<br /><br />string<br /><br />Conditionally returned | Transaction token for JIT-related ledger entries for the ACH transfer.<br /><br />**Allowable Values:**<br /><br />Existing JIT Funding transaction token                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| transitions\[].**transaction\_token**<br /><br />string<br /><br />Conditionally returned      | Transaction token for **non**-JIT-related ledger entries for the ACH transfer.<br /><br />**Allowable Values:**<br /><br />Existing transaction token                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| type<br /><br />string<br /><br />Conditionally returned                                       | Specifies whether the ACH transfer is a push (credit) or pull (debit).<br /><br />**Allowable Values:**<br /><br />`PUSH`, `PULL`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |

<h3 id="_sample_response_body_3">
  Sample response body
</h3>

```json JSON expandable lines wrap theme={null}
{
  "token": "cf3b49d8-bd68-4fb1-8da5-c170cff3d788",
  "amount": 10.49,
  "memo": "Bank transfer",
  "funding_source_token": "d331b4b2-cef5-49a3-9c41-75d8f4e15cfz",
  "type": "PULL",
  "currency_code": "USD",
  "transfer_speed": "STANDARD",
  "statement_descriptor": "ACHTRNSFR",
  "standard_entry_class_code": "WEB",
  "status": "PENDING",
  "transitions": [
    {
      "token": "0565329e-405d-45ca-9ab4-ca0cd07eca4c",
      "bank_transfer_token": "cf3b49d8-bd68-4fb1-8da5-c170cff3d788",
      "status": "PENDING",
      "reason": "Created by POST call on API",
      "channel": "API",
      "created_time": "2024-03-20T18:32:32Z",
      "last_modified_time": "2024-03-20T18:32:32Z"
    }
  ],
  "created_time": "2024-03-20T18:32:32Z",
  "last_modified_time": "2024-03-20T18:32:32Z"
}
```

<h2 id="get_banktransfers_ach_token">
  Retrieve ACH transfer
</h2>

**Action:** `GET`\
**Endpoint:** `/banktransfers/ach/{token}`

{/* <EndpointCard
title="Retrieve ACH transfer"
path="/banktransfers/ach/{token}"
method="get"
/> */}

Retrieve a specific ACH transfer.

<h3 id="_url_path_parameters">
  URL path parameters
</h3>

| Fields                                      | Description                                                                                                      |
| ------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- |
| token<br /><br />string<br /><br />Required | Unique identifier of the bank transfer.<br /><br />**Allowable Values:**<br /><br />Existing bank transfer token |

<h3 id="_response_body_4">
  Response body
</h3>

| Fields                                                                                         | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| ---------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| amount<br /><br />decimal<br /><br />Returned                                                  | Amount to push or pull.<br /><br />**Allowable Values:**<br /><br />0.01 min                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| batch\_number<br /><br />string<br /><br />Conditionally returned                              | Field required in older versions of the API, but no longer used.<br /><br />**Allowable Values:**<br /><br />Any integer                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| created\_time<br /><br />datetime<br /><br />Conditionally returned                            | Date and time when the ACH transfer was created, in UTC.<br /><br />**Allowable Values:**<br /><br />datetime<br /><br />**Format:**<br />yyyy-MM-ddThh:mm:ssZ                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| currency\_code<br /><br />string<br /><br />Conditionally returned                             | Valid alpha-3 <a href="https://www.iso.org/iso-4217-currency-codes.html" target="_blank" rel="noopener">ISO 4217 currency code</a><br /><br />**Allowable Values:**<br /><br />Valid alpha-3 <a href="https://www.iso.org/iso-4217-currency-codes.html" target="_blank" rel="noopener">ISO 4217 currency code</a>                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| funding\_source\_token<br /><br />string<br /><br />Returned                                   | ACH funding source token for the external account.<br /><br />**Allowable Values:**<br /><br />36 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| last\_modified\_time<br /><br />datetime<br /><br />Conditionally returned                     | Date and time when the ACH transfer was last modified, in UTC.<br /><br />**Allowable Values:**<br /><br />datetime<br /><br />**Format:**<br />yyyy-MM-ddThh:mm:ssZ                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| memo<br /><br />string<br /><br />Conditionally returned                                       | Additional text describing the ACH transfer.<br /><br />**Allowable Values:**<br /><br />99 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| return\_code<br /><br />string<br /><br />Conditionally returned                               | Standardized ACH return code for a returned transaction, generally sent by the RDFI.<br /><br />Transactions can be returned for any of the reasons listed in the <a href="/developer-guides/ach-origination/#_nacha_ach_return_codes">NACHA ACH return codes table</a> of the ACH Origination Guide.<br /><br />**Allowable Values:**<br /><br />`R01`, `R02`, `R03`, `R04`, `R05`, `R06`, `R07`, `R08`, `R09`, `R10`, `R11`, `R12`, `R13`, `R14`, `R15`, `R16`, `R17`, `R18`, `R19`, `R20`, `R21`, `R22`, `R23`, `R24`, `R25`, `R26`, `R27`, `R28`, `R29`, `R30`, `R31`, `R32`, `R33`, `R34`, `R35`, `R37`, `R38`, `R39`, `R40`, `R41`, `R42`, `R43`, `R44`, `R45`, `R46`, `R47`, `R50`, `R51`, `R52`, `R53`, `R61`, `R67`, `R68`, `R69`, `R70`, `R71`, `R72`, `R73`, `R74`, `R75`, `R76`, `R80`, `R81`, `R82`, `R83`, `R84`, `R85` |
| return\_reason<br /><br />string<br /><br />Conditionally returned                             | Human-readable description correlating to the `return_code`, such as `Insufficient funds`, if a return code is present in the response.<br /><br />**Allowable Values:**<br /><br />255 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| standard\_entry\_class\_code<br /><br />string<br /><br />Conditionally returned               | Three-letter code identifying the type of entry.<br /><br />- **WEB** — An internet-initiated entry<br />- **PPD** — Prearranged Payment and Deposit<br />- **CCD** — Corporate Credit or Debit Entry<br /><br />**Allowable Values:**<br /><br />`WEB`, `PPD`, `CCD`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| statement\_descriptor<br /><br />string<br /><br />Conditionally returned                      | Description of the transaction, as it will appear on the receiver’s bank statement.<br /><br />**Allowable Values:**<br /><br />10 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| status<br /><br />string<br /><br />Conditionally returned                                     | New state of the ACH transfer.<br /><br />**Allowable Values:**<br /><br />`INITIATED`, `PENDING`, `PROCESSING`, `SUBMITTED`, `RETURNED`, `COMPLETED`, `ERROR`, `CANCELLED`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| token<br /><br />string<br /><br />Conditionally returned                                      | Unique identifier of the ACH transfer to retrieve.<br /><br />**Allowable Values:**<br /><br />36 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| transfer\_speed<br /><br />string<br /><br />Conditionally returned                            | Specifies how quickly to initiate the ACH transfer.<br /><br />**NOTE:** Same-day transfers are limited to a maximum amount of \$100,000.<br /><br />**Allowable Values:**<br /><br />`STANDARD`, `SAME_DAY`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| transitions<br /><br />array of objects<br /><br />Conditionally returned                      | Array of ACH transfer transition objects.<br /><br />**Allowable Values:**<br /><br />Valid array of one or more `transitions` objects                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| transitions\[].**bank\_transfer\_token**<br /><br />string<br /><br />Returned                 | Unique identifier of the ACH transfer being transitioned.<br /><br />**Allowable Values:**<br /><br />36 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| transitions\[].**batch\_number**<br /><br />string<br /><br />Conditionally returned           | Field required in older versions of the API, but no longer used.<br /><br />**Allowable Values:**<br /><br />Any integer                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| transitions\[].**channel**<br /><br />string<br /><br />Returned                               | Mechanism by which the transaction was initiated.<br /><br />**Allowable Values:**<br /><br />`API`, `SYSTEM`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| transitions\[].**created\_time**<br /><br />datetime<br /><br />Conditionally returned         | Date and time when the ACH transfer was created, in UTC.<br /><br />**Allowable Values:**<br /><br />datetime<br /><br />**Format:**<br />yyyy-MM-ddThh:mm:ssZ                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| transitions\[].**last\_modified\_time**<br /><br />datetime<br /><br />Conditionally returned  | Date and time when the ACH transfer was last modified.<br /><br />**Allowable Values:**<br /><br />datetime<br /><br />**Format:**<br />yyyy-MM-ddThh:mm:ssZ                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| transitions\[].**program\_reserve\_token**<br /><br />string<br /><br />Conditionally returned | Not currently used.<br /><br />**Allowable Values:**<br /><br />36 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| transitions\[].**reason**<br /><br />string<br /><br />Conditionally returned                  | Explanation of why the transition is being made, for example "Created by POST call on API". Returned if this information was supplied when the transition was originally created.<br /><br />**Allowable Values:**<br /><br />255 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| transitions\[].**return\_code**<br /><br />string<br /><br />Conditionally returned            | Standardized ACH return code for a returned transaction, generally sent by the RDFI.<br /><br />Transactions can be returned for any of the reasons listed in the <a href="/developer-guides/ach-origination/#_nacha_ach_return_codes">NACHA ACH return codes table</a> of the ACH Origination Guide.<br /><br />**Allowable Values:**<br /><br />`R01`, `R02`, `R03`, `R04`, `R05`, `R06`, `R07`, `R08`, `R09`, `R10`, `R11`, `R12`, `R13`, `R14`, `R15`, `R16`, `R17`, `R18`, `R19`, `R20`, `R21`, `R22`, `R23`, `R24`, `R25`, `R26`, `R27`, `R28`, `R29`, `R30`, `R31`, `R32`, `R33`, `R34`, `R35`, `R37`, `R38`, `R39`, `R40`, `R41`, `R42`, `R43`, `R44`, `R45`, `R46`, `R47`, `R50`, `R51`, `R52`, `R53`, `R61`, `R67`, `R68`, `R69`, `R70`, `R71`, `R72`, `R73`, `R74`, `R75`, `R76`, `R80`, `R81`, `R82`, `R83`, `R84`, `R85` |
| transitions\[].**return\_reason**<br /><br />string<br /><br />Conditionally returned          | Human-readable description correlating to the `return_code`, such as `Insufficient funds`, if a return code is present in the response.<br /><br />**Allowable Values:**<br /><br />255 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| transitions\[].**status**<br /><br />string<br /><br />Returned                                | New state of the ACH transfer.<br /><br />**Allowable Values:**<br /><br />`PENDING`, `PROCESSING`, `SUBMITTED`, `RETURNED`, `COMPLETED`, `CANCELLED`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| transitions\[].**token**<br /><br />string<br /><br />Conditionally returned                   | Unique identifier of the bank transfer transition.<br /><br />**Allowable Values:**<br /><br />36 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| transitions\[].**transaction\_jit\_token**<br /><br />string<br /><br />Conditionally returned | Transaction token for JIT-related ledger entries for the ACH transfer.<br /><br />**Allowable Values:**<br /><br />Existing JIT Funding transaction token                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| transitions\[].**transaction\_token**<br /><br />string<br /><br />Conditionally returned      | Transaction token for **non**-JIT-related ledger entries for the ACH transfer.<br /><br />**Allowable Values:**<br /><br />Existing transaction token                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| type<br /><br />string<br /><br />Conditionally returned                                       | Specifies whether the ACH transfer is a push (credit) or pull (debit).<br /><br />**Allowable Values:**<br /><br />`PUSH`, `PULL`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |

<h3 id="_sample_response_body_4">
  Sample response body
</h3>

```json JSON expandable lines wrap theme={null}
{
  "token": "f8b8245f-fc36-49f3-9f9f-f63b159501b7",
  "amount": 100.11,
  "funding_source_token": "bbaefe8f-f5d0-43f6-8576-16f562d23f3f",
  "type": "PUSH",
  "currency_code": "USD",
  "transfer_speed": "STANDARD",
  "statement_descriptor": "ACHTRNSFR",
  "standard_entry_class_code": "WEB",
  "status": "PROCESSING",
  "transitions": [
    {
      "token": "1d208bf9-8439-4b35-9c43-6d5bc74995c7",
      "bank_transfer_token": "f8b8245f-fc36-49f3-9f9f-f63b159501b7",
      "status": "PENDING",
      "reason": "Created by `POST` call on API",
      "channel": "API",
      "created_time": "2024-03-22T18:01:00Z",
      "last_modified_time": "2024-03-22T18:01:00Z"
    },
    {
      "token": "55f5b1ac-39f6-484d-8284-116046a2efaa",
      "bank_transfer_token": "f8b8245f-fc36-49f3-9f9f-f63b159501b7",
      "status": "PROCESSING",
      "reason": "Created by `POST` call on API",
      "channel": "API",
      "created_time": "2024-03-22T18:01:17Z",
      "last_modified_time": "2024-03-22T18:01:17Z"
    }
  ],
  "created_time": "2024-03-22T18:01:00Z",
  "last_modified_time": "2024-03-22T18:01:17Z"
}
```

<h2 id="post_banktransfers_ach_transitions">
  Create ACH transfer transition
</h2>

**Action:** `POST`\
**Endpoint:** `/banktransfers/ach/transitions`

{/* <EndpointCard
title="Create ACH transfer transition"
path="/banktransfers/ach/transitions"
method="post"
/> */}

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:

<Frame>
  <img src="https://mintcdn.com/marqeta-b295cded/TxQgVKoSBbsxuEcD/images/docs/core-api/funding-via-ach/achtransfers1.svg?fit=max&auto=format&n=TxQgVKoSBbsxuEcD&q=85&s=11e6ea3965b0d1a82a17b95da7369934" alt="ACH transfer lifecycle" width="980" height="402" data-path="images/docs/core-api/funding-via-ach/achtransfers1.svg" />
</Frame>

<Note>
  **Note**\
  You can create ACH transfer transitions in the sandbox environment. However, Marqeta transitions ACH transfers through their lifecycle in the production environment.
</Note>

<h3 id="_request_body_3">
  Request body
</h3>

Create bank transfer transition request model

| Fields                                                        | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| ------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| bank\_transfer\_token<br /><br />string<br /><br />Required   | Token of the ACH transfer you want to transition.<br /><br />**Allowable Values:**<br /><br />36 char max<br /><br />Existing ACH transfer token                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| batch\_number<br /><br />string<br /><br />Optional           | Field required in older versions of the API, but no longer used.<br /><br />**Allowable Values:**<br /><br />Any integer                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| channel<br /><br />string<br /><br />Required                 | Mechanism by which the transaction was initiated.<br /><br />**Allowable Values:**<br /><br />`API`, `SYSTEM`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| program\_reserve\_token<br /><br />string<br /><br />Optional | Not currently used.<br /><br />**Allowable Values:**<br /><br />36 char max<br /><br />Existing program reserve token                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| reason<br /><br />string<br /><br />Optional                  | Description of why the ACH transfer status was updated.<br /><br />**Allowable Values:**<br /><br />255 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| return\_code<br /><br />string<br /><br />Optional            | Standardized ACH return code for a returned transaction, generally sent by the RDFI.<br /><br />Transactions can be returned for any of the reasons listed in the <a href="/developer-guides/ach-origination/#_nacha_ach_return_codes">NACHA ACH return codes table</a> of the ACH Origination Guide.<br /><br />**Allowable Values:**<br /><br />`R01`, `R02`, `R03`, `R04`, `R05`, `R06`, `R07`, `R08`, `R09`, `R10`, `R11`, `R12`, `R13`, `R14`, `R15`, `R16`, `R17`, `R18`, `R19`, `R20`, `R21`, `R22`, `R23`, `R24`, `R25`, `R26`, `R27`, `R28`, `R29`, `R30`, `R31`, `R32`, `R33`, `R34`, `R35`, `R37`, `R38`, `R39`, `R40`, `R41`, `R42`, `R43`, `R44`, `R45`, `R46`, `R47`, `R50`, `R51`, `R52`, `R53`, `R61`, `R67`, `R68`, `R69`, `R70`, `R71`, `R72`, `R73`, `R74`, `R75`, `R76`, `R80`, `R81`, `R82`, `R83`, `R84`, `R85`<br /><br />NOTE\|OPEN\|\| CALLOUTTITLE:Note\|TITLEBREAK\|If the transition is to the <code>RETURNED</code> state, a <code>return\_code</code> should be supplied to indicate why the transaction is <code>RETURNED</code> . NOTE\|CLOSE |
| status<br /><br />string<br /><br />Required                  | New state of the ACH transfer.<br /><br />**NOTE:** In production environments, the only value to which you are allowed to transition an ACH transfer is `CANCELLED`.<br /><br />**Allowable Values:**<br /><br />`PENDING`, `PROCESSING`, `SUBMITTED`, `RETURNED`, `COMPLETED`, `CANCELLED`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| token<br /><br />string<br /><br />Optional                   | Unique identifier of the bank transfer transition request.<br /><br />**Allowable Values:**<br /><br />36 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |

<h3 id="_sample_request_body_3">
  Sample request body
</h3>

```json JSON lines wrap theme={null}
{
  "bank_transfer_token": "f8b8245f-fc36-49f3-9f9f-f63b159501b7",
  "status": "CANCELLED",
  "channel": "API"
}
```

<h3 id="_response_body_5">
  Response body
</h3>

| Fields                                                                      | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| --------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| bank\_transfer\_token<br /><br />string<br /><br />Returned                 | Unique identifier of the ACH transfer being transitioned.<br /><br />**Allowable Values:**<br /><br />36 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| batch\_number<br /><br />string<br /><br />Conditionally returned           | Field required in older versions of the API, but no longer used.<br /><br />**Allowable Values:**<br /><br />Any integer                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| channel<br /><br />string<br /><br />Returned                               | Mechanism by which the transaction was initiated.<br /><br />**Allowable Values:**<br /><br />`API`, `SYSTEM`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| created\_time<br /><br />datetime<br /><br />Conditionally returned         | Date and time when the ACH transfer was created, in UTC.<br /><br />**Allowable Values:**<br /><br />datetime<br /><br />**Format:**<br />yyyy-MM-ddThh:mm:ssZ                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| last\_modified\_time<br /><br />datetime<br /><br />Conditionally returned  | Date and time when the ACH transfer was last modified.<br /><br />**Allowable Values:**<br /><br />datetime<br /><br />**Format:**<br />yyyy-MM-ddThh:mm:ssZ                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| program\_reserve\_token<br /><br />string<br /><br />Conditionally returned | Not currently used.<br /><br />**Allowable Values:**<br /><br />36 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| reason<br /><br />string<br /><br />Conditionally returned                  | Explanation of why the transition is being made, for example "Created by POST call on API". Returned if this information was supplied when the transition was originally created.<br /><br />**Allowable Values:**<br /><br />255 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| return\_code<br /><br />string<br /><br />Conditionally returned            | Standardized ACH return code for a returned transaction, generally sent by the RDFI.<br /><br />Transactions can be returned for any of the reasons listed in the <a href="/developer-guides/ach-origination/#_nacha_ach_return_codes">NACHA ACH return codes table</a> of the ACH Origination Guide.<br /><br />**Allowable Values:**<br /><br />`R01`, `R02`, `R03`, `R04`, `R05`, `R06`, `R07`, `R08`, `R09`, `R10`, `R11`, `R12`, `R13`, `R14`, `R15`, `R16`, `R17`, `R18`, `R19`, `R20`, `R21`, `R22`, `R23`, `R24`, `R25`, `R26`, `R27`, `R28`, `R29`, `R30`, `R31`, `R32`, `R33`, `R34`, `R35`, `R37`, `R38`, `R39`, `R40`, `R41`, `R42`, `R43`, `R44`, `R45`, `R46`, `R47`, `R50`, `R51`, `R52`, `R53`, `R61`, `R67`, `R68`, `R69`, `R70`, `R71`, `R72`, `R73`, `R74`, `R75`, `R76`, `R80`, `R81`, `R82`, `R83`, `R84`, `R85` |
| return\_reason<br /><br />string<br /><br />Conditionally returned          | Human-readable description correlating to the `return_code`, such as `Insufficient funds`, if a return code is present in the response.<br /><br />**Allowable Values:**<br /><br />255 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| status<br /><br />string<br /><br />Returned                                | New state of the ACH transfer.<br /><br />**Allowable Values:**<br /><br />`PENDING`, `PROCESSING`, `SUBMITTED`, `RETURNED`, `COMPLETED`, `CANCELLED`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| token<br /><br />string<br /><br />Conditionally returned                   | Unique identifier of the bank transfer transition.<br /><br />**Allowable Values:**<br /><br />36 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| transaction\_jit\_token<br /><br />string<br /><br />Conditionally returned | Transaction token for JIT-related ledger entries for the ACH transfer.<br /><br />**Allowable Values:**<br /><br />Existing JIT Funding transaction token                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| transaction\_token<br /><br />string<br /><br />Conditionally returned      | Transaction token for **non**-JIT-related ledger entries for the ACH transfer.<br /><br />**Allowable Values:**<br /><br />Existing transaction token                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |

<h3 id="_sample_response_body_5">
  Sample response body
</h3>

```json JSON lines wrap theme={null}
{
  "token": "55f5b1ac-39f6-484d-8284-116046a2efaa",
  "bank_transfer_token": "f8b8245f-fc36-49f3-9f9f-f63b159501b7",
  "status": "CANCELLED",
  "channel": "API",
  "created_time": "2024-03-22T18:01:17Z",
  "last_modified_time": "2024-03-22T18:01:17Z"
}
```

<h2 id="get_banktransfers_ach_transitions">
  List ACH transfer transitions
</h2>

**Action:** `GET`\
**Endpoint:** `/banktransfers/ach/transitions`

{/* <EndpointCard
title="List ACH transfer transitions"
path="/banktransfers/ach/transitions"
method="get"
/> */}

Retrieve a list of all ACH transfer transitions for a given ACH transfer.

<h3 id="_url_query_parameters_2">
  URL query parameters
</h3>

| Fields                                                      | Description                                                                                                                                                                                                                                                                                                                                                                                                               |
| ----------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| count<br /><br />integer<br /><br />Optional                | Number of bank transfer transitions to retrieve.<br /><br />**Allowable Values:**<br /><br />50 max<br /><br />1-10                                                                                                                                                                                                                                                                                                       |
| token<br /><br />string<br /><br />Optional                 | Unique identifier of the bank transfer transition.<br /><br />**Allowable Values:**<br /><br />Existing bank transfer transition token                                                                                                                                                                                                                                                                                    |
| bank\_transfer\_token<br /><br />string<br /><br />Optional | Unique identifier of the bank transfer.<br /><br />**Allowable Values:**<br /><br />Existing bank transfer token                                                                                                                                                                                                                                                                                                          |
| start\_index<br /><br />integer<br /><br />Optional         | Sort order index of the first resource in the returned array.<br /><br />**Allowable Values:**<br /><br />Any integer                                                                                                                                                                                                                                                                                                     |
| sort\_by<br /><br />string<br /><br />Optional              | Field on which to sort. Use any field in the resource model, or one of the system fields `lastModifiedTime` or `createdTime`. Prefix the field name with a hyphen (`-`) to sort in descending order. Omit the hyphen to sort in ascending order.<br /><br />**Allowable Values:**<br /><br />`createdTime`, `lastModifiedTime`, or any field in the resource model<br /><br />**Default value:**<br />`-lastModifiedTime` |
| statuses<br /><br />string<br /><br />Optional              | Comma-delimited list of bank transfer states to display.<br /><br />**Allowable Values:**<br /><br />`PENDING`, `PROCESSING`, `SUBMITTED`, `RETURNED`, `COMPLETED`, `CANCELLED`                                                                                                                                                                                                                                           |

<h3 id="_response_body_6">
  Response body
</h3>

| Fields                                                                                  | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| --------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| count<br /><br />integer<br /><br />Conditionally returned                              | Number of resources retrieved.<br /><br />This field is returned if there are resources in your returned array.<br /><br />**Allowable Values:**<br /><br />1-10                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| data<br /><br />array of objects<br /><br />Conditionally returned                      | Array of ACH transfer transition objects.<br /><br />This field is returned if there are resources in your returned array.<br /><br />**Allowable Values:**<br /><br />A valid array of one or more ACH transfer transition objects                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   |
| data\[].**bank\_transfer\_token**<br /><br />string<br /><br />Returned                 | Unique identifier of the ACH transfer being transitioned.<br /><br />**Allowable Values:**<br /><br />36 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
| data\[].**batch\_number**<br /><br />string<br /><br />Conditionally returned           | Field required in older versions of the API, but no longer used.<br /><br />**Allowable Values:**<br /><br />Any integer                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
| data\[].**channel**<br /><br />string<br /><br />Returned                               | Mechanism by which the transaction was initiated.<br /><br />**Allowable Values:**<br /><br />`API`, `SYSTEM`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| data\[].**created\_time**<br /><br />datetime<br /><br />Conditionally returned         | Date and time when the ACH transfer was created, in UTC.<br /><br />**Allowable Values:**<br /><br />datetime<br /><br />**Format:**<br />yyyy-MM-ddThh:mm:ssZ                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
| data\[].**last\_modified\_time**<br /><br />datetime<br /><br />Conditionally returned  | Date and time when the ACH transfer was last modified.<br /><br />**Allowable Values:**<br /><br />datetime<br /><br />**Format:**<br />yyyy-MM-ddThh:mm:ssZ                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| data\[].**program\_reserve\_token**<br /><br />string<br /><br />Conditionally returned | Not currently used.<br /><br />**Allowable Values:**<br /><br />36 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
| data\[].**reason**<br /><br />string<br /><br />Conditionally returned                  | Explanation of why the transition is being made, for example "Created by POST call on API". Returned if this information was supplied when the transition was originally created.<br /><br />**Allowable Values:**<br /><br />255 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| data\[].**return\_code**<br /><br />string<br /><br />Conditionally returned            | Standardized ACH return code for a returned transaction, generally sent by the RDFI.<br /><br />Transactions can be returned for any of the reasons listed in the <a href="/developer-guides/ach-origination/#_nacha_ach_return_codes">NACHA ACH return codes table</a> of the ACH Origination Guide.<br /><br />**Allowable Values:**<br /><br />`R01`, `R02`, `R03`, `R04`, `R05`, `R06`, `R07`, `R08`, `R09`, `R10`, `R11`, `R12`, `R13`, `R14`, `R15`, `R16`, `R17`, `R18`, `R19`, `R20`, `R21`, `R22`, `R23`, `R24`, `R25`, `R26`, `R27`, `R28`, `R29`, `R30`, `R31`, `R32`, `R33`, `R34`, `R35`, `R37`, `R38`, `R39`, `R40`, `R41`, `R42`, `R43`, `R44`, `R45`, `R46`, `R47`, `R50`, `R51`, `R52`, `R53`, `R61`, `R67`, `R68`, `R69`, `R70`, `R71`, `R72`, `R73`, `R74`, `R75`, `R76`, `R80`, `R81`, `R82`, `R83`, `R84`, `R85` |
| data\[].**return\_reason**<br /><br />string<br /><br />Conditionally returned          | Human-readable description correlating to the `return_code`, such as `Insufficient funds`, if a return code is present in the response.<br /><br />**Allowable Values:**<br /><br />255 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| data\[].**status**<br /><br />string<br /><br />Returned                                | New state of the ACH transfer.<br /><br />**Allowable Values:**<br /><br />`PENDING`, `PROCESSING`, `SUBMITTED`, `RETURNED`, `COMPLETED`, `CANCELLED`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| data\[].**token**<br /><br />string<br /><br />Conditionally returned                   | Unique identifier of the bank transfer transition.<br /><br />**Allowable Values:**<br /><br />36 char max                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| data\[].**transaction\_jit\_token**<br /><br />string<br /><br />Conditionally returned | Transaction token for JIT-related ledger entries for the ACH transfer.<br /><br />**Allowable Values:**<br /><br />Existing JIT Funding transaction token                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             |
| data\[].**transaction\_token**<br /><br />string<br /><br />Conditionally returned      | Transaction token for **non**-JIT-related ledger entries for the ACH transfer.<br /><br />**Allowable Values:**<br /><br />Existing transaction token                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| end\_index<br /><br />integer<br /><br />Conditionally returned                         | Sort order index of the last resource in the returned array.<br /><br />This field is returned if there are resources in your returned array.<br /><br />**Allowable Values:**<br /><br />Any integer                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
| is\_more<br /><br />boolean<br /><br />Conditionally returned                           | A value of `true` indicates that more unreturned resources exist. A value of `false` indicates that no more unreturned resources exist.<br /><br />This field is returned if there are resources in your returned array.<br /><br />**Allowable Values:**<br /><br />`true`, `false`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
| start\_index<br /><br />integer<br /><br />Conditionally returned                       | Sort order index of the first resource in the returned array.<br /><br />This field is returned if there are resources in your returned array.<br /><br />**Allowable Values:**<br /><br />Any integer                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |

<h3 id="_sample_response_body_6">
  Sample response body
</h3>

```json JSON expandable lines wrap theme={null}
{
  "count": 2,
  "start_index": 0,
  "end_index": 1,
  "is_more": false,
  "data": [
    {
      "token": "1d208bf9-8439-4b35-9c43-6d5bc74995c7",
      "bank_transfer_token": "f8b8245f-fc36-49f3-9f9f-f63b159501b7",
      "status": "PENDING",
      "reason": "Created by `POST` call on API",
      "channel": "API",
      "created_time": "2024-03-22T18:01:00Z",
      "last_modified_time": "2024-03-22T18:01:00Z"
    },
    {
      "token": "55f5b1ac-39f6-484d-8284-116046a2efaa",
      "bank_transfer_token": "f8b8245f-fc36-49f3-9f9f-f63b159501b7",
      "status": "PROCESSING",
      "reason": "Created by `POST` call on API",
      "channel": "API",
      "created_time": "2024-03-22T18:01:17Z",
      "last_modified_time": "2024-03-22T18:01:17Z"
    }
  ]
}
```


## Related topics

- [ACH Origination](/docs/developer-guides/ach-origination.md)
- [2021 Release Notes](/docs/developer-guides/release-notes-2021.md)
- [2022 Release Notes](/docs/developer-guides/release-notes-2022.md)
- [Account Validation via Plaid](/docs/developer-guides/account-validation-via-plaid.md)
