Skip to content
Last updated

По умолчанию через API виден только maskedPan (4466 ** ** 1234). Полный номер, CVC и срок доступны только через отдельный reveal-endpoint.

Endpoint

GET /cards/:id/sensitive

Доступно только для карт в статусе assigned. Для retired / failed / requested — возвращает 404.

Пример

curl 'https://b2b.lumowallet.io/cards/8c7f1823-.../sensitive' \
  -H 'X-API-Key: YOUR_API_KEY'

Ответ

{
  "cardId": "8c7f1823-...",
  "cardNumberFull": "4466123412341234",
  "cardCvv": "123",
  "expiry": "03/29"
}

Как работает

  • Каждый запрос идёт напрямую к эквайеру без кэша на стороне Lumo. У нас в БД хранится только maskedPan.
  • Факт вызова логируется на сервере: company=<id> revealed sensitive data for card <id>.
  • Никаких rate-limit'ов сверх общих (но злоупотребление — повод для блокировки).

UX-рекомендация

Не держите полный номер в UI дольше, чем нужно. Наш личный кабинет b2b-app.lumowallet.io показывает PAN + CVC в течение 30 секунд и автоматически скрывает. Рекомендуем повторить это в вашем интерфейсе.

Тестовый режим

Если у компании cardsTestMode = true, endpoint возвращает статичный тестовый набор, не обращаясь к эквайеру:

{
  "cardId": "...",
  "cardNumberFull": "4111111111111111",
  "cardCvv": "123",
  "expiry": "12/29"
}