Class CreateMultiDocumentModel
java.lang.Object
net.avalara.avatax.rest.client.models.CreateMultiDocumentModel
public class CreateMultiDocumentModel
extends java.lang.Object
A MultiDocument transaction represents a sale or purchase that occurred between more than two companies.
A traditional transaction requires exactly two parties: a seller and a buyer. MultiDocument transactions can
involve a marketplace of vendors, each of which contributes some portion of the final transaction. Within
a MultiDocument transaction, each individual buyer and seller pair are matched up and converted to a separate
document. This separation of documents allows each seller to file their taxes separately.
-
Constructor Summary
Constructors Constructor Description CreateMultiDocumentModel()
-
Method Summary
Modifier and Type Method Description AddressesModel
getAddresses()
Getter for addressesjava.lang.Boolean
getAllowAdjust()
Getter for allowAdjust Set this value to true to allow this API call to adjust the MultiDocument model if one already exists.java.lang.String
getBatchCode()
Getter for batchCode BatchCode for batch operations.java.lang.String
getBusinessIdentificationNo()
Getter for businessIdentificationNo VAT business identification number for the customer for this transaction.java.lang.String
getCode()
Getter for code The transaction code of the MultiDocument transaction.java.lang.Boolean
getCommit()
Getter for commit Causes the document to be committed if true.java.lang.String
getCompanyCode()
Getter for companyCode Company Code - Specify the code of the company creating this transaction here.java.lang.String
getCurrencyCode()
Getter for currencyCode The three-character ISO 4217 currency code for this transaction.java.lang.String
getCustomerCode()
Getter for customerCode Customer Code - The client application customer reference code.java.lang.String
getCustomerSupplierName()
Getter for customerSupplierName The name of the supplier / exporter / seller.java.lang.String
getCustomerUsageType()
Getter for customerUsageType DEPRECATED - Date: 10/16/2017, Version: 17.11, Message: Please use entityUseCode instead.java.lang.Integer
getDataSourceId()
Getter for dataSourceId The Id of the datasource from which this transaction originated.java.util.Date
getDate()
Getter for date Transaction Date - The date on the invoice, purchase order, etc.TaxDebugLevel
getDebugLevel()
Getter for debugLevel If the user wishes to request additional debug information from this transaction, specify a level higher than `normal`.DeliveryTerms
getDeliveryTerms()
Getter for deliveryTerms The Delivery Terms is a field used in conjunction with Importer of Record to influence whether AvaTax includes Import Duty and Tax values in the transaction totals or not.java.lang.String
getDescription()
Getter for description User-supplied description for this transaction.java.math.BigDecimal
getDiscount()
Getter for discount Discount - The discount amount to apply to the document.java.lang.String
getEmail()
Getter for email User-supplied email address relevant for this transaction.java.lang.String
getEntityUseCode()
Getter for entityUseCode Entity Use Code - The client application customer or usage type.java.math.BigDecimal
getExchangeRate()
Getter for exchangeRate Currency exchange rate from this transaction to the company base currency.java.lang.String
getExchangeRateCurrencyCode()
Getter for exchangeRateCurrencyCode Optional three-character ISO 4217 reporting exchange rate currency code for this transaction.java.util.Date
getExchangeRateEffectiveDate()
Getter for exchangeRateEffectiveDate Effective date of the exchange rate.java.lang.String
getExemptionNo()
Getter for exemptionNo Exemption Number for this document.java.lang.Boolean
getIsSellerImporterOfRecord()
Getter for isSellerImporterOfRecord Specifies if the transaction should have value-added and cross-border taxes calculated with the seller as the importer of record.java.util.ArrayList<MultiDocumentLineItemModel>
getLines()
Getter for lines Lines that will appear on the invoice.java.util.ArrayList<TransactionParameterModel>
getParameters()
Getter for parameters Special parameters for this transaction.java.lang.String
getPosLaneCode()
Getter for posLaneCode Sets the Point of Sale Lane Code sent by the User for this document.java.lang.String
getPurchaseOrderNo()
Getter for purchaseOrderNo Purchase Order Number for this document.java.lang.String
getReferenceCode()
Getter for referenceCode Customer-provided Reference Code with information about this transaction.java.lang.String
getReportingLocationCode()
Getter for reportingLocationCode Sets the sale location code (Outlet ID) for reporting this document to the tax authority.java.lang.String
getSalespersonCode()
Getter for salespersonCode Salesperson Code - The client application salesperson reference code.ServiceMode
getServiceMode()
Getter for serviceMode Specifies whether the tax calculation is handled Local, Remote, or Automatic (default).TaxOverrideModel
getTaxOverride()
Getter for taxOverrideDocumentType
getType()
Getter for type Specifies the type of document to create.java.util.ArrayList<TransactionUserDefinedFieldModel>
getUserDefinedFields()
Getter for userDefinedFields Custom user fields/flex fields for this transaction.void
setAddresses(AddressesModel value)
Setter for addressesvoid
setAllowAdjust(java.lang.Boolean value)
Setter for allowAdjust Set this value to true to allow this API call to adjust the MultiDocument model if one already exists.void
setBatchCode(java.lang.String value)
Setter for batchCode BatchCode for batch operations.void
setBusinessIdentificationNo(java.lang.String value)
Setter for businessIdentificationNo VAT business identification number for the customer for this transaction.void
setCode(java.lang.String value)
Setter for code The transaction code of the MultiDocument transaction.void
setCommit(java.lang.Boolean value)
Setter for commit Causes the document to be committed if true.void
setCompanyCode(java.lang.String value)
Setter for companyCode Company Code - Specify the code of the company creating this transaction here.void
setCurrencyCode(java.lang.String value)
Setter for currencyCode The three-character ISO 4217 currency code for this transaction.void
setCustomerCode(java.lang.String value)
Setter for customerCode Customer Code - The client application customer reference code.void
setCustomerSupplierName(java.lang.String value)
Setter for customerSupplierName The name of the supplier / exporter / seller.void
setCustomerUsageType(java.lang.String value)
Setter for customerUsageType DEPRECATED - Date: 10/16/2017, Version: 17.11, Message: Please use entityUseCode instead.void
setDataSourceId(java.lang.Integer value)
Setter for dataSourceId The Id of the datasource from which this transaction originated.void
setDate(java.util.Date value)
Setter for date Transaction Date - The date on the invoice, purchase order, etc.void
setDebugLevel(TaxDebugLevel value)
Setter for debugLevel If the user wishes to request additional debug information from this transaction, specify a level higher than `normal`.void
setDeliveryTerms(DeliveryTerms value)
Setter for deliveryTerms The Delivery Terms is a field used in conjunction with Importer of Record to influence whether AvaTax includes Import Duty and Tax values in the transaction totals or not.void
setDescription(java.lang.String value)
Setter for description User-supplied description for this transaction.void
setDiscount(java.math.BigDecimal value)
Setter for discount Discount - The discount amount to apply to the document.void
setEmail(java.lang.String value)
Setter for email User-supplied email address relevant for this transaction.void
setEntityUseCode(java.lang.String value)
Setter for entityUseCode Entity Use Code - The client application customer or usage type.void
setExchangeRate(java.math.BigDecimal value)
Setter for exchangeRate Currency exchange rate from this transaction to the company base currency.void
setExchangeRateCurrencyCode(java.lang.String value)
Setter for exchangeRateCurrencyCode Optional three-character ISO 4217 reporting exchange rate currency code for this transaction.void
setExchangeRateEffectiveDate(java.util.Date value)
Setter for exchangeRateEffectiveDate Effective date of the exchange rate.void
setExemptionNo(java.lang.String value)
Setter for exemptionNo Exemption Number for this document.void
setIsSellerImporterOfRecord(java.lang.Boolean value)
Setter for isSellerImporterOfRecord Specifies if the transaction should have value-added and cross-border taxes calculated with the seller as the importer of record.void
setLines(java.util.ArrayList<MultiDocumentLineItemModel> value)
Setter for lines Lines that will appear on the invoice.void
setParameters(java.util.ArrayList<TransactionParameterModel> value)
Setter for parameters Special parameters for this transaction.void
setPosLaneCode(java.lang.String value)
Setter for posLaneCode Sets the Point of Sale Lane Code sent by the User for this document.void
setPurchaseOrderNo(java.lang.String value)
Setter for purchaseOrderNo Purchase Order Number for this document.void
setReferenceCode(java.lang.String value)
Setter for referenceCode Customer-provided Reference Code with information about this transaction.void
setReportingLocationCode(java.lang.String value)
Setter for reportingLocationCode Sets the sale location code (Outlet ID) for reporting this document to the tax authority.void
setSalespersonCode(java.lang.String value)
Setter for salespersonCode Salesperson Code - The client application salesperson reference code.void
setServiceMode(ServiceMode value)
Setter for serviceMode Specifies whether the tax calculation is handled Local, Remote, or Automatic (default).void
setTaxOverride(TaxOverrideModel value)
Setter for taxOverridevoid
setType(DocumentType value)
Setter for type Specifies the type of document to create.void
setUserDefinedFields(java.util.ArrayList<TransactionUserDefinedFieldModel> value)
Setter for userDefinedFields Custom user fields/flex fields for this transaction.java.lang.String
toString()
Returns a JSON string representation of CreateMultiDocumentModel
-
Constructor Details
-
CreateMultiDocumentModel
public CreateMultiDocumentModel()
-
-
Method Details
-
getCode
public java.lang.String getCode()Getter for code The transaction code of the MultiDocument transaction. All individual transactions within this MultiDocument object will have this code as a prefix. If you leave the `code` field blank, a GUID will be assigned. -
setCode
public void setCode(java.lang.String value)Setter for code The transaction code of the MultiDocument transaction. All individual transactions within this MultiDocument object will have this code as a prefix. If you leave the `code` field blank, a GUID will be assigned. -
getLines
Getter for lines Lines that will appear on the invoice. For a MultiDocument transaction, each line may represent a different company or reporting location code. AvaTax will separate this MultiDocument transaction object into many different transactions, one for each pair of legal entities, so that each legal entity can file their transactional taxes correctly. -
setLines
Setter for lines Lines that will appear on the invoice. For a MultiDocument transaction, each line may represent a different company or reporting location code. AvaTax will separate this MultiDocument transaction object into many different transactions, one for each pair of legal entities, so that each legal entity can file their transactional taxes correctly. -
getAllowAdjust
public java.lang.Boolean getAllowAdjust()Getter for allowAdjust Set this value to true to allow this API call to adjust the MultiDocument model if one already exists. If you omit this field, or if the value is `null`, you will receive an error if you try to create two MultiDocument objects with the same `code`. -
setAllowAdjust
public void setAllowAdjust(java.lang.Boolean value)Setter for allowAdjust Set this value to true to allow this API call to adjust the MultiDocument model if one already exists. If you omit this field, or if the value is `null`, you will receive an error if you try to create two MultiDocument objects with the same `code`. -
getType
Getter for type Specifies the type of document to create. A document type ending with `Invoice` is a permanent transaction that will be recorded in AvaTax. A document type ending with `Order` is a temporary estimate that will not be preserved. If you omit this value, the API will assume you want to create a `SalesOrder`. -
setType
Setter for type Specifies the type of document to create. A document type ending with `Invoice` is a permanent transaction that will be recorded in AvaTax. A document type ending with `Order` is a temporary estimate that will not be preserved. If you omit this value, the API will assume you want to create a `SalesOrder`. -
getCompanyCode
public java.lang.String getCompanyCode()Getter for companyCode Company Code - Specify the code of the company creating this transaction here. If you leave this value null, your account's default company will be used instead. -
setCompanyCode
public void setCompanyCode(java.lang.String value)Setter for companyCode Company Code - Specify the code of the company creating this transaction here. If you leave this value null, your account's default company will be used instead. -
getDate
public java.util.Date getDate()Getter for date Transaction Date - The date on the invoice, purchase order, etc. By default, this date will be used to calculate the tax rates for the transaction. If you wish to use a different date to calculate tax rates, please specify a `taxOverride` of type `taxDate`. -
setDate
public void setDate(java.util.Date value)Setter for date Transaction Date - The date on the invoice, purchase order, etc. By default, this date will be used to calculate the tax rates for the transaction. If you wish to use a different date to calculate tax rates, please specify a `taxOverride` of type `taxDate`. -
getSalespersonCode
public java.lang.String getSalespersonCode()Getter for salespersonCode Salesperson Code - The client application salesperson reference code. -
setSalespersonCode
public void setSalespersonCode(java.lang.String value)Setter for salespersonCode Salesperson Code - The client application salesperson reference code. -
getCustomerCode
public java.lang.String getCustomerCode()Getter for customerCode Customer Code - The client application customer reference code. Note: This field is case sensitive. To have exemption certificates apply, this value should be the same as the one passed to create a customer. -
setCustomerCode
public void setCustomerCode(java.lang.String value)Setter for customerCode Customer Code - The client application customer reference code. Note: This field is case sensitive. To have exemption certificates apply, this value should be the same as the one passed to create a customer. -
getCustomerUsageType
public java.lang.String getCustomerUsageType()Getter for customerUsageType DEPRECATED - Date: 10/16/2017, Version: 17.11, Message: Please use entityUseCode instead. Customer Usage Type - The client application customer or usage type. -
setCustomerUsageType
public void setCustomerUsageType(java.lang.String value)Setter for customerUsageType DEPRECATED - Date: 10/16/2017, Version: 17.11, Message: Please use entityUseCode instead. Customer Usage Type - The client application customer or usage type. -
getEntityUseCode
public java.lang.String getEntityUseCode()Getter for entityUseCode Entity Use Code - The client application customer or usage type. For a list of available usage types, use [ListEntityUseCodes](https://developer.avalara.com/api-reference/avatax/rest/v2/methods/Definitions/ListEntityUseCodes/) API. -
setEntityUseCode
public void setEntityUseCode(java.lang.String value)Setter for entityUseCode Entity Use Code - The client application customer or usage type. For a list of available usage types, use [ListEntityUseCodes](https://developer.avalara.com/api-reference/avatax/rest/v2/methods/Definitions/ListEntityUseCodes/) API. -
getDiscount
public java.math.BigDecimal getDiscount()Getter for discount Discount - The discount amount to apply to the document. This value will be applied only to lines that have the `discounted` flag set to true. If no lines have `discounted` set to true, this discount cannot be applied. -
setDiscount
public void setDiscount(java.math.BigDecimal value)Setter for discount Discount - The discount amount to apply to the document. This value will be applied only to lines that have the `discounted` flag set to true. If no lines have `discounted` set to true, this discount cannot be applied. -
getPurchaseOrderNo
public java.lang.String getPurchaseOrderNo()Getter for purchaseOrderNo Purchase Order Number for this document. This is required for single use exemption certificates to match the order and invoice with the certificate. -
setPurchaseOrderNo
public void setPurchaseOrderNo(java.lang.String value)Setter for purchaseOrderNo Purchase Order Number for this document. This is required for single use exemption certificates to match the order and invoice with the certificate. -
getExemptionNo
public java.lang.String getExemptionNo()Getter for exemptionNo Exemption Number for this document. If you specify an exemption number for this document, this document will be considered exempt, and you may be asked to provide proof of this exemption certificate in the event that you are asked by an auditor to verify your exemptions. Note: This is same as 'exemptNo' in TransactionModel. -
setExemptionNo
public void setExemptionNo(java.lang.String value)Setter for exemptionNo Exemption Number for this document. If you specify an exemption number for this document, this document will be considered exempt, and you may be asked to provide proof of this exemption certificate in the event that you are asked by an auditor to verify your exemptions. Note: This is same as 'exemptNo' in TransactionModel. -
getAddresses
Getter for addresses -
setAddresses
Setter for addresses -
getParameters
Getter for parameters Special parameters for this transaction. To get a full list of available parameters, please use the [ListParameters](https://developer.avalara.com/api-reference/avatax/rest/v2/methods/Definitions/ListParameters/) endpoint. -
setParameters
Setter for parameters Special parameters for this transaction. To get a full list of available parameters, please use the [ListParameters](https://developer.avalara.com/api-reference/avatax/rest/v2/methods/Definitions/ListParameters/) endpoint. -
getUserDefinedFields
Getter for userDefinedFields Custom user fields/flex fields for this transaction. -
setUserDefinedFields
Setter for userDefinedFields Custom user fields/flex fields for this transaction. -
getReferenceCode
public java.lang.String getReferenceCode()Getter for referenceCode Customer-provided Reference Code with information about this transaction. This field could be used to reference the original document for a return invoice, or for any other reference purpose. -
setReferenceCode
public void setReferenceCode(java.lang.String value)Setter for referenceCode Customer-provided Reference Code with information about this transaction. This field could be used to reference the original document for a return invoice, or for any other reference purpose. -
getReportingLocationCode
public java.lang.String getReportingLocationCode()Getter for reportingLocationCode Sets the sale location code (Outlet ID) for reporting this document to the tax authority. This value is used by Avalara Managed Returns to group documents together by reporting locations for tax authorities that require location-based reporting. -
setReportingLocationCode
public void setReportingLocationCode(java.lang.String value)Setter for reportingLocationCode Sets the sale location code (Outlet ID) for reporting this document to the tax authority. This value is used by Avalara Managed Returns to group documents together by reporting locations for tax authorities that require location-based reporting. -
getCommit
public java.lang.Boolean getCommit()Getter for commit Causes the document to be committed if true. This option is only applicable for invoice document types, not orders. -
setCommit
public void setCommit(java.lang.Boolean value)Setter for commit Causes the document to be committed if true. This option is only applicable for invoice document types, not orders. -
getBatchCode
public java.lang.String getBatchCode()Getter for batchCode BatchCode for batch operations. -
setBatchCode
public void setBatchCode(java.lang.String value)Setter for batchCode BatchCode for batch operations. -
getTaxOverride
Getter for taxOverride -
setTaxOverride
Setter for taxOverride -
getCurrencyCode
public java.lang.String getCurrencyCode()Getter for currencyCode The three-character ISO 4217 currency code for this transaction. -
setCurrencyCode
public void setCurrencyCode(java.lang.String value)Setter for currencyCode The three-character ISO 4217 currency code for this transaction. -
getServiceMode
Getter for serviceMode Specifies whether the tax calculation is handled Local, Remote, or Automatic (default). This only applies when using an AvaLocal server. -
setServiceMode
Setter for serviceMode Specifies whether the tax calculation is handled Local, Remote, or Automatic (default). This only applies when using an AvaLocal server. -
getExchangeRate
public java.math.BigDecimal getExchangeRate()Getter for exchangeRate Currency exchange rate from this transaction to the company base currency. This only needs to be set if the transaction currency is different than the company base currency. It defaults to 1.0. -
setExchangeRate
public void setExchangeRate(java.math.BigDecimal value)Setter for exchangeRate Currency exchange rate from this transaction to the company base currency. This only needs to be set if the transaction currency is different than the company base currency. It defaults to 1.0. -
getExchangeRateEffectiveDate
public java.util.Date getExchangeRateEffectiveDate()Getter for exchangeRateEffectiveDate Effective date of the exchange rate. -
setExchangeRateEffectiveDate
public void setExchangeRateEffectiveDate(java.util.Date value)Setter for exchangeRateEffectiveDate Effective date of the exchange rate. -
getExchangeRateCurrencyCode
public java.lang.String getExchangeRateCurrencyCode()Getter for exchangeRateCurrencyCode Optional three-character ISO 4217 reporting exchange rate currency code for this transaction. The default value is USD. -
setExchangeRateCurrencyCode
public void setExchangeRateCurrencyCode(java.lang.String value)Setter for exchangeRateCurrencyCode Optional three-character ISO 4217 reporting exchange rate currency code for this transaction. The default value is USD. -
getPosLaneCode
public java.lang.String getPosLaneCode()Getter for posLaneCode Sets the Point of Sale Lane Code sent by the User for this document. -
setPosLaneCode
public void setPosLaneCode(java.lang.String value)Setter for posLaneCode Sets the Point of Sale Lane Code sent by the User for this document. -
getBusinessIdentificationNo
public java.lang.String getBusinessIdentificationNo()Getter for businessIdentificationNo VAT business identification number for the customer for this transaction. This number will be used for all lines in the transaction, except for those lines where you have defined a different business identification number. If you specify a VAT business identification number for the customer in this transaction and you have also set up a business identification number for your company during company setup, this transaction will be treated as a business-to-business transaction for VAT purposes and it will be calculated according to VAT tax rules. -
setBusinessIdentificationNo
public void setBusinessIdentificationNo(java.lang.String value)Setter for businessIdentificationNo VAT business identification number for the customer for this transaction. This number will be used for all lines in the transaction, except for those lines where you have defined a different business identification number. If you specify a VAT business identification number for the customer in this transaction and you have also set up a business identification number for your company during company setup, this transaction will be treated as a business-to-business transaction for VAT purposes and it will be calculated according to VAT tax rules. -
getIsSellerImporterOfRecord
public java.lang.Boolean getIsSellerImporterOfRecord()Getter for isSellerImporterOfRecord Specifies if the transaction should have value-added and cross-border taxes calculated with the seller as the importer of record. Some taxes only apply if the seller is the importer of record for a product. In cases where companies are working together to ship products, there may be mutual agreement as to which company is the entity designated as importer of record. The importer of record will then be the company designated to pay taxes marked as being obligated to the importer of record. Set this value to `true` to consider your company as the importer of record and collect these taxes. This value may also be set at the Nexus level. See `NexusModel` for more information. -
setIsSellerImporterOfRecord
public void setIsSellerImporterOfRecord(java.lang.Boolean value)Setter for isSellerImporterOfRecord Specifies if the transaction should have value-added and cross-border taxes calculated with the seller as the importer of record. Some taxes only apply if the seller is the importer of record for a product. In cases where companies are working together to ship products, there may be mutual agreement as to which company is the entity designated as importer of record. The importer of record will then be the company designated to pay taxes marked as being obligated to the importer of record. Set this value to `true` to consider your company as the importer of record and collect these taxes. This value may also be set at the Nexus level. See `NexusModel` for more information. -
getDescription
public java.lang.String getDescription()Getter for description User-supplied description for this transaction. -
setDescription
public void setDescription(java.lang.String value)Setter for description User-supplied description for this transaction. -
getEmail
public java.lang.String getEmail()Getter for email User-supplied email address relevant for this transaction. -
setEmail
public void setEmail(java.lang.String value)Setter for email User-supplied email address relevant for this transaction. -
getDebugLevel
Getter for debugLevel If the user wishes to request additional debug information from this transaction, specify a level higher than `normal`. -
setDebugLevel
Setter for debugLevel If the user wishes to request additional debug information from this transaction, specify a level higher than `normal`. -
getCustomerSupplierName
public java.lang.String getCustomerSupplierName()Getter for customerSupplierName The name of the supplier / exporter / seller. For sales doctype enter the name of your own company for which you are reporting. For purchases doctype enter the name of the supplier you have purchased from. -
setCustomerSupplierName
public void setCustomerSupplierName(java.lang.String value)Setter for customerSupplierName The name of the supplier / exporter / seller. For sales doctype enter the name of your own company for which you are reporting. For purchases doctype enter the name of the supplier you have purchased from. -
getDataSourceId
public java.lang.Integer getDataSourceId()Getter for dataSourceId The Id of the datasource from which this transaction originated. This value will be overridden by the system to take the datasource Id from the call header. -
setDataSourceId
public void setDataSourceId(java.lang.Integer value)Setter for dataSourceId The Id of the datasource from which this transaction originated. This value will be overridden by the system to take the datasource Id from the call header. -
getDeliveryTerms
Getter for deliveryTerms The Delivery Terms is a field used in conjunction with Importer of Record to influence whether AvaTax includes Import Duty and Tax values in the transaction totals or not. Delivered at Place (DAP) and Delivered Duty Paid (DDP) are two delivery terms that indicate that Import Duty and Tax should be included in the transaction total. This field is also used for reports. This field is used for future feature support. This field is not currently in use. -
setDeliveryTerms
Setter for deliveryTerms The Delivery Terms is a field used in conjunction with Importer of Record to influence whether AvaTax includes Import Duty and Tax values in the transaction totals or not. Delivered at Place (DAP) and Delivered Duty Paid (DDP) are two delivery terms that indicate that Import Duty and Tax should be included in the transaction total. This field is also used for reports. This field is used for future feature support. This field is not currently in use. -
toString
public java.lang.String toString()Returns a JSON string representation of CreateMultiDocumentModel- Overrides:
toString
in classjava.lang.Object
-