Tutti e quattro accettano la tua chiave API del client oppure un’intestazione di autorizzazione utente, e tutti e quattro emettono un webhook
data.updated in caso di successo, così il tuo sistema e le analisi a valle restano sincronizzati.
Requisiti comuni
- Autorizzazione — chiave API del client (standard
x-api-key/ bearerAuthorization) oppure token di autenticazione utente. - Privilegio —
- KYC e POA:
write:sessions - Azienda KYB e persona chiave:
write:businesses
- KYC e POA:
- Stato della sessione (solo KYC / POA) — deve essere uno tra
APPROVED,DECLINED,IN_REVIEWoKYC_EXPIRED. Le sessioni che non hanno ancora raggiunto uno stato idoneo alla revisione non possono essere modificate. Gli aggiornamenti dell’azienda KYB non hanno vincoli di stato. - Il record della funzionalità deve esistere — puoi modificare i campi KYC solo se la sessione contiene un record KYC, i campi POA solo se contiene un record POA, e i campi dell’azienda KYB solo se la sessione include un controllo del registro.
- Aggiornamenti parziali — vengono modificati solo i campi che includi. Ometti un campo per lasciarlo invariato. Invia
nullper eliminare una chiave diextra_fields. - Webhook — un aggiornamento riuscito attiva
data.updatedconsession_kind: "user"oppure"business", e il registro di audit della sessione riporta quali campi specifici sono stati modificati e da chi.
Aggiornare i dati di identità KYC
PATCH /v3/session/{sessionId}/update-data/
Modifica qualsiasi campo estratto dal documento d’identità. Supporta i workflow multi-istanza basati su grafo tramite il parametro di query opzionale node_id o il campo nel body: indica un record KYC specifico quando una sessione ha più passaggi KYC.
Campi modificabili
parsed_address accetta solo queste chiavi annidate: address_type, city, region, street_1, street_2, postal_code, country (ISO 3166-1 alpha-2).
Esempio
?node_id=feature_ocr_2 all’URL (oppure passa "node_id": "feature_ocr_2" nel body) per indicare un record KYC specifico.
Aggiornare i dati della Prova di residenza (POA)
PATCH /v3/session/{sessionId}/update-poa-data/
Modifica i campi estratti da un documento di prova di residenza. Stessi vincoli di stato e stesso privilegio degli aggiornamenti KYC. Supporta anche node_id per i workflow multi-istanza.
Campi modificabili
Esempio
Aggiornare i dati di un’azienda KYB
PATCH /v3/session/{sessionId}/kyb/{companyUuid}/update-data/
Correggi i campi estratti dal registro per un’azienda KYB. L’endpoint modifica sia le colonne canoniche dell’azienda sia registry_data, così la vista “Extracted from Registry” della console riflette le tue correzioni. user_provided_data (ciò che l’utente finale ha confermato nel flusso ospitato) non viene modificato. last_console_edit_at viene aggiornato e viene inviato un webhook data.updated con trigger: "console_registry_edit".
Requisiti
- Privilegio:
write:businesses(diverso dal privilegio KYC / POA). - Il
companyUuidnell’URL deve appartenere alsessionIdindicato, altrimenti ottieni un 404. - Nessun vincolo sullo stato della sessione: i dati dell’azienda KYB possono essere corretti in qualsiasi momento.
Campi modificabili
I campi omessi restano invariati. Ogni campo inviato viene scritto nella colonna canonica (quando esiste) e unito a
registry_data. Le date vengono serializzate come stringhe ISO 8601 quando sono unite a registry_data.
Esempio
registry_checks[].company nella decisione della sessione.
Escludere una parte della sezione Key People
PATCH /v3/session/{sessionId}/kyb/parties/{partyUuid}/
Esenta una persona della sezione Key People dalla verifica: è la via d’uscita per una persona che non può mai completare il proprio controllo. La causa più comune è una sessione figlia eliminata: una volta eliminata la KYC individuale assegnata a un titolare effettivo o a un amministratore, il suo stato resta bloccato e non potrà mai concludersi, quindi la KYB non ha più nulla che possa spostarla da Awaiting User. Escludere la persona la rimuove dall’aggregazione Key People, il controllo viene ricalcolato immediatamente e la sessione può concludersi ed essere approvata o rifiutata.
Requisiti
- Privilegio:
write:businesses. - Il
partyUuidnell’URL deve appartenere alsessionIdindicato, altrimenti ottieni un 404. - Non è vincolato da
allow_skip. Quell’impostazione del ruolo limita ciò che il richiedente può escludere mentre compila la schermata Key People ospitata; questo endpoint è l’override dell’operatore, quindi funziona anche sui ruoli che il richiedente non avrebbe potuto escludere.
Corpo della richiesta
requires_verification viene volutamente lasciato invariato, quindi una persona per cui è stato applicato l’override risulta con requires_verification: true e is_skipped: true: il record mostra comunque che le regole richiedevano un controllo.
Esempio
key_people_checks[].submitted.parties[] nella decisione della sessione.
Viene inviato un webhook data.updated con trigger: "console_key_people_skip".
Una persona la cui sessione figlia è stata eliminata viene segnalata nel payload della decisione con
kyc_session_deleted: true (oppure kyb_sub_session_deleted: true per le persone giuridiche),
e il suo kyc_session_url / kyb_sub_session_url viene restituito come
null perché il collegamento non è più valido. L’eliminazione di una sessione figlia non approva
da sola la persona: il controllo Key People passa a In Review, così che sia una persona a decidere.Cosa succede dopo un aggiornamento
- Webhook:
data.updatedviene inviato per la sessione, con ilsession_kinddella sessione nel payload ("user"o"business"). Iscriviti una sola volta a livello di destinazione e smista in base asession_kind. - Registro di controllo: la sessione registra esattamente quali campi sono cambiati, i valori precedenti e quelli nuovi e (per le chiamate con autenticazione utente) l’email dell’attore. Visibile nella scheda Events della console.
- Rigeocodifica dell’indirizzo: per gli aggiornamenti KYC e POA che modificano
address/poa_address, Didit esegue la rigeocodifica in background. Gli errori vengono ignorati, così l’aggiornamento non fallisce mai per un problema di geocodifica. - Rivalutazione AML: gli aggiornamenti KYC che modificano nome / data di nascita / nazionalità possono rilanciare lo screening AML se lo screening AML sulla sessione non era ancora terminato. I risultati compaiono nella decisione della sessione.
Quando non usare questi endpoint
- Ripetere l’intera verifica: se il cliente deve rifare la foto del documento d’identità o ricaricare un documento, usa update-status per portare la sessione in
Resubmitted. - Modificare i campi del profilo dell’entità User o Business: usa
PATCH /v3/users/{vendor_data}/oppurePATCH /v3/businesses/{vendor_data}/; questi endpoint aggiornano i dati a livello di entità, non a livello di sessione. - Modificare i dettagli delle persone Key People: non esiste un’API pubblica per modificare nome, ruoli o assetto proprietario di una persona; questi dati vengono inviati tramite il flusso ospitato. L’unico campo modificabile è
is_skipped(vedi Escludere una parte della sezione Key People).
Errori
Passaggi successivi
Recupera la sessione
Recupera la decisione completa per vedere i campi aggiornati.
Aggiorna lo stato
Approva, rifiuta o riapri una sessione dopo una correzione dei dati.
Webhook
Iscriviti agli eventi
data.updated.