API für wiederverwendete Verifizierungen
Ermöglichen Sie einem Antragsteller, der eine Certivant-Verifizierung bereits anderswo bestanden hat, sie bei Ihnen wiederzuverwenden. Erstellen Sie einen Einwilligungslink, erhalten Sie ein Freigabe-Token für eine einzige Verwendung und lösen Sie es in eine neue, bereits genehmigte Verifizierung ein.
Antragsteller, die bereits eine genehmigte Verifizierung abgeschlossen haben — eine für Privatpersonen oder eine für Unternehmen (KYB) — bei einer anderen Certivant-Organisation, können diese mit Ihrer Organisation teilen. Sie erstellen einen Link, der Antragsteller weist nach, dass die Verifizierung ihm gehört, und willigt ein. Anschließend lösen Sie ein Freigabe-Token für eine einzige Verwendung in eine neue, bereits genehmigte Verifizierung Ihrer Organisation ein. Daten und Dokumentdateien werden in Ihre eigenen Datensätze und Ihren eigenen Speicher kopiert.
Die Endpunkte liegen unter /api/v1/kyc/reuse und verwenden einen API-Schlüssel (Authorization: Bearer ck_live_…). Sie
benötigen die Funktion des Tarifs Wiederverwendete Verifizierungen sowie die Schalter Wiederverwendete Verifizierungen
annehmen (Privatpersonen) und/oder Wiederverwendete Unternehmensverifizierungen annehmen (Unternehmen) in den Einstellungen
unter KYC; beide werden getrennt geschaltet, zeitlich begrenzt und getrennt bepreist. Siehe Authentifizierung.
Ein Schlüssel, der auf bestimmte Formulare beschränkt ist, kann diese Endpunkte nicht verwenden (403 form_not_allowed) —
eine wiederverwendete Verifizierung wird nicht über ein Formular erstellt. Verwenden Sie einen unbeschränkten Schlüssel oder
bieten Sie die Wiederverwendung stattdessen in Ihrem öffentlichen Formular an (siehe unten).
Ablauf
sequenceDiagram
participant You as Your system
participant C as Certivant
participant A as Applicant
You->>C: POST /reuse/invitations
C-->>You: inviteUrl
You->>A: send inviteUrl
A->>C: verification ID + emailed code
A->>C: consent ("Share my verified identity with you")
C-->>A: redirect to redirectUrl?certivant_share=krs_…
A->>You: lands on your page with the token
You->>C: POST /reuse/redeem { shareToken }
C-->>You: new approved verification
Eine Einladung erstellen
POST /api/v1/kyc/reuse/invitations — Berechtigungsbereich kyc:write.
| Feld | Typ | Hinweise |
|---|---|---|
externalRef | string, optional | Ihre Referenz; wird in die neue Verifizierung übernommen. |
redirectUrl | URL, optional | Wohin der Antragsteller nach der Einwilligung zurückkehrt. Das Freigabe-Token wird als ?certivant_share=… angehängt. |
shareTtlMinutes | Ganzzahl, optional | Gültigkeitsdauer des Freigabe-Tokens: Standard 30, maximal 1440 (24 h). |
inviteTtlMinutes | Ganzzahl, optional | Gültigkeitsdauer des Links selbst: Standard 60, 5 Minuten bis 7 Tage. |
type | INDIVIDUAL | BUSINESS, optional | Was geteilt wird; Standard INDIVIDUAL. Der Antragsteller kann nur eine Verifizierung dieses Typs teilen (sonst source_not_individual / source_not_business). BUSINESS setzt Wiederverwendete Unternehmensverifizierungen annehmen voraus. |
{
"id": "clx…",
"inviteUrl": "https://app.certivant.com/reuse/kri_…",
"inviteExpiresAt": "2026-10-24T13:00:00.000Z",
"shareTtlMinutes": 30
}
Eine Einladung verfolgen
GET /api/v1/kyc/reuse/invitations/:id — Berechtigungsbereich kyc:read. Die Antwort enthält außerdem type (INDIVIDUAL
oder BUSINESS). status ist invited, code_sent, verified, consented (ein Token wartet), redeemed, expired oder
revoked. Nach der Einlösung ist requestId die neue Verifizierung. Das Freigabe-Token wird hier nie zurückgegeben; es erreicht
Sie über die Weiterleitung des Antragstellers.
Ein Freigabe-Token einlösen
POST /api/v1/kyc/reuse/redeem — Berechtigungsbereich kyc:write.
{ "shareToken": "krs_…" }
{
"requestId": "clx…",
"applicantId": "clx…",
"status": "APPROVED",
"type": "INDIVIDUAL",
"externalRef": "crm-7",
"reused": true,
"verifiedAt": "2026-09-30T15:12:00.000Z",
"sourceAgeDays": 24,
"documentsCopied": 2,
"chargedCents": 0
}
Regeln:
- Ein Token ist nur einmal verwendbar, läuft nach seiner Gültigkeitsdauer ab und funktioniert nur für die Organisation, die den Link erstellt hat. Jeder andere Aufrufer erhält
404 invalid_token. - Der Aufruf erstellt eine Verifizierung, die bereits genehmigt ist, mit Kopien der Antragstellerdaten, der ausgelesenen Dokumentfelder und der Dokumentdateien (in Ihrem Speicherort). Behält Ihre Organisation nach einer Entscheidung keine Dokumente, werden keine Dateien kopiert.
- Bei einer Unternehmensfreigabe (
type: "BUSINESS"in der Antwort) ist die neue Verifizierung eineBUSINESS-Anfrage, die außerdem den Unternehmensdatensatz und das Ergebnis der Registerabfrage, die Geschäftsführer und wirtschaftlich Berechtigten (ohne die Verknüpfungen zu den eigenen UBO-Verifizierungen der Quelle), die verifizierte Identität des Vertreters und dessen Abgleich mit den Geschäftsführern sowie gegebenenfalls das Vollmachtsdokument enthält. Lesen Sie sie über die üblichen KYB-Endpunkte (GET /v1/kyc/requests/:id/kyb). - Die neue Verifizierung vermerkt den API-Schlüssel, der sie eingelöst hat. Ist dieser Schlüssel auf Workflows beschränkt, laufen für sie nur diese Workflows (siehe Workflow-Beschränkung).
- Ihre üblichen Webhooks werden ausgelöst: ein Ereignis
kyc.request.approvedmitdata.reason: "reused_verification". - Schlägt das Kopieren fehl, wird das Token zurückgegeben (bis es abläuft), und es bleibt nichts zurück.
Fehler
| Status | error.code | Bedeutung |
|---|---|---|
| 402 | plan_feature_required | Ihr Tarif umfasst keine wiederverwendeten Verifizierungen. |
| 402 | credit_needed | Ein Preis für die Wiederverwendung ist festgelegt, und das Guthaben reicht nicht aus. |
| 403 | reuse_not_enabled | Der Annahme-Schalter für diesen Typ (Privatperson / Unternehmen) ist aus. |
| 404 | invalid_token | Unbekanntes Token oder es gehört zu einer anderen Organisation. |
| 409 | token_already_used | Bereits eingelöst. |
| 410 | token_expired | Die Gültigkeitsdauer des Tokens ist abgelaufen. |
| 422 | reuse_refused | error.reason: source_not_approved, source_not_individual, source_not_business, source_expired, source_too_old, source_sharing_disabled, same_tenant oder residency_mismatch. |
| 502 | copy_failed | Versuchen Sie es erneut, solange das Token gültig ist. |
Datenresidenz
Beide Organisationen müssen dieselbe Speicherregion, dieselbe Datenbankregion und dieselbe Residenz für die KI-Verarbeitung
haben (eine nicht gesetzte Region passt nur zu einer anderen nicht gesetzten). Andernfalls wird die Freigabe mit
residency_mismatch abgelehnt — über eine Regionsgrenze hinweg wird nichts kopiert.
Auf einem öffentlichen Formular
Wenn Ihre Organisation wiederverwendete Verifizierungen einer Art annimmt, bietet ein öffentliches KYC-Formular
(Privatperson) oder KYB-Formular (Unternehmen) zu Beginn die Option „Bereits bei Certivant verifiziert?“ an. Der
Antragsteller weist die Inhaberschaft nach (per E-Mail zugesendeter Code) und willigt genauso ein wie oben. Das Formular wird aus
der geteilten Verifizierung vorausgefüllt (er prüft alles und kann es korrigieren; es werden keine Dokumente angefordert), und die
Einreichung wird der neuen, bereits genehmigten wiederverwendeten Verifizierung zugeordnet. Kombinierte KYC- und KYB-Formulare,
Einladungslinks (?kyc=) und Formulare, die keine Verifizierung sind, bieten diese Option nicht an.
Die eigenen Endpunkte des Formulars (öffentlich, ohne API-Schlüssel) lauten, zur Information für den Fall, dass Sie ein Formular selbst einbetten:
| Aufruf | Zweck |
|---|---|
GET /api/kyc/public/forms/:slug/reuse/options | { available, kind } — ob der Einstieg angeboten wird. |
POST /api/kyc/public/forms/:slug/reuse/start | Öffnet eine Einladung für dieses Formular → { token, kind }; der Nachweis und die Einwilligung verwenden anschließend /api/kyc/public/reuse/:token/…. |
POST /api/kyc/public/forms/:slug/reuse/prefill | { shareToken } → { kind, prefill, verified }, ohne einzulösen. |
POST /api/kyc/public/forms/:slug/reuse/submit | { shareToken, data } → löst die Freigabe ein und reicht das Formular ein ({ success, reused, submissionId, kycRequestId, kybRequestId }). |
Ein Formular, das durch einen geheimen Schlüssel geschützt ist, muss ihn bei jedem Aufruf als Header X-Form-Key senden. Eine
für ein Formular erstellte Freigabe kann nur durch die Einreichung dieses Formulars eingelöst werden — nicht über
POST /reuse/redeem (404 invalid_token) — und die neue Verifizierung wird dem Formular zugeordnet.
Abrechnung
Standardmäßig kostenlos. Ein Preis für eine wiederverwendete Verifizierung (Privatpersonen) und ein Preis für eine wiederverwendete Unternehmensverifizierung (Unternehmen) in den Abrechnungspreisen (oder einer Ausnahme pro Kunde) werden der empfangenden Organisation einmal pro eingelöster Freigabe berechnet; der Aufruf ist pro Freigabe idempotent.
Audit
Das Audit-Protokoll der empfangenden Organisation erfasst reuse.invitation_created, reuse.consent_received und reuse.redeemed.
Die Quellorganisation erfasst reuse.consent_recorded und reuse.shared. Die Identität der Quellorganisation wird Ihnen nie offengelegt.
Altersprüfung-API
Schätzen Sie anhand eines Selfies, ob eine Person alt genug ist, mit einem Rückgriff auf das Geburtsdatum aus dem Ausweis, wenn die Schätzung zu nah an der Grenze liegt.
Webhooks einrichten
Schritt-für-Schritt-Anleitung zum Registrieren eines Certivant-Webhook-Endpunkts, zum Speichern des Signaturgeheimnisses, zum Senden eines Testereignisses, zum Rotieren von Geheimnissen und zum Konfigurieren formularspezifischer Überschreibungen.