Documentation map

ROOT — orientation

Page Covers

Internal Admin

What the application is, the system diagram, what makes the codebase distinctive.

What the application does

Business capabilities, the supplier lifecycle, capability areas, who uses it.

Orientation for new developers

How to locate code, surprises, first-change checklist, what not to do.

Documentation map

This page.

Glossary

Business and codebase vocabulary.

Architecture — how it is built

Page Covers

Architectural overview

Layers, request/response flow, the dependency rules that hold.

Technology stack

Every pinned dependency, why it is there, and what it constrains.

Module map

The fractal module structure, every top-level module, and placement rules.

Bootstrap and composition root

main.ts → AppModule: providers, DI substitutions, reducer and effect wiring.

Routing and navigation

Hash routing, route aggregation, guard order, resolvers, deep-link handling.

State management

NgRx 4 patterns, all 12 slices, effect idioms, router-driven state, persistence.

HTTP layer and services

Service conventions, interceptor chain, abstractions and mocks, error mapping.

Data modelling and serialisation

cerialize usage, casing translation, model/DTO/interface conventions.

UI composition and layout

Shell layout, sidebar, CRM panel, dialogs, the four table generations, forms.

Integration landscape

Every backend and third party, what it is used for, and how it is reached.

Architectural decisions and constraints

The standing decisions, why they hold, and the known debt.

Domains — business logic

Page Covers

Business domains

Domain index, ownership of rules between front end and backend.

Suppliers

The central entity, the workspace, the supplier store slice, partial editing.

Onboarding and KYC

Templates, product matrix, document verification, 2FA, SMS, owners.

Underwriting

Initial/daily UW, background reports, documentation, UCC, real-time validation.

Advances and offers

Offer lifecycle and the progressive-pricing calculator arithmetic.

Supplier payments and deposit accounts

Payment configs, deposit accounts, Plaid, auto-payment, payment history.

Fees, reserves and contracts

Purchase/payment fees, marketplace reserves, minimum-fee overrides, contracts.

Card programmes

EFS, Marqeta and Airwallex — providers, statuses, issuing flows, and Airwallex transaction disputes.

Lifecycle actions and transactions

Hide/suspend/lock/cancel/delete, win-back, and the Actions menu operations.

Marketplaces and gateways

Marketplace catalogue, gateways, supplier-marketplace links and statements.

Payment processes and batches

Batch lifecycle, process add/edit, payment details, downloads.

Balance approval

The treasury review queue, decisions, statistics, outcome reasons.

CRM tools and tasks

Timeline streams, notes/tasks/files/emails/events, task filters and counters.

Emails and messaging

The email log, preview, templates, batch email and messaging service.

Reports

Internal report configuration, external reports, waiting suppliers, CSV export.

Manage

Bulk actions, users, permission groups, settings, onboarding templates, close.

Underwriting tracker

The cross-supplier UW queue.

DEV Admin

Runtime flag switching and QA tooling.

Platform — cross-cutting concerns

Page Covers

Authentication and session

Google and basic login, token handling, expiry, logout, redirect restore.

Authorisation and permissions

ngx-permissions, guards, the two deny-filter permissions, sub-permissions.

Feature flags

Build / global-settings / session layers, precedence, guard and directive.

Events

Domain events, event rules v1 and v2, filters, actions, history, EventBridge.

Real-time streams (SSE)

SseService, the task-monitoring stream, and the in-app event bus.

Iframe messaging and EVA

The postMessage protocol, message catalogue, resizing, token hand-off.

Error handling

Global handler, parser, toast visualisation, request capture, the Tetris page.

Caching and browser persistence

HTTP cache, lscache, and every localStorage/sessionStorage/cookie key.

Observability and analytics

Segment, Google Analytics, the event logger, the KYC guardrail trace, versions.

Shared library

The shared/ inventory: tables, dialogs, forms, filters, search, documents.

Ops — running and changing it

Page Covers

Local development

Prerequisites, environment generation, npm start, running against EVA, ports.

Environments and configuration

How environment.ts is generated, dev vs prod templates, per-env values.

Build and deployment

Build configurations, CodeBuild specs, S3 deployment, versioned releases.

Testing

Karma/Jasmine setup, ng-mocks/ng-bullet idioms, coverage, Cypress status.

Code conventions

Naming, structure, SCSS (ABEM), lint and format rules, branch and PR rules.

Spec-driven workflow

The four-phase agent workflow, .specs/ formats, checkpoints.

Troubleshooting

The recurring failure modes and their fixes.

Reference — lookups

Page Covers

Route catalogue

Every route, its component, guards and permission clause.

Store action catalogue

Every action type per slice, with the effect that handles it.

Services and API endpoints

Every service, its base URL and its endpoints.

Environment configuration keys

Every IEnvironment key, its source variable and its dev/prod values.

Feature flag catalogue

Every flag, what it gates and where it is checked.

Permission catalogue

Every permission code and where it is enforced.

Event and message catalogue

Domain event types and targets, iframe message types, in-app bus events.

Codebase inventory

Counts and distribution of components, services, models, specs per module.