CreateClientDto
Possible values: non-empty and <= 100 characters
Possible values: non-empty and <= 100 characters
Possible values: Value must match regular expression /^\+?\d{6,20}$/
Possible values: >= 3 characters and <= 40 characters
Possible values: non-empty and <= 500 characters
Possible values: non-empty and <= 20 characters
Clients Phase 3 gap 7 — DPPA §11 minimisation. dob is
accepted only when the caller declares why it's needed;
enum captures the lawful purpose so retention + audit can
be justified downstream.
Possible values: [underwriting_age_band, beneficiary_verification, kyc_identity_confirm, other]
Clients Phase 2 gap 4 — DPPA §13 consent capture at create.
Optional at DTO level so ops back-fills / migration paths
can pass through; create() stamps Client.consentAt +
emits client.consent.captured_at_create audit when the
caller provides evidence.
DataTransferConsent id acting as evidence for the DPPA §13 capture.
{
"firstName": "string",
"lastName": "string",
"phone": "string",
"email": "string",
"nationalId": "string",
"dob": "string",
"address": "string",
"gender": "string",
"dobPurpose": "underwriting_age_band",
"consentAt": "string",
"consentEvidenceId": "string"
}