Automotive finance
The industry as a composable framework — one shared capability library, the surfaces it drives through SDUI, and the external systems it integrates with.
Automotive finance is a demanding industry for a composable framework and a good one to prove it against. It is compliance-heavy, it spans several distinct businesses that share most of their meaning, and it depends on a long tail of external systems that nobody would sensibly rebuild.
This page describes the industry once. The verticals then show origination, refinance and collections composing what is described here.
The shared capability library
A lender publishes these once. Every vertical draws on them; none of them re-answers who the borrower is or what the state permits.
Each is a FabricModule with its own namespace, object types, lifecycles, actions and events. Each publishes a usage contract that a vertical adopts by declaring a dependency — not by copying.
| Capability | Archetype | What it owns |
|---|---|---|
party | Party | Identity of applicant, co-buyer, dealer and collector, and the relationships between them |
offering | Offering | Products, rate sheets, terms, add-ons and fee schedules |
agreement | Agreement | Account lifecycle, amendments, replacement and termination |
settlement | Settlement | The record that value moved — funding, payoff, refund, remittance |
activity | Activity | Work owed against an agreement — reviews, visits, inspections |
compliance | — | Policy sets evaluated at every checkpoint, with the reasoning recorded |
Compliance is deliberately cross-cutting rather than a vertical's private concern. Right-to-cure windows, adverse-action timing and state licensing are declared once and enforced on every capability above, because a rule implemented three times is a rule that will differ three ways.
Surfaces, and where SDUI applies
Four surfaces, one set of contracts. The server decides what may appear and which verbs are legal; each surface decides pixels.
SDUI earns its place here because the same account has to look right on four surfaces for several brands, and because copy, offers and layout change far more often than the rules do. A dealer pad and the consumer site show the same deal because they are handed the same recipe.
The company declares its shared capabilities, vertical modules, and component packs in an
@fabricorg/assembly manifest. Resolution produces the exact lockfile used by
@fabricorg/sdui-release to validate a document, its token set, and explicit grants. A dealer
document can read capability://party/applicant-summary and offer
capability://origination/submit-application only when those references are granted by the locked
application. The web, mobile, and desktop renderers consume the promoted release through separate
native component registries; they do not reinterpret the capability reference.
It does not earn its place everywhere. Inventory search, vehicle look-up and recommendation are latency-critical read paths that belong behind a search engine. Routing them through a governed mutation pipeline buys audit guarantees nobody needs and spends response time that everybody notices.
The collections app is the case that decides the design. It works offline, so its actions declare offline-capturable and their authority is governed at execution rather than at capture. A queued recovery replays through the identical path on reconnect, and if the borrower paid in the meantime it is refused into reconciliation with the capture-time evidence attached.
External systems
An automotive lender depends on systems it did not write and should not rewrite. Each is reached through a typed interface the platform owns, so the capability code never holds a vendor's SDK and never learns a vendor's shape.
Two integration patterns matter more than the list.
A pull is an activity, not a side effect. A credit pull is a governed action: it is recorded before it happens, policy decides whether this actor may pull for this purpose, permissible purpose is captured, and the result becomes an event. FCRA asks who pulled, when and why — that is a query against evidence the pipeline already produced, not a reporting project.
A system of record is a consumer, not the owner of meaning. Where a loan servicing system or an existing LOS is already in place, it subscribes to events through the outbox rather than being called synchronously mid-decision. The agreement's lifecycle stays in the capability, and the external system receives what changed and why. That is what lets a servicing platform be replaced without re-deriving the domain.
@fabricorg/ports declares these interfaces and turns a capability's stated requirement into a deployment gate: a capability that needs a bureau interface cannot reach an environment where none is registered. Any adapter must pass the same contract suite as the one it replaces.
Next
The verticals — origination, refinance and collections, and exactly what each one adds.
Enterprise Composable Framework
What a composable framework is, the four planes it separates, and how Fabric Platform implements the capability plane beneath them.
Origination, refinance and collections
Three verticals composing one shared capability library — what each adds, what it reuses, and where it meets SDUI and external systems.