PROD Release – Angular Version Upgrade (AN_ANGUPD_V1)
Tags:
Stay Up-to-Date with AndDone Status!
Lorem ipsum dolor sit amet. Nibh ultricies senectus sed faucibus.
Release Date
Categories
Upgrades the Payment Portal From Angular v15 to v20
What’s New
The Anytime Payment Portal has been upgraded from Angular version 15 to version 20. This brings the portal in line with the current Angular release, incorporating the framework improvements, performance enhancements, and security patches introduced across the v16–v20 range.
Why It Matters
Before this upgrade, the portal was running on an Angular version that no longer receives active support. You can now build against and integrate with a portal that runs on a current, actively maintained Angular version, reducing compatibility friction and exposure to unpatched vulnerabilities.
Upgrade
- Ensure any custom Angular components or libraries embedded in or alongside the portal are compatible with Angular v20.
- Review any peer dependencies in your integration that declared a constraint on Angular v15 and update them accordingly.
- Re-test any portal customizations or overrides that interact with Angular lifecycle hooks, routing, or change detection, as behavior in these areas evolved between v15 and v20.
Introduces a Centralized Shared NPM Package for Angular Micro-Frontends
What’s New
A new shared NPM package centralizes common Angular code — including services, interceptors, components, pipes, constants, and enums — that was previously duplicated across multiple micro-frontend applications. All Angular 19+ micro-frontends now consume this single package instead of maintaining their own copies of shared logic.
Why It Matters
Before this change, the same code existed in multiple places, meaning a bug fix or enhancement had to be applied and tested in every application separately. You can now rely on a single source of truth for shared functionality, making updates faster and reducing the risk of inconsistencies across applications.
Upgrade
- Remove any locally duplicated copies of shared services, interceptors, components, pipes, constants, or enums from your micro-frontend application.
- Add the new shared package as a dependency in your
package.json. - Update import paths in your application to reference the shared package rather than local copies.
- Run your test suite to confirm no regressions from the import path changes.
Updates the Shared NPM Package to Support Consumer Application Requirements
What’s New
The centralized shared NPM package has been extended to include additional common functionality required by the consumer-facing Angular application. These additions ensure the package covers the full breadth of shared logic needed across the application suite, not just the initial set of micro-frontends.
Why It Matters
You can now use the shared package as the single dependency for common Angular code across both existing micro-frontends and the consumer application, without needing to maintain parallel implementations.
Adds Client-Side Payload Encryption for Payment Submission
What’s New
The payment submission API now supports full client-side payload encryption. Before a payment request is sent, the entire request body is encrypted on the client using a public key. The payload is only decrypted by backend services upon receipt. This behavior is controlled by a feature flag named cryptography — when the flag is on, all payment request payloads are encrypted in transit; when off, payloads are sent as plain text matching the existing behavior.
Why It Matters
Before this change, payment request payloads were transmitted without client-side encryption, relying solely on transport-layer security. You can now enable end-to-end payload encryption for payment submissions, significantly reducing the risk of sensitive payment data being exposed at any intermediate layer.
Changes
Parameter: Request body of POST /payment Change type: Modified — when the cryptography feature flag is enabled, the entire request payload is encrypted before transmission and must be decryptable by the backend using the corresponding private key. When the flag is disabled, existing behavior is preserved.
Fixes Stale Inline Validation Errors When Switching Payment Method Tabs
What’s New
On the payment method selection page, inline validation error messages for Banking Type and Account Type fields were not cleared when a user navigated from the Card tab to the ACH tab. The form now correctly resets these error states on tab switch, so only errors relevant to the currently active tab are shown.
Why It Matters
Before this fix, users switching from the Card tab to the ACH tab would see leftover error messages from the Card form, creating a confusing and misleading experience. Validation errors now only appear in the context of the tab the user is actively filling out.
Release Date: Feb 26th, 2026
Release Status: Deployed to PROD
This release contains the technical upgrades such as angular version upgrade (v15 to v20), NPMPackage for common code from UI, NPM package update, Client-Side Payload Encryption.
[AN-38395] – Anytime Payments Angular Upgrade
Upgraded the Anytime Payment Portal from Angular v15 tov20.
No
[AN-30796] – NPM Package – for common code from UI
Introduced a centralized shared package for all Angular 19MFEs to eliminate duplicate common code (services,interceptors, components, pipes, constants, enums).
This change ensures:
Single source of truth
Improved consistency across MFEs
Simplified maintenance and bug fixes
Easier version upgrades for all applications
No
[AN-35616]- Update NPM Package to accommodate other application changes
Changes to the NPM package to support new commonfunctionality required for the consumer Angular application.
No
[AN-41602]- Client-Side Payload Encryption for PaymentSubmission
Changes made in {{BaseURL}}/payment API to ensure that entire payload is encrypted on the client using a secure public key before being transmitted and decrypted only bybackend services.
NoFeatures Deployed to UAT ClientFacingImpact
Launch darkly Flag “cryptography’ is created. If Flag is ON, then the payment API entire request payload will be encrypted to secure the requested details.
If flag is OFF, then the payment API request payload willbe shown as is as per existing.
This change is implemented on anytime portal as of now.
[AN-46112] – Bug fixes on anytime portal payment method page.
Existing Behavior: The Inline error of Banking Type andAccount Type remains as is if user navigate from Card tabto ACH tab.
Yes
Fixed Behavior: No error will be displayed if user navigatefrom CARD tab to ACH Tab.
