Class VopPaymentStatusReport
- Namespace
- Subsembly.Sepa.VerificationOfPayee
- Assembly
- Subsembly.Sepa.dll
Extensions for SepaPaymentStatusReport in order to support the German Verification of Payee implementation.
public static class VopPaymentStatusReport
- Inheritance
-
VopPaymentStatusReport
- Inherited Members
Fields
VOP_CLOSEMATCHNAME_MAXLENGTH
Maximum length of close match creditor name that may be passed to SetVopStatusCode(SepaOriginalTransactionInformation, VopStatusCode, string, VopNotApplicableReasonCode, string).
public const int VOP_CLOSEMATCHNAME_MAXLENGTH = 209
Field Value
VOP_NOTAPPLICABLEREASONTEXT_MAXLENGTH
Maximum length of narrative that may be passed to SetVopStatusCode(SepaOriginalTransactionInformation, VopStatusCode, string, VopNotApplicableReasonCode, string).
public const int VOP_NOTAPPLICABLEREASONTEXT_MAXLENGTH = 105
Field Value
VOP_STATUSNARRATIVE_MAXLENGTH
Maximum length of narrative that may be passed to SetVopStatusNarrative(SepaPaymentStatusReport, VopStatusCode, string).
public const int VOP_STATUSNARRATIVE_MAXLENGTH = 500
Field Value
Methods
GetVopGroupStatus(SepaPaymentStatusReport)
Gets the VoP Group Status from the SepaPaymentStatusReport.
public static VopGroupStatusCode GetVopGroupStatus(this SepaPaymentStatusReport aPaymentStatusReport)
Parameters
aPaymentStatusReport
SepaPaymentStatusReport
Returns
Remarks
If the SepaPaymentStatusReport does not contain a GroupStatus, then this method attempts to derived a VoP Group Status from the content of the NumberOfTransactionsPerStatus collection.
GetVopResult(SepaPaymentStatusReport, SepaCreditTransferPaymentInitiation, RepairPainOptions)
Compile and provide elaborate Verification of Payee result information, optionally fixing the original SepaCreditTransferPaymentInitiation to contain solely Verification of Payee matches.
public static VopResult GetVopResult(this SepaPaymentStatusReport aPaymentStatusReport, SepaCreditTransferPaymentInitiation aCreditTransferPain, VopPaymentStatusReport.RepairPainOptions nRepairOptions = RepairPainOptions.None)
Parameters
aPaymentStatusReport
SepaPaymentStatusReportaCreditTransferPain
SepaCreditTransferPaymentInitiationThe original Credit Transfer Payment Initiation for which the Verfication of Payee result is provided through
aPaymentStatusReport
. This may benull
, however, if it is provided, then the returned VopResult contains additional information.nRepairOptions
VopPaymentStatusReport.RepairPainOptionsIf this parameter is not None, then the given
aCreditTransferPain
instance will be modified according to the selected VopPaymentStatusReport.RepairPainOptions. On return, the repaired instance only contains transactions that will pass the Verification of Payee with a Match result. This parameter is ignored ifaCreditTransferPain
isnull
.
Returns
Remarks
In order to facilitate proper matching of the Verification of Payee result with the transactions in the SepaCreditTransferPaymentInitiation, each transaction must have a unique EndToEndId.
Exceptions
- ArgumentNullException
The parameter
aPaymentStatusReport
wasnull
.
GetVopStatusNarrative(SepaPaymentStatusReport, VopStatusCode)
Returns the multi-line narrative text that was provided for the status report for a given VopStatusCode.
public static string GetVopStatusNarrative(this SepaPaymentStatusReport aPaymentStatusReport, VopStatusCode nVopStatusCode)
Parameters
aPaymentStatusReport
SepaPaymentStatusReportnVopStatusCode
VopStatusCode
Returns
- string
If a narrative text was provided, then it is returned. If no narrative was provided for the requested status code, then
null
is returned.
Exceptions
- ArgumentNullException
The parameter
aPaymentStatusReport
wasnull
.- ArgumentException
The parameter
nVopStatusCode
was not a valid status code.
SetVopGroupStatus(SepaPaymentStatusReport, VopGroupStatusCode)
public static void SetVopGroupStatus(this SepaPaymentStatusReport aPaymentStatusReport, VopGroupStatusCode nStatusCode)
Parameters
aPaymentStatusReport
SepaPaymentStatusReportnStatusCode
VopGroupStatusCode
Exceptions
SetVopNumberOfTransactionsPerStatus(SepaPaymentStatusReport, VopStatusCode, int)
public static void SetVopNumberOfTransactionsPerStatus(this SepaPaymentStatusReport aPaymentStatusReport, VopStatusCode nVopStatusCode, int nNumberOfTransactions)
Parameters
aPaymentStatusReport
SepaPaymentStatusReportnVopStatusCode
VopStatusCodenNumberOfTransactions
int
Exceptions
- ArgumentNullException
The parameter
aPaymentStatusReport
wasnull
.- ArgumentException
The parameter
nVopStatusCode
was not a valid status code.
SetVopStatusNarrative(SepaPaymentStatusReport, VopStatusCode, string)
public static void SetVopStatusNarrative(this SepaPaymentStatusReport aPaymentStatusReport, VopStatusCode nVopStatusCode, string sVopStatusNarrative)
Parameters
aPaymentStatusReport
SepaPaymentStatusReportnVopStatusCode
VopStatusCodesVopStatusNarrative
string
Exceptions
- ArgumentNullException
The parameter
aPaymentStatusReport
wasnull
.- ArgumentException
The parameter
nVopStatusCode
was not a valid status code.