تجاوز إلى المحتوى الرئيسي
Didit تجمع 7.5 مليون دولار لبناء البنية التحتية للهوية والاحتيال
Didit
KYC قابل لإعادة الاستخدام · eIDAS 2 الأوروبي

تحقق مرة واحدة. أعد الاستخدام في أي مكان.

نفّذ KYC واحدًا بـ 0.33 دولار. يشارك المستخدم الذي تم التحقق منه تحقق Didit هذا مع أي تطبيق آخر يعمل بـ Didit، مع إفصاح انتقائي ومجانًا عند كل إعادة استخدام. خمس هويات eID وطنية متاحة اليوم، وقبول محفظة EUDI قريبًا.

مدعوم من
Y CombinatorRobinhood Ventures
Firecrawl
Slash
Crnogorski Telekom
UCSF Neuroscape
Bit2Me

موثوق به من قبل أكثر من 3,000 مؤسسة حول العالم.

ما تتيحه الهوية القابلة لإعادة الاستخدام

الهوية في جيب المستخدم. مجانًا لكل من يقبلها.

يمكن مشاركة كل عملية KYC من Didit كتحقق هوية قابل لإعادة الاستخدام وموقع مع تطبيقات أخرى مدعومة من Didit. تقرأ كل منصة مستلمة البيانات مجانًا. تحقق واحد، لكل عمل يقبل Didit. ابدأ مجانًا.

كيف يعمل

من التسجيل إلى المستخدم المتحقق منه في أربع خطوات.

الخطوة 01 / 04

أنشئ سير العمل

اختر الفحوصات التي تريدها, الهوية، التحقق من الحياة، مطابقة الوجه، العقوبات، العنوان، العمر، الهاتف، البريد الإلكتروني، الأسئلة المخصصة. اسحبها إلى تدفق في لوحة التحكم، أو انشر نفس التدفق إلى واجهة برمجة التطبيقات الخاصة بنا. تفرع بناءً على الشروط، قم بإجراء اختبارات A/B، لا يتطلب أي كود.

مصمم للهوية القابلة لإعادة الاستخدام · بسعر البنية التحتية

KYC واحد. كل منصة بعد ذلك، مجانًا.

الهوية الحقيقية القابلة لإعادة الاستخدام ليست ميزة واحدة, إنها نظام. إصدار، احتفاظ، تقديم، إفصاح انتقائي، تحديث، إلغاء. كل ذلك تحت جلسة /v3/ واحدة.
01 · تحقق مرة واحدة

KYC واحد. بيانات اعتماد واحدة صادرة.

في المرة الأولى، يُكمل المستخدم الحزمة القياسية بـ 0.33 دولار: وثيقة الهوية، والتحقق السلبي من الحيوية، ومطابقة الوجه، وتحليل الجهاز وعنوان IP. وعند الانتهاء، يوقّع Didit التحقق ليتمكن المستخدم من مشاركته مع تطبيقات أخرى تعمل بـ Didit.
وحدة التحقق من المستخدم
02 · إفصاح انتقائي

اكشف فقط ما يحتاجه المُتحقق.

أثبت أن عمرك يزيد عن 18 عامًا دون الكشف عن تاريخ ميلادك. أثبت بلدك دون الكشف عن عنوانك. يقرأ التطبيق المستلم فقط الحقول التي يطلبها، موقعة من Didit.
وحدة KYC القابلة لإعادة الاستخدام
03 · هويات eID الوطنية

خمس هويات eID وطنية، متاحة اليوم.

MitID وBankID السويد وFinnish Trust Network وSmart-ID وMobile-ID متاحة الآن في سير العمل نفسه. أما المستخدمون الذين لا يملكون eID فيتبعون مسار الوثيقة مع قراءة شريحة NFC والتحقق من الحيوية ومطابقة الوجه. وقبول محفظة EUDI قريبًا.
التحقق من الهوية الإلكترونية (eID)
04 · المُصدر · الحامل · المُتحقق

ثلاثة أدوار. بيانات اعتماد واحدة.

يُوقّع المُصدر بيانات الاعتماد بعد KYC. يحتفظ بها المستخدم في محفظته. يتحقق المُتحقق من توقيع المُصدر على الحقول المُفصح عنها فقط. مثلث الثقة القياسي لبيانات الاعتماد القابلة للتحقق.
الأمان والامتثال
05 · حداثة بيانات الاعتماد

حداثة بيانات الاعتماد، تلقائية.

تُعيد مكافحة غسل الأموال (AML) فحص المستخدم يوميًا. انتهاء صلاحية المستندات، تغيير الاسم، التعرض للعقوبات, كل ذلك يظهر تلقائيًا على بيانات الاعتماد. تُرفض بيانات الاعتماد القديمة وقت العرض.
وحدة فحص AML
06 · مجاني للاستلام

مجاني لكل منصة استقبال.

الإصدار مُضمّن مع كل KYC. تخزين المحفظة يكون على جهاز المستخدم. العرض، والإفصاح الانتقائي، والتحقق من التوقيع كلها مجانية، إلى الأبد. تحديث مستمر لمكافحة غسل الأموال (AML) بقيمة $0.07 لكل مستخدم سنويًا للحسابات ذات الحجم الكبير.
وحدة KYC القابلة لإعادة الاستخدام
ادمج

طلبان. تحقق واحد، مشترك.

شارك جلسة مكتملة من تطبيق Didit واستوردها في تطبيق آخر. يقرأ الطرف المستلم القرار الكامل دون أن يطلب من الشخص التحقق مرة أخرى.
POST /v3/session/{id}/share/مشاركة
curl -X POST https://verification.didit.me/v3/session/$SESSION_ID/share/ \
  -H "x-api-key: $DIDIT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "for_application_id": "<receiving-application-id>",
    "ttl_in_seconds": 3600
  }'
200OK{ "share_token": "eyJ…" }
يعمل مع جلسة مكتملة. التطبيق الذي تحدده فقط يمكنه استخدام الرمز.الوثائق ←
POST /v3/session/import-shared/استيراد
curl -X POST https://verification.didit.me/v3/session/import-shared/ \
  -H "x-api-key: $RECEIVING_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "share_token": "<share-token>",
    "trust_review": false,
    "workflow_id": "<receiving-workflow-uuid>",
    "vendor_data": "user-42"
  }'
201تم الإنشاء{ "shared_from_session": "…" }
يعيد القرار الكامل بمعرّف جلسة جديد. اضبط trust_review على false لإرسالها إلى In Review.الوثائق ←
تكامل جاهز للوكيل

أطلق تدفق هوية قابلة لإعادة الاستخدام بطلب واحد.

الصق في Claude Code، Cursor، Codex، Devin، Aider، أو Replit Agent. املأ بيانات حزمتك التقنية. يقوم الوكيل ببناء سير العمل والجلسة وطلبَي المشاركة والاستيراد والـ webhook الموقّع.
didit-integration-prompt.md
# Didit Reusable KYC: verify a person once, share the finished session with another application

You are adding Reusable KYC to my_stack. A person completes one identity
verification; the finished session is then shared with a second Didit
application, which imports the full decision without running the checks
again. Every URL, header and enum value below is canonical. Do not paraphrase
or "improve" them.

## 0. What exists, and what does not
- Reuse is server to server, between two Didit applications: the source
  application mints a share token for a finished session, the receiving
  application redeems it. Both sides use their own x-api-key.
- There is NO reusable_identity object on the webhook or the decision, NO
  metadata.request_fields or other selective-disclosure parameter, NO
  workflow setting that "accepts" a credential, and NO revocation event. Do
  not invent them. metadata on a session is free-form JSON that Didit echoes
  back, nothing more. The receiving application gets the whole decision.
- This is not an EU Digital Identity (EUDI) Wallet integration. Didit does
  not issue or accept EUDI Wallet credentials through these calls.

## 1. Provision
- Sign up: https://business.didit.me
- Source application: its API key. Receiving application: its API key and its
  application id (a UUID: shown in the console, and sent as application_id
  on every webhook that application receives). They are different
  applications; sharing a session with the application that owns it is
  refused.

## 2. Create the workflow for the first verification
POST https://verification.didit.me/v3/workflows/
  -H "x-api-key: <source-api-key>"
  -H "Content-Type: application/json"

{
  "workflow_label": "KYC onboarding",
  "features": [
    { "feature": "OCR" },
    { "feature": "LIVENESS" },
    { "feature": "FACE_MATCH" },
    { "feature": "IP_ANALYSIS" }
  ]
}

OCR is the ID Verification feature (uppercase, strict: ID_VERIFICATION is
rejected). Add { "feature": "AML" } for sanctions and PEP screening; it is
priced separately. Response: 201. The workflow id is uuid (workflow_id carries
the same value) and features comes back as one string, "OCR + LIVENESS + ...".
Create the workflow once and keep the id: every call makes a new one.
Prices: https://didit.me/pricing

## 3. Create a session
POST https://verification.didit.me/v3/session/
  -H "x-api-key: <source-api-key>"
  -H "Content-Type: application/json"
  -d '{ "workflow_id": "<uuid from step 2>", "vendor_data": "<your user id>" }'

Response: 201 with session_id, session_token, url and status "Not Started".
Redirect the user to url (hosted flow) or open it in the Web, iOS, Android,
React Native or Flutter SDK. The field is named url on this response.
One unfinished session exists per workflow_id and vendor_data pair: calling
create again with the same pair answers 201 again with that same session.
Optional: callback, a URL the user's browser is sent back to when the flow
ends. It is a browser redirect, not a webhook: never trust its query string.

## 4. Webhook
Register a destination in the console (API & Webhooks), or over the API:

POST https://verification.didit.me/v3/webhook/destinations/
  -H "x-api-key: <your-api-key>"
  -H "Content-Type: application/json"
  -d '{
    "label": "Verification webhooks",
    "url": "https://<your-public-host>/webhooks/didit",
    "webhook_version": "v3",
    "subscribed_events": ["status.updated", "data.updated"]
  }'

label, url and subscribed_events are required. url must be a public HTTPS
address: Didit does not deliver to localhost or private addresses. Response:
201 with uuid and secret_shared_key. Store secret_shared_key as the webhook
secret (DIDIT_WEBHOOK_SECRET); it is unique to this destination. Remove a
destination with DELETE /v3/webhook/destinations/{uuid}/ (204).

What arrives:
  - webhook_type is "status.updated" (the session changed status) or
    "data.updated" (verification data was corrected after the fact)
  - a destination receives the events of every session of the application,
    so filter on workflow_id or vendor_data when several flows share it
  - creating a session already sends status.updated with status
    "Not Started". The decision key is present only when status is Approved,
    Declined, In Review or Abandoned.

Verify every delivery:

  Header:      X-Signature-V2 (not X-Signature, not X-Signature-Simple)
  Algorithm:   HMAC-SHA256, hex digest, over the canonical JSON of the payload
               (Python json.dumps(sort_keys=True, separators=(",", ":"),
               ensure_ascii=False) after whole-valued floats become ints).
               Never hash the raw request bytes under this header: that is
               the older X-Signature.
  Freshness:   the signed body field timestamp is the dispatch time (Unix
               seconds). Reject when abs(now - timestamp) > 300 seconds, and
               reject when the X-Timestamp header does not equal it.
  Idempotency: event_id is the same on every retry of one event, so store it
               and skip a delivery you already processed. One session can
               still send the same status under two event ids, and the
               console's Try Webhook test deliveries carry no event_id, so
               also make the handler safe to run twice for one
               (session_id, status, webhook_type).
  Compare:     constant-time (crypto.timingSafeEqual)

Reference handler (Express). Keep the verification lines as written.
The handler is a fragment. Put this above it and app.listen(process.env.PORT)
below it. It needs Express and Node 21 or newer (an older Node rejects
every delivery). It expects a JSON body: answer 400 yourself if you accept
anything else on this route, and refuse to start without the secret.

const express = require("express");
const app = express();
const SECRET = process.env.DIDIT_WEBHOOK_SECRET; // secret_shared_key of the destination

// Your endpoint receives a signed payload
const crypto = require("node:crypto"); // ESM: import crypto from "node:crypto"
// X-Signature-V2 = HMAC over the canonical JSON, never the raw bytes. Match the sender byte for
// byte: keys sorted by code point, integers digit for digit, floats in Python's repr.
class Num { constructor(src) { this.src = src; } } // a number as written on the wire, not a double
const num = (s) => { if (/^-?\d+$/.test(s)) return BigInt(s).toString(); const n = +s; // ints stay exact
  if (Number.isInteger(n)) return BigInt(n).toString(); const [m, e] = n.toExponential().split("e"); // 27.0 -> 27
  return +e >= -4 ? String(n) : `${m}e-${String(-e).padStart(2, "0")}`; }; // 1e-05, not 0.00001
const byCodePoint = (a, b) => Buffer.compare(Buffer.from(a), Buffer.from(b)); // UTF-8 order = Python's
const canon = (v) => Array.isArray(v) ? `[${v.map(canon)}]` : v instanceof Num ? num(v.src)
  : v && typeof v === "object" ? `{${Object.keys(v).sort(byCodePoint).map((k) => `${JSON.stringify(k)}:${canon(v[k])}`)}}`
  : JSON.stringify(v);
// Read the body as text: express.json() would round 1000000000000000129 to a double first.
// Register this route ABOVE any global app.use(express.json()): the first parser to run
// consumes the stream, and a body it already parsed has lost the digits the signature covers.
app.post("/webhooks/didit", express.text({ type: "application/json" }), (req, res) => {
  const exact = JSON.parse(req.body, (k, v, c) => typeof v === "number" ? new Num(c.source) : v); // Node 21+
  const body = JSON.parse(req.body);
  const mac = crypto.createHmac("sha256", SECRET).update(canon(exact), "utf8").digest("hex");
  const sig = Buffer.from(String(req.headers["x-signature-v2"] ?? ""));
  // Freshness comes from the signed body timestamp; the header alone is unsigned and replayable.
  const ts = body.timestamp, fresh = String(ts) === req.headers["x-timestamp"]
    && Math.abs(Date.now() / 1000 - ts) <= 300;
  if (!fresh || sig.length !== mac.length
    || !crypto.timingSafeEqual(sig, Buffer.from(mac))) return res.sendStatus(401);
  const { session_id, status, webhook_type, vendor_data, decision } = body;
  // decision is present on Approved, Declined, In Review and Abandoned.
  res.sendStatus(200);
});

Status values (exact strings): Not Started, In Progress, Approved, Declined,
In Review, Resubmitted, Expired, Abandoned, Kyc Expired. Awaiting User only
appears on business verification sessions.

## 5. Read the decision
The same V3 decision reaches you two ways:
  - webhook body: body.decision.id_verifications[]
  - GET https://verification.didit.me/v3/session/{session_id}/decision/
      -H "x-api-key: <your-api-key>"
    This response IS the decision object. Read id_verifications at the top
    level: there is no decision wrapper here.
Until the user finishes the ID step, status is "Not Started" or "In Progress"
and id_verifications is null, not an empty array. Guard for it.
The other feature results sit next to it as plural arrays: liveness_checks[],
face_matches[], ip_analyses[], aml_screenings[]. shared_from_session is null
on a session the person completed here.

## 6. Share the finished session (source application)
Only a session whose status is Approved, Declined or In Review can be shared.

POST https://verification.didit.me/v3/session/{session_id}/share/
  -H "x-api-key: <source-api-key>"
  -H "Content-Type: application/json"
  -d '{ "for_application_id": "<receiving application id>", "ttl_in_seconds": 3600 }'

Response: 200 with share_token, for_application_id and session_kind ("user").
ttl_in_seconds: 60 to 86400, default 3600. Each call mints a new token; a
token cannot be revoked, it only expires. Send it to the receiving
application's backend, never to a browser.

## 7. Import it (receiving application)
POST https://verification.didit.me/v3/session/import-shared/
  -H "x-api-key: <receiving-api-key>"
  -H "Content-Type: application/json"
  -d '{
    "share_token": "<share_token from step 6>",
    "trust_review": false,
    "workflow_id": "<a workflow id of the receiving application>",
    "vendor_data": "<user id on the receiving side>"
  }'

share_token, trust_review and workflow_id are required. trust_review true
keeps the source status (Approved stays Approved); false puts the imported
session In Review so the receiving team decides. Response: 201 with the same
decision shape as step 5, a new session_id, and shared_from_session pointing
at the source session.

## 8. Errors to handle
The message is under detail for some errors and under the field name
(for_application_id, share_token) for others: read both.
  - share, 400: "Cannot share a session with the same application."
  - share, 400: "Target application does not exist."
  - share, 400: "Only finished sessions ("Approved", "Declined", "In Review")
    can be shared."
  - import, 400 on share_token: "Invalid share token.", "Share token has
    expired.", "This token is not valid for this application."
  - import, 400: share_token, trust_review or workflow_id missing
  - import, 403: "This session has already been shared with your
    application." Mint a new token.
  - import, 404: "Workflow does not exist for this application."

## 9. Hard rules
  - base URL for v3 endpoints: verification.didit.me
  - auth header: x-api-key, one key per application
  - feature enum: OCR, LIVENESS, FACE_MATCH, IP_ANALYSIS, AML (uppercase)
  - result path: decision.id_verifications[] in the webhook body and
    id_verifications[] on the GET decision response
  - webhook: X-Signature-V2 plus X-Timestamp, canonical JSON, freshness from
    the signed body timestamp

## 10. Verify your integration
Sandbox (an application in sandbox mode: nothing is billed).
https://docs.didit.me/integration/sandbox-testing
  - create the workflow, create a session, and read its decision: expect 201,
    201 with url, and 200 with status "Not Started"
  - to get a finished session without a person, call
    POST https://verification.didit.me/v3/session/{session_id}/simulate/ with
    your x-api-key and { "new_status": "Approved" }. It sets the status and
    sends the webhook; the feature arrays stay null.
  - share that session. With no second application yet, send a random UUID
    as for_application_id and expect the 400 "Target application does not
    exist.": that proves the call is wired. A full share and import needs
    the second application's id and API key; do not fake that step.
  - assert the webhook accepts a correctly signed payload and rejects a wrong
    X-Signature-V2, a changed body, and a payload whose signed timestamp is
    older than 300 seconds, even when X-Timestamp is refreshed

Docs:
  - https://docs.didit.me/core-technology/reusable-kyc/overview
  - https://docs.didit.me/sessions-api/create-session
  - https://docs.didit.me/sessions-api/retrieve-session
  - https://docs.didit.me/integration/webhooks
هل تحتاج إلى المزيد من السياق؟ اطلع على وثائق الوحدة الكاملة.docs.didit.me ←
متوافق حسب التصميم

افتح دولة جديدة بنقرة واحدة. نحن نقوم بالعمل الشاق.

نحن نفتح الشركات التابعة المحلية، ونؤمن التراخيص، ونجري اختبارات الاختراق، ونحصل على الشهادات، ونتوافق مع كل لائحة جديدة. لنشر عمليات التحقق في بلد جديد، ما عليك سوى تفعيل مفتاح. أكثر من 220 دولة تعمل، يتم تدقيقها واختبار اختراقها كل ربع سنة, المزود الوحيد للهوية الذي وصفته حكومة دولة عضو في الاتحاد الأوروبي رسميًا بأنه أكثر أمانًا من التحقق الشخصي.
اقرأ ملف الأمن والامتثال
SOC 2 · Type II — AICPA · 2026
SOC 2 · Type I — AICPA · 2026
ISO/IEC 27001 — أمن المعلومات · 2026
بيئة اختبار مالية للاتحاد الأوروبي — Tesoro · SEPBLAC · BdE
FIDO Alliance — عضو منتسب · 2026
iBeta Level 1 PAD — NIST / NIAP · 2026
GDPR — EU 2016/679
HIPAA — 45 CFR §160 · §164
DORA — EU 2022/2554
MiCA — EU 2023/1114
إرشادات EBA للتسجيل عن بُعد — EBA/GL/2022/15
AMLD6 · eIDAS 2.0 — متوافق مع الاتحاد الأوروبي حسب التصميم
Jugendschutz geprüft — FSM · JMStV §4(2) · 2026

أرقام الإثبات

أرقام الإثبات
  • $0.33
    لكل عملية تحقق أولى, وهي المرة الوحيدة التي يدفع فيها المستخدم مقابل حزمة Didit KYC.
  • Free
    على كل منصة استقبال. كل إعادة استخدام، كل تقديم، كل إفصاح انتقائي.
  • 27
    الدول الأعضاء في الاتحاد الأوروبي. يجب على كل دولة توفير محفظة EUDI بحلول 24 ديسمبر 2026، وقبول Didit لمحفظة EUDI قريبًا.
  • 5
    الهويات الإلكترونية الوطنية المتاحة اليوم: MitID، BankID Sweden، Finnish Trust Network، Smart-ID و Mobile-ID.
ثلاث مستويات، قائمة أسعار واحدة

ابدأ مجانًا. ادفع حسب الاستخدام. وتوسع لخطط المؤسسات.

500 عملية تحقق مجانية كل شهر، مدى الحياة. ثم ادفع فقط عند تشغيل الوحدة. عقود مخصصة، إقامة البيانات، واتفاقيات مستوى الخدمة (SLAs) لخطط المؤسسات.

مجاني

$0/ شهر · بدون بطاقة

للبناء والاختبار، وللمستخدمين الأوائل.

كل ما تحتاجه للبدء:
  • 500 عملية تحقق KYC كاملة شهريًا
  • التحقق من الهوية، التحقق من الحيوية، مطابقة الوجه، الجهاز وعنوان IP
  • أكثر من 200 إشارة احتيال، قائمة حظر، كشف التكرارات
  • إعادة استخدام KYC عبر شبكة Didit
  • منشئ سير العمل، إدارة الحالات، SDKs
  • دعم بالذكاء الاصطناعي وكيل ذكاء اصطناعي داخل لوحة التحكم، وثائق، ومجتمع.
الأكثر شيوعًا

ادفع حسب الاستخدام

$0.33لكل KYC كامل

أكثر من 25 وحدة، بأسعار معلنة للجميع. خصومات تلقائية على الكميات.

كل ما هو متاح في مجاني، بالإضافة إلى:
  • فحص ومراقبة مكافحة غسل الأموال (AML) بدءًا من 0.07 دولار
  • تسعير سجل الأعمال حسب البلد ومستوى البيانات
  • مراقبة المعاملات بسعر $0.02 لكل معاملة
  • فحص المحافظ بسعر $0.15 لكل عملية فحص
  • تدفق ذو علامة بيضاء تحت علامتك التجارية الخاصة
  • دعم بالذكاء الاصطناعي وكيل ذكاء اصطناعي داخل لوحة التحكم، وثائق، ومجتمع.

المؤسسات

حسب الطلبعقد سنوي

للحجوم الكبيرة والبرامج المنظمة.

كل ما هو متاح في ادفع حسب الاستخدام، بالإضافة إلى:
  • عقود سنوية، تسعير حسب حجم الالتزام
  • شروط قانونية مخصصة واتفاقية مستوى خدمة (SLA) بنسبة 99.99% لوقت التشغيل
  • إقامة البيانات، الاحتفاظ بها، ومراجعة الأمان
  • مراجعون يدويون عند الطلب
  • شروط إعادة البيع والعلامة البيضاء (White-label)
  • دعم بشري ذو أولوية قناة Slack مشتركة متاحة 24/7، ومدير نجاح مخصص.

تُطبق خصومات الحجم تلقائيًا مع زيادة الاستخدام — لا تفاوض، ولا مكالمات مبيعات.

FAQ

أسئلة شائعة

ما هي Didit؟

Didit هي بنية تحتية للهوية والاحتيال، المنصة التي تمنينا وجودها عندما كنا نبني منتجاتنا بأنفسنا: مفتوحة، مرنة، وصديقة للمطورين، لتعمل كجزء حقيقي من حزمة التقنية الخاصة بك بدلاً من صندوق أسود تدمجه حوله.

تغطي واجهة برمجة تطبيقات واحدة التحقق من الأشخاص (KYC، اعرف عميلك)، والتحقق من الشركات (KYB، اعرف عملك)، وفحص محافظ العملات المشفرة (KYT، اعرف معاملتك)، ومراقبة المعاملات في الوقت الفعلي، على بنية مصممة لتكون:

  • سريعة، أقل من ثانيتين p99 في كل جلسة
  • موثوقة، قيد الإنتاج مع أكثر من 3000 شركة عبر أكثر من 220 دولة
  • آمنة، SOC 2 Type 1 & Type 2، ISO 27001، متوافقة مع GDPR، ومعتمدة رسميًا من قبل المنظم المالي الإسباني بأنها أكثر أمانًا من التحقق من الهوية شخصيًا

البصمة الأساسية: أكثر من 14,000 نوع مستند بـ أكثر من 48 لغة، أكثر من 1,000 مصدر بيانات، وأكثر من 200 إشارة احتيال في كل جلسة. تتعلم بنية Didit التحتية ديناميكيًا من كل جلسة وتتحسن يومًا بعد يوم.

ما هو eIDAS 2.0، بعبارات بسيطة؟

eIDAS 2.0, اختصار لـ electronic IDentification, Authentication and trust Services, هو تحديث الاتحاد الأوروبي لعام 2024 لدليل قواعد الهوية الخاص به. التغيير الرئيسي هو محفظة الهوية الرقمية الأوروبية (غالبًا ما تختصر إلى EUDI Wallet): تطبيق هاتف ذكي يحق لكل مواطن ومقيم في الاتحاد الأوروبي الحصول عليه بحلول نهاية عام 2026.

تحتوي المحفظة على بيانات اعتماد قابلة للتحقق, رخصة قيادة رقمية، شهادة هوية موثقة، شهادة أكاديمية, صادرة عن أطراف موثوقة وتقدم إلى الأطراف المعتمدة بإثبات تشفيري، اختياريًا مع إفصاح انتقائي (إثبات أنك فوق 18 عامًا دون الكشف عن تاريخ ميلادك الكامل).

بالنسبة للشركات، يتعلق eIDAS 2.0 بكل من قبول بيانات الاعتماد المقدمة من المحفظة وإصدار بيانات الاعتماد التي يحملها المستخدمون.

من يجب عليه قبول محفظة EUDI، ومتى؟

ما تنص عليه اللائحة (الاتحاد الأوروبي) 2024/1183 (eIDAS 2):

  • يجب على الدول الأعضاء أن تقدم كل منها محفظة هوية رقمية أوروبية واحدة على الأقل (EUDI Wallet) بحلول 24 ديسمبر 2026.
  • يجب على الأطراف الخاصة المعتمدة التي يُطلب منها قانونًا أو تعاقديًا استخدام مصادقة قوية للمستخدم للتعرف عبر الإنترنت قبول محفظة EUDI بناءً على طلب المستخدم بحلول 24 ديسمبر 2027 (المادة 5f(2)). الشركات الصغيرة والمتناهية الصغر معفاة.
  • يجب على المنصات الكبيرة جدًا عبر الإنترنت التي تتطلب مصادقة المستخدم أيضًا قبول محفظة EUDI بناءً على طلب المستخدم الطوعي (المادة 5f(3)). لا يحدد النص تاريخًا منفصلاً لهذا الواجب.

يمكن للشركات الأخرى قبول المحفظة طوعًا. قبول Didit لمحفظة EUDI قادم قريبًا: اقرأ ما تحتاجه الشركة لقبول محفظة EUDI.

ما مدى سرعة التحقق للمستخدم النهائي؟

تستغرق العملية الكاملة عادةً أقل من 30 ثانية من البداية إلى النهاية, التقاط الهوية، تصوير المستند، التقاط صورة السيلفي، انتهى. هذه هي الأسرع في السوق. عادةً ما يستغرق مزودو KYC التقليديون أكثر من 90 ثانية لنفس العملية.

في الواجهة الخلفية، تعيد Didit النتيجة في أقل من ثانيتين عند p99، ويتم قياس ذلك من لحظة انتهاء المستخدم من السيلفي إلى لحظة إطلاق الويب هوك الخاص بك. تم ضبط التقاط الهاتف المحمول للهواتف البطيئة والشبكات البطيئة: ضغط تدريجي للصور، تحميل بطيء لحزمة تطوير البرامج (SDK)، وتسليم بنقرة واحدة من سطح المكتب إلى الهاتف عبر رمز QR إذا بدأ المستخدم على الويب.

كيف تختلف الهوية القابلة لإعادة الاستخدام عن تسجيل الدخول الموحد (Sign in with Apple, Google)؟

تسجيل الدخول الموحد (Federated login) يثبت وجود حساب لدى مزود الهوية, تحصل الشركة المستفيدة على عنوان بريد إلكتروني وربما اسم. هذه ليست هوية ذات مستوى تنظيمي.

الهوية القابلة لإعادة الاستخدام تتضمن:

  • تحقق بمستوى الوثائق الحكومية (جواز سفر، بطاقة هوية وطنية ممسوحة ضوئيًا ومعالجة بتقنية OCR)
  • ربط بيومتري بالشخص الذي يقدم الوثيقة (صورة سيلفي مطابقة لصورة الوثيقة)
  • فحص حيوية يكشف عن التزييف العميق، الأقنعة، وهجمات إعادة التشغيل
  • حالة مكافحة غسل الأموال (AML) مفحوصة ضد قوائم العقوبات، الأشخاص المعرضين سياسياً (PEP)، وقوائم وسائل الإعلام السلبية
  • إفادة موقعة من مزود منظم، مختومة بالوقت، مع مسار تحقق

يحصل المدقق على نفس الراحة التنظيمية التي يحصل عليها من إجراء KYC الخاص به, دون التكلفة، الاحتكاك، وانخفاض التحويل.

ماذا يحدث إذا فشل المستخدم أو تخلى عن العملية أو انتهت صلاحيتها؟

تصل كل جلسة إلى إحدى الحالات السبع الواضحة، بحيث يعرف الكود الخاص بك دائمًا ما يجب فعله:

  • Approved, اجتاز جميع الفحوصات. انقل المستخدم إلى الخطوة التالية.
  • Declined, فشل فحص واحد أو أكثر. يمكنك السماح للمستخدم بإعادة إرسال الخطوة الفاشلة المحددة (على سبيل المثال، إعادة التقاط صورة السيلفي) دون إعادة تشغيل التدفق بأكمله.
  • In Review, تم وضع علامة للمراجعة من قبل الامتثال. افتح الحالة في لوحة التحكم، واطلع على كل الإشارات، ثم قرر الموافقة أو الرفض.
  • In Progress, المستخدم في منتصف التدفق.
  • Not Started, تم إرسال الرابط، ولم يفتحه المستخدم بعد. أرسل تذكيرًا إذا طال انتظاره.
  • Abandoned, فتح المستخدم الرابط لكنه لم ينهِ في الوقت المحدد. أعد التفاعل أو قم بإنهاء الصلاحية.
  • Expired, انتهت صلاحية رابط الجلسة. أنشئ جلسة جديدة.

يتم إطلاق webhook موقّع عند كل تغيير في الحالة، بحيث تظل قاعدة بياناتك متزامنة دائمًا. الجلسات المهجورة والمرفوضة مجانية.

أين يتم تخزين بيانات عملائي وكيف يتم حمايتها؟

تتم معالجة بيانات الإنتاج وتخزينها في الاتحاد الأوروبي افتراضيًا، على خدمات Amazon Web Services. يمكن لعقود الشركات طلب مناطق بديلة للولايات القضائية التي تتطلبها جهات التنظيم.

التشفير في كل مكان. AES-256 في وضع السكون عبر كل قاعدة بيانات، ومخزن كائنات، ونسخة احتياطية. Transport Layer Security 1.3 أثناء النقل في كل استدعاء API، و webhook، وجلسة Business Console. يتم تشفير البيانات البيومترية بمفتاح رئيسي منفصل للعميل.

الاحتفاظ تحت سيطرتك. الاحتفاظ الافتراضي هو غير محدود (بلا حدود) ما لم تقم بتكوين مدة أقصر، تتراوح بين 30 يومًا و 10 سنوات لكل تطبيق، ويمكنك حذف أي جلسة فردية في أي وقت من لوحة التحكم أو واجهة برمجة التطبيقات.

الشهادات: SOC 2 Type 1 & Type 2، ISO/IEC 27001:2022، iBeta Level 1 PAD، وشهادة عامة من Tesoro / SEPBLAC / CNMV الإسبانية بأن التحقق من الهوية عن بعد من Didit أكثر أمانًا من التحقق من الهوية شخصيًا. التقرير الكامل متاح على /security-compliance.

هل Didit متوافق مع متطلبات قطاعي؟

تتوافق Didit افتراضيًا مع متطلبات الجهات التنظيمية المهمة للبنية التحتية للهوية:

  • GDPR + UK GDPR، الفصل بين المتحكم في البيانات ومعالج البيانات، اتفاقية معالجة البيانات الكاملة منشورة، وتحديد السلطة الإشرافية الرئيسية (AEPD الإسبانية).
  • AMLD6 + EU AML Single Rulebook، فحص أكثر من 1,300 قائمة للعقوبات والأشخاص المعرضين سياسيًا والإعلام السلبي في الوقت الفعلي.
  • eIDAS 2.0، خمس هويات eID وطنية متاحة اليوم (MitID وBankID السويد وFinnish Trust Network وSmart-ID وMobile-ID)؛ وقبول محفظة EUDI قريبًا.
  • MiCA (Markets in Crypto-Assets)، جاهز لمنصات تحويل الأموال إلى عملات مشفرة (on-ramps) ومنصات التداول وأمناء الحفظ.
  • DORA، Digital Operational Resilience Act، المرونة التشغيلية للخدمات المالية في الاتحاد الأوروبي.
  • BIPA, CUBI, Washington HB 1493, CCPA / CPRA، خصوصية البيانات البيومترية في الولايات المتحدة (إلينوي، تكساس، واشنطن) وخصوصية المستهلك في كاليفورنيا.
  • UK Online Safety Act، التزامات التحقق من العمر وسلامة الأطفال.
  • FATF Travel Rule، بيانات المُنشئ والمستفيد في تحويلات العملات المشفرة، متوافق مع IVMS-101.

مذكرة مفصلة، كل شهادة، كل خطاب من الجهات التنظيمية: /security-compliance.

ما مدى سرعة دمج النظام والبدء في التحقق من المستخدمين؟
  • 60 ثانية للحصول على حساب تجريبي في business.didit.me, بدون بطاقة ائتمان.
  • 5 دقائق للحصول على تحقق فعال عبر Claude Code، Cursor، أو أي وكيل برمجة عبر بروتوكول سياق النموذج (MCP) الخاص بنا.
  • عطلة نهاية أسبوع لدمج جاهز للإنتاج مع التحقق من webhook الموقّع، وإعادة المحاولات، وتدفق معالجة عندما يتم رفض المستخدم.

ثلاثة مسارات دمج, اختر ما يناسب نظامك:

  • الدمج الأصلي باستخدام SDK الخاص بنا للويب، iOS، Android، React Native، أو Flutter.
  • إعادة توجيه المستخدم إلى صفحة التحقق المستضافة, بدون SDK.
  • إرسال رابط عبر البريد الإلكتروني، الرسائل القصيرة، واتساب، أو أي قناة, بدون عمل على الواجهة الأمامية.

نفس لوحة التحكم، نفس الفواتير، نفس سعر الدفع مقابل النجاح لجميع الخيارات الثلاثة. دليل خطوة بخطوة على docs.didit.me/integration/integration-prompt.

كيف هي قصة الخصوصية بموجب GDPR؟

الهوية القابلة لإعادة الاستخدام هي ترقية للخصوصية على نظام KYC القديم:

  • الإفصاح الانتقائي مدمج, يرى المدقق فقط الحقول المطلوبة، وليس الوثيقة الأساسية
  • لا يوجد سجل مركزي, تعيش بيانات الاعتماد في محفظة المستخدم، وليس في سجل مملوك لـ Didit يوضح من قدم ماذا لمن
  • الموافقة لكل عرض, يوافق المستخدم على كل إفصاح بشكل صريح
  • التخزين في الاتحاد الأوروبي, تبقى حزمة الأدلة من جانب المصدر في مراكز بيانات الاتحاد الأوروبي؛ المحفظة نفسها موجودة على جهاز المستخدم
  • الحق في النسيان, عندما يلغي المستخدم بيانات اعتماد، يجب على المنصة المستلمة حذفها من سجلاتها بموجب GDPR؛ API الإلغاء لكل منصة من Didit يجعل هذا استدعاءً واحدًا

الأساس القانوني للمعالجة من جانب الاستلام هو المصلحة المشروعة بموجب GDPR, قدم المستخدم بيانات اعتماد صراحة للوصول إلى الخدمة. تغطي اتفاقية معالجة البيانات (DPA) القياسية من Didit العلاقة بين المتحكمين المشتركين.

ماذا لو قام المستخدم بتغيير وثيقة هويته أو انتقل إلى بلد آخر؟

ثلاثة أنواع من المحفزات:

  • تجديد الوثيقة (انتهاء صلاحية جواز السفر، إصدار بطاقة هوية وطنية جديدة) ← يعيد المستخدم تشغيل تحديث خفيف؛ يتم إعادة إصدار التحقق ببصمة الوثيقة الجديدة
  • تغيير جوهري في الهوية (اسم قانوني جديد، تغيير علامة الجنس، تغيير بلد الإقامة) ← إعادة تحقق كاملة بتكلفة 0.33 دولار؛ يتم إلغاء الاعتماد القديم وإصدار اعتماد جديد
  • تغيير حالة مكافحة غسل الأموال (AML) (يصبح المستخدم الذي كان نظيفًا سابقًا شخصًا معرضًا سياسيًا (PEP) أو يدرج في قائمة العقوبات) ← تقوم مراقبة Didit المستمرة بالإبلاغ عن التغيير تلقائيًا، ويتم تحديث حقل AML للاعتماد، وترى كل منصة مستلمة الحالة المحدثة عند العرض التالي

لا تضطر المنصة المستلمة أبدًا إلى مطاردة المستخدم للحصول على التحديثات، يحمل الاعتماد إشارة حداثته الخاصة، ويتم رفض الاعتمادات القديمة وقت العرض.

ما هي الأدلة التي تراها الجهة التنظيمية للتحقق المعاد استخدامه؟

يحصل المدقق (المنصة المستلمة) على نفس حزمة الأدلة لكل عرض التي حصل عليها المدقق الأصلي، بالإضافة إلى سلسلة الإصدار:

  • أدلة KYC الأصلية, مسح الوثيقة، التشابه البيومتري، نتائج AML، إشارات مخاطر الجهاز و IP، طوابع زمنية موقّعة
  • سلسلة الإصدار, أي منصة مدعومة من Didit أصدرت بيانات الاعتماد، متى، وعلى أي سير عمل
  • سجل العرض, متى قدم هذا المستخدم بياناته إلى منصتك، ما هي الحقول التي كشف عنها، حكم المدقق الخاص بك
  • حالة AML الحالية, يتم تحديثها يوميًا بواسطة المراقبة المستمرة من Didit
  • توقيع HMAC SHA-256 على كل حقل، بحيث يمكن إثبات سلسلة الحضانة

Didit هي المنصة الوحيدة لـ KYC التي لديها إفادة حكومية رسمية من دولة عضو في الاتحاد الأوروبي, شهدت وزارة الخزانة الإسبانية، وبنك إسبانيا، و SEPBLAC بشكل مشترك أن الخدمة أكثر أمانًا من التحقق الشخصي. تمتد هذه الإفادة إلى كل عرض معاد استخدامه.

بنية تحتية للهوية والاحتيال.

واجهة برمجية واحدة لـ KYC و KYB ومراقبة المعاملات وفحص المحافظ. ادمجها في 5 دقائق.

اطلب من الذكاء الاصطناعي تلخيص هذه الصفحة