G Appendix: Tax Service Integration Avalara
This section describes the configurations for the tax service integration Avalara.
Overview
Avalara is the external tax service for Xstore. Avalara provides tax data in mnt data format. Xstore Office reaches out to this external tax service to fetch data periodically or on-demand. Xstore Office uses auto drop file deployments to send this data across all stores in the organization.
Avalara - Scheduled Quartz Jobs
The scheduledAvataxDataFetchJob quartz job fetches data from the Avalara tax service and auto-deploys the data to stores in the organization.
<bean id="scheduledAvataxDataFetchJob_1000" class="org.springframework.scheduling.quartz.JobDetailFactoryBean">
<property name="jobClass" value="com.micros_retail.xcenter.integration.IntegrationJob" />
<property name="jobDataAsMap">
<map>
<entry key="category" value="INTEGRATION"/>
<!-- The value of this property should be the same as the bean name for the relevant scheduledAvataxDataFetchTask -->
<entry key="integrationConfigId" value="scheduledAvataxDataFetchTask" />
</map>
</property>
<property name="durability" value="true"/>
<property name="requestsRecovery" value="true"/>
<property name="description" value="Scheduled fetch Tax Data from Avalara"/>
</bean>
The ExecScheduledAvataxDataFetchTask quartz job is the integration task that fetches the Avalara tax data and propagates it to stores of the organization.
<bean id="scheduledAvataxDataFetchTask_1000" class="com.micros_retail.xcenter.avatax.ExecScheduledAvataxDataFetchTask">
<property name="organizationId" value="1000" />
<property name="avataxProperties" ref="avataxProperties" />
</bean>
The scheduledAvataxDataFetchTrigger quartz job schedules the job to trigger on a certain date and time.
<bean id="scheduledAvataxDataFetchTrigger_1000" class="org.springframework.scheduling.quartz.CronTriggerFactoryBean">
<property name="jobDetail" ref="scheduledAvataxDataFetchJob_1000" />
<!-- Configured to run on 25th of every month at 21:00. -->
<property name="cronExpression" value="0 0 21 25 * ?" />
<!-- Timezones are set to UTC/GMT and cronExpressions are expected to represent that time. -->
<property name="timeZone" value="UTC" />
</bean>
xcenter.properties Settings
This section lists the xcenter.properties settings for the Avalara tax data service.
(Continued)xcenter.properties - Avalara Tax Data Service
Table G-1 xcenter.properties Settings
Setting | Valid Values | Description |
---|---|---|
avatax.connectionURL |
https://avalara-host |
Endpoint for Avalara tax data service |
avatax.connection.servicePath.prefix |
/api/v2/content/data/companies |
REST GET web method's @uri |
avatax.connection.username |
username |
AccountId provided by Avalara |
avatax.connection.password |
password |
License key provided by Avalara |
avatax.orgCompanyIds |
1000:257638,2000:27648 |
Mapping of Xstore Office organization to Avalara companyId. It is comma separated entries for each mapping. |
avatax.onDemand.ui.enabled |
true/false |
Is Avalara On-Demand functionality enabled for Xadmin. |
avatax.config.getDelta |
true/fals |
If true, the Xcenter will fetch Delta of the Tax Data from External integration on scheduled basis. |
avatax.ping.servicePath.prefix |
/api/v2/utilities/ping |
|
avatax.config.download_time |
STORE_CLOSE or IMMEDIATE |
|
avatax.config.accountId |
2001508678 |