Supplier Client
The Payability Supplier Client (pyb-ng2-supplier-client) is the customer-facing single-page
application that Payability suppliers use to onboard, access financial products,
manage their marketplace connections, run reports and administer their account.
This component documents the application end to end: its architecture, its routing and permission model, every NgRX slice, all business rules encoded in the client, every third-party integration, and the complete analytics event catalog.
At a glance
Repository |
|
Type |
Angular 12 single-page application |
App version |
1.47.0 |
Node |
12 |
Routing |
Hash-based ( |
State |
NgRX 12 (store, effects, entity, router-store) |
UI kit |
Angular Material + |
API client |
|
Delivery |
AWS CodeBuild ( |
Technology stack
| Area | Library | Role |
|---|---|---|
Framework |
|
SPA framework, DI, router, forms |
State |
|
Reactive state, side effects, normalized collections |
Immutability |
|
Dev-only meta-reducer that throws on state mutation |
Permissions |
|
Template directives + route guard driven by calculated permissions |
i18n |
|
All user-facing copy is translated; keys live in |
Tables |
|
Every report grid, with custom cell renderers |
Banking |
|
Bank account linking during onboarding and payment setup |
Contracts |
DocuSign (via |
Legally binding signature flows |
Cards |
Marqeta ( |
Seller Card issuance and management |
Identity |
|
KYC document capture and identity re-verification |
Analytics |
|
Product analytics and session replay |
Metrics |
|
Page-load timing and error counters |
Bot defence |
|
Login, registration and password-reset forms |
State machines |
|
Used by selected multi-step UI flows |
Where to start
| If you want to… | Read |
|---|---|
Understand how the app is put together |
|
Find out why a supplier can or cannot see a feature |
|
Trace a URL to the module that serves it |
|
Understand the financial products |
|
Change a contract-signing flow |
|
Add or rename an analytics event |
|
Build a form, or work out why one will not validate |
|
Change the header, aside, subheader or a banner |
|
Know which API service to call |
|
Fix a colour, a dark-mode bug, or add a white-label brand |
|
Run the app locally |
|
Ship a new page |
The five rules that explain most of the codebase
|
Permissions are computed on the client, at login
|
|
Only the Expedited schema unlocks products while pending
A supplier with |
|
DocuSign flows are guarded by a localStorage flag
|
|
Seller Card eligibility is a three-way AND
|
|
Every user-facing action emits a Segment event
All tracking goes through |