AvaTax for Communications
Communications REST v2 Dev Guide
Getting Started
Calculate Taxes
Commit/Uncommit
Customizing Transactions
Account Customizations
Transaction Use Cases
- Simple Request
- Multi-line Request
- Jurisdiction Determination
- Interstate/Intrastate Determination
- Tax Override
- Safe Harbor Override
- Private Line
- Proration
- Transaction Information
- Exclusions
- Transaction-Level Commit/Uncommit
- Invoice Date
- Invoice Mode
- Optional Fields
- Adjustments
- Tax Inclusive
- Displaying Tax Results
- Quantity
- Request Config
Exemptions
Sales and Use
Jurisdiction Determination Use Cases
Reference
Calculating Tax Offline
AvaTax for Communications Use Cases
FAQ
Chapter 1.3 - Environment and Endpoints
Environments
The environments available to you are Sandbox and Production:
- Sandbox: communicationsua.avalara.net
- Used for testing
- Production: communications.avalara.net
- Used for live transactions and bill runs
Sandbox and Production environments operate identically for tax calculation and reporting. Tax calculations produce the same results when identical client profiles are used in both environments.
Some differences between Sandbox and Production:
- Each environment is self-contained and does not impact the other environment. Some examples:
- When a profile is updated in one environment, it does not impact the other environment unless you request both environments be updated. Sandbox can be used to test profile changes in before applying the same profile to Production.
- Calculations performed in one environment only appear in reports for that environment. If you are testing a bill run in Sandbox, you can perform the bill run repeatedly with no impact to Production reports.
- Access provided to users in one environment has no impact on who has access to the other environment. Developers, QA, and other team members can be given access to Sandbox, but not given access to Production.
- Automated compliance reports for returns are generated from Production only.
Endpoints
Check out Swagger!
Customization
| Endpoint | Method | Description | Request | Response |
|---|---|---|---|---|
/api/v2/profile/GetProfiles | GET | Retrieves one or more profiles with associated settings and configurable items | {RequestedClientId}, {RequestedProfileId}, and {ItemType} as URL parameters | Tax Calculation Settings Response |
/api/v2/profiles/SetConfig | POST | Creates or updates configuration settings and associated profile mappings Not currently available for use | Set Tax Calculation Setting Request | Tax Calculation Settings Response |
/api/v2/profiles/SetBundles | POST | Creates or updates bundle packages and associated profile mappings Not currently available for use | Set Tax Calculation Setting Request | Tax Calculation Settings Response |
/api/v2/profiles/SetExclusions | POST | Creates or updates exclusions and associated profile mappings Not currently available for use | Set Tax Calculation Setting Request | Tax Calculation Settings Response |
/api/v2/profiles/SetOverrides | POST | Creates or updates overrides and associated profile mappings Not currently available for use | Set Tax Calculation Setting Request | Tax Calculation Settings Response |
Healthcheck
| Endpoint | Method | Description | Request | Response |
|---|---|---|---|---|
/api/v2/Healthcheck | GET | Healthcheck that confirms the service is operational and ready to use | None | |
Jurisdiction Determination
| Endpoint | Method | Description | Request | Response |
|---|---|---|---|---|
/api/v2/afc/PCode | POST | Get PCode(s) associated with a location | PCode Lookup Request | PCode Lookup Result |
/api/v2/geo/Geocode | POST | Geocodes one or more street addresses or lat/long coordinates | Geocode Requests | Geocode Result |
/api/v2/geo/batch/Upload | POST | Uploads file to Geo Batch | GeocodeBatchFile formData file upload | Geo Batch Submit File Response |
/api/v2/geo/batch/status/{processId} | GET | Retrieves information on Geo Batch status | {processId} as URL parameter | Geo Batch Status |
/api/v2/geo/batch/log/{processId} | GET | Retrieves log on Geo Batch status | {processId} as URL parameter | Geo Batch Log |
Lookups
| Endpoint | Method | Description | Request | Response |
|---|---|---|---|---|
/api/v2/afc/serviceinfo | GET | Retrieves server time, service build version, and tax engine version | None | Service Info |
/api/v2/afc/taxtype/{taxType} | GET | Get the tax information (description and category) for a Tax Type ID | {taxType} as URL parameter Use "*" in {taxType }return all tax types | Tax Type Data |
/api/v2/afc/tspairs | GET | Get Transaction/Service (T/S) Pair information | None | TS Pair Data |
/api/v2/afc/location/{pcode} | GET | Get all jurisdiction location data associated with a specific PCode | {pcode} as URL parameter | PCode Lookup Result |
/api/v2/afc/primary/{pcode} | GET | Similar to the /api/v2/afc/location/{pcode}endpoint, but works as a "best match." Returns location info for the primary jurisdiction associated with the specified PCode | {pcode} as URL parameter | PCode Lookup Result |
Tax Calculation
| Endpoint | Method | Description | Request | Response |
|---|---|---|---|---|
/api/v2/afc/calctaxes | POST | Performs tax calculation on invoices. See Calculate Taxes for more information. | CalcTaxes Request | CalcTaxes Response |
/api/v2/afc/commit | POST | Commits and Uncommits transactions. See Commit/Uncommit for more information. | Commit Request | Commit Response |