Package de.adorsys.psd2.model
Class PaymentInitiationJson
- java.lang.Object
-
- de.adorsys.psd2.model.PaymentInitiationJson
-
@Validated @Generated(value="io.swagger.codegen.v3.generators.java.SpringCodegen", date="2020-11-12T17:35:11.808068+02:00[Europe/Kiev]") public class PaymentInitiationJson extends ObjectGeneric Body for a payment initation via JSON. This generic JSON body can be used to represent valid payment initiations 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>debtorAccount</td> <td>mandatory</td> <td>mandatory</td> <td>mandatory</td> <td>mandatory</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> <tr><td>requestedExecutionDate</td> <td>n.a.</td> <td>n.a.</td> <td>n.a.</td> <td>n.a.</td> </tr> <tr><td>requestedExecutionTime</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 Summary
Constructors Constructor Description PaymentInitiationJson()
-
Method Summary
-
-
-
Method Detail
-
endToEndIdentification
public PaymentInitiationJson endToEndIdentification(String endToEndIdentification)
-
getEndToEndIdentification
@Size(max=35) public @Size(max=35) String getEndToEndIdentification()
Get endToEndIdentification- Returns:
- endToEndIdentification
-
setEndToEndIdentification
public void setEndToEndIdentification(String endToEndIdentification)
-
instructionIdentification
public PaymentInitiationJson instructionIdentification(String instructionIdentification)
-
getInstructionIdentification
@Size(max=35) public @Size(max=35) String getInstructionIdentification()
Get instructionIdentification- Returns:
- instructionIdentification
-
setInstructionIdentification
public void setInstructionIdentification(String instructionIdentification)
-
debtorName
public PaymentInitiationJson debtorName(String debtorName)
-
getDebtorName
@Size(max=70) public @Size(max=70) String getDebtorName()
Get debtorName- Returns:
- debtorName
-
setDebtorName
public void setDebtorName(String debtorName)
-
debtorAccount
public PaymentInitiationJson debtorAccount(AccountReference debtorAccount)
-
getDebtorAccount
@NotNull @Valid public @NotNull @Valid AccountReference getDebtorAccount()
Get debtorAccount- Returns:
- debtorAccount
-
setDebtorAccount
public void setDebtorAccount(AccountReference debtorAccount)
-
ultimateDebtor
public PaymentInitiationJson ultimateDebtor(String ultimateDebtor)
-
getUltimateDebtor
@Size(max=70) public @Size(max=70) String getUltimateDebtor()
Get ultimateDebtor- Returns:
- ultimateDebtor
-
setUltimateDebtor
public void setUltimateDebtor(String ultimateDebtor)
-
instructedAmount
public PaymentInitiationJson instructedAmount(Amount instructedAmount)
-
getInstructedAmount
@NotNull @Valid public @NotNull @Valid Amount getInstructedAmount()
Get instructedAmount- Returns:
- instructedAmount
-
setInstructedAmount
public void setInstructedAmount(Amount instructedAmount)
-
creditorAccount
public PaymentInitiationJson creditorAccount(AccountReference creditorAccount)
-
getCreditorAccount
@NotNull @Valid public @NotNull @Valid AccountReference getCreditorAccount()
Get creditorAccount- Returns:
- creditorAccount
-
setCreditorAccount
public void setCreditorAccount(AccountReference creditorAccount)
-
creditorAgent
public PaymentInitiationJson creditorAgent(String creditorAgent)
-
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)
-
creditorAgentName
public PaymentInitiationJson creditorAgentName(String creditorAgentName)
-
getCreditorAgentName
@Size(max=70) public @Size(max=70) String getCreditorAgentName()
Get creditorAgentName- Returns:
- creditorAgentName
-
setCreditorAgentName
public void setCreditorAgentName(String creditorAgentName)
-
creditorName
public PaymentInitiationJson creditorName(String creditorName)
-
getCreditorName
@NotNull @Size(max=70) public @NotNull @Size(max=70) String getCreditorName()
Get creditorName- Returns:
- creditorName
-
setCreditorName
public void setCreditorName(String creditorName)
-
creditorAddress
public PaymentInitiationJson creditorAddress(Address creditorAddress)
-
getCreditorAddress
@Valid public @Valid Address getCreditorAddress()
Get creditorAddress- Returns:
- creditorAddress
-
setCreditorAddress
public void setCreditorAddress(Address creditorAddress)
-
creditorId
public PaymentInitiationJson creditorId(String creditorId)
-
getCreditorId
@Size(max=35) public @Size(max=35) String getCreditorId()
Identification of Creditors, e.g. a SEPA Creditor ID.- Returns:
- creditorId
-
setCreditorId
public void setCreditorId(String creditorId)
-
ultimateCreditor
public PaymentInitiationJson ultimateCreditor(String ultimateCreditor)
-
getUltimateCreditor
@Size(max=70) public @Size(max=70) String getUltimateCreditor()
Get ultimateCreditor- Returns:
- ultimateCreditor
-
setUltimateCreditor
public void setUltimateCreditor(String ultimateCreditor)
-
purposeCode
public PaymentInitiationJson purposeCode(PurposeCode purposeCode)
-
getPurposeCode
@Valid public @Valid PurposeCode getPurposeCode()
Get purposeCode- Returns:
- purposeCode
-
setPurposeCode
public void setPurposeCode(PurposeCode purposeCode)
-
chargeBearer
public PaymentInitiationJson chargeBearer(ChargeBearer chargeBearer)
-
getChargeBearer
@Valid public @Valid ChargeBearer getChargeBearer()
Get chargeBearer- Returns:
- chargeBearer
-
setChargeBearer
public void setChargeBearer(ChargeBearer chargeBearer)
-
remittanceInformationUnstructured
public PaymentInitiationJson remittanceInformationUnstructured(String remittanceInformationUnstructured)
-
getRemittanceInformationUnstructured
@Size(max=140) public @Size(max=140) String getRemittanceInformationUnstructured()
Get remittanceInformationUnstructured- Returns:
- remittanceInformationUnstructured
-
setRemittanceInformationUnstructured
public void setRemittanceInformationUnstructured(String remittanceInformationUnstructured)
-
remittanceInformationStructured
public PaymentInitiationJson remittanceInformationStructured(String remittanceInformationStructured)
-
getRemittanceInformationStructured
@Size(max=140) public @Size(max=140) String getRemittanceInformationStructured()
Get remittanceInformationStructured- Returns:
- remittanceInformationStructured
-
setRemittanceInformationStructured
public void setRemittanceInformationStructured(String remittanceInformationStructured)
-
remittanceInformationStructuredArray
public PaymentInitiationJson remittanceInformationStructuredArray(RemittanceInformationStructuredArray remittanceInformationStructuredArray)
-
getRemittanceInformationStructuredArray
@Valid public @Valid RemittanceInformationStructuredArray getRemittanceInformationStructuredArray()
Get remittanceInformationStructuredArray- Returns:
- remittanceInformationStructuredArray
-
setRemittanceInformationStructuredArray
public void setRemittanceInformationStructuredArray(RemittanceInformationStructuredArray remittanceInformationStructuredArray)
-
requestedExecutionDate
public PaymentInitiationJson requestedExecutionDate(LocalDate requestedExecutionDate)
-
getRequestedExecutionDate
@Valid public @Valid LocalDate getRequestedExecutionDate()
Get requestedExecutionDate- Returns:
- requestedExecutionDate
-
setRequestedExecutionDate
public void setRequestedExecutionDate(LocalDate requestedExecutionDate)
-
-