Capabilities
Extension Forms
An extension point is a named slot within the platform — a widget slot, a UI region, or a data pipeline. At runtime, the platform dynamically loads extensions in one of the following forms:
| Extension form | Use case |
|---|---|
| React components | Small UI sections or widgets rendered directly within the application interface |
| Class instances | Data providers that supply or extend data, merged with BFF or service responses before rendering |
| Generic modules / configuration | Data or configuration modules invoked by the platform with contextual information (for example, account data) to determine rendering or behavioral control |
| Iframe components | Embedded external content rendered inside an iframe (for example, third-party widgets or CYO integrations) |
Typical Use Cases
- Injecting FI-specific UI elements, such as due pills or delinquency dollar amounts in account summaries
- Adding or reordering custom buttons and quick links on specific pages
- Supplying additional data points in account detail sections (for example, promotional data or loan data)
- Feature flags driven by extensions (for example, wealth management integrations)
Extension Types
The platform supports multiple extension types. Each type defines how the extension is built, delivered, loaded, and how it interacts with the host application.
All supported extension patterns follow the Extension Point Schema, which defines validation rules, required metadata, and compatibility for each integration point.
Remote Extensions (Primary Type)
Remote extensions are the recommended and primary mechanism for FI integrations. They are hosted externally by the FI and loaded dynamically into the platform at runtime.
Key characteristics:
- Built and maintained by FI teams independently
- Hosted on FI-managed infrastructure
- Loaded dynamically via platform configuration
- Supports UI components and data-driven extensions
- Fully compatible with Module Federation–based architecture on web
Typical use cases:
- Custom UI within banking pages
- Account or transaction enhancements
- FI-specific business logic integrations
IFrame Extensions
IFrame extensions allow external applications to be embedded within the platform using a secure iframe container.
Key characteristics:
- Runs as an isolated external application
- Minimal coupling with platform internals
- Suitable for embedding third-party tools
- Limited interaction with the host application
Typical use cases:
- Vendor apps
- Standalone FI applications
Internal (Local) Extensions
Internal extensions are developed and maintained within the platform codebase. These are not available for FI onboarding and are used only for platform-owned features.
Key characteristics:
- Managed entirely by the platform team
- Not externally configurable or deployable
- Used for core product capabilities
Internal extensions cannot be registered through the Extension APIs. FIs and partners should use remote or iframe extensions.
Platform Benefits
| Benefit | Description |
|---|---|
| Flexibility | FIs can enable, disable, or add extensions per extension point without altering core platform code |
| FI-specific customization | Different FIs can receive unique extension sets (for example, different quick actions) via targeted configuration manifests |
| Isolation | Core and custom logic remain strictly isolated. Extensions are loaded via Module Federation or as data objects, ensuring safe execution |
| Contract-driven | Each extension point defines a stable contract for props, return types, and contextual data — existing extensions continue to run when schemas evolve |
Web vs. Mobile
| Concern | Web | Mobile |
|---|---|---|
| Dynamic loading | Module Federation for remote extensions | Bundled extensions from @nxg-mobile/extensions via ExtensionComponent |
| Extension resolution | useExtensionPoint(extensionPointId) hook in the Common UI library | Same hook pattern; components are pre-mapped to extension IDs |
| Remote hosting | FI-hosted bundles loaded at runtime | Extensions are tightly mapped to component IDs in the mobile app bundle |
| Multi-FI extension IDs | Globally unique extensionId per FI (recommended suffix with institutionId) | extensionId must match exactly — see Mobile limitations |
Next Steps
- Getting Started — Onboard your first extension
- Technical Reference — Schema, metadata, and architecture details
- Extension Points — Available integration points and context contracts