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

# Check Deposit

> Remote Deposit Capture (RDC) allows banks and their customers to deposit checks electronically by capturing images of the checks and submitting them through a mobile device or scanner. Treasury Prime’s RDC API streamlines this process, enabling seamless integration of RDC functionality into your banking or financial application.

To make a check deposit, you need to capture the front and back images of the check and submit them along with the necessary deposit information using the `POST /check_deposits` endpoint. The API will process the deposit, update the associated account, and return the status of the deposit.

### Required Fields

* **Account ID:** The unique identifier for the account where the check will be deposited.
* **Device:** Information on the device that captured the images
* **Check Front Image:** The image file of the front of the check.
* **Check Back Image:** The image file of the back of the check.
* **Amount:** The amount of the check deposit, with two decimal precision.
* **Person ID:** ID of the Person making the deposit.

### Example Request

<CodeGroup>
  ```bash bash theme={null}
  POST /check_deposits
  {
    "device": {
      "os_name": "android"
    },
    "account_id": "acct_1234567890",
    "amount": "100.00",
    "back_image_file_id": "file_0987654321",
    "front_image_file_id": "file_1234567890",
    "person_id": "psn_1234567890"
  }
  ```
</CodeGroup>

### Example Response

<CodeGroup>
  ```bash bash theme={null}
  {
    "account_id": "acct_1234567890",
    "amount": "100.00",
    "amount_discrepancy_detected": false,
    "back_image_file_id": "file_0987654321",
    "created_at": "2017-11-02T11:55:14Z",
    "decision_data": {},
    "decisioned": false,
    "device": {
      "os_name": "ios",
      "os_version": "12"
    },
    "error": null,
    "front_image_file_id": "file_1234567890",
    "id": "chk_1029384756",
    "ocr_account_number": "1234567890",
    "ocr_amount": "100.00",
    "ocr_check_number": "5250",
    "ocr_routing_number": "021001208",
    "org_id": "org_1gwmpv3payf",
    "person_id": "owner_1234567890",
    "rdc_provider_full": {},
    "review_information": [],
    "risk_rating": "Accept",
    "risk_rating_description": "Risk rating assessment by RDC provider",
    "status": "submitted",
    "updated_at": "2017-11-02T11:56:31Z",
    "userdata": null
  }
  ```
</CodeGroup>

## Deposit Status Tracking

After submitting a check deposit, you can track its status using the `GET /check_deposits/{deposit_id}` endpoint. This endpoint returns details about the deposit, including whether it has been processed, is still pending, or has been rejected.

### Status Codes

* **Pending Review** Check has been initiated successfully through the TP API and is pending the response from CheckAlt

* **Submitted** Check has been submitted successfully through CheckAlt to be grouped onto the X9 file to the bank

* **Sent** We keep all checks in `submitted` status and at the 5 business day mark, AM EST, check will be set to `Sent`

* **Error** Check has either failed immediately from TP’s end or has been Rejected by CheckAlt

  * Common Errors

    * **Invalid Image Quality:** The image does not meet the required resolution or clarity.
    * **Duplicate Check:** The same check has already been submitted and processed.
    * **Invalid Account:** The account ID provided does not exist or is incorrect.

* **Returned** Check has been returned by the Fed

* **canceled\_ocr** Check has been cancelled

* **Declined** Check could not be processed for collection by the bank
  * **NOTE:** This status is only available at certain bank\*

## FAQ

**Q: What image formats are supported for check deposits?** A: The API supports JPEG and PNG formats for both the front and back images of checks.

**Q: How long does it take for a check deposit to be processed?** A: The processing time can vary depending on the bank’s internal procedures, but the API provides real-time status updates to keep you informed.

**Q: What happens if a check image is rejected?** A: The API will provide an error message detailing why the image was rejected and suggest corrective actions.
