Class PaymentInitiationBulkElementJson


  • @Validated
    @Generated(value="io.swagger.codegen.v3.generators.java.SpringCodegen",
               date="2021-05-24T13:41:46.273636+03:00[Europe/Kiev]")
    public class PaymentInitiationBulkElementJson
    extends Object
    Generic body for a bulk payment initation entry. The bulk entry type is a type which follows the JSON formats for the supported products for single payments excluding the data elements (if supported): * debtorAccount * requestedExecutionDate, * requestedExecutionTime. These data elements may not be contained in any bulk entry. This data object can be used to represent valid bulk payment initiations entry for the following JSON based payment product, which where defined in the Implementation Guidelines: * sepa-credit-transfers * instant-sepa-credit-transfers * target-2-payments * cross-border-credit-transfers For the convenience of the implementer additional which are already predefinded in the Implementation Guidelines are included (but commented in source code), such that an ASPSP may add them easily. Take care: Since the format is intended to fit for all payment products there are additional conditions which are NOT covered by this specification. Please check the Implementation Guidelines for detailes. The following data element are depending on the actual payment product available (in source code): <table style=\"width:100%\"> <tr><th>Data Element</th><th>SCT EU Core</th><th>SCT INST EU Core</th><th>Target2 Paym. Core</th><th>Cross Border CT Core</th></tr> <tr><td>endToEndIdentification</td><td> optional</td> <td>optional</td> <td>optional</td> <td>n.a.</td> </tr> <tr><td>instructionIdentification</td> <td>n.a.</td> <td>n.a.</td> <td>n.a.</td> <td>n.a.</td> </tr> <tr><td>debtorName</td> <td>n.a.</td> <td>n.a.</td> <td>n.a.</td> <td>n.a.</td> </tr> <tr><td>debtorId</td> <td>n.a.</td> <td>n.a.</td> <td>n.a.</td> <td>n.a.</td> </tr> <tr><td>ultimateDebtor</td> <td>n.a.</td> <td>n.a.</td> <td>n.a.</td> <td>n.a.</td> </tr> <tr><td>instructedAmount</td> <td>mandatory</td> <td>mandatory</td> <td>mandatory</td> <td>mandatory</td> </tr> <tr><td>transactionCurrency</td> <td>n.a.</td> <td>n.a.</td> <td>n.a.</td> <td>n.a.</td> </tr> <tr><td>exchangeRateInformation</td> <td>n.a.</td> <td>n.a.</td><td>n.a.</td> <td>n.a.</td> </tr> <tr><td>creditorAccount</td> <td>mandatory</td> <td>mandatory</td> <td>mandatory</td> <td>mandatory</td> </tr> <tr><td>creditorAgent</td> <td>optional</td> <td>optional</td> <td>optional</td> <td>conditional </td> </tr> <tr><td>creditorAgentName</td> <td>n.a.</td> <td>n.a.</td> <td>n.a.</td> <td>n.a.</td> </tr> <tr><td>creditorName</td> <td>mandatory</td> <td>mandatory</td> <td>mandatory</td> <td>mandatory</td> </tr> <tr><td>creditorId</td> <td>n.a.</td> <td>n.a.</td> <td>n.a.</td> <td>n.a.</td> </tr> <tr><td>creditorAddress</td>optional</td> <td>optional</td> <td>optional</td> <td>conditional </td> </tr> <tr><td>creditorNameAndAddress</td> <td>n.a.</td> <td>n.a.</td> <td>n.a.</td> <td>n.a.</td> </tr> <tr><td>ultimateCreditor</td> <td>n.a.</td> <td>n.a.</td> <td>n.a.</td> <td>n.a.</td> </tr> <tr><td>purposeCode</td> <td>n.a.</td> <td>n.a.</td> <td>n.a.</td> <td>n.a.</td> </tr> <tr><td>chargeBearer</td> <td>n.a.</td> <td>n.a.</td> <td>optional</td> <td>conditional </td> </tr> <tr><td>remittanceInformationUnstructured</td> <td>optional</td> <td>optional</td> <td> optional</td> <td>optional</td> </tr> <tr><td>remittanceInformationUnstructuredArray</td> <td>n.a.</td> <td>n.a.</td> <td>n.a.</td> <td>n.a.</td> </tr> <tr><td>remittanceInformationStructured</td> <td>n.a.</td> <td>n.a.</td> <td>n.a.</td> <td>n.a.</td> </tr> <tr><td>remittanceInformationStructuredArray</td> <td>n.a.</td> <td>n.a.</td> <td>n.a.</td> <td>n.a.</td> </tr> </td></tr> </table> IMPORTANT: In this API definition the following holds: * All data elements mentioned above are defined, but some of them are commented, i.e. they are only visible in the source code and can be used by uncommenting them. * Data elements which are mandatory in the table above for all payment products are set to be mandatory in this specification. * Data elements which are indicated in the table above as n.a. for all payment products are commented in the source code. * Data elements which are indicated to be option, conditional or mandatory for at least one payment product in the table above are set to be optional in the s specification except the case where all are definde to be mandatory. * Data element which are inticated to be n.a. can be used by the ASPS if needed. In this case uncomment tthe the relatetd lines in the source code. * If one uses this data types for some payment products he has to ensure that the used data type is valid according to the underlying payment product, e.g. by some appropriate validations.
    • Constructor Detail

      • PaymentInitiationBulkElementJson

        public PaymentInitiationBulkElementJson()
    • Method Detail

      • getEndToEndIdentification

        @Size(max=35)
        public @Size(max=35) String getEndToEndIdentification()
        Get endToEndIdentification
        Returns:
        endToEndIdentification
      • setEndToEndIdentification

        public void setEndToEndIdentification​(String endToEndIdentification)
      • getInstructionIdentification

        @Size(max=35)
        public @Size(max=35) String getInstructionIdentification()
        Get instructionIdentification
        Returns:
        instructionIdentification
      • setInstructionIdentification

        public void setInstructionIdentification​(String instructionIdentification)
      • getDebtorName

        @Size(max=70)
        public @Size(max=70) String getDebtorName()
        Get debtorName
        Returns:
        debtorName
      • setDebtorName

        public void setDebtorName​(String debtorName)
      • getUltimateDebtor

        @Size(max=70)
        public @Size(max=70) String getUltimateDebtor()
        Get ultimateDebtor
        Returns:
        ultimateDebtor
      • setUltimateDebtor

        public void setUltimateDebtor​(String ultimateDebtor)
      • getInstructedAmount

        @NotNull
        @Valid
        public @NotNull @Valid Amount getInstructedAmount()
        Get instructedAmount
        Returns:
        instructedAmount
      • setInstructedAmount

        public void setInstructedAmount​(Amount instructedAmount)
      • getCreditorAccount

        @NotNull
        @Valid
        public @NotNull @Valid AccountReference getCreditorAccount()
        Get creditorAccount
        Returns:
        creditorAccount
      • setCreditorAccount

        public void setCreditorAccount​(AccountReference creditorAccount)
      • getCreditorAgent

        @Pattern(regexp="[A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){0,1}")
        public @Pattern(regexp="[A-Z]{6,6}[A-Z2-9][A-NP-Z0-9]([A-Z0-9]{3,3}){0,1}") String getCreditorAgent()
        Get creditorAgent
        Returns:
        creditorAgent
      • setCreditorAgent

        public void setCreditorAgent​(String creditorAgent)
      • getCreditorAgentName

        @Size(max=70)
        public @Size(max=70) String getCreditorAgentName()
        Get creditorAgentName
        Returns:
        creditorAgentName
      • setCreditorAgentName

        public void setCreditorAgentName​(String creditorAgentName)
      • getCreditorName

        @NotNull
        @Size(max=70)
        public @NotNull @Size(max=70) String getCreditorName()
        Get creditorName
        Returns:
        creditorName
      • setCreditorName

        public void setCreditorName​(String creditorName)
      • getCreditorAddress

        @Valid
        public @Valid Address getCreditorAddress()
        Get creditorAddress
        Returns:
        creditorAddress
      • setCreditorAddress

        public void setCreditorAddress​(Address creditorAddress)
      • getCreditorId

        @Size(max=35)
        public @Size(max=35) String getCreditorId()
        Get creditorId
        Returns:
        creditorId
      • setCreditorId

        public void setCreditorId​(String creditorId)
      • getUltimateCreditor

        @Size(max=70)
        public @Size(max=70) String getUltimateCreditor()
        Get ultimateCreditor
        Returns:
        ultimateCreditor
      • setUltimateCreditor

        public void setUltimateCreditor​(String ultimateCreditor)
      • getPurposeCode

        @Valid
        public @Valid PurposeCode getPurposeCode()
        Get purposeCode
        Returns:
        purposeCode
      • setPurposeCode

        public void setPurposeCode​(PurposeCode purposeCode)
      • getChargeBearer

        @Valid
        public @Valid ChargeBearer getChargeBearer()
        Get chargeBearer
        Returns:
        chargeBearer
      • setChargeBearer

        public void setChargeBearer​(ChargeBearer chargeBearer)
      • getRemittanceInformationUnstructured

        @Size(max=140)
        public @Size(max=140) String getRemittanceInformationUnstructured()
        Get remittanceInformationUnstructured
        Returns:
        remittanceInformationUnstructured
      • setRemittanceInformationUnstructured

        public void setRemittanceInformationUnstructured​(String remittanceInformationUnstructured)
      • getRemittanceInformationStructured

        @Size(max=140)
        public @Size(max=140) String getRemittanceInformationStructured()
        Get remittanceInformationStructured
        Returns:
        remittanceInformationStructured
      • setRemittanceInformationStructured

        public void setRemittanceInformationStructured​(String remittanceInformationStructured)
      • getRemittanceInformationStructuredArray

        @Valid
        public @Valid RemittanceInformationStructuredArray getRemittanceInformationStructuredArray()
        Get remittanceInformationStructuredArray
        Returns:
        remittanceInformationStructuredArray
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object