Skip to main content
Avalara Help Center

Document status in AvaTax for Communications

Learn how to manage the document status of transactions in AvaTax for Communications to control which transactions are included on reports.


For customers that would like the ability to review transaction data before finalizing it for compliance reporting purposes, AvaTax for Communications provides the ability to manage the document status of telecom and sales and use transactions. The document status options are:

Status Description
Uncommitted The details of this transaction have not been finalized, and it will not be included on Compliance Reports.
Committed This details of this transaction have been finalized, and it will be included on Compliance Reports for tax compliance reporting and remittance to the Department of Revenue (DoR).


Commit/Uncommit Process

The CalcTaxes API has a DocumentCode input field, which should be a unique identifier used to group transactions. For example, an invoice number would be a typical value to use as the DocumentCode. In addition to the DocumentCode field, a Commit flag is available to identify transactions which transactions to include in the compliance report produced in each reporting cycle. Transactions tied to a DocumentCode with a Commit flag set to False are excluded from the compliance report at the end of the reporting cycle.

Transactions can be committed either during the initial CalcTaxes API call, or after the initial calculation via the Commit API method. The Commit API allows users to change the setting of the Commit flag to True or False after the initial selection. Once you've created a transaction with a document code, the document status can only be changed by using the Commit API.

When you've finalized the details of an uncommitted transaction, you can use the Commit API to change the document status to committed by changing the Commit flag to True.

If you determine that there is a need to cancel or remove the transactions tied to a committed DocumentCode, the Commit API can also be used to change the document status to uncommitted by changing the Commit flag to False. This operation must be done before the end of the reporting cycle. At the end of the reporting cycle, any committed transactions associated with DocumentCodes will be locked and cannot be removed, canceled, or modified going forward.

When generating reports, the Is Committed column lets you know the current document status of each transaction. Reports only include committed transactions by default, but they can be generated to include only uncommitted transactions or to include all transactions (both committed and uncommitted). If you generate a report with all transactions, you can use the Is Committed column to filter based on document status.

Tip icon After the reporting cycle, users can commit previously uncommitted DocumentCodes via the Commit API. To request an updated compliance report, please submit a support case.

Troubleshooting errors

Error message Description

DocumentCode is invalid.

The Commit API call did not have a valid DocumentCode specified. The DocumentCode field when using the Commit API, and the DocumentCode provided must match the DocumentCode of an existing transaction.

No transactions found for document code.

The DocumentCode provided in the Commit API call could not be found in the specified AFC client ID. The DocumentCode provided must match the DocumentCode of an existing transaction.
DocumentCode has been locked. The DocumentCode provided in the Commit API has been locked and cannot be modified. Committed transactions are locked at the end of each reporting cycle (generally by the first day of the following month). 

Compliance Reporting

Using the Commit Process

The compliance report generated at the end of the reporting cycle is a reflection of all transactions tied to a committed DocumentCode. Transactions associated with an uncommitted DocumentCode are excluded from the compliance report.

Within this process, the AFC SaaS Pro uses the date when the transaction is committed (by setting Commit to True within the CalcTaxes API or via the Commit API). For example, an invoice may be processed in January, but it is committed in February. The taxes for the invoice are included and shown in the compliance report for February and not in the compliance reports for January.

Please refer to Section 2.3 Compliance Reports in the AFC Comprehensive Guide to Reports and Data Files for additional details on the format and data included in the compliance report.

Commit Process is not used

Sending a DocumentCode and managing the document status via the Commit API is strongly recommended and is considered best practice. However, there is a legacy workflow which does not require sending a DocumentCode or using the Commit API. This workflow is not recommended for new Avalara for Communications clients, but is still available to those currently utilizing it.

If no transactions have ever been created with a DocumentCode, only transactions with a company identifier will be included in the Compliance Reporting. Transactions without a Company Identifier included in the API call will be treated as uncommitted and excluded from Compliance Reports.

For more details on this process see Section 2.3 Compliance Reports in the AFC Comprehensive Guide to Reports and Data Files.

API Samples

For SOAP API samples, see the TM_00566 AFC SaaS Pro Commit/Uncommit Process guide.

For REST API samples, see the AFC REST v2 developer guide

Frequently Asked Questions

  1. What happens if I commit an already committed document code? What happens if I uncommit an already uncommitted document code?
    • You may send the commit/uncommit request again without any adverse consequences.

      If the document code to commit/uncommit is already committed/uncommitted, no action will be taken and no error will occur. Response will have 200 code.

  2. What happens if I commit/uncommit using an invalid document code?
    • If the document code does not exist, the error No transactions found for document code will be returned. Response will have 404 code (REST) or 500 (SOAP).
  3. What happens if I commit/uncommit a document code that has been locked?
    • If the document code is locked, the error Document code has been locked will be returned. Response will have 404 code (REST) or 500 (SOAP).
  4. What happens to uncommitted document codes? Can I commit a document code from a previous billing period?
    • The document code and associated tax data is retained for up to 3 months. During this time, you can add new transactions, commit, and uncommit the document code. The handling is no different than the handling for a document code created in the current billing cycle.
  5. What determines which billing period the committed transactions will be reported in?
    • The date the document code is committed determines the billing period the committed transactions will be reported in. The original submission date and invoice date are not used, only when the transactions were committed. This allows a client to determine the billing period based upon business needs after the calculation was made instead of requiring it to be set prior to the tax calculation.

      The billing period by default is from the 1st of the month to the end of the month. This date can be configured by account to a different day by submitting the request via a support case.

  6. I need to add new transactions to a committed document, how do I do this?
    • Submit the transactions with the same document code and cmmt=true.

      There is not currently an API method available to directly confirm the document status of a transaction. To verify if a document code is committed, the preferred approach is:

      1. Uncommit the document code

      2. Submit the new transaction(s) with the document code in the transaction data

      3. Commit the document code when the transaction details have been finalized.

  7. Do I need to set the Company Identifier to the 3 byte code for the account for transactions I assign a document code to?
    • Usage of the Company Identifier to establish which records should be included in the compliance reporting and usage of the Commit/Uncommit process are mutually exclusive. If a record has been assigned a document code and is committed, it will be included in the compliance reports regardless of the value in the Company Identifier field.
  8. Can I re-use document codes? Can I change the document code used to group transactions?
    • The document code must be unique for each grouping of transactions and cannot be changed once used. You can continue to add transactions to an existing document code until that document code becomes locked at the end of the reporting cycle. Once a document code is locked, you cannot re-use the same document code. It is up to the client to determine the approach for creating a unique document code that best suits their business needs.
  9. Can we switch from using Company Identifier to using Commit in the middle of a billing cycle?
    • Yes, the two approaches are mutually exclusive but can co-exist.

      Clients switching over will need to factor in that committed transactions use only the date the transaction was committed to determine which billing period the transactions will be reported in. The Company Identifier, Invoice Date, Submitted Date and Optional10 field will be not be used for reporting consideration with transactions that use Commit.

  10. What happens if I send a CalcTaxes API call with cmmt = false using a document code that is already committed? What happens if I send a CalcTaxes API call with cmmt = true using a document code that is uncommitted?

    • The document will remain unchanged. To change the document status after the initial CalcTaxes API call for the DocumenCode, you must use the CommitTax API method.

  11. Can I delete transactions once they're saved to AvaTax for Communications?

    • No, transactions cannot be deleted once they're saved to AvaTax for Communications. Instead, we recommend using the Commit API to set the document status to uncommitted, which removes the transaction from compliance reporting.

  • Was this article helpful?