﻿---
title: clsFinancialTransaction
summary: API reference for clsFinancialTransaction.
status: draft
owner: Technical Writer
last_reviewed: 2026-07-31
library: SAIF.Business.Policy.Premium
reference_type: package
---

# clsFinancialTransaction

Represents a financial transaction record in the billing domain; holds transaction type code, amount, effective date, and status for a billing financial transaction associated with a policy account.*

## Purpose
- Persists and retrieves financial transaction data (type code, amount, date, status) for a policy account's billing history.*
- Consumed by billing account management and financial reporting workflows that track financial transactions.*

## Context
- Namespace: `SAIF.Business.Policy.Premium.Billing`
- Assembly/package: `SAIF.Business.Policy.Premium`

## Public members
| Member | Signature | Purpose |
| --- | --- | --- |
| FinancialTransactionSeqNum | `Public ReadOnly Property FinancialTransactionSeqNum() As Decimal Implements IFinancialTransaction.FinancialTransactionSeqNum` | Primary key used to identify the financial transaction row. |
| PolicyNumber | `Public Property PolicyNumber() As Decimal` | The numeric policy number identifying the policy to which this record belongs. |
| PolicyPeriodEffectiveDate | `Public Property PolicyPeriodEffectiveDate() As Date` | The effective date of the policy period to which this rating plan applies. |
| TransactionAmount | `Public Property TransactionAmount() As Decimal` | Numeric transaction amount value used by this type's rating, billing, or reporting logic.* |
| Amount | `Public ReadOnly Property Amount As Decimal Implements IFinancialTransaction.Amount` | Monetary amount carried by the transaction or adjustment entry.* |
| TransactionDate | `Public Property TransactionDate() As Date` | Booking date of the financial transaction entry.* |
| TransDate | `Public ReadOnly Property TransDate As Date Implements IFinancialTransaction.TransactionDate` | Business value exposed as trans date for callers of this API.* |
| TransactionTypeCode | `Public Property TransactionTypeCode() As String` | Oracle code value used to classify this business object.* |
| TransactionType | `Public ReadOnly Property TransactionType() As clsFinancialTransactionCode` | Returns the typed transaction-code lookup that supplies billing behavior and descriptions for the entry. |
| TransType | `Public ReadOnly Property TransType As IFinancialTransactionType Implements IFinancialTransaction.TransactionType` | Lookup object that describes the current trans type.* |
| Description | `Public ReadOnly Property Description As String` | The human-readable description associated with this record.* |
| IsDeposit | `Public ReadOnly Property IsDeposit() As Boolean` | Indicates whether deposit applies in this business object.* |
| InvoiceDisplayFlag | `Public Property InvoiceDisplayFlag() As String` | Business value exposed as invoice display flag for callers of this API.* |
| IsDisplayedOnInvoice | `Public Property IsDisplayedOnInvoice As Boolean` | Indicates whether displayed on invoice applies in this business object.* |
| BatchNumber | `Public Property BatchNumber() As Decimal` | Business value exposed as batch number for callers of this API.* |
| BatchDate | `Public Property BatchDate() As Date` | Business value exposed as batch date for callers of this API.* |
| CheckNumber | `Public Property CheckNumber() As Decimal` | Business value exposed as check number for callers of this API.* |
| InvoiceNumber | `Public Property InvoiceNumber() As Decimal` | The Oracle-assigned numeric identifier for this invoice. |
| IsInvoiced | `Public ReadOnly Property IsInvoiced As Boolean` | Indicates whether invoiced applies in this business object.* |
| InvoiceDate | `Public Property InvoiceDate() As Date` | Business value exposed as invoice date for callers of this API.* |
| TransactionStatusCode | `Public Property TransactionStatusCode() As String` | Oracle code value used to classify this business object.* |
| AmountPaid | `Public Property AmountPaid() As Decimal` | Numeric amount paid value used by this type's rating, billing, or reporting logic.* |
| PremiumHistorySetID | `Public Property PremiumHistorySetID() As Decimal` | Numeric premium history set id value used by this type's rating, billing, or reporting logic.* |
| CreateDate | `Public Property CreateDate() As Date` | The timestamp at which this record was created in the Oracle database. |
| CreateDateReadOnly | `Public ReadOnly Property CreateDateReadOnly As Date Implements IFinancialTransaction.CreateDate` | Business value exposed as create date read only for callers of this API.* |
| CreateUser | `Public Property CreateUser() As String` | The username of the account that created this record. |
| UpdateDate | `Public Property UpdateDate() As Date` | The timestamp of the most recent update to this record.* |
| UpdateUser | `Public Property UpdateUser() As String` | The username of the account that last modified this record.* |
| WarrantNumber | `Public Property WarrantNumber() As String` | Business value exposed as warrant number for callers of this API.* |
| ApplyToInvoiceNumber | `Public Property ApplyToInvoiceNumber() As Decimal` | Business value exposed as apply to invoice number for callers of this API.* |
| GLInterfaceControlNumber | `Public Property GLInterfaceControlNumber() As String` | Business value exposed as gl interface control number for callers of this API.* |
| BillingDetailSeqNum | `Public Property BillingDetailSeqNum() As Decimal` | Identifier used to correlate this row with related premium records.* |
| DCBTrackingSeqNum | `Public Property DCBTrackingSeqNum() As Decimal` | Identifier used to correlate this row with related premium records.* |
| CommPremAmt | `Public Property CommPremAmt() As Decimal` | Business value exposed as comm prem amt for callers of this API.* |
| PayrollSeqNum | `Public Property PayrollSeqNum() As Decimal` | Numeric payroll seq num value used by this type's rating, billing, or reporting logic.* |
| DueDate | `Public Property DueDate() As Date` | Business value exposed as due date for callers of this API.* |
| IsDue | `Public ReadOnly Property IsDue As Boolean Implements IFinancialTransaction.IsDue` | Indicates whether the transaction contributes to the current balance due.* |
| PolicyRelationshipPolicyNumber | `Public Property PolicyRelationshipPolicyNumber() As Decimal` | Business value exposed as policy relationship policy number for callers of this API.* |
| PolicyRelationshipPolicyPeriodEffectiveDate | `Public Property PolicyRelationshipPolicyPeriodEffectiveDate() As Date` | Business value exposed as policy relationship policy period effective date for callers of this API.* |
| ARPPremiumAmount | `Public Property ARPPremiumAmount() As Decimal` | Numeric arp premium amount value used by this type's rating, billing, or reporting logic.* |
| GLTransactionTypeCode | `Public Property GLTransactionTypeCode() As String` | Oracle code value used to classify this business object.* |
| AuditPeriodStartDate | `Public ReadOnly Property AuditPeriodStartDate As Date Implements IFinancialTransaction.AuditPeriodStartDate` | Beginning of the audit period represented by this transaction, when applicable.* |
| AuditPeriodEndDate | `Public ReadOnly Property AuditPeriodEndDate As Date Implements IFinancialTransaction.AuditPeriodEndDate` | End of the audit period represented by this transaction, when applicable.* |
| HasAuditPeriod | `Public ReadOnly Property HasAuditPeriod As Boolean Implements IFinancialTransaction.HasAuditPeriod` | Indicates whether the transaction is tied to an audit-period range.* |
| IsValid | `Public Overrides ReadOnly Property IsValid() As Boolean` | Returns True when all registered business rules pass; delegates to the framework rule engine. |
| IsDirty | `Public Overrides ReadOnly Property IsDirty() As Boolean` | Returns True when one or more tracked properties have been modified since the last save or MarkOld() call. |
| SetBatchNumberNull | `Public Sub SetBatchNumberNull()` | Clears `BatchNumber`, marking it as null/unset so the column will be written as NULL on the next save.* |
| SetBatchDateNull | `Public Sub SetBatchDateNull()` | Clears `BatchDate`, marking it as null/unset so the column will be written as NULL on the next save.* |
| SetCheckNumberNull | `Public Sub SetCheckNumberNull()` | Clears `CheckNumber`, marking it as null/unset so the column will be written as NULL on the next save.* |
| SetInvoiceNumberNull | `Public Sub SetInvoiceNumberNull()` | Clears `InvoiceNumber`, marking it as null/unset so the column will be written as NULL on the next save.* |
| SetInvoiceDateNull | `Public Sub SetInvoiceDateNull()` | Clears `InvoiceDate`, marking it as null/unset so the column will be written as NULL on the next save.* |
| SetTransactionStatusCodeNull | `Public Sub SetTransactionStatusCodeNull()` | Clears `TransactionStatusCode`, marking it as null/unset so the column will be written as NULL on the next save.* |
| SetAmountPaidNull | `Public Sub SetAmountPaidNull()` | Clears `AmountPaid`, marking it as null/unset so the column will be written as NULL on the next save.* |
| SetPremiumHistorySetIDNull | `Public Sub SetPremiumHistorySetIDNull()` | Clears `PremiumHistorySetID`, marking it as null/unset so the column will be written as NULL on the next save.* |
| SetCreateDateNull | `Public Sub SetCreateDateNull()` | Clears `CreateDate`, marking it as null/unset so the column will be written as NULL on the next save.* |
| SetCreateUserNull | `Public Sub SetCreateUserNull()` | Clears `CreateUser`, marking it as null/unset so the column will be written as NULL on the next save.* |
| SetUpdateDateNull | `Public Sub SetUpdateDateNull()` | Clears `UpdateDate`, marking it as null/unset so the column will be written as NULL on the next save.* |
| SetUpdateUserNull | `Public Sub SetUpdateUserNull()` | Clears `UpdateUser`, marking it as null/unset so the column will be written as NULL on the next save.* |
| SetWarrantNumberNull | `Public Sub SetWarrantNumberNull()` | Clears `WarrantNumber`, marking it as null/unset so the column will be written as NULL on the next save.* |
| SetApplyToInvoiceNumberNull | `Public Sub SetApplyToInvoiceNumberNull()` | Clears `ApplyToInvoiceNumber`, marking it as null/unset so the column will be written as NULL on the next save.* |
| SetGLInterfaceControlNumberNull | `Public Sub SetGLInterfaceControlNumberNull()` | Clears `GLInterfaceControlNumber`, marking it as null/unset so the column will be written as NULL on the next save.* |
| SetBillingDetailSeqNumNull | `Public Sub SetBillingDetailSeqNumNull()` | Clears `BillingDetailSeqNum`, marking it as null/unset so the column will be written as NULL on the next save.* |
| SetDCBTrackingSeqNumNull | `Public Sub SetDCBTrackingSeqNumNull()` | Clears `DCBTrackingSeqNum`, marking it as null/unset so the column will be written as NULL on the next save.* |
| SetCommPremAmtNull | `Public Sub SetCommPremAmtNull()` | Clears `CommPremAmt`, marking it as null/unset so the column will be written as NULL on the next save.* |
| SetPayrollSeqNumNull | `Public Sub SetPayrollSeqNumNull()` | Clears `PayrollSeqNum`, marking it as null/unset so the column will be written as NULL on the next save.* |
| SetDueDateNull | `Public Sub SetDueDateNull()` | Clears `DueDate`, marking it as null/unset so the column will be written as NULL on the next save.* |
| SetPolicyRelationshipPolicyNumberNull | `Public Sub SetPolicyRelationshipPolicyNumberNull()` | Clears `PolicyRelationshipPolicyNumber`, marking it as null/unset so the column will be written as NULL on the next save.* |
| SetPolicyRelationshipPolicyPeriodEffectiveDateNull | `Public Sub SetPolicyRelationshipPolicyPeriodEffectiveDateNull()` | Clears `PolicyRelationshipPolicyPeriodEffectiveDate`, marking it as null/unset so the column will be written as NULL on the next save.* |
| SetARPPremiumAmountNull | `Public Sub SetARPPremiumAmountNull()` | Clears `ARPPremiumAmount`, marking it as null/unset so the column will be written as NULL on the next save.* |
| SetGLTransactionTypeCodeNull | `Public Sub SetGLTransactionTypeCodeNull()` | Clears `GLTransactionTypeCode`, marking it as null/unset so the column will be written as NULL on the next save.* |
| IsBatchNumberNull | `Public Function IsBatchNumberNull() As Boolean` | Tests whether `BatchNumber` is null/unset in the backing Oracle column; returns True when the value has not been populated.* |
| IsBatchDateNull | `Public Function IsBatchDateNull() As Boolean` | Tests whether `BatchDate` is null/unset in the backing Oracle column; returns True when the value has not been populated.* |
| IsCheckNumberNull | `Public Function IsCheckNumberNull() As Boolean` | Tests whether `CheckNumber` is null/unset in the backing Oracle column; returns True when the value has not been populated.* |
| IsInvoiceNumberNull | `Public Function IsInvoiceNumberNull() As Boolean` | Tests whether `InvoiceNumber` is null/unset in the backing Oracle column; returns True when the value has not been populated.* |
| IsInvoiceDateNull | `Public Function IsInvoiceDateNull() As Boolean` | Tests whether `InvoiceDate` is null/unset in the backing Oracle column; returns True when the value has not been populated.* |
| IsTransactionStatusCodeNull | `Public Function IsTransactionStatusCodeNull() As Boolean` | Tests whether `TransactionStatusCode` is null/unset in the backing Oracle column; returns True when the value has not been populated.* |
| IsAmountPaidNull | `Public Function IsAmountPaidNull() As Boolean` | Tests whether `AmountPaid` is null/unset in the backing Oracle column; returns True when the value has not been populated.* |
| IsPremiumHistorySetIDNull | `Public Function IsPremiumHistorySetIDNull() As Boolean` | Tests whether `PremiumHistorySetID` is null/unset in the backing Oracle column; returns True when the value has not been populated.* |
| IsCreateDateNull | `Public Function IsCreateDateNull() As Boolean` | Tests whether `CreateDate` is null/unset in the backing Oracle column; returns True when the value has not been populated.* |
| IsCreateUserNull | `Public Function IsCreateUserNull() As Boolean` | Tests whether `CreateUser` is null/unset in the backing Oracle column; returns True when the value has not been populated.* |
| IsUpdateDateNull | `Public Function IsUpdateDateNull() As Boolean` | Tests whether `UpdateDate` is null/unset in the backing Oracle column; returns True when the value has not been populated.* |
| IsUpdateUserNull | `Public Function IsUpdateUserNull() As Boolean` | Tests whether `UpdateUser` is null/unset in the backing Oracle column; returns True when the value has not been populated.* |
| IsWarrantNumberNull | `Public Function IsWarrantNumberNull() As Boolean` | Tests whether `WarrantNumber` is null/unset in the backing Oracle column; returns True when the value has not been populated.* |
| IsApplyToInvoiceNumberNull | `Public Function IsApplyToInvoiceNumberNull() As Boolean` | Tests whether `ApplyToInvoiceNumber` is null/unset in the backing Oracle column; returns True when the value has not been populated.* |
| IsGLInterfaceControlNumberNull | `Public Function IsGLInterfaceControlNumberNull() As Boolean` | Tests whether `GLInterfaceControlNumber` is null/unset in the backing Oracle column; returns True when the value has not been populated.* |
| IsBillingDetailSeqNumNull | `Public Function IsBillingDetailSeqNumNull() As Boolean` | Tests whether `BillingDetailSeqNum` is null/unset in the backing Oracle column; returns True when the value has not been populated.* |
| IsDCBTrackingSeqNumNull | `Public Function IsDCBTrackingSeqNumNull() As Boolean` | Tests whether `DCBTrackingSeqNum` is null/unset in the backing Oracle column; returns True when the value has not been populated.* |
| IsCommPremAmtNull | `Public Function IsCommPremAmtNull() As Boolean` | Tests whether `CommPremAmt` is null/unset in the backing Oracle column; returns True when the value has not been populated.* |
| IsPayrollSeqNumNull | `Public Function IsPayrollSeqNumNull() As Boolean` | Tests whether `PayrollSeqNum` is null/unset in the backing Oracle column; returns True when the value has not been populated.* |
| IsDueDateNull | `Public Function IsDueDateNull() As Boolean` | Tests whether `DueDate` is null/unset in the backing Oracle column; returns True when the value has not been populated.* |
| IsPolicyRelationshipPolicyNumberNull | `Public Function IsPolicyRelationshipPolicyNumberNull() As Boolean` | Tests whether `PolicyRelationshipPolicyNumber` is null/unset in the backing Oracle column; returns True when the value has not been populated.* |
| IsPolicyRelationshipPolicyPeriodEffectiveDateNull | `Public Function IsPolicyRelationshipPolicyPeriodEffectiveDateNull() As Boolean` | Tests whether `PolicyRelationshipPolicyPeriodEffectiveDate` is null/unset in the backing Oracle column; returns True when the value has not been populated.* |
| IsARPPremiumAmountNull | `Public Function IsARPPremiumAmountNull() As Boolean` | Tests whether `ARPPremiumAmount` is null/unset in the backing Oracle column; returns True when the value has not been populated.* |
| IsGLTransactionTypeCodeNull | `Public Function IsGLTransactionTypeCodeNull() As Boolean` | Tests whether `GLTransactionTypeCode` is null/unset in the backing Oracle column; returns True when the value has not been populated.* |
| Equals | `Public Overloads Shared Function Equals(ByVal objA As Object, ByVal objB As Object) As Boolean` | Static overload: compares two Object references for equality using value-equality semantics.* |
| Equals | `Public Overloads Overrides Function Equals(ByVal inObject As Object) As Boolean` | Compares this instance with another `Object` instance for value equality.* |
| Equals | `Public Overloads Function Equals(ByVal inObject As clsFinancialTransaction) As Boolean` | Compares this instance with another `clsFinancialTransaction` instance for value equality.* |
| GetHashCode | `Public Overrides Function GetHashCode() As Integer` | Returns a hash code consistent with the value-equality implementation. |
| ToString | `Public Overrides Function ToString() As String` | Returns a string representation of this instance, typically for diagnostics.* |
| NewFinancialTransaction | `Public Shared Function NewFinancialTransaction(ByVal inDataportal As IDataPortalInfo, ByVal inFinancialTransactionSeqNum As Decimal) As clsFinancialTransaction` | Creates a new cls financial transaction initialized from the supplied source values.* |
| GetFinancialTransaction | `Public Shared Function GetFinancialTransaction(ByVal inDataportal As IDataPortalInfo, ByVal inFinancialTransactionSeqNum As Decimal) As clsFinancialTransaction` | Loads a cls financial transaction that matches the supplied lookup criteria. |
| FinancialTransactionSeqNum | `Public Property FinancialTransactionSeqNum() As Decimal` | Primary key used to identify the financial transaction row. |
| New | `Public Sub New(ByVal inDataPortalInfo As IDataPortalInfo)` | Constructs a new instance with the supplied initialization parameters.* |
| New | `Public Sub New(ByVal inDataPortalInfo As IDataPortalInfo, ByVal inFinancialTransactionSeqNum As Decimal)` | Constructs a new instance with the supplied initialization parameters.* |
## Inherited public members

| Member | Signature | Purpose | Origin |
| --- | --- | --- | --- |
| Rules | `Property Rules As clsRulesManager` | Framework rules manager used to register, evaluate, and surface broken rules on the object.† | `SAIF.Framework.Core — clsBusinessBase` |
| BeginEdit | `Sub BeginEdit()` | Starts an n-level edit session so callers can stage changes.† | `SAIF.Framework.Core — clsBusinessBase` |
| CancelEdit | `Sub CancelEdit()` | Rolls back the active edit session.† | `SAIF.Framework.Core — clsBusinessBase` |
| ApplyEdit | `Sub ApplyEdit()` | Commits the active edit session.† | `SAIF.Framework.Core — clsBusinessBase` |

## Behavioral notes
- Source file: `Business\SAIF.Business.Policy.Premium\Billing\clsFinancialTransaction.vb`.

## Constraints and usage notes
- Transaction type codes must reference valid `clsFinancialTransactionCode` entries; amounts and dates must be consistent with the financial system.*


> **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.

## Sources
- `Business\SAIF.Business.Policy.Premium\Billing\clsFinancialTransaction.vb`