curl -X POST 'https://verification.didit.me/v3/businesses/aml-monitoring/' \
-H 'x-api-key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{"is_enabled": true, "vendor_data_list": ["company-123", "company-456"]}'from didit import Didit
# Reads DIDIT_API_KEY.
client = Didit()
result = client.businesses.set_aml_monitoring(
is_enabled=True,
estimate_only=True,
vendor_data_list=["company-123", "company-456"],
)
print(result)import Didit from "@didit-protocol/sdk-node";
// Reads DIDIT_API_KEY.
const didit = new Didit();
const result = await didit.businesses.setAmlMonitoring({
is_enabled: true,
estimate_only: true,
vendor_data_list: ["company-123", "company-456"],
});
console.log(result);ctx := context.Background()
// Reads DIDIT_API_KEY.
client := didit.NewClient()
result, err := client.Businesses.SetAMLMonitoring(ctx, didit.BusinessesSetAMLMonitoringParams{
IsEnabled: true,
EstimateOnly: didit.Bool(true),
VendorDataList: didit.Some([]string{"company-123", "company-456"}),
})
if err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", result)import java.util.List;
import me.didit.Didit;
import me.didit.types.BusinessesSetAmlMonitoringParams;
// Reads DIDIT_API_KEY.
Didit client = new Didit();
var result = client.businesses().setAmlMonitoring(BusinessesSetAmlMonitoringParams.builder()
.isEnabled(true)
.estimateOnly(true)
.vendorDataList(List.of("company-123", "company-456"))
.build());
System.out.println(result);<?php
require 'vendor/autoload.php';
use Didit\DiditClient;
// Reads DIDIT_API_KEY.
$didit = new DiditClient();
$result = $didit->businesses->setAmlMonitoring([
'is_enabled' => true,
'estimate_only' => true,
'vendor_data_list' => ['company-123', 'company-456'],
]);
print_r($result->toArray());require "didit"
# Reads DIDIT_API_KEY.
didit = Didit::Client.new
result = didit.businesses.set_aml_monitoring(
is_enabled: true,
estimate_only: true,
vendor_data_list: ["company-123", "company-456"]
)
puts result.to_husing System;
using System.Text.Json;
using Didit;
// Reads DIDIT_API_KEY.
using var client = new DiditClient();
var result = await client.Businesses.SetAmlMonitoringAsync(new BusinessesSetAmlMonitoringParams
{
IsEnabled = true,
EstimateOnly = true,
VendorDataList = new string[] { "company-123", "company-456" },
});
Console.WriteLine(JsonSerializer.Serialize(result));{
"users_total": 123,
"already_enabled": 123,
"with_existing_aml": 123,
"needing_screening": 123,
"skipped_no_identity_data": 123,
"skipped_blocked": 123,
"estimated_screening_cost_usd": 0.2,
"estimated_annual_monitoring_cost_usd": 0.07,
"balance_sufficient": true,
"unmatched": [
"<string>"
]
}{
"job_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "PENDING",
"is_enabled": true,
"target_type": "user",
"total": 123,
"processed": 123,
"outcomes": {
"enabled": 123,
"screened_and_enabled": 123,
"already_enabled": 123,
"disabled": 123,
"skipped_no_identity_data": 123,
"skipped_blocked": 123,
"skipped_sandbox": 123,
"failed_provider": 123,
"failed_insufficient_balance": 123
},
"results": [
{
"didit_internal_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"vendor_data": "<string>",
"outcome": "enabled"
}
],
"error": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"completed_at": "2023-11-07T05:31:56Z",
"estimate": {
"users_total": 123,
"already_enabled": 123,
"with_existing_aml": 123,
"needing_screening": 123,
"skipped_no_identity_data": 123,
"skipped_blocked": 123,
"estimated_screening_cost_usd": 0.2,
"estimated_annual_monitoring_cost_usd": 0.07,
"balance_sufficient": true
},
"unmatched": [
"<string>"
]
}{
"error": "<string>",
"estimate": {
"users_total": 123,
"already_enabled": 123,
"with_existing_aml": 123,
"needing_screening": 123,
"skipped_no_identity_data": 123,
"skipped_blocked": 123,
"estimated_screening_cost_usd": 0.2,
"estimated_annual_monitoring_cost_usd": 0.07,
"balance_sufficient": true
}
}Monitoraggio AML aziende: attivare o disattivare via API
Attiva o disattiva il monitoraggio AML continuo per più aziende con una sola chiamata, con stima dei costi in dry-run, job interrogabile ed esito per azienda.
curl -X POST 'https://verification.didit.me/v3/businesses/aml-monitoring/' \
-H 'x-api-key: YOUR_API_KEY' \
-H 'Content-Type: application/json' \
-d '{"is_enabled": true, "vendor_data_list": ["company-123", "company-456"]}'from didit import Didit
# Reads DIDIT_API_KEY.
client = Didit()
result = client.businesses.set_aml_monitoring(
is_enabled=True,
estimate_only=True,
vendor_data_list=["company-123", "company-456"],
)
print(result)import Didit from "@didit-protocol/sdk-node";
// Reads DIDIT_API_KEY.
const didit = new Didit();
const result = await didit.businesses.setAmlMonitoring({
is_enabled: true,
estimate_only: true,
vendor_data_list: ["company-123", "company-456"],
});
console.log(result);ctx := context.Background()
// Reads DIDIT_API_KEY.
client := didit.NewClient()
result, err := client.Businesses.SetAMLMonitoring(ctx, didit.BusinessesSetAMLMonitoringParams{
IsEnabled: true,
EstimateOnly: didit.Bool(true),
VendorDataList: didit.Some([]string{"company-123", "company-456"}),
})
if err != nil {
log.Fatal(err)
}
fmt.Printf("%+v\n", result)import java.util.List;
import me.didit.Didit;
import me.didit.types.BusinessesSetAmlMonitoringParams;
// Reads DIDIT_API_KEY.
Didit client = new Didit();
var result = client.businesses().setAmlMonitoring(BusinessesSetAmlMonitoringParams.builder()
.isEnabled(true)
.estimateOnly(true)
.vendorDataList(List.of("company-123", "company-456"))
.build());
System.out.println(result);<?php
require 'vendor/autoload.php';
use Didit\DiditClient;
// Reads DIDIT_API_KEY.
$didit = new DiditClient();
$result = $didit->businesses->setAmlMonitoring([
'is_enabled' => true,
'estimate_only' => true,
'vendor_data_list' => ['company-123', 'company-456'],
]);
print_r($result->toArray());require "didit"
# Reads DIDIT_API_KEY.
didit = Didit::Client.new
result = didit.businesses.set_aml_monitoring(
is_enabled: true,
estimate_only: true,
vendor_data_list: ["company-123", "company-456"]
)
puts result.to_husing System;
using System.Text.Json;
using Didit;
// Reads DIDIT_API_KEY.
using var client = new DiditClient();
var result = await client.Businesses.SetAmlMonitoringAsync(new BusinessesSetAmlMonitoringParams
{
IsEnabled = true,
EstimateOnly = true,
VendorDataList = new string[] { "company-123", "company-456" },
});
Console.WriteLine(JsonSerializer.Serialize(result));{
"users_total": 123,
"already_enabled": 123,
"with_existing_aml": 123,
"needing_screening": 123,
"skipped_no_identity_data": 123,
"skipped_blocked": 123,
"estimated_screening_cost_usd": 0.2,
"estimated_annual_monitoring_cost_usd": 0.07,
"balance_sufficient": true,
"unmatched": [
"<string>"
]
}{
"job_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "PENDING",
"is_enabled": true,
"target_type": "user",
"total": 123,
"processed": 123,
"outcomes": {
"enabled": 123,
"screened_and_enabled": 123,
"already_enabled": 123,
"disabled": 123,
"skipped_no_identity_data": 123,
"skipped_blocked": 123,
"skipped_sandbox": 123,
"failed_provider": 123,
"failed_insufficient_balance": 123
},
"results": [
{
"didit_internal_id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"vendor_data": "<string>",
"outcome": "enabled"
}
],
"error": "<string>",
"created_at": "2023-11-07T05:31:56Z",
"completed_at": "2023-11-07T05:31:56Z",
"estimate": {
"users_total": 123,
"already_enabled": 123,
"with_existing_aml": 123,
"needing_screening": 123,
"skipped_no_identity_data": 123,
"skipped_blocked": 123,
"estimated_screening_cost_usd": 0.2,
"estimated_annual_monitoring_cost_usd": 0.07,
"balance_sufficient": true
},
"unmatched": [
"<string>"
]
}{
"error": "<string>",
"estimate": {
"users_total": 123,
"already_enabled": 123,
"with_existing_aml": 123,
"needing_screening": 123,
"skipped_no_identity_data": 123,
"skipped_blocked": 123,
"estimated_screening_cost_usd": 0.2,
"estimated_annual_monitoring_cost_usd": 0.07,
"balance_sufficient": true
}
}Panoramica
Attiva o disattiva il monitoraggio AML continuo per le entità Business selezionate, esattamente come fa l’azione Monitoraggio AML continuo nella Business Console. La Console e questo endpoint eseguono la stessa operazione sottostante, quindi regole, fatturazione ed esiti sono identici. Invia primaestimate_only: true per vedere quante aziende sono selezionate, quante richiedono un nuovo screening AML, il costo una tantum dello screening e il costo annuo del monitoraggio. Un’esecuzione di prova non scrive nulla. La stima usa gli stessi nomi di campo dell’endpoint degli utenti, quindi users_total indica il numero di aziende selezionate.
Come viene elaborata una selezione
- Un solo screening monitorato per azienda. Un’azienda verificata più volte viene monitorata e fatturata una sola volta. La disattivazione interrompe il monitoraggio su tutti gli screening di quell’azienda.
- Le aziende senza screening AML vengono prima sottoposte a screening. Didit crea per loro una nuova verifica AML (visibile nella scheda Verifiche dell’azienda), fatturata come un normale screening AML, e attiva il monitoraggio su di essa. Lo screening usa la ragione sociale (o il nome visualizzato) e il paese dell’azienda; un’azienda senza alcun nome viene segnalata come
skipped_no_identity_datainvece di essere scartata in silenzio. - Le applicazioni in sandbox non creano mai screening (
skipped_sandbox). - Il saldo viene verificato in anticipo. L’attivazione viene rifiutata con
403quando il saldo non copre la stima, e la risposta include la stima così sai quanto ricaricare. - Rinnovo annuale. Un’azienda appena monitorata viene fatturata al prezzo annuale del monitoraggio alla sua prossima data di rinnovo, la stessa data che la Console mostra nella colonna Monitoraggio continuo. La disattivazione interrompe il rinnovo; non rimborsa un periodo già fatturato.
Selezione e dimensione del batch
Seleziona le aziende convendor_data_list, didit_internal_id_list, oppure entrambi; le due liste sono combinate con OR. Una richiesta accetta al massimo 1000 identificativi in totale sulle due liste. Gli identificativi che non corrispondono ad alcuna azienda della tua applicazione vengono restituiti in unmatched, esattamente come inviati, e non fanno mai fallire la richiesta: una selezione che non corrisponde a nessuna azienda si completa come job vuoto (total: 0) con tutti gli identificativi elencati, la stessa convenzione degli endpoint di eliminazione in batch.
Elaborazione immediata o in background
Le selezioni di 20 aziende o meno vengono elaborate immediatamente e la chiamata restituisce200 con il job completato. Le selezioni più grandi restituiscono 202 con un job PENDING; interroga Recupera job di monitoraggio AML finché status non diventa COMPLETED o FAILED. In entrambi i casi il job contiene una voce results per azienda con il relativo outcome.
outcome | Significato |
|---|---|
enabled | Monitoraggio attivato su uno screening AML esistente. |
screened_and_enabled | È stato creato un nuovo screening AML (fatturato) e su di esso è stato attivato il monitoraggio. |
already_enabled | Il monitoraggio era già attivo; nulla è stato modificato, nulla è stato fatturato. |
disabled | Monitoraggio disattivato su tutti gli screening dell’azienda. |
skipped_no_identity_data | L’azienda non ha una ragione sociale o un nome visualizzato da sottoporre a screening. |
skipped_sandbox | Applicazione in sandbox; non viene creato alcuno screening. |
failed_provider | Lo screening non è stato completato. Riprova più tardi. |
failed_insufficient_balance | Il saldo si è esaurito durante l’esecuzione del job. |
Webhook
Attivare o disattivare il monitoraggio non emette un webhook dedicato. Una volta attivo il monitoraggio, le ripetizioni dello screening continuano a generare i consueti eventistatus.updated e data.updated descritti in Monitoraggio AML continuo.
Permessi
Qualsiasi chiave API attiva dell’applicazione può chiamare questo endpoint. Le chiavi API di Didit sono limitate all’applicazione, non al ruolo: i ruoli e i permessi della Console determinano cosa una persona può fare nella Console e non vengono valutati per il traffico della Management API.Correlati
- Recupera job di monitoraggio AML
- Attiva o disattiva il monitoraggio AML per gli utenti
- Monitoraggio AML continuo
- Screening AML aziendale
- Elenca aziende
Autorizzazioni
La chiave API della tua applicazione, da Developers -> API keys nella Business Console. La chiave primaria ha accesso completo. Una chiave con nome può avere un ambito definito: nessuno, lettura o scrittura per risorsa, limitata ad alcuni workflow o a sessioni approvate, a un elenco di indirizzi IP e a una data di scadenza. 401 indica che la chiave è errata, revocata o scaduta; 403 indica che non è stata inviata alcuna chiave, che la chiave non ha accesso a questa risorsa o azione, oppure che la richiesta proviene da un indirizzo non incluso nel suo elenco IP; 404 su una route di sessione indica che la sessione non rientra nei workflow o negli stati previsti dalla chiave. Una chiave senza accesso ai media riceve gli URL di immagini, video e PDF come null, e una chiave senza permessi di scrittura sulle sessioni riceve link e token di sessione come null. Consulta https://docs.didit.me/console/api-keys.
Corpo
Seleziona le aziende con vendor_data_list, didit_internal_id_list o entrambi (i due elenchi vengono combinati con OR). Al massimo 1000 identificatori per richiesta considerando entrambi gli elenchi.
true per abilitare il monitoraggio, false per disabilitarlo.
Se true, restituisce la stima dei costi e non esegue scritture: nessuno screening, nessuna fatturazione, nessun job.
I tuoi identificatori delle aziende da attivare/disattivare, confrontati esattamente come inviati.
ID interni Didit delle aziende da attivare o disattivare: il didit_internal_id restituito dagli endpoint di creazione, recupero ed elenco.
Risposta
La stima (quando estimate_only è true) o il processo completato per una selezione elaborata in linea.
- Option 1
- Option 2
Anteprima dei costi. Restituita direttamente quando estimate_only è true (non viene scritto nulla).
Profili corrispondenti alla selezione.
Profili già monitorati (nessuna operazione da eseguire durante l'abilitazione; sono quelli che vengono disattivati quando si disabilita il monitoraggio).
Profili il cui Screening AML esistente verrà impostato come monitorato (nessun nuovo screening).
Profili senza alcuno Screening AML che verranno prima sottoposti a screening (fatturati come normale Screening AML).
Profili di cui non è possibile effettuare lo screening a causa della mancanza dei dati di identità.
Utenti bloccati che verranno saltati (sempre 0 per le aziende).
Costo una tantum dei nuovi screening.
0.2
Costo annuale di monitoraggio dei profili che passeranno a essere monitorati.
0.07
Indica se il saldo dell'organizzazione copre lo screening e il primo anno di monitoraggio.
Identificatori della richiesta che non hanno trovato corrispondenza con alcun profilo in questa applicazione, esattamente come inviati.