メインコンテンツにスキップ
Diditが200万ドルを調達し、Y Combinator (W26)に参加
Didit
暗号資産オンランプ

購入者を検証します。ウォレットをスクリーニングします。1つのワークフローで。

Diditの1つのワークフローで、暗号資産が送金される前に購入者の本人確認と宛先ウォレットを処理します。毎月500件の無料認証。

支援元
Y Combinator
GBTC Finance
Bondex
Crnogorski Telekom
UCSF Neuroscape
Shiply
Adelantos

世界中の2,000以上の組織から信頼されています。

映画のような暗い抽象的なオンランプスタックのイラスト — 純粋な黒の上に3Dパースペクティブで浮かぶ4つの半透明のガラスパネルが、光るDidit Blueの線で結ばれ、4つの光るスキャナーブラケットで囲まれています。各パネルには、小さな淡い白色の抽象的なモチーフ(IDの楕円、ウォレットの六角形、取引の矢印、モニターの時計)が描かれています。

オンランプが負うもの

購入者を知る。ウォレットを知る。資金が移動する前に。

規制されたすべてのオンランプは、購入ごとに両方の要素を負います — 買い手に対するKYCと、 宛先ウォレットに対するKYTです。Diditはこれらを1つのワークフローとして提供します。 $0.33 KYC + $0.17 取引(管理されたウォレット画面を含む)= 購入あたり$0.50です。 ウォレットプロバイダーにBYOKを適用すると、$0.37に下がります。毎月500回の検証が無料です。

仕組み

サインアップから認証済みユーザーまで4ステップ。

  1. ステップ 01

    ワークフローを作成する

    ID、生体認証、顔照合、制裁、住所、年齢、電話番号、メールアドレス、カスタム質問など、必要なチェックを選択します。ダッシュボードでフローにドラッグするか、同じフローを当社のAPIに投稿します。条件に基づいて分岐させたり、A/Bテストを実行したりできます。コードは不要です。

  2. ステップ 02

    統合する

    当社のWeb、iOS、Android、React Native、またはFlutter SDKを使用してネイティブに埋め込みます。ホストされたページにリダイレクトします。または、メール、SMS、WhatsAppなど、どこでもユーザーにリンクを送信するだけです。スタックに合ったものを選んでください。

  3. ステップ 03

    ユーザーがフローを通過する

    Diditは、カメラ、照明キュー、モバイルハンドオフ、アクセシビリティをホストします。ユーザーがフロー中に、200以上の不正信号をリアルタイムでスコアリングし、すべてのフィールドを信頼できるデータソースと照合して検証します。2秒以内に結果が出ます。

  4. ステップ 04

    結果を受け取る

    リアルタイムの署名付きWebhookにより、ユーザーが承認、拒否、またはレビューに送られた瞬間にデータベースが同期されます。必要に応じてAPIをポーリングします。または、コンソールを開いてすべてのセッション、すべての信号を検査し、ケースを独自の方法で管理します。

オンランプ向けに構築 · インフラストラクチャのような価格設定

6つのチェック。2つのAPI呼び出し。購入ごとに$0.50

規制されたオンランプ購入は単一のチェックではなく、レシピです。ワークフローごとに各モジュールを切り替え、BYOKを介して独自のウォレット画面プロバイダーを組み込むことで、購入あたり$0.37にまで下げることができます。
01 · 買い手KYCバンドル

5つのチェック、1回の呼び出し。

ID、生体認証、顔照合、デバイス+IP、AML — 買い手あたり$0.33でバンドル。iBetaレベル1のアンチスプーフィング認証済み、2秒未満の判定、220以上の国で14,000以上のドキュメントをサポート。
ユーザー認証モジュール
02 · ウォレットスクリーニング (KYT)

暗号通貨が移動する前に宛先を評価します。

制裁対象ウォレット、ミキサー、取引所高リスク、盗難資金を捕捉します。管理されたチェックあたり$0.15、または独自のプロバイダーキーを使用する場合はチェックあたり$0.02。EVM、Bitcoin、TRON、Solana、主要なL2をサポート。
ウォレットスクリーニングモジュール
03 · AMLスクリーニング

1,300以上のリストに対してすべての購入者をスクリーニングします。

制裁、政治的要人 (PEP)、ネガティブメディア — 毎日更新、14言語対応。ヒットがあった場合は自動的にケースが開き、クリアランス前に購入をゲートします。
AMLスクリーニングモジュール
04 · トラベルルール (TFR)

すべての転送における発信者 + 受益者。

IVMS-101ペイロードはTRP、Sumsub Travel Rule、Notabene、Veriscopeを介して交換されます。EU TFRの下では€1,000のデミニミスはなく、すべての送金には発信者と受益者のデータが含まれます。
暗号資産トラベルルール概要
05 · 取引制限

購入者のリスクに応じて変動する制限。

ワークフローごとにリアルタイムの速度、金額、チェーン、地理的しきい値。構造化パターンを自動的に捕捉します。コード不要のワークフロービルダーでルールを編集し、再デプロイは不要です。
トランザクション監視モジュール
06 · オフランプカバレッジ

オンランプとオフランプ。1つのワークフロー。

同じ/v3/セッションで出金を処理します。売り手のKYC、ソースウォレットのKYT、買い手のAML、トラベルルールパケットの提出。片方向と両方向で1つの契約、1つの請求書、1つの監査パック。
暗号業界のワークフロー
統合する

1つのセッション。1つの事前チェック。1つのWebhook。

KYCセッションを開きます。宛先ウォレットを事前チェックします。署名された判定を読み取ります。暗号資産をリリースします。
POST /v3/session/KYC
$ curl -X POST https://verification.didit.me/v3/session/ \
  -H "x-api-key: $DIDIT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "workflow_id": "wf_onramp_kyc",
    "vendor_data": "buyer-42",
    "metadata": { "destination_wallet": "0x2dc1...81f9" }
  }'
201作成済み{ "session_url": "verify.didit.me/..." }
署名されたWebhookがstatus: Approvedと示すまで購入をブロックします。ドキュメント →
POST /v3/transactions/KYT
$ curl -X POST https://verification.didit.me/v3/transactions/ \
  -H "x-api-key: $DIDIT_API_KEY" \
  -d '{
    "transaction_id": "buy-42",
    "transaction_details": { "direction": "OUTBOUND", "currency_kind": "crypto" },
    "subject": { "vendor_data": "buyer-42", "full_name": "Jamie Example" },
    "counterparty": { "full_name": "Destination wallet", "payment_method": { "account_id": "0x2dc1...81f9" }}
  }'
201作成済みステータス 承認済み · レビュー中 · 拒否済み · ユーザー待ち
currency_kind: "crypto"の場合、ウォレットスクリーニングはサーバー側で実行されます。2回目の呼び出しはありません。ドキュメント →
エージェント対応統合

1つのプロンプトでオンランプKYC + KYTフローを実装。

Claude Code、Cursor、Codex、Devin、Aider、またはReplit Agentに貼り付けます。スタックを入力してください。エージェントがワークフローを構築し、ウォレット画面での購入をゲートし、継続的な監視を登録し、ウェブフックを接続します。
didit-integration-prompt.md
You are integrating Didit into a fiat-to-crypto on-ramp. Two obligations on every buy:

  1. Verify the buyer (KYC) — identity, liveness, face match, device + IP, AML against 1,300+ sanctions / PEP / adverse-media lists. ONE call to the Sessions API.
  2. Screen the destination wallet (KYT) — risk-score the address against sanctioned wallets, mixers, high-risk counterparties BEFORE the crypto leaves. ONE call to the Transactions API with currency_kind: "crypto".

Bundle pricing (verified live against POST /v3/transactions/, 2026-05-16):
  - KYC bundle: $0.33 per buyer (Sessions API)
  - Transactions API call: $0.02 base (transaction-monitoring) + $0.15 wallet screening (Didit's default managed provider) = $0.17 per buy
  - Total managed: $0.33 + $0.17 = $0.50 per fully-screened buy
  - Total with BYOK on the wallet provider: $0.33 + $0.04 = $0.37 per buy
  - First 500 KYC verifications free every month, forever

PRE-REQUISITES
  - Production API key from https://business.didit.me (sandbox key in 60s, no card).
  - Webhook endpoint with HMAC SHA-256 verification using the X-Signature-V2 header and your webhook secret.
  - A workflow_id from the Workflow Builder that bundles ID Verification + Passive Liveness + Face Match 1:1 + Device & IP Analysis + AML Screening.
  - Transaction Monitoring enabled in the Business Console (Transactions > Settings) with crypto screening turned on.

STEP 1 — Verify the buyer with the Sessions API

  POST https://verification.didit.me/v3/session/
  Headers:
    x-api-key: <your api key>
    Content-Type: application/json
  Body:
    {
      "workflow_id": "<wf id with KYC + AML modules>",
      "vendor_data": "<your buyer id, max 256 chars>",
      "callback": "https://<your-app>/onramp/kyc/callback",
      "metadata": {
        "purpose": "crypto_onramp_buy",
        "buy_id": "<your internal tx reference>"
      }
    }

  Response: 201 Created with the hosted session URL. Redirect the buyer to it. Sub-2-second median verdict on completion.

STEP 2 — Read the signed webhook on KYC completion

  Didit POSTs to your callback. Session statuses are Title Case With Spaces:

  Body (excerpted):
    {
      "session_id": "<uuid>",
      "vendor_data": "<your buyer id>",
      "status": "Approved",
      "id_verification": { "status": "Approved" },
      "liveness": { "status": "Approved" },
      "face": { "status": "Approved", "similarity_score": 0.94 },
      "ip_analysis": { "status": "Approved" },
      "aml": { "status": "Approved", "hits": [] }
    }

  Status enum (exact case): Approved | Declined | In Review | Resubmitted | Expired | Not Finished | Kyc Expired | Abandoned.

  Verify the X-Signature-V2 header BEFORE reading the body — HMAC SHA-256 of the raw bytes with your webhook secret.

STEP 3 — Screen the destination wallet BEFORE crediting the buy

  POST https://verification.didit.me/v3/transactions/
  Headers:
    x-api-key: <your api key>
    Content-Type: application/json
  Body (required fields verified live 2026-05-16):
    {
      "transaction_id": "<your internal buy reference>",
      "transaction_category": "finance",
      "include_crypto_screening": true,
      "transaction_details": {
        "direction": "OUTBOUND",
        "amount": "0.25",
        "currency": "ETH",
        "currency_kind": "crypto",
        "action_type": "withdrawal"
      },
      "subject": {
        "entity_type": "individual",
        "vendor_data": "<your buyer id>",
        "full_name": "<buyer full name>"
      },
      "counterparty": {
        "entity_type": "unhosted_wallet",
        "full_name": "<destination wallet label>",
        "payment_method": {
          "method_type": "crypto_wallet",
          "account_id": "<destination wallet address>"
        }
      }
    }

  REQUIRED fields the API rejects if missing:
    - subject.vendor_data + subject.full_name
    - counterparty.full_name
    - transaction_details.direction + currency + currency_kind + amount
    - For crypto: a wallet address on counterparty.payment_method.account_id (OUTBOUND) or subject.payment_method.account_id (INBOUND post-transfer)

  Wallet screening runs server-side when currency_kind = "crypto" and there is a wallet address in the right participant. No separate endpoint.

  Response shape (excerpted from a real successful 201):
    {
      "uuid": "<server transaction uuid>",
      "txn_id": "<your transaction_id echoed back>",
      "status": "APPROVED",
      "score": 0,
      "severity": null,                       // null when score is 0; LOW | MEDIUM | HIGH | CRITICAL | UNKNOWN otherwise
      "props": {
        "wallet_risk_score": 0,
        "sanctions_hit": false,
        "pep_counterparty": false,
        "aml_provider": "<provider slug>",    // identifies the screening provider used on this call
        "aml_screening_type": "WALLET_SCREENING",
        "aml_screening_status": "COMPLETED"
      },
      "provider_results": [{ "provider": "<provider slug>", "result_type": "WALLET_SCREENING", "status": "SCREENED", ... }],
      "cost_breakdown": {
        "total_price": 0.17,
        "items": [
          { "usage_type": "transaction_aml_monitoring", "price": 0.15 },
          { "usage_type": "transaction_monitoring", "price": 0.02 }
        ]
      }
    }

  Transaction status enum (exact case, UPPER_SNAKE_CASE): APPROVED | IN_REVIEW | DECLINED | AWAITING_USER.
  When a transaction enters AWAITING_USER, Didit creates a linked remediation session automatically and returns a verification URL on the response.

  Real per-transaction cost (verified live):
    - Plain fiat transaction monitoring: $0.02
    - Crypto transaction with managed wallet screening: $0.17 ($0.02 TM base + $0.15 wallet screen on Didit's managed flow)
    - Crypto transaction with BYOK wallet screening: $0.04 ($0.02 TM base + $0.02 wallet screen)

  Branch logic:
    APPROVED       → send the crypto.
    IN_REVIEW      → hold the buy, route to analyst queue.
    DECLINED       → refund the fiat, block the address.
    AWAITING_USER  → redirect the buyer to the remediation session URL.

STEP 4 — Ongoing AML monitoring is automatic

  Any session with AML enabled is rescreened DAILY by Didit's continuous monitoring at $0.07 per user per year. There is NO separate endpoint to call — the same workflow does it.

  When a previously-approved buyer crosses an AML threshold, the session status changes to "In Review" or "Declined" automatically and your webhook fires the update.

STEP 5 — Off-ramp uses the same two endpoints

  Selling crypto for fiat:
    - KYC the seller via POST /v3/session/ (same as Step 1).
    - Screen the source wallet via POST /v3/transactions/ with direction: "INBOUND" and the source wallet address on subject.payment_method.account_id.

WEBHOOK EVENT NAMES
  - Sessions: status changes flow through the standard session webhook.
  - Transactions: transaction.created · transaction.updated · transaction.status.changed · transaction.alert.generated.

  Verify X-Signature-V2 on every payload.

CONSTRAINTS
  - Session statuses use Title Case With Spaces (Approved, In Review). Transaction statuses use UPPER_SNAKE_CASE (APPROVED, IN_REVIEW). They live in different APIs — don't mix them in the same code path.
  - Wallet Screening MUST run BEFORE the crypto leaves — a post-transfer screen is useful for audit but useless for blocking.
  - Default record retention is 5 years post-relationship per the EU AML package; extend per your supervisor's guidance.
  - 200+ fraud signals are evaluated on every KYC session at no extra cost — surface the score via the session decision payload, don't re-query.

Read the docs:
  - https://docs.didit.me/sessions-api/create-session
  - https://docs.didit.me/transaction-monitoring/overview
  - https://docs.didit.me/transaction-monitoring/aml-screening
  - https://docs.didit.me/integration/webhooks

Start free at https://business.didit.me — sandbox key in 60 seconds, 500 verifications free every month, no credit card.
さらに詳しい情報が必要ですか?モジュールの全ドキュメントをご覧ください。docs.didit.me →
設計によるコンプライアンス

ワンクリックで新しい国を開拓。 私たちは大変な作業を行います。

私たちは現地の子会社を開設し、ライセンスを確保し、侵入テストを実施し、認証を取得し、すべての新しい規制に準拠します。新しい国で検証を出荷するには、トグルを切り替えるだけです。220以上の国が稼働しており、四半期ごとに監査と侵入テストが行われています — EU加盟国の政府が対面検証よりも安全だと正式に認めた唯一のIDプロバイダーです。
セキュリティ&コンプライアンスの書類を読む
EU金融サンドボックス
Tesoro · SEPBLAC · BdE
ISO/IEC 27001
情報セキュリティ · 2026
SOC 2 · Type I
AICPA · 2026
iBeta Level 1 PAD
NIST / NIAP · 2026
GDPR
EU 2016/679
DORA
EU 2022/2554
MiCA
EU 2023/1114
AMLD6 · eIDAS 2.0
設計によりEUに準拠

証明番号

証明番号
  • $0.00
    完全にスクリーニングされた購入ごと — KYCバンドル + ウォレットスクリーニング付きトランザクション。
  • 0+
    すべての購入者に対して、制裁、政治的要人 (PEP)、および有害メディアリストをスクリーニング。
  • <0s
    エントリーレベルのAndroidでのセッションごとのエンドツーエンドKYC結果。
  • 0
    すべてのアカウントで毎月無料の検証。
3つのティア、1つの価格表

無料で開始。従量課金。エンタープライズへ拡張。

毎月500回の無料検証、永久に。本番環境では従量課金。エンタープライズではカスタム契約、データレジデンシー、SLA(サービスレベル契約)。
無料

無料

月額$0。クレジットカード不要。

  • 無料KYCバンドル(ID検証 + パッシブ生体検知 + 顔照合 + デバイス&IP分析) — 毎月500回
  • ブロックリスト登録ユーザー
  • 重複検出
  • すべてのセッションで200以上の不正信号
  • Diditネットワーク全体でのKYCの再利用
  • ケース管理プラットフォーム
  • ワークフロービルダー
  • 公開ドキュメント、サンドボックス、SDK、MCP(Model Context Protocol)サーバー
  • コミュニティサポート
最も人気
従量課金

従量課金制

使用した分だけお支払いください。25以上のモジュール。モジュールごとの公開価格、月額最低料金なし。

  • $0.33で完全なKYC(ID + 生体認証 + IP / デバイス)
  • 10,000以上のAMLデータセット — 制裁、PEPs、ネガティブメディア
  • データベース検証のための1,000以上の政府データソース
  • トランザクションあたり$0.02でトランザクション監視
  • 企業あたり$2.00でライブKYB
  • チェックあたり$0.15でウォレットスクリーニング
  • ホワイトラベル検証フロー — あなたのブランド、私たちのインフラ
エンタープライズ

エンタープライズ

カスタムMSA & SLA。大量の取引と規制プログラム向け。

  • 年間契約
  • カスタムMSA、DPA、SLA
  • 専用のSlackおよびWhatsAppチャネル
  • オンデマンドの手動レビュー担当者
  • 再販業者およびホワイトラベルの条件
  • 独占的な機能とパートナー統合
  • 指名されたCSM、セキュリティレビュー、コンプライアンスサポート

無料で開始 → チェック実行時のみ支払い → カスタム契約、SLA、またはデータレジデンシーのためにエンタープライズをアンロック。

FAQ

よくある質問

本人確認と不正対策のためのインフラ。

KYC、KYB、取引モニタリング、ウォレットスクリーニングのための単一API。5分で統合。

AIにこのページの要約を依頼する