Skip to main content

Data model overview

A high-level map of the entities you'll encounter as you query and mutate the External API. Read this first — every other concept page drills into one part of this graph.

The shape

The authenticated bank is the root of everything. From there, four major branches:

  • Customers: an OrganizationInvitation enters the system, becomes an Organization once accepted, and accumulates bank packages (the schema type is bankReport) over time as the customer submits required documents.
  • Reviews: each published bank package can be assigned a BankReportReview. Reviews break down into sections (BankReportSectionReview) — one per document area (basic information, documents, business volume, board, …).
  • People: Users are natural people who appear as board members on customer organizations. Employees are staff at your own bank.
  • Configuration: BranchOffice, RiskGroup, AssociationType — lookup tables you assign to customers, plus BusinessVolume questionnaires you publish.
Bank ─┬─ OrganizationInvitation ──> Organization ──> bankReport ──> BankReportReview ──> Section reviews
│ │
│ ├─ bankRelation (BankOrganizationRelation) ─> RiskGroup
│ ├─ extendedInformation[] ─> BranchOffice
│ ├─ bankAccounts[]
│ └─ administrators[] (BoardMember | ExternalAdministrator → User)

├─ BranchOffice (lookups)
├─ RiskGroup
├─ Employee
├─ BusinessVolume ─> Revisions
└─ Lead

Bank scoping

Every bank-owned entity is filtered to your bank automatically — derived from the bankId claim on your JWT. You can't query another bank's data, and you don't need to pass a bankId argument anywhere. A few entities (AssociationType) are global reference data and aren't bank-scoped.

Soft deletes

Entities that implement the platform's IBaseProperties interface have a global query filter on IsDeleted — soft-deleted rows are excluded from every query automatically. You don't need to add where: { isDeleted: { eq: false } } to your filters.

Where to go next

  • Organizations — the customer side: invitations, organizations, extended info, bank accounts.
  • Bank packages — what makes up a submitted package and the ajour lifecycle.
  • People — users, board members, employees, legal entities.
  • Reviews — how the bank-side review process is modeled.
  • Reference data — branch offices, risk groups, association types, business volumes, countries.