## Find card

Find a card by its ID or token. Either card_id or token must be provided.

The card_id can be either the internal UID (starting with 'crd_') or your own external ID.

The token can be either the token UID (starting with 'tkn_') or the raw card number associated with the token.

This endpoint returns both active and soft-deleted cards from the merchant's directory.

## Endpoint signature

```http
POST https://api.reservepay.com/merchants/find-card HTTP/1.1
Content-Type: application/json
Accept: application/json
Authorization: Bearer <token>

{
  card_id: string?,
  token: string?,
}
```

Returns: object

## Request arguments

### `card_id` (string)

_Optional_. The card ID (either internal UID starting with 'crd_' or your external ID) to find. Either card_id or token must be provided.

### `token` (string)

_Optional_. The card token to look up. Either card_id or token must be provided. Returns the card associated with this token.

## Response attributes

### `card_id` (string)

**Always present**. The ID of the card.

### `first_digits` (string)

**Always present**. The first 6 digits of the card number.

### `last_digits` (string)

**Always present**. The last 4 digits of the card number.

### `length` (number)

**Always present**. The length of the card number.

### `expiration_date` (string)

**Always present**. The expiration date of the card (MM/YY format).

### `cardholder_name` (string)

**Always present**. The name of the cardholder.

### `scheme` (string)

**Always present**. The card scheme (e.g., VISA, MASTERCARD).

### `created_at` (number)

**Always present**. The Unix timestamp (seconds since epoch) when the card was created.

### `deleted_at` (number)

_Nullable_. The Unix timestamp (seconds since epoch) when the card was deleted.

### `deletable` (boolean)

**Always present**. Whether the card can be deleted. A card is deletable if it is not the default card, or if it is the default card but it is the only card for the contact.

## Errors specific to this endpoint

### `NOT_FOUND`

No card found with the provided card_id or token in this merchant's directory.
The card may not exist or may not belong to the merchant's directory.

## 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.
