Skip to content

clsPaymentDetail

clsPaymentDetail is the core individual EFT payment line item business object. It persists and retrieves records from the PAYMENT_DETAIL Oracle table, capturing payment amounts, ACH entry class codes, event codes, prenote flags, and links to the payment authorization that authorizes the payment.

Purpose

  • Create, retrieve, update, and delete individual EFT payment line item records.
  • Link payment detail to an EFT authorization (PAYMENT_AUTHORIZATION_SEQ_NUM).
  • Track payment amount, credit/debit code, online payment type, ACH entry class, and current payment event code.
  • Support prenote payments and payment resubmission.

Context

  • Namespace: SAIF.Business.Payment.EFT
  • Assembly/package: SAIF.BOF.Business.Payment.EFT (NuGet)
  • Implements: IBusinessCriteria
  • Inherits: clsBusinessBase (SAIF.BOF.Framework)

Public members

Member Signature Purpose
PaymentDetailSeqNum Property PaymentDetailSeqNum As Decimal Primary key (PAYMENT_DETAIL_SEQ_NUM).
PaymentAuthorizationSeqNum Property PaymentAuthorizationSeqNum As Decimal FK to PAYMENT_AUTHORIZATION.
PaymentAmt Property PaymentAmt As Decimal Payment amount.
PaymentDate Property PaymentDate As Date Payment date.
CreditDebitCode Property CreditDebitCode As String Credit or debit indicator.
CurrentPaymentEventCode Property CurrentPaymentEventCode As String Current event code (FK to PAYMENT_EVENT_CODE).
OnlinePaymentTypeCode Property OnlinePaymentTypeCode As String Online payment type (FK to ONLINE_PAYMENT_TYPE_CODE).
AchStdEntryClassCode Property AchStdEntryClassCode As String ACH standard entry class code.
AchAddendumText Property AchAddendumText As String ACH addendum text.
ConfirmationCheckNum Property ConfirmationCheckNum As String Confirmation check number.
PrenoteFlag Property PrenoteFlag As String Indicates whether this is a prenote payment.
NsfCount Property NsfCount As Decimal NSF (non-sufficient funds) count.
ResubmitDate Property ResubmitDate As Date Date for resubmission of a returned payment.
PaymentVendorXMLText Property PaymentVendorXMLText As String Vendor-specific XML payload.
CreateDate Property CreateDate As Date Record creation date.
CreateUser Property CreateUser As String User who created the record.
UpdateDate Property UpdateDate As Date Last update date.
UpdateUser Property UpdateUser As String User who last updated the record.

Behavioral notes

  • CreateSQL calls SELECT Payment_detail_seq.NEXTVAL FROM DUAL before InsertSQL.*
  • RetrieveSQL joins PAYMENT_AUTHORIZATION and AUTHORIZATION_TYPE_CODE to include AuthTypeDescr in the result set.*
  • clsPaymentDetailCollection does not use the standard IBusinessCriteria SQL properties; its five interface properties all throw InvalidSQLProperty. Instead, it uses helper methods: BuildSqlNormal, BuildSqlSeqNum, BuildSqlPend, BuildPreNoteSql, and BuildPostedSql.*
  • All insert and update operations enforce RowsAffected = 1.*

Constraints and usage notes

  • A clsEFTAuthorization record must exist before a clsPaymentDetail can be created (foreign key on PAYMENT_AUTHORIZATION_SEQ_NUM).*
  • The clsPaymentDetailCollection bypasses the standard BOF criteria pattern; callers must use the specific builder methods to construct retrieval queries.*

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.Payment.EFT\clsPaymentDetail.vb
  • Business\SAIF.Business.Payment.EFT\clsPaymentDetailCollection.vb
  • Business\SAIF.Business.Payment.EFT\Tests\PaymentDetailTests.vb