v1

latestOpenAPI 3.0.42026-08-042281222.0 KB
Clients

Submit KYC verification for a client

Submits KYC/AML director verification data for an existing client. Multiple submissions are allowed; the latest record is used for verification checks. When sendChatNotification is true (default), a system message is posted on all active cases for this client to notify the collection partner.

post/clients/{externalTenantId}/kyc-verification

Path parameters

externalTenantIdstring required

Query parameters

sendChatNotificationboolean

Headers

Idempotency-Keystring

Optional idempotency key (max 255 characters) for safely retrying this request. If a previous request used the same key with an identical body, the original terminal response is replayed verbatim. Reusing the key with a different body returns 422 with Type: "IdempotencyConflict". Field-level 400 validation errors are not stored, so you may fix the request and retry with the same key.

Request body

directorFullNamestring required
directorHomeAddressstring required
directorDateOfBirthstring date required

Response

KYC verification submitted

directorFullNamestring nullable
directorHomeAddressstring nullable
directorDateOfBirthstring date
dateCreatedstring date-time
verificationStatus'Processing' | 'Completed'

Partner/staff-settable review status for a Debitura.Domain.Model.Creditors.CreditorKycVerifications.CreditorKycVerification record. Distinct from the ReferralPartnerApi KycStatus enum, which describes whether a client has submitted KYC data at all — this enum describes whether data that has already been submitted has since been reviewed by the collection partner or Debitura staff.

The unset/not-yet-reviewed state is represented by a null Debitura.Domain.Model.Creditors.CreditorKycVerifications.CreditorKycVerification.VerificationStatus column, not a third enum value here. A fresh KYC resubmission (a new row via CreditorKycVerificationService.CreateAsync) naturally leaves this column unset, resetting review status by design.

Wire format is locked to named string values ("Processing", "Completed") via Newtonsoft.Json StringEnumConverter — every host this enum is exposed on (CollectionPartnerApi, CoreApi, ReferralPartnerApi) uses Newtonsoft (AddNewtonsoftJson in Program.cs), so a System.Text.Json JsonStringEnumConverter attribute alone would be silently ignored; both are declared so STJ-based consumers (and our own tests) can also deserialize the string form.

verificationStatusUpdatedAtstring date-time nullable

When Debitura.Web.ReferralPartnerApi.Models.Clients.KycVerificationDto.VerificationStatus was last set. Null until set.