Constitution
A bank report's constitution wraps the founding document for the organization plus three server‑generated overview PDFs that describe the organization at the time of the report. It's the canonical record of "who the organization is" and "who runs it" at the moment of submission.
The five files
constitution exposes five EncryptedBlobFile fields. Two are the founding document itself; three are derived summaries produced server‑side during packaging.
| Field | Role | Nullable |
|---|---|---|
originalFile | The unsigned constitution PDF prepared for signing. | No — populated when packaging starts. |
signedFile | The signed version of the constitution. | Yes — null until every required signatory has signed. |
overviewFile | Generated PDF with an overview of the organization and its administrators. | No |
pepFile | Generated PDF with data about politically exposed people (PEP) in the organization at the time of the report. | No — produced when administrator information is required. |
dismissedAdministratorsFile | Generated PDF listing administrators dismissed in this report. | Yes — null if no administrators were dismissed. |
Each file exposes id, fileName, fileExtension, and base64. The base64 field is the decrypted bytes — it has Cost(100) and should only be projected when you actually need to download the file.
How the files come into being
originalFileis generated when the customer's bank report enters the packaging phase. It is the PDF that the signature flow operates on.signedFilebecomes available once the digital signature service reports that all required signatories have signed the original.overviewFile,pepFile, anddismissedAdministratorsFileare produced server‑side from the organization's current state at packaging time. They are unsigned summaries.
When the constitution exists
The constitution is part of every package that has administrator information attached. If you encounter a bank report whose constitution is null, the report didn't carry administrator changes — there was nothing to record. Use isAdministratorsRequired on the parent bank report to anticipate this.
Where to query
See Querying the constitution for runnable examples that project the five files. The constitution itself can't be rejected on its own — to bounce a package whose constitution is unacceptable, use the component flag on rejectBankPackageById that matches what's wrong (typically rejectAuthorizedSignatories or rejectStatutes).