com.adyen.model.nexo.SaleData Maven / Gradle / Ivy
package com.adyen.model.nexo;
import com.adyen.model.terminal.SaleToAcquirerData;
import com.adyen.serializer.SaleToAcquirerDataSerializer;
import com.google.gson.annotations.JsonAdapter;
import io.swagger.v3.oas.annotations.media.Schema;
import javax.xml.bind.annotation.XmlAccessType;
import javax.xml.bind.annotation.XmlAccessorType;
import javax.xml.bind.annotation.XmlElement;
import javax.xml.bind.annotation.XmlType;
import java.util.ArrayList;
import java.util.List;
/**
* Definition: Data related to the Sale System. -- Usage: Data associated to the Sale System, with a particular value during the processing of the payment by the POI, including the cards acquisition.
*
* Java class for SaleData complex type.
*
*
The following schema fragment specifies the expected content contained within this class.
*
*
* <complexType name="SaleData">
* <complexContent>
* <restriction base="{http://www.w3.org/2001/XMLSchema}anyType">
* <sequence>
* <element name="SaleTransactionID" type="{}TransactionIdentification"/>
* <element name="SaleTerminalData" type="{}SaleTerminalData" minOccurs="0"/>
* <element name="SponsoredMerchant" type="{}SponsoredMerchant" maxOccurs="unbounded" minOccurs="0"/>
* <element name="SaleToPOIData" type="{}SaleToPOIData" minOccurs="0"/>
* <element name="SaleToAcquirerData" type="{}SaleToAcquirerData" minOccurs="0"/>
* <element name="SaleToIssuerData" type="{}SaleToIssuerData" minOccurs="0"/>
* </sequence>
* <attribute name="OperatorID" type="{}OperatorID" />
* <attribute name="OperatorLanguage" type="{}ISOLanguage2A" />
* <attribute name="ShiftNumber" type="{}ShiftNumber" />
* <attribute name="SaleReferenceID" type="{}SaleReferenceID" />
* <attribute name="TokenRequested" type="{}TokenRequestedType" />
* <attribute name="CustomerOrderID" type="{}CustomerOrderID" />
* <attribute name="CustomerOrderReq" type="{}CustomerOrderReq" />
* </restriction>
* </complexContent>
* </complexType>
*
*/
@XmlAccessorType(XmlAccessType.FIELD)
@XmlType(name = "SaleData", propOrder = {
"saleTransactionID",
"saleTerminalData",
"sponsoredMerchant",
"saleToPOIData",
"saleToAcquirerData",
"saleToIssuerData"
})
public class SaleData {
/**
* The Sale transaction id.
*/
@XmlElement(name = "SaleTransactionID", required = true)
@Schema(description = "Unique identification of a Sale transaction")
protected TransactionIdentification saleTransactionID;
/**
* The Sale terminal data.
*/
@XmlElement(name = "SaleTerminalData")
@Schema(description = "Information related to the software and hardware feature of the Sale Terminal. --Rule: If content is not empty")
protected SaleTerminalData saleTerminalData;
/**
* The Sponsored merchant.
*/
@XmlElement(name = "SponsoredMerchant")
@Schema(description = "Merchant using the payment services of a payment facilitator, acting as a card acceptor. --Rule: If the merchant is a payment facilitator providing services to sponsored merchants.")
protected List sponsoredMerchant;
/**
* The Sale to poi data.
*/
@XmlElement(name = "SaleToPOIData")
@Schema(description = "Sale information intended for the POI. --Rule: Stored with the transaction")
protected String saleToPOIData;
/**
* The Sale to acquirer data.
*/
@XmlElement(name = "SaleToAcquirerData")
@Schema(description = "Sale information intended for the Acquirer. --Rule: Send to the Acquirer if present")
@JsonAdapter(SaleToAcquirerDataSerializer.class)
protected SaleToAcquirerData saleToAcquirerData;
/**
* The Sale to issuer data.
*/
@XmlElement(name = "SaleToIssuerData")
@Schema(description = "Sale information intended for the Issuer. --Rule: Send to the Acquirer if present")
protected SaleToIssuerData saleToIssuerData;
/**
* The Operator id.
*/
@XmlElement(name = "OperatorID")
@Schema(description = "Identification of the Cashier or Operator. --Rule: if different from the Login and see Login .SaleData")
protected String operatorID;
/**
* The Operator language.
*/
@XmlElement(name = "OperatorLanguage")
@Schema(description = "Language of the Cashier or Operator. --Rule: if different from the Login")
protected String operatorLanguage;
/**
* The Shift number.
*/
@XmlElement(name = "ShiftNumber")
@Schema(description = "Shift number. --Rule: if different from the Login and see Login .SaleData")
protected String shiftNumber;
/**
* The Sale reference id.
*/
@XmlElement(name = "SaleReferenceID")
@Schema(description = "Identification of a Sale global transaction for a sequence of related POI transactions --Rule: If payment reservation")
protected String saleReferenceID;
/**
* The Token requested.
*/
@XmlElement(name = "TokenRequestedType")
@Schema(description = "Type of token replacing the PAN of a payment card to identify the payment mean of the customer. --Rule: In a Payment or CardAcquisition request, if a token is requested.")
protected TokenRequestedType tokenRequestedType;
/**
* The Customer order id.
*/
@XmlElement(name = "CustomerOrderID")
@Schema(description = "Identification of a customer order. --Rule: If the payment is related to an open customer order.")
protected String customerOrderID;
/**
* The Customer order req.
*/
@XmlElement(name = "CustomerOrderReq")
@Schema(description = "List of customer orders must be sent in response message. --Rule: If customer orders must be listed in the response message.")
protected List customerOrderReq;
public SaleData() {
saleToAcquirerData = new SaleToAcquirerData();
}
/**
* Gets the value of the saleTransactionID property.
*
* @return possible object is {@link TransactionIdentification }
*/
public TransactionIdentification getSaleTransactionID() {
return saleTransactionID;
}
/**
* Sets the value of the saleTransactionID property.
*
* @param value allowed object is {@link TransactionIdentification }
*/
public void setSaleTransactionID(TransactionIdentification value) {
saleTransactionID = value;
}
/**
* Gets the value of the saleTerminalData property.
*
* @return possible object is {@link SaleTerminalData }
*/
public SaleTerminalData getSaleTerminalData() {
return saleTerminalData;
}
/**
* Sets the value of the saleTerminalData property.
*
* @param value allowed object is {@link SaleTerminalData }
*/
public void setSaleTerminalData(SaleTerminalData value) {
saleTerminalData = value;
}
/**
* Gets the value of the sponsoredMerchant property.
*
*
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a set
method for the sponsoredMerchant property.
*
*
* For example, to add a new item, do as follows:
*
* getSponsoredMerchant().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link SponsoredMerchant }
*
* @return the sponsored merchant
*/
public List getSponsoredMerchant() {
if (sponsoredMerchant == null) {
sponsoredMerchant = new ArrayList<>();
}
return sponsoredMerchant;
}
/**
* Gets the value of the saleToPOIData property.
*
* @return possible object is {@link String }
*/
public String getSaleToPOIData() {
return saleToPOIData;
}
/**
* Sets the value of the saleToPOIData property.
*
* @param value allowed object is {@link String }
*/
public void setSaleToPOIData(String value) {
saleToPOIData = value;
}
/**
* Gets the value of the saleToAcquirerData property.
*
* @return possible object is {@link String }
*/
public SaleToAcquirerData getSaleToAcquirerData() {
return saleToAcquirerData;
}
/**
* Sets the value of the saleToAcquirerData property.
*
* @param value allowed object is {@link String }
*/
public void setSaleToAcquirerData(SaleToAcquirerData value) {
saleToAcquirerData = value;
}
/**
* Gets the value of the saleToIssuerData property.
*
* @return possible object is {@link SaleToIssuerData }
*/
public SaleToIssuerData getSaleToIssuerData() {
return saleToIssuerData;
}
/**
* Sets the value of the saleToIssuerData property.
*
* @param value allowed object is {@link SaleToIssuerData }
*/
public void setSaleToIssuerData(SaleToIssuerData value) {
saleToIssuerData = value;
}
/**
* Gets the value of the operatorID property.
*
* @return possible object is {@link String }
*/
public String getOperatorID() {
return operatorID;
}
/**
* Sets the value of the operatorID property.
*
* @param value allowed object is {@link String }
*/
public void setOperatorID(String value) {
operatorID = value;
}
/**
* Gets the value of the operatorLanguage property.
*
* @return possible object is {@link String }
*/
public String getOperatorLanguage() {
return operatorLanguage;
}
/**
* Sets the value of the operatorLanguage property.
*
* @param value allowed object is {@link String }
*/
public void setOperatorLanguage(String value) {
operatorLanguage = value;
}
/**
* Gets the value of the shiftNumber property.
*
* @return possible object is {@link String }
*/
public String getShiftNumber() {
return shiftNumber;
}
/**
* Sets the value of the shiftNumber property.
*
* @param value allowed object is {@link String }
*/
public void setShiftNumber(String value) {
shiftNumber = value;
}
/**
* Gets the value of the saleReferenceID property.
*
* @return possible object is {@link String }
*/
public String getSaleReferenceID() {
return saleReferenceID;
}
/**
* Sets the value of the saleReferenceID property.
*
* @param value allowed object is {@link String }
*/
public void setSaleReferenceID(String value) {
saleReferenceID = value;
}
/**
* Gets the value of the tokenRequestedType property.
*
* @return possible object is {@link TokenRequestedType }
*/
public TokenRequestedType getTokenRequestedType() {
return tokenRequestedType;
}
/**
* Sets the value of the tokenRequestedType property.
*
* @param value allowed object is {@link TokenRequestedType }
*/
public void setTokenRequestedType(TokenRequestedType value) {
tokenRequestedType = value;
}
/**
* Gets the value of the customerOrderID property.
*
* @return possible object is {@link String }
*/
public String getCustomerOrderID() {
return customerOrderID;
}
/**
* Sets the value of the customerOrderID property.
*
* @param value allowed object is {@link String }
*/
public void setCustomerOrderID(String value) {
customerOrderID = value;
}
/**
* Gets the value of the customerOrderReq property.
*
*
* This accessor method returns a reference to the live list,
* not a snapshot. Therefore any modification you make to the
* returned list will be present inside the JAXB object.
* This is why there is not a set
method for the customerOrderReq property.
*
*
* For example, to add a new item, do as follows:
*
* getCustomerOrderReq().add(newItem);
*
*
*
*
* Objects of the following type(s) are allowed in the list
* {@link CustomerOrderReqType }
*
* @return the customer order req
*/
public List getCustomerOrderReq() {
if (customerOrderReq == null) {
customerOrderReq = new ArrayList<>();
}
return customerOrderReq;
}
}