Manage Account
/manage-account — ManageAccountModule, rendered inside ManageAccountComponent
with a tab bar.
2FA enforcement
The parent route applies:
const force2FAConfirmationGuard = {
canActivate: [TwoFactorAuthenticationGuard],
data: { force2FAConfirmation: true },
};
|
|
Tabs
Route strings and labels come from manage-account.config.ts:
export const manageAccountRoutes: RoutesConfig = {
yourInformation: {
route: 'your-information',
label: 'SETTINGS.MANAGE_ACCOUNT.YOUR_INFORMATION.TAB_NAME',
children: {
uploadId: { route: 'upload-id', label: 'SETTINGS.MANAGE_ACCOUNT.YOUR_INFORMATION.UPLOAD_ID_WIDGET.NAME' },
},
},
businessInformation: { route: 'business-information', label: 'SETTINGS.MANAGE_ACCOUNT.BUSINESS_INFORMATION.TAB_NAME' },
transferInformation: { route: 'transfer-information', label: 'SETTINGS.MANAGE_ACCOUNT.TRANSFER_INFORMATION.TAB_NAME' },
security: {
route: 'security',
label: 'SETTINGS.MANAGE_ACCOUNT.SECURITY.TAB_NAME',
children: {
changePassword: { route: 'change-password', label: 'SETTINGS.MANAGE_ACCOUNT.SECURITY.CHANGE_PASSWORD.NAME' },
twoFactor: { route: 'two-factor', label: 'SETTINGS.MANAGE_ACCOUNT.SECURITY.TWO_FACTOR' },
},
},
} as const;
| Path | Module | Contents |
|---|---|---|
|
|
Default tab. |
|
|
|
|
|
Government ID upload for KYC. |
|
|
Legal entity details. |
|
|
Payout configuration. |
|
|
Password and 2FA hub. |
|
|
Password change. |
|
|
2FA enrolment. |
|
|
Email confirmation landing. |
TransferInformationModule is shared with the pages/settings/ tree, which is
why it is imported from outside the manage-account folder.
Your Information
Backed by the personalInformation slice
(updatePersonalInformation → updatedPersonalInformation).
|
Name, date of birth, phone, email, tax id. |
|
Residential address, built on the shared |
The residential address is one half of the Seller Card US-residency test — see Seller Card.
Upload ID
UploadIdModule with its own UploadIdService. Uses
components/image-upload/ and components/image-preview/, with
FileHelperService handling base64 conversion and type/size validation.
Identity re-verification (as opposed to first-time upload) goes through Entrust — see Entrust Identity.
Business Information
Backed by the businessInformation slice. Collects legal name, business type
code, incorporation state, incorporatedInTheUS, owner SSN, EIN (taxId),
established date and the business address.
The business address is the other half of the Seller Card US-residency test, and the address shown in Instant Transfer AVS failure dialogs.
Transfer Information
Payout configuration, backed by the paymentMethods slice. Covers bank accounts
(via Plaid), wire details and the Instant Transfer card. Requires the
TRANSFER_INFORMATION permission, which pending suppliers only receive once
pmtCfgProvided is set.
Related modals: modals/transfer-information/, modals/switch-cd-dialog/,
modals/bank-verification-info-modal/, modals/lost-bank-connection-modal/.
Security
|
Hub page listing |
|
Password change form. |
|
2FA enrolment via |
Password rules are enforced with validators from core/pyb/validators/. A 400
from /execute_password_change shows the server’s message rather than the
generic error toast — see HTTP Interceptors.
Cancellation workflow
manage-account/cancellation-workflow/ renders the deactivate or reactivate
action, driven by CancellationWorkflowService and
CancellationWorkflowOptionAvailableEnum. Full detail:
Cancellation & Reactivation.
Documentation
manage-account/documentation/ lists documents Payability holds and any
outstanding requirements, backed by DoctypeComplianceEnum.Documentation and the
additional-documents-widget.
Services
|
Feature-scoped, provided by |
|
ID upload. |
|
Root-provided; deactivation and reactivation. |
|
Shared reactive-form helpers. |
|
File reading and validation. |