Class EbicsReturnCode

Namespace
Subsembly.EBICS
Assembly
Subsembly.EBICS.Core.dll

Wrapper for an EBICS ReturnCode and optional ReportText element.

public class EbicsReturnCode
Inheritance
EbicsReturnCode
Inherited Members

Constructors

EbicsReturnCode(string, bool)

public EbicsReturnCode(string sReturnCode, bool fBusinessReturnCode = false)

Parameters

sReturnCode string
fBusinessReturnCode bool

EbicsReturnCode(string, string, bool)

public EbicsReturnCode(string sReturnCode, string sFullReportText, bool fBusinessReturnCode = false)

Parameters

sReturnCode string
sFullReportText string
fBusinessReturnCode bool

Fields

EBICS_ACCOUNT_AUTHORISATION_FAILED

public const string EBICS_ACCOUNT_AUTHORISATION_FAILED = "091302"

Field Value

string

EBICS_AMOUNT_CHECK_FAILED

public const string EBICS_AMOUNT_CHECK_FAILED = "091303"

Field Value

string

EBICS_AUTHENTICATION_FAILED

public const string EBICS_AUTHENTICATION_FAILED = "061001"

Field Value

string

EBICS_AUTHORISATION_ORDER_TYPE_FAILED

public const string EBICS_AUTHORISATION_ORDER_TYPE_FAILED = "090003"

Field Value

string

EBICS_BANK_PUBKEY_UPDATE_REQUIRED

public const string EBICS_BANK_PUBKEY_UPDATE_REQUIRED = "091008"

Field Value

string

EBICS_CERTIFICATES_VALIDATION_ERROR

public const string EBICS_CERTIFICATES_VALIDATION_ERROR = "091219"

Field Value

string

EBICS_DISTRIBUTED_SIGNATURE_AUTHORISATION_FAILED

public const string EBICS_DISTRIBUTED_SIGNATURE_AUTHORISATION_FAILED = "091007"

Field Value

string

EBICS_DOWNLOAD_POSTPROCESS_DONE

public const string EBICS_DOWNLOAD_POSTPROCESS_DONE = "011000"

Field Value

string

EBICS_DOWNLOAD_POSTPROCESS_SKIPPED

public const string EBICS_DOWNLOAD_POSTPROCESS_SKIPPED = "011001"

Field Value

string

EBICS_DOWNLOAD_SIGNED_ONLY

public const string EBICS_DOWNLOAD_SIGNED_ONLY = "091001"

Field Value

string

EBICS_DOWNLOAD_UNSIGNED_ONLY

public const string EBICS_DOWNLOAD_UNSIGNED_ONLY = "091002"

Field Value

string

EBICS_DUPLICATE_SIGNATURE

public const string EBICS_DUPLICATE_SIGNATURE = "091306"

Field Value

string

EBICS_INCOMPATIBLE_ORDER_ATTRIBUTE

public const string EBICS_INCOMPATIBLE_ORDER_ATTRIBUTE = "091121"

Field Value

string

EBICS_INTERNAL_ERROR

public const string EBICS_INTERNAL_ERROR = "061099"

Field Value

string

EBICS_INVALID_HOST_ID

public const string EBICS_INVALID_HOST_ID = "091011"

Field Value

string

EBICS_INVALID_ORDER_DATA_FORMAT

public const string EBICS_INVALID_ORDER_DATA_FORMAT = "090004"

Field Value

string

EBICS_INVALID_ORDER_PARAMS

public const string EBICS_INVALID_ORDER_PARAMS = "091112"

Field Value

string

EBICS_INVALID_ORDER_TYPE

public const string EBICS_INVALID_ORDER_TYPE = "091005"

Field Value

string

EBICS_INVALID_REQUEST

public const string EBICS_INVALID_REQUEST = "061002"

Field Value

string

EBICS_INVALID_REQUEST_CONTENT

public const string EBICS_INVALID_REQUEST_CONTENT = "091113"

Field Value

string

EBICS_INVALID_SIGNATURE_FILE_FORMAT

public const string EBICS_INVALID_SIGNATURE_FILE_FORMAT = "091111"

Field Value

string

EBICS_INVALID_SIGNER_STATE

public const string EBICS_INVALID_SIGNER_STATE = "091305"

Field Value

string

EBICS_INVALID_USER_OR_USER_STATE

public const string EBICS_INVALID_USER_OR_USER_STATE = "091002"

Field Value

string

EBICS_INVALID_USER_STATE

public const string EBICS_INVALID_USER_STATE = "091004"

Field Value

string

EBICS_INVALID_XML

public const string EBICS_INVALID_XML = "091010"

Field Value

string

EBICS_KEYMGMT_DUPLICATE_KEY

public const string EBICS_KEYMGMT_DUPLICATE_KEY = "091218"

Field Value

string

EBICS_KEYMGMT_KEYLENGTH_ERROR_AUTHENTICATION

public const string EBICS_KEYMGMT_KEYLENGTH_ERROR_AUTHENTICATION = "091205"

Field Value

string

EBICS_KEYMGMT_KEYLENGTH_ERROR_ENCRYPTION

public const string EBICS_KEYMGMT_KEYLENGTH_ERROR_ENCRYPTION = "091206"

Field Value

string

EBICS_KEYMGMT_KEYLENGTH_ERROR_SIGNATURE

public const string EBICS_KEYMGMT_KEYLENGTH_ERROR_SIGNATURE = "091204"

Field Value

string

EBICS_KEYMGMT_NO_X509_SUPPORT

public const string EBICS_KEYMGMT_NO_X509_SUPPORT = "091207"

Field Value

string

EBICS_KEYMGMT_UNSUPPORTED_VERSION_AUTHENTICATION

public const string EBICS_KEYMGMT_UNSUPPORTED_VERSION_AUTHENTICATION = "091202"

Field Value

string

EBICS_KEYMGMT_UNSUPPORTED_VERSION_ENCRYPTION

public const string EBICS_KEYMGMT_UNSUPPORTED_VERSION_ENCRYPTION = "091203"

Field Value

string

EBICS_KEYMGMT_UNSUPPORTED_VERSION_SIGNATURE

public const string EBICS_KEYMGMT_UNSUPPORTED_VERSION_SIGNATURE = "091201"

Field Value

string

EBICS_MAX_ORDER_DATA_SIZE_EXCEEDED

public const string EBICS_MAX_ORDER_DATA_SIZE_EXCEEDED = "091117"

Field Value

string

EBICS_MAX_SEGMENTS_EXCEEDED

public const string EBICS_MAX_SEGMENTS_EXCEEDED = "091118"

Field Value

string

EBICS_MAX_TRANSACTIONS_EXCEEDED

public const string EBICS_MAX_TRANSACTIONS_EXCEEDED = "091119"

Field Value

string

EBICS_NO_DOWNLOAD_DATA_AVAILABLE

public const string EBICS_NO_DOWNLOAD_DATA_AVAILABLE = "090005"

Field Value

string

EBICS_NO_ONLINE_CHECKS

public const string EBICS_NO_ONLINE_CHECKS = "011301"

Field Value

string

EBICS_OK

public const string EBICS_OK = "000000"

Field Value

string

EBICS_ONLY_X509_SUPPORT

public const string EBICS_ONLY_X509_SUPPORT = "091217"

Field Value

string

EBICS_ORDERID_ALREADY_EXISTS

public const string EBICS_ORDERID_ALREADY_EXISTS = "091115"

Field Value

string

EBICS_ORDERID_UNKNOWN

public const string EBICS_ORDERID_UNKNOWN = "091114"

Field Value

string

EBICS_ORDER_ALREADY_EXISTS

public const string EBICS_ORDER_ALREADY_EXISTS = "091122"

Field Value

string

EBICS_ORDER_PARAMS_IGNORED

public const string EBICS_ORDER_PARAMS_IGNORED = "031001"

Field Value

string

EBICS_PARTNER_ID_MISMATCH

public const string EBICS_PARTNER_ID_MISMATCH = "091120"

Field Value

string

EBICS_PROCESSING_ERROR

public const string EBICS_PROCESSING_ERROR = "091116"

Field Value

string

EBICS_RECOVERY_NOT_SUPPORTED

public const string EBICS_RECOVERY_NOT_SUPPORTED = "091105"

Field Value

string

EBICS_SEGMENT_SIZE_EXCEEDED

public const string EBICS_SEGMENT_SIZE_EXCEEDED = "091009"

Field Value

string

EBICS_SIGNATURE_VERIFICATION_FAILED

public const string EBICS_SIGNATURE_VERIFICATION_FAILED = "091301"

Field Value

string

EBICS_SIGNER_UNKNOWN

public const string EBICS_SIGNER_UNKNOWN = "091304"

Field Value

string

EBICS_TX_ABORT

public const string EBICS_TX_ABORT = "091102"

Field Value

string

EBICS_TX_MESSAGE_REPLAY

public const string EBICS_TX_MESSAGE_REPLAY = "091103"

Field Value

string

EBICS_TX_RECOVERY_SYNC

public const string EBICS_TX_RECOVERY_SYNC = "061101"

Field Value

string

EBICS_TX_SEGMENT_NUMBER_EXCEEDED

public const string EBICS_TX_SEGMENT_NUMBER_EXCEEDED = "091104"

Field Value

string

EBICS_TX_SEGMENT_NUMBER_UNDERRUN

public const string EBICS_TX_SEGMENT_NUMBER_UNDERRUN = "011101"

Field Value

string

EBICS_TX_UNKNOWN_TXID

public const string EBICS_TX_UNKNOWN_TXID = "091101"

Field Value

string

EBICS_UNSUPPORTED_ORDER_TYPE

public const string EBICS_UNSUPPORTED_ORDER_TYPE = "091006"

Field Value

string

EBICS_UNSUPPORTED_REQUEST_FOR_ORDER_INSTANCE

public const string EBICS_UNSUPPORTED_REQUEST_FOR_ORDER_INSTANCE = "090006"

Field Value

string

EBICS_USER_UNKNOWN

public const string EBICS_USER_UNKNOWN = "091003"

Field Value

string

EBICS_X509_CERTIFICATE_EXPIRED

public const string EBICS_X509_CERTIFICATE_EXPIRED = "091208"

Field Value

string

EBICS_X509_CERTIFICATE_NOT_VALID_YET

public const string EBICS_X509_CERTIFICATE_NOT_VALID_YET = "091209"

Field Value

string

EBICS_X509_CTL_INVALID

public const string EBICS_X509_CTL_INVALID = "091213"

Field Value

string

EBICS_X509_INVALID_BASIC_CONSTRAINTS

public const string EBICS_X509_INVALID_BASIC_CONSTRAINTS = "091216"

Field Value

string

EBICS_X509_INVALID_POLICY

public const string EBICS_X509_INVALID_POLICY = "091215"

Field Value

string

EBICS_X509_INVALID_THUMBPRINT

public const string EBICS_X509_INVALID_THUMBPRINT = "091212"

Field Value

string

EBICS_X509_UNKNOWN_CERTIFICATE_AUTHORITY

public const string EBICS_X509_UNKNOWN_CERTIFICATE_AUTHORITY = "091214"

Field Value

string

EBICS_X509_WRONG_ALGORITHM

public const string EBICS_X509_WRONG_ALGORITHM = "091211"

Field Value

string

EBICS_X509_WRONG_KEY_USAGE

public const string EBICS_X509_WRONG_KEY_USAGE = "091210"

Field Value

string

Properties

BusinessReturnCode

Indicates whether this is a business related return code, or a technical return code.

public bool BusinessReturnCode { get; }

Property Value

bool

This is true for business related return codes and false for technical return codes.

Error

True is the ErrorClass is RecoverableError or higher.

public bool Error { get; }

Property Value

bool

ErrorClass

The error class from the ReturnCode.

public EbicsErrorClass ErrorClass { get; }

Property Value

EbicsErrorClass

NoData

True if this is the business return code EBICS_NO_DOWNLOAD_DATA_AVAILABLE.

public bool NoData { get; }

Property Value

bool

OK

True if, and only if, the ReturnCode is EBICS_OK.

public bool OK { get; }

Property Value

bool

ReportText

Optional report text without the symbolic name.

public string ReportText { get; }

Property Value

string

Remarks

If a report text was available in the response, then this will be the text without the symbolic name in square brackets. Example texts are "OK", or "Subscriber unknown". If there is no report text available, then this will be null.

ReturnCode

The six digit return code.

public string ReturnCode { get; }

Property Value

string

Remarks

At least this property is always available in a EbicsReturnCode instance.

Success

True if the ErrorClass is below RecoverableError.

public bool Success { get; }

Property Value

bool

SuccessOrNoData

True if the return code indicates Success or it is the business return code EBICS_NO_DOWNLOAD_DATA_AVAILABLE.

public bool SuccessOrNoData { get; }

Property Value

bool

SymbolicName

Optional symbolic name.

public string SymbolicName { get; }

Property Value

string

Remarks

If available in the response, then this was set to the symbolic name retrieved from inside the square brackets in the report text. Example symbolic names are EBICS_OK, or EBICS_USER_UNKNOWN. If there is no symbolic name available, then this will be null.

Methods

Business(string, string)

public static EbicsReturnCode Business(string sReturnCode, string sFullReportText = null)

Parameters

sReturnCode string
sFullReportText string

Returns

EbicsReturnCode

GetReportText(string, bool)

Looks up a human readable report text for a given symbolic name.

public static string GetReportText(string sSymbolicName, bool fBusinessReturnCode)

Parameters

sSymbolicName string

The symbolic name to find a report text for.

fBusinessReturnCode bool

Indicates whether the given symbolic name is from a business return code (true) or a technical return code (false).

Returns

string

If a report text is known for the given symbolic name, then it will be returned. If none is known, then null will be returned.

GetSymbolicName(string, bool)

Looks up a symbolic name for a numeric return code.

public static string GetSymbolicName(string sReturnCode, bool fBusinessReturnCode)

Parameters

sReturnCode string

The numeric return code to look up.

fBusinessReturnCode bool

Indicates whether the given return code is a business return code (true) or a technical return code (false).

Returns

string

If a symbolic name is known for the given return code, then it will be returned. If none is known, then null will be returned.

Remarks

Use this method if the server did not include a symbolic name with its return code. This method looks up the symbolic name from a list of symbolic names as defined by the EBICS 2.4.1 specification.

Technical(string, string)

public static EbicsReturnCode Technical(string sReturnCode, string sFullReportText = null)

Parameters

sReturnCode string
sFullReportText string

Returns

EbicsReturnCode

ToString()

Provides the full report text including symbolic name and report text.

public override string ToString()

Returns

string

Remarks

If the symbolic name and the report text have not been included with the return code, then this method attempts to look up a suitable symbolic name and report text.