Reference table for bank metadata. externalId is the public bank slug —
productRouteVersionTable.bankId and friends FK to bank.id (integer);
legacy $type<string>() text columns store the literal slug with no FK.
routingNumber and fdicCert are operator-captured at create time;
nullable so seeded rows that pre-date the columns can stay valid.
The four *Instructions jsonb columns hold the per-rail deposit
instructions for the bank. Each is nullable; a non-null column means the
bank supports that rail (see bankSupportsRail).
defaultCustomerPartnerRank is nullable; a non-null value marks the bank as
an offered default customer bank partner, with the lowest rank being the
primary default.
dashboardDomain is the (unique, nullable) host that maps the bank-dashboard
to this bank; theme (BankDashboardTheme, nullable) holds its
per-bank dashboard branding. Both are operator-captured and per-environment.
wireEmailLocalPart (nullable) and wireEmailFromDomains (jsonb string[],
default []) configure the bank's inbound wire-email inbox. The effective
inbox local part is coalesce(wire_email_local_part, external_id), kept
unique across banks by the bank_wire_email_local_part_effective_unique
functional index; wireEmailFromDomains is the authenticated-sender domain
allowlist (empty = fail-closed).
Reference table for bank metadata.
externalIdis the public bank slug —productRouteVersionTable.bankIdand friends FK tobank.id(integer); legacy$type<string>()text columns store the literal slug with no FK.routingNumberandfdicCertare operator-captured at create time; nullable so seeded rows that pre-date the columns can stay valid.The four
*Instructionsjsonb columns hold the per-rail deposit instructions for the bank. Each is nullable; a non-null column means the bank supports that rail (see bankSupportsRail).defaultCustomerPartnerRankis nullable; a non-null value marks the bank as an offered default customer bank partner, with the lowest rank being the primary default.dashboardDomainis the (unique, nullable) host that maps the bank-dashboard to this bank;theme(BankDashboardTheme, nullable) holds its per-bank dashboard branding. Both are operator-captured and per-environment.wireEmailLocalPart(nullable) andwireEmailFromDomains(jsonbstring[], default[]) configure the bank's inbound wire-email inbox. The effective inbox local part iscoalesce(wire_email_local_part, external_id), kept unique across banks by thebank_wire_email_local_part_effective_uniquefunctional index;wireEmailFromDomainsis the authenticated-sender domain allowlist (empty = fail-closed).