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

すべての転送における発信者と受取人。

Diditは、同じ/v3/トランザクションコールでトラベルルールデータを交換し、相手方ウォレットをスクリーニングします。IVMS-101ペイロード、管理された転送あたり$0.17、毎月500回の検証が無料です。

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

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

映画のような暗く抽象的なコンプライアンスのイラスト — 純粋な黒いキャンバス上に3Dパースペクティブで浮かぶ4枚の半透明のダークガラスパネルが、光るDidit Blueの垂直線で結ばれ、4つの光るスキャナーブラケットで囲まれています。各パネルには、発信者と受益者のデータ交換を表す小さな淡い白色の抽象的なモチーフ(対になった矢印、メッセージエンベロープ、2人での引き渡し、転送ルート)が描かれています。

トラベルルールが負うもの

本人確認を送信します。ウォレットをスクリーニングします。同じ呼び出しで。

すべての規制対象VASPは、すべての転送で両方の半分を負います — 相手方VASP用のIVMS-101パケットと、 自身用のオンチェーンリスクスクリーニングです。Diditはこれらを1つのTransactions APIコールとして提供します:管理されたものは$0.17、 ウォレットプロバイダーでBring Your Own Keyを使用する場合は$0.04です。毎月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

    結果を受け取る

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

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

1回の呼び出し。IVMS-101パケット + ウォレット画面。$0.17。

規制された暗号資産転送は単一のチェックではなく、レシピです。ワークフローごとに各モジュールを切り替え、Bring Your Own Keyを介して独自のウォレットスクリーニングプロバイダーを組み込むことで、転送あたり$0.04にまでコストを削減できます。
01 · IVMS-101ペイロード

転送ごとに1つのIVMS-101パケット。

検証済みのKYCから入力された発信者および受益者フィールド。主要なトラベルルールプロトコルが読み取るスキーマであるInterVASP Messaging Standard 101に自動的にフォーマットされます。
Transactions API
02 · 管轄区域ごとのしきい値

管轄区域に合ったしきい値。

EU TFR(最低なし)、US FinCEN($3,000)、UK FCA(£1,000)、MAS(SGD 1,500)、FINMA(CHF 1,000)、VARA(AED 3,500)。管轄区域ごとに1つのワークフロー。セッションメタデータ経由で切り替え。
暗号資産業界のワークフロー
03 · プロトコルの相互運用性

すべてのトラベルルールプロトコル。1つの契約。

TRP、Sumsub Travel Rule、Notabene、Veriscope、OpenVASP、Shyft — すべて同じIVMS-101ペイロードを介して到達可能。1つのネットワークを選択するか、すべてを受け入れるか。1つの契約、1つの請求書。
ワークフローオーケストレーター
04 · 自己ホスト型ウォレットフロー

自己ホスト型宛先?それでもカバーされます。

交換する相手方VASPはありません — Diditはユーザーから受益者の身元を収集し、EUの強化されたデューデリジェンスのしきい値を超える制御証明の署名チャレンジを実行し、宛先ウォレットをスクリーニングし、IVMS形式の記録を保存します。
カスタムアンケート
05 · ルールと並行したウォレット画面

トラベルルール + ウォレット画面。同じ呼び出し。

$0.02のトランザクション監視ベース + $0.15の管理ウォレットスクリーニング = 転送あたり$0.17。ウォレットプロバイダーでBring Your Own Keyを使用する場合、ウォレットスクリーニングは$0.02に下がり、合計$0.04になります。
ウォレットスクリーニングモジュール
06 · 転送ごとの証拠パック

転送ごとに1パック。監査に組み込まれます。

IVMS-101ペイロード、ウォレットスクリーンの判定、相手方VASPの帰属、署名付きHMACタイムスタンプ。EUに保存されます。デフォルトで5年間保持されます。監督者の指示に従って延長可能です。
セキュリティとコンプライアンス
統合する

1つのセッション。1つのトランザクション。1つのウェブフック。

ユーザーを一度検証します。IVMSフィールドと相手方ウォレットを使用して各転送を送信します。署名された判定を読み取ります。暗号資産をリリースします。
POST /v3/session/KYC
$ curl -X POST https://verification.didit.me/v3/session/ \
  -H "x-api-key: $DIDIT_API_KEY" \
  -d '{
    "workflow_id": "wf_casp_onboard",
    "vendor_data": "user-42"
  }'
201作成済みステータス 承認済み · レビュー中 · 拒否済み
すべての転送の発信者フィールドは、この署名された評決から取得されます。ドキュメント →
POST /v3/transactions/IVMS + KYT
$ curl -X POST https://verification.didit.me/v3/transactions/ \
  -H "x-api-key: $DIDIT_API_KEY" \
  -d '{
    "transaction_id": "tx-9001",
    "transaction_details": { "direction": "OUTBOUND", "currency_kind": "crypto" },
    "subject": { "full_name": "J. Pérez" },
    "counterparty": { "full_name": "R. Beneficiary", "payment_method": { "account_id": "bc1qa3…hk22" }}
  }'
201作成済みステータス 承認済み · レビュー中 · 拒否済み · ユーザー待ち
IVMS-101パケット + ウォレットスクリーンはサーバー側で実行されます。2回目の呼び出しはありません。ドキュメント →
エージェント対応統合

1つのプロンプトでトラベルルールフローを実装。

Claude Code、Cursor、Codex、Devin、Aider、またはReplit Agentに貼り付けます。スタックを入力します。エージェントがワークフローを構築し、KYCセッションからIVMSフィールドを投入し、ウォレットスクリーニングを実行し、ウェブフックを接続します。
didit-integration-prompt.md
You are integrating Didit into a Virtual Asset Service Provider (VASP) / Crypto-Asset Service Provider (CASP) to satisfy the Travel Rule on every crypto transfer. Two obligations:

  1. Verify the user (KYC) — identity, liveness, face match, device + IP, AML. The originator data on every outbound transfer comes from this verified profile.
  2. Submit each transfer with originator + beneficiary fields (IVMS-101) AND screen the counterparty wallet — one /v3/transactions/ call.

Bundle pricing (verified live 2026-05-16):
  - User Verification (KYC) bundle: $0.33 per user (Sessions API)
  - Transactions API call: $0.02 base + $0.15 managed wallet screen = $0.17 per managed transfer
  - With Bring Your Own Key (BYOK) on the wallet provider: $0.04 per transfer ($0.02 + $0.02)
  - First 500 verifications free every month, forever

PRE-REQUISITES
  - Production API key from https://business.didit.me (sandbox key in 60 seconds, no credit card).
  - Webhook endpoint with HMAC SHA-256 verification of the X-Signature-V2 header.
 HMAC-SHA256 verification MUST run against the raw body bytes (the raw payload as Didit sent it) BEFORE any JSON parsing — re-serialising the parsed body changes whitespace and key order, which invalidates the signature.  - A workflow_id from the no-code Workflow Builder with ID Verification + Passive Liveness + Face Match 1:1 + Device & IP Analysis + AML Screening.
  - Transaction Monitoring + Wallet Screening enabled in the Business Console (Transactions > Settings).

STEP 1 — Verify the user with the Sessions API (one-time onboarding)

  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 user id>",
      "callback": "https://<your-app>/casp/onboard/callback",
      "metadata": {
        "purpose": "casp_onboarding"
      }
    }

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

STEP 2 — Read the signed webhook on KYC completion

  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.

  Capture the user's full name, date of birth, address, and any registered identity-document number from the decision payload. These fields populate the IVMS-101 originator block on every subsequent transfer.

STEP 3 — Submit every transfer with IVMS-101 + wallet screen in one call

  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 transfer reference>",
      "transaction_category": "finance",
      "include_crypto_screening": true,
      "transaction_details": {
        "direction": "OUTBOUND",
        "amount": "0.45",
        "currency": "ETH",
        "currency_kind": "crypto",
        "action_type": "transfer"
      },
      "subject": {
        "entity_type": "individual",
        "vendor_data": "<your user id>",
        "full_name": "<originator name from KYC>",
        "address": "<originator address from KYC>",
        "dob": "<originator dob from KYC, YYYY-MM-DD>"
      },
      "counterparty": {
        "entity_type": "individual",
        "full_name": "<beneficiary name>",
        "address": "<beneficiary address if known>",
        "payment_method": {
          "method_type": "crypto_wallet",
          "account_id": "<counterparty 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
    - counterparty.payment_method.account_id (the wallet address)

  Didit packages the subject + counterparty fields into an IVMS-101 payload, hands them off to the connected Travel Rule protocol (TRP / Sumsub TR / Notabene / Veriscope), runs Wallet Screening on the counterparty address server-side, and returns one verdict.

  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,
      "travel_rule": { "status": "EXCHANGED", "protocol": "<network>", "ivms_packet_id": "<id>" },
      "props": {
        "wallet_risk_score": 0,
        "sanctions_hit": false,
        "aml_provider": "<provider slug>",
        "aml_screening_type": "WALLET_SCREENING",
        "aml_screening_status": "COMPLETED"
      },
      "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.
  Wallet-screen severity (UPPER): LOW | MEDIUM | HIGH | CRITICAL | UNKNOWN.

  Branch logic:
    APPROVED       → release the crypto.
    IN_REVIEW      → hold the transfer, route to analyst queue.
    DECLINED       → refuse the transfer, log the IVMS attempt for the audit.
    AWAITING_USER  → redirect the user to the remediation URL on the response.

STEP 4 — Inbound transfers: ingest the counterparty's IVMS packet

  When you RECEIVE a transfer from another VASP:
    - The connected Travel Rule protocol delivers the originator IVMS data to you BEFORE the on-chain transfer settles.
    - Submit it via the same POST /v3/transactions/ with direction: "INBOUND" and the originator fields on subject and your own beneficiary on counterparty.
    - Wallet Screening runs on the originator wallet (subject.payment_method.account_id).
    - Verdict drives whether to credit the user.

STEP 5 — Self-hosted (unhosted) wallet transfers

  For transfers TO a self-hosted wallet (no counterparty VASP to exchange with):
    - Collect the beneficiary identity from the user via a custom questionnaire ($0.10).
    - Above local enhanced-due-diligence thresholds, prompt the user to sign a short message with the beneficiary wallet's private key as proof of control.
    - Submit the transaction with the captured beneficiary fields + wallet address.
    - Didit still runs Wallet Screening on the destination and stores the IVMS-format record for the audit.

STEP 6 — Continuous AML on the user is automatic

  Every approved user is re-screened daily against 1,300+ sanctions, PEP, and adverse-media lists. There is NO separate endpoint to call. When a previously-clean user crosses an AML threshold, the session status updates and a signed webhook fires.

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 Title Case With Spaces; transaction statuses UPPER_SNAKE_CASE. Don't mix.
  - EU Transfer of Funds Regulation has NO de minimis threshold for crypto — every transfer carries originator + beneficiary data.
  - US Travel Rule kicks in at $3,000; UK at £1,000; Singapore at SGD 1,500; Switzerland at CHF 1,000. Apply per-workflow.
  - Default record retention is 5 years post-transfer per most AML regimes; extensible per supervisor guidance.
  - Wallet Screening MUST run BEFORE the crypto leaves — a post-transfer screen is useful for audit but useless for blocking.

Read the docs:
  - https://docs.didit.me/transaction-monitoring/overview
  - https://docs.didit.me/transaction-monitoring/transactions
  - https://docs.didit.me/transaction-monitoring/aml-screening
  - https://docs.didit.me/sessions-api/create-session
  - 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
    管理対象転送あたり — 取引監視ベース + ウォレットスクリーニング。
  • 0+
    すべてのユーザーに対して、制裁、政治的要人 (PEP)、およびネガティブメディアリストをスクリーニング。
  • 0+
    同じIVMS-101ペイロードで相互運用可能なトラベルルールプロトコル — TRP、Sumsub TR、Notabene、Veriscope、OpenVASP、Shyft。
  • 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にこのページの要約を依頼する