---
title: SAIF.Business.Payment.EFT operations and processes
summary: Operation catalog and cross-operation hub for the EFT/ACH payment-processing business objects.
status: draft
owner: SAIF Doc Gen
last_reviewed: 2026-07-30
library: SAIF.Business.Payment.EFT
reference_type: package
---

# SAIF.Business.Payment.EFT operations and processes

This page is the operation catalog and cross-operation hub for `SAIF.Business.Payment.EFT`. The library exposes ten operations covering bank-account maintenance, payee/provider payment-preference selection, EFT authorization and consent, debit-card enrollment, the payment-detail/event/allocation lifecycle, output-control/print-status tracking, NACHA addenda, returned-payment handling, runtime-configurable balance calculation, and the ACH/EFT reference-data lookups that back all of the above. Each operation's detailed, step-by-step logic lives in its own page under `operations/`.

## Operation catalog

| Operation | Intent | Trigger | Inputs | Outputs | Rules | Tables | SQL |
| --- | --- | --- | --- | --- | --- | --- | --- |
| [Bank account management](operations/bank-account-management.md) | Create, retrieve, update, and delete (soft or hard) a payee's bank-account record | Caller creates `clsBankAccount` via `NewBankAccount`, edits properties, and calls `Save()`, or retrieves by `BankAccountID`/`CreateUser` | Routing number, account number, account type/status/data-source codes, business/consumer code, nickname, owner name | Persisted/updated `BANK_ACCOUNT` row; encrypted routing/account numbers; soft- or hard-deleted record | [BR-EFT-04](business-rules.md#br-eft-04-bank-account-soft-delete-preserves-record-integrity), [BR-EFT-05](business-rules.md#br-eft-05-insertupdate-operations-require-exactly-one-affected-row), [BR-EFT-11](business-rules.md#br-eft-11-bank-account-deletion-supports-an-explicit-hard-purge-path) | [BANK_ACCOUNT](database-tables.md#bank_account), [BANK_ACCOUNT_TRANSFER](database-tables.md#bank_account_transfer) | [SQL-001](sql/SQL-001-saif-business-payment-eft.md), [SQL-009](sql/SQL-009-saif-business-payment-eft.md), [SQL-010](sql/SQL-010-saif-business-payment-eft.md), [SQL-030](sql/SQL-030-saif-business-payment-eft.md), [SQL-031](sql/SQL-031-saif-business-payment-eft.md), [SQL-036](sql/SQL-036-saif-business-payment-eft.md), [SQL-077](sql/SQL-077-saif-business-payment-eft.md), [SQL-078](sql/SQL-078-saif-business-payment-eft.md), [SQL-088](sql/SQL-088-saif-business-payment-eft.md), [SQL-089](sql/SQL-089-saif-business-payment-eft.md) |
| [Payment preference selection](operations/payment-preference-selection.md) | Determine and edit how a claimant or provider payee wants to be paid — check, direct deposit, or debit card | Caller constructs `clsPaymentPreference` (claimant) or `clsProviderPaymentPreference` (provider) for a payee and calls `Save()` after `IsValid` | `iPayee`, requested `PaymentPreferenceType`, bank routing/account numbers, IAT address fields | Composed `clsEFTAuthorization` and, for debit-card, `clsDebitCardEnrollmentRequest`, persisted as child objects | [BR-EFT-02](business-rules.md#br-eft-02-debit-card-payment-eligibility-governed-by-allowdebitcard) | [PAYMENT_AUTHORIZATION](database-tables.md#payment_authorization), [DEBIT_CARD_ENROLLMENT_REQUEST](database-tables.md#debit_card_enrollment_request) | None of its own — delegates all persistence to [EFT authorization / consent](operations/eft-authorization-consent.md) and [Debit card enrollment](operations/debit-card-enrollment.md) |
| [EFT authorization / consent](operations/eft-authorization-consent.md) | Record, retrieve, and revoke a payee's consent to receive electronic (ACH) payments | Caller creates/retrieves `clsEFTAuthorization` by authorization ID, auto-pay confirmation number, or customer ID, edits it, and calls `Save()` | Authorization type, bank account, customer ID/type/second ID, prenote flag, IAT address fields | Persisted `PAYMENT_AUTHORIZATION` row; derived `AuthorizationStatus`; revoked authorization with reason code | [BR-EFT-01](business-rules.md#br-eft-01-eft-authorization-gates-electronic-payment-eligibility), [BR-EFT-05](business-rules.md#br-eft-05-insertupdate-operations-require-exactly-one-affected-row), [BR-EFT-08](business-rules.md#br-eft-08-authorization-status-is-derived-from-bank-account-and-prenote-state), [BR-EFT-09](business-rules.md#br-eft-09-selecting-an-authorization-type-cascades-default-bank-account-attributes) | [PAYMENT_AUTHORIZATION](database-tables.md#payment_authorization) | [SQL-013](sql/SQL-013-saif-business-payment-eft.md), [SQL-045](sql/SQL-045-saif-business-payment-eft.md), [SQL-046](sql/SQL-046-saif-business-payment-eft.md), [SQL-081](sql/SQL-081-saif-business-payment-eft.md), [SQL-092](sql/SQL-092-saif-business-payment-eft.md) |
| [Debit card enrollment](operations/debit-card-enrollment.md) | Process, track, and retrieve debit-card payment enrollment requests submitted to US Bank | Caller creates `clsDebitCardEnrollmentRequest` from a cardholder ID, edits demographic/address fields, and calls `Save()` | Cardholder ID number, enrollment status, participant ID, address/demographic data, card enroll/active/termination dates | Persisted `DEBIT_CARD_ENROLLMENT_REQUEST` row with an auto-assigned participant ID | [BR-EFT-05](business-rules.md#br-eft-05-insertupdate-operations-require-exactly-one-affected-row), [BR-EFT-06](business-rules.md#br-eft-06-debit-card-enrollment-excludes-terminated-enrollments-by-default) | [DEBIT_CARD_ENROLLMENT_REQUEST](database-tables.md#debit_card_enrollment_request) | [SQL-003](sql/SQL-003-saif-business-payment-eft.md), [SQL-012](sql/SQL-012-saif-business-payment-eft.md), [SQL-043](sql/SQL-043-saif-business-payment-eft.md), [SQL-044](sql/SQL-044-saif-business-payment-eft.md), [SQL-080](sql/SQL-080-saif-business-payment-eft.md), [SQL-091](sql/SQL-091-saif-business-payment-eft.md) |
| [Payment detail, events, and allocation](operations/payment-detail-and-allocation.md) | Create an ACH/EFT payment line item, drive it through its status-transition event log, and allocate it across balance types via a session transfer | Caller calls `NewPaymentDetail`/`NewPrenoteTrans`, then state-transition methods (`PostPending`, `RemitPosted`, `RefundVendorRemitted`, `ReturnVendorRemitted`, `CancelPayment`, `DeletePending`), and `Save()` | Payment amount, authorization reference, ACH entry class/event codes, session/policy context, balance-type allocations | Persisted `PAYMENT_DETAIL` row; appended `PAYMENT_EVENT` audit rows; persisted `SESSION_TRANSFER` and `PAYMENT_ALLOCATION` rows; NACHA addenda for IAT payments | [BR-EFT-05](business-rules.md#br-eft-05-insertupdate-operations-require-exactly-one-affected-row), [BR-EFT-10](business-rules.md#br-eft-10-ach-standard-entry-class-code-is-required-only-for-ach-banking-network-accounts) | [PAYMENT_DETAIL](database-tables.md#payment_detail), [PAYMENT_EVENT](database-tables.md#payment_event), [PAYMENT_ALLOCATION](database-tables.md#payment_allocation), [SESSION_TRANSFER](database-tables.md#session_transfer), [PAYMENT_AUTH_SESSION_TRANSFER](database-tables.md#payment_auth_session_transfer) | [SQL-006](sql/SQL-006-saif-business-payment-eft.md), [SQL-007](sql/SQL-007-saif-business-payment-eft.md), [SQL-016](sql/SQL-016-saif-business-payment-eft.md), [SQL-017](sql/SQL-017-saif-business-payment-eft.md), [SQL-018](sql/SQL-018-saif-business-payment-eft.md), [SQL-019](sql/SQL-019-saif-business-payment-eft.md), [SQL-021](sql/SQL-021-saif-business-payment-eft.md), [SQL-057](sql/SQL-057-saif-business-payment-eft.md), [SQL-058](sql/SQL-058-saif-business-payment-eft.md), [SQL-059](sql/SQL-059-saif-business-payment-eft.md), [SQL-060](sql/SQL-060-saif-business-payment-eft.md), [SQL-063](sql/SQL-063-saif-business-payment-eft.md), [SQL-076](sql/SQL-076-saif-business-payment-eft.md), [SQL-084](sql/SQL-084-saif-business-payment-eft.md), [SQL-085](sql/SQL-085-saif-business-payment-eft.md), [SQL-087](sql/SQL-087-saif-business-payment-eft.md), [SQL-095](sql/SQL-095-saif-business-payment-eft.md), [SQL-096](sql/SQL-096-saif-business-payment-eft.md), [SQL-097](sql/SQL-097-saif-business-payment-eft.md) |
| [Output control tracking](operations/output-control-tracking.md) | Track the print/transmission status of generated payment output artifacts (checks, ACH files) via `OUTPUT_CONTROL` records | `clsOutputControl.NewOutputControl` when an output artifact is generated; updated once printed/transmitted | Output document code, claim/policy reference, payment/authorization/banking-network type codes | Persisted/updated `OUTPUT_CONTROL` row; `PRINTED_DATE` populated once transmitted | [BR-EFT-05](business-rules.md#br-eft-05-insertupdate-operations-require-exactly-one-affected-row) | [OUTPUT_CONTROL](database-tables.md#output_control), [ACH_FILE_ID](database-tables.md#ach_file_id), [OUTPUT_DOCUMENT_CODE](database-tables.md#output_document_code) | [SQL-004](sql/SQL-004-saif-business-payment-eft.md), [SQL-014](sql/SQL-014-saif-business-payment-eft.md), [SQL-022](sql/SQL-022-saif-business-payment-eft.md), [SQL-023](sql/SQL-023-saif-business-payment-eft.md), [SQL-051](sql/SQL-051-saif-business-payment-eft.md), [SQL-052](sql/SQL-052-saif-business-payment-eft.md), [SQL-053](sql/SQL-053-saif-business-payment-eft.md), [SQL-054](sql/SQL-054-saif-business-payment-eft.md), [SQL-082](sql/SQL-082-saif-business-payment-eft.md), [SQL-093](sql/SQL-093-saif-business-payment-eft.md) |
| [Payment addenda](operations/payment-addenda.md) | Attach NACHA addenda records (including 7-record IAT sets) to an EFT payment detail | `clsPaymentDetail.CreateIATAddenda`/`CreateStandardAddenda` on payment creation, or direct `NewPaymentAddenda` call | Payment detail sequence number, addenda text, addenda type code | Persisted `PAYMENT_ADDENDA` row(s) linked to the parent payment detail | [BR-EFT-05](business-rules.md#br-eft-05-insertupdate-operations-require-exactly-one-affected-row) | [PAYMENT_ADDENDA](database-tables.md#payment_addenda) | [SQL-005](sql/SQL-005-saif-business-payment-eft.md), [SQL-015](sql/SQL-015-saif-business-payment-eft.md), [SQL-055](sql/SQL-055-saif-business-payment-eft.md), [SQL-056](sql/SQL-056-saif-business-payment-eft.md), [SQL-083](sql/SQL-083-saif-business-payment-eft.md), [SQL-094](sql/SQL-094-saif-business-payment-eft.md) |
| [Payment return handling](operations/payment-return-handling.md) | Record a bank-returned EFT payment, classify it by NACHA return reason, and mark it reviewed | Bank return file processing calls `clsPaymentReturn.NewPaymentReturn`, or a reviewer calls `MarkReviewed` | Return reason/status/type codes, customer details, payment amount, payment-detail reference | Persisted `PAYMENT_RETURN` row; culture-aware return-reason description; optional backout payment event | [BR-EFT-03](business-rules.md#br-eft-03-returned-eft-payment-classified-by-nacha-return-reason-code), [BR-EFT-05](business-rules.md#br-eft-05-insertupdate-operations-require-exactly-one-affected-row), [BR-EFT-07](business-rules.md#br-eft-07-return-reason-description-is-culture-aware) | [PAYMENT_RETURN](database-tables.md#payment_return), [PAYMENT_RETURN_REASON_CODE](database-tables.md#payment_return_reason_code) | [SQL-008](sql/SQL-008-saif-business-payment-eft.md), [SQL-020](sql/SQL-020-saif-business-payment-eft.md), [SQL-064](sql/SQL-064-saif-business-payment-eft.md), [SQL-065](sql/SQL-065-saif-business-payment-eft.md), [SQL-066](sql/SQL-066-saif-business-payment-eft.md), [SQL-067](sql/SQL-067-saif-business-payment-eft.md), [SQL-070](sql/SQL-070-saif-business-payment-eft.md), [SQL-071](sql/SQL-071-saif-business-payment-eft.md), [SQL-072](sql/SQL-072-saif-business-payment-eft.md), [SQL-073](sql/SQL-073-saif-business-payment-eft.md), [SQL-086](sql/SQL-086-saif-business-payment-eft.md) |
| [Dynamic balance calculation](operations/dynamic-balance-calculation.md) | Compute balance values at runtime for balance types configured with a stored-procedure reference | Caller calls `DynamicallyCalculatedBalanceInfoFactory.GetBalances(policyNumber, balanceType)` | Policy number, `clsBalanceTypeCode` with `GET_BALANCE_SQL_TXT` populated | List of `DynamicallyCalculatedBalanceInfo` (seq num, description, amount, URL) net of pending online-payment allocations | None registered* | [BALANCE_TYPE_CODE](database-tables.md#balance_type_code) | [SQL-029](sql/SQL-029-saif-business-payment-eft.md) |
| [Code table lookups](operations/code-table-lookups.md) | Retrieve EFT/ACH reference data used to validate and describe payment fields throughout the library | Any lookup class's `Get<Code>` / `Get<Code>Collection` call | Code value, or no filter for a full collection | Code-table entry or entries (code, description, and type-specific attributes) | None registered* | Various ACH/EFT code tables | [SQL-002](sql/SQL-002-saif-business-payment-eft.md), [SQL-011](sql/SQL-011-saif-business-payment-eft.md), [SQL-024](sql/SQL-024-saif-business-payment-eft.md), [SQL-025](sql/SQL-025-saif-business-payment-eft.md), [SQL-026](sql/SQL-026-saif-business-payment-eft.md), [SQL-027](sql/SQL-027-saif-business-payment-eft.md), [SQL-028](sql/SQL-028-saif-business-payment-eft.md), [SQL-032](sql/SQL-032-saif-business-payment-eft.md) through [SQL-035](sql/SQL-035-saif-business-payment-eft.md), [SQL-037](sql/SQL-037-saif-business-payment-eft.md) through [SQL-042](sql/SQL-042-saif-business-payment-eft.md), [SQL-047](sql/SQL-047-saif-business-payment-eft.md) through [SQL-050](sql/SQL-050-saif-business-payment-eft.md), [SQL-053](sql/SQL-053-saif-business-payment-eft.md), [SQL-054](sql/SQL-054-saif-business-payment-eft.md), [SQL-061](sql/SQL-061-saif-business-payment-eft.md), [SQL-062](sql/SQL-062-saif-business-payment-eft.md), [SQL-068](sql/SQL-068-saif-business-payment-eft.md), [SQL-069](sql/SQL-069-saif-business-payment-eft.md), [SQL-079](sql/SQL-079-saif-business-payment-eft.md), [SQL-090](sql/SQL-090-saif-business-payment-eft.md) |

## Process flow diagram

The following diagram shows how the ten operations relate across the EFT payment-processing lifecycle: a payee establishes a bank account and payment preference, an EFT authorization records their consent (with debit-card enrollment as one branch), a payment detail is created and moves through its event/allocation lifecycle, ACH output is batched and addenda attached, and any bank-returned payment is captured and classified.

```mermaid
flowchart TD
	Start([Payee sets up payment method]) --> Bank[Bank account management]
	Bank --> Pref[Payment preference selection]
	Pref --> Auth{Preference type?}
	Auth -->|Direct deposit| EFTAuth[EFT authorization / consent]
	Auth -->|Debit card| Debit[Debit card enrollment]
	Debit --> EFTAuth
	EFTAuth --> Ref[Code table lookups<br>validate type/status codes]
	EFTAuth --> Detail[Payment detail, events,<br>and allocation]
	Detail --> Balance[Dynamic balance calculation<br>for configurable balance types]
	Detail --> Addenda{IAT or standard<br>addenda required?}
	Addenda -->|Yes| PAddenda[Payment addenda]
	Addenda -->|No| Batch[Output control tracking]
	PAddenda --> Batch
	Batch --> Transmitted{Payment<br>transmitted}
	Transmitted -->|Return received| Return[Payment return handling]
	Transmitted -->|Success| End([Complete])
	Return --> End
```

## Database interactions

| Operation | SQL | Tables | Type |
| --- | --- | --- | --- |
| [Bank account management](operations/bank-account-management.md) | [SQL-009](sql/SQL-009-saif-business-payment-eft.md), [SQL-077](sql/SQL-077-saif-business-payment-eft.md), [SQL-088](sql/SQL-088-saif-business-payment-eft.md) | [BANK_ACCOUNT](database-tables.md#bank_account) | Write |
| [EFT authorization / consent](operations/eft-authorization-consent.md) | [SQL-013](sql/SQL-013-saif-business-payment-eft.md), [SQL-081](sql/SQL-081-saif-business-payment-eft.md), [SQL-092](sql/SQL-092-saif-business-payment-eft.md) | [PAYMENT_AUTHORIZATION](database-tables.md#payment_authorization) | Write |
| [Debit card enrollment](operations/debit-card-enrollment.md) | [SQL-012](sql/SQL-012-saif-business-payment-eft.md), [SQL-080](sql/SQL-080-saif-business-payment-eft.md), [SQL-091](sql/SQL-091-saif-business-payment-eft.md) | [DEBIT_CARD_ENROLLMENT_REQUEST](database-tables.md#debit_card_enrollment_request) | Write |
| [Payment detail, events, and allocation](operations/payment-detail-and-allocation.md) | [SQL-018](sql/SQL-018-saif-business-payment-eft.md), [SQL-019](sql/SQL-019-saif-business-payment-eft.md), [SQL-016](sql/SQL-016-saif-business-payment-eft.md), [SQL-021](sql/SQL-021-saif-business-payment-eft.md) | [PAYMENT_DETAIL](database-tables.md#payment_detail), [PAYMENT_EVENT](database-tables.md#payment_event), [PAYMENT_ALLOCATION](database-tables.md#payment_allocation), [SESSION_TRANSFER](database-tables.md#session_transfer) | Write |
| [Output control tracking](operations/output-control-tracking.md) | [SQL-014](sql/SQL-014-saif-business-payment-eft.md), [SQL-082](sql/SQL-082-saif-business-payment-eft.md) | [OUTPUT_CONTROL](database-tables.md#output_control) | Write |
| [Payment addenda](operations/payment-addenda.md) | [SQL-015](sql/SQL-015-saif-business-payment-eft.md) | [PAYMENT_ADDENDA](database-tables.md#payment_addenda) | Write |
| [Payment return handling](operations/payment-return-handling.md) | [SQL-020](sql/SQL-020-saif-business-payment-eft.md), [SQL-064](sql/SQL-064-saif-business-payment-eft.md) | [PAYMENT_RETURN](database-tables.md#payment_return) | Write / Read |
| [Dynamic balance calculation](operations/dynamic-balance-calculation.md) | [SQL-029](sql/SQL-029-saif-business-payment-eft.md) | [BALANCE_TYPE_CODE](database-tables.md#balance_type_code) | Read |

## Failure and edge-case behavior

- All transactional inserts, updates, and deletes across every operation enforce a `RowsAffected = 1` check; a different count adds an `InsertError`/`UpdateError`/`DeleteError` message rather than raising an exception, so callers must inspect `ErrorCount`/`IsValid` after `Save()` ([BR-EFT-05](business-rules.md#br-eft-05-insertupdate-operations-require-exactly-one-affected-row)).
- `clsEFTAuthorization.BeforeRetrieve` contains a CustomerID branch that invokes stored procedure `PK72970_EPAY.retrieve_EFTAuth_ByCustomerID`; the Oracle source was not retrievable, so this branch may be dead code.**
- `clsPaymentDetailCollection` bypasses ordinary retrieval and assembles live SQL through `BuildSqlNormal`, `BuildSqlSeqNum`, `BuildSqlPend`, `BuildPreNoteSql`, and `BuildPostedSql`, each targeting a different retrieval scenario (claim payments, single payment, pending payments, pre-note candidates, US Bank posted payments).*
- `DynamicallyCalculatedBalanceInfoFactory` always invokes `BALANCE_TYPE_CODE.GET_BALANCE_SQL_TXT` as a stored-procedure name (`CommandType.StoredProcedure`), never as literal inline SQL text, despite the column name implying raw SQL; the exact procedure logic cannot be documented from this library's source alone.*
- Bank account "delete" is a soft-delete by default (`BANK_ACCOUNT_STATUS_CODE` set to `DELETED`); an explicit `PurgeRecord` flag switches to a hard `DELETE` instead ([SQL-088](sql/SQL-088-saif-business-payment-eft.md), [BR-EFT-11](business-rules.md#br-eft-11-bank-account-deletion-supports-an-explicit-hard-purge-path)).
- `clsPaymentReturn.DeleteSQL` and `clsPaymentEvent.DeleteSQL` both throw on any attempt to delete — return and event records are permanent once created, by design.*
- `clsEFTAuthorizationCollection.DoesAccountHaveAuthorization` is an unimplemented stub that always returns `False`; it has a `TODO` comment and no callers observed in this pass.**

> **Note:** Statements marked with `*` were inferred from code structure, naming conventions, or contextual evidence where direct confirmation was not available in source artifacts. Statements marked with `**` could not be confirmed; treat as unknown until verified.

## Stored procedure operations

One Oracle package is referenced by this library. The package source was not found in Oracle during analysis and the calling code path is considered possibly dead code.

| Package / Procedure | Schema | Calling class | Calling method | Purpose | Status |
| --- | --- | --- | --- | --- | --- |
| [`PK72970_EPAY.retrieve_EFTAuth_ByCustomerID`](procedures/PK72970_EPAY.md) | PK72970 | `clsEFTAuthorization` | `BeforeRetrieve` (CustomerID branch) | Retrieves EFT authorization records by customer type/ID** | ⚠️ Not found in Oracle — possibly dead code** |

See [procedures/index.md](procedures/index.md) for the full procedure catalog and [PK72970_EPAY.md](procedures/PK72970_EPAY.md) for detailed analysis.

## Related documentation
- [Index](index.md)
- [Overview](overview.md)
- [Architecture](architecture.md)
- [Dependencies](dependencies.md)
- [Business rules](business-rules.md)
- [Database tables](database-tables.md)
- [SQL catalog](sql/index.md)
- [API reference](api/index.md)
- [Configuration](configuration.md)

## Sources
- `Business\SAIF.Business.Payment.EFT\clsBankAccount.vb`
- `Business\SAIF.Business.Payment.EFT\clsBankAccountCollection.vb`
- `Business\SAIF.Business.Payment.EFT\clsBankAccountTransfer.vb`
- `Business\SAIF.Business.Payment.EFT\clsPaymentPreference.vb`
- `Business\SAIF.Business.Payment.EFT\clsProviderPaymentPreference.vb`
- `Business\SAIF.Business.Payment.EFT\clsEFTAuthorization.vb`
- `Business\SAIF.Business.Payment.EFT\clsEFTAuthorizationCollection.vb`
- `Business\SAIF.Business.Payment.EFT\clsDebitCardEnrollmentRequest.vb`
- `Business\SAIF.Business.Payment.EFT\clsDebitCardEnrollmentRequestCollection.vb`
- `Business\SAIF.Business.Payment.EFT\clsPaymentDetail.vb`
- `Business\SAIF.Business.Payment.EFT\clsPaymentDetailCollection.vb`
- `Business\SAIF.Business.Payment.EFT\clsPaymentAllocation.vb`
- `Business\SAIF.Business.Payment.EFT\clsPaymentAllocationCollection.vb`
- `Business\SAIF.Business.Payment.EFT\clsSessionTransfer.vb`
- `Business\SAIF.Business.Payment.EFT\clsPaymentAuthorizationSessionTransfer.vb`
- `Business\SAIF.Business.Payment.EFT\clsPaymentEvent.vb`
- `Business\SAIF.Business.Payment.EFT\clsPaymentEventCollection.vb`
- `Business\SAIF.Business.Payment.EFT\clsPaymentEventCode.vb`
- `Business\SAIF.Business.Payment.EFT\clsAchFileID.vb`
- `Business\SAIF.Business.Payment.EFT\clsAchFileIDCollection.vb`
- `Business\SAIF.Business.Payment.EFT\clsPaymentBatchNumber.vb`
- `Business\SAIF.Business.Payment.EFT\clsOutputControl.vb`
- `Business\SAIF.Business.Payment.EFT\clsOutputControlCollection.vb`
- `Business\SAIF.Business.Payment.EFT\clsPaymentAddenda.vb`
- `Business\SAIF.Business.Payment.EFT\clsPaymentAddendaCollection.vb`
- `Business\SAIF.Business.Payment.EFT\clsPaymentReturn.vb`
- `Business\SAIF.Business.Payment.EFT\clsPaymentReturnCollection.vb`
- `Business\SAIF.Business.Payment.EFT\clsPaymentReturnReasonCode.vb`
- `Business\SAIF.Business.Payment.EFT\DynamicallyCalculatedBalanceInfoFactory.vb`
- `Business\SAIF.Business.Payment.EFT\DynamicallyCalculatedBalanceInfo.vb`
- `Business\SAIF.Business.Payment.EFT\clsBalanceTypeCode.vb`
