---
title: "Validate a credit card number"
method: POST
path: "/validate-card"
tags: ["Validation"]
---

# Validate a credit card number

`POST /validate-card`

## Request

- Base URL: `https://api.cofferdock.com`
- URL: `https://api.cofferdock.com/validate-card`
- Auth: API key in header `x-api-key`

Checks the Luhn checksum and detects the network (Visa, Mastercard, Amex, Discover, Diners, JCB). An invalid card is still a successful call (valid=false). The number is never stored or logged.

Costs 1 credit per call.

## Request body

- object
  - `number` string, required: The card number to check, as a string. Spaces and hyphens are ignored. A valid number has 12 to 19 digits (up to 40 characters accepted).

## Response `200`

Result.

- object
  - `success` boolean
  - `valid` boolean
  - `network` string, nullable
  - `length` integer
  - `meta` object
    - `used` integer: Credits used this month, after this call.
    - `remaining` integer, nullable: Credits left this month (null = unlimited).
    - `unlimited` boolean

## Other responses

- `400`: Invalid input (nothing is charged).
- `401`: Missing or invalid API key.
- `403`: Email not verified.
- `429`: Monthly credit limit reached, or too many requests per minute for this key (see Retry-After).
- `503`: Server busy (queue full). Retry after the seconds in the Retry-After header.

---

[API](https://skmtc.dev/cofferdock/apis/cofferdock-api.md) · [All operations](https://skmtc.dev/cofferdock/apis/cofferdock-api/llms.txt) · [OpenAPI document](https://skmtc.dev/cofferdock/apis/cofferdock-api/revisions/b57aa000d33a?raw)
