Validation Rules
GroupReversalAndTransactionInformationNotPresentRule: If GroupHeader/GroupReversal is true, then TransactionInformation is not allowed.
GroupReversalAndTransactionInformationPresentRule: If GroupHeader/GroupReversal is false, then at least one occurrence of TransactionInformation must be present.
GroupReversalAndReasonRule: If GroupHeader/GroupReversal is true, then OriginalGroupInformation/ReversalReasonInformation/Reason must present.
InstructedAgentRule: If GroupHeader/InstructedAgent is present, then TransactionInformation/InstructedAgent is not allowed.
InstructingAgentRule: If GroupHeader/InstructingAgent is present, then TransactionInformation/InstructingAgent is not allowed.
GroupHeaderInterbankSettlementDateRule: If GroupHeader/InterbankSettlementDate is present, then TransactionInformation/InterbankSettlementDate is not allowed.
TransactionInterbankSettlementDateRule: If GroupHeader/InterbankSettlementDate is not present, then TransactionInformation/InterbankSettlementDate must be present.
GroupReversalAndNumberOfTransactionsRule: If GroupHeader/GroupReversal is false, then GroupHeader/NumberOfTransactions must equal the number of occurrences of TransactionInformation.
TotalReversedInterbankSettlementAmountRule: If GroupHeader/TotalReversedInterbankSettlementAmount is present, then all occurrences of TransactionInformation/ReversedInterbankSettlementAmount must have the same currency as the currency of GroupHeader/TotalReversedInterbankSettlementAmount.
TotalReversedInterbankSettlementAmountAndSumRule: GroupHeader/TotalReversedInterbankSettlementAmount must equal the sum of all individual TransactionInformation/ReversedInterbankSettlementAmount when present.
NoCoverSettlementMethodRule: GroupHeader/SettlementInformation/SettlementMethod must be different from COVE when reversing direct debit transactions.
SupplementaryDataRule: The SupplementaryData building block at message level must not be used to provide additional information about a transaction. The SupplementaryData element at transaction level should be used for that purpose.