> ## 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.

# Create direct deposit transition

> Create a direct deposit transition.

POST/directdeposits/transitions

Create a direct deposit transition. Sending a `POST` request to this endpoint will initiate sending a Direct Deposit Transition webhook. For more information, see [Direct Deposit Transition Events](https://www.marqeta.com/docs/core-api/event-types.md#_direct_deposit_transition_events) on the [Event Types](https://www.marqeta.com/docs/core-api/event-types.md) page.

## Request body

| Fields | Description |
| - | - |
| channel string  Required | Mechanism by which the transaction was initiated. **Allowable Values:**  `API`, `SYSTEM`, `PROD_SUPPORT` |
| direct\_deposit\_token string  Required | Unique identifier of the direct deposit record. **Allowable Values:**  36 char max |
| reason string  Required | Explanation of why the direct deposit transition record was created. **Allowable Values:**  255 char max |
| reason\_code string  Optional | A standard code describing the reason for the transition. **NOTE:** The reason code is optional when transitioning a direct deposit to the `APPLIED` state. It is required for the `REVERSED` state. **Allowable Values:**  `R01`, `R02`, `R03`, `R04`, `R06`, `R07`, `R08`, `R09`, `R10`, `R11`, `R14`, `R15`, `R16`, `R17`, `R18`, `R20`, `R23`, `R24`, `R29`  See [ACHR return reason codes](https://www.marqeta.com/docs/developer-guides/achr-return-reason-codes.md#_reason_codes_table) for the full list of supported codes and the grace period associated with each. |
| state string  Required | The states for which to return transition records. To list transition records for more than one state, create a comma-delimited list. **Allowable Values:**  `APPLIED`, `REVERSED` |
| token string  Optional | Unique identifier of this direct deposit transition. If you do not include a token, the system generates one automatically. This token is used in other API calls, so rather than let the system generate a string, enter a string that you can remember. This value cannot be updated. **Allowable Values:**  36 char max |

## Response body

| Fields | Description |
| - | - |
| channel string  Conditionally returned | Mechanism by which the transaction was initiated. **Allowable Values:**  `API`, `SYSTEM`, `PROD_SUPPORT` |
| token string  Conditionally returned | Unique identifier of the direct deposit transition record. **Allowable Values:**  36 char max |
| reason string  Conditionally returned | Explanation of why the direct deposit record is in the current state. **Allowable Values:**  255 char max |
| type string  Conditionally returned | Whether funds are being debited from or credited to the account. **Allowable Values:**  `CREDIT`, `DEBIT` |
| direct\_deposit\_token string  Conditionally returned | Unique identifier of the direct deposit record. **Allowable Values:**  36 char max |
| transaction\_token string  Conditionally returned | Unique identifier of the transaction record. **Allowable Values:**  36 char max |
| state string  Conditionally returned | Current status of the direct deposit record. **Allowable Values:**  `PENDING`, `APPLIED`, `REVERSED`, `REJECTED` |
| created\_time datetime  Conditionally returned | Date and time when the direct deposit record was created. **Allowable Values:**  string **Format:** yyyy-mm-ddThh:mm:ssZ |
| direct\_deposit\_account\_token string  Conditionally returned | Unique identifier of the direct deposit account record. **Allowable Values:**  36 char max |
| last\_modified\_time datetime  Conditionally returned | Date and time when the resource was last updated. **Allowable Values:**  string **Format:** yyyy-mm-ddThh:mm:ssZ |
| amount decimal  Conditionally returned | Amount being debited or credited. **Allowable Values:**  number **Format:** 0.00 |
| settlement\_date datetime  Conditionally returned | Date when the credit or debit is applied. **Allowable Values:**  datetime **Format:** yyyy-mm-ddThh:mm:ssZ |
| reason\_code string  Conditionally returned | Standardized code describing the reason for the current state. **Allowable Values:**  See [ACHR return reason codes](https://www.marqeta.com/docs/developer-guides/achr-return-reason-codes.md#_reason_codes_table) for the full list of supported codes and the grace period associated with each. |
| user\_token string  Conditionally returned | Unique identifier of the user associated with the direct deposit record **Allowable Values:**  Existing user token |
| business\_token string  Conditionally returned | Unique identifier of the business associated with the direct deposit record. **Allowable Values:**  Existing business token |
| standard\_entry\_class\_code string  Conditionally returned | Three-letter code identifying the type of entry. **Allowable Values:**  `ACK`, `ADV`, `ARC`, `ATX`, `BOC`, `CCD`, `CIE`, `COR`, `CTX`, `DNE`, `ENR`, `IAT`, `MTE`, `POP`, `POS`, `PPD`, `RCK`, `SHR`, `TEL`, `TRC`, `TRX`, `WEB`, `XCK` |
| company\_name string  Conditionally returned | Name of the direct deposit originator. **Allowable Values:**  16 char max |
| company\_discretionary\_data string  Conditionally returned | Company-specific data provided by the direct deposit originator. **Allowable Values:**  20 char max |
| company\_identification string  Conditionally returned | Alphanumeric code that identifies the direct deposit originator. **Allowable Values:**  10 char max |
| company\_entry\_description string  Conditionally returned | Description of the purpose of the direct deposit. **Allowable Values:**  10 char max |
| individual\_identification\_number string  Conditionally returned | Accounting number by which the recipient is known to the direct deposit originator. **Allowable Values:**  15 or 22 char max, depending on the value of `standard_entry_class_code` |
| individual\_name string  Conditionally returned | Identity of the direct deposit recipient. **Allowable Values:**  22 char max |
| trace\_number string  Conditionally returned | 15-digit number used to track inbound and outbound ACH transfers. **Allowable Values:**  15 char max |
| early\_direct\_deposit string  Conditionally returned | Boolean value that indicates whether this is a qualifying early pay transaction. If the early pay feature is not enabled for this program, this value will always be `false`. **Allowable Values:**  `true`, `false` |
| originator\_status\_code string  Conditionally returned | Numeric value that identifies the originator of the direct deposit record: - **1**: Originator is not a US federal government entity. - **2**: Originator is a US federal government entity, such as the IRS. **Allowable Values:**  1, 2 |


## Related topics

- [Direct Deposit Transitions Overview](https://www.marqeta.com/docs/core-api/ach-receiving/direct-deposit-transitions.md)
- [ACH Receiving Overview](https://www.marqeta.com/docs/core-api/ach-receiving.md)
- [ACHR Return Reason Codes](https://www.marqeta.com/docs/developer-guides/achr-return-reason-codes.md)
- [Errors](https://www.marqeta.com/docs/core-api/errors.md)
- [Retrieve direct deposit transition](https://www.marqeta.com/docs/core-api/ach-receiving/direct-deposit-transitions/retrieve-direct-deposit-transition-ach-receiving.md)
