> This page is for Consumer.

> For clean Markdown of any page, append .md to the page URL.
> For a complete documentation index, see https://citi-demo.ferndocs.com/consumer/llms.txt.
> For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://citi-demo.ferndocs.com/consumer/_mcp/server.

# Mobile Check Deposit

### Overview

The Mobile Check Deposit API lets customers deposit paper checks without visiting a branch or ATM. Your app captures images of the front and back of the check, submits them with the deposit details, and receives real-time validation and funds-availability information.

---

### Deposit a check

#### Authenticate

Obtain an access token with the `payments:write` scope. See the [Authentication guide](/consumer/api-docs/get-started/authentication).

#### Capture the check

Guide the customer to photograph the front and back. Ensure the check is endorsed "For mobile deposit only."

#### Submit the deposit

Send the images, the deposit amount, and the destination `accountRef`.

#### Confirm availability

Return the hold details so the customer knows when funds will be available.

```json
{
  "toAccountRef": "acct_884201",
  "amount": { "value": 250.00, "currency": "USD" },
  "frontImage": "base64…",
  "backImage": "base64…"
}
```

```json
{
  "depositId": "dep_66f1",
  "status": "ACCEPTED",
  "availableOn": "2026-04-25",
  "heldAmount": 25.00
}
```

> **Info**
>
> A portion of larger deposits may be held for a short period. Surface `availableOn` and `heldAmount` so the customer knows exactly when their funds will clear.

---

### Deposit status

| Status     | Meaning                                            |
| ---------- | -------------------------------------------------- |
| `ACCEPTED` | Images passed validation; deposit is processing    |
| `REVIEW`   | Deposit flagged for manual review                  |
| `REJECTED` | Images failed validation (e.g. blurry or unsigned) |
| `POSTED`   | Funds credited to the account                      |

> **Warning**
>
> Ask customers to keep the paper check until the deposit shows `POSTED` and funds are confirmed available, in case re-submission is needed.

---

### Security requirements

Requests require an OAuth 2.0 access token with the `payments:write` scope. See the [Authentication guide](/consumer/api-docs/get-started/authentication).