●  Riv.IA — AI visual verification

See beyond the image.
Confirm who is real.

A single API detects liveness, matches faces and exposes image fraud — screen photos, printed photos or deepfakes — in seconds, with an explainable verdict.

Read the docs
  • Seconds to respond
  • Multimodal AI
  • Deterministic anti-spoofing
  • API first
POST /eye/v1/verify200 OK
{
  "approved": true,
  "liveness": { "resultado": true, "confidence": 0.93 },
  "face_match": { "same_person": true, "confidence": 0.97 },
  "authenticity": {
    "is_authentic": true,
    "is_screen_photo": false,
    "is_ai_generated": false
  },
  "reasons": ["Live human face, no screen artifacts."]
}
01 — The problem

A photo doesn't prove who's on the other side.

Identity fraud relies on photos of photos, deepfakes, screen selfies and tampered documents. Traditional verification throws false positives — glare mistaken for a screen — and lets the real threats through. The cost: fraud, chargebacks and stalled onboarding.

02 — Capabilities

6 checks. 1 call.

Combine the checks your flow needs — they run in parallel, on the same image, under the same contract.

liveness

Liveness

Confirm it's a live human, not a photo.

Tells a real selfie from a spoofing attempt. Returns a verdict with readable reasons — no black box.

face_match

Face Matching

Same person? With a confidence score.

Biometric match between two images, 0–1 score and structural details (eyes, nose, contour).

authenticity

Authenticity / Anti-Spoofing

Real, screen photo, printed or AI-generated.

Works on any image — person OR object. Detects deepfakes and synthetic media.

element_detection

Element Detection

Is what should be in the image actually there?

Validates the presence and position of expected objects: face, document, label, QR code, packaging.

qr_code

QR Code Reading

Reads the code, even when the QR fails.

Extracts the QR code content and, when it is missing or unreadable, the AI reads the printed code in the image. With format validation and anti-spoofing.

Coming soondocument_extraction

Document Reading

RG and CNH become structured data.

Detects whether the image is a document and, for a Brazilian RG or CNH — physical or digital —, extracts name, CPF, dates and parentage with per-field confidence. Unreadable fields come back empty, never invented.

03 — Decision engine

A deterministic decision, not a model's hunch.

The anti-spoofing verdict is based on objective structural signals — moiré, pixel grid, device bezel, paper texture — not on the model's subjective impression.

Reflections, glare and specular highlights — common on real glossy surfaces (plastic, nylon, glasses, skin) — never flag an image as fraud on their own. A screen photo requires at least 2 structural artifacts above the threshold.

The result: fewer false positives, more legitimate approvals.

authenticity — responsespoof
{
  "is_authentic": false,
  "is_screen_photo": true,
  "confidence": 0.91,
  "signals": [
    "moire_detectado",
    "grade_de_pixels_visivel",
    "borda_de_monitor"
  ],
  "reasons": [
    "Moiré pattern typical of a screen capture.",
    "Pixel geometry aligned with the display grid."
  ],
  // reflections/glare ignored — not proof of fraud
}
04 — Use cases

Wherever fraud tries to get in, EYE gets there first.

Onboarding & KYC

Account opening at fintechs and banks without unnecessary friction.

Payment Fraud Prevention

Chargeback prevention and automated review of suspicious transactions.

Marketplaces & Gig Economy

Verification of couriers, service providers and new sellers.

Logistics & Proof of Delivery

Validate an authentic photo of the product, label or QR code — not a 'photo of a photo'.

HR & Remote Hiring

Candidate identity verification in fully digital processes.

Insurance & Remote Service

Image-based claims and inspections you can trust.

05 — Why Riv.IA EYE

Built for teams that decide based on facts.

Truly multimodal

01

State-of-the-art vision AI, with no models of your own to train or maintain.

6 checks, 1 API

02

Liveness, biometrics, anti-spoofing, element detection, QR code reading and document reading under the same contract.

Explainable verdict

03

Every response includes readable reasons and a confidence score — no black box.

Tunable

04

Per-environment thresholds that match your risk appetite.

Ready to scale

05

Versioned API, caching, observability and high performance under load.

Integrate in minutes

06

REST + JSON, with examples in cURL, Python and JavaScript.

Response latency
Seconds
Capabilities per call
6 in 1
Explainable verdict
JSON
Versioned and observable
API-first
06 — Integration

Simple to integrate. Hard to ignore.

request.curl
# Full verification in a single call
curl -X POST https://api.riv.ia.br/eye/v1/verify \
  -H "Authorization: Bearer $RIVIA_KEY" \
  -F "selfie=@selfie.jpg" \
  -F "document=@rg.jpg" \
  -F "checks=liveness,face_match,authenticity"
response.json
200 OKapproved
{
  "is_human_live": true,
  "face_match": { "score": 0.97, "same_person": true },
  "is_authentic": true,
  "is_screen_photo": false,
  "confidence": 0.94,
  "signals": ["sem_moire", "textura_natural"],
  "reasons": ["Live human face, no screen artifacts."]
}
Read the docs
07 — FAQ

Everything you need to know before integrating.

Start seeing what's real.

Request a proposal and test Riv.IA EYE in your verification flow — sandbox in minutes.

or email us directly: contato@riviadev.com.br