Avalara Developer Network Developer communications

Communications Certification

Depending on the scope of your integration and your business practice, your test cases will vary. For development partners, many of these are requirements for certification. If you were to give us a full functionality demo, here’s what we’d like to see.

Use Case Expected Outcome Demonstrate
Validate ability to asociate materials/products to AFC Transaction Service type pair (T/S pair). You should be able to run a transaction with valid AFC T/S pair. How AFC T/S pairs are aligned to material/product in source system.
Validate process to determine Jurisdiction(s). You should be able to obtain correct Pcode/FIPS/NPaNxx for the jurisdiction. For example, ability to obtain correct Pcode using ZipToPCode API. Display the correct Pcode for the jurisdiction.
Validate Company specific data in AFC transactional inputs.

You should have the ability to pass through all types of inputs through with transactions:

  • Service Class: Primary Local or Primary Long Distance.
  • Regulated or Unregulated.
  • Customer Type: Business, Residential, Industrial, Senior Citizen.
  • Business Class: ILEC, CLEC, or Other.
  • Facilities Based.
  • Franchise.
  • Sale Type.
  • Company Identifier.
Display the correct Pcode for the jurisdiction.
Validate execution of base calculate tax function. You Should be able to submit basic transactions with required data values. For example, ability to calculate taxes using CalcTaxesWithPcode API call and get correct tax results.
  • Display in source system how each of the input values are configured and passed to the API fields.
  • Demonstrate results in source system based upon differrent input parameters required for a basic transaction.
Validate Company specific data in AFC transactional inputs. You should be able to submit basic transaction with required data values. For example, ability to calculate taxes using CalcTaxesWithPcode API call and get correct tax results.
  • Display in source system how each of the input values are configured and passed to the API fields.
  • Demonstrate results in source system based upon different input parameters required for a basic transaction.

Validate Adjustment handling

  • Ability to use an adjustment call for a normal transaction
  • Ability to apply adjustment call for current/previous month transactions
You should be able to submit adjustment transactions. For example, ability to apply adjustments using CalcAdjWithPcode API call and get correct tax results. Pre API call setup and display adjustment results in source system

Validate Exemption handling

  • Ability to handle specific exemptions
  • Ability to handle category exemptions
  • Ability to handle level exemptions - optional

Applies to both Customer Mode and non customer mode

You should be able to submit transactions with exemption information for Level, category, and specific exemption. The results should reflect the exempted taxes.

For example, Ability to submit Tax exemption[] along with Transaction[] using CalcTaxesWithPcode API call and verify correct tax results.

  • Display Pre API setup and execute transaction without exemption, displaying results in originating system.
  • Display Pre API setup with level exemptions and execute transaction, displaying results in originating system.
  • Display Pre API setup with specify exemptions and execute transaction, displaying results in originating system.
  • Display Pre API setup with category exemptions and execute transaction, displaying results in originating system.

Validate Invoice transaction (Customer Mode):

  • Batch customer mode.
  • Transaction Customer Mode.
User should be able to submit invoice mode/customer mode transactions and received results from API service For example, Ability to submit a single transaction to be processed for a customer batch using "CalcCustTaxes" API and verify results using "ProcessCustomerbatch" API.
  • Show API setup in Invoice mode and execute transaction, displaying results in source system.
  • Show API setup in Batch mode and execute transaction, displaying results in source system.

Validate Batch Invoice/Customer Mode Adjustment handling

  • How to apply adjustment to current batch/previous batch
  • Ability to use an adjustment call for batch transaction
User should be able to submit invoice mode/customer mode adjustment transactions and received results from API service. For example, Ability to submit a single adjustment transaction to be processed for a customer batch using "CalcCustAdj" API and verify results using "ProcessCustomerbatch" API.
  • Show API setup in Invoice mode and execute adjustment transaction, displaying results in source system.
  • Show API setup in Batch mode and execute adjustment transaction, displaying results in source system.
Validate ability to pass a single channel line and a multi-channel line.

Ability to pass following line transactions together for system to return taxes.

  • Local/PBX Trunk, Local/PBX Extension, Local/PBX outbound channel.

Ability to pass following Trunk transactions together

  • Local/Centrex/DID Extension, Local/Centrex Trunk, Local/Centrex, outbound Channel.

Ability to pass following channel transactions together

  • Local/High Capacity Trunk Bundle, Local/High Capacity Extension Bundle,Local/High Capacity Outbound Channel Bundle.
Display API set and execute transaction, showing results in source system.

Validate ability to treat common AFC returned exceptions

  • Invalid Address
  • No Jurisdiction found

Ability to distinguish between these exceptions and how to handle these:

Display error code