# Lockboxes

### Check Lockboxes

Check lockboxes give an account number a dedicated mailing address for receiving paper checks. After you create a lockbox, send the returned address to payers so they can mail checks directly to that location.

Use the [Create a check lockbox API](/api/check-transfer/create-a-check-lockbox) with either a `bank_account_id` or an `account_number_id`. When a `bank_account_id` is provided, Column links the lockbox to the bank account's default account number. If a bank account has multiple account numbers, you can create a separate lockbox for each account number that should receive mailed checks. Each account number can have at most one linked lockbox.

You can optionally provide a `processing_center` of `CA`, `NY`, or `TX`; when omitted, Column uses `TX`. You can also provide a short `description` for internal reconciliation.

### Processing Mailed Checks

When a check arrives at a lockbox, Column scans the mail, extracts check details, and deposits the check into the linked account number. The resulting deposit is represented as a [Check Transfer object](/api/check-transfer/check-transfer-object), so you can reconcile it with the same check transfer APIs and statuses used for other check deposits.

If check details or images require manual review, processing may pause until Column resolves the review. Once the deposit is created, standard check deposit events such as `check.outgoing_debit.initiated`, `check.outgoing_debit.deposited`, `check.outgoing_debit.settled`, and `check.outgoing_debit.returned` track the deposit lifecycle.

### Webhook Events

Column emits [Check Lockbox Events](/working-with-the-api/events-and-webhooks#check-lockbox-events) when a lockbox is created or closed. The `data` object for those events is the [Check Lockbox object](/api/check-transfer/check-lockbox-object).

Lockbox check deposits emit standard [Check Transfer Events](/working-with-the-api/events-and-webhooks#check-transfer-events) after the deposited check transfer is created.
