Calculation API Fields

Learn about the fields in the O Series Tax Calculation API.

Calculation API fields

This table lists the fields included in the request body for O Series Tax Calculation API requests.

FieldDetailsDescription
accumulationCustomerNumberstring [ 0 .. 40 ] charactersA string to represent the accumulation customer identity.
accumulationDocumentNumberstring [ 0 .. 40 ] charactersA string to represent the accumulation invoice identity.
accumulationLocationstring [ 0 .. 40 ] charactersA code used to represent a data stream accumulation location for a line-based telecommunication line item.
administrativeDestinationobject (LocationType)Object:

- city
- country
- currencyConversion
- externalJurisdictionCode
- latitude
- locationCode
- locationCustomsStatus
- longitude
- mainDivision
- postalCode
- streetAddress1
- streetAddress2
- subDivision
- taxAreaId
administrativeOriginobject (LocationType)Object:

- city
- country
- currencyConversion
- externalJurisdictionCode
- latitude
- locationCode
- locationCustomsStatus
- longitude
- mainDivision
- postalCode
- streetAddress1
- streetAddress2
- subDivision
- taxAreaId
amountnumber <double>The amount field.
amountBilledToDatenumber <double>A numerical data value.
basisstring [ 0 .. 40 ] charactersA code used to represent unit of measure ISO code for a line-based telecommunication line item.
billingTypestring [ 0 .. 20 ] charactersIndicates the billing documents that specify different business transactions that are involved in billing activities. Examples of billing documents include invoice, credit or debit memo, or cancellation document. This field is at the transaction level.
blockingOverridePercent (OwnerRequestLineItemType)number The recoverable override percentage of the blocking override for the line item.
blockingOverridePercent (PurchaseRequestLineItemType)number <double>The recoverable override percentage of the blocking override for the line item.
blockingOverridePercent (InputTaxType)number The recoverable override percentage of the blocking override at the Input Tax level.
buyerobject (BuyerType)Object:

- administrativeDestination
- company
- department
- destination
- division
- exemptionCertificate
- exemptionReasonCode
- isTaxExempt
- recipient
- taxRegistrations
- utilityProvider
calculateVendorTaxIndicatorbooleanWhen set to true, causes the vendor-charged liability to be processed when determining the buyer's self-accrual liability. This field is applicable to Purchase Order and Accrual tax calculations.
calculateSelfAccrualIndicatorbooleanWhen set to true, causes the buyer's self-accrual liability to be processed when determining the vendor-charged liability. This field is applicable to Evaluated Receipts Settlement (ERS) only.
citystring [ 1 .. 60 ] charactersThe proper name of the city used to determine the Tax Area ID (if none is supplied). Optional (0..1) but recommended for greatest precision if no Tax Area ID is supplied.
chainTransactionPhasestring (ChainTransactionPhaseEnum)Enum:

- "MANUFACTURER"
- "INTERMEDIARY"
- "FINAL"
chargedTaxnumber <double>This field is not applicable to Purchase Order tax calculations.
classCodestring [ 1 .. 40 ] charactersA code used to represent groups of customers who have similar taxability. If you pass a classCode you should not pass a TaxRegistrationNumber because the registration number does not apply to the entire class.
commodityCodeobject (CommodityCode)A standardized, unique code for the product or service.

Object:

- commodityCodeType
- value
companystring [ 0 .. 40 ] charactersIdentifies the top-level legal entity for which tax exceptions may exist. Use the user interface to set up any taxability rules that apply at this level. This should be a parameter that is configurable to data from the host system based on an individual company's legal and tax requirements.
companyCodeCurrencyobject (CurrencyType)The monetary unit to be used in calculations as defined by ISO 4217 standard.

Object:

- isoCurrencyCodeAlpha
- isoCurrencyCodeNum
- isoCurrencyName
commodityCodeTypestring [ 1 .. 60 ] charactersThe type of commodity code mapping.
companyCodeCurrencyTaxAmountnumber <double>The calculated tax amount in the default currency code for a transaction.
companyCodeCurrencyTaxableAmountnumber <double>The total taxable amount in the default currency code for a transaction.
contentstring [ 0 .. 40 ] charactersA code used to represent data stream content for a line-based telecommunication line item.
conversionFactornumber <double>The conversion multiplier for converting a source currency to a target currency.
costnumber <double>A numerical data value.
costCenterstring [ 1 .. 40 ] charactersA value that indicates a specific area of an organization generally related to functional or accounting areas.
countnumber <double>A count used to represent quantity for a line-based telecommunication line item.
countrystring [ 1 .. 60 ] charactersThe country used to determine the Tax Area ID (if none is supplied). You can use the Country Names data extract report to see the valid country values. Defaults to the value of the Default Country Code For Address setting. The default value for this setting is USA.
countryOfOriginISOCodestring [A-Z]{3}The 3-digit ISO 3166 code of the country where the product was produced or manufactured.
countryOfOriginISOCodestring [A-Z]{3}The 3-digit ISO 3166 code of the country where the product was produced or manufactured.
currencyobject (CurrencyType)The monetary unit to be used in calculations as defined by ISO 4217 standard.

Object:

- isoCurrencyCodeAlpha
- isoCurrencyCodeNum
- isoCurrencyName
currencyConversionobject (CurrencyConversionType)Object:

- currency
- rate
currencyConversionFactorsArray of objects (CurrencyConversionFactor)Array [

- conversionFactor
- sourceCurrency
- targetCurrency
]
customerobject (CustomerType)Object:

- administrativeDestination
- customerCode
- destination
- exemptionCertificate
- exemptionReasonCode
- isTaxExempt
- taxRegistrations
customerCodeobject (CustomerCodeType)Object:

- classCode
- isBusinessIndicator
- value
deliveryTermstring (DeliveryTermEnum)Enum:

- "EXW"
- "FCA"
- "FAS"
- "FOB"
- "CFR"
- "CIF"
- "CPT"
- "CIP"
- "DAF"
- "DES"
- "DEQ"
- "DDU"
- "DDP"
- "CUS"
- "SUP"
- "DAT"
- "DAP"
- "DPU"
departmentstring [ 0 .. 40 ] charactersIdentifies the low-level legal entity for which specific tax requirements and exceptions may exist. Use the user interface to set up any taxability rules that apply at this level. Based on your legal and tax liabilities at this level, map the appropriate host system parameter to this data element. If all your tax exceptions are at the top- or mid-level entity, you may choose not to populate this data element. Note that this data element is also used to sort reports.
departmentCodestring [ 1 .. 40 ] charactersA unique identifier that associates a line item to a department for purchasing purposes.
destinationobject (LocationType)Object:

- city
- country
- currencyConversion
- externalJurisdictionCode
- latitude
- locationCode
- locationCustomsStatus
- longitude
- mainDivision
- postalCode
- streetAddress1
- streetAddress2
- subDivision
- taxAreaId
directionstring [ 0 .. 40 ] charactersA code used to represent data stream direction for a line-based telecommunication line item.
discountobject (Discount)Details on the discount. To pass discount information, pass either DiscountPercent or DiscountAmount, but not both.

Object:

- discountType
- discountValue
- userDefinedDiscountCode
discountTypestring (DiscountTypeEnum)Enum:

- "DiscountAmount"
- "DiscountPercent"
discountValuenumber <double>A numerical data value for the discount.
dispatcherobject (DispatcherType)Object:

- dispatcherCode
- taxRegistrations
dispatcherCodeobject (DispatcherCodeType)Object:

- classCode
- value
districtbooleanIndicates whether or not the override applies at this jurisdiction level.
divisionstring [ 0 .. 40 ] charactersIdentifies the mid-level legal entity for which tax exceptions may exist. Use the user interface to set up any taxability rules that apply at this level. This should be a parameter that is configurable to data from the host system based on an individual company's legal and tax requirements.
documentDatestring <date>The document date in the host application that references the event.
documentNumberstring [ 0 .. 50 ] charactersThe document number in the host application that references the event.
documentSequenceIdstring [ 0 .. 60 ] charactersSupports reporting and the document sequence identifier used by your ERP system. Some countries require that documents follow a unique sequential sequence number, depending on the registration type and the type of invoice. Use this field for audit purposes to track the sequence of your documents. This field is used in European Union (EU) countries.
documentTypestring [ 0 .. 20 ] characters Indicates the type of business transaction to be posted. This field is at the transaction level.
exemptionCertificateobject (ExemptionCertificate)Details about the exemption certificate.

Object:

- exemptionCertificateNumber
- value
exemptionCertificateNumberstring [ 1 .. 30 ] charactersThe identifier of the exemption certificate, which is recorded in the Tax Journal. Vertex recommends that you use the user interface to set up and maintain exemption certificates.

If you pass an exemption certificate number in the XML message, the isTaxExempt attribute of the participant is set to true and the transaction is treated as exempt from tax.
exemptionReasonCodestringThe reason code can be passed through the ERP application if functionality is provided. However, most lessees will set up reason codes associated with lessees on the user interface. The valid reason codes are expected from the calling application and are predefined by Vertex for use in the Returns application.

To pass a standard (i.e., not user-defined) single-digit reason code, pad the code to four digits. Refer to Reason codes in O Series for information about exemption and deduction reason codes.
exemptOverridesArray of objects (ExemptOverride)Array [

- amount
- impositionType
- jurisdictionType
- reasonCode
]
exportProcedurestring [ 1 .. 20 ] charactersThe export procedure (sales) or import procedure (purchases) that is applied for INTRASTAT purposes.
externalJurisdictionCodestring [ 0 .. 20 ] charactersJurisdiction code assigned by the relevant governmental authority.
extendedPricenumber <double>A numerical data value.
fairMarketValuenumber <double>The price at which the property is sold to the public. (a.k.a. Selling Price, Value of the Product for Sale)
fairRentalValuenumber <double>This is the rental value of the property on the open market.
fieldId (flexibleCodeFields)integer <int32> [ 1 .. 25 ]An identifier for a flexible code field.
fieldId (flexibleDateFields)integer <int32> [ 1 .. 5 ]An identifier for a flexible date field.
fieldId (flexibleNumericFields)integer <int32> [ 1 .. 10 ]An identifier for a flexible numeric field.
filingCurrencyobject (CurrencyType)The monetary unit to be used in calculations as defined by ISO 4217 standard.
flexibleFieldsobject (FlexibleFields)Container for user-defined fields. Fields are provided for string values, numeric (double) values, and date values.

Object:

- flexibleCodeFields
- flexibleDateFields
- flexibleNumericFields
flexibleCodeFieldsArray of objects (FlexibleCodeField)User-defined field for string values.

Array [

- fieldId
- value
]
flexibleDateFieldsArray of objects (FlexibleDateField)User-defined field for date values.

Array [

- fieldId
- value
]
flexibleNumericFieldsArray of objects (FlexibleNumericField)User-defined field for double values.

Array [

- fieldId
- value
]
filingCurrencyobject (CurrencyType)The monetary unit to be used in calculations as defined by ISO 4217 standard.

Object:

- isoCurrencyCodeAlpha
- isoCurrencyCodeNum
- isoCurrencyName
freightnumber <double>A data value.
generalLedgerAccountstring [ 1 .. 40 ] charactersA value that is used with a company's Chart of Accounts.
hasPhysicalPresenceIndicatorbooleanIndicates whether or not the entity has a physical presence in the country represented by the registration.
impositionIdstringThe Vertex internal identifier for the imposition.
impositionInclusionsArray of objects (ImpositionInclusion)Array [

- impositionType
- jurisdictionType
]
impositionTypeobject (ImpositionType)The type description assigned to the imposition. When multiple impositions are imposed within a jurisdiction, each must have a different type. This is assigned either by Vertex or by the user when setting up a user-defined imposition on the user interface.

Object:

- impositionTypeId
- userDefined
- value
- withholdingType
impositionTypeIdstringThe Vertex internal identifier for the impositionType.
inputAmountnumber <double>The amount of Input Tax to be distributed. Negative numbers are permitted so that corrections can be processed.
inputTotalTaxnumber <double>The amount of tax to be distributed. This field is applicable to Distribute Tax only.
invoiceTaxRatenumber <double>The tax rate as shown on the vendor invoice.
intrastatCommodityCodestring [ 1 .. 8 ] charactersUsed to classify the goods and services. For a list of acceptable values, see the filing instructions for each country where you file an Intrastat report.
isBusinessIndicatorbooleanIndicates whether or not the participant is a business.
isImportbooleanIndicates that the input tax is Import VAT. Defaults to false.
isMulticomponentbooleanIndicates whether the calculation engine calculates component-level max tax, where applicable. Amounts at the child level of the multi-component item are used for tax calculation. Amounts at the parent level are ignored. Set this attribute to true for line items at the parent level only. Line items at the child level remain false. Defaults to false.
isTaxExemptbooleanIndicates that the buyer is not required to collect taxes, and all line items associated with the purchase order are exempt from taxes. It is recommended that the buyer and vendor nexus requirements be created and maintained on the user interface.

This attribute is set to true if you pass an exemption certificate number in the XML message.
isTaxOnlyAdjustmentIndicatorbooleanAn identifier for a tax-only adjustment.
isoCountryCodestring [A-Z]{2,3}The 2-character or 3-character alphabetic ISO 3166 code indicating the country represented by the registration.
isoCurrencyCodeAlphastring [A-Z]{3}The three-character ISO 4217 alphabetic code for the currency unit.
isoCurrencyCodeNuminteger <int32>The three-digit ISO 4217 numeric code for the currency unit.
isoCurrencyNamestringThe ISO 4217 name for the currency unit. This field is populated in the response if the user passes in a valid code or number in the request. It is ignored if passed in the request.
jurisdictionIdstringThe Vertex-specific number that identifies a jurisdiction.
jurisdictionTypestring (JurisdictionTypeEnum)Enum:

- "APO"
- "BOROUGH"
- "CITY"
- "COUNTRY"
-"COUNTY"
- "DISTRICT"
- "FPO"
- "LOCAL_IMPROVEMENT_DISTRICT"
- "PARISH"
-"PROVINCE"
- "SPECIAL_PURPOSE_DISTRICT"
- "STATE"
- "TERRITORY"
- "TOWNSHIP"
- "TRADE_BLOCK"
- "TRANSIT_DISTRICT"
landedCostnumber <double>A numerical data value.
latitudestring [ 0 .. 20 ] charactersA number representing the geographical latitude coordinate of the location.
lineItemIdstring [ 1 .. 40 ] charactersAn identifier that further defines the line item and corresponds to the transaction stored in the host system. This parameter is needed to perform synchronization services, but it is not used for reporting purposes.
lineItemNumberinteger <int64>A line number for the line item. This number can be used as a reference in reports or in audits. If no line item number is supplied, a number is assigned.
lineItems (Owner)Array of objects (OwnerRequestLineItemType)The header for a component of a transaction. A line item is required for each component of the transaction. Each transaction requires at least one line item. Note that a line item can contain child line items.

Array [

- amountBilledToDate
- blockingOverridePercent
- owner
- chainTransactionPhase
- commodityCode
- companyCodeCurrencyTaxAmount
- companyCodeCurrencyTaxableAmount
- cost
- netBookValue
- totalCost
- fairMarketValue
- fairRentalValue
- costCenter
- countryOfOriginISOCode
- deliveryTerm
- departmentCode
- exemptOverrides
- exportProcedure
- extendedPrice
- flexibleFields
- freight
- generalLedgerAccount
- impositionInclusions
- inputTotalTax
- intrastatCommodityCode
- isMulticomponent
- landedCost
- lineItemId
- lineItemNumber
- lineItems
- lineType
- locationCode
- materialCode
- materialOrigin
- movementMethod
- modeOfTransport
- natureOfTransaction
- netMassKilograms
- nonTaxableOverrides
- partialExemptRecoverableOverridePercent
- previousTaxPaid
- projectNumber
-purchase
-quantity
-rateOverrides
-recoverableDate
-returnsFields
-simplificationCode
-situsOverride
-specialTaxBasis
-statisticalValue
-supplementaryUnit
-taxDate
-taxIncludedIndicator
-taxOverride
-titleTransfer
-unitPrice
-usage
-usageClass
-vendorSKU
-volume
-wageBasis
-weight
lineItemsArray of objects (OwnerRequestLineItemType)A subcomponent (or child line item) of the transaction.

Array [
object OwnerRequestLineItemType Recursive
]
lineItems (Buyer)Array of objects (PurchaseRequestLineItemType)The header for a component of a transaction. A line item is required for each component of the transaction. Each transaction requires at least one line item. Note that a line item can contain child line items.

Array [

- amountBilledToDate
- blockingOverridePercent
- buyer
- chainTransactionPhase
- chargedTax
- commodityCode
- companyCodeCurrencyTaxAmount
- companyCodeCurrencyTaxableAmount
- cost
- costCenter
- countryOfOriginISOCode
- deliveryTerm
- departmentCode
- discount
- exemptOverrides
- exportProcedure
- extendedPrice
- flexibleFields
- freight
- generalLedgerAccount
- impositionInclusions
- inputTotalTax
- intrastatCommodityCode
- isMulticomponent
- landedCost
- lineItemId
- lineItemNumber
- lineItems
- lineType
- locationCode
- materialCode
- materialOrigin
- modeOfTransport
- natureOfTransaction
- netMassKilograms
- nonTaxableOverrides
- partialExemptRecoverableOverridePercent
- projectNumber
- purchase
- quantity
- rateOverrides
- recoverableDate
- returnsFields
- simplificationCode
- situsOverride
- specialTaxBasis
- statisticalValue
- supplementaryUnit
- taxDate
- taxIncludedIndicator
- taxOverride
- titleTransfer
- transactionType
- unitPrice
- usage
- usageClass
- vendor
- vendorSKU
- vendorTaxes
- volume
- wageBasis
- weight
]
lineItems (Buyer)Array of objects (PurchaseRequestLineItemType)Array [
object PurchaseRequestLineItemType Recursive
]
lineItems (Seller)Array of objects (SaleRequestLineItemType)The header for a component of a transaction. A line item is required for each component of the transaction. Each transaction requires at least one line item. Note that a line item can contain child line items.

Array
[

- amountBilledToDate
- chainTransactionPhase
- commodityCode
- companyCodeCurrencyTaxAmount
- companyCodeCurrencyTaxableAmount
- cost
- costCenter
- countryOfOriginISOCode
- customer
- deliveryTerm
- departmentCode
- discount
- exemptOverrides
- exportProcedure
- extendedPrice
- fairMarketValue
- flexibleFields
- freight
- generalLedgerAccount
- impositionInclusions
- inputTotalTax
- intrastatCommodityCode
- isMulticomponent
- landedCost
- lineItemId
- lineItemNumber
- lineItems
- lineType
- lineTypes
- locationCode
- materialCode
- materialOrigin
- modeOfTransport
- natureOfTransaction
- netMassKilograms
- nonTaxableOverrides
- product
- projectNumber
- quantity
- rateOverrides
- returnsFields
- seller
- simplificationCode
- situsOverride
- statisticalValue
- supplementaryUnit
- previousTaxPaid
- taxDate
- taxIncludedIndicator
- taxOverride
- titleTransfer
- unitPrice
- usage
- usageClass
- vendorSKU
- volume
- weight
]
lineItems (SaleRequestLineItemType)Array of objects (SaleRequestLineItemType)A sub-component (or child line item) of the transaction.

Array [
object SaleRequestLineItemType Recursive
]
lineTypeobject (LineType)A line based telecommunication line item.

Object:

- accumulationLocation
- content
- direction
- status
- value
lineTypeNumberinteger <int64> [ 0 .. 999999999999 ]A code used to represent a data stream accumulation location for a line-based telecommunication line item.
lineTypesArray of objects (LineTypes)An array of LineTypeSet elements in a telecommunication line item.

Array [

- accumulationLocation
- basis
- content
- count
- direction
- lineTypeNumber
- status
- value
]
locationCodestring [ 0 .. 20 ] charactersA value that can be used for tax return filing in jurisdictions that require taxes to be filed for individual retail locations.
locationCustomsStatusstring (LocationCustomsStatusEnum)The customs status at this location

Enum:

- "FREE_CIRCULATION
- BONDED_WAREHOUSE
- FREE_TRADE_ZONE
- TEMPORARY_IMPORT
- INWARD_PROCESSING_RELIEF
- OUTWARD_PROCESSING_RELIEF
locationRolestring (LocationEnum)Enum:

- "ADMINISTRATIVE_DESTINATION"
- "ADMINISTRATIVE_ORIGIN" "DESTINATION"
- "PHYSICAL_ORIGIN"
longitudestring [ 0 .. 20 ] characterA number representing the geographical longitude coordinate of the location.
mainDivisionstring [ 1 .. 60 ] charactersThe proper name or the postal abbreviation of the state, province, or territory used to determine the Tax Area ID if none is supplied. Optional (0..1) but recommended for greatest precision if no Tax Area ID is supplied.
materialCodestring [ 1 .. 40 ] charactersA value that represents a specific item or product.
materialOriginstring [ 1 .. 60 ] charactersThe material origin type. Material origin applies to countries, such as Brazil and India, where taxation can vary based on where the goods were acquired before sale.
modeOfTransportinteger <int32> [ 1 .. 99 ]A code that indicates the type of vehicle that transported the product across the country border. For a list of acceptable values, see the filing instructions for each country where you file an Intrastat report.
movementMethodstring (MovementMethodEnum)Indicates how assets are moved. Valid values are CONSIGNMENT, CALL_OFF, and REGULAR. If no value is provided, the calculation engine defaults to REGULAR.

Enum:

- "CONSIGNMENT"
- "CALL_OFF"
- "REGULAR"
name (ReturnsCodeField)stringA data value.
name (ReturnsCodeField)stringA data value.
name (ReturnsIndicatorField)stringA data value.
name (ReturnsNumericField)stringA data value.
natureOfTransactioninteger <int32> [ 1 .. 999 ]A code that indicates the type of transaction being declared for Intrastat purposes. For a list of acceptable values, see the filing instructions for each country where you file an Intrastat report.
netBookValuenumber <double>Cost less depreciation. The depreciation method is dependent on the state rules (straightline depreciation, declining depreciation, etc.).
netMassKilogramsinteger <int32> >= 1The mass of the product in kilograms.
nexusIndicatorbooleanIndicates whether the seller is not required to collect taxes.
nexusReasonCodestringA code that indicates the reason that the seller is exempt from tax.
nexusOverridesArray of objects (NexusOverride)A list of nexus overrides. Maximum four overrides are allowed.

Array [

- city
- country
- district
- locationRole
- mainDivision
- subDivision
]
nonTaxableOverridesArray of objects (NonTaxableOverride)Array [

- amount
- impositionType
- jurisdictionType
- reasonCode
]
orderTypestring [ 0 .. 20 ] charactersThe key that identifies the purpose of the order. This field is on the transaction level.
originalCurrencyobject (CurrencyType)The monetary unit to be used in calculations as defined by ISO 4217 standard.

Object:

- isoCurrencyCodeAlpha
- isoCurrencyCodeNum
- isoCurrencyName
overrideReasonCodestringA code that indicates the reason for the override. If your host system provides this functionality, this data element can be used. You can use the user interface to set up reason codes. Valid reason codes are expected from the host system and are pre-defined by Vertex for use in Returns Export.

To pass a standard (i.e., not user-defined) single-digit reason code, pad the code to four digits. Refer to Reason codes in O Series for information about exemption and deduction reason codes.
overrideTypestring (OverrideTypeEnum)Classifies the override as taxable or nontaxable.

Enum:

- "TAXABLE"
- "NONTAXABLE"
ownerobject (OwnerType)Object:

- physicalOrigin
- company
- department
- destination
- division
- exemptionReasonCode
- isTaxExempt
- taxRegistrations
- utilityProvider
ownerMessageTypestring (OwnerMessageTypeEnum)Enum:

- "ASSET_MOVEMENT"
- "INVENTORY_REMOVAL"
partialExemptRecoverableOverridePercentnumber <double>The recoverable percentage of a partial exemption. This field is populated only for transactions with a tax type of Value Added Tax.
paymentDatestring <date>The date on which the purchaser paid for the product. If the purchaser pays for the product but physically receives it at a later date, Vertex O Series uses this field for returns and reporting for your tax type. This field is also used in cash accounting.
physicalLocationsArray of objects (PhysicalLocation)A list of physical locations.

Array [

- city
- country
- district
- mainDivision
- postalCode
- streetAddress1
- streetAddress2
- subDivision
- taxAreaId
]
physicalOriginobject (LocationType)Object:

- city
- country
- currencyConversion
- externalJurisdictionCode
- latitude
- locationCode
- locationCustomsStatus
- longitude
- mainDivision
- postalCode
- streetAddress1
- streetAddress2
- subDivision
- taxAreaId
postalCodestring [ 1 .. 20 ] charactersThe postal code used to determine the Tax Area ID (if none is supplied). For valid formats, see LookupTaxArea web services in our XML Integration Guide. Optional (0..1) but recommended for greatest precision if no Tax Area ID is supplied.
postingDatestring <date>Defines when the transaction is reported for use with reporting and returns filing. If you do not define the Posting Date, the Calculation Engine sets it for the date when the transaction is processed.
postToJournalbooleanIndicates whether the results of the transaction are posted to the Tax Journal. Defaults to true. This field is not applicable to Invoice and Quotation tax calculation.
previousTaxPaidnumber <double>The amount of taxes paid previously on the asset. This information is needed to determine reciprocity rules between jurisdictions.
productobject (Product)A code from the host system that identifies the product, material, service, or SKU number. You can use the user interface to map your products to product categories. If the supplied Product and Product Class information is not recognized by the calculation engine, a general category indicating TPP is assigned. Required (1) if no Product Class information is supplied. If both are supplied, Product information supersedes Product Class information.

Object:

- productClass
- value
projectNumberstring [ 1 .. 40 ] charactersA unique identifier that associates a line item to a project for purchasing purposes.
proratePercentagenumber <double> [ -100000000 .. 100000000 ]Percentage passed from the billing system to calculate a remainder of an assessed tax or fee.
purchaseobject (Purchase)A code from the host system that identifies the product, material, service, or SKU number. You can use the user interface to map your purchase to purchase categories. If the supplied Purchase and Purchase Class information is not recognized by the calculation engine, a general category indicating TPP is assigned. Required (1) if no Purchase Class information is supplied. If both are supplied, Purchase information supersedes Purchase Class information.

Object:

- purchaseClass
- value
purchaseClassstring [ 0 .. 40 ] charactersA code used to represent groups or categories of products or services with similar taxability. You can use the user interface to map your products classes to purchase class categories. If the supplied Purchase and Purchase Class information is not recognized by the calculation engine, a general category indicating TPP is assigned. Required (1) if no Purchase information is supplied. If both are supplied, Purchase information supersedes Purchase Class information.
purchaseMessageTypestring (PurchaseMessageTypeEnum)Enum:

- "PURCHASE_ORDER"
- "INVOICE_VERIFICATION"
- "ACCRUAL"
- "DISTRIBUTE_TAX"
- "ERS"
quantityobject (MeasureType)Object:

- unitOfMeasure
- value
ratenumber <double>The rate (multiplier) used for converting the transaction currency amount to the filing currency amount. Pass in this value and the currency code (isoCurrencyCodeAlpha or isoCurrencyCodeNum) to have filing currency calculated if your configuration parameters are set up to do so.
rateOverridesArray of objects (RateOverride)Array [

- impositionType
- jurisdictionType
- rate
]
reasonCodestringA code that indicates the reason for the override. If your host system provides this functionality, this data element can be used. You can use the user interface to set up reason codes. Valid reason codes are expected from the host system and are pre-defined by Vertex for use in the Returns Export module in Vertex Central.

To pass a standard (i.e., not user-defined) single-digit reason code, pad the code to four digits. Refer to Reason codes in O Series for information about exemption and deduction reason codes.
recipientobject (RecipientType)Object:

- recipientCode
- taxRegistrations
recipientCodeobject (RecipientCodeType)Object:

- classCode
- isBusinessIndicator
- value
recoverableDatestring <date>The date used to calculate Recoverable Input VAT.
returnAssistedParametersIndicatorbooleanIndicates whether the response message should contain an additional structure that shows the elements and attributes that were changed by Tax Assist. This is for informational purposes only and contains no tax results.
returnGeneratedLineItemsIndicatorbooleanIf this indicator is set, the response message returns child line items that were generated by the Tax Assist allocation feature. Otherwise, these line items are deleted after the transaction is posted to the Tax Journal and only the primary line item, which contains the combined tax results of the child line items, is passed back to the host system.
returnsCodeFieldsArray of objects (ReturnsCodeField)A text value for your returns. If you require a country-specific setting, preface this text with the ISO 3166-1 alpha-2 country code and an underscore. This field is included on the Returns report that is associated with your tax type. For example, this field is included in VAT Returns reports. This field is not available for U.S. transactions.

Array:

- name
- value
returnsDateFieldsArray of objects (ReturnsDateField)A date value for your returns. If you require a country-specific setting, preface this date with the ISO 3166-1 alpha-2 country code and an underscore. This field is included on the Returns report that is associated with your tax type. For example, this field is included in VAT Returns reports. This field is not available for U.S. transactions.

Array [

- name
- value
]
returnsFieldsobject (ReturnsFields)Supports the returns that are associated with your tax type. These fields enable you to pass in country-specific data to Vertex O Series for returns processing. This data is passed from Vertex O Series to your returns processing system. The value of the name attribute for country-specific fields is prefixed by the two-character ISO country code. These fields are included on the Returns report that is associated with your tax type. For example, these fields are included in VAT Returns reports. These fields are not available for U.S. transactions.

Caution! Vertex recommends that, if you use the ReturnsFields data element, you always include all Returns-related subdata elements - even if there was no change in those elements. If you do not include all Returns-related subdata elements, the ReturnsFields information will be lost when you perform synchronization activities between Vertex O Series and your host system.

Object:

- returnsCodeFields
- returnsDateFields
- returnsIndicatorFields
- returnsNumericFields
returnsIndicatorFieldsArray of objects (ReturnsIndicatorField)A Boolean value for your returns. If you require a country-specific setting, preface this value with the ISO 3166-1 alpha-2 country code and an underscore. This field is included on the Returns report that is associated with your tax type. For example, this field is included in VAT Returns reports. This field is not available for US transactions.

Array [

- name
- value
]
returnsNumericFieldsArray of objects (ReturnsNumericField)A numeric value for your returns. If you require a country-specific setting, preface this number with the ISO 3166-1 alpha-2 country code and an underscore. This field is included on the Returns report that is associated with your tax type. For example, this field is included in VAT Returns reports. This field is not available for U.S. transactions.

Array [

- name
- value
]
returnTimeElapsedDetailsIndicatorbooleanIndicates whether the response message should contain details of what composed the elapsed time. The default value is false.
roundAtLineLevelbooleanThe roundAtLineLevel attribute enables you to apply line-item level or invoice-level rounding to tax calculations. Set this attribute to true to set up line-item level rounding. With line-item level rounding, the calculation engine rounds amounts at the line-item level and then sums those amounts to calculate an invoice total. This method is useful for invoices that include line items with different taxing jurisdictions. The default value for this attribute is false. In this case, O Series applies an invoice-level rounding, where the calculation engine compares the sum of rounded line item-level totals to the rounded invoice-level total. When there is a difference between these totals, the calculation engine compares differences between rounded and unrounded amounts at each jurisdiction level and distributes the difference to the jurisdiction that results in the smallest total rounding difference amount. For more information about invoice-level rounding, contact Vertex Customer Support.
saleMessageTypestring (SaleMessageTypeEnum)Enum:

- "QUOTATION"
- "INVOICE"
- "DISTRIBUTE_TAX"
simplificationCodestring (SimplificationCodeEnum)Enum:

- "CONSIGNMENT"
- "CALL_OFF"
- "TRIANGULATION"
- "REGISTRATION_GROUP"
situsOverrideobject (SitusOverride)Details about the situs determination overrides.

- taxingLocation
sellerobject (SellerType)Object:

- administrativeOrigin
- company
- department
- dispatcher
- division
- nexusIndicator
- nexusReasonCode
- physicalOrigin
- taxRegistrations
- utilityProvider
sourceCurrencyobject (CurrencyType)The monetary unit to be used in calculations as defined by ISO 4217 standard.

- isoCurrencyCodeAlpha
- isoCurrencyCodeNum
- isoCurrencyName
specialTaxBasisnumber <double>The amount that is passed to Vertex O Series from your ERP or host system. Vertex O Series uses this amount to calculate the VAT withholding amount for a given line item. This field is used for Procurement messages. This field specifies the special tax basis of the line item.
statusstring [ 0 .. 40 ] charactersA code used to represent data stream status for a line-based telecommunication line item.
statisticalValueobject (CurrencyAmountType)Object:

- amount
- currency
streetAddress1string [ 1 .. 100 ] charactersThe first line of the street address.
streetAddress2string [ 1 .. 60 ] charactersThe name of the county used to determine the Tax Area ID if none is supplied. Optional (0..1) but recommended for greatest precision if no Tax Area ID is supplied.
subDivisionstring [ 1 .. 60 ] charactersThe name of the county used to determine the Tax Area ID if none is supplied. Optional (0..1) but recommended for greatest precision if no Tax Area ID is supplied.
supplementaryUnitobject (SupplementaryUnit)Object:

- unitType
- value
targetCurrencyobject (CurrencyType)The monetary unit to be used in calculations as defined by ISO 4217 standard.

- isoCurrencyCodeAlpha
- isoCurrencyCodeNum
- isoCurrencyName
taxabilityCategoryobject (TaxabilityCategory)The taxability category information.

Object:

- userDefined
- value
taxabilityCategoryTotalsArray of objects (TaxabilityCategoryTotal)Array [

- city
- country
- impositionType
- mainDivision
- subDivision
- taxImposition
- taxabilityCategory
- totalAmount
]
taxAreaIdstringA Vertex-specific number that identifies a tax area. If the Tax Area ID exists in your host system, use that data to populate this data element in a request message.
taxDatestring <date>The date on which the line item record was produced. This can also be represented as a PO line item date, a lease line item date, and so on. Defaults to the documentDate of the transaction.
taxImpositionobject (Imposition)The imposition to which the relevant tax rule belongs. This is assigned either by Vertex or by the user when setting up a user-defined imposition on the user interface.

Object:

- impositionId
- userDefined
- value
taxIncludedIndicatorbooleanIndicates whether tax is included in the extended price.
taxingLocationstring (LocationEnum)Enum:

- "ADMINISTRATIVE_DESTINATION"
- "ADMINISTRATIVE_ORIGIN"
- "DESTINATION" "PHYSICAL_ORIGIN"
taxingJurisdictionLocationobject (TaxingJurisdictionLocationType)Object:

- city
- country
- currencyConversion
- externalJurisdictionCode
- impositionType
- jurisdictionType
- latitude
- locationCode
- longitude
- mainDivision
- postalCode
- streetAddress1
- streetAddress2
- subDivision
- taxAreaId
taxOverrideobject (TaxOverride)Details on the tax override.

- overrideReasonCode
- overrideType
taxPointDatestring <date>The date that drives the timing of when the VAT liability arises. In some countries, if the Tax Point Date (also called the Time of Supply) is different from the invoice date, this field is shown separately on an invoice. Use this field if you have reporting compliance in Spain, Poland, and/or Hungary.
taxRegistrationsArray of objects (TaxRegistrationType)Array [

- hasPhysicalPresenceIndicator
- impositionType
- isoCountryCode
- jurisdictionId
- mainDivision
- nexusOverrides
- physicalLocations
- taxRegistrationNumber
- filingCurrency
- taxRegistrationType
]
taxRegistrationNumberstring [ 0 .. 40 ] charactersThe tax registration ID number.
taxRegistrationTypestring (TaxRegistrationTypeEnum)Enumeration containing the types of tax registrations.

Enum:

- "VAT Registration"
- "Federal Employer Identification Number (FEIN)"
- "Tax Identification Number (TIN)"
- "Social Security Number (SSN)"
- "Business Number"
- "State Identification Number"
- "Non-Union Scheme"
- "Union Scheme"
- "Import One Stop Shop"
titleTransferstring (TitleTransferEnum)Enum:

- "ORIGIN"
- "IN_TRANSIT"
- "DESTINATION"
totalAmountobject (CurrencyAmountType)Object:

- amount
- currency
totalCostnumber <double>The value of the raw materials plus all other costs such as direct labor, transportation, and indirect materials consumed and charged to the product overhead, etc. (a.k.a. Standard Cost, Manufactured Cost, Total Manufacturer's Cost).
transactionIdstring [ 0 .. 40 ] charactersAn identifier that further defines the document and corresponds to the transaction stored in the host system. The Transaction ID is used for synchronization services, but is not used for reporting purposes.
transactionType (Seller) Requiredstring (SaleTransactionTypeEnum)Enum:

- "SALE"
- "RENTAL"
- "LEASE"
transactionType (Buyer) Requiredstring (PurchaseTransactionTypeEnum)Enum:

- "PURCHASE"
- "RENTAL"
- "LEASE"
unitOfMeasurestring [ 1 .. 3 ] charactersThe unit of measure for the line item to be used in surcharges based on quantity and not price. For a list of the possible values, see Units of measure in O Series . If you pass a value that does not match the unit of measure for a quantity-based tax rule, that rule is not used. May be required (1) to determine tax liability in some jurisdictions. For a line-based line item in the telecommunication transaction, the passed in unit of measure can be converted to the tax rule unit of measure if a conversion rule exist.
unitTypestring [ 0 .. 20 ] charactersA unit type used with commodity codes that require an alternative to Net Mass by Kilograms. For example, a transaction may have no weight unit type, but there may be pieces, pairs, or liters. This element is used for intrastat purposes and is associated with the Supplementary Unit element.
unitPricenumber <double>A numerical data value.
usagestring [ 1 .. 40 ] charactersDirectly identifies a usage by user-defined usage code.
usageClassstring [ 1 .. 40 ] charactersDirectly identifies a usage class by user-defined usage class code.
userDefined (ImpositionType)booleanIdentifier for a user-defined imposition type. The default value is False.
userDefined (Imposition)booleanIdentifier for user-defined rules. This identifier is useful for troubleshooting. The default value is False, Vertex-defined rule.
userDefined (TaxabilityCategory)booleanAn identifier for a user-defined taxability category.
userDefinedDiscountCodestring [ 0 .. 20 ] charactersA user-defined code that maps to a Vertex-supplied discount category. You can use the user interface to map your discount codes to discount categories.
utilityProviderstring (UtilityProviderEnum)Enum:

- "REGULATED_TAXPAYER"
- "UNREGULATED_TAXPAYER"
value (CommodityCode)string [ 0 .. 40 ] charactersA data value.
value (CustomerCodeType)string [ 0 .. 40 ] charactersA data value.
value (DispatcherCodeType)string [ 0 .. 40 ] charactersA data value.
value (ExemptionCertificate)stringA data value.
value (FlexibleCodeField)string [ 1 .. 250 ] charactersA data value.
value (FlexibleDateField)string <date>A data value.
value (FlexibleNumericField)number <double>A numerical data value.
value (ImpositionType)stringThe name of the imposition type.
value (linetypes)string [ 0 .. 40 ] charactersA code from the host system that identifies the line type of a line-based telecommunication line item.
value (LineType)string [ 0 .. 40 ] charactersA code from the host system that identifies the line type of a line-based telecommunication line item.
value (MeasureType)number A numerical data value.
value (Product)string [ 0 .. 40 ] charactersA data value.
value (Purchase)string [ 0 .. 40 ] charactersA data value.
value (RecipientCodeType)string [ 0 .. 40 ] charactersA data value.
value (ReturnsCodeField)stringA data value.
value (ReturnsDateField)stringA data value.
value (ReturnsIndicatorField)stringA data value.
value (ReturnsNumericField)stringA data value.
value (SupplementaryUnit)number A numerical data value.
value (TaxabilityCategory)stringThe taxability category code.
value (VendorCodeType)string [ 0 .. 40 ] charactersA data value.
vendorobject (VendorType)Object:

- administrativeOrigin
- physicalOrigin
- taxRegistrations
- vendorCode
- dispatcherCode
vendorCodeobject (VendorCodeType)Object:

- classCode
- value
vendorSKUstring [ 1 .. 40 ] charactersA value that represents a specific item or product SKU number.
vendorTaxesArray of objects (InputTaxType)The vendor supplied tax amounts to post.

Array [

- blockingOverridePercent
- inputAmount
- invoiceTaxRate
- isImport
- partialExemptRecoverableOverridePercent
- taxingJurisdictionLocation
]
volumeobject (MeasureType)Object:

- unitOfMeasure
- value
wageBasisnumber <double>The earnings total of the line item that is subject to VAT Social Security Withholding.
weightobject (MeasureType)Object:

- unitOfMeasure
- value
withholdingTypestring [ 0 .. 60 ] charactersThe withholding type of the impositionType.