EKEDOS LTD.

Compliance infrastructure

AML, KYC & fraud screening
as a simple API.

Ten production-grade endpoints, backed by real government sanctions data and Didit-powered identity verification. Integrate in minutes, bill per usage.

How it works

From sign-up to screening in 5 steps

1

Create your workspace

Sign up free — your organisation gets a 14-day trial on the Free plan. No card required.

2

Generate an API key

From your dashboard, create a live or test key. It is shown once and stored hashed — treat it like a password.

3

Integrate in minutes

Call any endpoint over HTTPS with your key in the X-API-Key header. JSON in, JSON out.

4

Screen & decide

Each call returns a risk score, match details and a clear decision: approve, review or reject.

5

Verify with Didit

For real identity assurance, kick off a Didit verification session — ID scan, liveness, face match — with results delivered by webhook.

One request. One answer.

Send a name (plus optional date of birth and country) and we screen it against real, government-sourced sanctions lists (OFAC, UN, EU, UK) using fuzzy name-matching that catches spelling and transliteration variants. You get back a match count, a 0–100 risk score, and the full evidence for every hit — ready to drive your onboarding decision or open a compliance case.

  • Sub-second responses with request tracing
  • Test keys for sandbox integration
  • Quota headers on every response
Read the full API reference →

# Request

curl https://api.yourdomain.com/api/v1/aml/screen \

-H "X-API-Key: amlk_..." \

-d '{"name":"Viktor Petrov","country":"RU"}'

# Response

{"success":true,"status":"potential_match",

"risk_score":96,"match_count":1,

"matches":[{"name":"Viktor Petrov","score":96,

"list_type":"sanction","source":"OFAC_SDN"}]}

The toolkit

Eleven compliance APIs, one key

Click any API to see what you send, what you get back, and when to use it.

1

Identity Verification

Fast local structural validation of identity attributes.

POST /api/v1/identity/verify

You send

first_name, last_name, date_of_birth, plus optional email, id_number and country.

You get back

A verified / review / rejected status with a 0-100 confidence score and the result of every individual check.

When to use it

Use as an instant first-pass filter before committing to a full Didit verification session.

2

Didit Verification Session

Real identity verification: ID document scan, liveness, face match.

POST /api/v1/identity/didit/sessions

You send

Either a customer_reference, or a name to create one. Optional callback_url.

You get back

A session_id and verification_url to redirect your end-user to. Results (ID scan, liveness, face match, and any AML/PEP checks your workflow includes) are delivered by webhook once they finish.

When to use it

Use for real, defensible identity assurance — not a local approximation. Powered by Didit.

3

KYC Verification

Full onboarding: local checks + AML screening + risk decision, with an optional Didit session.

POST /api/v1/kyc/verify

You send

first_name, last_name, date_of_birth, optional email, country, id_number, and request_didit_session to also start a real Didit session.

You get back

An approve / review / reject decision, the AML screening result, a risk score, and — if requested — a Didit verification_url alongside it.

When to use it

Use as your one-call onboarding endpoint that bridges fast local checks with real Didit-backed verification.

4

AML Screening

Sanctions, PEP and adverse-media in one call.

POST /api/v1/aml/screen

You send

name, plus optional date_of_birth, country, list_types, and persist_customer.

You get back

Status (clear / potential_match), 0-100 risk score, match count, and the full evidence for every hit against real OFAC/UN/EU/UK data.

When to use it

Use for periodic re-screening of your customer base.

5

PEP Screening

Politically exposed person detection.

POST /api/v1/pep/screen

You send

name, plus optional date_of_birth and country for corroboration.

You get back

An is_pep boolean, match details with the political role, similarity score and risk score.

When to use it

Use when regulation requires enhanced due diligence for public officials and their associates.

6

Sanctions Screening

OFAC, UN, EU and UK list matching — real, government-sourced data.

POST /api/v1/sanctions/screen

You send

name, plus optional date_of_birth and country.

You get back

Clear or potential_match status with every matching sanctions entry: source list, program, similarity % and derived risk level.

When to use it

Use before any payment, payout or onboarding where dealing with a sanctioned party would be a breach.

7

Transaction Monitoring

Structuring, velocity and high-risk geo rules.

POST /api/v1/transactions/monitor

You send

amount and currency, plus optional counterparty details and a customer_reference to build velocity history.

You get back

A pass / review recommendation with the exact rules triggered, plus a risk score.

When to use it

Wire into your payment flow to catch smurfing, unusual volumes and high-risk corridors in real time.

8

Fraud Detection

Heuristic signals with accept/review/decline.

POST /api/v1/fraud/assess

You send

Any of: email, ip_address, ip_country, billing_country, device_id, amount, recent_attempts.

You get back

A fraud score 0-100, the signals fired, and a decision: accept, review or decline.

When to use it

Use at checkout or signup to stop obvious fraud patterns before they cost you a chargeback.

9

Risk Scoring

Weighted, explainable customer risk scores.

POST /api/v1/risk/score

You send

Boolean/numeric factors: sanctions_hit, pep_hit, adverse_media, country, document_failed, identity_failed, flagged_transactions.

You get back

A 0-100 score, a low/medium/high/critical band, and the exact points contributed by each factor.

When to use it

Use to combine results from other endpoints into one number that drives your risk-based approach.

10

Document Verification

Fast local metadata checks — type, expiry, number present.

POST /api/v1/documents/verify

You send

type, document_number, country and expiry_date.

You get back

A verified / review / rejected status and an authenticity score based on structural checks.

When to use it

Use as a quick first-pass filter; for real OCR/tamper detection, use a Didit session with an ID-scan workflow step.

11

Continuous Monitoring

Ongoing re-screening with webhooks.

POST /api/v1/monitoring/enroll

You send

A customer_reference, optional monitored_types, a frequency (daily/weekly/monthly) and an optional webhook_url.

You get back

A subscription that automatically re-screens the customer on schedule. New matches fire a signed monitoring.match webhook.

When to use it

Use so a customer who was clean at onboarding does not stay unnoticed when they appear on a list next month.

Start screening in the next five minutes.

Free plan · 500 calls/month · no card required

Create your workspace →

© 2026 EKEDOS LTD. All rights reserved.