<?xml version='1.0' encoding='UTF-8'?><!--
  ~ Copyright 2011 Thomson Reuters/ONESOURCE. All rights reserved.
  --><xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://www.sabrix.com/services/taxcalculationservice/2011-09-01" elementFormDefault="qualified" targetNamespace="http://www.sabrix.com/services/taxcalculationservice/2011-09-01">


	<xs:element name="taxCalculationRequest" type="TaxCalculationRequest"/>


	<xs:complexType name="TaxCalculationRequest">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Top level request for a tax calculation call.
            	]]>
			</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element minOccurs="1" name="INDATA" type="IndataType"/>
		</xs:sequence>
	</xs:complexType>


	<xs:complexType name="IndataType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Contains batch level request fields as well as a list of invoices.
	            ]]>
			</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element minOccurs="0" name="COMPANY_ID" type="CompanyIdType"/>
			<xs:element minOccurs="0" name="COMPANY_NAME" type="CompanyNameType"/>
			<xs:element minOccurs="0" name="COMPANY_ROLE" type="CompanyRoleType"/>
			<xs:element minOccurs="0" name="EXTERNAL_COMPANY_ID" type="ExternalCompanyIdType"/>
			<xs:element minOccurs="0" name="SCENARIO_ID" type="xs:long">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
This is an internal ID generated by Determination for Workbench scenarios.
            			]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element minOccurs="0" name="SCENARIO_NAME" type="ScenarioNameType"/>
			<xs:element minOccurs="0" name="XML_GROUP_NAME" type="XmlGroupNameType"/>
			<xs:element minOccurs="0" name="XML_GROUP_OWNER" type="XmlGroupOwnerType"/>
			<xs:element minOccurs="0" name="USERNAME" type="UserNameType"/>
			<xs:element minOccurs="0" name="PASSWORD" type="PasswordType"/>
			<xs:element minOccurs="0" name="HOST_SYSTEM" type="HostSystemType"/>
			<xs:element minOccurs="0" name="HOST_REQUEST_INFO" type="HostRequestInfoType"/>
			<xs:element minOccurs="0" name="CALLING_SYSTEM_NUMBER" type="CallingSystemNumberType"/>
			<xs:element maxOccurs="unbounded" name="INVOICE" type="IndataInvoiceType"/>
		</xs:sequence>
		<xs:attribute name="version" type="VersionType"/>
	</xs:complexType>


	<xs:simpleType name="VersionType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The version of the determination object model schema.
            	]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:enumeration value="G"/>
		</xs:restriction>
	</xs:simpleType>


	<xs:complexType name="IndataInvoiceType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Serves as the container for an individual invoice. Each batch can contain multiple invoices.
            	]]>
			</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element minOccurs="0" name="ALLOCATION_GROUP_NAME" type="AllocationGroupNameType"/>
			<xs:element minOccurs="0" name="ALLOCATION_GROUP_OWNER" type="AllocationGroupOwnerType"/>
			<xs:element minOccurs="0" name="ALLOCATION_NAME" type="AllocationNameType"/>
			<xs:element minOccurs="0" name="AUTO_CREATE_CERTIFICATES" type="AutoCreateCertificatesType"/>
			<xs:element minOccurs="0" name="AUTO_CREATE_CUSTOMERS" type="AutoCreateCustomersType"/>
			<xs:element minOccurs="0" name="BASIS_PERCENT" type="BasisPercentType"/>
			<xs:element minOccurs="0" name="BILL_OF_LADING" type="BillOfLadingType"/>
			<xs:element minOccurs="0" name="BILL_TO" type="ZoneAddressType"/>
			<xs:element minOccurs="0" name="BUYER_PRIMARY" type="ZoneAddressType"/>
			<xs:element minOccurs="0" name="CALLING_SYSTEM_NUMBER" type="CallingSystemNumberType"/>
			<xs:element minOccurs="0" name="CALCULATION_DIRECTION" type="CalculationDirectionType"/>
			<xs:element minOccurs="0" name="COUNTRY_OF_ORIGIN" type="CountryOfOriginType"/>
			<xs:element name="CURRENCY_CODE" type="CurrencyCodeType"/>
			<xs:element minOccurs="0" name="CUSTOMER_GROUP_NAME" type="CustomerGroupNameType"/>
			<xs:element minOccurs="0" name="CUSTOMER_GROUP_OWNER" type="CustomerGroupOwnerType"/>
			<xs:element minOccurs="0" name="CUSTOMER_NAME" type="CustomerNameType"/>
			<xs:element minOccurs="0" name="CUSTOMER_NUMBER" type="CustomerNumberType"/>
			<xs:element minOccurs="0" name="DELIVERY_TERMS" type="DeliveryTermsType"/>
			<xs:element minOccurs="0" name="DEPT_OF_CONSIGN" type="DeptOfConsignType"/>
			<xs:element minOccurs="0" name="DOCUMENT_TYPE" type="DocumentTypeType"/>
			<xs:element maxOccurs="unbounded" minOccurs="0" name="END_USE" type="EndUseType"/>
			<xs:element minOccurs="0" name="END_USER_NAME" type="EndUserNameType"/>
			<xs:element minOccurs="0" name="ESTABLISHMENTS" type="EstablishmentsType"/>
			<xs:element minOccurs="0" name="EXEMPT_AMOUNT" type="AmountType"/>
			<xs:element minOccurs="0" name="EXEMPT_CERTIFICATE" type="CertificateLocationType"/>
			<xs:element minOccurs="0" name="EXEMPT_REASON" type="CertificateLocationType"/>
			<xs:element minOccurs="0" name="EXTERNAL_COMPANY_ID" type="ExternalCompanyIdType"/>
			<xs:element minOccurs="0" name="FILTER_GROUP_NAME" type="FilterGroupNameType"/>
			<xs:element minOccurs="0" name="FILTER_GROUP_OWNER" type="FilterGroupOwnerType"/>
			<xs:element minOccurs="0" name="FISCAL_DATE" type="FiscalDateType"/>
			<xs:element minOccurs="0" name="FUNCTIONAL_CURRENCY_CODE" type="FunctionalCurrencyCodeType"/>
			<xs:element minOccurs="0" name="HOST_SYSTEM" type="HostSystemType"/>
			<xs:element minOccurs="0" name="INCLUSIVE_TAX_INDICATORS" type="InclusiveTaxIndicatorsType"/>
			<xs:element minOccurs="0" name="INPUT_RECOVERY_TYPE" type="InputRecoveryTypeType"/>
			<xs:element name="INVOICE_DATE" type="InvoiceDateType"/>
			<xs:element minOccurs="0" name="INVOICE_NUMBER" type="InvoiceNumberType"/>
			<xs:element minOccurs="0" name="IS_AUDITED" type="IsAuditedType"/>
			<xs:element minOccurs="0" name="IS_DUTY_CALC" type="IsDutyCalcType"/>
			<xs:element minOccurs="0" name="IS_AUDIT_UPDATE" type="IsAuditUpdateType"/>
			<xs:element minOccurs="0" name="IS_BUSINESS_SUPPLY" type="IsBusinessSupplyType"/>
			<xs:element minOccurs="0" name="IS_CREDIT" type="IsCreditType"/>
			<xs:element minOccurs="0" name="IS_EXCHANGE" type="BooleanType"/>
			<xs:element minOccurs="0" name="IS_EXEMPT" type="FlagAddressType"/>
			<xs:element minOccurs="0" name="IS_NO_TAX" type="FlagAddressType"/>
			<xs:element minOccurs="0" name="IS_REPORTED" type="IsReportedType"/>
			<xs:element minOccurs="0" name="IS_REVERSED" type="IsReversedType"/>
			<xs:element minOccurs="0" name="IS_ROUNDING" type="IsRoundingType"/>
			<xs:element minOccurs="0" name="IS_SIMPLIFICATION" type="IsSimplificationType"/>
			<xs:element minOccurs="0" name="LICENSES" type="IndataLicensesType"/>
			<xs:element minOccurs="0" name="LOCATION" type="LocationNameType"/>
			<xs:element minOccurs="0" name="LOCATION_SET" type="LocationSetType"/>
			<xs:element minOccurs="0" name="MIDDLEMAN" type="ZoneAddressType"/>
			<xs:element minOccurs="0" name="MODE_OF_TRANSPORT" type="ModeOfTransportType"/>
			<xs:element minOccurs="0" name="MOVEMENT_DATE" type="MovementDateType"/>
			<xs:element minOccurs="0" name="MOVEMENT_TYPE" type="MovementType"/>
			<xs:element minOccurs="0" name="NATURE_OF_TRANSACTION_CODE" type="NatureOfTransactionCodeType"/>
			<xs:element minOccurs="0" name="OPERATING_LICENSES" type="OperatingLicensesType"/>
			<xs:element minOccurs="0" name="ORDER_ACCEPTANCE" type="ZoneAddressType"/>
			<xs:element minOccurs="0" name="ORDER_ORIGIN" type="ZoneAddressType"/>
			<xs:element minOccurs="0" name="ORIGINAL_DOCUMENT_ID" type="OriginalDocumentIdType"/>
			<xs:element minOccurs="0" name="ORIGINAL_DOCUMENT_ITEM" type="OriginalDocumentItemType"/>
			<xs:element minOccurs="0" name="ORIGINAL_DOCUMENT_TYPE" type="OriginalDocumentTypeType"/>
			<xs:element minOccurs="0" name="ORIGINAL_INVOICE_DATE" type="OriginalInvoiceDateType"/>
			<xs:element minOccurs="0" name="ORIGINAL_INVOICE_NUMBER" type="OriginalInvoiceNumberType"/>
			<xs:element minOccurs="0" name="ORIGINAL_MOVEMENT_DATE" type="OriginalMovementDateType"/>
			<xs:element minOccurs="0" name="OVERRIDE_AMOUNT" type="AmountType"/>
			<xs:element minOccurs="0" name="OVERRIDE_RATE" type="AmountType"/>
			<xs:element minOccurs="0" name="POINT_OF_TITLE_TRANSFER" type="PointOfTitleTransferType"/>
			<xs:element minOccurs="0" name="PORT_OF_ENTRY" type="PortOfEntryType"/>
			<xs:element minOccurs="0" name="PORT_OF_LOADING" type="PortOfLoadingType"/>
			<xs:element minOccurs="0" name="PRODUCT_MAPPING_GROUP_NAME" type="ProductMappingGroupNameType"/>
			<xs:element minOccurs="0" name="PRODUCT_MAPPING_GROUP_OWNER" type="ProductMappingGroupOwnerType"/>
			<xs:element minOccurs="0" name="REGIME" type="RegimeType"/>
			<xs:element minOccurs="0" name="REGISTRATIONS" type="RegistrationsType"/>
			<xs:element minOccurs="0" name="SELLER_PRIMARY" type="ZoneAddressType"/>
			<xs:element minOccurs="0" name="SHIP_FROM" type="ZoneAddressType"/>
			<xs:element minOccurs="0" name="SHIP_TO" type="ZoneAddressType"/>
			<xs:element minOccurs="0" name="STATISTICAL_PROCEDURE" type="StatisticalProcedureType"/>
			<xs:element minOccurs="0" name="SUPPLY" type="ZoneAddressType"/>
			<xs:element minOccurs="0" name="SUPPLY_EXEMPT_PERCENT" type="AmountType"/>
			<xs:element minOccurs="0" name="TAX_CODE" type="TaxCodeType"/>
			<xs:element minOccurs="0" name="TAX_DETERMINATION_DATE" type="TaxDeterminationDateType"/>
			<xs:element minOccurs="0" name="TAX_EXCHANGE_RATE_DATE" type="TaxExchangeRateDateType"/>
			<xs:element minOccurs="0" name="TAX_POINT_DATE" type="TaxPointDateType"/>
			<xs:element minOccurs="0" name="TAX_TREATMENT" type="TaxTreatment"/>
			<xs:element minOccurs="0" name="TAX_TYPE" type="AddressType"/>
			<xs:element minOccurs="0" name="TITLE_TRANSFER_LOCATION" type="TitleTransferLocationType"/>
			<xs:element minOccurs="0" name="TRANSACTION_TYPE" type="TransactionType"/>
			<xs:element minOccurs="0" name="VAT_GROUP_REGISTRATION" type="VatGroupRegistrationType"/>
			<xs:element minOccurs="0" name="UNIQUE_INVOICE_NUMBER" type="UniqueInvoiceNumberType"/>
			<xs:element maxOccurs="200" minOccurs="0" name="USER_ELEMENT" type="UserElementType"/>
			<xs:element maxOccurs="5" minOccurs="0" name="USER_ELEMENT_AMOUNT" type="UserElementAmountType"/>
			<xs:element maxOccurs="5" minOccurs="0" name="USER_ELEMENT_DATE" type="UserElementDateType"/>
			<xs:element minOccurs="0" name="BUSINESS_LOCATION" type="BusinessLocationType"/>
			<xs:element maxOccurs="unbounded" name="LINE" type="IndataLineType"/>

			<!-- VCT : Input - Invoice existing elements to be used - Start -->
			<xs:element minOccurs="0" name="COMPANY_ID" type="CompanyIdType"/>
			<xs:element minOccurs="0" name="COMPANY_NAME" type="CompanyNameType"/>
			<xs:element minOccurs="0" name="COMPANY_ROLE" type="CompanyRoleType"/>
			<xs:element minOccurs="0" name="CUSTOMER_TAXPAYER" type="CustomerTaxpayerType"/>
			<xs:element minOccurs="0" name="VENDOR_GROUP_NAME" type="VendorGroupNameType"/>
			<xs:element minOccurs="0" name="VENDOR_GROUP_OWNER" type="VendorGroupOwnerType"/>
			<xs:element minOccurs="0" name="VENDOR_NAME" type="VendorNameType"/>
			<xs:element minOccurs="0" name="VENDOR_NUMBER" type="VendorNumberType"/>
			<xs:element minOccurs="0" name="IS_TRUSTED_VENDOR" type="BooleanType"/>
			<xs:element minOccurs="0" name="VENDOR_TAX" type="VendorTaxType"/>
			<!-- VCT : Input - Invoice existing elements to be used - End -->
			<xs:element minOccurs="0" name="CEST" type="CestType"/>
			<xs:element minOccurs="0" name="CST" type="CstType"/>
			<xs:element minOccurs="0" name="CFOP" type="CfopType"/>
			<xs:element minOccurs="0" name="ORIGIN" type="OriginType"/>
		</xs:sequence>
	</xs:complexType>


	<xs:complexType name="IndataLineType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The input line type.
	]]>
			</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element minOccurs="0" name="ACCOUNTING_CODE" type="AccountingCodeType"/>
			<xs:element minOccurs="0" name="ALLOCATION_GROUP_NAME" type="AllocationGroupNameType"/>
			<xs:element minOccurs="0" name="ALLOCATION_GROUP_OWNER" type="AllocationGroupOwnerType"/>
			<xs:element minOccurs="0" name="ALLOCATION_NAME" type="AllocationNameType"/>
			<xs:element minOccurs="0" name="BASIS_PERCENT" type="BasisPercentType"/>
			<xs:element minOccurs="0" name="BILL_OF_LADING" type="BillOfLadingType"/>
			<xs:element minOccurs="0" name="BILL_TO" type="ZoneAddressType"/>
			<xs:element minOccurs="0" name="BUYER_PRIMARY" type="ZoneAddressType"/>
			<xs:element minOccurs="0" name="COMMODITY_CODE" type="CommodityCodeType"/>
			<xs:element minOccurs="0" name="COUNTRY_OF_ORIGIN" type="CountryOfOriginType"/>
			<xs:element minOccurs="0" name="CUSTOMER_GROUP_NAME" type="CustomerGroupNameType"/>
			<xs:element minOccurs="0" name="CUSTOMER_GROUP_OWNER" type="CustomerGroupOwnerType"/>
			<xs:element minOccurs="0" name="CUSTOMER_NAME" type="CustomerNameType"/>
			<xs:element minOccurs="0" name="CUSTOMER_NUMBER" type="CustomerNumberType"/>
			<xs:element minOccurs="0" name="DELIVERY_TERMS" type="DeliveryTermsType"/>
			<xs:element minOccurs="0" name="DEPT_OF_CONSIGN" type="DeptOfConsignType"/>
			<xs:element minOccurs="0" name="DESCRIPTION" type="DescriptionType"/>
			<xs:element minOccurs="0" name="DISCOUNT_AMOUNT" type="DiscountAmountType"/>
			<xs:element maxOccurs="unbounded" minOccurs="0" name="END_USE" type="EndUseType"/>
			<xs:element minOccurs="0" name="END_USER_NAME" type="EndUserNameType"/>
			<xs:element minOccurs="0" name="ESTABLISHMENTS" type="EstablishmentsType"/>
			<xs:element minOccurs="0" name="EXEMPT_AMOUNT" type="AmountType"/>
			<xs:element minOccurs="0" name="EXEMPT_CERTIFICATE" type="CertificateLocationType"/>
			<xs:element minOccurs="0" name="EXEMPT_REASON" type="CertificateLocationType"/>
			<xs:element minOccurs="0" name="FREIGHT_ON_BOARD" type="FreightOnBoardType"/>
			<xs:element minOccurs="0" name="GROSS_AMOUNT" type="GrossAmountType"/>
			<xs:element minOccurs="0" name="GROSS_PLUS_TAX" type="GrossPlusTaxType"/>
			<xs:element minOccurs="0" name="INCLUSIVE_TAX_INDICATORS" type="InclusiveTaxIndicatorsType"/>
			<xs:element minOccurs="0" name="INPUT_RECOVERY_AMOUNT" type="InputRecoveryAmountType"/>
			<xs:element minOccurs="0" name="INPUT_RECOVERY_PERCENT" type="InputRecoveryPercentType"/>
			<xs:element minOccurs="0" name="INPUT_RECOVERY_TYPE" type="InputRecoveryTypeType"/>
			<xs:element minOccurs="0" name="INVOICE_DATE" type="InvoiceDateType"/>
			<xs:element minOccurs="0" name="IS_ALLOCATABLE" type="IsAllocatableType"/>
			<xs:element minOccurs="0" name="IS_BLENDED" type="IsBlendedType"/>
			<xs:element minOccurs="0" name="IS_BUSINESS_SUPPLY" type="IsBusinessSupplyType"/>
			<xs:element minOccurs="0" name="IS_CREDIT" type="IsCreditType"/>
			<xs:element minOccurs="0" name="IS_EXCHANGE" type="BooleanType"/>
			<xs:element minOccurs="0" name="IS_EXEMPT" type="FlagAddressType"/>
			<xs:element minOccurs="0" name="IS_MANUFACTURING" type="IsManufacturingType"/>
			<xs:element minOccurs="0" name="IS_NO_TAX" type="FlagAddressType"/>
			<xs:element minOccurs="0" name="IS_SIMPLIFICATION" type="IsSimplificationType"/>
			<xs:element minOccurs="0" name="ITEM_VALUE" type="ItemValueType"/>
			<xs:element minOccurs="0" name="LICENSES" type="IndataLicensesType"/>
			<xs:element name="LINE_NUMBER" type="LineNumberType"/>
			<xs:element minOccurs="0" name="LOCATION" type="LocationNameType"/>
			<xs:element minOccurs="0" name="LOCATION_SET" type="LocationSetType"/>
			<xs:element minOccurs="0" name="MASS" type="MassType"/>
			<xs:element minOccurs="0" name="MIDDLEMAN" type="ZoneAddressType"/>
			<xs:element minOccurs="0" name="MODE_OF_TRANSPORT" type="ModeOfTransportType"/>
			<xs:element minOccurs="0" name="MOVEMENT_DATE" type="MovementDateType"/>
			<xs:element minOccurs="0" name="MOVEMENT_TYPE" type="MovementType"/>
			<xs:element minOccurs="0" name="OPERATING_LICENSES" type="OperatingLicensesType"/>
			<xs:element minOccurs="0" name="ORDER_ACCEPTANCE" type="ZoneAddressType"/>
			<xs:element minOccurs="0" name="ORDER_ORIGIN" type="ZoneAddressType"/>
			<xs:element minOccurs="0" name="ORIGINAL_DOCUMENT_ID" type="OriginalDocumentIdType"/>
			<xs:element minOccurs="0" name="ORIGINAL_DOCUMENT_ITEM" type="OriginalDocumentItemType"/>
			<xs:element minOccurs="0" name="ORIGINAL_DOCUMENT_TYPE" type="OriginalDocumentTypeType"/>
			<xs:element minOccurs="0" name="ORIGINAL_INVOICE_DATE" type="OriginalInvoiceDateType"/>
			<xs:element minOccurs="0" name="ORIGINAL_MOVEMENT_DATE" type="OriginalMovementDateType"/>
			<xs:element minOccurs="0" name="OVERRIDE_AMOUNT" type="AmountType"/>
			<xs:element minOccurs="0" name="OVERRIDE_RATE" type="AmountType"/>
			<xs:element minOccurs="0" name="PART_NUMBER" type="PartNumberType"/>
			<xs:element minOccurs="0" name="POINT_OF_TITLE_TRANSFER" type="PointOfTitleTransferType"/>
			<xs:element minOccurs="0" name="PORT_OF_ENTRY" type="PortOfEntryType"/>
			<xs:element minOccurs="0" name="PORT_OF_LOADING" type="PortOfLoadingType"/>
			<xs:element minOccurs="0" name="PRODUCT_CODE" type="ProductCodeType"/>
			<xs:element minOccurs="0" name="PRODUCT_CODE_TYPE" type="ProductCodeTypeEAN"/>
			<xs:element minOccurs="0" name="QUANTITIES" type="QuantitiesType"/>
			<xs:element minOccurs="0" name="QUANTITY" type="QUANTITY"/>
			<xs:element minOccurs="0" name="CAPACITY" type="CapacityType"/>
			<xs:element minOccurs="0" name="PRICES" type="PricesType"/>
			<xs:element minOccurs="0" name="CLASSIFICATION_CODES" type="CodesType"/>
			<xs:element minOccurs="0" name="REGIME" type="RegimeType"/>
			<xs:element minOccurs="0" name="REGISTRATIONS" type="RegistrationsType"/>
			<xs:element minOccurs="0" name="RELATED_LINE_NUMBER" type="RelatedLineNumberType"/>
			<xs:element minOccurs="0" name="SELLER_PRIMARY" type="ZoneAddressType"/>
			<xs:element minOccurs="0" name="SHIP_FROM" type="ZoneAddressType"/>
			<xs:element minOccurs="0" name="SHIP_TO" type="ZoneAddressType"/>
			<xs:element minOccurs="0" name="SUPPLEMENTARY_UNIT" type="SupplementaryUnitType"/>
			<xs:element minOccurs="0" name="SUPPLY" type="ZoneAddressType"/>
			<xs:element minOccurs="0" name="SUPPLY_EXEMPT_PERCENT" type="AmountType"/>
			<xs:element minOccurs="0" name="TAX_AMOUNT" type="NillableDecimalType"/>
			<xs:element minOccurs="0" name="TAX_CODE" type="TaxCodeType"/>
			<xs:element minOccurs="0" name="TAX_DETERMINATION_DATE" type="TaxDeterminationDateType"/>
			<xs:element minOccurs="0" name="TAX_EXCHANGE_RATE_DATE" type="TaxExchangeRateDateType"/>
			<xs:element minOccurs="0" name="TAX_POINT_DATE" type="TaxPointDateType"/>
			<xs:element minOccurs="0" name="EXCISE_ALREADY_PAID" type="ExciseAlreadyPaidType"/>
			<xs:element minOccurs="0" name="TAX_TREATMENT" type="TaxTreatment"/>
			<xs:element minOccurs="0" name="TAX_TYPE" type="AddressType"/>
			<xs:element minOccurs="0" name="TITLE_TRANSFER_LOCATION" type="TitleTransferLocationType"/>
			<xs:element minOccurs="0" name="TRANSACTION_TYPE" type="TransactionType"/>
			<xs:element minOccurs="0" name="UNIQUE_LINE_NUMBER" type="UniqueLineNumberType"/>
			<xs:element minOccurs="0" name="UNIT_OF_MEASURE" type="UnitOfMeasureType"/>
			<xs:element minOccurs="0" name="UOM" type="UOM"/>
			<xs:element minOccurs="0" name="VAT_GROUP_REGISTRATION" type="VatGroupRegistrationType"/>
			<xs:element minOccurs="0" name="VENDOR_GROUP_NAME" type="VendorGroupNameType"/>
			<xs:element minOccurs="0" name="VENDOR_GROUP_OWNER" type="VendorGroupOwnerType"/>
			<xs:element minOccurs="0" name="VENDOR_NAME" type="VendorNameType"/>
			<xs:element minOccurs="0" name="VENDOR_NUMBER" type="VendorNumberType"/>
			<xs:element minOccurs="0" name="VENDOR_TAX" type="VendorTaxType"/>
			<xs:element maxOccurs="200" minOccurs="0" name="USER_ELEMENT" type="UserElementType"/>
			<xs:element maxOccurs="5" minOccurs="0" name="USER_ELEMENT_AMOUNT" type="UserElementAmountType"/>
			<xs:element maxOccurs="5" minOccurs="0" name="USER_ELEMENT_DATE" type="UserElementDateType"/>
			<xs:element minOccurs="0" name="BUSINESS_LOCATION" type="BusinessLocationType"/>
			<xs:element minOccurs="0" name="CEST" type="CestType"/>
			<xs:element minOccurs="0" name="CST" type="CstType"/>
			<xs:element minOccurs="0" name="CFOP" type="CfopType"/>
			<xs:element minOccurs="0" name="ORIGIN" type="OriginType"/>
		</xs:sequence>
		<xs:attribute id="INDATA_ID" name="ID" type="xs:string" use="required"/>
	</xs:complexType>


	<xs:complexType name="HostRequestInfoType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Contains pass-through elements used to identify the originating request from the ERP source.
		]]>
			</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element minOccurs="0" name="HOST_REQUEST_ID" type="HostRequestIdType"/>
			<xs:element minOccurs="0" name="HOST_REQUEST_LOG_ENTRY_ID" type="HostRequestLogEntryIdType"/>
		</xs:sequence>
	</xs:complexType>


	<xs:complexType name="AddressType">
		<xs:complexContent>
			<xs:extension base="CommonAddressType">
				<xs:sequence>
					<xs:element minOccurs="0" name="ALL" type="xs:string"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>


	<xs:complexType name="BillOfLadingType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The following elements are contained in the Invoice and Line level for bill of lading.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element maxOccurs="1" minOccurs="1" name="NUMBER" type="BillOfLadingNumberType"/>
			<xs:element maxOccurs="1" minOccurs="1" name="DATETIME" type="BillOfLadingDateTimeType"/>
		</xs:sequence>
	</xs:complexType>

	<xs:complexType name="OperatingLicensesType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[Optional, max occurs 1 per document/invoice, wrapper for operating license types.]]>
			</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element minOccurs="0" name="ASSUME_BUYER_FULLY_LICENSED" type="BooleanType"/>
			<xs:element maxOccurs="10" minOccurs="0" name="BUYER" type="BuyerOrSellerLicenseType"/>
			<xs:element minOccurs="0" name="ASSUME_SELLER_FULLY_LICENSED" type="BooleanType"/>
			<xs:element maxOccurs="10" minOccurs="0" name="SELLER" type="BuyerOrSellerLicenseType"/>
			<xs:element maxOccurs="10" minOccurs="0" name="DESTINATION_SELLER" type="BuyerOrSellerLicenseType"/>
		</xs:sequence>
	</xs:complexType>

	<xs:complexType name="BuyerOrSellerLicenseType">
		<xs:sequence>
			<xs:element minOccurs="0" name="LICENSE_TYPE" type="LicenseType"/>
			<xs:element minOccurs="0" name="LICENSE_NUMBER" type="LicenseNumberType"/>
		</xs:sequence>
	</xs:complexType>

	<xs:simpleType name="LicenseNumberType">
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="LicenseType">
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:complexType name="ZoneAddressType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The following elements are contained in the Invoice and Line level address structures for the nine location types supported by ONESOURCE Indirect Tax Determination (Bill To, Buyer Primary, Middleman, Order Acceptance, Order Origin, Seller Primary, Ship From, Ship To, and Supply).

For all levels other than Geocode and Branch ID, you can submit either a full name or a valid ISO, 2 Character, or 3 Character code that is associated with a valid Zone name in ONESOURCE Indirect Tax Determination. These codes can be viewed on the Tax Control Panel's Zones Edit page for the associated Zone.

For Geocode and Branch ID you must submit the full name.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:complexContent>
			<xs:extension base="CommonAddressType">
				<xs:sequence>
					<xs:element minOccurs="0" name="COMPANY_BRANCH_ID" type="AddressCompanyBranchIDType"/>
					<xs:element minOccurs="0" name="IS_BONDED" type="AddressIsBondedType"/>
					<xs:element minOccurs="0" name="LOCATION_TAX_CATEGORY" type="AddressLocationTaxCategoryType"/>
					<xs:element minOccurs="0" name="ADDRESS_1" type="AddressAddress1Type"/>
					<xs:element minOccurs="0" name="ADDRESS_2" type="AddressAddress2Type"/>
					<xs:element minOccurs="0" name="ADDRESS_3" type="AddressAddress3Type"/>
					<xs:element minOccurs="0" name="ADDRESS_VALIDATION_MODE" type="AddressAddressValidationModeType"/>
					<xs:element minOccurs="0" name="DEFAULT_ADDRESS_VALIDATION_MODE" type="AddressDefaultAddressValidationModeType"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>

	<xs:complexType name="CommonAddressType">
		<xs:sequence>
			<xs:element minOccurs="0" name="COUNTRY" type="AddressCountryType"/>
			<xs:element minOccurs="0" name="PROVINCE" type="AddressProvinceType"/>
			<xs:element minOccurs="0" name="STATE" type="AddressStateType"/>
			<xs:element minOccurs="0" name="COUNTY" type="AddressCountyType"/>
			<xs:element minOccurs="0" name="CITY" type="AddressCityType"/>
			<xs:element minOccurs="0" name="DISTRICT" type="AddressDistrictType"/>
			<xs:element minOccurs="0" name="POSTCODE" type="AddressPostCodeType"/>
			<xs:element minOccurs="0" name="GEOCODE" type="AddressGEOCodeType"/>

			<xs:element minOccurs="0" name="BULK_STORAGE_FACILITY" type="BooleanType"/>
			<xs:element minOccurs="0" name="FACILITY_ID" type="FacilityIdType"/>
			<xs:element minOccurs="0" name="IRS_REGISTERED_FACILITY" type="BooleanType"/>
			<xs:element minOccurs="0" name="LATITUDE" type="LatitudeType"/>
			<xs:element minOccurs="0" name="LONGITUDE" type="LongitudeType"/>
		</xs:sequence>
	</xs:complexType>


	<xs:simpleType name="FacilityIdType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[Optional, max occurs 1 per address block, varchar(100)]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="LatitudeType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[Optional, float at least 10 decimal places]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:decimal">
			<xs:minInclusive value="-90"/>
			<xs:maxInclusive value="90"/>
			<xs:fractionDigits value="10"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="LongitudeType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[Optional, float at least 10 decimal places]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:decimal">
			<xs:minInclusive value="-180"/>
			<xs:maxInclusive value="180"/>
			<xs:fractionDigits value="10"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="AddressCountryType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Country.

Defaults to US if the US_DEFAULT_COUNTRY configuration parameter is set to Y on the Tax Control Panel. Otherwise, COUNTRY is a REQUIRED element in the address block.
		]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="50"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="AddressProvinceType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Province, or non-US state.
		]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="50"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="AddressStateType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
State.
		]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="50"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="AddressCountyType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
County.
		]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="50"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="AddressCityType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
City.
		]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="50"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="AddressDistrictType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
District.
		]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="50"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="AddressPostCodeType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The Postal or Zip Code For US ZIP Codes, the first 5 digits.
		]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="50"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="AddressGEOCodeType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Geocode (the most granular geographic division) For US ZIP Codes, the +4 portion of the code.
		]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="50"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="AddressIsBondedType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
If set to (Y)es, indicates that this is a Bonded Warehouse. This status can then be used as a rule qualifier during rule selection.
		]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="1"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="AddressLocationTaxCategoryType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Indicates the type of location for this address; for example, Refinery. This value can then be used as a rule qualifier during rule selection.
		]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="AddressCompanyBranchIDType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The branch ID of a company, passed with registration numbers for VAT Returns in several countries. For example, in the UK, companies must file their VAT Returns with Branch ID information included.
		]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="25"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="AddressAddress1Type">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
		Reserved for future use.
		]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="50"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="AddressAddress2Type">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
		Reserved for future use.
		]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="50"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="AddressAddress3Type">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
		Reserved for future use.
		]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="50"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="AddressAddressValidationModeType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
		Reserved for future use.
		]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="AddressDefaultAddressValidationModeType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
		Reserved for future use.
		]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="BillOfLadingNumberType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
				Number type.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="BillOfLadingDateTimeType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
				Number type.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:union memberTypes="xs:dateTime xs:date EmptyStringType"/>
	</xs:simpleType>

	<xs:complexType name="AmountType">
		<xs:all>
			<xs:element minOccurs="0" name="COUNTRY" type="NillableDecimalType"/>
			<xs:element minOccurs="0" name="PROVINCE" type="NillableDecimalType"/>
			<xs:element minOccurs="0" name="STATE" type="NillableDecimalType"/>
			<xs:element minOccurs="0" name="COUNTY" type="NillableDecimalType"/>
			<xs:element minOccurs="0" name="CITY" type="NillableDecimalType"/>
			<xs:element minOccurs="0" name="DISTRICT" type="NillableDecimalType"/>
			<xs:element minOccurs="0" name="POSTCODE" type="NillableDecimalType"/>
			<xs:element minOccurs="0" name="GEOCODE" type="NillableDecimalType"/>
		</xs:all>
	</xs:complexType>


	<xs:complexType name="FlagAddressType">
		<xs:all>
			<xs:element minOccurs="0" name="ALL" type="BooleanType"/>
			<xs:element minOccurs="0" name="COUNTRY" type="BooleanType"/>
			<xs:element minOccurs="0" name="PROVINCE" type="BooleanType"/>
			<xs:element minOccurs="0" name="STATE" type="BooleanType"/>
			<xs:element minOccurs="0" name="COUNTY" type="BooleanType"/>
			<xs:element minOccurs="0" name="CITY" type="BooleanType"/>
			<xs:element minOccurs="0" name="DISTRICT" type="BooleanType"/>
			<xs:element minOccurs="0" name="POSTCODE" type="BooleanType"/>
			<xs:element minOccurs="0" name="GEOCODE" type="BooleanType"/>
		</xs:all>
	</xs:complexType>


	<xs:complexType name="IndataLicensesType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Contains data for one or more licenses applying to the document.
		]]>
			</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element maxOccurs="unbounded" minOccurs="0" name="CUSTOMER_LICENSE" type="IndataLicensesDetailType"/>
		</xs:sequence>
	</xs:complexType>


	<xs:complexType name="IndataLicensesDetailType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Contains data pertaining to a single license, consisting of a number-type pair.
		]]>
			</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element minOccurs="0" name="NUMBER" type="xs:string">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
The number of the license to be created.
				]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element minOccurs="0" name="TYPE" type="xs:string">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
The type of license to be created.
				]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>


	<xs:complexType name="UserElementType">
		<xs:sequence>
			<xs:element name="NAME" type="xs:string"/>
			<xs:element name="VALUE" type="xs:string"/>
		</xs:sequence>
	</xs:complexType>


	<xs:complexType name="UserElementAmountType">
		<xs:sequence>
			<xs:element name="NAME" type="xs:string"/>
			<xs:element name="VALUE" type="xs:decimal"/>
		</xs:sequence>
	</xs:complexType>


	<xs:complexType name="UserElementDateType">
		<xs:sequence>
			<xs:element name="NAME" type="xs:string"/>
			<xs:element name="VALUE" type="UserElementDate"/>
		</xs:sequence>
	</xs:complexType>


	<xs:simpleType name="UserElementDate">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
			The user element date.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="YyyyMmDdDateType"/>
	</xs:simpleType>


	<xs:simpleType name="BusinessLocationType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
This is a pass-through element either from the financial system or Determination TransEditors. It is not used in Determination, but it is audited and can be used in Reporting.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="500"/>
		</xs:restriction>
	</xs:simpleType>


	<xs:simpleType name="CestType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
				Number type.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="9"/>
		</xs:restriction>
	</xs:simpleType>


	<xs:simpleType name="CstType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
				Number type.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="3"/>
		</xs:restriction>
	</xs:simpleType>


	<xs:simpleType name="CenqType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
				Number type.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="3"/>
		</xs:restriction>
	</xs:simpleType>


	<xs:simpleType name="CfopType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
				Number type.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="4"/>
		</xs:restriction>
	</xs:simpleType>


	<xs:simpleType name="OriginType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
				Number type.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="2"/>
		</xs:restriction>
	</xs:simpleType>


	<xs:simpleType name="CustomerTaxpayerType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
				This is a Non Taxpayer type element from the other systems to Determination.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="20"/>
		</xs:restriction>
	</xs:simpleType>


	<xs:complexType name="RegistrationsType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
List of registrations by role.
		]]>
			</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element maxOccurs="unbounded" minOccurs="0" name="BUYER_ROLE" type="xs:string">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
Buyer role registrations. Audited if used in calculation.

Note: When a buyer passes a registration in the Input XML, other configured registrations for the company are ignored. For an explanation of this treatment, see Registration Numbers in XML Input.
				]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element maxOccurs="unbounded" minOccurs="0" name="MIDDLEMAN_ROLE" type="xs:string">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
Middleman role registrations. Audited if used in calculation.
				]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element maxOccurs="unbounded" minOccurs="0" name="SELLER_ROLE" type="xs:string">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
Seller role registrations. Audited if used in calculation.

Note: When a seller passes a registration in the Input XML, other configured registrations for the company are ignored. For an explanation of this treatment, see Registration Numbers in XML Input.
				]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>


	<xs:complexType name="EstablishmentsType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
List of established locations.
		]]>
			</xs:documentation>
		</xs:annotation>
		<xs:all>
			<xs:element minOccurs="0" name="BUYER_ROLE" type="EstablishmentsLocationType">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
List of buyer's established locations.
				]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element minOccurs="0" name="MIDDLEMAN_ROLE" type="EstablishmentsLocationType">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
List of middleman's established locations.
				]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element minOccurs="0" name="SELLER_ROLE" type="EstablishmentsLocationType">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
List of seller's established locations.
				]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:all>
	</xs:complexType>


	<xs:complexType name="EstablishmentsLocationType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Establishment for each location type (true or false).
		]]>
			</xs:documentation>
		</xs:annotation>
		<xs:all>
			<xs:element minOccurs="0" name="BILL_TO" type="BooleanType"/>
			<xs:element minOccurs="0" name="BUYER_PRIMARY" type="BooleanType"/>
			<xs:element minOccurs="0" name="MIDDLEMAN" type="BooleanType"/>
			<xs:element minOccurs="0" name="ORDER_ACCEPTANCE" type="BooleanType"/>
			<xs:element minOccurs="0" name="ORDER_ORIGIN" type="BooleanType"/>
			<xs:element minOccurs="0" name="SELLER_PRIMARY" type="BooleanType"/>
			<xs:element minOccurs="0" name="SHIP_FROM" type="BooleanType"/>
			<xs:element minOccurs="0" name="SHIP_TO" type="BooleanType"/>
			<xs:element minOccurs="0" name="SUPPLY" type="BooleanType"/>
		</xs:all>
	</xs:complexType>


	<xs:complexType name="InclusiveTaxIndicatorsType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Contains information on whether to treat some or all authority taxes for this invoice as inclusive, regardless of the selected rule.
		]]>
			</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element minOccurs="0" name="FULLY_INCLUSIVE" type="BooleanType">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
If set to true, indicates that all authorities that Sabrix will select for taxing will be considered as Inclusive Tax. This element overrides the calculation method set for the selected rule by forcing inclusive tax.
		]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element maxOccurs="unbounded" minOccurs="0" name="AUTHORITY_TYPE" type="xs:string">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
If the authority selected for a transaction matches the type indicated here, all taxes for that authority are considered as inclusive.
		]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>


	<xs:complexType name="LocationNameType">
		<xs:sequence>
			<xs:element minOccurs="0" name="BILL_TO" type="xs:string"/>
			<xs:element minOccurs="0" name="ORDER_ACCEPTANCE" type="xs:string"/>
			<xs:element minOccurs="0" name="MIDDLEMAN" type="xs:string"/>
			<xs:element minOccurs="0" name="ORDER_ORIGIN" type="xs:string"/>
			<xs:element minOccurs="0" name="SHIP_FROM" type="xs:string"/>
			<xs:element minOccurs="0" name="SHIP_TO" type="xs:string"/>
			<xs:element minOccurs="0" name="SUPPLY" type="xs:string"/>
		</xs:sequence>
	</xs:complexType>


	<xs:simpleType name="FlagType">
		<xs:restriction base="xs:string">
			<xs:pattern value="[YN]{1}"/>
		</xs:restriction>
	</xs:simpleType>


	<xs:simpleType name="BooleanType">
		<xs:union memberTypes="FlagType xs:boolean EmptyStringType"/>
	</xs:simpleType>


	<xs:simpleType name="YyyyMmDdDateType">
		<xs:union memberTypes="xs:date EmptyStringType"/>
	</xs:simpleType>


	<xs:simpleType name="TransactionTypeType">
		<xs:restriction base="xs:string">
			<xs:pattern value="|AT|CL|DS|ES|GS|IS|MV|PP|RR|SI|T1|T2|TS|WG|IN|PC"/>
		</xs:restriction>
	</xs:simpleType>


	<xs:complexType name="QuantitiesType">
		<xs:sequence>
			<xs:element maxOccurs="unbounded" minOccurs="0" name="QUANTITY" type="QuantityType"/>
		</xs:sequence>
	</xs:complexType>

	<xs:simpleType name="CapacityType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The reference of capacity value.
                ]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:decimal">
			<xs:minInclusive value="0"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:complexType name="PricesType">
		<xs:sequence>
			<xs:element maxOccurs="unbounded" minOccurs="0" name="PRICE" type="PriceType"/>
		</xs:sequence>
	</xs:complexType>

	<xs:complexType name="CodesType">
		<xs:sequence>
			<xs:element maxOccurs="unbounded" minOccurs="0" name="CLASSIFICATION_CODE" type="CodeType"/>
		</xs:sequence>
	</xs:complexType>


	<xs:complexType name="QuantityType">
		<xs:sequence>
			<xs:element minOccurs="0" name="DEFAULT" type="BooleanType"/>
			<xs:element minOccurs="0" name="AMOUNT" type="NillableDecimalType"/>
			<xs:element minOccurs="0" name="UOM" type="UOM"/>
			<xs:element minOccurs="0" name="TYPE" type="BilledQuantityType"/>
		</xs:sequence>
	</xs:complexType>

	<xs:complexType name="PriceType">
		<xs:sequence>
			<xs:element minOccurs="0" name="PRICE_TYPE" type="PriceTypeVal"/>
			<xs:element minOccurs="0" name="AMOUNT" type="xs:string"/>
		</xs:sequence>
	</xs:complexType>

	<xs:complexType name="CodeType">
		<xs:sequence>
			<xs:element minOccurs="0" name="CLASSIFICATION_CODE_TYPE" type="CodeTypeVal"/>
			<xs:element minOccurs="0" name="CLASSIFICATION_CODE_ID" type="xs:string"/>
		</xs:sequence>
	</xs:complexType>

	<xs:simpleType name="PriceTypeVal">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
These are the names for price types.Please select either PMC or PMVG.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:enumeration value="PF"/>
			<xs:enumeration value="PMC"/>
			<xs:enumeration value="PMVG"/>
			<xs:enumeration value="PMPF"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="CodeTypeVal">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
These are the names for classification code types.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:enumeration value="INDUSTRY PRODUCT CODE"/>
			<xs:enumeration value="INDUSTRY CODE"/>
			<xs:enumeration value="CNAE CODE"/>
		</xs:restriction>
	</xs:simpleType>


	<xs:simpleType name="BilledQuantityType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
				This field determines the type of the quantity.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:enumeration value="GROSS"/>
			<xs:enumeration value="NET"/>
		</xs:restriction>
	</xs:simpleType>


	<xs:complexType name="CertificateLocationType">
		<xs:sequence>
			<xs:element minOccurs="0" name="COUNTRY" type="xs:string"/>
			<xs:element minOccurs="0" name="PROVINCE" type="xs:string"/>
			<xs:element minOccurs="0" name="DISTRICT" type="xs:string"/>
			<xs:element minOccurs="0" name="STATE" type="xs:string"/>
			<xs:element minOccurs="0" name="COUNTY" type="xs:string"/>
			<xs:element minOccurs="0" name="CITY" type="xs:string"/>
			<xs:element minOccurs="0" name="POSTCODE" type="xs:string"/>
			<xs:element minOccurs="0" name="GEOCODE" type="xs:string"/>
		</xs:sequence>
	</xs:complexType>


	<!-- Shared definitions. -->

	<xs:simpleType name="AccountingCodeType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The Accounting Code (or GL Code) passed in by the ERP system.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="AdminZoneLevelType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The zone level in which the tax is actually administered. For example, many US states administer both state and county taxes.
			]]><![CDATA[	]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="50"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="AllocationGroupNameType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Name of the Allocation Group to use for this transaction. Named Allocations will be looked up in this group.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="AllocationGroupOwnerType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Name of the Company owning the Allocation Group to use for this transaction. The named Allocation Group will be looked up in this company's data.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="AllocationNameType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Name of the Allocation to use for this transaction. Named Allocations will be looked up in the specified group owned by the specified company - see above. Company default owner and group will be used if not specified in the transaction. Allocations are dated, so the named version active as of the <INVOICE_DATE> will be used. If none match, a message will be added to output indicating an active named Allocation was not found.

Note: Allocation processing can be overridden at the line level. See <LINE>.<IS_ALLOCATABLE>.
					]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="AuthorityCategoryType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The category of the current authority for which data is being returned. From the Authorities Edit page.
					]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="AuthorityCurrencyCodeType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The currency code used by the authority.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="3"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="AuthorityFipsType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The FIPS Code associated with a US authority.
					]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="50"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="AuthorityNameType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The name of the current authority for which data is being returned.
					]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="AuthorityOfficialNameType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The official name of the current authority for which data is being returned, if it differs from the Determination-provided authority name.
					]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="AuthorityTypeAliasType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
				This is an alternative name for an authority type name that can be set in TransEditors.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="AuthorityTypeType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The type of authority. Returned value is one of:

    * City Rental, City Sales/Use, County Rental, County Sales/Use, District Rental, District Sales/Use, EXC, State Rental, State Sales/Use (US)

    * CST, DPH, EXC, GCT, GIT, GST, HST, ICMS, IGIC, IGV, IMI, IPI, IPSI, ISS, IST, ISV, ITBIS, ITBM, IVA, KDV, MOT, MVA, MWST, PIS, PST, PVM, QST, ST, TVA, VAT (INTL).
					]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="AuthorityUUIDType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Unique identifier of the current authority being returned. Determined by Determination default data.
					]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="36"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="AutoCreateCertificatesType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Indicates whether or not to create exemption certificates automatically. Automatic creation occurs when an exemption is forced by the elements being passed into the system, but no existing certificate is on file. This element overrides Company Preferences that determine whether or not exemption certificates are created automatically.
					]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="BooleanType"/>
	</xs:simpleType>

	<xs:simpleType name="AutoCreateCustomersType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Indicates whether or not customers are created automatically when transactions are entered into the system. Exemption certificates can then be associated with these customers. This element overrides Company Preferences that determine whether or not customers are created automatically.
					]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="BooleanType"/>
	</xs:simpleType>

	<xs:simpleType name="BasisPercentType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
A percentage of the gross amount of the line used in tax calculation. .5 is equal to 50%, .6 is equal to 60%, and so on.

If this element is provided, it overrides any data found on a tax rule or exemption certificate applied to this transaction.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="NillableDecimalType"/>
	</xs:simpleType>

	<xs:simpleType name="BranchIdType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Line or invoice branch ID for one of the various addresses (Bill To, Ship From, etc.) if the field is not empty at both levels.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="25"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="CalculationDirectionType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
There are three calculation directions, each using different elements in the calculation:

    * Forward (F): This calculation uses GROSS_AMOUNT to determine tax.
    * Reverse-from-tax (R): This calculation uses TAX_AMOUNT (and optionally GROSS_AMOUNT) to determine how the tax amount should be distributed across authorities. Determination also computes a calculated gross amount.
    * Reverse-from-total (T): This uses TAX_PLUS_GROSS (and optionally GROSS_AMOUNT) to determine the tax amount and how it should be distributed across authorities. Determination also computes a calculated gross amount.

(For more information, see the line-level output element GROSS_AMOUNT.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="1"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="CalculationMethodType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Text identifying the behavior of the calculation algorithm. From the property on the rule applied for this tax.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="50"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="CallingSystemNumberType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
A pass-through element that contains a descriptor of the calling system sending the transaction.

<bold>Note</bold>: ONESOURCE Indirect Tax Determination supports two audit keys to enable the lookup of audit records. The two combinations are as follows:

HOST_SYSTEM
CALLING_SYSTEM_NUMBER
UNIQUE_INVOICE_NUMBER

or

MERCHANT_ID
INVOICE_NUM
INVOICE_DATE
]]><![CDATA[
Configuration parameters can modify which keys are used and in which order. See Sabrix Config and then contact Customer Support for more information.
					]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="CommentType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The optional comment from the rule which was applied for this tax.
					]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="2000"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="CommodityCodeType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
A code that can be assigned to a product by a particular authority. In the EU, many member states have moved to using Harmonized Codes (similar to Commodity Codes) which can also be stored in this element. Commodity Codes provide an alternate way (in addition to product mappings) to match ONESOURCE Indirect Tax Determination products.

Note: When commodity codes are evaluated by the calculation engine, it first attempts to match the full code, and then strips off characters from the end of the code, one at a time, until a match is made or no code remains.
					]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="50"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="CompanyIdType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
				The internal Determination ID of the merchant.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:long"/>
	</xs:simpleType>

	<xs:simpleType name="CompanyNameType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The name of the company running the transaction. ONESOURCE Indirect Tax Determination uses this element to apply the correct company-specific settings for the transaction.

Required if EXTERNAL_COMPANY_ID is not populated.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="CompanyRoleType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The role the company plays in a given transaction: Buyer (B). Each role results in different transaction tax and reporting requirements.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="20"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="CountryOfOriginType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The country where the goods were manufactured. Used in Intrastat reporting.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="CurrencyCodeType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The currency associated with a transaction.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="3"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="CurrencyNameType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The currency used for this invoice. Looked up from the CURRENCY_CODE.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="CustomerGroupNameType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Name of the Customer Group to use for this transaction. Customers will be looked up in this group, overriding the settings of the transacting company's Company Preferences. Note tha]]><![CDATA[t the list of valid groups for this element consists of Customer Groups owned by the transacting company and its ancestors.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="CustomerGroupOwnerType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Name of the Company owning the Customer Group to use for this transaction. This company must be a parent or grandparent of the transacting company.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="CustomerNameType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The customer's name. Used in both VAT Registration Group member and Exemption Certificate Customer/License Customer matching:

For VAT Registration Group members, this element is used as a fall-back if a match cannot be made using EXTERNAL_COMPANY_ID or CUSTOMER_NUMBER.

For Exemption Certificate and License customer lookups, this element is no longer used by default; use CUSTOMER_NUMBER instead. To use CUSTOMER_NAME as well, set the Sabrix Config parameter STRICT_CUSTOMER_LOOKUP to N. See Sabrix Config for more information.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="CustomerNumberType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The customer's number as passed in by the ERP system.

This element's value is used by Determination when searching for exemption certificates or licenses that are relevant to a transaction, or to auto-create a customer or an associated certificate if the system is so configured.

This element's value can also be used to match VAT Registration Group members if no match is found using EXTERNAL_COMPANY_ID.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="DeliveryTermsType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Indicates how goods were shipped and where title was transferred. Valid values include Incoterms 2000 codes and any other customer-defined codes specified on the Delivery Terms page.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="DeptOfConsignType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Department of consignment. Used in Intrastat reporting.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="DescriptionType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
A description of a particular product. This data is primarily used to retrieve and reference records from the audit data.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="200"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="DiscountAmountType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
In some situations volume or other discounts must be taken into account when calculating tax. For these situations, DISCOUNT_AMOUNT can be used to indicate how much the GROSS_AMOUNT has been discounted by.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="NillableDecimalType"/>
	</xs:simpleType>

	<xs:simpleType name="DocumentTypeType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Document Type references either a virtual or a physical document created and managed by the ERP system. Examples include invoice, order, or credit memo. The document type represents the type of transaction to be processed, including defining the types of entities in the transaction. For example, a sales quote will have different attributes than an invoice for purchased goods.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="50"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="EffectiveZoneLevelType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The zone level in which the tax logically applies. If a US state administers both state and county taxes, the effective tax level defines who the tax is being collected for regardless of who is administering it.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="50"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="EndUseType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
End use of the product. Intended for use by Rule Qualifiers to govern the applicability of a rule.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="EndUserNameType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Identifier of the user who made a change to the invoice in the calling ERP system.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="ErpTaxCodeType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
A default tax code to be used by the ERP system if the rule does not return an Oracle tax code.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="200"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="ExemptCertificateNumberType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The exempt certificate number applied to this tax result.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="ExemptCertificateExpireDateType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The expiration date of the exemption certificate applied to this tax result.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="YyyyMmDdDateType"/>
	</xs:simpleType>

	<xs:simpleType name="ExemptReasonCodeType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The exempt reason code that was used to select the tax rule resulting in this tax.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="ExternalCompanyIdType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The unique identifier used by your business application to indicate which company to use in Determination. This identifier also distinguishes between different calling applications that may be used by your company. This element may be passed at the batch level or with each invoice, and is passed through to the Determination output and the audit tables.

Required if COMPANY_NAME is not populated.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="FilterGroupNameType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The name of the TransEditor Group to be applied, if different than the co]]><![CDATA[mpany default.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="FilterGroupOwnerType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The name of the company owning the TransEditor Group specified in FILTER_GROUP_NAME, if different than the transacting company.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="30"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="FiscalDateType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Stores a transaction by a fiscal date in addition to the invoice date. For example, you can use FISCAL_DATE to indicate when revenue was recognized.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="YyyyMmDdDateType"/>
	</xs:simpleType>

	<xs:simpleType name="FiscalRepNameType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The name of the fiscal representative associated with the registration number for the company running the transaction. For example: If the role is S this data is associated with the SELLER_REGISTRATION.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="FiscalRepAddress1Type">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The first address line of the fiscal representative associated with the registration number for the company running the transaction. For example: If the role is S this data is associated with the SELLER_REGISTRATION.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="FiscalRepAddress2Type">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The second address line of the fiscal representative associated with the registration number for the company running the transaction. For example: If the role is S this data is associated with the SELLER_REGISTRATION.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="FiscalRepContactType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The contact name of the fiscal representative associated with the registration number for the company running the transaction. For example: If the role is S this data is associated with the SELLER_REGISTRATION.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="FreightOnBoardType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
				This field has been deprecated and may be removed in a future release.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="FunctionalCurrencyCodeType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
				Reserved for future use.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="GrossAmountType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
This is the amount that is required to compute tax in forward calculations (see the invoice-level input element <CALCULATION_DIRECTION>).

When you execute reverse calculations, the value of GROSS_AMOUNT is affected by the values of two Sabrix Config parameters:

    * Reverse-from-tax: USE_CALC_GROSS_AMT_AS_GROSS_AMT_CALC_DIR_R
    * Reverse-from-total: USE_CALC_GROSS_AMT_AS_GROSS_AMT_CALC_DIR_T

If you set the value for these parameters to Y, Determination inserts the calculated gross amount into the gross amount XML output element. For example, if there is no gross amount in the XML input, the gross amount in the XML outp]]><![CDATA[ut contains the calculated gross amount value. If there is a gross amount in the XML input, then it is replaced by the value of calculated gross amount in the XML output.

If you accept the default and do not set these parameters (or set them to N), the gross amount in the XML output is the value you provided in the input.

NOTE: Gross amount is required in forward calculations, as well as in reverse-from-tax transactions using tiered rates.

For information about gross amounts containing non-taxable amounts such as fees, see the description for ITEM_VALUE.

See also the online help topics Understanding Calculation Types and Sabrix Config.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="NillableDecimalType"/>
	</xs:simpleType>

	<xs:simpleType name="GrossPlusTaxType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
This element is used in reverse-from-total calculations instead of GROSS_AMOUNT and TAX_AMOUNT in cases where only the sum of the two is known. Determination calculates which portion of the total is tax and which part is gross, and then distributes the calculated tax amounts to the appropriate authorities. See INVOICE.CALCULATION_DIRECTION.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="NillableDecimalType"/>
	</xs:simpleType>


	<xs:simpleType name="HostRequestIdType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
A pass-through element used to identify the document with the originating request from the ERP source.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>


	<xs:simpleType name="HostRequestLogEntryIdType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
A pass-through element used to identify the originating request from the ERP source in log files.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>


	<xs:simpleType name="HostSystemType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The name of the ERP instance sending the transaction.

Note: Determination supports two audit keys to enable the lookup of audit records. The two combinations are as follows:

HOST_SYSTEM
CALLING_SYSTEM_NUMBER
UNIQUE_INVOICE_NUMBER

or

MERCHANT_ID
INVOICE_NUM
INVOICE_DATE

Configuration parameters can modify which keys are used and in which order. See Sabrix Config and then contact Customer Support for more information.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="InclusiveTaxType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
"Y" indicates that this tax is an inclusive tax (included in the gross amount).
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="1"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="InputRecoveryAmountType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Overrides any Input Recovery Amount specified by the transaction's rule.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="NillableDecimalType"/>
	</xs:simpleType>

	<xs:simpleType name="InputRecoveryPercentType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Overrides the Input Recovery Percentage specified by the transaction's rule.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="NillableDecimalType"/>
	</xs:simpleType>

	<xs:simpleType name="InputRecoveryTypeType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
A pass-through element which has been deprecated in favor of enhanced VAT calculation logic.

See INPUT_RECOVERY_AMOUNT/PERCENT and Managing VAT Recoverability ]]><![CDATA[and Working with Rules for more information.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="50"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="InvoiceDateType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The date of the invoice.

Note: Determination supports two audit keys to enable the lookup of audit records. The two combinations are as follows:

HOST_SYSTEM
CALLING_SYSTEM_NUMBER
UNIQUE_INVOICE_NUMBER

or

MERCHANT_ID
INVOICE_NUM
INVOICE_DATE

Configuration parameters can modify which keys are used and in which order. See Sabrix Config and then contact Sabrix Technical Support for more information.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="YyyyMmDdDateType"/>
	</xs:simpleType>

	<xs:simpleType name="InvoiceDescriptionType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
A text description of the tax which you may choose to print on customer invoices. This value comes from the Authority or Rule used to generate the tax.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="InvoiceNumberType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
This number is passed through to the audit tables and acts as a reference in the audit tables as well as for credit transactions. Required if IS_AUDITED is true.

Note: Determination supports two audit keys to enable the lookup of audit records. The two combinations are as follows:

HOST_SYSTEM
CALLING_SYSTEM_NUMBER
UNIQUE_INVOICE_NUMBER

or

MERCHANT_ID
INVOICE_NUM
INVOICE_DATE

Configuration parameters can modify which keys are used and in which order. See Sabrix Config and then contact Sabrix Technical Support for more information.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="200"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="IsAllocatableType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
If set to false, no allocation will be applied to the line, even if one is specified by name for the Line or at the Invoice level. The default behavior (null) is true.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="BooleanType"/>
	</xs:simpleType>

	<xs:simpleType name="IsAuditedType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The audit status; indicates whether a transaction should be saved to the audit tables. To avoid having records accidentally added to the audit record, the default is false.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="BooleanType"/>
	</xs:simpleType>

	<xs:simpleType name="IsDutyCalcType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The audit status; indicates whether a transaction should be saved to the audit tables. To avoid having records accidentally added to the audit record, the default is false.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="BooleanType"/>
	</xs:simpleType>

	<xs:simpleType name="IsAuditUpdateType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Indicates whether or not to permit audit table update instead of overwrite. Updates provide for "Line at a Time" invoice submissions. The effect is that a duplicate invoice submission updates the invoice level record and replaces any matching line and tax level as determined by the LINE_NUMBER. Any new line numbers that are submitted will be added to the existing invoice in the audit tables.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="BooleanType"/>
	</xs:simpleType>

	<xs:simpleType name="IsBusinessSupplyType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Indicates whether a supply is being used for business. In Brazilian ICMS and IPI tr]]><![CDATA[ansactions, whether a supply is being used for business or not impacts the tax and reporting requirements of the buyer and the seller.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="BooleanType"/>
	</xs:simpleType>

	<xs:simpleType name="IsCreditType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Indicates whether the current transaction is a credit transaction as identified by your ERP system. true indicates a credit transaction for both auditing and reporting purposes. When set to true, any amounts on the transaction should be passed in as negative values.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="BooleanType"/>
	</xs:simpleType>

	<xs:simpleType name="IsIntrastatReportedType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Indicates whether this transaction applies for Intrastat reporting. Based on Jurisdiction logic.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="20"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="IsManufacturingType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Indicates that the goods or services are for manufacturing purposes.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="BooleanType"/>
	</xs:simpleType>

	<xs:simpleType name="IsReportedType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Controls whether the invoice being processed should be included in reports. An invoice can be included in the audit tables but restricted from appearing on VAT and other reports by passing in (N)o for this element. The default value is (Y)es.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="BooleanType"/>
	</xs:simpleType>

	<xs:simpleType name="IsReversedType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Indicates whether the current transaction is part of an ERP-initiated reversal process.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="BooleanType"/>
	</xs:simpleType>

	<xs:simpleType name="IsRoundingType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Indicates that the calling application requires Determination to return rounded amounts in the Output XML and save rounded amounts to the Audit Database. Rounding is performed within Determination based on the currency rules or specs applied to the transaction: see Working with Currencies. Valid values are false (return un-rounded amounts) and true (return rounded amounts). The default is true.

Note: Sabrix always returns un-rounded amounts in the *_AMOUNT.UNROUNDED_*_AMOUNT output XML elements. This element only modifies the behavior of the *_AMOUNT output XML elements. For example, TAX_AMOUNT.UNROUNDED_DOCUMENT_AMOUNT will always contain an un-rounded amount, while TAX_AMOUNT.DOCUMENT_AMOUNT will contain a rounded amount if this parameter is true and an un-rounded amount if this parameter is false.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="BooleanType"/>
	</xs:simpleType>

	<xs:simpleType name="IsSimplificationType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Indicates an override to any triangulation simplification determinations.

If set to true, you must pass registrations in for the Buyer, Seller, and Middleman in the transaction or a warning message will be returned.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="BooleanType"/>
	</xs:simpleType>

	<xs:simpleType name="ItemValueType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The total value of all items on this line. This is distinct from the gross amount because it does not contain costs such as landed costs, insurance, freight and other associated costs that gross amount does contain.

If an item value is present in a transaction, it is used instead of taxable basis. Item value is used in many VAT and EU Intrastat reports.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="NillableDecimalType"/>
	</xs:simpleType>

	<xs:simpleType name="JurisdictionTextType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The text returned by this authority's jurisdiction determination logic. This may be text explaining why the authority was selected to tax this address or it may be a situation-specific warning message related to the tax scenario such as "May require proof of export".
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="2000"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="CalcBasisModeType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
				Calc basis mode element for ICMS-ST, IPI PAUTA, PIS PAUTA, COFINS PAUTA authority type.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="20"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="LineNumberType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
LINE_NUMBER is a required element for each line. Used in combination with INVOICE_NUMBER, it is used to specify and reference a particular line on a particular invoice.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:decimal"/>
	</xs:simpleType>

	<xs:simpleType name="LineIdType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
				Each invoice can have multiple lines. The ID indicates the actual line number.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string"/>
	</xs:simpleType>

	<xs:simpleType name="LocationCodeType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Authority location code, from the Authorities Edit page.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="50"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="LocationSetType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
A named set of pre-defined locations defined by the LOCATION element. Instead of specifying several locations using the LOCATION element, you can specify all the locations in a transaction using a single LOCATION_SET element.

See Understanding Location Taxability for more information.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="60"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="ModeOfTransportType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The method of transport. Used for Intrastat reporting in the EU.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="MovementDateType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Indicates the date of a movement of goods, such as via a pipeline, or the data of issue. Used in rule qualifiers and in date determination rules.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="YyyyMmDdDateType"/>
	</xs:simpleType>

	<xs:simpleType name="MovementType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Indicates the type of movement, such as a pipeline. Used in rule qualifiers and in date determination rules.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="MassType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The Mass of a supply. Used for Intrastat reporting purposes in the EU.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:decimal"/>
	</xs:simpleType>

	<xs:simpleType name="MiddlemanMarkupAmountType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
				This is a pass-through element either from the financial system or Determination TransEditors. It is not used in Determination, but it is audited and can be used in Reporting. Set this value to indicate the amount of markup applied, or should be applied, to the item or line amount. If you use Allocations, this value is adjusted per the allocation configuration. This value can be returned in output.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:decimal"/>
	</xs:simpleType>

	<xs:simpleType name="MiddlemanMarkupRateType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
				This is the corresponding rate for the MiddlemanMarkupAmountType (See the explanation for that element).
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:decimal"/>
	</xs:simpleType>

	<xs:simpleType name="NatureOfTaxType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Indicates whether the value stored in <TAX_AMOUNT> represents a (P)ercentage, (F)ee, or is (E)xempt (no tax).
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="1"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="NatureOfTransactionCodeType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Used in Intrastat reports in all countries in the EU.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="2"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="OriginalDocumentIdType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The original document id as shown on the document in the ERP system. Not used in calculations.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="OriginalDocumentItemType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The original document item as shown on the document in the ERP system. Not used in calculations.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="OriginalDocumentTypeType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The original document type as shown on the document in the ERP system. Not used in calculations.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="OriginalInvoiceDateType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The date of the original invoice. Used in Date Determination Rules.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="YyyyMmDdDateType"/>
	</xs:simpleType>

	<xs:simpleType name="OriginalInvoiceNumberType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
This number enables a credit invoice to be associated with an original invoice in the audit tables for reporting purposes.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="200"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="OriginalMovementDateType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The date of the original movement. Used in Date Determination Rules.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="YyyyMmDdDateType"/>
	</xs:simpleType>

	<xs:simpleType name="PartNumberType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The part number used by your ERP system. This element is stored in the audit tables and does not affect calculation.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="PasswordType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Database user password used to validate the transaction submitter.

Required if the CALC_AUTHENTICATION_REQUIRED Sabrix Config Parameter is set to Y and a custom authentication scheme has not been implemented.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="16"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="PointOfTitleTransferType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The Point of Title Transfer location. Valid values are (D)estination, (O)rigin, or (I)n transit. If no POINT_OF_TITLE_TRANSFER or DELIVERY_TERMS element is passed in at either the Invoice or Line level, the default for the Invoice is set to In Transit.

See Specifying the Point of Title Transfer for more information about Delivery Terms processing logic.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="1"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="PortOfEntryType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The Port of Entry, used for Intrastat reporting in the EU.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="PortOfLoadingType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The Port or Airport of Departure; used for Intrastat reporting in the EU.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="5"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="ProductCodeType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Your ERP system's product code for the product on this line. Product Codes are mapped to the Product Tree using Product Mappings.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="ProductCodeTypeEAN">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Please provide EAN or leave it empty for ProductCodeType.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="ProductMappingGroupNameType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The name of the Product Mapping Group that owns the product cross-reference.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="ProductMappingGroupOwnerType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The company owning the Product Mapping Group.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="QUANTITY">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
This field has been deprecated. Use the QUANTITIES structure instead.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:integer"/>
	</xs:simpleType>

	<xs:simpleType name="RegimeType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The Regime, used for French Intrastat reports.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="RegistrationAttributeType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Custom attributes associated with the registration number for the company running the transaction. For example: If the role is S this data is associated with the SELLER_REGISTRATION.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="RegistrationNumberType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Type used for buyer, seller, and middleman registration numbers.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="25"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="RelatedLineNumberType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Identifies that this line should have the same tax treatment as the product on the related line. See Related Charges for more information.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:decimal"/>
	</xs:simpleType>

	<xs:simpleType name="RoundingPrecisionType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Number of decimal places to round the currency values to. From the TB_CURRENCIES entry.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:decimal"/>
	</xs:simpleType>

	<xs:simpleType name="RoundingRuleType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The rounding rule from the TB_CURRENCIES entry for the transaction currency.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="10"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="RuleReportingCategoryType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The reporting category of the rule applied to calculate this tax, as maintained on the Rules Edit page.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="ScenarioNameType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
This is the name of the Determination Workbench scenario.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="ShipFromCountryType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Line or invoice ship from country if either is not empty.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="ShipToCountryType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Line or invoice ship to country if either is not empty.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="StatisticalProcedureType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
A statistical indicator used for large shipments. Used for Intrastat filing purposes in the EU.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="6"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="SupplementaryUnitType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The size of a supply. For Intrastat reports in the EU, some commodities require an additional measuring unit other than or in addition to mass for reporting purposes. EU rules determine the unit to be used for various supplies.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="5"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="TaxableCountryType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Country code from address that triggered this tax.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="3"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="TaxableCountryNameType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Country name from the address that triggered this tax.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="50"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="TaxableStateType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
State from the address that triggered this tax.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="50"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="TaxableProvinceType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Province from the address that triggered this tax.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="50"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="TaxableDistrictType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
District from the address that triggered this tax.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="50"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="TaxableCountyType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
County from the address that triggered this tax.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="50"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="TaxableCityType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
City from the address that triggered this tax.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="50"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="TaxableGEOCodeType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Geocode from the address that triggered this tax.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="50"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="TaxablePostCodeType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Postcode from the address that triggered this tax.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="50"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="TaxAddressType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Indicates the address type (for example, 'SHIP_FROM', 'BILL_TO') which resulted in this tax.

Values returned in this field include:

    * SF (SHIP_FROM)
    * ST (SHIP_TO)
    * OO (ORDER_ORIGIN)
    * OA (ORDER_ACCEPTANCE)
    * BT (BILL_TO)
    * SU (SUPPLY)
    * MM (MIDDLEMAN)
    * SC (SELLER_PRIMARY)
    * BC (BUYER_PRIMARY)
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="50"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="TaxCodeType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
An optional code which can be specified in the transaction to match a Tax Code specified on a Rule.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="50"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="TaxDeterminationDateType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The date used in selecting all applicable system configuration including tax rates and rules. Overrides any Sabrix-determined date.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="YyyyMmDdDateType"/>
	</xs:simpleType>

	<xs:simpleType name="TaxDirectionType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The tax direction specifies Input/Output values for VAT recovery identification.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="1"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="TaxExchangeRateDateType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The date used in selecting currency conversion data. Overrides any Sabrix-determined date.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="YyyyMmDdDateType"/>
	</xs:simpleType>

	<xs:simpleType name="TaxPointDateType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The date the signifies when the liability for tax arises. Overrides any Sabrix-determined date.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="YyyyMmDdDateType"/>
	</xs:simpleType>

	<xs:simpleType name="ExciseAlreadyPaidType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Indicates whether the current transaction excise already paid transaction as identified by your ERP system. true indicates a excise already paid transaction for both auditing and reporting purposes.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="BooleanType"/>
	</xs:simpleType>

	<xs:simpleType name="TaxRateCodeType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The tax rate code associated with the applied rate.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="25"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="TaxTreatment">
		<xs:annotation>

			<xs:documentation>
				<![CDATA[
The flag that indicates alternative tax treatment after Determination performs its calculation:

D (Deferred).
DI (Deferred Invoice).
DP (Deferred Payment).

For more information, see the Deferred Taxes in Help.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="TaxTypeType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
An override tax type determined when the Jurisdiction Location is determined. Use only to override the automatic tax type for a transaction:

AC - Acquisition

CA - Custom Authority
(see Note 1 below)

CA1 - Custom Authority 1
(see Note 1 below)

CU - Consumer Use

DS - Distance Sale

EC - European Community Sales

ER -Intra EU Reverse Charge

ES - Exported Service

EXC - Excise

IC - Intra-Company

IM - Import

IR - International Reverse Charge (supplier outside the EU)

IS - Imported Services

MVT - Movement

NL - Not Liable

RC - Reverse Charge or Rental Consumer's Use

RS - Rental Sales

RU - Rental Use

S - Standard

SA - Sales

SI - Standard Interstate

SN - Special Rate
(see Note 2 below)

STK - Stock

TE - Taxable Export

TR - Triangulation

UN - Unregistered Seller

US - Use

VG - VAT Group

ZC - Zero-rated
Intra-Community Dispatches within the European Union (EU)

ZE - Zero-rated Exports leaving the EU, or Zero-rated Exports from non-EU countries

ZR - Zero-rated Item (rule specifies rate of zero)
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="3"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="TitleTransferLocationType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
A pass-through element indicating where the location where title transferred for the associated delivery term.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>


	<xs:simpleType name="TotalTaxAmountType">
		<xs:restriction base="NillableDecimalType"/>
	</xs:simpleType>


	<xs:simpleType name="TransactionDateType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The system date at the time the transaction was processed, GMT.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="YyyyMmDdDateType"/>
	</xs:simpleType>

	<xs:simpleType name="TransactionType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The transaction type, which is required to apply the correct type of taxes to the transaction. In many countries, there are two transaction types: Goods and Services. In EU and other countries, additional transaction types apply.

Valid types are:

AT - Ancillary Transport Services

CL - Customer Location Services

DS - Default Services

ES - Electronic Services

GS - Goods

IN - Installation Services

IS - Intermediary Service

MV - Movement for Excise

PC - Prime Contracting

PP - Physical Performance

RR - Rental

SI - Supplied and Installed Goods

T1 - Chain Transaction 1

T2 - Chain Transaction 2

TS- Transport Services

WG - Work on Goods

For a complete description of these transaction types, see Understanding Transaction Types.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="2"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="UniqueInvoiceNumberType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The unique identifier for this invoice, as assigned by the ERP system.

Note: Determination supports two audit keys to enable the lookup of audit records. The two combinations are as follows:

HOST_SYSTEM
CALLING_SYSTEM_NUMBER
UNIQUE_INVOICE_NUMBER

or

MERCHANT_ID
INVOICE_NUM
INVOICE_DATE

Configuration parameters can modify which keys are used and in which order. See Sabrix Config and then contact Technical Support for more information.

Note: Unique Invoice Numbers must be unique within an individual batch of invoices. To re-process an invoice, include it in another batch.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="500"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="UniqueLineNumberType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The ERP system's primary key for this line number.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="UnitOfMeasureType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
A description of the unit of measure used to match a Rule's specified Unit of Measure.

Note: The ampersand character (&) cannot be used in a unit of measure.

Warning: To take advantage of Determination's built-in Units of Measures and Conversion Factors, use the QUANTITIES structure instead. See Units of Measure Concepts and Tasks for more information.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="25"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="UOM">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
				This field has been deprecated. Use the QUANTITIES structure instead.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="UserNameType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Database user name used to validate transaction submitter.

Required if the CALC_AUTHENTICATION_REQUIRED Sabrix Config Parameter is set to Y and a custom authentication scheme has not been implemented.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="60"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="VatGroupRegistrationType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The value of the VAT Group registration number for the invoice. Used as the primary way of looking up VAT Registration Groups during calculation.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="25"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="VendorNameType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The vendor's name. If this is a B2B transaction and the Company is the buyer, the Company becomes the Customer and the Vendor becomes the Company for the transaction.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="VendorNumberType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The vendor's number. If this is a B2B transaction and the Company is the buyer, the Company becomes the Customer and the Vendor becomes the Company for the transaction.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="20"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="VendorGroupNameType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Name of the Vendor Group to use for this transaction. Vendors will be looked up in this group, overriding the settings of the transacting company's Company Preferences. Note that the list of valid groups for this element consists of Vendor Groups owned by the transacting company and its ancestors.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="VendorGroupOwnerType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Name of the Company owning the Vendor Group to use for this transaction. This company must be a parent or grandparent of the transacting company.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="VendorTaxType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The amount of tax charged by the Vendor on an Accounts Payable invoice.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="NillableDecimalType"/>
	</xs:simpleType>

	<xs:simpleType name="XmlGroupNameType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The XML Group you want to use for the transaction. XML Groups determine those elements that Determination passes back to the calling application. If the XML group specified here is invalid (owned by the wrong company) for an invoice contained in the current XML transaction, the XML group specified for the company on that invoice is used instead. See the XML Output section of the Online Help for more information.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="30"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="XmlGroupOwnerType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The company name associated with the XML group being used. This must be an ancestor of the submitting company or the company itself.

Do not use slashes or characters in company names.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="ZoneNameType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The name of the zone for which authority level information is being supplied.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="100"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="ZoneLevelType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The zone level of the zone where this tax applies.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="1"/>
			<xs:maxLength value="50"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="NillableDecimalType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Allows empty tags for decimal amounts, for example: <GROSS_AMOUNT/>.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:union memberTypes="xs:decimal EmptyStringType"/>
	</xs:simpleType>


	<xs:simpleType name="EmptyStringType">
		<xs:restriction base="xs:string">
			<xs:enumeration value=""/>
		</xs:restriction>
	</xs:simpleType>


	<xs:element name="taxCalculationResponse" type="TaxCalculationResponse"/>


	<xs:complexType name="TaxCalculationResponse">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
The top level response to a request for tax calculation.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element minOccurs="1" name="OUTDATA" type="OutdataType"/>
		</xs:sequence>
	</xs:complexType>


	<xs:complexType name="OutdataType">
		<xs:sequence>
			<xs:element minOccurs="0" name="REQUEST_STATUS" type="OutdataRequestStatusType"/>
			<xs:element minOccurs="0" name="COMPANY_ID" type="CompanyIdType"/>
			<xs:element minOccurs="0" name="COMPANY_NAME" type="CompanyNameType"/>
			<xs:element minOccurs="0" name="COMPANY_ROLE" type="CompanyRoleType"/>
			<xs:element minOccurs="0" name="EXTERNAL_COMPANY_ID" type="ExternalCompanyIdType"/>
			<xs:element minOccurs="0" name="SCENARIO_NAME" type="ScenarioNameType"/>
			<xs:element maxOccurs="unbounded" name="INVOICE" type="OutdataInvoiceType"/>
		</xs:sequence>
		<xs:attribute name="version" type="VersionType"/>
	</xs:complexType>


	<xs:complexType name="OutdataErrorType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
A structure containing one or more severe errors associated with the request. If no severe errors are encountered, this structure will not be returned.
						]]>
			</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="CODE" type="xs:string">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
The severe error's code.
						]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="DESCRIPTION" type="xs:string">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
The severe error's description.
						]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="ERROR_LOCATION_PATH" type="xs:string">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
An XML path to the element containing the severe error.
						]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>


	<xs:complexType name="OutdataRequestStatusType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
A structure which contains a summary of the status of the entire request, included aggregation of severe errors.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="IS_SUCCESS" type="xs:boolean">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
Indicates whether the request was successful. All invoices must process successfully for this tag to be set to true.
						]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="IS_PARTIAL_SUCCESS" type="xs:boolean">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
Indicates whether the request was partially successful. At least one invoice, but not all, must process successfully for this tag to be set to true.
						]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element maxOccurs="unbounded" minOccurs="0" name="ERROR" type="OutdataErrorType"/>
		</xs:sequence>
	</xs:complexType>


	<xs:complexType name="OutdataInvoiceType">
		<xs:sequence>
			<xs:element minOccurs="0" name="REQUEST_STATUS" type="OutdataRequestStatusType"/>
			<xs:element minOccurs="0" name="BASIS_PERCENT" type="BasisPercentType"/>
			<xs:element minOccurs="0" name="BILL_OF_LADING" type="BillOfLadingType"/>
			<xs:element minOccurs="0" name="CALCULATION_DIRECTION" type="CalculationDirectionType"/>
			<xs:element minOccurs="0" name="CALLING_SYSTEM_NUMBER" type="CallingSystemNumberType"/>
			<xs:element minOccurs="0" name="COMPANY_ID" type="CompanyIdType"/>
			<xs:element minOccurs="0" name="COMPANY_NAME" type="CompanyNameType"/>
			<xs:element name="CURRENCY_CODE" type="CurrencyCodeType"/>
			<xs:element name="CURRENCY_NAME" type="CurrencyNameType"/>
			<xs:element name="MIN_ACCOUNTABLE_UNIT" type="NillableDecimalType"/>
			<xs:element name="ROUNDING_PRECISION" type="RoundingPrecisionType"/>
			<xs:element name="ROUNDING_RULE" type="RoundingRuleType"/>
			<xs:element minOccurs="0" name="CUSTOMER_NAME" type="CustomerNameType"/>
			<xs:element minOccurs="0" name="CUSTOMER_NUMBER" type="CustomerNumberType"/>
			<xs:element minOccurs="0" name="END_USER_NAME" type="EndUserNameType"/>
			<xs:element minOccurs="0" name="EXTERNAL_COMPANY_ID" type="ExternalCompanyIdType"/>
			<xs:element minOccurs="0" name="FISCAL_DATE" type="FiscalDateType"/>
			<xs:element minOccurs="0" name="FUNCTIONAL_CURRENCY_CODE" type="FunctionalCurrencyCodeType"/>
			<xs:element minOccurs="0" name="HOST_SYSTEM" type="HostSystemType"/>
			<xs:element minOccurs="0" name="INDATA" type="IndataType"/>
			<xs:element name="INVOICE_DATE" type="InvoiceDateType"/>
			<xs:element minOccurs="0" name="INVOICE_NUMBER" type="InvoiceNumberType"/>
			<xs:element minOccurs="0" name="IS_AUDIT_UPDATE" type="IsAuditUpdateType"/>
			<xs:element minOccurs="0" name="IS_BUSINESS_SUPPLY" type="IsBusinessSupplyType"/>
			<xs:element minOccurs="0" name="IS_CREDIT" type="IsCreditType"/>
			<xs:element minOccurs="0" name="IS_EXCHANGE" type="BooleanType"/>
			<xs:element minOccurs="0" name="IS_REPORTED" type="IsReportedType"/>
			<xs:element minOccurs="0" name="IS_REVERSED" type="IsReversedType"/>
			<xs:element maxOccurs="unbounded" minOccurs="0" name="MESSAGE" type="MessageType">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
A message related to this invoice. There can be multiple MESSAGE elements returned with each invoice.
						]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element minOccurs="0" name="NATURE_OF_TRANSACTION_CODE" type="NatureOfTransactionCodeType"/>
			<xs:element minOccurs="0" name="ORIGINAL_INVOICE_NUMBER" type="OriginalInvoiceNumberType"/>
			<xs:element minOccurs="0" name="STATISTICAL_PROCEDURE" type="StatisticalProcedureType"/>
			<xs:element name="TOTAL_TAX_AMOUNT" type="TotalTaxAmountType"/>
			<xs:element minOccurs="0" name="TRANSACTION_DATE" type="TransactionDateType"/>
			<xs:element minOccurs="0" name="UNIQUE_INVOICE_NUMBER" type="UniqueInvoiceNumberType"/>
			<xs:element maxOccurs="unbounded" minOccurs="0" name="USER_ELEMENT" type="UserElementType"/>
			<xs:element maxOccurs="5" minOccurs="0" name="USER_ELEMENT_AMOUNT" type="UserElementAmountType"/>
			<xs:element maxOccurs="5" minOccurs="0" name="USER_ELEMENT_DATE" type="UserElementDateType"/>
			<xs:element maxOccurs="unbounded" name="LINE" type="OutdataLineType"/>
			<xs:element minOccurs="0" name="OPERATING_LICENSES" type="OperatingLicensesType"/>
			<xs:element minOccurs="0" name="ORIGINAL_DOCUMENT_ID" type="OriginalDocumentIdType"/>
			<xs:element minOccurs="0" name="ORIGINAL_DOCUMENT_ITEM" type="OriginalDocumentItemType"/>
			<xs:element minOccurs="0" name="ORIGINAL_DOCUMENT_TYPE" type="OriginalDocumentTypeType"/>
			<xs:element minOccurs="0" name="ORIGINAL_INVOICE_DATE" type="OriginalInvoiceDateType"/>
			<xs:element minOccurs="0" name="ORIGINAL_MOVEMENT_DATE" type="OriginalMovementDateType"/>
			<xs:element minOccurs="0" name="CUSTOMER_GROUP_NAME" type="CustomerGroupNameType"/>
			<xs:element minOccurs="0" name="CUSTOMER_GROUP_OWNER" type="CustomerGroupOwnerType"/>

			<!-- VCT : Output - Invoice existing fields - Start -->
			<!-- ACCRUAL_AMOUNT and PARTNER_AMOUNT will be added to TAX_SUMMARY Please see  OutdataTaxSummaryType-->
			<xs:element minOccurs="0" name="TAX_SUMMARY" type="OutdataTaxSummaryType"/>
			<xs:element name="COMPANY_ROLE" type="CompanyRoleType"/>
			<xs:element minOccurs="0" name="CUSTOMER_TAXPAYER" type="CustomerTaxpayerType"/>
			<xs:element minOccurs="0" name="VENDOR_TAX" type="VendorTaxType"/>
			<xs:element minOccurs="0" name="VENDOR_GROUP_NAME" type="VendorGroupNameType"/>
			<xs:element minOccurs="0" name="VENDOR_GROUP_OWNER" type="VendorGroupOwnerType"/>
			<xs:element minOccurs="0" name="VENDOR_NAME" type="VendorNameType"/>
			<xs:element minOccurs="0" name="VENDOR_NUMBER" type="VendorNumberType"/>
			<!-- VCT : Output - Invoice existing fields - End -->

			<!-- VCT : Output - Invoice changes - Start -->
			<!-- THRESHOLD_RESULT is a complex type. Please search for  ThresholdResultType to see more details about this element. -->
			<xs:element minOccurs="0" name="THRESHOLD_RESULT" type="ThresholdResultType"/>
			<xs:element minOccurs="0" name="IS_TRUSTED_VENDOR" type="BooleanType"/>
			<xs:element minOccurs="0" name="DOCUMENT_TYPE" type="DocumentTypeType"/>
			<!-- VCT : Output - Invoice changes - End -->
			<xs:element minOccurs="0" name="CEST" type="CestType"/>
			<xs:element minOccurs="0" name="CST" type="CstType"/>
			<xs:element minOccurs="0" name="CFOP" type="CfopType"/>
			<xs:element minOccurs="0" name="ORIGIN" type="OriginType"/>
		</xs:sequence>
	</xs:complexType>


	<xs:complexType name="OutdataLineType">
		<xs:sequence>
			<xs:element maxOccurs="unbounded" minOccurs="0" name="ALLOCATION_LINE" type="OutdataLineType"/>
			<xs:element minOccurs="0" name="ACCOUNTING_CODE" type="AccountingCodeType"/>
			<xs:element minOccurs="0" name="ALLOCATION_NAME" type="AllocationNameType"/>
			<xs:element minOccurs="0" name="BILL_OF_LADING" type="BillOfLadingType"/>
			<xs:element minOccurs="0" name="BASIS_PERCENT" type="BasisPercentType"/>
			<xs:element minOccurs="0" name="BILL_TO_BRANCH_ID" type="BranchIdType"/>
			<xs:element minOccurs="0" name="COMMODITY_CODE" type="CommodityCodeType"/>
			<xs:element minOccurs="0" name="GLOBAL_COMMODITY_CODE" type="GlobalCommodityCodeType"/>
			<xs:element minOccurs="0" name="PCA_COMMODITY_CODE" type="PcaCommodityCodeType"/>
			<xs:element minOccurs="0" name="COUNTRY_OF_ORIGIN" type="CountryOfOriginType"/>
			<xs:element minOccurs="0" name="CUSTOMER_NAME" type="CustomerNameType"/>
			<xs:element minOccurs="0" name="CUSTOMER_NUMBER" type="CustomerNumberType"/>
			<xs:element minOccurs="0" name="DEPT_OF_CONSIGN" type="DeptOfConsignType"/>
			<xs:element minOccurs="0" name="DESCRIPTION" type="DescriptionType"/>
			<xs:element minOccurs="0" name="DISCOUNT_AMOUNT" type="DiscountAmountType"/>
			<xs:element minOccurs="0" name="END_USER_NAME" type="EndUserNameType"/>
			<xs:element minOccurs="0" name="DELIVERY_TERMS" type="DeliveryTermsType"/>
			<xs:element minOccurs="0" name="FREIGHT_ON_BOARD" type="FreightOnBoardType"/>
			<xs:element minOccurs="0" name="GROSS_AMOUNT" type="GrossAmountType"/>
			<xs:element minOccurs="0" name="INPUT_RECOVERY_AMOUNT" type="InputRecoveryAmountType"/>
			<xs:element minOccurs="0" name="INPUT_RECOVERY_PERCENT" type="InputRecoveryPercentType"/>
			<xs:element minOccurs="0" name="MIDDLEMAN_MARKUP_AMOUNT" type="MiddlemanMarkupAmountType"/>
			<xs:element minOccurs="0" name="MIDDLEMAN_MARKUP_RATE" type="MiddlemanMarkupRateType"/>
			<xs:element minOccurs="0" name="IS_BLENDED" type="IsBlendedType"/>
			<xs:element minOccurs="0" name="IS_BUSINESS_SUPPLY" type="IsBusinessSupplyType"/>
			<xs:element minOccurs="0" name="IS_EXCHANGE" type="BooleanType"/>
			<xs:element minOccurs="0" name="ITEM_VALUE" type="ItemValueType"/>
			<xs:element name="LINE_NUMBER" type="LineNumberType"/>
			<xs:element minOccurs="0" name="RELATED_LINE_NUMBER" type="RelatedLineNumberType"/>
			<xs:element minOccurs="0" name="MASS" type="MassType"/>
			<xs:element maxOccurs="unbounded" minOccurs="0" name="MESSAGE" type="MessageType">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
A message related to this line. There can be multiple MESSAGE elements returned with each line.
						]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element minOccurs="0" name="MIDDLEMAN_BRANCH_ID" type="BranchIdType"/>
			<xs:element minOccurs="0" name="MODE_OF_TRANSPORT" type="ModeOfTransportType"/>
			<xs:element minOccurs="0" name="BULK_DESIGNATION" type="BooleanType"/>
			<xs:element minOccurs="0" name="PART_NUMBER" type="PartNumberType"/>
			<xs:element name="POINT_OF_TITLE_TRANSFER" type="PointOfTitleTransferType"/>
			<xs:element minOccurs="0" name="PORT_OF_ENTRY" type="PortOfEntryType"/>
			<xs:element minOccurs="0" name="PORT_OF_LOADING" type="PortOfLoadingType"/>
			<xs:element minOccurs="0" name="REGIME" type="RegimeType"/>
			<xs:element minOccurs="0" name="SHIP_FROM_BRANCH_ID" type="BranchIdType"/>
			<xs:element minOccurs="0" name="SHIP_FROM_COUNTRY" type="ShipFromCountryType"/>
			<xs:element minOccurs="0" name="SHIP_TO_BRANCH_ID" type="BranchIdType"/>
			<xs:element minOccurs="0" name="SHIP_TO_COUNTRY" type="ShipToCountryType"/>
			<xs:element minOccurs="0" name="SUPPLEMENTARY_UNIT" type="SupplementaryUnitType"/>
			<xs:element minOccurs="0" name="SUPPLY_BRANCH_ID" type="BranchIdType"/>
			<xs:element minOccurs="0" name="UNIQUE_LINE_NUMBER" type="UniqueLineNumberType"/>
			<xs:element name="TOTAL_TAX_AMOUNT" type="TotalTaxAmountType"/>
			<xs:element minOccurs="0" name="TAX_CODE" type="TaxCodeType"/>
			<xs:element maxOccurs="unbounded" minOccurs="0" name="TAX" type="OutdataTaxType"/>
			<xs:element minOccurs="0" name="TRANSACTION_TYPE" type="TransactionType"/>
			<xs:element minOccurs="0" name="UNIT_OF_MEASURE" type="UnitOfMeasureType"/>
			<xs:element maxOccurs="unbounded" minOccurs="0" name="USER_ELEMENT" type="UserElementType"/>
			<xs:element maxOccurs="5" minOccurs="0" name="USER_ELEMENT_AMOUNT" type="UserElementAmountType"/>
			<xs:element maxOccurs="5" minOccurs="0" name="USER_ELEMENT_DATE" type="UserElementDateType"/>
			<xs:element minOccurs="0" name="QUANTITIES" type="QuantitiesType"/>
			<xs:element minOccurs="0" name="CAPACITY" type="CapacityType"/>
			<xs:element minOccurs="0" name="PRICES" type="PricesType"/>
			<xs:element minOccurs="0" name="CLASSIFICATION_CODES" type="CodesType"/>
			<xs:element minOccurs="0" name="IS_CREDIT" type="IsCreditType"/>
			<xs:element minOccurs="0" name="INVOICE_DATE" type="InvoiceDateType"/>
			<xs:element minOccurs="0" name="MOVEMENT_DATE" type="MovementDateType"/>
			<xs:element minOccurs="0" name="OPERATING_LICENSES" type="OperatingLicensesType"/>
			<xs:element minOccurs="0" name="ORIGINAL_DOCUMENT_ID" type="OriginalDocumentIdType"/>
			<xs:element minOccurs="0" name="ORIGINAL_DOCUMENT_ITEM" type="OriginalDocumentItemType"/>
			<xs:element minOccurs="0" name="ORIGINAL_DOCUMENT_TYPE" type="OriginalDocumentTypeType"/>
			<xs:element minOccurs="0" name="ORIGINAL_INVOICE_DATE" type="OriginalInvoiceDateType"/>
			<xs:element minOccurs="0" name="ORIGINAL_INVOICE_NUMBER" type="OriginalInvoiceNumberType"/>
			<xs:element minOccurs="0" name="ORIGINAL_MOVEMENT_DATE" type="OriginalMovementDateType"/>
			<xs:element minOccurs="0" name="CUSTOMER_GROUP_NAME" type="CustomerGroupNameType"/>
			<xs:element minOccurs="0" name="CUSTOMER_GROUP_OWNER" type="CustomerGroupOwnerType"/>
			<xs:element minOccurs="0" name="TITLE_TRANSFER_LOCATION" type="TitleTransferLocationType"/>
			<xs:element minOccurs="0" name="BILLED_QUANTITY_TYPE" type="BilledQuantityType"/>

			<!-- VCT : Output - Invoice line existing fields - Start -->
			<!-- VENDOR_TAX here would have the either the 1. VENDOR_TAX came at line level as part of the request. If not 2. Vendor tax distribution/split across lines as identified by determination(Shaun's formula) -->
			<xs:element minOccurs="0" name="VENDOR_TAX" type="VendorTaxType"/>
			<xs:element minOccurs="0" name="VENDOR_GROUP_NAME" type="VendorGroupNameType"/>
			<xs:element minOccurs="0" name="VENDOR_GROUP_OWNER" type="VendorGroupOwnerType"/>
			<xs:element minOccurs="0" name="VENDOR_NAME" type="VendorNameType"/>
			<xs:element minOccurs="0" name="VENDOR_NUMBER" type="VendorNumberType"/>
			<!-- The amount accrued by the company  - ACCRUAL_AMOUNT and the amount due to the vendor PARTNER_AMOUNT(undercharge with NONE accrual situation) will be in the Tax Summary of the Invoice, Invoice Line
			and at the authority level in the tax block (line n0.4049)(TAX BLOCK) as well-->
			<xs:element minOccurs="0" name="TAX_SUMMARY" type="OutdataTaxSummaryType"/>
			<!--VCT : Output - Invoice line existing fields - End -->

			<!-- VCT : Output - Invoice line changes - Start -->
			<!-- This element will indicate if the line went through VCT flow or not -->
			<xs:element minOccurs="0" name="IS_VCT_APPLIED" type="BooleanType"/>
			<xs:element minOccurs="0" name="ACCRUAL_METHOD" type="AccrualMethodType"/>
			<xs:element minOccurs="0" name="ALLOCATION_METHOD" type="AllocationMethodType"/>
			<!-- This element will indicate if a DPP permit was identified for the company issued by the the Ship to State of the line s part of VCT verification -->
			<xs:element minOccurs="0" name="IS_DPP_APPLIED" type="BooleanType"/>
			<xs:element minOccurs="0" name="DPP_CERTIFICATE" type="LicenseNumberType"/>
			<!-- VCT : Output - Invoice line changes - End -->
			<xs:element minOccurs="0" name="CEST" type="CestType"/>
			<xs:element minOccurs="0" name="CST" type="CstType"/>
			<xs:element minOccurs="0" name="CFOP" type="CfopType"/>
			<xs:element minOccurs="0" name="ORIGIN" type="OriginType"/>

		</xs:sequence>
		<xs:attribute name="ID" type="LineIdType" use="required"/>
	</xs:complexType>


	<xs:complexType name="OutdataTaxSummaryType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
A summary of tax amounts and warnings.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element minOccurs="0" name="TAXABLE_BASIS" type="NillableDecimalType">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
Contains the maximum taxable basis from the amount on the authority tax lines. If an authority tax line is a tier, all tiers for the authority have their tax basis summed and treated like a single tax line for purposes of determining the maximum taxable basis.

If the total exceeds gross amount, the taxable basis is set to the gross amount.

If no tax results, the value is zero.
						]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="NON_TAXABLE_BASIS" type="NillableDecimalType">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
Contains the maximum non-taxable basis from the tax results. No special process occurs for tiered results. If no tax results, the value is zero.
						]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="EXEMPT_AMOUNT" type="NillableDecimalType">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
Contains the maximum exempt amount from the tax results. If no tax, the value is zero.
						]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="TAX_RATE" type="NillableDecimalType">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
Sum of all taxes. No distinction is made for rates from tiers. If all taxes are fees, the value is zero.
						]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element minOccurs="0" name="EFFECTIVE_TAX_RATE" type="NillableDecimalType">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
Total taxes on the line divided by the maximum taxable basis.
						]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element minOccurs="0" name="EXCLUDED_PIS_COFINS_AMOUNT" type="NillableDecimalType">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
Total tax amount of ICMS auth type when company option is pis cofins taxable basis or Total tax amount of]]><![CDATA[ ICMS, ICMS-DIFAL, ICMS-FCEP auth types when company option is alternative taxable basis.
If no tax amount, this tag will not appear.
						]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element minOccurs="0" name="ADVISORIES" type="OutdataAdvisoriesType">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
Notify you of special summary conditions that may produce unexpected results. List of flagged conditions you may want to be aware, including:

    * Allocations
    * Custom Authorities
    * Fees
    * Tiers
    * Variable Exempt Amounts
    * Tax Treatment
						]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>

			<!--VCT : Output Tax Summary New field - Start -->
			<xs:element minOccurs="0" name="ACCRUAL_AMOUNT" type="NillableDecimalType"/>
			<xs:element minOccurs="0" name="PARTNER_AMOUNT" type="NillableDecimalType"/>

			<!--VCT : Output Tax Summary New field - End -->
		</xs:sequence>
	</xs:complexType>


	<xs:complexType name="OutdataAdvisoriesType">
		<xs:sequence>
			<xs:element maxOccurs="unbounded" name="ADVISORY" type="xs:string"/>
		</xs:sequence>
	</xs:complexType>


	<xs:simpleType name="IsBlendedType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[Optional, max occurs 1 per line entity, boolean]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="BooleanType"/>
	</xs:simpleType>

	<xs:complexType name="OutdataTaxType">
		<xs:sequence>
			<xs:element name="ADDRESS_TYPE" type="TaxAddressType"/>
			<xs:element name="ADMIN_ZONE_LEVEL" type="AdminZoneLevelType"/>
			<xs:element name="AUTHORITY_NAME" type="AuthorityNameType"/>
			<xs:element name="AUTHORITY_TYPE" type="AuthorityTypeType"/>
			<xs:element minOccurs="0" name="BASIS_PERCENT" type="BasisPercentType"/>
			<xs:element minOccurs="0" name="CALCULATION_METHOD" type="CalculationMethodType"/>
			<xs:element minOccurs="0" name="COMMENT" type="CommentType"/>
			<xs:element minOccurs="0" name="ERP_TAX_CODE" type="ErpTaxCodeType"/>
			<xs:element minOccurs="0" name="AUTHORITY_FIPS" type="AuthorityFipsType"/>
			<xs:element name="EFFECTIVE_ZONE_LEVEL" type="EffectiveZoneLevelType"/>
			<xs:element minOccurs="0" name="EXEMPT_CERTIFICATE" type="ExemptCertificateNumberType"/>
			<xs:element minOccurs="0" name="EXEMPT_CERTIFICATE_EXPIRE_DATE" type="ExemptCertificateExpireDateType"/>
			<xs:element minOccurs="0" name="EXEMPT_REASON" type="ExemptReasonCodeType"/>
			<xs:element minOccurs="0" name="INPUT_RECOVERY_AMOUNT" type="InputRecoveryAmountType"/>
			<xs:element minOccurs="0" name="INPUT_RECOVERY_PERCENT" type="InputRecoveryPercentType"/>
			<xs:element minOccurs="0" name="INVOICE_DESCRIPTION" type="InvoiceDescriptionType"/>
			<xs:element name="JURISDICTION_TEXT" type="JurisdictionTextType"/>
			<xs:element minOccurs="0" name="CALC_BASIS_MODE" type="CalcBasisModeType"/>
			<xs:element minOccurs="0" name="IS_EXEMPT" type="xs:boolean">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
Indicates that this line was exempt from tax. Exemption is different from zero tax as in VAT countries exemption completely excludes the transaction from the VAT system. In the case of a sale, VAT paid to make the supply cannot be recovered if the supply is exempt. In Sales Tax countries such as the US, the exempt indicator prevents tax from being charged. If (N)o is explicitly passed the exemption certificate lookup is bypassed; tax will be charged even though an apparently valid certificate may exist in ONESOURCE Indirect Tax Determination.
						]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element minOccurs="0" name="IS_INTRASTAT_REPORTED" type="IsIntrastatReportedType"/>
			<xs:element minOccurs="0" name="IS_NOTAX" type="xs:boolean">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
Indicates whether this authority was told not to tax this line.
						]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element minOccurs="0" name="IS_TRIANGULATION" type="xs:boolean">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
Indicates whether triangulation simplification was used on this transaction. If the tag is not generated, simplification was not used.

For more information, see Triangulation Simplification.
						]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element minOccurs="0" name="IS_VAT_REPORTED" type="xs:boolean">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
Indicates whether this transaction applies for VAT reporting. Based on Jurisdiction logic.
						]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element minOccurs="0" name="IS_VIES_REPORTED" type="xs:boolean">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
Indicates whether this transaction applies for VIES reporting. Based on Jurisdiction logic.
						]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element minOccurs="0" name="LOCATION_CODE" type="LocationCodeType"/>
			<xs:element maxOccurs="unbounded" minOccurs="0" name="MESSAGE" type="MessageType">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
A message related to this tax amount. There can be multiple MESSAGE elements returned with each tax amount.
						]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element minOccurs="0" name="BUYER_REGISTRATION" type="RegistrationNumberType">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
Buyer registration number used by this tax calculation. Derived from registration found in input or from value in database.
						]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element minOccurs="0" name="SELLER_REGISTRATION" type="RegistrationNumberType">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
Seller registration number used by this tax calculation. Derived from registration found in input or from value in database.
						]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element minOccurs="0" name="MIDDLEMAN_REGISTRATION" type="RegistrationNumberType">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
Middleman registration number used by this tax calculation. Derived from registration found in input or from value in database.
						]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element minOccurs="0" name="OVERRIDE_AMOUNT" type="xs:decimal">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
Tax amount applied without calculation.
						]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element minOccurs="0" name="OVERRIDE_RATE" type="xs:decimal">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
Tax rate applied regardless of rule rate for this authority.
						]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element minOccurs="0" name="REVISED_GROSS_AMOUNT" type="xs:decimal">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
The revised amount used by certain tax authorities, primarily in Brazil. These authorities revise the gross amount as part of the process of tax calculation and base the tax on this amount.
						]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element minOccurs="0" name="RULE_ORDER" type="xs:decimal">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
The order of the rule applied to calculate this tax.
						]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element minOccurs="0" name="SUPPLY_EXEMPT_PERCENT" type="xs:decimal">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
A pass-through element which has been deprecated in favor of enhanced VAT calculation logic.

See INPUT_RECOVERY_AMOUNT/PERCENT and Managing VAT Recoverability and Working with Rules for more information.
						]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element minOccurs="0" name="TAXABLE_COUNTRY" type="TaxableCountryType"/>
			<xs:element minOccurs="0" name="TAXABLE_COUNTRY_NAME" type="TaxableCountryNameType"/>
			<xs:element minOccurs="0" name="TAXABLE_PROVINCE" type="TaxableProvinceType"/>
			<xs:element minOccurs="0" name="TAXABLE_STATE" type="TaxableStateType"/>
			<xs:element minOccurs="0" name="TAXABLE_COUNTY" type="TaxableCountyType"/>
			<xs:element minOccurs="0" name="TAXABLE_CITY" type="TaxableCityType"/>
			<xs:element minOccurs="0" name="TAXABLE_DISTRICT" type="TaxableDistrictType"/>
			<xs:element minOccurs="0" name="TAXABLE_GEOCODE" type="TaxableGEOCodeType"/>
			<xs:element minOccurs="0" name="TAXABLE_POSTCODE" type="TaxablePostCodeType"/>
			<xs:element minOccurs="0" name="TAX_DIRECTION" type="TaxDirectionType"/>
			<xs:element minOccurs="0" name="TAX_RATE_CODE" type="TaxRateCodeType"/>
			<xs:element name="TAX_TYPE" type="TaxTypeType"/>
			<xs:element minOccurs="0" name="VAT_GROUP_REGISTRATION" type="VatGroupRegistrationType"/>
			<xs:element minOccurs="0" name="ZONE_NAME" type="ZoneNameType"/>
			<xs:element name="ZONE_LEVEL" type="ZoneLevelType"/>
			<xs:element minOccurs="0" name="FISCAL_REP_NAME" type="FiscalRepNameType"/>
			<xs:element minOccurs="0" name="FISCAL_REP_ADDRESS1" type="FiscalRepAddress1Type"/>
			<xs:element minOccurs="0" name="FISCAL_REP_ADDRESS2" type="FiscalRepAddress2Type"/>
			<xs:element minOccurs="0" name="FISCAL_REP_CONTACT" type="FiscalRepContactType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_1" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_2" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_3" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_4" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_5" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_6" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_7" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_8" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_9" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_10" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_11" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_12" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_13" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_14" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_15" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_16" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_17" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_18" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_19" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_20" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_21" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_22" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_23" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_24" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_25" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_26" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_27" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_28" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_29" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_30" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_31" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_32" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_33" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_34" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_35" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_36" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_37" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_38" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_39" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_40" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_41" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_42" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_43" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_44" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_45" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_46" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_47" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_48" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_49" type="RegistrationAttributeType"/>
			<xs:element minOccurs="0" name="REGISTRATION_ATTRIBUTE_50" type="RegistrationAttributeType"/>
			<xs:element maxOccurs="unbounded" minOccurs="0" name="AUTHORITY_ATTRIBUTE" type="AuthorityAttributeType"/>
			<xs:element minOccurs="0" name="TAX_RATE" type="NillableDecimalType">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
The rate of taxation for the authority.
						]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element minOccurs="0" name="RATE_REDUCTION" type="NillableDecimalType">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
							The rate reduction for the authority.
						]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element minOccurs="0" name="EFFECTIVE_RATE" type="NillableDecimalType">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
							The effective rate of rate reduction for the authority.
						]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element minOccurs="0" name="SHIPTO_ICMS_DIFAL_RATE" type="xs:decimal">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
The rate of ship to icms difal authority.
						]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element minOccurs="0" name="PAUTA_UNIT_TAX_PRICE" type="NillableDecimalType">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
This will be taken from the UNIT_TAX_PRICE from the corresponding PAUTA authority (IPI Pauta).
						]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element minOccurs="0" name="PAUTA_CALCULATED_TAX_PRICE" type="NillableDecimalType">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
This will be calculated UNIT_TAX_PRICE from the corresponding PAUTA authority (IPI Pauta) using TOTAL_QUANTITY_CONVERSION * PAUTA_UNIT_TAX_PRICE.
						]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element minOccurs="0" name="TOTAL_QUANTITY_CONVERSION" type="NillableDecimalType">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
 This will be coming after UOM conversion from corresponding PAUTA authority (Packs to Litters).
						]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element minOccurs="0" name="RATE_UNIT_OF_MEASURE" type="xs:string">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
 This will be added for the authorities where the UOM is converted from model to rate.
						]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element minOccurs="0" name="PRODUCT_UNIT_OF_MEASURE" type="xs:string">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
 This will be added for the authorities where the UOM is converted from model to rule.
						]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element minOccurs="0" name="UOM_CONVERSION" type="UomConversionType"/>
			<xs:element minOccurs="0" name="NATURE_OF_TAX" type="NatureOfTaxType"/>
			<xs:element minOccurs="0" name="EU_TRANSACTION" type="xs:boolean">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
Indicates whether this tax result was generated by an EU authority or not.
						]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element minOccurs="0" name="AUTHORITY_CATEGORY" type="AuthorityCategoryType"/>
			<xs:element minOccurs="0" name="AUTHORITY_OFFICIAL_NAME" type="AuthorityOfficialNameType"/>
			<xs:element minOccurs="0" name="AUTHORITY_TYPE_ALIAS" type="AuthorityTypeAliasType"/>
			<xs:element minOccurs="0" name="AUTHORITY_UUID" type="AuthorityUUIDType"/>
			<xs:element minOccurs="0" name="RELATED_LINE_NUMBER" type="RelatedLineNumberType"/>
			<xs:element minOccurs="0" name="RELATED_ALLOCATION_LINE_NUMBER" type="xs:decimal">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
The related allocation line number based on the related line number.
						]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element minOccurs="0" name="RULE_REPORTING_CATEGORY" type="RuleReportingCategoryType"/>
			<xs:element minOccurs="0" name="TAX_TREATMENT" type="TaxTreatment"/>
			<xs:element minOccurs="0" name="AUTHORITY_CURRENCY_CODE" type="AuthorityCurrencyCodeType"/>
			<xs:element maxOccurs="unbounded" minOccurs="0" name="CURRENCY_CONVERSION" type="CurrencyConversionType"/>
			<xs:element minOccurs="0" name="EXEMPT_AMOUNT" type="ConvertedCurrencyAmountType"/>
			<xs:element minOccurs="0" name="GROSS_AMOUNT" type="ConvertedCurrencyAmountType"/>
			<xs:element minOccurs="0" name="NON_TAXABLE_BASIS" type="ConvertedCurrencyAmountType"/>
			<xs:element minOccurs="0" name="TAXABLE_BASIS" type="ConvertedCurrencyAmountType"/>
			<xs:element minOccurs="0" name="TAX_AMOUNT" type="ConvertedCurrencyAmountType"/>
			<xs:element minOccurs="0" name="TAX_AMOUNT_PER_UNIT" type="ConvertedCurrencyAmountType">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
The tax per unit amount calculated for the line.
                        ]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element minOccurs="0" name="FULL_BASIS_TAX_AMOUNT" type="ConvertedCurrencyAmountType"/>
			<xs:element minOccurs="0" name="REDUCED_TAX_AMOUNT" type="ConvertedCurrencyAmountType"/>
			<xs:element maxOccurs="unbounded" minOccurs="0" name="FEE" type="FeeType"/>
			<xs:element name="TAX_DETERMINATION_DATE" type="TaxDeterminationDateType"/>
			<xs:element name="TAX_POINT_DATE" type="TaxPointDateType"/>
			<xs:element minOccurs="0" name="EXCISE_ALREADY_PAID" type="ExciseAlreadyPaidType"/>
			<xs:element minOccurs="0" name="INCLUSIVE_TAX" type="InclusiveTaxType"/>
			<xs:element minOccurs="0" name="LICENSES" type="OutdataLicensesType"/>
			<!-- VCT : Output - Invoice Tax changes - Start -->
			<!-- This element will indicate the amount the company has accrued as part of VCT verification payable to the authority -->
			<xs:element minOccurs="0" name="ACCRUAL_AMOUNT" type="ConvertedCurrencyAmountType"/>
			<!-- This element will indicate the amount the vendor should have paid to the authority as part of VCT verification -->
			<xs:element minOccurs="0" name="PARTNER_AMOUNT" type="ConvertedCurrencyAmountType"/>
			<!-- VCT : Output - Invoice Tax changes - End -->
			<xs:element minOccurs="0" name="CEST" type="CestType"/>
			<xs:element minOccurs="0" name="CST" type="CstType"/>
			<xs:element minOccurs="0" name="CFOP" type="CfopType"/>
			<xs:element minOccurs="0" name="ORIGIN" type="OriginType"/>
			<xs:element minOccurs="0" name="CENQ" type="CenqType"/>
			<xs:element maxOccurs="1" minOccurs="0" name="REPORTING_CODES" type="ReportingCodesType">
				<xs:annotation>
					<xs:documentation>
						<![CDATA[
							Reporting codes related to this authority. There will be one reporting codes elements containing one to many reporting codes.
						]]>
					</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:sequence>
	</xs:complexType>

	<xs:complexType name="ReportingCodesType">
		<xs:sequence>
			<xs:element maxOccurs="unbounded" minOccurs="0" name="REPORTING_CODE" type="ReportingCodeType"/>
		</xs:sequence>
	</xs:complexType>

	<xs:complexType name="ReportingCodeType">
		<xs:sequence>
			<xs:element name="NAME" type="xs:string"/>
			<xs:element name="VALUE" type="xs:string"/>
		</xs:sequence>
	</xs:complexType>

	<xs:complexType name="MessageType">
		<xs:sequence>
			<xs:element minOccurs="0" name="LOCATION" type="xs:string"/>
			<xs:element name="CATEGORY" type="xs:string"/>
			<xs:element name="CODE" type="xs:string"/>
			<xs:element name="MESSAGE_TEXT" type="xs:string"/>
			<xs:element name="SEVERITY" type="xs:nonNegativeInteger"/>
		</xs:sequence>
	</xs:complexType>


	<xs:complexType name="ConvertedCurrencyAmountType">
		<xs:sequence>
			<xs:element minOccurs="0" name="DOCUMENT_AMOUNT" type="NillableDecimalType"/>
			<xs:element minOccurs="0" name="UNROUNDED_DOCUMENT_AMOUNT" type="NillableDecimalType"/>
			<xs:element name="AUTHORITY_AMOUNT" type="NillableDecimalType"/>
			<xs:element name="UNROUNDED_AUTHORITY_AMOUNT" type="NillableDecimalType"/>
		</xs:sequence>
	</xs:complexType>


	<xs:complexType name="CurrencyConversionType">
		<xs:sequence>
			<xs:element name="TAX_EXCHANGE_RATE_DATE" type="TaxExchangeRateDateType"/>
			<xs:element minOccurs="0" name="EXCHANGE_RATE_SOURCE" type="xs:string"/>
			<xs:element maxOccurs="2" minOccurs="0" name="CONVERSION_STEPS" type="CurrencyConversionStepType"/>
		</xs:sequence>
	</xs:complexType>


	<xs:complexType name="CurrencyConversionStepType">
		<xs:sequence>
			<xs:element name="CONVERSION_STEP" type="xs:decimal"/>
			<xs:element name="FROM_CURRENCY_CODE" type="xs:string"/>
			<xs:element name="TO_CURRENCY_CODE" type="xs:string"/>
			<xs:element name="EXCHANGE_RATE" type="xs:decimal"/>
		</xs:sequence>
	</xs:complexType>


	<xs:complexType name="UomConversionType">
		<xs:sequence>
			<xs:element name="FACTOR" type="NillableDecimalType"/>
			<xs:element name="OPERATOR" type="xs:string"/>
			<xs:element name="FROM" type="QuantityType"/>
			<xs:element name="TO_ROUNDED" type="QuantityType"/>
			<xs:element name="TO_UNROUNDED" type="QuantityType"/>
		</xs:sequence>
	</xs:complexType>


	<xs:complexType name="OutdataLicensesType">
		<xs:sequence minOccurs="0">
			<xs:element maxOccurs="unbounded" minOccurs="0" name="LICENSE" type="OutdataLicenseType"/>
		</xs:sequence>
	</xs:complexType>


	<xs:complexType name="OutdataLicenseType">
		<xs:sequence>
			<xs:element name="LICENSE_NUMBER" type="xs:string"/>
			<xs:element name="LICENSE_TYPE_NAME" type="xs:string"/>
			<xs:element minOccurs="0" name="LICENSE_END_DATE" type="xs:string"/>
			<xs:element name="LICENSE_CATEGORY" type="xs:string"/>
			<xs:element minOccurs="0" name="LICENSE_EXTERNAL_IDENTIFIER" type="xs:string"/>
		</xs:sequence>
	</xs:complexType>


	<xs:complexType name="FeeType">
		<xs:sequence>
			<xs:element minOccurs="0" name="AMOUNT" type="xs:decimal"/>
			<xs:element name="CURRENCY_CODE" type="xs:string"/>
			<xs:element name="UNIT_OF_MEASURE" type="xs:string"/>
		</xs:sequence>
	</xs:complexType>


	<xs:complexType name="GlobalCommodityCodeType">
		<xs:sequence>
			<xs:element name="CODE" type="xs:string"/>
			<xs:element name="MATCH" type="xs:string"/>
		</xs:sequence>
	</xs:complexType>


	<xs:complexType name="PcaCommodityCodeType">
		<xs:sequence>
			<xs:element name="CODE" type="xs:string"/>
			<xs:element name="MATCH" type="xs:string"/>
			<xs:element name="DESCRIPTION" type="xs:string"/>
		</xs:sequence>
	</xs:complexType>


	<xs:complexType name="AuthorityAttributeType">
		<xs:sequence>
			<xs:element name="NAME" type="xs:string"/>
			<xs:element name="VALUE" type="xs:string"/>
		</xs:sequence>
	</xs:complexType>


	<xs:element name="taxCalculationFault" type="TaxCalculationFault"/>


	<xs:complexType name="TaxCalculationFault">
		<xs:sequence>
			<xs:element name="additionalMessage" type="xs:string"/>
			<xs:element name="errorLocation" type="xs:string"/>
			<xs:element name="errorSource" type="xs:string"/>
		</xs:sequence>
	</xs:complexType>

	<!-- VCT : Changes - Start -->
	<xs:complexType name="ThresholdResultType">
		<xs:sequence>
			<xs:element minOccurs="0" name="THRESHOLD_INDICATOR" type="ThresholdIndicatorType"/>
			<xs:element minOccurs="0" name="THRESHOLD_AMOUNT" type="ThresholdAmountType"/>
			<xs:element minOccurs="0" name="THRESHOLD_PERCENT" type="ThresholdPercentType"/>
		</xs:sequence>
	</xs:complexType>

	<xs:simpleType name="ThresholdPercentType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
				The threshold percentage configured by the company for use in VCTM verification. .5 is equal to 50%, .6 is equal to 60%, and so on. This will be part of output
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="NillableDecimalType"/>
	</xs:simpleType>

	<xs:simpleType name="ThresholdAmountType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
				The threshold amount configured by the company for use in VCTM verification. This will be part of output.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="NillableDecimalType"/>
	</xs:simpleType>

	<xs:simpleType name="ThresholdIndicatorType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
Indicates the transaction threshold outcome based on the tolerance levels set for VCT transaction by the company. This will be part of output.

Threshold Indicator Codes
How to read the codes: The codes are 4 letters. All codes except for VCTE, are made up of two pairs. Percentage: Status and Amount: Status:

A = Amount, the difference between VCT (Vendor Charged Tax) and DET (Determination Tax)
P = Percentage (difference as % of VCT)
E = Equal to the DET
N = Not applicable
O = Out of threshold range
VCT = Vendor Charged Tax
W = Within threshold range
Note: Threshold ranges apply to either overcharged or undercharged

1. PNAN

Percentage: Not applicable; Amount: Not applicable –

Both the Percent and Amount threshold ranges are not applicable for this indicator. For example, when the invoice is from a “trusted vendor”, the merchant has a Direct Pay Permit (DPP),  the charged vendor sales tax is known to be correct, so the thresholds are not tested.

2. VCTE

VCT: Equal to DET –

The DET (Determination Tax) is equal to the vendor charged tax (VCT), so thresholds are not checked. This applies when the VCT is non-zero.

3. PNAW

Percentage: Not Applicable; Amount: Within threshold range –

This occurs when the vendor did not charge tax, so no percentage threshold range is checked. The DET amount is checked for tax liability, and it’s determined that the sales tax amount is within threshold range.

4. PNAO

Percentage: Not applicable; Amount Out of threshold range –

This occurs when the vendor did not charge tax, so no percentage threshold range is checked. The DET amount is checked for tax liability, and it’s determined that the sales tax amount is out of threshold range.

5. PWAW

Percentage: Within threshold range; Amount: Within threshold range –

The percentage is within the threshold range and the amount is also within the threshold range.

6. PWAO

Percentage: Within threshold range; Amount: Out of threshold range –

The percentage of the tax is within the threshold range, but the amount is outside of the threshold range.

7. POAN

Percentage: Out of threshold range; Amount: Not applicable –

The percentage is outside of the threshold range, so the check failed, and the amount threshold was not checked.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="50"/>
		</xs:restriction>
	</xs:simpleType>


	<xs:simpleType name="AccrualMethodType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
						Text identifying the accrual mehod opted by the company for VCT. Values could be NONE,TOTAL,PARTIAL.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="10"/>
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="AllocationMethodType">
		<xs:annotation>
			<xs:documentation>
				<![CDATA[
						Text identifying the accumulation mehod opted by the company for VCT. Values could be TOP-DOWN,BOTTOM-UP,EVENLY SPREAD.
				]]>
			</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:minLength value="0"/>
			<xs:maxLength value="20"/>
		</xs:restriction>
	</xs:simpleType>
	<!-- VCT : Changes - End -->

</xs:schema>