Проверьте чек банка — настоящий или подделка

Загрузите PDF-чек Т-Банка, ЮMoney или Ozon Банка. Сервис разберёт документ по структуре, шрифтам, метаданным и реквизитам и вынесет вердикт.

📄 PDF до 10 МБ 🏦 Т-Банк · ЮMoney · Ozon Банк 🔒 HTTPS + API-ключ
📄
Перетащите PDF-чек сюда или нажмите для выбора
Настоящий чек, скриншот, отсканированный или «нарисованный» — сервис сам разберётся

Как это работает

Сервис не «смотрит глазами» — он сверяет документ с эталонным профилем банка по десятку признаков.

1

Разбор PDF

Извлекается текстовый слой, метаданные, шрифты, встроенные изображения и QR-коды. Чек определяется: Т-Банк, ЮMoney или Ozon Банк.

2

Сверка с профилем банка

Проверяются производитель PDF, фирменные шрифты, размер страницы, обязательные реквизиты и формат идентификатора СБП. Дополнительно — векторная вёрстка (не скан) и дата/сумма операции.

3

Вердикт

Каждая проверка получает оценку, из них складывается общий балл: «Подлинный», «Поддельный» или «Неопределённо» — с уровнем уверенности и списком причин.

Важно понимать ограничения: анализ документа сам по себе не даёт 100% гарантии — идеальная подделка реального чека с изменённой суммой может не отличаться на уровне файла. Для «железного» подтверждения сверяйте чек с данными операции в приложении банка или по номеру СБП. Сервис надёжно ловит типовые подделки: скриншоты, сканы, перепечатки в Word/Canva и несоответствия шаблону банка.

API для вашего приложения

Отправляйте PDF-чек из своего приложения и получайте вердикт в JSON. Базовый URL: https://check-pdf.bliznec-go.ru

POST /api/v1/verify
ПараметрГдеОписание
filemultipart/form-dataPDF-файл чека (до 10 МБ)
bankformНеобязательно: auto (по умолчанию), tbank, yoomoney, ozon
X-API-KeyзаголовокAPI-ключ (обязательно)
GET /api/v1/banks
ПараметрГдеОписание
X-API-KeyзаголовокНе обязателен — список банков публичный

Примеры запросов

# curl
curl -X POST https://check-pdf.bliznec-go.ru/api/v1/verify \
  -H "X-API-Key: " \
  -F "file=@/path/to/check.pdf" \
  -F "bank=auto"
# Python (requests)
import requests

resp = requests.post(
    "https://check-pdf.bliznec-go.ru/api/v1/verify",
    headers={"X-API-Key": "ВАШ_КЛЮЧ"},
    files={"file": open("check.pdf", "rb")},
    data={"bank": "auto"},
)
result = resp.json()
print(result["verdict"], result["confidence"])
# JavaScript (fetch)
const form = new FormData();
form.append("file", pdfFile);          // File из input
form.append("bank", "auto");

const resp = await fetch("https://check-pdf.bliznec-go.ru/api/v1/verify", {
  method: "POST",
  headers: { "X-API-Key": "ВАШ_КЛЮЧ" },
  body: form,
});
const result = await resp.json();
console.log(result.verdict, result.confidence);

Ответ

{
  "verification_id": "3f2a…",
  "checked_at": "2026-08-30T22:40:00+00:00",
  "requested_bank": "auto",
  "bank": "tbank",
  "bank_name": "Т-Банк",
  "verdict": "genuine",          // genuine | fake | inconclusive
  "confidence": 0.96,
  "score": 0.958,
  "extracted": {
    "amount": "2 400.00 ₽", "date": "2026-08-23",
    "operation_id": "A6235192905746150G10040011831501",
    "recipient": "Ксения Викторовна П", "sender": "Агнеса Гамлетовна Б.",
    "wallet": null, "status": null
  },
  "checks": [
    { "id": "text_layer", "label": "Текстовый слой", "status": "ok", "detail": "…" }
  ],
  "notice": null
}

Коды ошибок

HTTPЗначение
401Неверный или отсутствующий API-ключ
400Файл не является PDF или неизвестный банк в параметре bank
413Файл больше 10 МБ

Тестовый ключ

Этот ключ использует веб-морда на этой странице. Используйте его же для отладки интеграции из своего приложения.

X-API-Key (тестовый)
загрузка…
Для боевого использования ключ можно сменить в .env на сервере (переменные WEB_KEY и API_KEYS).

Поддерживаемые банки

Профили построены на реальных образцах чеков. Новые банки добавляются расширением профилей.