Schémas : applications
Schémas dont la première opération qui les emploie appartient à la famille applications. Un schéma partagé est décrit une seule fois, ici, et lié depuis toutes les opérations qui l'emploient.
Les descriptions viennent du contrat, rédigé en français. Elles sont reproduites telles quelles pour rester la source de vérité.
ApplicantHistoryItemOut
Dossier anterieur du demandeur : recommandation et decision, sans donnees saisies.
Type : object
| Propriété | Type | Requis | Description | Contraintes |
|---|---|---|---|---|
application | ApplicationSummaryOut | oui | ||
evaluated_at | string (date-time) | null | oui | ||
evaluation_outcome | "approve" | "approve_with_conditions" | "review" | "decline" | null | oui | ||
evaluation_score | integer | null | oui | ||
human_decided_at | string (date-time) | null | oui | ||
human_outcome | HumanOutcome | null | oui |
Employé par : applicationsApplicantHistory
ApplicantHistoryOut
Historique du demandeur (Specifications A.8), recents d'abord, borne.
Type : object
| Propriété | Type | Requis | Description | Contraintes |
|---|---|---|---|---|
items | array<ApplicantHistoryItemOut> | oui | ||
limit | integer | oui |
Employé par : applicationsApplicantHistory
ApplicationCreateIn
Creation d'un dossier. `requested_amount` et `term_months` sont requis dans `data`.
Type : object
| Propriété | Type | Requis | Description | Contraintes |
|---|---|---|---|---|
applicant_kind | "natural_person" | "legal_entity" | oui | ||
applicant_reference | string | oui | minLength: 1 ; maxLength: 64 | |
data | map<string, string | boolean | null> | oui | maxProperties: 128 | |
product_id | string (uuid) | oui |
Employé par : applicationsCreate
ApplicationDetailOut
Dossier complet : saisie, completude, politique, evaluations, decisions humaines.
Type : object
| Propriété | Type | Requis | Description | Contraintes |
|---|---|---|---|---|
applicant_kind | "natural_person" | "legal_entity" | oui | ||
applicant_reference | string | oui | ||
channel | "desk" | "api" | "import" | oui | ||
completeness | CompletenessOut | null | oui | ||
created_at | string (date-time) | oui | ||
created_by | string (uuid) | null | oui | ||
currency | string | oui | ||
data | map<string, string | boolean | null> | oui | ||
evaluations | array<EvaluationSummaryOut> | oui | ||
human_decisions | array<HumanDecisionOut> | oui | ||
id | string (uuid) | oui | ||
policy_id | string (uuid) | null | oui | ||
product_id | string (uuid) | oui | ||
purged_at | string (date-time) | null | non | Donnees d'entree purgees (ADR-0062) : saisie vide, reference du demandeur effacee si plus aucun de ses dossiers n'est intact ; la trace demeure. | |
reevaluable | boolean | oui | ||
reference | string | oui | ||
requested_amount | string | oui | ||
row_version | integer | oui | ||
status | "draft" | "submitted" | "escalated" | "decided" | oui | ||
submitted_at | string (date-time) | null | oui | ||
term_months | integer | oui | ||
updated_at | string (date-time) | oui |
Employé par : applicationsCreate, applicationsGet, applicationsReevaluate, applicationsSubmit, applicationsUpdate
ApplicationFormOut
Formulaire de saisie d'un produit.
Type : object
| Propriété | Type | Requis | Description | Contraintes |
|---|---|---|---|---|
fields | array<InputFieldOut> | oui | ||
product | DeskProductOut | oui |
Employé par : deskProductForm
ApplicationPageOut
Une page de la liste de travail.
Type : object
| Propriété | Type | Requis | Description | Contraintes |
|---|---|---|---|---|
items | array<WorklistItemOut> | oui | ||
limit | integer | oui | ||
offset | integer | oui | ||
total | integer | oui |
Employé par : applicationsList
ApplicationSummaryOut
Ligne de la liste de travail.
Type : object
| Propriété | Type | Requis | Description | Contraintes |
|---|---|---|---|---|
applicant_kind | "natural_person" | "legal_entity" | oui | ||
applicant_reference | string | oui | ||
channel | "desk" | "api" | "import" | oui | ||
created_at | string (date-time) | oui | ||
created_by | string (uuid) | null | oui | ||
currency | string | oui | ||
id | string (uuid) | oui | ||
product_id | string (uuid) | oui | ||
purged_at | string (date-time) | null | non | Donnees d'entree purgees (ADR-0062) : saisie vide, reference du demandeur effacee si plus aucun de ses dossiers n'est intact ; la trace demeure. | |
reference | string | oui | ||
requested_amount | string | oui | ||
row_version | integer | oui | ||
status | "draft" | "submitted" | "escalated" | "decided" | oui | ||
submitted_at | string (date-time) | null | oui | ||
term_months | integer | oui | ||
updated_at | string (date-time) | oui |
Employé par : applicationsApplicantHistory
ApplicationUpdateIn
Remplacement complet de la saisie d'un brouillon.
Type : object
| Propriété | Type | Requis | Description | Contraintes |
|---|---|---|---|---|
data | map<string, string | boolean | null> | oui | maxProperties: 128 | |
row_version | integer | oui | minimum: 1 |
Employé par : applicationsUpdate
BinScaleOut
Tranche d'une variable : ses bornes, ses modalites ou l'absence de donnee.
Type : object
| Propriété | Type | Requis | Description | Contraintes |
|---|---|---|---|---|
categories | array<string> | oui | ||
id | string | oui | ||
max | string | null | oui | ||
max_inclusive | boolean | oui | ||
min | string | null | oui | ||
min_inclusive | boolean | oui | ||
missing | boolean | oui | ||
points | integer | null | oui | Points de la tranche ; null si l'appelant ne detient pas scorecard.read (ADR-0044). |
Employé par : evaluationsGet, policiesSimulate
CharacteristicScaleOut
Variable de la grille : son unite et ses tranches. De quoi ecrire « de 6 a 24 mois » ou « moins de 33 % » au lieu de `6m_to_24m` ou `under_33pct` : l'ecran met en forme, il ne devine rien.
Type : object
| Propriété | Type | Requis | Description | Contraintes |
|---|---|---|---|---|
bins | array<BinScaleOut> | oui | ||
feature | string | oui | ||
unit | string | oui |
Employé par : evaluationsGet, policiesSimulate
CommunicableExplanationOut
Niveau 2 : motifs communicables au demandeur, a valider par une personne.
Type : object
| Propriété | Type | Requis | Description | Contraintes |
|---|---|---|---|---|
kind | "approval" | "review" | "decline" | "complement_request" | oui | ||
reasons | array<string> | oui | ||
status | "draft_requires_human_validation" | "insufficient_reasons_requires_human_drafting" | oui |
Employé par : evaluationsGet
CompletenessOut
Completude sous la politique qui regit le dossier.
Type : object
| Propriété | Type | Requis | Description | Contraintes |
|---|---|---|---|---|
missing | array<string> | oui | ||
not_applicable | array<string> | oui | ||
ratio | string | oui |
Employé par : applicationsCreate, applicationsGet, applicationsReevaluate, applicationsSubmit, applicationsUpdate
ConditionOut
Condition recommandee (etage 5), lue dans la trace (ADR-0031, addendum 2026-10-15). `missing_parameters` : parametres de politique non fixes - la politique est en cause. `missing_inputs` : operandes que les donnees du dossier ne permettent pas de calculer (`income`, `charges`, `term`...) - le dossier est en cause, pas la politique. `missing_unclassified` : evaluation du moteur `nexclara-core/1.0.0`, qui ne distinguait pas les deux natures ; les deux champs precedents sont alors vides.
Type : object
| Propriété | Type | Requis | Description | Contraintes |
|---|---|---|---|---|
basis | array<string> | oui | ||
missing_inputs | array<string> | oui | ||
missing_parameters | array<string> | oui | ||
missing_unclassified | array<string> | oui | ||
status | "computed" | "not_parameterized" | "missing_input" | oui | ||
type | "max_amount" | "max_term_months" | "guarantee" | oui | ||
value | any | oui |
Employé par : evaluationsGet, policiesSimulate
ContributionOut
Points d'une variable ou d'un ajustement, relatifs a la modalite neutre.
Type : object
| Propriété | Type | Requis | Description | Contraintes |
|---|---|---|---|---|
bin | string | null | oui | ||
direction | "favourable" | "unfavourable" | "neutral" | oui | ||
id | string | oui | ||
points | integer | oui | ||
source | "characteristic" | "adjustment" | "scale_bound" | oui | ||
unit | string | null | oui | ||
value | any | oui |
Employé par : evaluationsGet, policiesSimulate
DeskProductOut
Produit ouvert a la saisie, et la politique qui le regit.
Type : object
| Propriété | Type | Requis | Description | Contraintes |
|---|---|---|---|---|
applicant_scope | "natural_person" | "legal_entity" | "both" | oui | ||
category | CreditProductCategory | oui | ||
code | string | oui | ||
currency | string | oui | ||
id | string (uuid) | oui | ||
name | string | oui | ||
name_en | string | null | oui | ||
policy_code | string | oui | ||
policy_id | string (uuid) | oui | ||
policy_version | integer | oui |
Employé par : deskProductForm, deskProducts
DeviationReason
Motif codifie d'un ecart, compte par le suivi des ecarts (VISION, CONTROL).
Type : string
Valeurs admises : additional_information, guarantee_provided, relationship_history, data_quality, risk_concern, policy_exception, other
Employé par : applicationsCreate, applicationsDecide, applicationsEscalate, applicationsGet, applicationsReevaluate, applicationsSubmit, applicationsUpdate
EvaluationOut
Evaluation enregistree, complete.
Type : object
| Propriété | Type | Requis | Description | Contraintes |
|---|---|---|---|---|
application_id | string (uuid) | oui | ||
as_of | string (date) | oui | ||
completeness | string | oui | ||
conditions | array<ConditionOut> | oui | ||
confidence | "high" | "medium" | "low" | "not_applicable" | oui | ||
decided_at | string (date-time) | oui | ||
engine_version | string | oui | ||
explanation | ExplanationOut | oui | ||
forced_reviews | array<string> | oui | ||
grid_score | integer | null | oui | ||
id | string (uuid) | oui | ||
inputs_fingerprint | string | oui | ||
inputs_purged_at | string (date-time) | null | non | Entrees brutes purgees (ADR-0062) : la reconstitution n'est plus possible. | |
outcome | "approve" | "approve_with_conditions" | "review" | "decline" | oui | ||
policy_fingerprint | string | oui | ||
policy_id | string (uuid) | oui | ||
requested_by | string (uuid) | null | oui | ||
result_fingerprint | string | oui | ||
scales | array<CharacteristicScaleOut> | oui | ||
score | integer | null | oui | ||
supersedes_evaluation_id | string (uuid) | null | oui | ||
trace | object | oui | ||
zone_outcome | "approve" | "approve_with_conditions" | "review" | "decline" | null | oui |
Employé par : evaluationsGet
EvaluationSummaryOut
Evaluation, sans sa trace.
Type : object
| Propriété | Type | Requis | Description | Contraintes |
|---|---|---|---|---|
confidence | "high" | "medium" | "low" | "not_applicable" | oui | ||
decided_at | string (date-time) | oui | ||
id | string (uuid) | oui | ||
outcome | "approve" | "approve_with_conditions" | "review" | "decline" | oui | ||
policy_id | string (uuid) | oui | ||
score | integer | null | oui | ||
supersedes_evaluation_id | string (uuid) | null | oui |
Employé par : applicationsCreate, applicationsGet, applicationsReevaluate, applicationsSubmit, applicationsUpdate
EvidenceBundleOut
Fichier de preuve `nexclara-decision-evidence@2`, en forme canonique `nexclara-jcs@1`. Les octets servis sont la forme canonique : les empreintes du manifeste se recalculent sur chaque partie. La forme detaillee est documentee dans `docs/product/features/dossier-de-preuve.md` ; le verificateur independant est `scripts/verify_decision_evidence.py`.
Type : object
| Propriété | Type | Requis | Description | Contraintes |
|---|---|---|---|---|
format | "nexclara-decision-evidence@2" | "nexclara-destruction-attestation@1" | "nexclara-subject-access-report@1" | "nexclara-compliance-report@1" | oui | ||
manifest | object | oui | Parties, empreintes SHA-256, statut, lacunes, droits et limites. | |
manifest_sha256 | string | oui | Empreinte du manifeste canonique. | |
parts | object | oui | Contenu des seules parties incluses. | |
signature | EvidenceSignatureOut | null | oui | Absente si aucune cle d'instance n'est configuree ; le manifeste le dit. |
Employé par : applicationsExportEvidence, trustAccessReport, trustExportComplianceReport, trustPurgeAttestation
EvidenceSignatureOut
Signature Ed25519 du manifeste par la cle de l'instance.
Type : object
| Propriété | Type | Requis | Description | Contraintes |
|---|---|---|---|---|
algorithm | "ed25519" | oui | ||
context | "NEXCLARA-EVIDENCE-SIGNATURE-V1" | oui | Prefixe signe avant le manifeste canonique, suivi d'un saut de ligne. | |
instance_id | string (uuid) | null | oui | ||
key_id | string | oui | ||
public_key | string | oui | Cle publique jointe pour commodite : elle ne s'authentifie pas elle-meme. La cle de confiance est celle que CONTROL tient pour l'instance. | |
value | string | oui | Signature, base64url sans remplissage (64 octets). |
Employé par : applicationsExportEvidence, trustAccessReport, trustExportComplianceReport, trustPurgeAttestation
ExclusionOut
Regle d'exclusion declenchee.
Type : object
| Propriété | Type | Requis | Description | Contraintes |
|---|---|---|---|---|
derogation_role | string | null | oui | ||
id | string | oui | ||
reason_code | string | oui |
Employé par : evaluationsGet, policiesSimulate
ExplanationOut
Les trois niveaux, issus de la meme evaluation.
Type : object
| Propriété | Type | Requis | Description | Contraintes |
|---|---|---|---|---|
audit | object | oui | ||
communicable | CommunicableExplanationOut | oui | ||
operational | OperationalExplanationOut | oui |
Employé par : evaluationsGet
HumanDecisionIn
Decision d'une personne. Un ecart exige `reason` ET `motive` (RG-DESK-02).
Type : object
| Propriété | Type | Requis | Description | Contraintes |
|---|---|---|---|---|
approved_amount | string | null | non | pattern: "^\\d{1,16}(\\.\\d{1,2})?$" | |
motive | string | null | non | maxLength: 2000 | |
outcome | HumanOutcome | oui | ||
reason | DeviationReason | null | non | ||
row_version | integer | oui | minimum: 1 |
Employé par : applicationsDecide
HumanDecisionOut
Decision ou transmission enregistree, avec ce que la personne avait sous les yeux.
Type : object
| Propriété | Type | Requis | Description | Contraintes |
|---|---|---|---|---|
approved_amount | string | null | oui | ||
committed_amount | string | oui | ||
currency | string | oui | ||
decided_at | string (date-time) | oui | ||
decided_by | string (uuid) | oui | ||
delegation_limit | string | null | oui | ||
deviation | boolean | oui | ||
evaluation_id | string (uuid) | oui | ||
id | string (uuid) | oui | ||
kind | "decision" | "escalation" | oui | ||
motive | string | null | oui | ||
outcome | "approve" | "approve_with_conditions" | "decline" | null | oui | ||
reason | DeviationReason | null | oui | ||
recommended_outcome | "approve" | "approve_with_conditions" | "review" | "decline" | oui |
Employé par : applicationsCreate, applicationsDecide, applicationsEscalate, applicationsGet, applicationsReevaluate, applicationsSubmit, applicationsUpdate
HumanOutcome
Issue decidee par une personne. La revue n'en est pas une : c'est un etat d'attente.
Type : string
Valeurs admises : approve, approve_with_conditions, decline
Employé par : applicationsApplicantHistory, applicationsDecide
InputFieldOut
Champ du contrat de donnees. Son libelle vient des catalogues de l'interface.
Type : object
| Propriété | Type | Requis | Description | Contraintes |
|---|---|---|---|---|
categories | array<string> | oui | ||
code | string | oui | ||
conditional | boolean | oui | ||
framed | boolean | oui | ||
integer | boolean | oui | ||
maximum | string | null | oui | ||
minimum | string | null | oui | ||
scale | integer | oui | ||
section | string | oui | ||
type | "number" | "boolean" | "category" | oui | ||
unit | string | oui |
Employé par : deskProductForm
LeverOut
Tranche voisine qui, seule, ferait changer l'issue de zone.
Type : object
| Propriété | Type | Requis | Description | Contraintes |
|---|---|---|---|---|
feature | string | oui | ||
from_bin | string | null | oui | ||
points_gain | integer | oui | ||
to_bin | string | oui | ||
zone_outcome_reached | "approve" | "approve_with_conditions" | "review" | "decline" | oui |
Employé par : evaluationsGet, policiesSimulate
MissingDataOut
Variable de la grille sans valeur, et pourquoi.
Type : object
| Propriété | Type | Requis | Description | Contraintes |
|---|---|---|---|---|
bin | string | null | oui | ||
feature | string | oui | ||
reason | string | oui |
Employé par : evaluationsGet, policiesSimulate
OperationalExplanationOut
Niveau 1 : pour l'analyste.
Type : object
| Propriété | Type | Requis | Description | Contraintes |
|---|---|---|---|---|
completeness | string | oui | ||
confidence | "high" | "medium" | "low" | "not_applicable" | oui | ||
contribution_notice | string | oui | ||
dominant_factors | array<ContributionOut> | oui | ||
exclusions_not_evaluable | array<UnevaluableExclusionOut> | oui | ||
exclusions_triggered | array<ExclusionOut> | oui | ||
forced_reviews | array<string> | oui | ||
levers | array<LeverOut> | oui | ||
missing_data | array<MissingDataOut> | oui | ||
outcome | "approve" | "approve_with_conditions" | "review" | "decline" | oui | ||
scale | ScaleOut | oui | ||
score | integer | null | oui | ||
unscorable | array<string> | oui | ||
warnings | array<string> | oui | ||
zone_outcome | "approve" | "approve_with_conditions" | "review" | "decline" | null | oui | ||
zones | array<ZoneOut> | oui |
Employé par : evaluationsGet, policiesSimulate
ReconstitutionOut
Le calcul refait egale-t-il le calcul enregistre.
Type : object
| Propriété | Type | Requis | Description | Contraintes |
|---|---|---|---|---|
current_engine_version | string | oui | ||
evaluation_id | string (uuid) | oui | ||
matches | boolean | oui | ||
policy_fingerprint_matches | boolean | oui | ||
recomputed_fingerprint | string | oui | ||
stored_engine_version | string | oui | ||
stored_fingerprint | string | oui |
Employé par : evaluationsReconstitute
RowVersionIn
Ecriture sans autre donnee que la version lue.
Type : object
| Propriété | Type | Requis | Description | Contraintes |
|---|---|---|---|---|
row_version | integer | oui | minimum: 1 |
Employé par : applicationsEscalate, applicationsReevaluate, applicationsSubmit, policiesApprove, policiesArchive
ScaleOut
Bornes de l'echelle de score.
Type : object
| Propriété | Type | Requis | Description | Contraintes |
|---|---|---|---|---|
max | integer | oui | ||
min | integer | oui |
Employé par : evaluationsGet, policiesSimulate
UnevaluableExclusionOut
Regle d'exclusion non evaluable faute de donnee.
Type : object
| Propriété | Type | Requis | Description | Contraintes |
|---|---|---|---|---|
id | string | oui | ||
inputs_read | array<string> | oui |
Employé par : evaluationsGet, policiesSimulate
WorklistItemOut
Ligne de la liste de travail : le dossier et sa derniere recommandation du moteur.
Type : object
| Propriété | Type | Requis | Description | Contraintes |
|---|---|---|---|---|
applicant_kind | "natural_person" | "legal_entity" | oui | ||
applicant_reference | string | oui | ||
channel | "desk" | "api" | "import" | oui | ||
created_at | string (date-time) | oui | ||
created_by | string (uuid) | null | oui | ||
currency | string | oui | ||
evaluated_at | string (date-time) | null | oui | ||
evaluation_outcome | "approve" | "approve_with_conditions" | "review" | "decline" | null | oui | Issue recommandee par la derniere evaluation ; null si jamais evalue. | |
evaluation_score | integer | null | oui | Score de la derniere evaluation ; null sans score (exclusion, non calculable). | |
id | string (uuid) | oui | ||
product_id | string (uuid) | oui | ||
purged_at | string (date-time) | null | non | Donnees d'entree purgees (ADR-0062) : saisie vide, reference du demandeur effacee si plus aucun de ses dossiers n'est intact ; la trace demeure. | |
reference | string | oui | ||
requested_amount | string | oui | ||
row_version | integer | oui | ||
status | "draft" | "submitted" | "escalated" | "decided" | oui | ||
submitted_at | string (date-time) | null | oui | ||
term_months | integer | oui | ||
updated_at | string (date-time) | oui |
Employé par : applicationsList
ZoneOut
Zone de decision de la politique.
Type : object
| Propriété | Type | Requis | Description | Contraintes |
|---|---|---|---|---|
max | string | null | oui | ||
max_inclusive | boolean | oui | ||
min | string | null | oui | ||
min_inclusive | boolean | oui | ||
outcome | "approve" | "approve_with_conditions" | "review" | "decline" | oui |
Employé par : evaluationsGet, policiesSimulate