Como funciona a triagem
A triagem cripto é executada automaticamente quando se verificam ambas as condições:- A transação tem
currency_kind: "crypto"nos respetivos detalhes - A monitorização de transações está ativada nas suas definições da aplicação
include_crypto_screening no payload do pedido de criação de transação:
Seleção de ativo e rede
O ativo e a rede são campos separados. Definatransaction_details.currency como o símbolo do token, transaction_details.currency_kind como crypto e transaction_details.crypto_params.crypto_chain como a rede.
Por exemplo, este fragmento regista um token personalizado na Base:
BTC, ETH, LTC, XRP, BCH, DOGE, TRX, SOL, MATIC, BNB, BASE, OP, ARB, AVAX, ADA, XLM e HBAR.
BASE significa Base, OP significa Optimism, ARB significa Arbitrum One, AVAX significa Avalanche C-Chain, ADA significa Cardano, XLM significa Stellar e HBAR significa Hedera.
Também são aceites nomes comuns de redes, por exemplo POLYGON ou POL para MATIC, BSC para BNB e TRON para TRX.
Celo, Mode e Plume não estão abrangidas pela integração gerida; são submetidas a triagem através de uma conta TRM Labs ligada (CELO, MODE, PLUME).
A cobertura dos fornecedores ligados depende de cada um; o Lightning tem requisitos adicionais, indicados abaixo.
Indique sempre crypto_chain para um token, incluindo USDT e USDC.
Sem este campo, a moeda é usada como rede, e o USDT e o USDC obtêm a rede a partir do hash da transação ou, na falta de hash, a partir do endereço da carteira.
Um hash da Tron ou da Solana seleciona a rede Tron ou a rede Solana.
Um hash 0x é igual em todas as redes EVM, por isso, para USDT, USDC e ETH, a Didit procura-o na Ethereum, BNB Chain, Polygon, Base, Arbitrum e Optimism e faz a triagem da transação na rede onde o encontrar.
O ETH está incluído porque é nativo na Ethereum, Base, Arbitrum e Optimism e também é transferido na BNB Chain como token BEP-20 em ponte.
Se nenhuma rede tiver o hash, ou se as redes não puderem ser verificadas naquele momento, a transação não é submetida a triagem e a triagem não é faturada.
Nesse caso, custom_values.aml_screening_status é FAILED, custom_values.aml_screening_error indica o motivo e uma transação aprovada passa para revisão.
Uma transação de USDT ou USDC sem hash submete uma carteira à triagem, e o endereço da carteira seleciona a rede.
Um endereço da Tron é submetido à triagem na rede Tron e um endereço da Solana é submetido à triagem na rede Solana.
Um endereço 0x é submetido à triagem na primeira das redes Ethereum, BNB Chain, Polygon, Base, Arbitrum e Optimism onde tenha enviado uma transação ou detenha o token.
Um endereço 0x sem atividade em nenhuma dessas redes, ou cujas redes não possam ser verificadas naquele momento, é submetido à triagem na rede Ethereum.
Enviar crypto_chain evita a pesquisa.
Nunca substitua ETH pela rede real.
Registar um símbolo de token personalizado não garante que as suas transferências estejam indexadas para triagem por hash de transação.
A cobertura do token deve ser verificada com base no contrato do token e na rede.
Uma transação criada não é prova de triagem bem-sucedida: verifique o estado da triagem e o resultado do fornecedor antes de a considerar submetida à triagem.
Recebida vs enviada
transaction_details.direction é obrigatório, porque indica à Didit qual dos lados da transferência deve ser submetido a triagem.
Para a triagem antes da transferência, omita
transaction_details.payment_reference_id; a Didit executa a triagem de carteiras sobre o endereço relevante. Para a triagem após a transferência, inclua o hash da transação blockchain em transaction_details.payment_reference_id; a Didit executa a triagem da transação e guarda os dados resumidos da transação quando o enriquecimento on-chain está disponível.
Lightning Network
Definatransaction_details.crypto_params.crypto_chain como LIGHTNING para a triagem na Lightning Network.
A triagem Lightning requer um fornecedor BYOK Elliptic ou Chainalysis associado no Marketplace da consola.
Merkle Science, Crystal e TRM Labs geridos não aceitam LIGHTNING; a Didit rejeita esses pedidos com 400 antes da triagem ou da faturação.
Para a Elliptic, a Didit faz a triagem do identificador Lightning fornecido através da análise de carteiras BTC Lightning da Elliptic.
Para a Chainalysis, a Didit submete uma transferência Lightning ao KYT quando transaction_details.payment_reference_id está presente.
Campos obrigatórios
Para todos os pedidos de triagem cripto, envie:transaction_details.direction—INBOUNDouOUTBOUNDtransaction_details.currency_kind—cryptotransaction_details.currency— o símbolo do ativo, por exemploBTC,ETH,USDCou o seu token personalizado- Um endereço de carteira no participante selecionado pelas regras de direção acima
transaction_details.payment_reference_id— o hash da transação blockchain
Exemplo: triagem de saída antes da transferência
Antes de enviar fundos, crie uma transação cripto enviada sem hash de transação. A Didit faz a triagem da carteira de destino.Exemplo: triagem de entrada depois da transferência
Depois de receber fundos, inclua o hash da transação. A Didit faz a triagem do hash da transação, limitado ao seu endereço de depósito, e enriquece a resposta com informação resumida da transação quando estiver disponível.Fornecedores suportados
Configure o fornecedor de sua preferência em Transações > Definições > Preferências de fornecedores na Business Console, ou ligue a sua própria chave de fornecedor a partir do Marketplace da consola (categoria Monitorização de criptomoedas).
LIGHTNING é suportado apenas por configurações Chainalysis e Elliptic com chave associada.
Resultados da triagem
Cada triagem produz um resultado padronizado, independentemente do fornecedor utilizado.Estado da triagem
custom_values.aml_screening_status indica se uma transação foi submetida a triagem.
Uma transação que, de outra forma, seria aprovada passa para
IN_REVIEW enquanto o estado da triagem for diferente de COMPLETED.
Hashes de transação ainda não indexados
Um fornecedor de análise de blockchain pode demorar alguns minutos a indexar uma transferência que acabou de ser minerada e, até lá, não a consegue submeter a triagem. Quando o fornecedor indica que ainda não indexou um hash de transação, e a própria rede confirma que a transação existe, a Didit volta a fazer a triagem em segundo plano, em vez de a dar como falhada:- A resposta da criação já mostra
custom_values.aml_screening_statuscomoPENDING, com o motivo emcustom_values.aml_screening_error. Uma transação aprovada fica retida emIN_REVIEWcomdecision_reason_codeaml_screening_pending. - A Didit volta a fazer a triagem do hash da transação cerca de 2, 12 e 42 minutos depois de a transação ser criada.
- Quando uma nova tentativa realiza a triagem, o resultado é guardado como qualquer outra triagem e a triagem é cobrada uma vez.
As suas regras são executadas novamente com os dados da triagem, a retenção é libertada e recebe um webhook
transaction.status.updatedcom o estado que a transação tem após as regras, tenha ou não mudado. Uma transação que tenha sido recusada ou resolvida por um revisor entretanto mantém o seu estado. - Se o fornecedor ainda não tiver indexado o hash da transação após a última tentativa, a triagem termina como
FAILED, tal como aconteceria na criação: a transação permanece emIN_REVIEWcomdecision_reason_codeaml_screening_failede é cobrada como seria cobrada uma falha na criação: nada na triagem gerida pela Didit e um pedido ao fornecedor quando a última tentativa chegou ao seu fornecedor ligado. As tentativas anteriores que foram repetidas nunca são cobradas. - Se o seu saldo deixar de cobrir a triagem quando uma nova tentativa for executada, a triagem termina como
FAILEDe nada é cobrado.
Pontuação de risco e gravidade
Cada carteira ou transação submetida a triagem recebe:- Pontuação de risco (0–100): pontuações mais altas indicam maior exposição a entidades de risco
- Nível de gravidade: derivado da pontuação:
LOW,MEDIUM,HIGHouCRITICAL
Análise da origem dos fundos
Uma decomposição percentual de onde os fundos tiveram origem, categorizada por tipo de entidade:
Cada entidade na decomposição inclui a percentagem dos fundos, os montantes recebidos e enviados, e se a ligação é direta ou indireta.
Tabela de exposição
Uma tabela de exposição que mostra as entidades de origem, de destino e de contraparte, incluindo:- Nome e categoria da entidade
- Ligação direta ou indireta (distância em saltos)
- Montantes recebidos e enviados
- Nível de risco por entidade
Grafo de rede
Uma representação visual em nós e arestas das relações transacionais da carteira:- Nós representam carteiras, plataformas de câmbio, serviços e outras entidades
- Arestas representam transações entre nós, com montantes e hashes de transação
- Métricas incluem estatísticas ao nível do grafo, como centralidade e profundidade
Integração com regras
Os resultados da análise alimentam diretamente o motor de regras. A Didit inclui regras predefinidas que são acionadas automaticamente com base nos dados da análise:Campos de análise para regras
A análise de criptomoedas escreve estas chaves nocustom_values da transação, para que as regras as possam usar como custom_values.<key>:
Use
wallet_sanctioned para bloquear transferências para uma carteira sancionada, sem recusar transferências para grandes plataformas de câmbio de criptomoedas que tenham apenas exposição indireta.
Use sanctions_hit ou aml_sanctions_exposure_pct para rever ou pontuar a exposição.
A regra predefinida Contraparte sancionada recusa quando wallet_sanctioned é true, e a regra predefinida Exposição a sanções envia para revisão as carteiras cuja única condição é a exposição.
As duas nunca correspondem à mesma transação, pelo que uma carteira sancionada é sempre recusada.
Se instalou a regra Contraparte sancionada antes desta alteração, a Didit moveu-a para wallet_sanctioned por si e adicionou a Exposição a sanções no mesmo modo, pelo que uma transferência que a regra antiga recusava apenas por exposição passa agora para revisão.
Depois de concluída a análise, a Didit volta a avaliar automaticamente todas as regras com os dados da transação enriquecidos e aciona quaisquer webhooks aplicáveis.
Próximos passos
Envio de transações
Como enviar transações, incluindo os dados da carteira de criptomoedas.
Regras e pontuação
Como os resultados da análise alimentam o motor de regras.
Guia da consola
Visualizar a análise da triagem de criptomoedas, a origem dos fundos e os grafos de rede na consola.