---
agentTools:
  projectIndex: https://docs.bond.tech/llms.txt
---

# Funding a security deposit account

How you can deposit funds into your security deposit account.

You can deposit funds to a security deposit account either via an ACH transfer or via a direct deposit.

> 📘 Note
>
> To be able to make purchases on a secured charge card you need to fund the security deposit account. This can be done before or after the card is issued. Until there are funds in the secured deposit account, the credit limit on the card is zero.

## Funding via an ACH transfer

When funding a security deposit account using ACH, the first step is to link an external bank account. Linking an external account can be done either via [Bond's SDK](https://docs.bond.tech/docs/external-accounts-sdk) or via [Bond's APIs](https://docs.bond.tech/docs/linking-external-account-without-card-account) directly.

> 📘 Underwriting via external bank accounts
>
> After linking the account, you can use the [Get external account history](https://docs.bond.tech/reference/get_transactions) endpoint to view recent transactions on the external account. This information can also be used to make an underwriting assessment as to whether or not you would like to offer your user a card.

Funding a security deposit account through ACH can be done through the [Create transfer](https://docs.bond.tech/reference/post-transfer) endpoint. Note that to initiate an ACH transfer, an external account must already be linked to the customer. After an external account has been linked, there is a `linked_account_id` that identifies the linked account. For our purposes, we'll assume that the `linked_account_id` is `f64eadeb-5398-46f7-b1a1-9a0a709039a9`.

The following is an example of an ACH transfer request for Eline.

```curl ACH transfer request
curl --request POST \
     --url https://api.bond.tech/api/v0.1/transfers \
     --header 'Accept: application/json' \
     --header 'Authorization: <YOUR_AUTHORIZATION>' \
     --header 'Content-Type: application/json' \
     --header 'Identity: <YOUR_IDENTITY>' \
     --data '
{
     "ach": {
          "class_code": "WEB",
          "same_day": false
     },
     "origination_account_id": "f64eadeb-5398-46f7-b1a1-9a0a709039a9",
     "destination_account_id": "173121d8-f05e-4bb6-b280-b5b761d2214f",
     "amount": 25000,
     "description": "eline funding"
}
'
```

Note that we supplied the `linked_account_id` as the `origination_account_id` and the `security_deposit_account_id` as the `destination_account_id` because we want the funds to flow from the linked account to the security deposit account.

The following is an example of a successful response to create an ACH transfer.

```json
{
  "date_created": "2022-05-16T17:14:09.686688",
  "date_updated": "2022-05-16T17:14:09.686688",
  "date_settled": null,
  "transfer_id": "4ead6cdc-77eb-45fa-9959-3f166385a60a",
  "transaction_id": "0fec1e58-b197-4052-99cf-2218496c5482",
  "origination_account_id": "f64eadeb-5398-46f7-b1a1-9a0a709039a9",
  "destination_account_id": "173121d8-f05e-4bb6-b280-b5b761d2214f",
  "description": "eline funding",
  "amount": "25000",
  "ach": {
    "ach_class_code": "WEB",
    "same_day": false,
    "ach_return_code": "R73",
    "failure_reason": null
  }
}
```

Note that ACH timelines typically include time both for transactions to be processed and to be considered settled before the funds are made available.

For more information, see <a href="doc:ach-transfers" target="_blank">ACH transfers</a>.

## Funding via a direct deposit

Information on the security deposit account can be retrieved using the <a href="ref:get-accounts-by-id" target="_blank">Get account</a> endpoint.

The following is an example of a direct deposit request.

```curl Security deposit account information retrieval
curl --request GET \
     --url https://api.bond.tech/api/v0.1/accounts/173121d8-f05e-4bb6-b280-b5b761d2214f \
     --header 'Accept: application/json' \
     --header 'Authorization: <YOUR_AUTHORIZATION>' \
     --header 'Identity: <YOUR_IDENTITY>'
```

The following is an example of a successful response to a security deposit account information request.

```json
{
  "account_id": "173121d8-f05e-4bb6-b280-b5b761d2214f",
  "date_updated": "2022-05-16T19:39:34Z",
  "date_created": "2022-05-16T19:39:34Z",
  "program_id": "<YOUR_PROGRAM_ID>",
  "customer_id": "3a43b612-825c-48d4-b025-47083ab10755",
  "type": "security_deposit",
  "status": "active",
  "description": "string",
  "routing_number": 547897762,
  "account_number": 574771265,
  "balance": {
    "current_balance": 25600,
    "ledger_balance": 21300,
    "currency": "USD"
  },
  "security_deposit": {
    "credit_account": "e913d434-bda9-494e-b6df-adf46a52c1cc"
  }
}
```

We use the `routing_number` value `547897762` and `account_number` value `574771265` to receive ACH transfers originating from other financial institutions, such as from payroll via a direct deposit.

> 🚧 Sandbox limitations
>
> Note that in the sandbox, the `routing_number` and `account_number` values are not real and will not be accessible via direct deposit.

Note again, that ACH timelines typically include time both for transactions to be processed and to be considered settled before the funds are made available.

For more information, see <a href="doc:ach-transfers" target="_blank">ACH transfers</a>.