Global Hub Tax Engine Settings
Create a Global Tax Hub Engine
To create a new Global Tax Hub Engine, see the following request and a sample of 200 response:
HTTP request:
POST
https://rest.zuora.com/settings/tax-engines/global-tax-hub
Request body:
01 | { |
02 | "name" : "Global Tax Hub Engine" , |
03 | "taxEngineType" : "GlobalTaxHub" , |
05 | "voidUrl" : "https://communicationsua.avalara.net/api/v2/afc/commit" , |
06 | "authenticationType" : "BasicAuth" , |
07 | "vendor" : "AvalaraTelco" , |
08 | "username" : "username" , |
09 | "password" : "password" , |
10 | "requestTemplate" : "mock template" , //Will be set to the default template if empty |
11 | "voidTemplate" : "mock template" //Will be set to the default template if empty |
12 | } |
The following fields are required in the request body:
name
taxEngineType
vendor
authenticationType -
The username and password are required when the authenticationType is set to Basic Auth.Url
Response body:
01 | { |
02 | "id" : "402833ec850fae4a01850fb5d039132d" , |
03 | "name" : "Global Tax Hub Engine" , |
04 | "taxEngineType" : "GlobalTaxHub" , |
05 | "customFieldMetas" : [], |
06 | "vendor" : "AvalaraTelco" , |
07 | "authenticationType" : "BasicAuth" , |
08 | "username" : "username" , |
10 | "voidUrl" : "https://communicationsua.avalara.net/api/v2/afc/commit" , |
11 | "networkOpenTimeoutInSeconds" : 60 , |
12 | "networkReadTimeoutInSeconds" : 60 , |
13 | "requestTemplate" : "mock template" , |
14 | "voidTemplate" : "mock template" , |
15 | "success" : true |
16 | } |
Get a Global Tax Hub Engine
To access detailed information about a particular Global Tax Hub engine, you must include the ID of the specific engine as a path parameter. Here's an example of a sample request and the corresponding 200 response:
HTTP request:
GET
https://rest.zuora.com/settings/tax-engines/global-tax-hub/{id}
Request body:
None
Response body:
01 | { |
02 | "id" : "402833ec850fae4a01850fb5d039132d" , |
03 | "name" : "Global Tax Hub Engine" , |
04 | "taxEngineType" : "GlobalTaxHub" , |
05 | "customFieldMetas" : [], |
06 | "vendor" : "AvalaraTelco" , |
07 | "authenticationType" : "BasicAuth" , |
08 | "username" : “username”, |
09 | "description" : "Test" , |
11 | "voidUrl" : "https://communicationsua.avalara.net/api/v2/afc/commit" , |
12 | "networkOpenTimeoutInSeconds" : 60 , |
13 | "networkReadTimeoutInSeconds" : 60 , |
14 | "requestTemplate" : "mock template" , |
15 | "voidTemplate" : "mock template" , |
16 | "success" : true |
17 | } |
Update a Global Tax Hub Engine
To update an existing Global Tax Hub Engine, you must include the ID of the engine as a path parameter. Here's an example of a sample request and the corresponding 200 response:
HTTP request:
PUT
https://rest.zuora.com/settings/tax-engines/global-tax-hub/{id}
Request body:
01 | { |
02 | "name" : "Global Tax Hub Engine" , |
04 | "voidUrl" : "https://communicationsua.avalara.net/api/v2/afc/commit" , |
05 | "authenticationType" : "OAuth2" , |
06 | "vendor" : "AvalaraTelco" , |
07 | "accessTokenUrl" : "https://access-token.com/" , |
08 | "clientId" : "clientId" , |
09 | "clientSecret" : "clientSecret" , |
10 | "description" : "Test" , |
11 | "requestTemplate" : "mock template" , |
12 | "voidTemplate" : "mock template" |
13 | } |
Do not include the taxEngineType
parameter in the request body.
Response body:
01 | { |
02 | "id" : "402833ec850fae4a01850fb5d039132d" , |
03 | "name" : "Global Tax Hub Engine" , |
04 | "taxEngineType" : "GlobalTaxHub" , |
05 | "customFieldMetas" : [], |
06 | "vendor" : "AvalaraTelco" , |
07 | "authenticationType" : "OAuth2" , |
09 | "voidUrl" : "https://communicationsua.avalara.net/api/v2/afc/commit" , |
10 | "accessTokenUrl" : "https://access-token.com/" , |
11 | "clientId" : "clientId" , |
12 | "networkOpenTimeoutInSeconds" : 60 , |
13 | "networkReadTimeoutInSeconds" : 60 , |
14 | "requestTemplate" : "mock template" , |
15 | "voidTemplate" : "mock template" , |
16 | "success" : true |
17 | } |
Delete a Global Tax Hub Engine
To delete a specific Global Tax Hub Engine, you must include the ID of the engine as a path parameter. Here's an example of a sample request and the corresponding 200 response:
HTTP request:
DELETE
https://rest.zuora.com/settings/tax-engines/global-tax-hub/{id}
Request body:
None
Response body:
None
API Fields Description
Property Name | Type | Description |
---|---|---|
name | String | The calculated tax amount that is excluded due to the exemption. |
vendor | Enum | The name of the vendor that is currently only supported by the AvalaraBrazil and Taxamo engines. The available values are AvalaraBrazil and Taxamo. |
authenticationType | Enum | The authentication types. The available options are BasicAuth, OAuth2, and PrivateToken. |
taxEngineType | Enum | The type of tax engine, such as GlobalTaxHub for TaxHub. |
url | String | The tax vendor URL for tax calculation. |
voidUrl | String | The tax vendor URL for tax void. |
username | String | The username for accessing the tax URL and tax void URL. This is required only when the authenticationType is Basic | Auth.
password | String | The password for accessing the tax URL and tax void URL. This is required only when the authenticationType is BasicAuth. |
securityToken | String | This is required when the authenticationType is PrivateToken. |
accessTokenUrl | String | The access token URL. This is required only when the authenticationType is OAuth2. |
clientId | String | The client ID. This is required only when the authenticationType is OAuth2. |
clientSecret | String | The client secret ID. This is required only when the authenticationType is OAuth2. |
networkOpenTimeoutInSeconds | Number | The timeout duration (in seconds) for establishing a network connection. |
networkReadTimeoutInSeconds | Number | The timeout duration (in seconds) for reading responses. |
requestTemplate | String | The request template for tax calculation. If left empty, the default template will be applied. |
voidTemplate | String | The request template for tax void. If left empty, the default template will be applied. |
customFieldMetas | Array of objects | This must be defined only if the latest value of custom fields are used, for example,
"customFieldMetas": { "useLatestValue" : true, "customFieldName" : "PicklistCustom__c", "customFieldObjectType" : "Account" } |
requestHeaders | Map | The Request headers. Input the key-value pairs, for example,
"requestHeaders": { "Accept-encoding" : "gzip, deflate, br" } |
responseMappings | Map |
The customized response mapping. Input the key-value pairs, for example, "responseMappings": { "taxRateDescription": "citation" |