## Set primary bank account for a contact

Set an existing bank account as the primary bank account for a contact. The bank account must already be associated with the contact.

If the contact already has a primary bank account set up, using this endpoint will:

- Replace the existing primary bank account with the specified one

The endpoint returns `true` when the primary bank account is successfully set.

## Endpoint signature

```http
POST https://api.reservepay.com/merchants/set-primary-contact-bank-account HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <token>

{
  contact_id: string,
  bank_account_id: string,
}
```

Returns: boolean

## Request arguments

### `contact_id` (string)

**Required**. The contact ID (either internal UID or external ID) to set the bank account for.

### `bank_account_id` (string)

**Required**. The bank account ID (either internal UID starting with 'bka_' or your external ID) to set as the primary bank account. The bank account must already belong to the contact.

## Errors specific to this endpoint

### `NOT_FOUND`

No contact found with the provided contact_id, or the bank account with the provided bank_account_id does not exist or does not belong to the contact.

## Errors common to all endpoints

### `UNHANDLED_ERROR`

This error occurs when the server encounters an unexpected internal error that
it cannot handle gracefully. This typically happens due to bugs, infrastructure
issues, or edge cases that weren't anticipated during development.

### `INVALID_ARGUMENTS`

This error occurs when the request contains invalid or missing parameters.
Common cases include missing required fields, or values that don't match the
expected format or type.

### `BAD_VERSION`

This error occurs when making requests to an API version that does not exist.
This commonly happens when using an outdated SDK or when the API version
specified in the request URL is incorrect.
