Wie das Screening ausgelöst wird
Das Krypto-Screening läuft automatisch, wenn beide Bedingungen erfüllt sind:- Die Transaktion hat
currency_kind: "crypto"in ihren Transaktionsdetails - Die Transaktionsüberwachung ist in Ihren Anwendungseinstellungen aktiviert
include_crypto_screening im Payload der Transaktionserstellung überschreiben:
Asset- und Netzwerkauswahl
Asset und Netzwerk sind getrennte Felder. Setzen Sietransaction_details.currency auf das Token-Symbol, transaction_details.currency_kind auf crypto und transaction_details.crypto_params.crypto_chain auf das Netzwerk.
Das folgende Fragment erfasst beispielsweise einen benutzerdefinierten Token auf Base:
BTC, ETH, LTC, XRP, BCH, DOGE, TRX, SOL, MATIC, BNB, BASE, OP, ARB, AVAX, ADA, XLM und HBAR.
BASE steht für Base, OP für Optimism, ARB für Arbitrum One, AVAX für Avalanche C-Chain, ADA für Cardano, XLM für Stellar und HBAR für Hedera.
Gängige Netzwerknamen werden ebenfalls akzeptiert, zum Beispiel POLYGON oder POL für MATIC, BSC für BNB und TRON für TRX.
Celo, Mode und Plume werden von der verwalteten Integration nicht abgedeckt; ihr Screening erfolgt über ein verbundenes TRM-Labs-Konto (CELO, MODE, PLUME).
Verbundene Anbieter haben ihre eigene Abdeckung; für Lightning gelten unten zusätzliche Anforderungen.
Geben Sie für einen Token immer crypto_chain an, auch für USDT und USDC.
Ohne diese Angabe wird die Währung als Netzwerk verwendet; USDT und USDC beziehen ihr Netzwerk aus dem Transaktions-Hash oder, ohne Hash, aus der Adresse.
Ein Tron- oder Solana-Hash wählt Tron bzw. Solana aus.
Ein 0x-Hash sieht in jedem EVM-Netzwerk gleich aus. Daher sucht Didit bei USDT, USDC und ETH auf Ethereum, BNB Chain, Polygon, Base, Arbitrum und Optimism danach und führt das Screening der Transaktion auf dem Netzwerk durch, in dem sie gefunden wird.
ETH ist enthalten, weil es auf Ethereum, Base, Arbitrum und Optimism nativ ist und auf der BNB Chain zusätzlich als gebrückter BEP-20-Token übertragen wird.
Wenn kein Netzwerk den Hash enthält oder die Netzwerke in diesem Moment nicht geprüft werden können, wird die Transaktion nicht gescreent und das Screening nicht berechnet.
Dann ist custom_values.aml_screening_status FAILED, custom_values.aml_screening_error gibt den Grund an, und eine genehmigte Transaktion wird in die Prüfung verschoben.
Eine USDT- oder USDC-Transaktion ohne Hash wird als Wallet gescreent, und die Adresse bestimmt das Netzwerk.
Eine Tron-Adresse wird auf Tron gescreent, eine Solana-Adresse auf Solana.
Eine 0x-Adresse wird auf dem ersten der Netzwerke Ethereum, BNB Chain, Polygon, Base, Arbitrum und Optimism gescreent, auf dem sie eine Transaktion gesendet hat oder den Token hält.
Eine 0x-Adresse ohne Aktivität auf allen diesen Netzwerken oder eine Adresse, deren Netzwerke in diesem Moment nicht geprüft werden können, wird auf Ethereum gescreent.
Wenn Sie crypto_chain senden, entfällt die Suche.
Verwenden Sie ETH niemals als Ersatz für das tatsächliche Netzwerk.
Die Erfassung eines benutzerdefinierten Token-Symbols garantiert nicht, dass seine Transfers für das Screening anhand des Transaktions-Hashes indexiert sind.
Die Abdeckung des Tokens muss anhand des Token-Vertrags und des Netzwerks geprüft werden.
Eine angelegte Transaktion ist kein Nachweis für ein erfolgreiches Screening: Prüfen Sie den Screening-Status und das Ergebnis des Anbieters, bevor Sie die Transaktion als gescreent behandeln.
Eingehend vs. ausgehend
transaction_details.direction ist erforderlich, weil Didit damit festlegt, auf welcher Seite der Übertragung das Screening erfolgen soll.
Für das Screening vor der Übertragung lassen Sie
transaction_details.payment_reference_id weg; Didit führt dann ein Wallet-Screening für die relevante Wallet-Adresse durch. Für das Screening nach der Übertragung geben Sie den Blockchain-Transaktions-Hash in transaction_details.payment_reference_id an; Didit führt dann ein Transaktions-Screening durch und speichert Daten zur Transaktionszusammenfassung, sofern die On-Chain-Anreicherung verfügbar ist.
Lightning-Netzwerk
Setzen Sietransaction_details.crypto_params.crypto_chain auf LIGHTNING, um ein Lightning-Netzwerk-Screening durchzuführen.
Für das Lightning-Screening ist ein verbundener API-Schlüssel des Anbieters von Elliptic oder Chainalysis (BYOK) in der Konsole unter Marketplace erforderlich.
Die verwalteten Dienste von Merkle Science, Crystal und TRM Labs akzeptieren LIGHTNING nicht; Didit lehnt solche Anfragen mit 400 ab, bevor ein Screening erfolgt oder eine Abrechnung stattfindet.
Bei Elliptic prüft Didit die übermittelte Lightning-Kennung über die BTC-Lightning-Wallet-Analyse von Elliptic.
Bei Chainalysis übermittelt Didit eine Lightning-Übertragung an KYT, sofern transaction_details.payment_reference_id vorhanden ist.
Pflichtfelder
Für alle Krypto-Screening-Anfragen senden Sie:transaction_details.direction:INBOUNDoderOUTBOUNDtransaction_details.currency_kind:cryptotransaction_details.currency: das Asset-Symbol, zum BeispielBTC,ETH,USDCoder Ihr eigenes Token- Eine Wallet-Adresse des Teilnehmers, der nach den obigen Richtungsregeln ausgewählt wird
transaction_details.payment_reference_id: der Blockchain-Transaktions-Hash
Beispiel: ausgehendes Screening vor der Übertragung
Erstellen Sie vor dem Senden von Geldern eine ausgehende Krypto-Transaktion ohne Transaktions-Hash. Didit führt das Screening der Ziel-Wallet durch.Beispiel: eingehendes Screening nach der Übertragung
Geben Sie nach Eingang der Gelder den Transaktions-Hash an. Didit führt das Screening des Transaktions-Hashs, bezogen auf Ihre Einzahlungsadresse, durch und reichert die Antwort, sofern verfügbar, mit Informationen zur Transaktionszusammenfassung an.Unterstützte Anbieter
Konfigurieren Sie Ihren bevorzugten Anbieter unter Transaktionen > Einstellungen > Provider Preferences in der Business Console oder verbinden Sie Ihren eigenen API-Schlüssel des Anbieters über den Marketplace (Kategorie für Kryptoüberwachung).
LIGHTNING wird nur mit Konfigurationen mit verbundenem Schlüssel von Chainalysis und Elliptic unterstützt.
Screening-Ergebnisse
Jedes Screening liefert unabhängig vom verwendeten Anbieter ein standardisiertes Ergebnis.Screening-Status
custom_values.aml_screening_status zeigt an, ob eine Transaktion geprüft wurde.
Eine Transaktion, die sonst genehmigt würde, wechselt zu
IN_REVIEW, solange sich ihr Screening in einem anderen Status als COMPLETED befindet.
Transaktions-Hashes noch nicht indexiert
Ein Anbieter für Blockchain-Analysen kann einige Minuten brauchen, um eine gerade bestätigte Überweisung zu indexieren. Bis dahin kann er sie nicht prüfen. Antwortet der Anbieter, dass er einen Transaktions-Hash noch nicht indexiert hat, und bestätigt das Netzwerk selbst, dass die Transaktion existiert, prüft Didit den Hash im Hintergrund erneut, anstatt das Screening fehlschlagen zu lassen:- Die Antwort auf die Erstellung zeigt bereits
custom_values.aml_screening_statusalsPENDING, den Grund incustom_values.aml_screening_error. Eine genehmigte Transaktion wird mitdecision_reason_codeaml_screening_pendingaufIN_REVIEWgehalten. - Didit prüft den Transaktions-Hash etwa 2, 12 und 42 Minuten nach Erstellung der Transaktion erneut.
- Wenn ein Wiederholungsversuch das Screening erfolgreich durchführt, wird das Ergebnis wie jedes andere Screening gespeichert, und das Screening wird einmal berechnet.
Ihre Regeln werden erneut auf die Screening-Daten angewendet, die Sperre wird aufgehoben, und Sie erhalten einen Webhook
transaction.status.updatedmit dem Status, den die Transaktion nach den Regeln hat, unabhängig davon, ob er sich geändert hat. Eine Transaktion, die in der Zwischenzeit abgelehnt oder von einem Prüfer entschieden wurde, behält ihren Status. - Wenn der Anbieter den Transaktions-Hash nach dem letzten Versuch immer noch nicht indexiert hat, endet das Screening mit
FAILED, wie es bei der Erstellung geendet hätte. Die Transaktion bleibtIN_REVIEWmitdecision_reason_codeaml_screening_failed. Sie wird wie ein Fehler bei der Erstellung berechnet: bei von Didit verwaltetem Screening nichts, bei einer Anbieteranfrage eine Anfrage, wenn der letzte Versuch Ihren angebundenen Anbieter erreicht hat. Die früheren, wiederholten Versuche werden nie berechnet. - Wenn Ihr Guthaben beim Ausführen eines erneuten Versuchs das Screening nicht mehr deckt, endet das Screening mit
FAILED, und nichts wird berechnet.
Risiko-Score und Schweregrad
Jede geprüfte Wallet oder Transaktion erhält:- Risiko-Score (0–100): höhere Werte zeigen eine größere Risikoexposition gegenüber riskanten Entitäten an
- Schweregradstufe: aus dem Wert abgeleitet:
LOW,MEDIUM,HIGHoderCRITICAL
Analyse der Mittelherkunft
Eine prozentuale Aufschlüsselung, woher die Gelder stammen, kategorisiert nach Entitätstyp:
Jede Entität in der Aufschlüsselung enthält den Prozentsatz der Gelder, die empfangenen und gesendeten Beträge sowie die Angabe, ob die Verbindung direkt oder indirekt ist.
Exposure-Tabelle
Eine Exposure-Tabelle mit Quell-, Ziel- und Gegenparteientitäten, die Folgendes enthält:- Name und Kategorie der Entität
- Direkte vs. indirekte Verbindung (Hop-Distanz)
- Empfangene und gesendete Beträge
- Risikostufe je Entität
Netzwerkgraph
Eine visuelle Knoten-Kanten-Darstellung der Transaktionsbeziehungen der Wallet:- Knoten stellen Wallets, Börsen, Dienste und andere Entitäten dar
- Kanten stellen Transaktionen zwischen Knoten dar, mit Beträgen und Transaktions-Hashes
- Kennzahlen umfassen graphbezogene Statistiken wie Zentralität und Tiefe
Integration in die Regeln
Screening-Ergebnisse fließen direkt in die Regel-Engine. Didit enthält vordefinierte Regeln, die auf Basis der Screening-Daten automatisch ausgelöst werden:Screening-Felder für Regeln
Das Crypto-Screening schreibt die folgenden Schlüssel in diecustom_values der Transaktion, damit Regeln sie als custom_values.<key> verwenden können:
Verwenden Sie
wallet_sanctioned, um Transfers an ein sanktioniertes Wallet zu blockieren, ohne Transfers an große Börsen abzulehnen, die nur indirekte Exposition aufweisen.
Verwenden Sie sanctions_hit oder aml_sanctions_exposure_pct, um Exposition zu prüfen oder zu bewerten.
Die vordefinierte Regel Sanctions counterparty lehnt ab, wenn wallet_sanctioned gleich true ist. Die vordefinierte Regel Sanktionsexposition leitet Wallets, die nur Exposition aufweisen, zur Prüfung weiter.
Beide Regeln treffen nie auf dieselbe Transaktion zu, sodass ein sanktioniertes Wallet immer abgelehnt wird.
Falls Sie Sanctions counterparty vor dieser Änderung installiert haben, hat Didit die Regel für Sie auf wallet_sanctioned umgestellt und Sanktionsexposition im selben Modus hinzugefügt. Eine Transaktion, die die alte Regel allein wegen Exposition abgelehnt hat, wird daher nun zur Prüfung weitergeleitet.
Nachdem das Screening abgeschlossen ist, bewertet Didit alle Regeln automatisch erneut anhand der angereicherten Transaktionsdaten und löst alle zutreffenden Webhooks aus.
Nächste Schritte
Transaktionen einreichen
So reichen Sie Transaktionen einschließlich der Krypto-Wallet-Details ein.
Regeln & Scoring
So fließen Screening-Ergebnisse in die Regel-Engine ein.
Konsolenanleitung
Krypto-Screening-Analyse, Mittelherkunft und Netzwerkgraphen in der Konsole einsehen.