SIC Validations

The purpose of this page is to summarise the additional usage validations performed by the SIC scheme pack when processing a message.

All messages undergo an XSD schema check to make sure that the fields are technically correct, but only certain fields have additional usage validations performed on them. If an additional usage validation is not listed below then it is not validated by the scheme pack.

Inbound pacs.008

The following validations are performed on an Inbound pacs.008 from the Scheme. Failures will result in a pacs.002 sent back to the scheme with the Return Code quoted below, and an ERROR level InboundMessageFailed system event to inform the Client.

Some validations are conditional on whether the IBAN contained in the pacs.008 is a QR IBAN or a Non-QR IBAN.

Field

Validation Details

Return Code

System Event Description

All Fields

Checks if the message is valid against the SIC pacs.008 xsd

FF01

An error message from schema validation failure.

Example:

org.xml.sax.SAXParseException: cvc-complex-type.2.4.a: Invalid content was found starting with element '{"http://www.six-interbank-clearing.com/de/pacs.008.001.08.ch.02":CreDtTm}'. One of '{"http://www.six-interbank-clearing.com/de/pacs.008.001.08.ch.02":MsgId}' is expected.

CdtTrfTxInf+AccptncDtTm

The provided value must be earlier than the current time plus the sic5.receive.timeout config value (in milliseconds)

AB05

Processing timed out. Processing took 6000 ms. Scheme configured timeout is 5000 ms

CdtTrfTxInf+CdtrAcct++Id+++IBAN

Mandatory field, should be provided

FF01

Mandatory field: FIToFICstmrCdtTrf.CdtTrfTxInf[0].CdtrAcct.Id.IBAN is empty

CdtTrfTxInf+IntrBkSttlmAmt++Value

Value is not greater than the amount specified in the config value sic5.rule.creditor-rules.amount

AM02

Amount exceeds scheme limit

CdtTrfTxInf+InstdAgt++FinInstnId+++ClrSysMmbId++++MmbId

Value matches an entry in the config list sic5.rule.creditor-rules.mmb-ids

RC01

MmbId value not allowed

QR IBAN: CdtTrfTxInf+RmtInf++Strd (and Ustrd)

Structured and Unstructured Remittance Information not allowed. Ustrd must be null. Strd must be present.

MS03

Structured and Unstructured Remittance Information not allowed

Non-QR IBAN: CdtTrfTxInf+RmtInf++Strd (and Ustrd)

Either Strd or Ustrd can be provided (not both). If Strd is not provided then Ustrd must be provided.

If Ustrd is not provided, then Strd must be provided.

MS03

Structured and Unstructured Remittance Information not allowed

QR and Non-QR IBAN: CdtTrfTxInf+RmtInf++Strd

Size of Strd greater than 1.

MS03

No valid Creditor Remittance Type

QR and Non-QR IBAN: CdtTrfTxInf+RmtInf++Strd+++CdtrRefInf

If Strd is populated, then CdtrRefInf must be populated

MS03

Creditor Reference Information mandatory if Structured Remittance used

QR and Non-QR IBAN: CdtTrfTxInf+RmtInf++Strd+++CdtrRefInf++++Tp

If CdtrRefInf is populated, then Tp must be populated

MS03

Type is mandatory if Creditor Reference Information used

QR IBAN: CdtTrfTxInf+RmtInf++Strd+++CdtrRefInf++++Tp+++++CdOrPrtry

Cd must be null and Prtry must be QRR

MS03

Only QRR(proprietary) allowed in Creditor Reference Information Type

Non-QR IBAN: CdtTrfTxInf+RmtInf++Strd+++CdtrRefInf++++Tp+++++CdOrPrtry

Creditor QR-IBAN not allowed for ISO Reference. Cd must be SCOR and Prtry must be null

MS03

No valid Creditor QR-IBAN Swiss QR-Bill

CdtTrfTxInf+UltmtDbtr++PstlAdr

Addresses are classified according to the address fields populated as per the Postal Address Structural Validations

Note - these validations can be disabled - see configurations page.

RR02

CdtTrfTxInf.UltmtDbtr.PstlAdr - address must be either structured, hybrid or unstructured

CdtTrfTxInf+Dbtr++PstlAdr

Addresses are classified according to the address fields populated as per the Postal Address Structural Validations

Note - these validations can be disabled - see configurations page.

RR02

CdtTrfTxInf.Dbtr.PstlAdr - address must be either structured, hybrid or unstructured

CdtTrfTxInf+Cdtr++PstlAdr

Addresses are classified according to the address fields populated as per the Postal Address Structural Validations

Note - these validations can be disabled - see configurations page.

RR03

CdtTrfTxInf.Cdtr.PstlAdr - address must be either structured, hybrid or unstructured

CdtTrfTxInf+UltmtCdtr++PstlAdr

Addresses are classified according to the address fields populated as per the Postal Address Structural Validations

Note - these validations can be disabled - see configurations page.

RR03

CdtTrfTxInf.UltmtCdtr.PstlAdr - address must be either structured, hybrid or unstructured

Outbound pacs.008

If any of the below validations fail then a Response is sent back to the client and an ERROR level SchemeRuleValidationFailed system event is raised. Both response and system event quote the Return Code.

Some validations are conditional on whether the IBAN contained in the pacs.008 is a QR IBAN or a Non-QR IBAN.

Field

Validation Details

Return Code

System Event Description

All Fields

Checks if the message is valid against the SIC pacs.008 xsd

FF01

An error starting with the prefixed text 'XSD Schema Validation failure -' followed by an error message from schema validation failure.

Example:

XSD Schema Validation failure - cvc-complex-type.2.4.a: Invalid content was found starting with element '{"http://www.six-interbank-clearing.com/de/pacs.008.001.08.ch.02":CreDtTm}'. One of '{"http://www.six-interbank-clearing.com/de/pacs.008.001.08.ch.02":MsgId}' is expected.

CdtTrfTxInf+CdtrAcct++Id+++IBAN

Mandatory field, should be provided

FF01

Mandatory field: FIToFICstmrCdtTrf.CdtTrfTxInf[0].CdtrAcct.Id.IBAN is empty

CdtTrfTxInf+IntrBkSttlmAmt++Value

Value is not greater than the amount specified in the config value sic5.rule.debtor-rules.amount

AM02

Amount exceeds scheme limit

CdtTrfTxInf+InstdAgt++FinInstnId+++ClrSysMmbId++++MmbId

Value matches an entry in the config list sic5.rule.debtor-rules.mmb-ids

RC01

MmbId value not allowed

QR IBAN: CdtTrfTxInf+RmtInf++Strd (and Ustrd)

Structured and Unstructured Remittance Information not allowed. Ustrd must be null. Strd must be present.

RR07

Structured and Unstructured Remittance Information not allowed

Non-QR IBAN: CdtTrfTxInf+RmtInf++Strd (and Ustrd)

Either Strd or Ustrd can be provided (not both). If Strd is not provided then Ustrd must be provided.

If Ustrd is not provided, then Strd must be provided.

RR07

Structured and Unstructured Remittance Information not allowed

QR and Non-QR IBAN: CdtTrfTxInf+RmtInf++Strd

Size of Strd greater than 1. No valid Creditor Structured Remittance Type

RR07

No valid Creditor Remittance Type

QR and Non-QR IBAN: CdtTrfTxInf+RmtInf\\++Strd

If CdtTrfTxInf+RmtInf++Strd has been provided, RfrdDocAmt, RfrdDocInf, Invcee, Invcr, TaxRmt and GrnshmtRmt must be null

RR07

Only Creditor Reference Information allowed in Structured Remittance Information

QR and Non-QR IBAN: CdtTrfTxInf+RmtInf++Strd+++CdtrRefInf

If Strd is populated, then CdtrRefInf must be populated

RR09

Creditor Reference Information mandatory if Structured Remittance used

QR and Non-QR IBAN: CdtTrfTxInf+RmtInf++Strd+++CdtrRefInf++++Tp

Type is mandatory if Creditor Reference Information used. If CdtrRefInf is populated, then Tp must be populated

RR09

Type is mandatory if Creditor Reference Information used

QR IBAN: CdtTrfTxInf+RmtInf++Strd+++CdtrRefInf++++Tp+++++CdOrPrtry

Cd must be null and Prtry must be QRR

RR07

Only QRR(proprietary) allowed in Creditor Reference Information Type

Non-QR IBAN: CdtTrfTxInf+RmtInf++Strd+++CdtrRefInf++++Tp+++++CdOrPrtry

Cd must be SCOR and Prtry must be null

  • RR09 (If prtry is 'QRR')

  • RR07

  • No valid Creditor QR-IBAN Swiss QR-Bill

  • Creditor QR-IBAN not allowed for ISO Reference

QR IBAN: CdtTrfTxInf+RmtInf

RmtInf must be provided

RR09

Invalid Creditor Reference Swiss QR-Bill

QR IBAN: CdtTrfTxInf+RmtInf++Strd+++CdtrRefInf

CdtrRefInf must be provided

RR09

Invalid Creditor Reference Swiss QR-Bill

QR IBAN: CdtTrfTxInf+RmtInf++Strd+++CdtrRefInf++++Ref

  • Must not be null

  • Length of the value should be 27

  • Should be a positive number

  • Complies to the following regular expression ^[0-9]+$

  • Passes check digit validation

RR09

Invalid Creditor Reference Swiss QR-Bill

Non-QR IBAN: CdtTrfTxInf+RmtInf++Strd+++CdtrRefInf++++Ref

  • Must not be null

  • Length of the value should be between 2 and 25

  • Prefix of RF

  • If the value of CdtTrfTxInf+RmtInf++Strd+++CdtrRefInf++++Tp+++++Issr = ISO then the following also applies:

    • The value must also match the following regular expression: ^RF\\d{2}[A-Za-z0-9]{0,21}$

    • Passes check digit validation

RR09

  • Invalid SCOR (If Issr = ISO)

  • Invalid Creditor Reference Global QR-Bill

CdtTrfTxInf+UltmtDbtr++PstlAdr

Addresses are classified according to the address fields populated as per the Postal Address Structural Validations

Note - this validation can be disabled - see configurations page.

BE07

CdtTrfTxInf.UltmtDbtr.PstlAdr - address must be either structured, hybrid or unstructured

CdtTrfTxInf+Dbtr++PstlAdr

Addresses are classified according to the address fields populated as per the Postal Address Structural Validations

Note - this validation can be disabled - see configurations page.

BE07

CdtTrfTxInf.Dbtr.PstlAdr - address must be either structured, hybrid or unstructured

CdtTrfTxInf+Cdtr++PstlAdr

Addresses are classified according to the address fields populated as per the Postal Address Structural Validations

Note - this validation can be disabled - see configurations page.

BE04

CdtTrfTxInf.Cdtr.PstlAdr - address must be either structured, hybrid or unstructured

CdtTrfTxInf+UltmtCdtr++PstlAdr

Addresses are classified according to the address fields populated as per the Postal Address Structural Validations

Note - this validation can be disabled - see configurations page.

BE04

CdtTrfTxInf.UltmtCdtr.PstlAdr - address must be either structured, hybrid or unstructured

Outbound pacs.004

If any of the below validations fail then a Response is sent back to the client and an ERROR level SchemeRuleValidationFailed system event is raised. Both response and system event quote the Return Code.

Field

Validation Details

Return Code

System Event Description

All Fields

Checks if the message is valid against the SIC pacs.004 xsd

FF01

An error starting with the prefixed text 'XSD Schema Validation failure -' followed by an error message from schema validation failure.

Example:

XSD Schema Validation failure - cvc-complex-type.2.4.a: Invalid content was found starting with element '{"http://www.six-interbank-clearing.com/de/pacs.004.001.09.ch.02":CreDtTm}'. One of '{"http://www.six-interbank-clearing.com/de/pacs.004.001.09.ch.02":MsgId}' is expected.

Outbound pacs.002

If any of the below validations fail then a Response is sent back to the client and an ERROR level SchemeRuleValidationFailed system event is raised. Both response and system event quote the Return Code.

Field

Validation Details

Return Code

System Event Description

All Fields

Checks if the message is valid against the SIC pacs.002 xsd

FF01

An error starting with the prefixed text 'XSD Schema Validation failure -' followed by an error message from schema validation failure.

Example:

XSD Schema Validation failure - cvc-complex-type.2.4.a: Invalid content was found starting with element '{"http://www.six-interbank-clearing.com/de/pacs.002.001.10.ch.02":CreDtTm}'. One of '{"http://www.six-interbank-clearing.com/de/pacs.002.001.10.ch.02":MsgId}' is expected.

Outbound pacs.028

If any of the below validations fail then a Response is sent back to the client and an ERROR level SchemeRuleValidationFailed system event is raised. Both response and system event quote the Return Code.

Field

Validation Details

Return Code

System Event Description

All Fields

Checked to make sure the message is valid against the SIC pacs.028 xsd

FF01

An error starting with the prefixed text 'XSD Schema Validation failure -' followed by an error message from schema validation failure.

Example:

XSD Schema Validation failure - cvc-complex-type.2.4.a: Invalid content was found starting with element '{"http://www.six-interbank-clearing.com/de/pacs.028.001.03.ch.01":CreDtTm}'. One of '{"http://www.six-interbank-clearing.com/de/pacs.028.001.03.ch.01":MsgId}' is expected.

Postal Address Structural Validations

Address Line Populated Town Name Populated Country Populated Any Other Address Fields Populated Classification

No

Yes

Yes

Structured

Yes

No

Yes

No

Unstructured

Yes

No

No

No

Unstructured

Yes

Yes

Yes

Hybrid

If configured, transactions that cannot be classified as one of the above address types will result in a validation failure