Messages

As each Determination transaction is processed, you may see a variety of messages, including:

  • Informational Messages: Describe how the transaction was processed, including jurisdiction determination, rate application, whether or not TransEditors or Allocations were applied, and so on.
  • Warning Messages: Returned if an error occurs that does not terminate the transaction.
  • Severe Message: Returned if the transaction cannot proceed.

Each message indicates:

  • The component in Determination that generated the message (LOCATION).
  • A message category.
  • The message code.
  • The message text. This text can be modified as described in Messaging Tasks.
  • The message severity: 0 for informational, 1 for warning, and 2 for severe.

Messages are recorded in the following areas:

  • Workbench Results (Workbench > Results)
  • XML Output (Workbench > Actions > XML Output)
  • Audit (use a database tool to look at the tables):
    • TB_INVOICE_MESSAGES
    • TB_INVOICE_LINE_MESSAGES
    • TB_INVOICE_LINE_TAX_MESSAGES

Not all messages are recorded in all tables.

Message Threshold Parameter Settings

To control the level of messages you receive, you can adjust the Message Threshold parameter on the Company Options page for your Determination Company.

Audit messages have four categories:

  • AUDIT_MESSAGE_TYPE_CALCULATION
  • AUDIT_MESSAGE_TYPE_INTERNAL
  • AUDIT_MESSAGE_TYPE_INVOICE_VALIDATION
  • AUDIT_MESSAGE_TYPE_JURISDICTION_DETERMINATION

The audit parameters for messages are set in Configuration. The following tables show the results of parameter settings.

INVOICE_INCLUDE_ALL_MESSAGES = Y

Message Threshold
Preference

Workbench Results

XML Output

Audit (tables)

Informational

All messages displayed (Informational - 0, Warning - 1, Severe - 2)

All messages displayed (Informational, Warning, and Severe)

Displays: Informational (0) & Warning (1)

No audit record is produced if there is a Severe (2) error message based on:

AUDIT_MESSAGE_TYPE_CALCULATION = Y or N

AUDIT_MESSAGE_TYPE_INTERNAL = Y or N

AUDIT_MESSAGE_TYPE_INVOICE_VALIDATION = Y or N

AUDIT_MESSAGE_TYPE_JURISDICTION_DETERMINATION = Y or N

Ignores: Message Threshold Preference

Warning

All messages displayed (Informational - 0, Warning - 1, Severe - 2)

Displays Warning and Severe messages

Displays: Informational (0) & Warning (1)

No audit record is produced if there is a Severe (2) error message based on:

AUDIT_MESSAGE_TYPE_CALCULATION = Y or N

AUDIT_MESSAGE_TYPE_INTERNAL = Y or N

AUDIT_MESSAGE_TYPE_INVOICE_VALIDATION = Y or N

AUDIT_MESSAGE_TYPE_JURISDICTION_DETERMINATION = Y or N

Ignores: Message Threshold Preference

Severe

All messages displayed (Informational - 0, Warning - 1, Severe - 2)

Displays only Severe messages

Displays: Informational (0) & Warning (1)

No audit record is produced if there is a Severe (2) error message based on:

AUDIT_MESSAGE_TYPE_CALCULATION = Y or N

AUDIT_MESSAGE_TYPE_INTERNAL = Y or N

AUDIT_MESSAGE_TYPE_INVOICE_VALIDATION = Y or N

AUDIT_MESSAGE_TYPE_JURISDICTION_DETERMINATION = Y or N

Ignores: Message Threshold Preference

INVOICE_INCLUDE_ALL_MESSAGES = N

Message Threshold Preference

Workbench

XML Output

Audit (tables)

Informational

All messages displayed (Informational - 0, Warning - 1, Severe - 2)

All messages displayed (Informational - 0, Warning - 1, Severe - 2)

Displays: Informational (0) & Warning (1)

No audit record is produced if there is a Severe (2) error message based on:

AUDIT_MESSAGE_TYPE_CALCULATION = Y or N

AUDIT_MESSAGE_TYPE_INTERNAL = Y or N

AUDIT_MESSAGE_TYPE_INVOICE_VALIDATION = Y or N

AUDIT_MESSAGE_TYPE_JURISDICTION_DETERMINATION = Y or N

Warning

Displays Warning and Severe messages

Displays Warning and Severe messages

Displays: Warning (1)

No audit record is produced if there is a Severe (2) error message based on:

AUDIT_MESSAGE_TYPE_CALCULATION = Y or N

AUDIT_MESSAGE_TYPE_INTERNAL = Y or N

AUDIT_MESSAGE_TYPE_INVOICE_VALIDATION = Y or N

AUDIT_MESSAGE_TYPE_JURISDICTION_DETERMINATION = Y or N

Severe

Displays only Severe messages

Displays only Severe messages

No messages are displayed

No audit record is produced if there is a Severe (2) error

Sample Message

The following example shows a specific message returned at the Invoice level regarding the rounding rules used in the transaction:

  1. <MESSAGE>

    • <LOCATION>TaxCalculator.calculateInvoice</LOCATION>

    • <CATEGORY>CALCULATION</CATEGORY>

    • <CODE>TAX_RESULT_IS_ROUNDED</CODE>

    • <MESSAGE_TEXT>Output XML tax results are rounded. Rule [Round] Precision [2] MAU [0.01]</MESSAGE_TEXT>

    • <SEVERITY>0</SEVERITY>

  2. </MESSAGE>

Transaction Success/Failure Messages

These messages show the success/failure status and pop severe errors to the top of each batch of invoices or individual invoice, as appropriate.

  • At the batch level, messages in the <REQUEST_STATUS> structure at the top of the XML file indicate full or partial transaction processing success for the invoices within the batch.
  • At the invoice level, messages in the <REQUEST_STATUS> structure at the top of the XML file indicate whether the individual invoice processed successfully.
  • In both cases, any severe errors are "popped up" into the <REQUEST_STATUS>.<ERROR> structure, so you can quickly identify transaction problems without scanning the entire XML output.

The <ERROR> structure includes the severe error code, description, and a location of the error in the XML in the <INVOICE>, <LINE>, or <TAX> output structures.

For more information, see the XML Reference for the <REQUEST_STATUS> batch level and invoice level output XML elements.

Customizing Messages

You cannot directly edit messages, but you can copy a message to either change its severity or message text for your implementation. The original message is retained and made inactive, You can restore the original message at any time by deleting the copy.

Jurisdiction Determination messages are a special category of message because they also may have authority-specific versions provided by your Tax Data Provider or Custom Data Provider. See Authority Specific Messages for more information.

Servlet and Internal messages can never be modified. Use caution when modifying message behavior because you may get unintended results. Please contact Customer Support before you modify messages and use this option with care.

Messaging Tasks

You can: