Avalara Developer Network Developer avaTax

Avatax REST API - Models

Model Summary
AccountConfigurationModel

Represents one configuration setting for this account

AccountModel

An AvaTax account.

ActivateAccountModel

Represents a request to activate an account by reading and accepting its terms and conditions.

AddTransactionLineModel

Model to add specific lines to exising transaction

AddressInfo

Represents a base address element.

AddressLocationInfo

Represents an address to resolve.

AddressResolutionModel

Address Resolution Model

AddressValidationInfo

TextCase info for input address

AddressesModel

Information about all the addresses involved in this transaction.

For a physical in-person transaction at a retail point-of-sale location, please specify only one address using the singleLocation field.

For a transaction that was shipped, delivered, or provided from an origin location such as a warehouse to a destination location such as a customer, please specify the shipFrom and shipTo addresses.

In the United States, some jurisdictions recognize the address types pointOfOrderOrigin and pointOfOrderAcceptance. These address types affect the sourcing models of some transactions.

If latitude and longitude information is provided for any of these addresses along with line, city, region, country and postal code information, we will be using only latitude and longitude and will discard line, city, region, country and postal code information for the transaction. Please ensure that you have the correct latitude/longitude information for the addresses prior to using the API. If you provide either latitude or longitude information but not both, we will be using the line, city, region, country and postal code information for the addresses.

AdjustMultiDocumentModel

Replace an existing MultiDocument transaction recorded in AvaTax with a new one.

AdjustTransactionModel

Replace an existing transaction recorded in AvaTax with a new one.

AdvancedRuleScriptModel

Represents an advanced rule script

AdvancedRuleTableModel

Represents an advanced rule table

ApproveFilingsModel

Approve a set of filings.

AuditEvent
AuditModel

Provides detailed information about an API call.

AuditMultiDocumentModel

Information about a previously created MultiDocument transaction

AuditTransactionModel

Information about a previously created transaction

AvaFileFormModel

Represents information about a tax form known to Avalara

AvaTaxMessage

Informational or warning messages returned by AvaTax with a transaction

BatchFileModel

Represents one file in a batch upload.

BatchModel

Represents a batch of uploaded documents.

BulkLockTransactionModel

Bulk lock documents model

BulkLockTransactionResult

Returns information about transactions that were locked

CertExpressInvitationModel

Represents an invitation for a customer to use CertExpress to self-report their own certificates. This invitation is delivered by your choice of method, or you can present a hyperlink to the user directly in your connector. Your customer will be redirected to https://app.certexpress.com/ where they can follow a step-by-step guide to enter information about their exemption certificates. The certificates entered will be recorded and automatically linked to their customer record.

CertExpressInvitationStatusModel

Represent what is the current status of certificate request

CertificateAttributeModel

A certificate attribute can be thought of as a feature or flag that is applied to a certificate. A single certificate can be linked to zero, one, or many certificate attributes. The full list of attributes can be obtained by calling the ListCertificateAttributes API.

CertificateModel

A certificate is a document stored in either AvaTax Exemptions or CertCapture. The certificate document can contain information about a customer’s eligibility for exemption from sales or use taxes based on criteria you specify when you store the certificate. To view or manage your certificates directly, please log onto the administrative website for the product you purchased.

ChangeTransactionCodeModel

Settle this transaction with your ledger by verifying its amounts. If the transaction is not yet committed, you may specify the ‘commit’ value to commit it to the ledger and allow it to be reported. You may also optionally change the transaction’s code by specifying the ‘newTransactionCode’ value.

CommitMultiDocumentModel

Commit this MultiDocument object so that all transactions within it can be reported on a tax filing.

CommitTransactionModel

Commit this transaction as permanent so that it can be reported on a tax filing.

CommunicationsTSPairModel

Represents a transaction/service type pair for telecommunications tax

CommunicationsTransactionTypeModel

Represents information about a type of telecommunications transaction

CompanyAddress

Company Address Information

CompanyConfigurationModel

Represents one configuration setting for this company

CompanyDistanceThresholdModel

A company-distance-threshold model indicates the distance between a company and the taxing borders of various countries. Distance thresholds are necessary to correctly calculate some value-added taxes.

Distance thresholds only apply to sales of goods in certain countries. A distance threshold is applied for each ship-from/ship-to combination of countries. The threshold amount is defined by the ship-to country.

Generally, if you have exceeded a distance threshold for taxes between a pair of countries, your tax calculation will be determined to be the rate in the destination country. If you have not exceeded the threshold, your tax calculation will be determined to be the rate in the origin country.

The amount of a threshold is not tracked or managed in AvaTax, but the decision of your tax compliance department as to whether you have exceeded this threshold is maintained in this object.

By default, you are considered to have exceeded tax thresholds. If you wish to change this default, you can create a company-distance-threshold object to select the correct behavior for this origin/destination tax calculation process.

CompanyInitializationModel

Company Initialization Model

CompanyModel

A company or business entity.

CompanyReturnSettingModel
ComplianceAggregatedTaxRateModel

A model for aggregated rates.

ComplianceJurisdictionModel

Model for distinct jurisdictions.

ComplianceJurisdictionRateModel

A flattened model for jurisdictions and rates.

ComplianceTaxRateModel

The tax rate model.

ContactModel

A contact person for a company.

CoordinateInfo

Coordinate Info

CoverLetterModel

The CoverLetter model represents a message sent along with an invitation to use CertExpress to upload certificates. An invitation allows customers to use CertExpress to upload their exemption certificates directly; this cover letter explains why the invitation was sent.

CreateCertExpressInvitationModel

Represents an invitation for a customer to use CertExpress to self-report their own certificates. This invitation is delivered by your choice of method, or you can present a hyperlink to the user directly in your connector. Your customer will be redirected to https://app.certexpress.com/ where they can follow a step-by-step guide to enter information about their exemption certificates. The certificates entered will be recorded and automatically linked to their customer record.

CreateMultiDocumentModel

A MultiDocument transaction represents a sale or purchase that occurred between more than two companies.

A traditional transaction requires exactly two parties: a seller and a buyer. MultiDocument transactions can involve a marketplace of vendors, each of which contributes some portion of the final transaction. Within a MultiDocument transaction, each individual buyer and seller pair are matched up and converted to a separate document. This separation of documents allows each seller to file their taxes separately.

CreateOrAdjustTransactionModel

Create or adjust transaction model

CreateTransactionModel

Create a transaction

CurrencyModel

Represents an ISO 4217 currency code used for designating the currency of a transaction.

CustomFieldModel

A custom field provides extra information about a customer or certificate.

Custom fields are provided to permit you to store additional information about an exemption certificate or customer. They are available to support additional use cases beyond that supported directly by Avalara’s exemption certificate software.

For more information about custom fields, see the Avalara Help Center article about custom fields.

CustomerModel

Represents a customer to whom you sell products and/or services.

CycleAddOptionModel

Model with options for adding a new filing calendar

CycleEditOptionModel

Model with options for actual filing calendar output based on user edits to filing calendar.

CycleExpireModel

Cycle Safe Expiration results.

CycleExpireOptionModel

Options for expiring a filing calendar.

DataSourceModel

Data source object

DeclareNexusByAddressModel

Use this object to provide an address and date range where your company does business. This address will be used to determine what jurisdictions you should declare nexus and calculate tax.

EcmsDetailModel

Represents an ECMS record, used internally by AvaTax to track information about exemptions.

EcmsDetailTaxCodeModel
EcmsModel

Exempt certificate

EntityUseCodeModel

Represents a code describing the intended use for a product that may affect its taxability

ErrorDetail

Message object

ExemptionReasonModel

An exemption reason defines why a certificate allows a customer to be exempt for purposes of tax calculation. For a full list of defined exemption reasons, please call the ListCertificateExemptionReasons API.

ExemptionStatusModel

Indicates the customer’s exemption status in a specific country and region.

ExportDocumentLineModel

An input model for executing a report detailed to the document line level

ExposureZoneModel

Information about a physical area or zone in which a certificate can apply. An exposure zone for an exemption certificate will generally be a tax authority such as a state, country, or local government entity.

FilingAdjustmentModel

A model for return adjustments.

FilingAnswerModel
FilingAttachmentModel

An attachment associated with a filing return

FilingAugmentationModel

A model for return augmentations.

FilingCalendarEditModel

An edit to be made on a filing calendar.

FilingCalendarModel

Represents a commitment to file a tax return on a recurring basis. Only used if you subscribe to Avalara Returns.

FilingFrequencyModel

FilingFrequency Model

FilingModel

Represents a listing of all tax calculation data for filings and for accruing to future filings.

FilingPaymentModel

A model for return payments.

FilingRegionModel

Regions

FilingRequestDataModel

Represents a commitment to file a tax return on a recurring basis. Only used if you subscribe to Avalara Returns.

FilingRequestModel

Represents a commitment to file a tax return on a recurring basis. Only used if you subscribe to Avalara Returns.

FilingReturnModel

Filing Returns Model

FilingReturnModelBasic

Filing Returns Model

FilingStatusChangeModel

Represents a change request for filing status for a company

FilingsCheckupAuthorityModel

Cycle Safe Expiration results.

FilingsCheckupModel

Results of the Worksheet Checkup report

FilingsCheckupSuggestedFormModel

Worksheet Checkup Report Suggested Form Model

FormMasterModel

Represents information about a tax form known to Avalara

FreeTrialRequestModel

Represents a request for a free trial account for AvaTax. Free trial accounts are only available on the Sandbox environment.

FundingConfigurationModel

Status of an Avalara Managed Returns funding configuration for a company

FundingESignMethodReturn

Represents the current status of a funding ESign method

FundingInitiateModel
FundingStatusModel

Status of an Avalara Managed Returns funding configuration for a company

HsCodeModel

Describes an element in the harmonized tariff system.

According to the United States International Trade Commission, the harmonized tariff schedule is defined as follows:

The HTS is a U.S. nomenclature system used to classify traded goods based on their material composition, product name, and/or intended function. The HTS is designed so that each article falls into only one category. It is divided into chapters, each of which has a 2-digit number. Each product category within the various chapters is designated by 4, 6, 8, or 10 digits. The 4-digit categories are called ‘headings.’ The 6-, 8- and 10-digit classifications are called ‘subheadings.’

Within AvaTax, the HsCodeModel object can refer to sections, chapters, headings, subheadings, or articles. Each object represents one classification. Many of these objects have child objects underneath them; these child objects are more specific than their parent objects.

InvoiceMessageModel

Represents a message to be displayed on an invoice.

IsoCountryModel

Represents an ISO 3166 recognized country

IsoLocalizedName

Represents a language-specific localized name of a particular geographic entity such as a country or a region.

IsoRegionModel

Represents a region, province, or state within a country

ItemModel

Represents an item in your company’s product catalog.

JurisdictionModel

Represents information about a single legal taxing jurisdiction

JurisdictionOverrideModel

Represents an override of tax jurisdictions for a specific address.

During the time period represented by EffDate through EndDate, all tax decisions for addresses matching this override object will be assigned to the list of jurisdictions designated in this object.

LicenseKeyModel

Represents a license key for this account.

LineItemModel

Represents one line item in a transaction

LinkCertificatesModel

Represents a customer to whom you sell products and/or services.

LinkCustomersModel

Represents a customer to whom you sell products and/or services.

LocationModel

A location where this company does business. Some jurisdictions may require you to list all locations where your company does business.

LocationQuestionModel

Information about questions that the local jurisdictions require for each location

LocationSettingModel

Represents the answer to one local jurisdiction question for a location.

LocationValidationModel

Tells you whether this location object has been correctly set up to the local jurisdiction’s standards

LockTransactionModel

Commit this transaction as permanent

LoginVerificationInputModel

Represents a verification request using Skyscraper for a company

LoginVerificationOutputModel

This is the output model coming from skyscraper services

MrsCompanyModel

A company and account

MultiDocumentLineItemModel

Represents one line item in a MultiDocument transaction

MultiDocumentModel

A MultiDocument transaction represents a sale or purchase that occurred between more than two companies.

A traditional transaction requires exactly two parties: a seller and a buyer. MultiDocument transactions can involve a marketplace of vendors, each of which contributes some portion of the final transaction. Within a MultiDocument transaction, each individual buyer and seller pair are matched up and converted to a separate document. This separation of documents allows each seller to file their taxes separately.

NewAccountModel

Represents information about a newly created account

NewAccountRequestModel

Represents a request for a new account with Avalara for a new subscriber. Contains information about the account requested and the rate plan selected.

NexusByAddressModel

Contains information about nexus jurisdictions that were declared as a result of a call to DeclareNexusByAddress. For each address, this object model contains a list of the nexus objects that were declared according to the geocoding that corresponds to this address.

NexusByTaxFormModel

Identifies all nexus that match a particular tax form

NexusModel

Represents a declaration of nexus within a particular taxing jurisdiction.

NexusTaxTypeGroupModel

Represents a group of tax types

NoticeCommentModel

Represents communication between Avalara and the company regarding the processing of a tax notice.

NoticeCustomerFundingOptionModel

Tax Authority Model

NoticeCustomerTypeModel

Tax Authority Model

NoticeFilingTypeModel

Tax Notice FilingType Model

NoticeFinanceModel

Represents estimated financial results from responding to a tax notice.

NoticeModel

Represents a letter received from a tax authority regarding tax filing. These letters often have the warning ‘Notice’ printed at the top, which is why they are called ‘Notices’.

NoticePriorityModel

Tax Notice Priority Model

NoticeReasonModel

Tax Notice Reason Model

NoticeResponsibilityDetailModel

NoticeResponsibility Model

NoticeResponsibilityModel

NoticeResponsibility Model

NoticeRootCauseDetailModel

NoticeRootCause Model

NoticeRootCauseModel

NoticeRootCause Model

NoticeStatusModel

Tax Notice Status Model

NoticeTypeModel

Tax Notice Type Model

NotificationModel

Represents a single notification.

A notification is a message from Avalara that may have relevance to your business. You may want to regularly review notifications and then dismiss them when you are certain that you have addressed any relevant concerns raised by this notification.

An example of a notification would be a message about new software, or a change to AvaTax that may affect you, or a potential issue with your company’s tax profile.

OfferModel

Gets the response for the offer request

OriginalApiRequestResponseModel

Represents the exact API request and response from the original transaction API call, if available

ParameterModel

An extra property that can change the behavior of tax transactions.

PasswordChangeModel

Password Change Model

PingResultModel

Ping Result Model

PoNumberModel

Represents a purchase order number for a transaction

PointOfSaleDataRequestModel

Point-of-Sale Data Request Model

PostalCodeModel

Represents a PostalCode and its associated data like: country, region, effective dates, etc.

PreferredProgramModel

A preferred program is a customs and/or duty program that can be used to handle cross-border transactions. Customers who sign up for a preferred program may obtain better terms for their customs and duty payments.

To indicate that your company has signed up for a preferred program, specify the code value from this object as the value for the AvaTax.LC.PreferredProgram parameter in your transaction.

ProvisionStatusModel

Contains information about a company’s exemption certificate status.

This model can be used to determine if your company is able to use the Customers, Certificates, and CertExpressInvites APIs within AvaTax.

RateModel

Indicates one element of a sales tax rate.

RateTypeModel

Rate type Model

RebuildFilingsModel

Rebuild a set of filings.

ReconstructedApiRequestResponseModel

This model contains a reconstructed CreateTransaction request object that could potentially be used to recreate this transaction.

Note that the API changes over time, and this reconstructed model is likely different from the exact request that was originally used to create this transaction.

ReconstructedMultiDocumentModel

Contains information about the original API request and response that created a MultiDocument object.

RefundTransactionModel

Refund a committed transaction

RemoveTransactionLineModel

Model to specify lines to be removed

ReportModel

A model for displaying report task metadata

ReportParametersModel

The output model for report parameter definitions

ResetLicenseKeyModel

Represents a license key reset request.

ResourceFileTypeModel

Resource File Type Model

ResourceFileUploadRequestModel

A request to upload a file to Resource Files

SecurityRoleModel

Represents a single security role.

SetPasswordModel

Set Password Model

SettingModel

This object is used to keep track of custom information about a company.

The company settings system is a metadata system that you can use to store extra information about a company. Your integration or connector could use this data storage to keep track of preference information, reminders, or any other storage that would need to persist even if the customer uninstalls your application.

A setting can refer to any type of data you need to remember about this company object. When creating this object, you may define your own set, name, and value parameters. To define your own values, please choose a set name that begins with X- to indicate an extension.

SettleTransactionModel

Settle this transaction with your ledger by executing one or many actions against that transaction.

You may use this endpoint to verify the transaction, change the transaction’s code, and commit the transaction for reporting purposes. This endpoint may be used to execute any or all of these actions at once.

SkyscraperStatusModel

Represents a list of statuses of returns available in skyscraper

SubscriptionModel

Represents a service that this account has subscribed to.

SubscriptionTypeModel

Represents a service or a subscription type.

TaxAuthorityFormModel

Represents a form that can be filed with a tax authority.

TaxAuthorityInfo

Information about a tax authority relevant for an address.

TaxAuthorityModel

Tax Authority Model

TaxAuthorityTypeModel

Tax Authority Type Model

TaxCodeModel

Represents a tax code that can be applied to items on a transaction. A tax code can have specific rules for specific jurisdictions that change the tax calculation behavior.

TaxCodeTypesModel

Information about Avalara-defined tax code types. This list is used when creating tax codes and tax rules.

TaxOverrideModel

Represents a tax override for a transaction

TaxRateModel

Contains information about the general tangible personal property sales tax rates for this jurisdiction.

This rate is calculated by making assumptions about the tax calculation process. It does not account for:

  • Sourcing rules, such as origin-and-destination based transactions.
  • Product taxability rules, such as different tax rates for different product types.
  • Nexus declarations, where some customers are not obligated to collect tax in specific jurisdictions.
  • Tax thresholds and rate differences by amounts.
  • And many more custom use cases.

To upgrade to a fully-featured and accurate tax process that handles these scenarios correctly, please contact Avalara to upgrade to AvaTax!

TaxRegionJurisdictionModel

The tax region jurisdiction model.

TaxRegionModel

The tax region model.

TaxRuleModel

Represents a tax rule that changes the behavior of Avalara’s tax engine for certain products in certain jurisdictions.

TaxSubTypeModel

Represents a tax subtype

TaxTypeGroupModel

Represents a tax type group

TransactionAddressModel

An address used within this transaction.

TransactionLineDetailModel

An individual tax detail element. Represents the amount of tax calculated for a particular jurisdiction, for a particular line in an invoice.

TransactionLineLocationTypeModel

Represents information about location types stored in a line

TransactionLineModel

One line item on this transaction.

TransactionLocationTypeModel

Information about a location type

TransactionModel

This object represents a single transaction; for example, a sales invoice or purchase order.

TransactionSummary

Summary information about an overall transaction.

UPCModel

One Universal Product Code object as defined for your company.

UomModel

The ‘Unit of Measurement’ model captures information about a type of measurement. Types of measurement refer to different scales for the same dimension. For example, measurements of type ‘Distance’ may include units of measurement such as meters, feet, inches, and miles.

UserEntitlementModel

User Entitlement Model

UserModel

An account user who is permitted to use AvaTax.

UsernameModel

Information about a username.

ValidatedAddressInfo

Represents a validated address

VerifyMultiDocumentModel

Verify that a MultiDocument object matches the information in your accounting system.

If all attributes of the MultiDocument object match the values in your request, the MultiDocument object will be moved to the document status Posted.

For more information on document status, see DocumentStatus.

VerifyTransactionModel

Verify this transaction by matching it to values in your accounting system.

You may specify one or more of the following fields to verify: date, totalAmount, or totalTax. This call will report an error if there is any difference between the data stored in AvaTax and the data stored in your accounting system.

VoidTransactionModel

A request to void a previously created transaction

requiredFilingCalendarDataFieldModel

Represents a verification request using Skyscraper for a company