/* Options: Date: 2026-02-14 10:17:11 Version: 10.04 Tip: To override a DTO option, remove "//" prefix before updating BaseUrl: https://stf-api-uat.data-xchange.co.za //Package: //GlobalNamespace: dtos //AddPropertyAccessors: True //SettersReturnThis: True //AddServiceStackTypes: True //AddResponseStatus: False //AddDescriptionAsComments: True //AddImplicitVersion: IncludeTypes: GetSettlement.* //ExcludeTypes: //TreatTypesAsStrings: //DefaultImports: java.math.*,java.util.*,java.io.InputStream,net.servicestack.client.*,com.google.gson.annotations.*,com.google.gson.reflect.* */ import java.math.*; import java.util.*; import java.io.InputStream; import net.servicestack.client.*; import com.google.gson.annotations.*; import com.google.gson.reflect.*; public class dtos { /** * Settlement */ @Route(Path="/settlement", Verbs="GET") @Api(Description="Settlement") @ApiResponse(Description="Settlement message", IsDefaultResponse=true, StatusCode=200) // @ApiResponse(Description="No Content", ResponseType=IReturnVoid.class, StatusCode=204) public static class GetSettlement implements IReturn> { private static Object responseType = new TypeToken>(){}.getType(); public Object getResponseType() { return responseType; } } public static class ResultItem implements IDocument { public UUID token = null; public SettlementMessage item = null; public UUID getToken() { return token; } public ResultItem setToken(UUID value) { this.token = value; return this; } public SettlementMessage getItem() { return item; } public ResultItem setItem(SettlementMessage value) { this.item = value; return this; } } public static interface IDocument implements IHaveToken { } public static interface IHaveToken { public UUID token = null; } @DataContract public static class Header { @DataMember(Name="documentIdentification") @SerializedName("documentIdentification") public DocumentIdentification documentIdentification = null; @DataMember(Name="sender") @SerializedName("sender") public Partner sender = null; @DataMember(Name="receiver") @SerializedName("receiver") public Partner receiver = null; public DocumentIdentification getDocumentIdentification() { return documentIdentification; } public Header setDocumentIdentification(DocumentIdentification value) { this.documentIdentification = value; return this; } public Partner getSender() { return sender; } public Header setSender(Partner value) { this.sender = value; return this; } public Partner getReceiver() { return receiver; } public Header setReceiver(Partner value) { this.receiver = value; return this; } } public static class TransactionalParty extends Ecom_PartyIdentificationType { public ArrayList contact = new ArrayList(); public Address address = null; public ArrayList communicationChannel = new ArrayList(); public FinancialInstitutionInformation financialInstitutionInformation = null; public String dutyFeeTaxRegistration = null; public String entityIdentification = null; public ArrayList getContact() { return contact; } public TransactionalParty setContact(ArrayList value) { this.contact = value; return this; } public Address getAddress() { return address; } public TransactionalParty setAddress(Address value) { this.address = value; return this; } public ArrayList getCommunicationChannel() { return communicationChannel; } public TransactionalParty setCommunicationChannel(ArrayList value) { this.communicationChannel = value; return this; } public FinancialInstitutionInformation getFinancialInstitutionInformation() { return financialInstitutionInformation; } public TransactionalParty setFinancialInstitutionInformation(FinancialInstitutionInformation value) { this.financialInstitutionInformation = value; return this; } public String getDutyFeeTaxRegistration() { return dutyFeeTaxRegistration; } public TransactionalParty setDutyFeeTaxRegistration(String value) { this.dutyFeeTaxRegistration = value; return this; } public String getEntityIdentification() { return entityIdentification; } public TransactionalParty setEntityIdentification(String value) { this.entityIdentification = value; return this; } } public static enum DocumentAction { Add, ChangeByRefresh, Delete, Rejected; } public static enum DocumentStatus { AdditionalTransmission, Copy, Original; } public static class AvpList { public String code = null; public String value = null; public String getCode() { return code; } public AvpList setCode(String value) { this.code = value; return this; } public String getValue() { return value; } public AvpList setValue(String value) { this.value = value; return this; } } public static class BaseDocument { public String currencyCode = null; public Date creationDateTime = null; public DocumentAction documentActionCode = null; public DocumentStatus documentStatusCode = null; public String documentStructureVersion = null; public Date lastUpdateDateTime = null; public Long revisionNumber = null; public ArrayList avpList = new ArrayList(); public String getCurrencyCode() { return currencyCode; } public BaseDocument setCurrencyCode(String value) { this.currencyCode = value; return this; } public Date getCreationDateTime() { return creationDateTime; } public BaseDocument setCreationDateTime(Date value) { this.creationDateTime = value; return this; } public DocumentAction getDocumentActionCode() { return documentActionCode; } public BaseDocument setDocumentActionCode(DocumentAction value) { this.documentActionCode = value; return this; } public DocumentStatus getDocumentStatusCode() { return documentStatusCode; } public BaseDocument setDocumentStatusCode(DocumentStatus value) { this.documentStatusCode = value; return this; } public String getDocumentStructureVersion() { return documentStructureVersion; } public BaseDocument setDocumentStructureVersion(String value) { this.documentStructureVersion = value; return this; } public Date getLastUpdateDateTime() { return lastUpdateDateTime; } public BaseDocument setLastUpdateDateTime(Date value) { this.lastUpdateDateTime = value; return this; } public Long getRevisionNumber() { return revisionNumber; } public BaseDocument setRevisionNumber(Long value) { this.revisionNumber = value; return this; } public ArrayList getAvpList() { return avpList; } public BaseDocument setAvpList(ArrayList value) { this.avpList = value; return this; } } public static class Settlement extends BaseDocument { public String batchIdentification = null; public Date paymentEffectiveDate = null; public String settlementCurrency = null; public String settlementHandlingTypeCode = null; public BigDecimal totalAmount = null; public PaymentMethod paymentMethod = null; public TransactionalParty payee = null; public TransactionalParty payer = null; public TransactionalParty remitTo = null; public String settlementIdentification = null; public ArrayList settlementLineItem = new ArrayList(); public SettlementExtension extension = null; public String getBatchIdentification() { return batchIdentification; } public Settlement setBatchIdentification(String value) { this.batchIdentification = value; return this; } public Date getPaymentEffectiveDate() { return paymentEffectiveDate; } public Settlement setPaymentEffectiveDate(Date value) { this.paymentEffectiveDate = value; return this; } public String getSettlementCurrency() { return settlementCurrency; } public Settlement setSettlementCurrency(String value) { this.settlementCurrency = value; return this; } public String getSettlementHandlingTypeCode() { return settlementHandlingTypeCode; } public Settlement setSettlementHandlingTypeCode(String value) { this.settlementHandlingTypeCode = value; return this; } public BigDecimal getTotalAmount() { return totalAmount; } public Settlement setTotalAmount(BigDecimal value) { this.totalAmount = value; return this; } public PaymentMethod getPaymentMethod() { return paymentMethod; } public Settlement setPaymentMethod(PaymentMethod value) { this.paymentMethod = value; return this; } public TransactionalParty getPayee() { return payee; } public Settlement setPayee(TransactionalParty value) { this.payee = value; return this; } public TransactionalParty getPayer() { return payer; } public Settlement setPayer(TransactionalParty value) { this.payer = value; return this; } public TransactionalParty getRemitTo() { return remitTo; } public Settlement setRemitTo(TransactionalParty value) { this.remitTo = value; return this; } public String getSettlementIdentification() { return settlementIdentification; } public Settlement setSettlementIdentification(String value) { this.settlementIdentification = value; return this; } public ArrayList getSettlementLineItem() { return settlementLineItem; } public Settlement setSettlementLineItem(ArrayList value) { this.settlementLineItem = value; return this; } public SettlementExtension getExtension() { return extension; } public Settlement setExtension(SettlementExtension value) { this.extension = value; return this; } } @DataContract public static class DocumentIdentification { @DataMember(Name="identifier") @SerializedName("identifier") public String identifier = null; @DataMember(Name="type") @SerializedName("type") public String type = null; @DataMember(Name="creationDateAndTime") @SerializedName("creationDateAndTime") public Date creationDateAndTime = null; public String getIdentifier() { return identifier; } public DocumentIdentification setIdentifier(String value) { this.identifier = value; return this; } public String getType() { return type; } public DocumentIdentification setType(String value) { this.type = value; return this; } public Date getCreationDateAndTime() { return creationDateAndTime; } public DocumentIdentification setCreationDateAndTime(Date value) { this.creationDateAndTime = value; return this; } } @DataContract public static class Partner { @DataMember(Name="identifier") @SerializedName("identifier") public Identifier identifier = null; @DataMember(Name="contactInformation") @SerializedName("contactInformation") public ArrayList contactInformation = new ArrayList(); public Identifier getIdentifier() { return identifier; } public Partner setIdentifier(Identifier value) { this.identifier = value; return this; } public ArrayList getContactInformation() { return contactInformation; } public Partner setContactInformation(ArrayList value) { this.contactInformation = value; return this; } } public static class DocumentReference { public Date creationDateTime = null; public Long revisionNumber = null; public Long lineItemNumber = null; public String entityIdentification = null; public Date getCreationDateTime() { return creationDateTime; } public DocumentReference setCreationDateTime(Date value) { this.creationDateTime = value; return this; } public Long getRevisionNumber() { return revisionNumber; } public DocumentReference setRevisionNumber(Long value) { this.revisionNumber = value; return this; } public Long getLineItemNumber() { return lineItemNumber; } public DocumentReference setLineItemNumber(Long value) { this.lineItemNumber = value; return this; } public String getEntityIdentification() { return entityIdentification; } public DocumentReference setEntityIdentification(String value) { this.entityIdentification = value; return this; } } public static class Contact { public String contactTypeCode = null; public String personName = null; public String departmentName = null; public String jobTitle = null; public String responsibility = null; public ArrayList communicationChannel = new ArrayList(); public String getContactTypeCode() { return contactTypeCode; } public Contact setContactTypeCode(String value) { this.contactTypeCode = value; return this; } public String getPersonName() { return personName; } public Contact setPersonName(String value) { this.personName = value; return this; } public String getDepartmentName() { return departmentName; } public Contact setDepartmentName(String value) { this.departmentName = value; return this; } public String getJobTitle() { return jobTitle; } public Contact setJobTitle(String value) { this.jobTitle = value; return this; } public String getResponsibility() { return responsibility; } public Contact setResponsibility(String value) { this.responsibility = value; return this; } public ArrayList getCommunicationChannel() { return communicationChannel; } public Contact setCommunicationChannel(ArrayList value) { this.communicationChannel = value; return this; } } public static class Address { public String streetAddressOne = null; public String streetAddressTwo = null; public String streetAddressThree = null; public String city = null; public String postalCode = null; public String provinceCode = null; public String countryCode = null; public String getStreetAddressOne() { return streetAddressOne; } public Address setStreetAddressOne(String value) { this.streetAddressOne = value; return this; } public String getStreetAddressTwo() { return streetAddressTwo; } public Address setStreetAddressTwo(String value) { this.streetAddressTwo = value; return this; } public String getStreetAddressThree() { return streetAddressThree; } public Address setStreetAddressThree(String value) { this.streetAddressThree = value; return this; } public String getCity() { return city; } public Address setCity(String value) { this.city = value; return this; } public String getPostalCode() { return postalCode; } public Address setPostalCode(String value) { this.postalCode = value; return this; } public String getProvinceCode() { return provinceCode; } public Address setProvinceCode(String value) { this.provinceCode = value; return this; } public String getCountryCode() { return countryCode; } public Address setCountryCode(String value) { this.countryCode = value; return this; } } public static class FinancialInstitutionInformation { public String financialInstitutionBranchName = null; public String financialInstitutionName = null; public FinancialRoutingNumber financialRoutingNumber = null; public FinancialAccount financialAccount = null; public String swiftCode = null; public String exportersCode = null; public String getFinancialInstitutionBranchName() { return financialInstitutionBranchName; } public FinancialInstitutionInformation setFinancialInstitutionBranchName(String value) { this.financialInstitutionBranchName = value; return this; } public String getFinancialInstitutionName() { return financialInstitutionName; } public FinancialInstitutionInformation setFinancialInstitutionName(String value) { this.financialInstitutionName = value; return this; } public FinancialRoutingNumber getFinancialRoutingNumber() { return financialRoutingNumber; } public FinancialInstitutionInformation setFinancialRoutingNumber(FinancialRoutingNumber value) { this.financialRoutingNumber = value; return this; } public FinancialAccount getFinancialAccount() { return financialAccount; } public FinancialInstitutionInformation setFinancialAccount(FinancialAccount value) { this.financialAccount = value; return this; } public String getSwiftCode() { return swiftCode; } public FinancialInstitutionInformation setSwiftCode(String value) { this.swiftCode = value; return this; } public String getExportersCode() { return exportersCode; } public FinancialInstitutionInformation setExportersCode(String value) { this.exportersCode = value; return this; } } public static class Ecom_PartyIdentificationType { public String gln = null; public String name = null; public ArrayList additionalPartyIdentification = new ArrayList(); public String getGln() { return gln; } public Ecom_PartyIdentificationType setGln(String value) { this.gln = value; return this; } public String getName() { return name; } public Ecom_PartyIdentificationType setName(String value) { this.name = value; return this; } public ArrayList getAdditionalPartyIdentification() { return additionalPartyIdentification; } public Ecom_PartyIdentificationType setAdditionalPartyIdentification(ArrayList value) { this.additionalPartyIdentification = value; return this; } } public static class PaymentMethod { public String automatedClearingHousePaymentFormat = null; public String paymentMethodCode = null; public String paymentMethodIdentification = null; public String getAutomatedClearingHousePaymentFormat() { return automatedClearingHousePaymentFormat; } public PaymentMethod setAutomatedClearingHousePaymentFormat(String value) { this.automatedClearingHousePaymentFormat = value; return this; } public String getPaymentMethodCode() { return paymentMethodCode; } public PaymentMethod setPaymentMethodCode(String value) { this.paymentMethodCode = value; return this; } public String getPaymentMethodIdentification() { return paymentMethodIdentification; } public PaymentMethod setPaymentMethodIdentification(String value) { this.paymentMethodIdentification = value; return this; } } public static class SettlementLineItem { public BigDecimal amountPaid = null; public Long lineItemNumber = null; public BigDecimal originalAmount = null; public ArrayList settlementAdjustment = new ArrayList(); public AvpList avpList = null; public DocumentReference debitCreditAdvice = null; public InvoiceDocumentReference invoice = null; public DocumentReference requestForPayment = null; public ArrayList settlementParty = new ArrayList(); public BigDecimal getAmountPaid() { return amountPaid; } public SettlementLineItem setAmountPaid(BigDecimal value) { this.amountPaid = value; return this; } public Long getLineItemNumber() { return lineItemNumber; } public SettlementLineItem setLineItemNumber(Long value) { this.lineItemNumber = value; return this; } public BigDecimal getOriginalAmount() { return originalAmount; } public SettlementLineItem setOriginalAmount(BigDecimal value) { this.originalAmount = value; return this; } public ArrayList getSettlementAdjustment() { return settlementAdjustment; } public SettlementLineItem setSettlementAdjustment(ArrayList value) { this.settlementAdjustment = value; return this; } public AvpList getAvpList() { return avpList; } public SettlementLineItem setAvpList(AvpList value) { this.avpList = value; return this; } public DocumentReference getDebitCreditAdvice() { return debitCreditAdvice; } public SettlementLineItem setDebitCreditAdvice(DocumentReference value) { this.debitCreditAdvice = value; return this; } public InvoiceDocumentReference getInvoice() { return invoice; } public SettlementLineItem setInvoice(InvoiceDocumentReference value) { this.invoice = value; return this; } public DocumentReference getRequestForPayment() { return requestForPayment; } public SettlementLineItem setRequestForPayment(DocumentReference value) { this.requestForPayment = value; return this; } public ArrayList getSettlementParty() { return settlementParty; } public SettlementLineItem setSettlementParty(ArrayList value) { this.settlementParty = value; return this; } } public static class SettlementExtension { public ArrayList settlementExtensionLineItem = new ArrayList(); public ArrayList adjustmentAndDiscountSummary = new ArrayList(); public TotalAmountSplit totalAmountSplit = null; public ArrayList getSettlementExtensionLineItem() { return settlementExtensionLineItem; } public SettlementExtension setSettlementExtensionLineItem(ArrayList value) { this.settlementExtensionLineItem = value; return this; } public ArrayList getAdjustmentAndDiscountSummary() { return adjustmentAndDiscountSummary; } public SettlementExtension setAdjustmentAndDiscountSummary(ArrayList value) { this.adjustmentAndDiscountSummary = value; return this; } public TotalAmountSplit getTotalAmountSplit() { return totalAmountSplit; } public SettlementExtension setTotalAmountSplit(TotalAmountSplit value) { this.totalAmountSplit = value; return this; } } @DataContract public static class Identifier { @DataMember(Name="authority") @SerializedName("authority") public String authority = null; @DataMember(Name="text") @SerializedName("text") public String text = null; public String getAuthority() { return authority; } public Identifier setAuthority(String value) { this.authority = value; return this; } public String getText() { return text; } public Identifier setText(String value) { this.text = value; return this; } } @DataContract public static class ContactInformation { } public static class CommunicationChannel { public String communicationChannelCode = null; public String communicationChannelName = null; public String communicationValue = null; public String getCommunicationChannelCode() { return communicationChannelCode; } public CommunicationChannel setCommunicationChannelCode(String value) { this.communicationChannelCode = value; return this; } public String getCommunicationChannelName() { return communicationChannelName; } public CommunicationChannel setCommunicationChannelName(String value) { this.communicationChannelName = value; return this; } public String getCommunicationValue() { return communicationValue; } public CommunicationChannel setCommunicationValue(String value) { this.communicationValue = value; return this; } } public static class FinancialRoutingNumber { public String number = null; public String numberTypeCode = null; public String getNumber() { return number; } public FinancialRoutingNumber setNumber(String value) { this.number = value; return this; } public String getNumberTypeCode() { return numberTypeCode; } public FinancialRoutingNumber setNumberTypeCode(String value) { this.numberTypeCode = value; return this; } } public static class FinancialAccount { public String number = null; public String numberTypeCode = null; public String name = null; public String getNumber() { return number; } public FinancialAccount setNumber(String value) { this.number = value; return this; } public String getNumberTypeCode() { return numberTypeCode; } public FinancialAccount setNumberTypeCode(String value) { this.numberTypeCode = value; return this; } public String getName() { return name; } public FinancialAccount setName(String value) { this.name = value; return this; } } public static class SettlementAdjustment { public BigDecimal adjustmentAmount = null; public String financialAdjusmentReasonPartyRoleCode = null; public String financialAdjustmentReasonCode = null; public TransactionalReference transactionalReference = null; public BigDecimal getAdjustmentAmount() { return adjustmentAmount; } public SettlementAdjustment setAdjustmentAmount(BigDecimal value) { this.adjustmentAmount = value; return this; } public String getFinancialAdjusmentReasonPartyRoleCode() { return financialAdjusmentReasonPartyRoleCode; } public SettlementAdjustment setFinancialAdjusmentReasonPartyRoleCode(String value) { this.financialAdjusmentReasonPartyRoleCode = value; return this; } public String getFinancialAdjustmentReasonCode() { return financialAdjustmentReasonCode; } public SettlementAdjustment setFinancialAdjustmentReasonCode(String value) { this.financialAdjustmentReasonCode = value; return this; } public TransactionalReference getTransactionalReference() { return transactionalReference; } public SettlementAdjustment setTransactionalReference(TransactionalReference value) { this.transactionalReference = value; return this; } } public static class InvoiceDocumentReference extends DocumentReference { public String invoiceTypeCode = null; public ContentOwner contentOwner = null; public String getInvoiceTypeCode() { return invoiceTypeCode; } public InvoiceDocumentReference setInvoiceTypeCode(String value) { this.invoiceTypeCode = value; return this; } public ContentOwner getContentOwner() { return contentOwner; } public InvoiceDocumentReference setContentOwner(ContentOwner value) { this.contentOwner = value; return this; } } public static class SettlementParty extends Ecom_PartyIdentification { public String partyRoleCode = null; public String getPartyRoleCode() { return partyRoleCode; } public SettlementParty setPartyRoleCode(String value) { this.partyRoleCode = value; return this; } } public static class SettlementExtensionLineItem { public Integer number = null; public String documentType = null; public String documentNumber = null; public String itemText = null; public Integer getNumber() { return number; } public SettlementExtensionLineItem setNumber(Integer value) { this.number = value; return this; } public String getDocumentType() { return documentType; } public SettlementExtensionLineItem setDocumentType(String value) { this.documentType = value; return this; } public String getDocumentNumber() { return documentNumber; } public SettlementExtensionLineItem setDocumentNumber(String value) { this.documentNumber = value; return this; } public String getItemText() { return itemText; } public SettlementExtensionLineItem setItemText(String value) { this.itemText = value; return this; } } public static class AdjustmentAndDiscountSummary { public BigDecimal amountTotal = null; public BigDecimal amountNett = null; public BigDecimal amountVat = null; public String reasonMessage = null; public BigDecimal getAmountTotal() { return amountTotal; } public AdjustmentAndDiscountSummary setAmountTotal(BigDecimal value) { this.amountTotal = value; return this; } public BigDecimal getAmountNett() { return amountNett; } public AdjustmentAndDiscountSummary setAmountNett(BigDecimal value) { this.amountNett = value; return this; } public BigDecimal getAmountVat() { return amountVat; } public AdjustmentAndDiscountSummary setAmountVat(BigDecimal value) { this.amountVat = value; return this; } public String getReasonMessage() { return reasonMessage; } public AdjustmentAndDiscountSummary setReasonMessage(String value) { this.reasonMessage = value; return this; } } public static class TotalAmountSplit { public BigDecimal amountTotal = null; public BigDecimal amountNett = null; public BigDecimal amountVat = null; public BigDecimal getAmountTotal() { return amountTotal; } public TotalAmountSplit setAmountTotal(BigDecimal value) { this.amountTotal = value; return this; } public BigDecimal getAmountNett() { return amountNett; } public TotalAmountSplit setAmountNett(BigDecimal value) { this.amountNett = value; return this; } public BigDecimal getAmountVat() { return amountVat; } public TotalAmountSplit setAmountVat(BigDecimal value) { this.amountVat = value; return this; } } public static class Ecom_PartyIdentification { public ArrayList additionalPartyIdentification = new ArrayList(); public String gln = null; public ArrayList getAdditionalPartyIdentification() { return additionalPartyIdentification; } public Ecom_PartyIdentification setAdditionalPartyIdentification(ArrayList value) { this.additionalPartyIdentification = value; return this; } public String getGln() { return gln; } public Ecom_PartyIdentification setGln(String value) { this.gln = value; return this; } } public static class TransactionalReference extends DocumentReference { public String transactionalReferenceTypeCode = null; public String getTransactionalReferenceTypeCode() { return transactionalReferenceTypeCode; } public TransactionalReference setTransactionalReferenceTypeCode(String value) { this.transactionalReferenceTypeCode = value; return this; } } public static class ContentOwner { public String gln = null; public ArrayList additionalPartyIdentification = new ArrayList(); public String getGln() { return gln; } public ContentOwner setGln(String value) { this.gln = value; return this; } public ArrayList getAdditionalPartyIdentification() { return additionalPartyIdentification; } public ContentOwner setAdditionalPartyIdentification(ArrayList value) { this.additionalPartyIdentification = value; return this; } } public static class SettlementMessage { public Header header = null; public Settlement settlement = null; public Header getHeader() { return header; } public SettlementMessage setHeader(Header value) { this.header = value; return this; } public Settlement getSettlement() { return settlement; } public SettlementMessage setSettlement(Settlement value) { this.settlement = value; return this; } } }