com.withabound.models.documents.ten99k.Form1099KFormFields Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of withabound-java Show documentation
Show all versions of withabound-java Show documentation
The Abound Java SDK provides convenient access to the Abound API from applications written in Java.
The newest version!
package com.withabound.models.documents.ten99k;
import com.withabound.models.documents.StateTaxInfo;
import java.util.List;
import java.util.Optional;
import lombok.Setter;
import lombok.experimental.SuperBuilder;
@SuperBuilder
@Setter
public class Form1099KFormFields {
/** If `true`, the corrected checkbox will be marked on the document. */
private Boolean isCorrected;
/** The type of payer. */
private PayerClassification payerClassification;
/** The type of transactions reported. */
private TransactionsReportedClassification transactionsReportedClassification;
/**
* The payment settlement entity name. Required if {@link
* Form1099KDocumentRequest#payerClassification} is {@link
* PayerClassification#PAYMENT_SETTLEMENT_ENTITY}.
*/
private String pseName;
/**
* The payment settlement entity phone number. Required if {@link
* Form1099KDocumentRequest#payerClassification} is {@link
* PayerClassification#PAYMENT_SETTLEMENT_ENTITY}.
*/
private String psePhoneNumber;
/** The account number or other unique number the PSE assigned to distinguish an account. */
private String accountNumber;
/**
* Aggregate gross amount of payment card/third party network transactions made to you through the
* PSE during the calendar year.
*/
private Double aggregateGrossAmount;
/**
* The aggregate gross amount of all reportable payment transactions made to you through the PSE
* during the calendar year where the card was not present at the time of the transaction or the
* card number was keyed into the terminal. Typically, this relates to online sales, phone sales,
* or catalogue sales. If {@link Form1099KDocumentRequest#transactionsReportedClassification} is
* {@link TransactionsReportedClassification#THIRD_PARTY_NETWORK}, or if these are third party
* network transactions, card not present transactions will not be reported.
*/
private Double aggregateGrossAmountCardNotPresent;
/**
* Payment brands use merchant category codes (MCCs) to classify merchants and businesses by the
* type of goods or services provided.
*/
private String merchantCategoryCode;
/**
* The number of payment transactions (not including refund transactions) processed through the
* payment card/third party network.
*/
private Integer numberOfPaymentTransactions;
/**
* The federal income tax withheld. Generally, a payer must backup withhold if you did not furnish
* your TIN or you did not furnish the correct TIN to the payer.
*/
private Double federalIncomeTaxWithheld;
private GrossAmountsByMonth grossAmountsByMonth;
/** Up to two (2) state tax information objects. */
private List stateTaxInfo;
public Optional getIsCorrected() {
return Optional.ofNullable(isCorrected);
}
public PayerClassification getPayerClassification() {
return payerClassification;
}
public TransactionsReportedClassification getTransactionsReportedClassification() {
return transactionsReportedClassification;
}
public Optional getPseName() {
return Optional.ofNullable(pseName);
}
public Optional getPsePhoneNumber() {
return Optional.ofNullable(psePhoneNumber);
}
public Optional getAccountNumber() {
return Optional.ofNullable(accountNumber);
}
public Double getAggregateGrossAmount() {
return aggregateGrossAmount;
}
public Double getAggregateGrossAmountCardNotPresent() {
return aggregateGrossAmountCardNotPresent;
}
public Optional getMerchantCategoryCode() {
return Optional.ofNullable(merchantCategoryCode);
}
public Integer getNumberOfPaymentTransactions() {
return numberOfPaymentTransactions;
}
public Double getFederalIncomeTaxWithheld() {
return federalIncomeTaxWithheld;
}
public GrossAmountsByMonth getGrossAmountsByMonth() {
return grossAmountsByMonth;
}
public List getStateTaxInfo() {
return stateTaxInfo;
}
}