---
title: SAIF.Business.EPay.USBank database tables
summary: Database tables used by SAIF.Business.EPay.USBank with relationships and usage context.
status: draft
owner: SAIF
last_reviewed: 2026-07-24
library: SAIF.Business.EPay.USBank
reference_type: package
---

# SAIF.Business.EPay.USBank database tables

This page catalogs the Oracle tables accessed by `SAIF.Business.EPay.USBank`.

## Table catalog

| Table | Database | Schema/Link | CRUD | Purpose | Primary business object |
| --- | --- | --- | --- | --- | --- |
| [DUAL](#dual) | Oracle | Unqualified in library SQL | R | Supplies sequence `NEXTVAL` values for BOF key generation. | `clsUSBankNonpayNotice`, `clsUSBankUser` |
| [US_BANK_NONPAY_NOTICE](#us_bank_nonpay_notice) | Oracle | Unqualified in library SQL | C, R, U, D | Stores SAIF-side nonpayment notices correlated to policies and optional user rows. | `clsUSBankNonpayNotice`, `clsUSBankNonpayNoticeCollection` |
| [US_BANK_USER](#us_bank_user) | Oracle | Unqualified in library SQL | C, R, U, D | Stores SAIF-side US Bank user linkage data for policy and business-online identities. | `clsUSBankUser`, `clsUSBankUserCollection` |

## DUAL

| Field | Value |
| --- | --- |
| Database | Oracle |
| Schema/Link | Unqualified in library SQL |
| Purpose | Supplies sequence values used during BOF `Create()` flows for users and notices. |
| Access pattern | Inline sequence `SELECT` |
| CRUD operations | Read |
| Key columns used | `US_BANK_NONPAY_NOTICE_SEQ_NUM_NEXTVAL`, `US_BANK_USER_SEQ_NUM_NEXTVAL` |
| Sequence | N/A |
| Related tables | `US_BANK_NONPAY_NOTICE`, `US_BANK_USER` |
| Business objects | `clsUSBankNonpayNotice`, `clsUSBankUser` |

### Operations referencing this table
- [Register or update a US Bank user](operations/register-or-update-us-bank-user.md)
- [Persist and retrieve SAIF-side integration records](operations/saif-side-user-and-notice-persistence.md)

### SQL referencing this table
- [SQL-001: Select US Bank nonpay notice sequence](sql/SQL-001-select-us-bank-nonpay-notice-sequence.md)
- [SQL-002: Select US Bank user sequence](sql/SQL-002-select-us-bank-user-sequence.md)

---

## US_BANK_NONPAY_NOTICE

| Field | Value |
| --- | --- |
| Database | Oracle |
| Schema/Link | Unqualified in library SQL |
| Purpose | Stores SAIF-side nonpayment notices received from the US Bank integration. |
| Access pattern | BOF criteria SQL and collection `Load` helper |
| CRUD operations | Create, Read, Update, Delete |
| Key columns used | `US_BANK_NONPAY_NOTICE_SEQ_NUM`, `US_BANK_USER_SEQ_NUM`, `POLICY_NUM`, `ONLINE_PAYMENT_TYPE_CODE`, `BANKING_NETWORK_CODE`, `PAYMENT_AMT`, `NOTICE_DATE`, `EVENT_DESCR` |
| Sequence | `US_Bank_Nonpay_Notice_SEQ` |
| Related tables | `US_BANK_USER`* |
| Business objects | `clsUSBankNonpayNotice`, `clsUSBankNonpayNoticeCollection` |

### Operations referencing this table
- [Persist and retrieve SAIF-side integration records](operations/saif-side-user-and-notice-persistence.md)

### Business rules referencing this table
- [BR-006: Notice inserts must affect exactly one row](business-rules.md#br-006-notice-inserts-must-affect-exactly-one-row)
- [BR-007: Notice updates must affect exactly one row](business-rules.md#br-007-notice-updates-must-affect-exactly-one-row)
- [BR-008: Notice deletes must affect exactly one row](business-rules.md#br-008-notice-deletes-must-affect-exactly-one-row)

### SQL referencing this table
- [SQL-003: Insert US Bank nonpay notice](sql/SQL-003-insert-us-bank-nonpay-notice.md)
- [SQL-005: Retrieve US Bank nonpay notice by sequence](sql/SQL-005-retrieve-us-bank-nonpay-notice-by-sequence.md)
- [SQL-006: Retrieve US Bank nonpay notices by policy](sql/SQL-006-retrieve-us-bank-nonpay-notices-by-policy.md)
- [SQL-010: Update US Bank nonpay notice](sql/SQL-010-update-us-bank-nonpay-notice.md)
- [SQL-012: Delete US Bank nonpay notice](sql/SQL-012-delete-us-bank-nonpay-notice.md)

---

## US_BANK_USER

| Field | Value |
| --- | --- |
| Database | Oracle |
| Schema/Link | Unqualified in library SQL |
| Purpose | Stores SAIF-side linkage between a policy, a business-online user ID, and the related US Bank profile. |
| Access pattern | BOF criteria SQL |
| CRUD operations | Create, Read, Update, Delete |
| Key columns used | `US_BANK_USER_SEQ_NUM`, `POLICY_NUM`, `BUSINESS_ONLINE_USER`, `FIRST_NAME`, `LAST_NAME`, `TRANSFER_BANK_ACCOUNTS_FLAG` |
| Sequence | `US_Bank_User_SEQ` |
| Related tables | `US_BANK_NONPAY_NOTICE`* |
| Business objects | `clsUSBankUser`, `clsUSBankUserCollection` |

### Operations referencing this table
- [Register or update a US Bank user](operations/register-or-update-us-bank-user.md)
- [Persist and retrieve SAIF-side integration records](operations/saif-side-user-and-notice-persistence.md)

### Business rules referencing this table
- [BR-001: Business online user ID is required](business-rules.md#br-001-business-online-user-id-is-required)
- [BR-002: Policy number is required](business-rules.md#br-002-policy-number-is-required)
- [BR-003: User inserts must affect exactly one row](business-rules.md#br-003-user-inserts-must-affect-exactly-one-row)
- [BR-004: User updates must affect exactly one row](business-rules.md#br-004-user-updates-must-affect-exactly-one-row)
- [BR-005: User deletes must affect exactly one row](business-rules.md#br-005-user-deletes-must-affect-exactly-one-row)
- [BR-009: User lookup is case-insensitive](business-rules.md#br-009-user-lookup-is-case-insensitive)

### SQL referencing this table
- [SQL-004: Insert US Bank user](sql/SQL-004-insert-us-bank-user.md)
- [SQL-007: Retrieve US Bank user by sequence](sql/SQL-007-retrieve-us-bank-user-by-sequence.md)
- [SQL-008: Retrieve US Bank user by policy and business-online user](sql/SQL-008-retrieve-us-bank-user-by-policy-and-business-online-user.md)
- [SQL-009: Retrieve US Bank users by policy](sql/SQL-009-retrieve-us-bank-users-by-policy.md)
- [SQL-011: Update US Bank user](sql/SQL-011-update-us-bank-user.md)
- [SQL-013: Delete US Bank user](sql/SQL-013-delete-us-bank-user.md)

## Table relationship diagram

The following diagram shows the inferred relationship between the two persisted business tables.*

```mermaid
erDiagram
    US_BANK_USER ||--o{ US_BANK_NONPAY_NOTICE : "US_BANK_USER_SEQ_NUM"
    US_BANK_USER {
        NUMBER US_BANK_USER_SEQ_NUM PK
        NUMBER POLICY_NUM
        VARCHAR2 BUSINESS_ONLINE_USER
    }
    US_BANK_NONPAY_NOTICE {
        NUMBER US_BANK_NONPAY_NOTICE_SEQ_NUM PK
        NUMBER US_BANK_USER_SEQ_NUM FK
        NUMBER POLICY_NUM
    }
```

## Related documentation
- [Index](index.md)
- [Overview](overview.md)
- [Architecture](architecture.md)
- [Dependencies](dependencies.md)
- [Operations and processes](operations-processes.md)
- [Business rules](business-rules.md)
- [Security and authorization](security-authorization.md)
- [SQL catalog](sql/index.md)
- [API reference](api/index.md)
- [Configuration](configuration.md)

> **Note:** Statements marked with `*` were inferred from code structure, naming conventions, or contextual evidence where direct confirmation was not available in source artifacts.

## Sources
- `Business\SAIF.Business.EPay.USBank\clsUSBankUser.vb`
- `Business\SAIF.Business.EPay.USBank\clsUSBankUserCollection.vb`
- `Business\SAIF.Business.EPay.USBank\clsUSBankNonpayNotice.vb`
- `Business\SAIF.Business.EPay.USBank\app.config`

