OnePica_AvaTax - Version 2.6.0

Version Notes

Added global feature support
Fixed tax calculation with gifting options
Fixed double sending of invoice to Avalara
Fixed settings in admin displaying when extension is in disabled mode

Download this release

Release Info

Developer Astound Commerce
Extension OnePica_AvaTax
Version 2.6.0
Comparing to
See all releases


Code changes from version 2.5.2 to 2.6.0

Files changed (132) hide show
  1. app/code/community/OnePica/AvaTax/Helper/Data.php +166 -18
  2. app/code/community/OnePica/AvaTax/Model/Admin/Session.php +14 -3
  3. app/code/community/OnePica/AvaTax/Model/Adminhtml/Config.php +13 -2
  4. app/code/community/OnePica/AvaTax/Model/Avatax/Abstract.php +104 -3
  5. app/code/community/OnePica/AvaTax/Model/Avatax/Estimate.php +63 -18
  6. app/code/community/OnePica/AvaTax/Model/Avatax/Invoice.php +25 -22
  7. app/code/community/OnePica/AvaTax/Model/Observer.php +39 -9
  8. app/code/community/OnePica/AvaTax/Model/Sales/Quote/Address/Total/Tax.php +12 -17
  9. app/code/community/OnePica/AvaTax/Model/Source/Regionfilter/List.php +78 -18
  10. app/code/community/OnePica/AvaTax/Model/Total/Quote/Tax/Giftwrapping.php +49 -0
  11. app/code/community/OnePica/AvaTax/etc/config.xml +12 -2
  12. app/code/community/OnePica/AvaTax/etc/system-disabled.xml +33 -16
  13. app/code/community/OnePica/AvaTax/etc/system.xml +21 -15
  14. lib/AvaTax/AvaTax.php +11 -2
  15. lib/AvaTax/classes/ATConfig.class.php +11 -5
  16. lib/AvaTax/classes/ATObject.class.php +6 -4
  17. lib/AvaTax/classes/AVObject.class.php +0 -1
  18. lib/AvaTax/classes/Address.class.php +51 -9
  19. lib/AvaTax/classes/AddressServiceSoap.class.php +19 -23
  20. lib/AvaTax/classes/AddressType.class.php +6 -4
  21. lib/AvaTax/classes/AdjustTaxRequest.class.php +7 -5
  22. lib/AvaTax/classes/AdjustTaxResult.class.php +7 -6
  23. lib/AvaTax/classes/ApplyPaymentRequest.class.php +26 -3
  24. lib/AvaTax/classes/ApplyPaymentResult.class.php +10 -2
  25. lib/AvaTax/classes/AvaCert2Svc/AvaCert2Soap.class.php +209 -0
  26. lib/AvaTax/classes/AvaCert2Svc/Certificate.class.php +227 -0
  27. lib/AvaTax/classes/AvaCert2Svc/CertificateGetRequest.class.php +59 -0
  28. lib/AvaTax/classes/AvaCert2Svc/CertificateGetResult.class.php +33 -0
  29. lib/AvaTax/classes/AvaCert2Svc/CertificateImageGetRequest.class.php +55 -0
  30. lib/AvaTax/classes/AvaCert2Svc/CertificateImageGetResult.class.php +29 -0
  31. lib/AvaTax/classes/AvaCert2Svc/CertificateJurisdiction.class.php +47 -0
  32. lib/AvaTax/classes/AvaCert2Svc/CertificateRequest.class.php +77 -0
  33. lib/AvaTax/classes/AvaCert2Svc/CertificateRequestGetRequest.class.php +69 -0
  34. lib/AvaTax/classes/AvaCert2Svc/CertificateRequestGetResult.class.php +33 -0
  35. lib/AvaTax/classes/AvaCert2Svc/CertificateRequestInitiateRequest.class.php +103 -0
  36. lib/AvaTax/classes/AvaCert2Svc/CertificateRequestInitiateResult.class.php +41 -0
  37. lib/AvaTax/classes/AvaCert2Svc/CertificateRequestStage.class.php +43 -0
  38. lib/AvaTax/classes/AvaCert2Svc/CertificateRequestStatus.class.php +43 -0
  39. lib/AvaTax/classes/AvaCert2Svc/CertificateStatus.class.php +51 -0
  40. lib/AvaTax/classes/AvaCert2Svc/CertificateUsage.class.php +51 -0
  41. lib/AvaTax/classes/AvaCert2Svc/CommunicationMode.class.php +49 -0
  42. lib/AvaTax/classes/AvaCert2Svc/Customer.class.php +137 -0
  43. lib/AvaTax/classes/AvaCert2Svc/CustomerSaveRequest.class.php +33 -0
  44. lib/AvaTax/classes/AvaCert2Svc/CustomerSaveResult.class.php +17 -0
  45. lib/AvaTax/classes/AvaCert2Svc/FormatType.class.php +43 -0
  46. lib/AvaTax/classes/AvaCert2Svc/RequestType.class.php +43 -0
  47. lib/AvaTax/classes/AvaCert2Svc/ReviewStatus.class.php +51 -0
  48. lib/AvaTax/classes/AvalaraSoapClient.class.php +8 -7
  49. lib/AvaTax/classes/BaseResult.class.php +9 -5
  50. lib/AvaTax/classes/BatchSvc/AuditMessage.class.php +9 -1
  51. lib/AvaTax/classes/BatchSvc/AvaTaxBatchSvc.php +9 -4
  52. lib/AvaTax/classes/BatchSvc/BaseResult.class.php +10 -2
  53. lib/AvaTax/classes/BatchSvc/Batch.class.php +9 -1
  54. lib/AvaTax/classes/BatchSvc/BatchDelete.class.php +10 -2
  55. lib/AvaTax/classes/BatchSvc/BatchDeleteResponse.class.php +9 -1
  56. lib/AvaTax/classes/BatchSvc/BatchFetch.class.php +9 -1
  57. lib/AvaTax/classes/BatchSvc/BatchFetchResponse.class.php +9 -1
  58. lib/AvaTax/classes/BatchSvc/BatchFetchResult.class.php +9 -1
  59. lib/AvaTax/classes/BatchSvc/BatchFile.class.php +9 -2
  60. lib/AvaTax/classes/BatchSvc/BatchFileDelete.class.php +9 -1
  61. lib/AvaTax/classes/BatchSvc/BatchFileDeleteResponse.class.php +10 -2
  62. lib/AvaTax/classes/BatchSvc/BatchFileFetch.class.php +9 -1
  63. lib/AvaTax/classes/BatchSvc/BatchFileFetchResponse.class.php +9 -1
  64. lib/AvaTax/classes/BatchSvc/BatchFileFetchResult.class.php +9 -1
  65. lib/AvaTax/classes/BatchSvc/BatchFileSave.class.php +10 -2
  66. lib/AvaTax/classes/BatchSvc/BatchFileSaveResponse.class.php +10 -2
  67. lib/AvaTax/classes/BatchSvc/BatchFileSaveResult.class.php +9 -1
  68. lib/AvaTax/classes/BatchSvc/BatchProcess.class.php +9 -1
  69. lib/AvaTax/classes/BatchSvc/BatchProcessRequest.class.php +9 -1
  70. lib/AvaTax/classes/BatchSvc/BatchProcessResponse.class.php +9 -1
  71. lib/AvaTax/classes/BatchSvc/BatchProcessResult.class.php +9 -1
  72. lib/AvaTax/classes/BatchSvc/BatchSave.class.php +9 -1
  73. lib/AvaTax/classes/BatchSvc/BatchSaveResponse.class.php +9 -1
  74. lib/AvaTax/classes/BatchSvc/BatchSaveResult.class.php +9 -1
  75. lib/AvaTax/classes/BatchSvc/BatchSvc.class.php +9 -1
  76. lib/AvaTax/classes/BatchSvc/DeleteRequest.class.php +9 -1
  77. lib/AvaTax/classes/BatchSvc/DeleteResult.class.php +10 -2
  78. lib/AvaTax/classes/BatchSvc/FetchRequest.class.php +9 -1
  79. lib/AvaTax/classes/BatchSvc/FilterRequest.class.php +10 -2
  80. lib/AvaTax/classes/BatchSvc/FilterResult.class.php +10 -2
  81. lib/AvaTax/classes/BatchSvc/IsAuthorized.class.php +9 -1
  82. lib/AvaTax/classes/BatchSvc/IsAuthorizedResponse.class.php +10 -2
  83. lib/AvaTax/classes/BatchSvc/IsAuthorizedResult.class.php +9 -1
  84. lib/AvaTax/classes/BatchSvc/Message.class.php +9 -1
  85. lib/AvaTax/classes/BatchSvc/Ping.class.php +9 -1
  86. lib/AvaTax/classes/BatchSvc/PingResponse.class.php +9 -1
  87. lib/AvaTax/classes/BatchSvc/PingResult.class.php +9 -1
  88. lib/AvaTax/classes/BatchSvc/Profile.class.php +10 -2
  89. lib/AvaTax/classes/BatchSvc/SeverityLevel.class.php +10 -2
  90. lib/AvaTax/classes/BoundaryLevel.class.php +8 -7
  91. lib/AvaTax/classes/CancelCode.class.php +7 -9
  92. lib/AvaTax/classes/CancelTaxRequest.class.php +10 -6
  93. lib/AvaTax/classes/CancelTaxResult.class.php +13 -9
  94. lib/AvaTax/classes/CommitTaxRequest.class.php +8 -5
  95. lib/AvaTax/classes/CommitTaxResult.class.php +11 -6
  96. lib/AvaTax/classes/DetailLevel.class.php +8 -6
  97. lib/AvaTax/classes/DocStatus.class.php +6 -5
  98. lib/AvaTax/classes/DocumentType.class.php +23 -10
  99. lib/AvaTax/classes/DynamicSoapClient.class.php +5 -4
  100. lib/AvaTax/classes/Enum.class.php +6 -5
  101. lib/AvaTax/classes/GetTaxHistoryRequest.class.php +7 -7
  102. lib/AvaTax/classes/GetTaxHistoryResult.class.php +7 -5
  103. lib/AvaTax/classes/GetTaxRequest.class.php +203 -165
  104. lib/AvaTax/classes/GetTaxResult.class.php +18 -7
  105. lib/AvaTax/classes/IsAuthorizedResult.class.php +6 -5
  106. lib/AvaTax/classes/JurisdictionType.class.php +7 -6
  107. lib/AvaTax/classes/Line.class.php +38 -17
  108. lib/AvaTax/classes/Message.class.php +6 -7
  109. lib/AvaTax/classes/PingResult.class.php +6 -6
  110. lib/AvaTax/classes/PostTaxRequest.class.php +10 -5
  111. lib/AvaTax/classes/PostTaxResult.class.php +11 -5
  112. lib/AvaTax/classes/ReconcileTaxHistoryRequest.class.php +13 -11
  113. lib/AvaTax/classes/ReconcileTaxHistoryResult.class.php +7 -6
  114. lib/AvaTax/classes/SearchTaxHistoryResult.class.php +7 -5
  115. lib/AvaTax/classes/ServiceMode.class.php +9 -6
  116. lib/AvaTax/classes/SeverityLevel.class.php +7 -7
  117. lib/AvaTax/classes/TaxDetail.class.php +11 -5
  118. lib/AvaTax/classes/TaxLine.class.php +6 -8
  119. lib/AvaTax/classes/TaxOverride.class.php +10 -3
  120. lib/AvaTax/classes/TaxOverrideType.class.php +11 -3
  121. lib/AvaTax/classes/TaxRequest.class.php +10 -8
  122. lib/AvaTax/classes/TaxServiceSoap.class.php +7 -10
  123. lib/AvaTax/classes/TaxType.class.php +14 -5
  124. lib/AvaTax/classes/TextCase.class.php +6 -5
  125. lib/AvaTax/classes/ValidAddress.class.php +9 -5
  126. lib/AvaTax/classes/ValidateRequest.class.php +5 -4
  127. lib/AvaTax/classes/ValidateResult.class.php +8 -6
  128. lib/AvaTax/classes/wsdl/Address.wsdl +103 -329
  129. lib/AvaTax/classes/wsdl/AvaCert2Svc.wsdl +938 -0
  130. lib/AvaTax/classes/wsdl/AvaCertSvc.wsdl +709 -0
  131. lib/AvaTax/classes/wsdl/Tax.wsdl +60 -2
  132. package.xml +8 -5
app/code/community/OnePica/AvaTax/Helper/Data.php CHANGED
@@ -24,10 +24,20 @@
24
  */
25
  class OnePica_AvaTax_Helper_Data extends Mage_Core_Helper_Abstract
26
  {
 
 
 
 
 
 
 
 
 
 
27
  /**
28
  * Identifier for error message
29
  */
30
- const CALCULATE_ERROR_MESSAGE_IDENTIFIER = 'avatax_calculate_error';
31
 
32
  /**
33
  * Check if avatax extension is enabled
@@ -272,6 +282,16 @@ class OnePica_AvaTax_Helper_Data extends Mage_Core_Helper_Abstract
272
  return (bool)$this->_getConfig('error_full_stop', $store);
273
  }
274
 
 
 
 
 
 
 
 
 
 
 
275
  /**
276
  * Adds error message if there is an error
277
  *
@@ -334,6 +354,24 @@ class OnePica_AvaTax_Helper_Data extends Mage_Core_Helper_Abstract
334
  }
335
  }
336
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
337
  /**
338
  * Does any store have this extension disabled?
339
  *
@@ -345,10 +383,8 @@ class OnePica_AvaTax_Helper_Data extends Mage_Core_Helper_Abstract
345
  $storeCollection = Mage::app()->getStores();
346
 
347
  foreach ($storeCollection as $store) {
348
- //@startSkipCommitHooks
349
  $disabled |= Mage::getStoreConfig('tax/avatax/action', $store->getId())
350
- == OnePica_AvaTax_Model_Config::ACTION_DISABLE;
351
- //@finishSkipCommitHooks
352
  }
353
 
354
  return $disabled;
@@ -363,7 +399,7 @@ class OnePica_AvaTax_Helper_Data extends Mage_Core_Helper_Abstract
363
  */
364
  public function isAddressValidationOn($address, $storeId)
365
  {
366
- if (!$this->isAddressActionable($address, $storeId)) {
367
  return false;
368
  }
369
  return Mage::getStoreConfig('tax/avatax/validate_address', $storeId);
@@ -378,7 +414,7 @@ class OnePica_AvaTax_Helper_Data extends Mage_Core_Helper_Abstract
378
  */
379
  public function isAddressNormalizationOn($address, $storeId)
380
  {
381
- if (!$this->isAddressActionable($address, $storeId)) {
382
  return false;
383
  }
384
  return Mage::getStoreConfig('tax/avatax/normalize_address', $storeId);
@@ -387,28 +423,38 @@ class OnePica_AvaTax_Helper_Data extends Mage_Core_Helper_Abstract
387
  /**
388
  * Determines if the address should be filtered
389
  *
390
- * @param Mage_Customer_Model_Address
391
- * @param int $storeId
392
- * @param int $filterMode
 
393
  * @return bool
394
  */
395
- public function isAddressActionable($address, $storeId, $filterMode = OnePica_AvaTax_Model_Config::REGIONFILTER_ALL)
396
- {
 
397
  $filter = false;
398
 
399
  if (Mage::getStoreConfig('tax/avatax/action', $storeId) == OnePica_AvaTax_Model_Config::ACTION_DISABLE) {
400
  return false;
401
  }
402
 
403
- if (Mage::getStoreConfig('tax/avatax/region_filter_mode', $storeId) >= $filterMode) {
404
- $regionFilters = explode(',', Mage::getStoreConfig('tax/avatax/region_filter_list', $storeId));
405
- if (!in_array($address->getRegionId(), $regionFilters)) {
406
- $filter = 'region';
407
- }
 
 
 
408
  }
409
 
410
- $countryFilters = explode(',', Mage::getStoreConfig('tax/avatax/country_filter_list', $storeId));
411
- if (!in_array($address->getCountryId(), $countryFilters)) {
 
 
 
 
 
412
  $filter = 'country';
413
  }
414
 
@@ -439,6 +485,108 @@ class OnePica_AvaTax_Helper_Data extends Mage_Core_Helper_Abstract
439
  return $filter ? false : true;
440
  }
441
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
442
  /**
443
  * Determines if the object (quote, invoice, or credit memo) should use AvaTax services
444
  *
24
  */
25
  class OnePica_AvaTax_Helper_Data extends Mage_Core_Helper_Abstract
26
  {
27
+ /**
28
+ * Xml path to taxable_country config
29
+ */
30
+ const XML_PATH_TO_TAX_AVATAX_TAXABLE_COUNTRY = 'tax/avatax/taxable_country';
31
+
32
+ /**
33
+ * Xml path to region_filter_mode
34
+ */
35
+ const XML_PATH_TO_TAX_AVATAX_REGION_FILTER_MODE = 'tax/avatax/region_filter_mode';
36
+
37
  /**
38
  * Identifier for error message
39
  */
40
+ const CALCULATE_ERROR_MESSAGE_IDENTIFIER = 'avatax_calculate_error';
41
 
42
  /**
43
  * Check if avatax extension is enabled
282
  return (bool)$this->_getConfig('error_full_stop', $store);
283
  }
284
 
285
+ /**
286
+ * Get address validation countries
287
+ *
288
+ * @return array
289
+ */
290
+ public function getAddressValidationCountries()
291
+ {
292
+ return explode(',', $this->_getConfig('address_validation_countries'));
293
+ }
294
+
295
  /**
296
  * Adds error message if there is an error
297
  *
354
  }
355
  }
356
 
357
+ /**
358
+ * Is AvaTax disabled.
359
+ *
360
+ * @return bool
361
+ * @throws Mage_Core_Exception
362
+ */
363
+ public function isAvaTaxDisabled()
364
+ {
365
+ $websiteId = Mage::app()->getRequest()->get('website');
366
+ $storeId = Mage::app()->getRequest()->get('store');
367
+
368
+ if ($websiteId && !$storeId) {
369
+ return !(bool)Mage::app()->getWebsite($websiteId)->getConfig('tax/avatax/action');
370
+ }
371
+
372
+ return !(bool)Mage::getStoreConfig('tax/avatax/action', $storeId);
373
+ }
374
+
375
  /**
376
  * Does any store have this extension disabled?
377
  *
383
  $storeCollection = Mage::app()->getStores();
384
 
385
  foreach ($storeCollection as $store) {
 
386
  $disabled |= Mage::getStoreConfig('tax/avatax/action', $store->getId())
387
+ == OnePica_AvaTax_Model_Config::ACTION_DISABLE;
 
388
  }
389
 
390
  return $disabled;
399
  */
400
  public function isAddressValidationOn($address, $storeId)
401
  {
402
+ if (!$this->isAddressActionable($address, $storeId, OnePica_AvaTax_Model_Config::REGIONFILTER_ALL, true)) {
403
  return false;
404
  }
405
  return Mage::getStoreConfig('tax/avatax/validate_address', $storeId);
414
  */
415
  public function isAddressNormalizationOn($address, $storeId)
416
  {
417
+ if (!$this->isAddressActionable($address, $storeId, OnePica_AvaTax_Model_Config::REGIONFILTER_ALL, true)) {
418
  return false;
419
  }
420
  return Mage::getStoreConfig('tax/avatax/normalize_address', $storeId);
423
  /**
424
  * Determines if the address should be filtered
425
  *
426
+ * @param Mage_Customer_Model_Address $address
427
+ * @param int $storeId
428
+ * @param int $filterMode
429
+ * @param bool $isAddressValidation
430
  * @return bool
431
  */
432
+ public function isAddressActionable($address, $storeId, $filterMode = OnePica_AvaTax_Model_Config::REGIONFILTER_ALL,
433
+ $isAddressValidation = false
434
+ ) {
435
  $filter = false;
436
 
437
  if (Mage::getStoreConfig('tax/avatax/action', $storeId) == OnePica_AvaTax_Model_Config::ACTION_DISABLE) {
438
  return false;
439
  }
440
 
441
+ if ($this->getRegionFilterModByStore($storeId) >= $filterMode) {
442
+ $filter = $this->_getFilterRegion($address, $storeId);
443
+ }
444
+
445
+ if ($isAddressValidation && $filter
446
+ && ((int)$this->getRegionFilterModByStore($storeId) !== OnePica_AvaTax_Model_Config::REGIONFILTER_ALL)
447
+ ) {
448
+ $filter = false;
449
  }
450
 
451
+ if (!in_array($address->getCountryId(), $this->getTaxableCountryByStore($storeId))) {
452
+ $filter = 'country';
453
+ }
454
+
455
+ if ($isAddressValidation && !$filter
456
+ && !in_array($address->getCountryId(), $this->getAddressValidationCountries($storeId))
457
+ ) {
458
  $filter = 'country';
459
  }
460
 
485
  return $filter ? false : true;
486
  }
487
 
488
+ /**
489
+ * Get region filter
490
+ *
491
+ * @param Mage_Customer_Model_Address $address
492
+ * @param int $storeId
493
+ * @return string|bool
494
+ */
495
+ protected function _getFilterRegion($address, $storeId)
496
+ {
497
+ $filter = false;
498
+ $regionFilters = explode(',', Mage::getStoreConfig('tax/avatax/region_filter_list', $storeId));
499
+ $entityId = $address->getRegionId() ?: $address->getCountryId();
500
+ if (!in_array($entityId, $regionFilters)) {
501
+ $filter = 'region';
502
+ }
503
+ return $filter;
504
+ }
505
+
506
+ /**
507
+ * Get taxable country by store
508
+ *
509
+ * @param int $storeId
510
+ * @return array
511
+ */
512
+ public function getTaxableCountryByStore($storeId = null)
513
+ {
514
+ return explode(',', Mage::getStoreConfig(self::XML_PATH_TO_TAX_AVATAX_TAXABLE_COUNTRY, $storeId));
515
+ }
516
+
517
+ /**
518
+ * Get taxable country by website
519
+ *
520
+ * @param int $websiteId
521
+ * @return array
522
+ */
523
+ public function getTaxableCountryByWebSite($websiteId)
524
+ {
525
+ return explode(',', Mage::app()
526
+ ->getWebsite($websiteId)
527
+ ->getConfig(self::XML_PATH_TO_TAX_AVATAX_TAXABLE_COUNTRY)
528
+ );
529
+ }
530
+
531
+ /**
532
+ * Get taxable country by current scope
533
+ *
534
+ * Used in admin panel
535
+ *
536
+ * @return array
537
+ */
538
+ public function getTaxableCountryByCurrentScope()
539
+ {
540
+ $websiteId = Mage::app()->getRequest()->get('website');
541
+ $storeId = Mage::app()->getRequest()->get('store');
542
+ if ($websiteId && !$storeId) {
543
+ return $this->getTaxableCountryByWebSite($websiteId);
544
+ }
545
+ return $this->getTaxableCountryByStore($storeId);
546
+ }
547
+
548
+ /**
549
+ * Get region filter mod by store
550
+ *
551
+ * @param null|int $storeId
552
+ * @return int
553
+ * @internal param int $store
554
+ */
555
+ public function getRegionFilterModByStore($storeId = null)
556
+ {
557
+ return Mage::getStoreConfig(self::XML_PATH_TO_TAX_AVATAX_REGION_FILTER_MODE, $storeId);
558
+ }
559
+
560
+ /**
561
+ * Get region filter mod by website
562
+ *
563
+ * @param int $websiteId
564
+ * @return int
565
+ * @throws \Mage_Core_Exception
566
+ */
567
+ public function getRegionFilterModByWebsite($websiteId)
568
+ {
569
+ return Mage::app()->getWebsite($websiteId)->getConfig(self::XML_PATH_TO_TAX_AVATAX_REGION_FILTER_MODE);
570
+ }
571
+
572
+ /**
573
+ * Get region filter mode by current scope
574
+ *
575
+ * @throws \Mage_Core_Exception
576
+ * @return int
577
+ */
578
+ public function getRegionFilterModByCurrentScope()
579
+ {
580
+ $websiteId = Mage::app()->getRequest()->get('website');
581
+ $storeId = Mage::app()->getRequest()->get('store');
582
+
583
+ if ($websiteId && !$storeId) {
584
+ return $this->getRegionFilterModByWebsite($websiteId);
585
+ }
586
+
587
+ return $this->getRegionFilterModByStore($storeId);
588
+ }
589
+
590
  /**
591
  * Determines if the object (quote, invoice, or credit memo) should use AvaTax services
592
  *
app/code/community/OnePica/AvaTax/Model/Admin/Session.php CHANGED
@@ -33,6 +33,7 @@ class OnePica_AvaTax_Model_Admin_Session extends Mage_Admin_Model_Session
33
  * @param string $resource
34
  * @param string $privilege
35
  * @return boolean
 
36
  */
37
  public function isAllowed($resource, $privilege = null)
38
  {
@@ -42,10 +43,20 @@ class OnePica_AvaTax_Model_Admin_Session extends Mage_Admin_Model_Session
42
  'admin/sales/tax/import_export'
43
  );
44
 
45
- if (in_array($resource, $block) && !Mage::helper('avatax')->isAnyStoreDisabled()) {
46
  return false;
47
- } else {
48
- return parent::isAllowed($resource, $privilege);
49
  }
 
 
 
 
 
 
 
 
 
 
 
 
50
  }
51
  }
33
  * @param string $resource
34
  * @param string $privilege
35
  * @return boolean
36
+ * @throws Mage_Core_Exception
37
  */
38
  public function isAllowed($resource, $privilege = null)
39
  {
43
  'admin/sales/tax/import_export'
44
  );
45
 
46
+ if (in_array($resource, $block) && !$this->_getDataHelper()->isAnyStoreDisabled()) {
47
  return false;
 
 
48
  }
49
+
50
+ return parent::isAllowed($resource, $privilege);
51
+ }
52
+
53
+ /**
54
+ * Get data helper
55
+ *
56
+ * @return OnePica_AvaTax_Helper_Data
57
+ */
58
+ protected function _getDataHelper()
59
+ {
60
+ return Mage::helper('avatax');
61
  }
62
  }
app/code/community/OnePica/AvaTax/Model/Adminhtml/Config.php CHANGED
@@ -28,17 +28,18 @@ class OnePica_AvaTax_Model_Adminhtml_Config extends Mage_Adminhtml_Model_Config
28
  * Init modules configuration
29
  *
30
  * @return $this
 
31
  */
32
  protected function _initSectionsAndTabs()
33
  {
34
- if (Mage::helper('avatax')->isAnyStoreDisabled()) {
35
  $config = Mage::getConfig()->loadModulesConfiguration('system.xml')
36
  ->applyExtends();
37
 
38
  Mage::dispatchEvent('adminhtml_init_system_config', array('config' => $config));
39
 
40
  //these 4 lines are the only added content
41
- $configFile = Mage::helper('avatax')->getEtcPath() . DS . 'system-disabled.xml';
42
  /** @var Mage_Core_Model_Config_Base $mergeModel */
43
  $mergeModel = Mage::getModel('core/config_base');
44
  $mergeModel->loadFile($configFile);
@@ -51,4 +52,14 @@ class OnePica_AvaTax_Model_Adminhtml_Config extends Mage_Adminhtml_Model_Config
51
 
52
  return $this;
53
  }
 
 
 
 
 
 
 
 
 
 
54
  }
28
  * Init modules configuration
29
  *
30
  * @return $this
31
+ * @throws Mage_Core_Exception
32
  */
33
  protected function _initSectionsAndTabs()
34
  {
35
+ if ($this->_getDataHelper()->isAvaTaxDisabled()) {
36
  $config = Mage::getConfig()->loadModulesConfiguration('system.xml')
37
  ->applyExtends();
38
 
39
  Mage::dispatchEvent('adminhtml_init_system_config', array('config' => $config));
40
 
41
  //these 4 lines are the only added content
42
+ $configFile = $this->_getDataHelper()->getEtcPath() . DS . 'system-disabled.xml';
43
  /** @var Mage_Core_Model_Config_Base $mergeModel */
44
  $mergeModel = Mage::getModel('core/config_base');
45
  $mergeModel->loadFile($configFile);
52
 
53
  return $this;
54
  }
55
+
56
+ /**
57
+ * Get data helper
58
+ *
59
+ * @return \OnePica_AvaTax_Helper_Data
60
+ */
61
+ protected function _getDataHelper()
62
+ {
63
+ return Mage::helper('avatax');
64
+ }
65
  }
app/code/community/OnePica/AvaTax/Model/Avatax/Abstract.php CHANGED
@@ -34,7 +34,7 @@ abstract class OnePica_AvaTax_Model_Avatax_Abstract extends OnePica_AvaTax_Model
34
  /**
35
  * The request data object
36
  *
37
- * @var mixed
38
  */
39
  protected $_request = null;
40
 
@@ -65,6 +65,33 @@ abstract class OnePica_AvaTax_Model_Avatax_Abstract extends OnePica_AvaTax_Model
65
  return $this;
66
  }
67
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
68
  /**
69
  * Sends a request to the Avatax server
70
  *
@@ -124,6 +151,7 @@ abstract class OnePica_AvaTax_Model_Avatax_Abstract extends OnePica_AvaTax_Model
124
  {
125
  $storeId = $object->getStoreId();
126
  $this->_setCompanyCode($storeId);
 
127
  $this->_request->setDetailLevel(DetailLevel::$Document);
128
  $this->_request->setDocDate($this->_getDateModel()->date('Y-m-d'));
129
  $this->_request->setExemptionNo('');
@@ -139,6 +167,47 @@ abstract class OnePica_AvaTax_Model_Avatax_Abstract extends OnePica_AvaTax_Model
139
  return $this;
140
  }
141
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
142
  /**
143
  * Sets the customer info if available
144
  *
@@ -302,10 +371,11 @@ abstract class OnePica_AvaTax_Model_Avatax_Abstract extends OnePica_AvaTax_Model
302
  /**
303
  * Init tax class collection for items to be calculated
304
  *
 
305
  * @return $this
306
  * @throws OnePica_AvaTax_Exception
307
  */
308
- protected function _initTaxClassCollection()
309
  {
310
  $taxClassIds = array();
311
  foreach ($this->_getProductCollection() as $product) {
@@ -313,8 +383,12 @@ abstract class OnePica_AvaTax_Model_Avatax_Abstract extends OnePica_AvaTax_Model
313
  $taxClassIds[] = $product->getTaxClassId();
314
  }
315
  }
 
 
 
 
 
316
  $this->_taxClassCollection = Mage::getModel('tax/class')->getCollection()
317
- ->addFieldToSelect(array('class_id', 'op_avatax_code'))
318
  ->addFieldToFilter('class_id', array('in' => $taxClassIds));
319
 
320
  return $this;
@@ -419,6 +493,33 @@ abstract class OnePica_AvaTax_Model_Avatax_Abstract extends OnePica_AvaTax_Model
419
  return $taxOverride;
420
  }
421
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
422
  /**
423
  * Get date model
424
  *
34
  /**
35
  * The request data object
36
  *
37
+ * @var GetTaxRequest
38
  */
39
  protected $_request = null;
40
 
65
  return $this;
66
  }
67
 
68
+ /**
69
+ * Get gift wrapping tax class id
70
+ *
71
+ * @param Mage_Sales_Model_Order_Invoice|Mage_Sales_Model_Order_Creditmemo|Mage_Sales_Model_Quote_Address $object
72
+ * @return int
73
+ */
74
+ protected function _getGwTaxClassId($object)
75
+ {
76
+ if (Mage::getEdition() !== Mage::EDITION_ENTERPRISE) {
77
+ return 0;
78
+ }
79
+ if (!$object->getGwPrice()
80
+ && !$object->getGwItemsPrice()
81
+ && !$object->getGwPrintedCardPrice()
82
+ ) {
83
+ return 0;
84
+ }
85
+
86
+ if ($object instanceof Mage_Sales_Model_Quote_Address) {
87
+ $storeId = $object->getQuote()->getStoreId();
88
+ } else {
89
+ $storeId = $object->getStoreId();
90
+ }
91
+
92
+ return $this->_getGiftWrappingDataHelper()->getWrappingTaxClass($storeId);
93
+ }
94
+
95
  /**
96
  * Sends a request to the Avatax server
97
  *
151
  {
152
  $storeId = $object->getStoreId();
153
  $this->_setCompanyCode($storeId);
154
+ $this->_request->setBusinessIdentificationNo($this->_getVatId($object));
155
  $this->_request->setDetailLevel(DetailLevel::$Document);
156
  $this->_request->setDocDate($this->_getDateModel()->date('Y-m-d'));
157
  $this->_request->setExemptionNo('');
167
  return $this;
168
  }
169
 
170
+ /**
171
+ * Retrieve Vat Id
172
+ *
173
+ * @param Mage_Sales_Model_Order|OnePica_AvaTax_Model_Sales_Quote_Address $object
174
+ * @return string
175
+ */
176
+ protected function _getVatId($object)
177
+ {
178
+ if ($object instanceof Mage_Sales_Model_Order) {
179
+ return $this->_getVatIdByOrder($object);
180
+ }
181
+ return $this->_getVatIdByQuoteAddress($object);
182
+ }
183
+
184
+ /**
185
+ * Retrieve Vat Id from quote address
186
+ *
187
+ * @param OnePica_AvaTax_Model_Sales_Quote_Address $address
188
+ * @return string
189
+ */
190
+ protected function _getVatIdByQuoteAddress($address)
191
+ {
192
+ return $address->getQuote()->getShippingAddress()->getVatId()
193
+ ?: $address->getQuote()->getBillingAddress()->getVatId();
194
+ }
195
+
196
+ /**
197
+ * Retrieve Vat Id from order
198
+ *
199
+ * @param Mage_Sales_Model_Order $order
200
+ * @return string
201
+ */
202
+ protected function _getVatIdByOrder($order)
203
+ {
204
+ $shippingAddress = $order->getShippingAddress();
205
+ if ($shippingAddress && $shippingAddress->getVatId()) {
206
+ return $shippingAddress->getVatId();
207
+ }
208
+ return $order->getBillingAddress()->getVatId();
209
+ }
210
+
211
  /**
212
  * Sets the customer info if available
213
  *
371
  /**
372
  * Init tax class collection for items to be calculated
373
  *
374
+ * @param Mage_Sales_Model_Order_Invoice|Mage_Sales_Model_Order_Creditmemo|Mage_Sales_Model_Quote_Address $object
375
  * @return $this
376
  * @throws OnePica_AvaTax_Exception
377
  */
378
+ protected function _initTaxClassCollection($object)
379
  {
380
  $taxClassIds = array();
381
  foreach ($this->_getProductCollection() as $product) {
383
  $taxClassIds[] = $product->getTaxClassId();
384
  }
385
  }
386
+ $gwTaxClassId = (int)$this->_getGwTaxClassId($object);
387
+
388
+ if (0 !== $gwTaxClassId) {
389
+ $taxClassIds[] = $gwTaxClassId;
390
+ }
391
  $this->_taxClassCollection = Mage::getModel('tax/class')->getCollection()
 
392
  ->addFieldToFilter('class_id', array('in' => $taxClassIds));
393
 
394
  return $this;
493
  return $taxOverride;
494
  }
495
 
496
+ /**
497
+ * Get gift tax class
498
+ *
499
+ * @return string
500
+ */
501
+ protected function _getGiftTaxClass()
502
+ {
503
+ $taxClass = '';
504
+ if ($this->_gwTaxClassId) {
505
+ $taxClass = $this->_getTaxClassCollection()
506
+ ->getItemById($this->_gwTaxClassId)
507
+ ->getOpAvataxCode();
508
+ }
509
+
510
+ return $taxClass;
511
+ }
512
+
513
+ /**
514
+ * Get gift wrapping data helper
515
+ *
516
+ * @return \Enterprise_GiftWrapping_Helper_Data
517
+ */
518
+ protected function _getGiftWrappingDataHelper()
519
+ {
520
+ return Mage::helper('enterprise_giftwrapping');
521
+ }
522
+
523
  /**
524
  * Get date model
525
  *
app/code/community/OnePica/AvaTax/Model/Avatax/Estimate.php CHANGED
@@ -65,6 +65,13 @@ class OnePica_AvaTax_Model_Avatax_Estimate extends OnePica_AvaTax_Model_Avatax_A
65
  */
66
  protected $_lineToLineId = array();
67
 
 
 
 
 
 
 
 
68
  /**
69
  * Loads any saved rates in session
70
  */
@@ -99,6 +106,19 @@ class OnePica_AvaTax_Model_Avatax_Estimate extends OnePica_AvaTax_Model_Avatax_A
99
  }
100
  }
101
 
 
 
 
 
 
 
 
 
 
 
 
 
 
102
  /**
103
  * Estimates tax amount for one item. Does not trigger a call if the shipping
104
  * address has no postal code, or if the postal code is set to "-" (OneStepCheckout)
@@ -180,7 +200,6 @@ class OnePica_AvaTax_Model_Avatax_Estimate extends OnePica_AvaTax_Model_Avatax_A
180
  $this->_addShipping($address);
181
  //Added code for calculating tax for giftwrap items
182
  $this->_addGwOrderAmount($address);
183
- $this->_addGwItemsAmount($address);
184
  $this->_addGwPrintedCardAmount($address);
185
  //check to see if we can/need to make the request to Avalara
186
  $requestKey = $this->_genRequestKey();
@@ -197,6 +216,7 @@ class OnePica_AvaTax_Model_Avatax_Estimate extends OnePica_AvaTax_Model_Avatax_A
197
  $result = $this->_send($address->getQuote()->getStoreId());
198
 
199
  //success
 
200
  if ($result->getResultCode() == SeverityLevel::$Success) {
201
  $this->_rates[$requestKey] = array(
202
  'timestamp' => $this->_getDateModel()->timestamp(),
@@ -206,10 +226,12 @@ class OnePica_AvaTax_Model_Avatax_Estimate extends OnePica_AvaTax_Model_Avatax_A
206
  );
207
 
208
  foreach ($result->getTaxLines() as $ctl) {
 
209
  $id = $this->_lineToLineId[$ctl->getNo()];
210
  $this->_rates[$requestKey]['items'][$id] = array(
211
- 'rate' => ($ctl->getTax() ? $ctl->getRate() : 0) * 100,
212
- 'amt' => $ctl->getTax()
 
213
  );
214
  }
215
 
@@ -262,7 +284,7 @@ class OnePica_AvaTax_Model_Avatax_Estimate extends OnePica_AvaTax_Model_Avatax_A
262
  protected function _addShipping($address)
263
  {
264
  $lineNumber = count($this->_lines);
265
- $storeId = Mage::app()->getStore()->getId();
266
  $taxClass = Mage::helper('tax')->getShippingTaxClass($storeId);
267
  $shippingAmount = (float) $address->getBaseShippingAmount();
268
 
@@ -285,7 +307,7 @@ class OnePica_AvaTax_Model_Avatax_Estimate extends OnePica_AvaTax_Model_Avatax_A
285
  /**
286
  * Adds giftwraporder cost to request as item
287
  *
288
- * @param Mage_Sales_Model_Quote_Address
289
  * @return int|bool
290
  */
291
  protected function _addGwOrderAmount($address)
@@ -294,7 +316,7 @@ class OnePica_AvaTax_Model_Avatax_Estimate extends OnePica_AvaTax_Model_Avatax_A
294
  return false;
295
  }
296
  $lineNumber = count($this->_lines);
297
- $storeId = Mage::app()->getStore()->getId();
298
  //Add gift wrapping price(for entire order)
299
  $gwOrderAmount = $address->getGwBasePrice();
300
 
@@ -303,7 +325,7 @@ class OnePica_AvaTax_Model_Avatax_Estimate extends OnePica_AvaTax_Model_Avatax_A
303
  $gwOrderSku = Mage::helper('avatax')->getGwOrderSku($storeId);
304
  $line->setItemCode($gwOrderSku ? $gwOrderSku : 'GwOrderAmount');
305
  $line->setDescription('Gift Wrap Order Amount');
306
- $line->setTaxCode('');
307
  $line->setQty(1);
308
  $line->setAmount($gwOrderAmount);
309
  $line->setDiscounted(false);
@@ -317,25 +339,25 @@ class OnePica_AvaTax_Model_Avatax_Estimate extends OnePica_AvaTax_Model_Avatax_A
317
  /**
318
  * Adds giftwrapitems cost to request as item
319
  *
320
- * @param Mage_Sales_Model_Quote
321
  * @return int|bool
322
  */
323
- protected function _addGwItemsAmount($address)
324
  {
325
- if (!$address->getGwItemsPrice()) {
326
  return false;
327
  }
328
  $lineNumber = count($this->_lines);
329
- $storeId = Mage::app()->getStore()->getId();
330
  //Add gift wrapping price(for individual items)
331
- $gwItemsAmount = $address->getGwItemsBasePrice();
332
 
333
  $line = new Line();
334
  $line->setNo($lineNumber);
335
  $gwItemsSku = Mage::helper('avatax')->getGwItemsSku($storeId);
336
  $line->setItemCode($gwItemsSku ? $gwItemsSku : 'GwItemsAmount');
337
  $line->setDescription('Gift Wrap Items Amount');
338
- $line->setTaxCode('');
339
  $line->setQty(1);
340
  $line->setAmount($gwItemsAmount);
341
  $line->setDiscounted(false);
@@ -343,6 +365,7 @@ class OnePica_AvaTax_Model_Avatax_Estimate extends OnePica_AvaTax_Model_Avatax_A
343
  $this->_lines[$lineNumber] = $line;
344
  $this->_request->setLines($this->_lines);
345
  $this->_lineToLineId[$lineNumber] = Mage::helper('avatax')->getGwItemsSku($storeId);
 
346
  return $lineNumber;
347
  }
348
 
@@ -358,7 +381,7 @@ class OnePica_AvaTax_Model_Avatax_Estimate extends OnePica_AvaTax_Model_Avatax_A
358
  return false;
359
  }
360
  $lineNumber = count($this->_lines);
361
- $storeId = Mage::app()->getStore()->getId();
362
  //Add printed card price
363
  $gwPrintedCardAmount = $address->getGwPrintedCardBasePrice();
364
 
@@ -367,7 +390,7 @@ class OnePica_AvaTax_Model_Avatax_Estimate extends OnePica_AvaTax_Model_Avatax_A
367
  $gwPrintedCardSku = Mage::helper('avatax')->getGwPrintedCardSku($storeId);
368
  $line->setItemCode($gwPrintedCardSku ? $gwPrintedCardSku : 'GwPrintedCardAmount');
369
  $line->setDescription('Gift Wrap Printed Card Amount');
370
- $line->setTaxCode('');
371
  $line->setQty(1);
372
  $line->setAmount($gwPrintedCardAmount);
373
  $line->setDiscounted(false);
@@ -381,7 +404,7 @@ class OnePica_AvaTax_Model_Avatax_Estimate extends OnePica_AvaTax_Model_Avatax_A
381
  /**
382
  * Adds all items in the cart to the request
383
  *
384
- * @param Mage_Sales_Model_Quote_item|Mage_Sales_Model_Quote_Address_item
385
  * @return int
386
  */
387
  protected function _addItemsInCart($item)
@@ -396,12 +419,16 @@ class OnePica_AvaTax_Model_Avatax_Estimate extends OnePica_AvaTax_Model_Avatax_A
396
 
397
  if (count($items) > 0) {
398
  $this->_initProductCollection($items);
399
- $this->_initTaxClassCollection();
400
  foreach ($items as $item) {
401
- $this->_newLine($item);
 
 
 
402
  }
403
  $this->_request->setLines($this->_lines);
404
  }
 
405
  return count($this->_lines);
406
  }
407
 
@@ -443,4 +470,22 @@ class OnePica_AvaTax_Model_Avatax_Estimate extends OnePica_AvaTax_Model_Avatax_A
443
  $this->_lineToLineId[$lineNumber] = $item->getId();
444
  return $lineNumber;
445
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
446
  }
65
  */
66
  protected $_lineToLineId = array();
67
 
68
+ /**
69
+ * Product gift pair
70
+ *
71
+ * @var array
72
+ */
73
+ protected $_productGiftPair = array();
74
+
75
  /**
76
  * Loads any saved rates in session
77
  */
106
  }
107
  }
108
 
109
+ /**
110
+ * Get item tax
111
+ *
112
+ * @param Mage_Sales_Model_Quote_Item $item
113
+ * @return int
114
+ */
115
+ public function getItemGiftTax($item)
116
+ {
117
+ $key = $this->_getRates($item);
118
+ $id = $item->getId();
119
+ return isset($this->_rates[$key]['items'][$id]['gift_tax']) ? $this->_rates[$key]['items'][$id]['gift_tax'] : 0;
120
+ }
121
+
122
  /**
123
  * Estimates tax amount for one item. Does not trigger a call if the shipping
124
  * address has no postal code, or if the postal code is set to "-" (OneStepCheckout)
200
  $this->_addShipping($address);
201
  //Added code for calculating tax for giftwrap items
202
  $this->_addGwOrderAmount($address);
 
203
  $this->_addGwPrintedCardAmount($address);
204
  //check to see if we can/need to make the request to Avalara
205
  $requestKey = $this->_genRequestKey();
216
  $result = $this->_send($address->getQuote()->getStoreId());
217
 
218
  //success
219
+ /** @var GetTaxResult $result */
220
  if ($result->getResultCode() == SeverityLevel::$Success) {
221
  $this->_rates[$requestKey] = array(
222
  'timestamp' => $this->_getDateModel()->timestamp(),
226
  );
227
 
228
  foreach ($result->getTaxLines() as $ctl) {
229
+ $giftLineTax = $this->_getGiftTax($ctl, $result);
230
  $id = $this->_lineToLineId[$ctl->getNo()];
231
  $this->_rates[$requestKey]['items'][$id] = array(
232
+ 'rate' => ($ctl->getTax() ? $ctl->getRate() : 0) * 100,
233
+ 'amt' => $ctl->getTax(),
234
+ 'gift_tax' => $giftLineTax
235
  );
236
  }
237
 
284
  protected function _addShipping($address)
285
  {
286
  $lineNumber = count($this->_lines);
287
+ $storeId = $address->getQuote()->getStore()->getId();
288
  $taxClass = Mage::helper('tax')->getShippingTaxClass($storeId);
289
  $shippingAmount = (float) $address->getBaseShippingAmount();
290
 
307
  /**
308
  * Adds giftwraporder cost to request as item
309
  *
310
+ * @param Mage_Sales_Model_Quote_Address $address
311
  * @return int|bool
312
  */
313
  protected function _addGwOrderAmount($address)
316
  return false;
317
  }
318
  $lineNumber = count($this->_lines);
319
+ $storeId = $address->getQuote()->getStore()->getId();
320
  //Add gift wrapping price(for entire order)
321
  $gwOrderAmount = $address->getGwBasePrice();
322
 
325
  $gwOrderSku = Mage::helper('avatax')->getGwOrderSku($storeId);
326
  $line->setItemCode($gwOrderSku ? $gwOrderSku : 'GwOrderAmount');
327
  $line->setDescription('Gift Wrap Order Amount');
328
+ $line->setTaxCode($this->_getGiftTaxClass());
329
  $line->setQty(1);
330
  $line->setAmount($gwOrderAmount);
331
  $line->setDiscounted(false);
339
  /**
340
  * Adds giftwrapitems cost to request as item
341
  *
342
+ * @param Mage_Sales_Model_Quote_Item $item
343
  * @return int|bool
344
  */
345
+ protected function _addGwItemsAmount($item)
346
  {
347
+ if (!$item->getGwPrice()) {
348
  return false;
349
  }
350
  $lineNumber = count($this->_lines);
351
+ $storeId = $item->getQuote()->getStoreId();
352
  //Add gift wrapping price(for individual items)
353
+ $gwItemsAmount = $item->getGwBasePrice();
354
 
355
  $line = new Line();
356
  $line->setNo($lineNumber);
357
  $gwItemsSku = Mage::helper('avatax')->getGwItemsSku($storeId);
358
  $line->setItemCode($gwItemsSku ? $gwItemsSku : 'GwItemsAmount');
359
  $line->setDescription('Gift Wrap Items Amount');
360
+ $line->setTaxCode($this->_getGiftTaxClass());
361
  $line->setQty(1);
362
  $line->setAmount($gwItemsAmount);
363
  $line->setDiscounted(false);
365
  $this->_lines[$lineNumber] = $line;
366
  $this->_request->setLines($this->_lines);
367
  $this->_lineToLineId[$lineNumber] = Mage::helper('avatax')->getGwItemsSku($storeId);
368
+
369
  return $lineNumber;
370
  }
371
 
381
  return false;
382
  }
383
  $lineNumber = count($this->_lines);
384
+ $storeId = $address->getQuote()->getStore()->getId();
385
  //Add printed card price
386
  $gwPrintedCardAmount = $address->getGwPrintedCardBasePrice();
387
 
390
  $gwPrintedCardSku = Mage::helper('avatax')->getGwPrintedCardSku($storeId);
391
  $line->setItemCode($gwPrintedCardSku ? $gwPrintedCardSku : 'GwPrintedCardAmount');
392
  $line->setDescription('Gift Wrap Printed Card Amount');
393
+ $line->setTaxCode($this->_getGiftTaxClass());
394
  $line->setQty(1);
395
  $line->setAmount($gwPrintedCardAmount);
396
  $line->setDiscounted(false);
404
  /**
405
  * Adds all items in the cart to the request
406
  *
407
+ * @param Mage_Sales_Model_Quote_item|Mage_Sales_Model_Quote_Address_item $item
408
  * @return int
409
  */
410
  protected function _addItemsInCart($item)
419
 
420
  if (count($items) > 0) {
421
  $this->_initProductCollection($items);
422
+ $this->_initTaxClassCollection($item->getAddress());
423
  foreach ($items as $item) {
424
+ $productLineNumber = $this->_newLine($item);
425
+ if (is_int($productLineNumber)) {
426
+ $this->_productGiftPair[$productLineNumber] = $this->_addGwItemsAmount($item);
427
+ }
428
  }
429
  $this->_request->setLines($this->_lines);
430
  }
431
+
432
  return count($this->_lines);
433
  }
434
 
470
  $this->_lineToLineId[$lineNumber] = $item->getId();
471
  return $lineNumber;
472
  }
473
+
474
+ /**
475
+ * Retrieve gift tax from line
476
+ *
477
+ * @param Line $ctl
478
+ * @param GetTaxResult $result
479
+ * @return null|float
480
+ */
481
+ protected function _getGiftTax($ctl, $result)
482
+ {
483
+ $giftLineTax = null;
484
+ if (isset($this->_productGiftPair[$ctl->getNo()]) && is_int($this->_productGiftPair[$ctl->getNo()])) {
485
+ $giftNo = $this->_productGiftPair[$ctl->getNo()];
486
+ $giftLineTax = $result->getTaxLine($giftNo)->getTax();
487
+ }
488
+
489
+ return $giftLineTax;
490
+ }
491
  }
app/code/community/OnePica/AvaTax/Model/Avatax/Invoice.php CHANGED
@@ -67,6 +67,9 @@ class OnePica_AvaTax_Model_Avatax_Invoice extends OnePica_AvaTax_Model_Avatax_Ab
67
 
68
  $this->_addGeneralInfo($order);
69
  $this->_addShipping($invoice);
 
 
 
70
  //Added code for calculating tax for giftwrap items
71
  $this->_addGwOrderAmount($invoice);
72
  $this->_addGwItemsAmount($invoice);
@@ -84,9 +87,6 @@ class OnePica_AvaTax_Model_Avatax_Invoice extends OnePica_AvaTax_Model_Avatax_Ab
84
  $commitAction = OnePica_AvaTax_Model_Config::ACTION_CALC_SUBMIT_COMMIT;
85
  $this->_request->setCommit(($configAction == $commitAction) ? true : false);
86
 
87
- $items = $invoice->getItemsCollection();
88
- $this->_initProductCollection($items);
89
- $this->_initTaxClassCollection();
90
  foreach ($items as $item) {
91
  /** @var Mage_Sales_Model_Order_Invoice_Item $item */
92
  $this->_newLine($item);
@@ -148,12 +148,20 @@ class OnePica_AvaTax_Model_Avatax_Invoice extends OnePica_AvaTax_Model_Avatax_Ab
148
 
149
  $this->_addGeneralInfo($order);
150
  $this->_addShipping($creditmemo, true);
151
- //Added code for calculating tax for giftwrap items
152
- $this->_addGwOrderAmount($creditmemo);
153
- $this->_addGwItemsAmount($creditmemo);
154
- $this->_addGwPrintedCardAmount($creditmemo);
155
 
156
- $this->_addAdjustments($creditmemo->getAdjustmentPositive(), $creditmemo->getAdjustmentNegative());
 
 
 
 
 
 
 
 
 
 
 
 
157
  $this->_setOriginAddress($order->getStoreId());
158
  $this->_setDestinationAddress($shippingAddress);
159
 
@@ -173,9 +181,6 @@ class OnePica_AvaTax_Model_Avatax_Invoice extends OnePica_AvaTax_Model_Avatax_Ab
173
  $commitAction = OnePica_AvaTax_Model_Config::ACTION_CALC_SUBMIT_COMMIT;
174
  $this->_request->setCommit(($configAction == $commitAction) ? true : false);
175
 
176
- $items = $creditmemo->getAllItems();
177
- $this->_initProductCollection($items);
178
- $this->_initTaxClassCollection();
179
  foreach ($items as $item) {
180
  /** @var Mage_Sales_Model_Order_Creditmemo_Item $item */
181
  $this->_newLine($item, true);
@@ -221,7 +226,7 @@ class OnePica_AvaTax_Model_Avatax_Invoice extends OnePica_AvaTax_Model_Avatax_Ab
221
  }
222
 
223
  $lineNumber = count($this->_lines);
224
- $storeId = Mage::app()->getStore()->getId();
225
  $taxClass = Mage::helper('tax')->getShippingTaxClass($storeId);
226
 
227
  $amount = $object->getBaseShippingAmount();
@@ -260,8 +265,7 @@ class OnePica_AvaTax_Model_Avatax_Invoice extends OnePica_AvaTax_Model_Avatax_Ab
260
  }
261
 
262
  $lineNumber = count($this->_lines);
263
- $storeId = Mage::app()->getStore()->getId();
264
-
265
  $amount = $object->getGwBasePrice();
266
  if ($credit) {
267
  //@startSkipCommitHooks
@@ -273,7 +277,7 @@ class OnePica_AvaTax_Model_Avatax_Invoice extends OnePica_AvaTax_Model_Avatax_Ab
273
  $line->setNo($lineNumber);
274
  $line->setItemCode(Mage::helper('avatax')->getGwOrderSku($storeId));
275
  $line->setDescription('Gift Wrap Order Amount');
276
- $line->setTaxCode('');
277
  $line->setQty(1);
278
  $line->setAmount($amount);
279
  $line->setDiscounted(false);
@@ -298,7 +302,7 @@ class OnePica_AvaTax_Model_Avatax_Invoice extends OnePica_AvaTax_Model_Avatax_Ab
298
  }
299
 
300
  $lineNumber = count($this->_lines);
301
- $storeId = Mage::app()->getStore()->getId();
302
 
303
  $amount = $object->getGwItemsBasePrice();
304
  if ($credit) {
@@ -311,7 +315,7 @@ class OnePica_AvaTax_Model_Avatax_Invoice extends OnePica_AvaTax_Model_Avatax_Ab
311
  $line->setNo($lineNumber);
312
  $line->setItemCode(Mage::helper('avatax')->getGwItemsSku($storeId));
313
  $line->setDescription('Gift Wrap Items Amount');
314
- $line->setTaxCode('');
315
  $line->setQty(1);
316
  $line->setAmount($amount);
317
  $line->setDiscounted(false);
@@ -336,7 +340,7 @@ class OnePica_AvaTax_Model_Avatax_Invoice extends OnePica_AvaTax_Model_Avatax_Ab
336
  }
337
 
338
  $lineNumber = count($this->_lines);
339
- $storeId = Mage::app()->getStore()->getId();
340
 
341
  $amount = $object->getGwPrintedCardBasePrice();
342
  if ($credit) {
@@ -349,7 +353,7 @@ class OnePica_AvaTax_Model_Avatax_Invoice extends OnePica_AvaTax_Model_Avatax_Ab
349
  $line->setNo($lineNumber);
350
  $line->setItemCode(Mage::helper('avatax')->getGwPrintedCardSku($storeId));
351
  $line->setDescription('Gift Wrap Printed Card Amount');
352
- $line->setTaxCode('');
353
  $line->setQty(1);
354
  $line->setAmount($amount);
355
  $line->setDiscounted(false);
@@ -365,12 +369,11 @@ class OnePica_AvaTax_Model_Avatax_Invoice extends OnePica_AvaTax_Model_Avatax_Ab
365
  *
366
  * @param float $positive
367
  * @param float $negative
 
368
  * @return array
369
  */
370
- protected function _addAdjustments($positive, $negative)
371
  {
372
- $storeId = Mage::app()->getStore()->getId();
373
-
374
  if ($positive != 0) {
375
  $lineNumber = count($this->_lines);
376
  $identifier = Mage::helper('avatax')->getPositiveAdjustmentSku($storeId);
67
 
68
  $this->_addGeneralInfo($order);
69
  $this->_addShipping($invoice);
70
+ $items = $invoice->getItemsCollection();
71
+ $this->_initProductCollection($items);
72
+ $this->_initTaxClassCollection($invoice);
73
  //Added code for calculating tax for giftwrap items
74
  $this->_addGwOrderAmount($invoice);
75
  $this->_addGwItemsAmount($invoice);
87
  $commitAction = OnePica_AvaTax_Model_Config::ACTION_CALC_SUBMIT_COMMIT;
88
  $this->_request->setCommit(($configAction == $commitAction) ? true : false);
89
 
 
 
 
90
  foreach ($items as $item) {
91
  /** @var Mage_Sales_Model_Order_Invoice_Item $item */
92
  $this->_newLine($item);
148
 
149
  $this->_addGeneralInfo($order);
150
  $this->_addShipping($creditmemo, true);
 
 
 
 
151
 
152
+ $items = $creditmemo->getAllItems();
153
+ $this->_initProductCollection($items);
154
+ $this->_initTaxClassCollection($creditmemo);
155
+ //Added code for calculating tax for giftwrap items
156
+ $this->_addGwOrderAmount($creditmemo, true);
157
+ $this->_addGwItemsAmount($creditmemo, true);
158
+ $this->_addGwPrintedCardAmount($creditmemo, true);
159
+
160
+ $this->_addAdjustments(
161
+ $creditmemo->getAdjustmentPositive(),
162
+ $creditmemo->getAdjustmentNegative(),
163
+ $order->getStoreId()
164
+ );
165
  $this->_setOriginAddress($order->getStoreId());
166
  $this->_setDestinationAddress($shippingAddress);
167
 
181
  $commitAction = OnePica_AvaTax_Model_Config::ACTION_CALC_SUBMIT_COMMIT;
182
  $this->_request->setCommit(($configAction == $commitAction) ? true : false);
183
 
 
 
 
184
  foreach ($items as $item) {
185
  /** @var Mage_Sales_Model_Order_Creditmemo_Item $item */
186
  $this->_newLine($item, true);
226
  }
227
 
228
  $lineNumber = count($this->_lines);
229
+ $storeId = $object->getStore()->getId();
230
  $taxClass = Mage::helper('tax')->getShippingTaxClass($storeId);
231
 
232
  $amount = $object->getBaseShippingAmount();
265
  }
266
 
267
  $lineNumber = count($this->_lines);
268
+ $storeId = $object->getStore()->getId();
 
269
  $amount = $object->getGwBasePrice();
270
  if ($credit) {
271
  //@startSkipCommitHooks
277
  $line->setNo($lineNumber);
278
  $line->setItemCode(Mage::helper('avatax')->getGwOrderSku($storeId));
279
  $line->setDescription('Gift Wrap Order Amount');
280
+ $line->setTaxCode($this->_getGiftTaxClass());
281
  $line->setQty(1);
282
  $line->setAmount($amount);
283
  $line->setDiscounted(false);
302
  }
303
 
304
  $lineNumber = count($this->_lines);
305
+ $storeId = $object->getStore()->getId();
306
 
307
  $amount = $object->getGwItemsBasePrice();
308
  if ($credit) {
315
  $line->setNo($lineNumber);
316
  $line->setItemCode(Mage::helper('avatax')->getGwItemsSku($storeId));
317
  $line->setDescription('Gift Wrap Items Amount');
318
+ $line->setTaxCode($this->_getGiftTaxClass());
319
  $line->setQty(1);
320
  $line->setAmount($amount);
321
  $line->setDiscounted(false);
340
  }
341
 
342
  $lineNumber = count($this->_lines);
343
+ $storeId = $object->getStore()->getId();
344
 
345
  $amount = $object->getGwPrintedCardBasePrice();
346
  if ($credit) {
353
  $line->setNo($lineNumber);
354
  $line->setItemCode(Mage::helper('avatax')->getGwPrintedCardSku($storeId));
355
  $line->setDescription('Gift Wrap Printed Card Amount');
356
+ $line->setTaxCode($this->_getGiftTaxClass());
357
  $line->setQty(1);
358
  $line->setAmount($amount);
359
  $line->setDiscounted(false);
369
  *
370
  * @param float $positive
371
  * @param float $negative
372
+ * @param int $storeId
373
  * @return array
374
  */
375
+ protected function _addAdjustments($positive, $negative, $storeId)
376
  {
 
 
377
  if ($positive != 0) {
378
  $lineNumber = count($this->_lines);
379
  $identifier = Mage::helper('avatax')->getPositiveAdjustmentSku($storeId);
app/code/community/OnePica/AvaTax/Model/Observer.php CHANGED
@@ -92,13 +92,8 @@ class OnePica_AvaTax_Model_Observer extends Mage_Core_Model_Abstract
92
  /** @var Mage_Sales_Model_Order_Invoice $invoice */
93
  $invoice = $observer->getEvent()->getInvoice();
94
 
95
- $existingInvoiceInQueue = Mage::getModel('avatax_records/queue')
96
- ->loadInvoiceByIncrementId($invoice->getIncrementId());
97
- if ($existingInvoiceInQueue->getId()) {
98
- return $this;
99
- }
100
-
101
- if (!$invoice->getOrigData($invoice->getIdFieldName())
102
  && Mage::helper('avatax')->isObjectActionable($invoice)
103
  ) {
104
  Mage::getModel('avatax_records/queue')
@@ -291,8 +286,9 @@ class OnePica_AvaTax_Model_Observer extends Mage_Core_Model_Abstract
291
  'It appears that Magento\'s cron scheduler is not running. For more information, see %s.',
292
  '<a href="http://www.magentocommerce.com/wiki/how_to_setup_a_cron_job" target="_black">How to Set Up a Cron Job</a>'
293
  );
294
-
295
- return $warnings;
 
296
  }
297
 
298
  return $warnings;
@@ -482,4 +478,38 @@ class OnePica_AvaTax_Model_Observer extends Mage_Core_Model_Abstract
482
 
483
  return $errors;
484
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
485
  }
92
  /** @var Mage_Sales_Model_Order_Invoice $invoice */
93
  $invoice = $observer->getEvent()->getInvoice();
94
 
95
+ if ((int)$invoice->getOrigData('state') !== Mage_Sales_Model_Order_Invoice::STATE_PAID
96
+ && (int)$invoice->getState() === Mage_Sales_Model_Order_Invoice::STATE_PAID
 
 
 
 
 
97
  && Mage::helper('avatax')->isObjectActionable($invoice)
98
  ) {
99
  Mage::getModel('avatax_records/queue')
286
  'It appears that Magento\'s cron scheduler is not running. For more information, see %s.',
287
  '<a href="http://www.magentocommerce.com/wiki/how_to_setup_a_cron_job" target="_black">How to Set Up a Cron Job</a>'
288
  );
289
+ }
290
+ if ($this->_isRegionFilterAll() && $this->_canNotBeAddressValidated()) {
291
+ $warnings[] = Mage::helper('avatax')->__('Please be aware that address validation will not work for addresses outside United States and Canada');
292
  }
293
 
294
  return $warnings;
478
 
479
  return $errors;
480
  }
481
+
482
+ /**
483
+ * Is region filter all mod
484
+ *
485
+ * @return bool
486
+ */
487
+ protected function _isRegionFilterAll()
488
+ {
489
+ return (int)$this->_getDataHelper()->getRegionFilterModByCurrentScope()
490
+ === OnePica_AvaTax_Model_Config::REGIONFILTER_ALL;
491
+ }
492
+
493
+ /**
494
+ * Can not be address validated
495
+ *
496
+ * @return array
497
+ */
498
+ protected function _canNotBeAddressValidated()
499
+ {
500
+ return (bool)array_diff(
501
+ $this->_getDataHelper()->getTaxableCountryByCurrentScope(),
502
+ $this->_getDataHelper()->getAddressValidationCountries()
503
+ );
504
+ }
505
+
506
+ /**
507
+ * Get data helper
508
+ *
509
+ * @return OnePica_AvaTax_Helper_Data
510
+ */
511
+ protected function _getDataHelper()
512
+ {
513
+ return Mage::helper('avatax');
514
+ }
515
  }
app/code/community/OnePica/AvaTax/Model/Sales/Quote/Address/Total/Tax.php CHANGED
@@ -61,9 +61,14 @@ class OnePica_AvaTax_Model_Sales_Quote_Address_Total_Tax extends Mage_Sales_Mode
61
 
62
  //Added check for calculating tax for regions filtered in the admin
63
  if ($this->_isAddressActionable($address)) {
 
64
  foreach ($address->getAllItems() as $item) {
65
  $item->setAddress($address);
66
  $baseAmount = $calculator->getItemTax($item);
 
 
 
 
67
  $amount = Mage::app()->getStore()->convertPrice($baseAmount);
68
  $percent = $calculator->getItemRate($item);
69
 
@@ -71,6 +76,9 @@ class OnePica_AvaTax_Model_Sales_Quote_Address_Total_Tax extends Mage_Sales_Mode
71
  $item->setBaseTaxAmount($baseAmount);
72
  $item->setTaxPercent($percent);
73
 
 
 
 
74
  $item->setPriceInclTax($item->getPrice() + ($amount / $item->getQty()));
75
  $item->setBasePriceInclTax($item->getBasePrice() + ($baseAmount / $item->getQty()));
76
  $item->setRowTotalInclTax($item->getRowTotal() + $amount);
@@ -79,6 +87,8 @@ class OnePica_AvaTax_Model_Sales_Quote_Address_Total_Tax extends Mage_Sales_Mode
79
  if (!$calculator->isProductCalculated($item)) {
80
  $this->_addAmount($amount);
81
  $this->_addBaseAmount($baseAmount);
 
 
82
  }
83
  }
84
 
@@ -114,28 +124,13 @@ class OnePica_AvaTax_Model_Sales_Quote_Address_Total_Tax extends Mage_Sales_Mode
114
  $baseGwOrderTax = $calculator->getItemTax($gwOrderItem);
115
  $gwOrderTax = Mage::app()->getStore()->convertPrice($baseGwOrderTax);
116
 
117
- $address->setGwBaseTaxAmount($address->getGwBasePrice() + $baseGwOrderTax);
118
- $address->setGwTaxAmount($address->getGwPrice() + $gwOrderTax);
119
 
120
  $this->_addAmount($gwOrderTax);
121
  $this->_addBaseAmount($baseGwOrderTax);
122
  }
123
 
124
- if ($address->getGwItemsPrice() > 0) {
125
- $gwIndividualItem = new Varien_Object();
126
- $gwIndividualItem->setId(Mage::helper('avatax')->getGwItemsSku($store->getId()));
127
- $gwIndividualItem->setProductId(Mage::helper('avatax')->getGwItemsSku($store->getId()));
128
- $gwIndividualItem->setAddress($address);
129
- $baseGwItemsTax = $calculator->getItemTax($gwIndividualItem);
130
- $gwItemsTax = Mage::app()->getStore()->convertPrice($baseGwItemsTax);
131
-
132
- $address->setGwItemsBaseTaxAmount($address->getGwItemsBasePrice() + $baseGwItemsTax);
133
- $address->setGwItemsTaxAmount($address->getGwItemsPrice() + $gwItemsTax);
134
-
135
- $this->_addAmount($gwItemsTax);
136
- $this->_addBaseAmount($baseGwItemsTax);
137
- }
138
-
139
  if ($address->getGwAddPrintedCard()) {
140
  $gwPrintedCardItem = new Varien_Object();
141
  $gwPrintedCardItem->setId(Mage::helper('avatax')->getGwPrintedCardSku($store->getId()));
61
 
62
  //Added check for calculating tax for regions filtered in the admin
63
  if ($this->_isAddressActionable($address)) {
64
+ /** @var Mage_Sales_Model_Quote_Item $item */
65
  foreach ($address->getAllItems() as $item) {
66
  $item->setAddress($address);
67
  $baseAmount = $calculator->getItemTax($item);
68
+
69
+ $giftBaseTaxAmount = $calculator->getItemGiftTax($item);
70
+ $giftTaxAmount = Mage::app()->getStore()->convertPrice($giftBaseTaxAmount);
71
+
72
  $amount = Mage::app()->getStore()->convertPrice($baseAmount);
73
  $percent = $calculator->getItemRate($item);
74
 
76
  $item->setBaseTaxAmount($baseAmount);
77
  $item->setTaxPercent($percent);
78
 
79
+ $item->setGwBaseTaxAmount($giftBaseTaxAmount);
80
+ $item->setGwTaxAmount($giftTaxAmount);
81
+
82
  $item->setPriceInclTax($item->getPrice() + ($amount / $item->getQty()));
83
  $item->setBasePriceInclTax($item->getBasePrice() + ($baseAmount / $item->getQty()));
84
  $item->setRowTotalInclTax($item->getRowTotal() + $amount);
87
  if (!$calculator->isProductCalculated($item)) {
88
  $this->_addAmount($amount);
89
  $this->_addBaseAmount($baseAmount);
90
+ $this->_addAmount($giftTaxAmount);
91
+ $this->_addBaseAmount($giftBaseTaxAmount);
92
  }
93
  }
94
 
124
  $baseGwOrderTax = $calculator->getItemTax($gwOrderItem);
125
  $gwOrderTax = Mage::app()->getStore()->convertPrice($baseGwOrderTax);
126
 
127
+ $address->setGwBaseTaxAmount($baseGwOrderTax);
128
+ $address->setGwTaxAmount($gwOrderTax);
129
 
130
  $this->_addAmount($gwOrderTax);
131
  $this->_addBaseAmount($baseGwOrderTax);
132
  }
133
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
134
  if ($address->getGwAddPrintedCard()) {
135
  $gwPrintedCardItem = new Varien_Object();
136
  $gwPrintedCardItem->setId(Mage::helper('avatax')->getGwPrintedCardSku($store->getId()));
app/code/community/OnePica/AvaTax/Model/Source/Regionfilter/List.php CHANGED
@@ -38,38 +38,98 @@ class OnePica_AvaTax_Model_Source_Regionfilter_List
38
  *
39
  * @var array
40
  */
41
- protected $_options;
42
 
43
  /**
44
  * Get option array
45
  *
 
46
  * @return array
47
  */
48
  public function toOptionArray()
49
  {
50
- if (!$this->_options) {
51
- $countries = array('US', 'CA');
52
- $this->_options = array();
 
 
 
53
 
 
 
 
 
 
 
 
 
 
 
54
  $this->_options[] = array(
55
- 'label' => '',
56
- 'value' => ''
57
  );
 
58
 
59
- foreach ($countries as $country) {
60
- $regions = Mage::getResourceModel('directory/region_collection')
61
- ->addCountryFilter($country)
62
- ->loadData()
63
- ->toOptionArray();
64
- array_shift($regions);
65
 
66
- $this->_options[] = array(
67
- 'label' => Mage::app()->getLocale()->getCountryTranslation($country),
68
- 'value' => $regions
69
- );
70
- }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
71
  }
72
 
73
- return $this->_options;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
74
  }
75
  }
38
  *
39
  * @var array
40
  */
41
+ protected $_options = array();
42
 
43
  /**
44
  * Get option array
45
  *
46
+ * @throws Mage_Core_Model_Store_Exception
47
  * @return array
48
  */
49
  public function toOptionArray()
50
  {
51
+ if ($this->_options) {
52
+ return $this->_options;
53
+ }
54
+ $this->_initOptions();
55
+ return $this->_options;
56
+ }
57
 
58
+ /**
59
+ * Options initializations
60
+ *
61
+ * @throws Mage_Core_Model_Store_Exception
62
+ * @return $this
63
+ */
64
+ protected function _initOptions()
65
+ {
66
+ foreach ($this->_getCountryList() as $country) {
67
+ $regions = $this->_prepareRegionList($country);
68
  $this->_options[] = array(
69
+ 'label' => Mage::app()->getLocale()->getCountryTranslation($country),
70
+ 'value' => $regions
71
  );
72
+ }
73
 
74
+ return $this;
75
+ }
 
 
 
 
76
 
77
+ /**
78
+ * Get regions by country
79
+ *
80
+ * @param string $country
81
+ * @return array
82
+ */
83
+ protected function _getRegionsByCountry($country)
84
+ {
85
+ return Mage::getResourceModel('directory/region_collection')
86
+ ->addCountryFilter($country)
87
+ ->loadData()
88
+ ->toOptionArray();
89
+ }
90
+
91
+ /**
92
+ * Prepare region list.
93
+ *
94
+ * If magento, don't have region list for selected country,
95
+ * instead region list we add a 'All' option with country code value
96
+ *
97
+ * @param string $country
98
+ * @return array
99
+ */
100
+ protected function _prepareRegionList($country)
101
+ {
102
+ $regions = $this->_getRegionsByCountry($country);
103
+ array_shift($regions);
104
+ if (!$regions) {
105
+ $regions[] = array(
106
+ 'title' => 'All',
107
+ 'label' => 'All',
108
+ 'value' => $country
109
+ );
110
  }
111
 
112
+ return $regions;
113
+ }
114
+
115
+ /**
116
+ * Get country list
117
+ *
118
+ * @throws Mage_Core_Model_Store_Exception
119
+ * @return array
120
+ */
121
+ protected function _getCountryList()
122
+ {
123
+ return $this->_getDataHelper()->getTaxableCountryByCurrentScope();
124
+ }
125
+
126
+ /**
127
+ * Get data helper
128
+ *
129
+ * @return OnePica_AvaTax_Helper_Data
130
+ */
131
+ protected function _getDataHelper()
132
+ {
133
+ return Mage::helper('avatax');
134
  }
135
  }
app/code/community/OnePica/AvaTax/Model/Total/Quote/Tax/Giftwrapping.php ADDED
@@ -0,0 +1,49 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * OnePica_AvaTax
4
+ *
5
+ * NOTICE OF LICENSE
6
+ *
7
+ * This source file is subject to the Open Software License (OSL 3.0), a
8
+ * copy of which is available through the world-wide-web at this URL:
9
+ * http://opensource.org/licenses/osl-3.0.php
10
+ *
11
+ * @category OnePica
12
+ * @package OnePica_AvaTax
13
+ * @author OnePica Codemaster <codemaster@onepica.com>
14
+ * @copyright Copyright (c) 2009 One Pica, Inc.
15
+ * @license http://opensource.org/licenses/osl-3.0.php Open Software License (OSL 3.0)
16
+ */
17
+
18
+ /**
19
+ * Class OnePica_AvaTax_Model_Total_Quote_Tax_Giftwrapping
20
+ */
21
+ class OnePica_AvaTax_Model_Total_Quote_Tax_Giftwrapping
22
+ extends Enterprise_GiftWrapping_Model_Total_Quote_Tax_Giftwrapping
23
+ {
24
+ /**
25
+ * Collect gift wrapping tax totals
26
+ *
27
+ * @param \Mage_Sales_Model_Quote_Address $address
28
+ * @return $this
29
+ */
30
+ public function collect(Mage_Sales_Model_Quote_Address $address)
31
+ {
32
+ $storeId = $address->getQuote()->getStore()->getId();
33
+ if ($this->_getAvaTaxDataHelper()->isAvataxEnabled($storeId)) {
34
+ return $this;
35
+ }
36
+
37
+ return parent::collect($address);
38
+ }
39
+
40
+ /**
41
+ * Get avatax data helper
42
+ *
43
+ * @return OnePica_AvaTax_Helper_Data
44
+ */
45
+ protected function _getAvaTaxDataHelper()
46
+ {
47
+ return Mage::helper('avatax');
48
+ }
49
+ }
app/code/community/OnePica/AvaTax/etc/config.xml CHANGED
@@ -19,7 +19,7 @@
19
  <config>
20
  <modules>
21
  <OnePica_AvaTax>
22
- <version>2.5.2.0</version>
23
  </OnePica_AvaTax>
24
  </modules>
25
  <global>
@@ -64,6 +64,11 @@
64
  <config>OnePica_AvaTax_Model_Tax_Config</config>
65
  </rewrite>
66
  </tax>
 
 
 
 
 
67
  </models>
68
  <helpers>
69
  <avatax>
@@ -256,6 +261,10 @@
256
  <title>AvaTax Order Sync Queue</title>
257
  <action>avatax/adminhtml_grid/queue</action>
258
  </avatax_queue>
 
 
 
 
259
  </children>
260
  </tax>
261
  </children>
@@ -280,7 +289,8 @@
280
  <action>0</action>
281
  <url>https://avatax.avalara.net/</url>
282
  <region_filter_mode>0</region_filter_mode>
283
- <country_filter_list>CA,US</country_filter_list>
 
284
  <log_status>1</log_status>
285
  <log_lifetime>3</log_lifetime>
286
  <queue_success_lifetime>7</queue_success_lifetime>
19
  <config>
20
  <modules>
21
  <OnePica_AvaTax>
22
+ <version>2.6.0.4</version>
23
  </OnePica_AvaTax>
24
  </modules>
25
  <global>
64
  <config>OnePica_AvaTax_Model_Tax_Config</config>
65
  </rewrite>
66
  </tax>
67
+ <enterprise_giftwrapping>
68
+ <rewrite>
69
+ <total_quote_tax_giftwrapping>OnePica_AvaTax_Model_Total_Quote_Tax_Giftwrapping</total_quote_tax_giftwrapping>
70
+ </rewrite>
71
+ </enterprise_giftwrapping>
72
  </models>
73
  <helpers>
74
  <avatax>
261
  <title>AvaTax Order Sync Queue</title>
262
  <action>avatax/adminhtml_grid/queue</action>
263
  </avatax_queue>
264
+ <avatax_log translate="title" module="avatax">
265
+ <title>AvaTax Log</title>
266
+ <action>avatax/adminhtml_grid/log</action>
267
+ </avatax_log>
268
  </children>
269
  </tax>
270
  </children>
289
  <action>0</action>
290
  <url>https://avatax.avalara.net/</url>
291
  <region_filter_mode>0</region_filter_mode>
292
+ <taxable_country>CA,US</taxable_country>
293
+ <address_validation_countries>CA,US</address_validation_countries>
294
  <log_status>1</log_status>
295
  <log_lifetime>3</log_lifetime>
296
  <queue_success_lifetime>7</queue_success_lifetime>
app/code/community/OnePica/AvaTax/etc/system-disabled.xml CHANGED
@@ -25,7 +25,7 @@
25
  <shipping_tax_class>
26
  <show_in_default>1</show_in_default>
27
  <show_in_website>1</show_in_website>
28
- <show_in_store>1</show_in_store>
29
  </shipping_tax_class>
30
  </fields>
31
  </classes>
@@ -34,33 +34,38 @@
34
  <based_on>
35
  <show_in_default>1</show_in_default>
36
  <show_in_website>1</show_in_website>
37
- <show_in_store>1</show_in_store>
38
  </based_on>
39
  <price_includes_tax>
40
  <show_in_default>1</show_in_default>
41
  <show_in_website>1</show_in_website>
42
- <show_in_store>1</show_in_store>
43
  </price_includes_tax>
44
  <shipping_includes_tax>
45
  <show_in_default>1</show_in_default>
46
  <show_in_website>1</show_in_website>
47
- <show_in_store>1</show_in_store>
48
  </shipping_includes_tax>
49
  <apply_after_discount>
50
  <show_in_default>1</show_in_default>
51
  <show_in_website>1</show_in_website>
52
- <show_in_store>1</show_in_store>
53
  </apply_after_discount>
54
  <discount_tax>
55
  <show_in_default>1</show_in_default>
56
  <show_in_website>1</show_in_website>
57
- <show_in_store>1</show_in_store>
58
  </discount_tax>
59
  <apply_tax_on>
60
  <show_in_default>1</show_in_default>
61
  <show_in_website>1</show_in_website>
62
- <show_in_store>1</show_in_store>
63
  </apply_tax_on>
 
 
 
 
 
64
  </fields>
65
  </calculation>
66
  <defaults>
@@ -73,16 +78,28 @@
73
  </postcode>
74
  </fields>
75
  </defaults>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
76
  <sales_display>
77
- <display>
78
- <fields>
79
- <full_summary>
80
- <show_in_default>1</show_in_default>
81
- <show_in_website>1</show_in_website>
82
- <show_in_store>1</show_in_store>
83
- </full_summary>
84
- </fields>
85
- </display>
86
  </sales_display>
87
  </groups>
88
  </tax>
25
  <shipping_tax_class>
26
  <show_in_default>1</show_in_default>
27
  <show_in_website>1</show_in_website>
28
+ <show_in_store>0</show_in_store>
29
  </shipping_tax_class>
30
  </fields>
31
  </classes>
34
  <based_on>
35
  <show_in_default>1</show_in_default>
36
  <show_in_website>1</show_in_website>
37
+ <show_in_store>0</show_in_store>
38
  </based_on>
39
  <price_includes_tax>
40
  <show_in_default>1</show_in_default>
41
  <show_in_website>1</show_in_website>
42
+ <show_in_store>0</show_in_store>
43
  </price_includes_tax>
44
  <shipping_includes_tax>
45
  <show_in_default>1</show_in_default>
46
  <show_in_website>1</show_in_website>
47
+ <show_in_store>0</show_in_store>
48
  </shipping_includes_tax>
49
  <apply_after_discount>
50
  <show_in_default>1</show_in_default>
51
  <show_in_website>1</show_in_website>
52
+ <show_in_store>0</show_in_store>
53
  </apply_after_discount>
54
  <discount_tax>
55
  <show_in_default>1</show_in_default>
56
  <show_in_website>1</show_in_website>
57
+ <show_in_store>0</show_in_store>
58
  </discount_tax>
59
  <apply_tax_on>
60
  <show_in_default>1</show_in_default>
61
  <show_in_website>1</show_in_website>
62
+ <show_in_store>0</show_in_store>
63
  </apply_tax_on>
64
+ <algorithm>
65
+ <show_in_default>1</show_in_default>
66
+ <show_in_website>1</show_in_website>
67
+ <show_in_store>0</show_in_store>
68
+ </algorithm>
69
  </fields>
70
  </calculation>
71
  <defaults>
78
  </postcode>
79
  </fields>
80
  </defaults>
81
+ <display>
82
+ <fields>
83
+ <type>
84
+ <show_in_default>1</show_in_default>
85
+ <show_in_website>1</show_in_website>
86
+ <show_in_store>1</show_in_store>
87
+ </type>
88
+ <shipping>
89
+ <show_in_default>1</show_in_default>
90
+ <show_in_website>1</show_in_website>
91
+ <show_in_store>1</show_in_store>
92
+ </shipping>
93
+ </fields>
94
+ </display>
95
  <sales_display>
96
+ <fields>
97
+ <full_summary>
98
+ <show_in_default>1</show_in_default>
99
+ <show_in_website>1</show_in_website>
100
+ <show_in_store>1</show_in_store>
101
+ </full_summary>
102
+ </fields>
 
 
103
  </sales_display>
104
  </groups>
105
  </tax>
app/code/community/OnePica/AvaTax/etc/system.xml CHANGED
@@ -82,34 +82,40 @@
82
  <show_in_website>1</show_in_website>
83
  <show_in_store>1</show_in_store>
84
  </company_code>
85
- <region_filter_mode translate="label">
 
 
 
 
 
 
 
 
 
 
86
  <label>Filter Requests by Region</label>
 
87
  <frontend_type>select</frontend_type>
88
  <source_model>avatax/source_regionfilter_mode</source_model>
89
- <sort_order>60</sort_order>
90
  <show_in_default>1</show_in_default>
91
  <show_in_website>1</show_in_website>
92
  <show_in_store>1</show_in_store>
93
  </region_filter_mode>
94
  <region_filter_list translate="label comment">
95
- <label></label>
96
- <comment><![CDATA[Select regions to use AvaTax services. Ignored if <em>Filter Requests by Region</em> is set to <em>None</em>.]]></comment>
97
  <frontend_type>multiselect</frontend_type>
98
  <source_model>avatax/source_regionfilter_list</source_model>
99
- <sort_order>70</sort_order>
100
  <show_in_default>1</show_in_default>
101
  <show_in_website>1</show_in_website>
102
  <show_in_store>1</show_in_store>
 
 
 
 
 
103
  </region_filter_list>
104
- <country_filter_list>
105
- <frontend_type>multiselect</frontend_type>
106
- <source_model>adminhtml/system_config_source_country</source_model>
107
- <sort_order>80</sort_order>
108
- <show_in_default>0</show_in_default>
109
- <show_in_website>0</show_in_website>
110
- <show_in_store>0</show_in_store>
111
- </country_filter_list>
112
-
113
  <title_debug_settings translate="label">
114
  <label><![CDATA[<strong>Log &amp; Queue Settings</strong>]]></label>
115
  <frontend_type>label</frontend_type>
@@ -210,7 +216,7 @@
210
  <show_in_website>1</show_in_website>
211
  <show_in_store>1</show_in_store>
212
  </gw_order_sku>
213
- <gw_items_sku translate="label comment">
214
  <label>Gift Wrap Items Sku</label>
215
  <comment>Required. The sku sent to denote gift wrap items costs.</comment>
216
  <frontend_type>text</frontend_type>
82
  <show_in_website>1</show_in_website>
83
  <show_in_store>1</show_in_store>
84
  </company_code>
85
+ <taxable_country translate="label">
86
+ <label>Taxable Country</label>
87
+ <comment>Address validation option works only for United States and Canada</comment>
88
+ <frontend_type>multiselect</frontend_type>
89
+ <source_model>adminhtml/system_config_source_country</source_model>
90
+ <sort_order>60</sort_order>
91
+ <show_in_default>1</show_in_default>
92
+ <show_in_website>1</show_in_website>
93
+ <show_in_store>1</show_in_store>
94
+ </taxable_country>
95
+ <region_filter_mode translate="label comment">
96
  <label>Filter Requests by Region</label>
97
+ <comment>Re-save settings if Taxable Country was changed to use this option.</comment>
98
  <frontend_type>select</frontend_type>
99
  <source_model>avatax/source_regionfilter_mode</source_model>
100
+ <sort_order>70</sort_order>
101
  <show_in_default>1</show_in_default>
102
  <show_in_website>1</show_in_website>
103
  <show_in_store>1</show_in_store>
104
  </region_filter_mode>
105
  <region_filter_list translate="label comment">
106
+ <comment>Select regions to use AvaTax services.</comment>
 
107
  <frontend_type>multiselect</frontend_type>
108
  <source_model>avatax/source_regionfilter_list</source_model>
109
+ <sort_order>80</sort_order>
110
  <show_in_default>1</show_in_default>
111
  <show_in_website>1</show_in_website>
112
  <show_in_store>1</show_in_store>
113
+ <depends>
114
+ <region_filter_mode separator="|">
115
+ <value>1|2</value>
116
+ </region_filter_mode>
117
+ </depends>
118
  </region_filter_list>
 
 
 
 
 
 
 
 
 
119
  <title_debug_settings translate="label">
120
  <label><![CDATA[<strong>Log &amp; Queue Settings</strong>]]></label>
121
  <frontend_type>label</frontend_type>
216
  <show_in_website>1</show_in_website>
217
  <show_in_store>1</show_in_store>
218
  </gw_order_sku>
219
+ <gw_items_sku translate="label comment">
220
  <label>Gift Wrap Items Sku</label>
221
  <comment>Required. The sku sent to denote gift wrap items costs.</comment>
222
  <frontend_type>text</frontend_type>
lib/AvaTax/AvaTax.php CHANGED
@@ -17,7 +17,11 @@ function __autoload($class_name)
17
  if(!file_exists($path))
18
  {
19
  $path=dirname(__FILE__).'/classes/BatchSvc/'.$class_name . '.class.php';
20
-
 
 
 
 
21
  }
22
 
23
  require_once $path;
@@ -93,4 +97,9 @@ function getCurrentDate()
93
  {
94
  $dateTime=new DateTime();
95
  return $dateTime->format("Y-m-d");
96
- }
 
 
 
 
 
17
  if(!file_exists($path))
18
  {
19
  $path=dirname(__FILE__).'/classes/BatchSvc/'.$class_name . '.class.php';
20
+ }
21
+
22
+ if(!file_exists($path))
23
+ {
24
+ $path=dirname(__FILE__).'/classes/AvaCert2Svc/'.$class_name . '.class.php';
25
  }
26
 
27
  require_once $path;
97
  {
98
  $dateTime=new DateTime();
99
  return $dateTime->format("Y-m-d");
100
+ }
101
+
102
+
103
+
104
+
105
+ ?>
lib/AvaTax/classes/ATConfig.class.php CHANGED
@@ -1,8 +1,6 @@
1
  <?php
2
  /**
3
  * ATConfig.class.php
4
- *
5
- * @package Base
6
  */
7
 
8
  /**
@@ -10,7 +8,9 @@
10
  *
11
  * {@link AddressServiceSoap} and {@link TaxServiceSoap} read this file during initialization.
12
  *
13
- * @package Base
 
 
14
  */
15
 
16
  class ATConfig
@@ -55,13 +55,19 @@ new ATConfig('Default', array(
55
  'addressService' => '/Address/AddressSvc.asmx',
56
  'taxService' => '/Tax/TaxSvc.asmx',
57
  'batchService'=> '/Batch/BatchSvc.asmx',
 
58
  'addressWSDL' => 'file://'.$__wsdldir.'/Address.wsdl',
59
  'taxWSDL' => 'file://'.$__wsdldir.'/Tax.wsdl',
60
  'batchWSDL' => 'file://'.$__wsdldir.'/BatchSvc.wsdl',
 
61
  'account' => '<your account number here>',
62
  'license' => '<your license key here>',
63
- 'adapter' => 'avatax4php,5.7.3.0',
64
  'client' => 'AvalaraPHPInterface,1.0',
65
- 'name' => 'PHPAdapter',
66
  'trace' => true) // change to false for production
67
  );
 
 
 
 
1
  <?php
2
  /**
3
  * ATConfig.class.php
 
 
4
  */
5
 
6
  /**
8
  *
9
  * {@link AddressServiceSoap} and {@link TaxServiceSoap} read this file during initialization.
10
  *
11
+ * @author Avalara
12
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
13
+ * @package Base
14
  */
15
 
16
  class ATConfig
55
  'addressService' => '/Address/AddressSvc.asmx',
56
  'taxService' => '/Tax/TaxSvc.asmx',
57
  'batchService'=> '/Batch/BatchSvc.asmx',
58
+ 'avacert2Service'=> '/AvaCert2/AvaCert2Svc.asmx',
59
  'addressWSDL' => 'file://'.$__wsdldir.'/Address.wsdl',
60
  'taxWSDL' => 'file://'.$__wsdldir.'/Tax.wsdl',
61
  'batchWSDL' => 'file://'.$__wsdldir.'/BatchSvc.wsdl',
62
+ 'avacert2WSDL' => 'file://'.$__wsdldir.'/AvaCert2Svc.wsdl',
63
  'account' => '<your account number here>',
64
  'license' => '<your license key here>',
65
+ 'adapter' => 'avatax4php,14.2.0.0',
66
  'client' => 'AvalaraPHPInterface,1.0',
67
+ 'name' => '13.7.0.0',
68
  'trace' => true) // change to false for production
69
  );
70
+
71
+
72
+
73
+ ?>
lib/AvaTax/classes/ATObject.class.php CHANGED
@@ -1,14 +1,14 @@
1
  <?php
2
  /**
3
  * ATObject.class.php
4
- *
5
- * @package Base
6
  */
7
 
8
  /**
9
  * Generic Dynamic Object
10
  *
11
- * @package Base
 
 
12
  */
13
  class ATObject
14
  {
@@ -50,4 +50,6 @@ class ATObject
50
  }
51
  }
52
  public function ivars() { return $this->_ivars; }
53
- }
 
 
1
  <?php
2
  /**
3
  * ATObject.class.php
 
 
4
  */
5
 
6
  /**
7
  * Generic Dynamic Object
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Base
12
  */
13
  class ATObject
14
  {
50
  }
51
  }
52
  public function ivars() { return $this->_ivars; }
53
+ }
54
+
55
+ ?>
lib/AvaTax/classes/AVObject.class.php DELETED
@@ -1 +0,0 @@
1
-
 
lib/AvaTax/classes/Address.class.php CHANGED
@@ -1,8 +1,6 @@
1
  <?php
2
  /**
3
  * Address.class.php
4
- *
5
- * @package Address
6
  */
7
 
8
  /**
@@ -21,15 +19,16 @@
21
  * $address->setCity("Bainbridge Is");
22
  * $address->setRegion("WA");
23
  * $address->setPostalCode("98110-2450");
24
- *
 
25
  * $result = $port->validate($address,TextCase::$Upper);
26
  * $addresses = $result->ValidAddresses;
27
  * print("Number of addresses returned is ". sizseof($addresses));
28
  *
29
  * </pre>
30
- * @package Address
31
- * @author tblanchard
32
- * Copyright (c) 2007, Avalara. All rights reserved.
33
  */
34
 
35
  class Address
@@ -44,7 +43,9 @@ class Address
44
  private $PostalCode;
45
  private $Country = 'USA';
46
  private $TaxRegionId = 0;
47
-
 
 
48
  /**
49
  * Construct a new Address.
50
  *
@@ -61,9 +62,11 @@ class Address
61
  * @param string $postalCode
62
  * @param string $country
63
  * @param integer $taxRegionId
 
 
64
  */
65
 
66
- public function __construct($line1=null,$line2=null,$line3=null,$city=null,$region=null,$postalCode=null,$country='USA',$taxRegionId=0)
67
  {
68
  $this->Line1 = $line1;
69
  $this->Line2 = $line2;
@@ -73,6 +76,8 @@ class Address
73
  $this->PostalCode = $postalCode;
74
  $this->Country = $country;
75
  $this->TaxRegionId = $taxRegionId;
 
 
76
  }
77
 
78
  /**
@@ -140,6 +145,23 @@ class Address
140
  */
141
  public function setTaxRegionId($value) { $this->TaxRegionId = $value; }
142
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
143
  /**
144
  * Programmatically determined value used internally by the adapter.
145
  *
@@ -202,6 +224,22 @@ class Address
202
  * @return string $value
203
  */
204
  public function getTaxRegionId() { return $this->TaxRegionId; }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
205
 
206
 
207
  /**
@@ -221,7 +259,11 @@ class Address
221
  strcmp($this->Region , $other->Region) == 0 &&
222
  strcmp($this->PostalCode , $other->PostalCode) == 0 &&
223
  strcmp($this->Country , $other->Country) == 0 &&
 
 
224
  $this->TaxRegionId === $other->TaxRegionId
225
  );
226
  }
227
- }
 
 
1
  <?php
2
  /**
3
  * Address.class.php
 
 
4
  */
5
 
6
  /**
19
  * $address->setCity("Bainbridge Is");
20
  * $address->setRegion("WA");
21
  * $address->setPostalCode("98110-2450");
22
+ * $address->setLongitude("-122.510359");
23
+ * $address->setLatitude("47.624972");
24
  * $result = $port->validate($address,TextCase::$Upper);
25
  * $addresses = $result->ValidAddresses;
26
  * print("Number of addresses returned is ". sizseof($addresses));
27
  *
28
  * </pre>
29
+ * @author Avalara
30
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
31
+ * @package Address
32
  */
33
 
34
  class Address
43
  private $PostalCode;
44
  private $Country = 'USA';
45
  private $TaxRegionId = 0;
46
+ private $Latitude;
47
+ private $Longitude;
48
+
49
  /**
50
  * Construct a new Address.
51
  *
62
  * @param string $postalCode
63
  * @param string $country
64
  * @param integer $taxRegionId
65
+ * @param String $latitude
66
+ * @param String $longitude
67
  */
68
 
69
+ public function __construct($line1=null,$line2=null,$line3=null,$city=null,$region=null,$postalCode=null,$country='USA',$taxRegionId=0 ,$latitude=null ,$longitude=null )
70
  {
71
  $this->Line1 = $line1;
72
  $this->Line2 = $line2;
76
  $this->PostalCode = $postalCode;
77
  $this->Country = $country;
78
  $this->TaxRegionId = $taxRegionId;
79
+ $this->Latitude = $latitude;
80
+ $this->Longitude = $longitude;
81
  }
82
 
83
  /**
145
  */
146
  public function setTaxRegionId($value) { $this->TaxRegionId = $value; }
147
 
148
+
149
+ /**
150
+ * Set Latitude Value
151
+ *
152
+ * @param string $value
153
+ */
154
+ public function setLatitude($value) { $this->Latitude = $value; }
155
+
156
+
157
+ /**
158
+ * Set Longitude Value
159
+ *
160
+ * @param string $value
161
+ */
162
+ public function setLongitude($value) { $this->Longitude = $value; }
163
+
164
+
165
  /**
166
  * Programmatically determined value used internally by the adapter.
167
  *
224
  * @return string $value
225
  */
226
  public function getTaxRegionId() { return $this->TaxRegionId; }
227
+
228
+
229
+ /**
230
+ * Latitude Value
231
+ *
232
+ * @return string $value
233
+ */
234
+ public function getLatitude() { return $this->Latitude; }
235
+
236
+
237
+ /**
238
+ * Longitude Value
239
+ *
240
+ * @return string $value
241
+ */
242
+ public function getLongitude() { return $this->Longitude; }
243
 
244
 
245
  /**
259
  strcmp($this->Region , $other->Region) == 0 &&
260
  strcmp($this->PostalCode , $other->PostalCode) == 0 &&
261
  strcmp($this->Country , $other->Country) == 0 &&
262
+ strcmp($this->Latitude , $other->Latitude) == 0 &&
263
+ strcmp($this->Longitude , $other->Longitude) == 0 &&
264
  $this->TaxRegionId === $other->TaxRegionId
265
  );
266
  }
267
+ }
268
+
269
+ ?>
lib/AvaTax/classes/AddressServiceSoap.class.php CHANGED
@@ -1,11 +1,6 @@
1
  <?php
2
-
3
  /**
4
  * AddressServiceSoap.class.php
5
- *
6
- * Proxy for Avalara Address Service.
7
- *
8
- * @package Address
9
  */
10
 
11
  /**
@@ -20,9 +15,10 @@
20
  * $addressService = new AddressServiceSoap();
21
  * </pre>
22
  *
23
- * @package Address
24
- * @author tblanchard
25
- * Copyright (c) 2007, Avalara. All rights reserved.
 
26
  */
27
 
28
  class AddressServiceSoap extends AvalaraSoapClient
@@ -115,26 +111,24 @@ class AddressServiceSoap extends AvalaraSoapClient
115
  }
116
 
117
  /**
118
- * Validates an address and returns a collection of possible
119
  * {@link ValidAddress} objects in a {@link ValidateResult} object.
120
- *
121
  * Takes an {@link Address}, an optional {@link TextCase}
122
  * property that determines the casing applied to a validated
123
- * address. It defaults to TextCase::$Default.
124
  * <b>Example:</b><br>
125
  * <pre>
126
- * $port = new AddressServiceSoap();
127
  *
128
- * $address = new Address();
129
- * $address->setLine1("900 Winslow Way");
130
- * $address->setLine2("Suite 130");
131
- * $address->setCity("Bainbridge Is");
132
- * $address->setRegion("WA");
133
- * $address->setPostalCode("98110-2450");
134
  *
135
- * $result = $port->validate(new ValidateRequest($address,TextCase::$Upper));
136
- * $addresses = $result->validAddresses();
137
- * print('Number of addresses returned is: '.sizeof($addresses));
138
  * </pre>
139
  *
140
  * @param ValidateRequest
@@ -142,8 +136,6 @@ class AddressServiceSoap extends AvalaraSoapClient
142
  *
143
  * @throws SoapFault
144
  */
145
-
146
-
147
  public function validate($validateRequest)
148
  {
149
  return $this->client->Validate(array('ValidateRequest' => $validateRequest))->ValidateResult;
@@ -151,3 +143,7 @@ class AddressServiceSoap extends AvalaraSoapClient
151
 
152
 
153
  }
 
 
 
 
1
  <?php
 
2
  /**
3
  * AddressServiceSoap.class.php
 
 
 
 
4
  */
5
 
6
  /**
15
  * $addressService = new AddressServiceSoap();
16
  * </pre>
17
  *
18
+ * @author Avalara
19
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
20
+ * @package Address
21
+ *
22
  */
23
 
24
  class AddressServiceSoap extends AvalaraSoapClient
111
  }
112
 
113
  /**
114
+ * Validates an address and returns a normalized address or error.
115
  * {@link ValidAddress} objects in a {@link ValidateResult} object.
116
+ *
117
  * Takes an {@link Address}, an optional {@link TextCase}
118
  * property that determines the casing applied to a validated
119
+ * address. It defaults to TextCase::$Default.
120
  * <b>Example:</b><br>
121
  * <pre>
122
+ * $port = new AddressServiceSoap();
123
  *
124
+ * $address = new Address();
125
+ * $address->setLine1("900 Winslow Way");
126
+ * $address->setLine2("Suite 130");
127
+ * $address->setCity("Bainbridge Is");
128
+ * $address->setRegion("WA");
129
+ * $address->setPostalCode("98110-2450");
130
  *
131
+ * $result = $port->validate(new ValidateRequest($address,TextCase::$Upper));
 
 
132
  * </pre>
133
  *
134
  * @param ValidateRequest
136
  *
137
  * @throws SoapFault
138
  */
 
 
139
  public function validate($validateRequest)
140
  {
141
  return $this->client->Validate(array('ValidateRequest' => $validateRequest))->ValidateResult;
143
 
144
 
145
  }
146
+
147
+
148
+
149
+ ?>
lib/AvaTax/classes/AddressType.class.php CHANGED
@@ -1,15 +1,15 @@
1
  <?php
2
  /**
3
  * AddressType.class.php
4
- * @package Address
5
  */
6
 
7
  /**
8
  * The type of the address(es) returned in the validation result.
9
  *
10
- * @package Address
11
- * @author tblanchard
12
- * Copyright (c) 2007, Avalara. All rights reserved.
 
13
  */
14
 
15
  class AddressType extends Enum
@@ -36,3 +36,5 @@ class AddressType extends Enum
36
  // Unfortunate boiler plate due to polymorphism issues on static functions
37
  public static function Validate($value) { self::__Validate($value,self::Values(),__CLASS__); }
38
  }
 
 
1
  <?php
2
  /**
3
  * AddressType.class.php
 
4
  */
5
 
6
  /**
7
  * The type of the address(es) returned in the validation result.
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Address
12
+ *
13
  */
14
 
15
  class AddressType extends Enum
36
  // Unfortunate boiler plate due to polymorphism issues on static functions
37
  public static function Validate($value) { self::__Validate($value,self::Values(),__CLASS__); }
38
  }
39
+
40
+ ?>
lib/AvaTax/classes/AdjustTaxRequest.class.php CHANGED
@@ -1,16 +1,16 @@
1
  <?php
2
  /**
3
  * AdjustTaxRequest.class.php
4
- * @package Tax
5
  */
6
 
7
  /**
8
  * Data to pass to {@link TaxServiceSoap#adjustTax}.
9
  *
10
  * @see AdjustTaxRequest
11
- * @package Tax
12
- * @author tblanchard
13
- * Copyright (c) 2008, Avalara. All rights reserved.
 
14
  */
15
 
16
 
@@ -72,4 +72,6 @@ class AdjustTaxRequest
72
 
73
 
74
 
75
- }
 
 
1
  <?php
2
  /**
3
  * AdjustTaxRequest.class.php
 
4
  */
5
 
6
  /**
7
  * Data to pass to {@link TaxServiceSoap#adjustTax}.
8
  *
9
  * @see AdjustTaxRequest
10
+ *
11
+ * @author Avalara
12
+ * @copyright 2004 - 2011 Avalara, Inc. All rights reserved.
13
+ * @package Tax
14
  */
15
 
16
 
72
 
73
 
74
 
75
+ }
76
+
77
+ ?>
lib/AvaTax/classes/AdjustTaxResult.class.php CHANGED
@@ -1,17 +1,16 @@
1
  <?php
2
  /**
3
  * AdjustTaxResult.class.php
4
- * @package Tax
5
  */
6
 
7
-
8
  /**
9
  * Result data returned from {@link TaxServiceSoap#getTax}.
10
  *
11
  * @see AdjustTaxRequest
12
- * @package Tax
13
- * @author tblanchard
14
- * Copyright (c) 2008, Avalara. All rights reserved.
 
15
  */
16
 
17
  class AdjustTaxResult //extends GetTaxResult
@@ -258,4 +257,6 @@ class AdjustTaxResult //extends GetTaxResult
258
 
259
 
260
 
261
- }
 
 
1
  <?php
2
  /**
3
  * AdjustTaxResult.class.php
 
4
  */
5
 
 
6
  /**
7
  * Result data returned from {@link TaxServiceSoap#getTax}.
8
  *
9
  * @see AdjustTaxRequest
10
+ *
11
+ * @author Avalara
12
+ * @copyright 2004 - 2011 Avalara, Inc. All rights reserved.
13
+ * @package Tax
14
  */
15
 
16
  class AdjustTaxResult //extends GetTaxResult
257
 
258
 
259
 
260
+ }
261
+
262
+ ?>
lib/AvaTax/classes/ApplyPaymentRequest.class.php CHANGED
@@ -1,14 +1,21 @@
1
  <?php
 
 
 
 
2
  /**
3
  * ApplyPaymentRequest.class.php
4
  *
5
- * @package Tax
 
 
6
  */
7
 
8
  class ApplyPaymentRequest
9
  {
10
  private $CompanyCode; //string
11
  private $DocType; //DocumentType
 
12
  private $DocCode; //string
13
  private $PaymentDate; //date
14
 
@@ -32,7 +39,14 @@ class ApplyPaymentRequest
32
  */
33
  public function setDocType($value){ $this->DocType=$value;} //DocumentType
34
 
35
- /**
 
 
 
 
 
 
 
36
  * Sets the docType value for this ApplyPaymentRequest.
37
  *
38
  * @param string $value
@@ -62,6 +76,13 @@ class ApplyPaymentRequest
62
  public function getDocType(){ return $this->DocType;} //DocumentType
63
 
64
  /**
 
 
 
 
 
 
 
65
  * Gets the docCode value for this ApplyPaymentRequest.
66
  *
67
  * @return unknown
@@ -74,4 +95,6 @@ class ApplyPaymentRequest
74
  */
75
  public function getPaymentDate(){ return $this->PaymentDate;} //date
76
 
77
- }
 
 
1
  <?php
2
+ /**
3
+ * ApplyPaymentRequest.class.php
4
+ */
5
+
6
  /**
7
  * ApplyPaymentRequest.class.php
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Tax
12
  */
13
 
14
  class ApplyPaymentRequest
15
  {
16
  private $CompanyCode; //string
17
  private $DocType; //DocumentType
18
+ private $DocId; //string
19
  private $DocCode; //string
20
  private $PaymentDate; //date
21
 
39
  */
40
  public function setDocType($value){ $this->DocType=$value;} //DocumentType
41
 
42
+ /**
43
+ * Sets the docType value for this ApplyPaymentRequest.
44
+ *
45
+ * @param string $value
46
+ */
47
+ public function setDocId($value){ $this->DocId=$value;} //string
48
+
49
+ /**
50
  * Sets the docType value for this ApplyPaymentRequest.
51
  *
52
  * @param string $value
76
  public function getDocType(){ return $this->DocType;} //DocumentType
77
 
78
  /**
79
+ * Gets the docId value for this ApplyPaymentRequest.
80
+ *
81
+ * @return unknown
82
+ */
83
+ public function getDocId(){ return $this->DocId;} //string
84
+
85
+ /**
86
  * Gets the docCode value for this ApplyPaymentRequest.
87
  *
88
  * @return unknown
95
  */
96
  public function getPaymentDate(){ return $this->PaymentDate;} //date
97
 
98
+ }
99
+
100
+ ?>
lib/AvaTax/classes/ApplyPaymentResult.class.php CHANGED
@@ -1,8 +1,14 @@
1
  <?php
2
  /**
3
  * ApplyPaymentResult.class.php
 
 
 
 
4
  *
5
- * @package Tax
 
 
6
  */
7
 
8
  class ApplyPaymentResult extends BaseResult
@@ -10,4 +16,6 @@ class ApplyPaymentResult extends BaseResult
10
 
11
 
12
 
13
- }
 
 
1
  <?php
2
  /**
3
  * ApplyPaymentResult.class.php
4
+ */
5
+
6
+ /**
7
+ *
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Tax
12
  */
13
 
14
  class ApplyPaymentResult extends BaseResult
16
 
17
 
18
 
19
+ }
20
+
21
+ ?>
lib/AvaTax/classes/AvaCert2Svc/AvaCert2Soap.class.php ADDED
@@ -0,0 +1,209 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ /**
4
+ * AvaCert2Soap class
5
+ *
6
+ *
7
+ *
8
+ * @author Avalara
9
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
10
+ * @package AvaCert2
11
+ */
12
+ class AvaCert2Soap extends AvalaraSoapClient {
13
+
14
+ static $servicePath = '/AvaCert2/AvaCert2Svc.asmx';
15
+ private static $classmap = array(
16
+ 'CustomerSave' => 'CustomerSave',
17
+ 'CustomerSaveRequest' => 'CustomerSaveRequest',
18
+ 'Customer' => 'Customer',
19
+ 'Certificate' => 'Certificate',
20
+ 'CertificateStatus' => 'CertificateStatus',
21
+ 'ReviewStatus' => 'ReviewStatus',
22
+ 'CertificateUsage' => 'CertificateUsage',
23
+ 'CertificateJurisdiction' => 'CertificateJurisdiction',
24
+ 'CustomerSaveResult' => 'CustomerSaveResult',
25
+ 'Profile' => 'Profile',
26
+ 'CertificateRequestInitiate' => 'CertificateRequestInitiate',
27
+ 'CertificateRequestInitiateRequest' => 'CertificateRequestInitiateRequest',
28
+ 'CertificateRequestInitiateResult' => 'CertificateRequestInitiateResult',
29
+ 'CertificateGet' => 'CertificateGet',
30
+ 'CertificateGetRequest' => 'CertificateGetRequest',
31
+ 'CommunicationMode' => 'CommunicationMode',
32
+ 'CertificateGetResult' => 'CertificateGetResult',
33
+ 'CertificateRequestGet' => 'CertificateRequestGet',
34
+ 'CertificateRequestGetRequest' => 'CertificateRequestGetRequest',
35
+ 'CertificateRequestGetResult' => 'CertificateRequestGetResult',
36
+ 'CertificateRequest' => 'CertificateRequest',
37
+ 'CertificateRequestStatus' => 'CertificateRequestStatus',
38
+ 'CertificateRequestStage' => 'CertificateRequestStage',
39
+ 'CertificateImageGet' => 'CertificateImageGet',
40
+ 'CertificateImageGetRequest' => 'CertificateImageGetRequest',
41
+ 'FormatType' => 'FormatType',
42
+ 'CertificateImageGetResult' => 'CertificateImageGetResult',
43
+ 'BaseRequest' => 'BaseRequest',
44
+ 'RequestType' => 'RequestType',
45
+ 'BaseResult' => 'BaseResult',
46
+ 'SeverityLevel' => 'SeverityLevel',
47
+ 'Message' => 'Message',
48
+ 'Ping' => 'Ping',
49
+ 'PingResult' => 'PingResult',
50
+ 'IsAuthorized' => 'IsAuthorized',
51
+ 'IsAuthorizedResult' => 'IsAuthorizedResult',
52
+ );
53
+
54
+ public function __construct($configurationName = 'Default')
55
+ {
56
+ $config = new ATConfig($configurationName);
57
+
58
+ $this->client = new DynamicSoapClient (
59
+ $config->avacert2WSDL,
60
+ array
61
+ (
62
+ 'location' => $config->url.$config->avacert2Service,
63
+ 'trace' => $config->trace,
64
+ 'classmap' => AvaCert2Soap::$classmap
65
+ ),
66
+ $config
67
+ );
68
+ }
69
+
70
+ /**
71
+ * This method adds an exempt customer record to AvaCert.
72
+ *
73
+ * <pre>
74
+ * $customer = new Customer();
75
+ * $customer->setCompanyCode("DEFAULT");
76
+ * $customer->setCustomerCode("AVALARA");
77
+ * $customer->setBusinessName("Avalara, Inc.");
78
+ * $customer->setAddress1("435 Ericksen Ave NE");
79
+ * $customer->setCity("Bainbridge Island");
80
+ * $customer->setState("WA");
81
+ * $customer->setZip("98110");
82
+ * $customer->setCountry("US");
83
+ * $customer->setEmail("info@avalara.com");
84
+ * $customer->setPhone("206-826-4900");
85
+ * $customer->setFax("206-780-5011");
86
+ * $customer->setType("Bill_To");
87
+ *
88
+ * $customerSaveRequest = new CustomerSaveRequest();
89
+ * $customerSaveRequest->setCustomer($customer);
90
+ *
91
+ * $customerSaveResult= $avacert2Service->customerSave($customerSaveRequest);
92
+ * </pre>
93
+ *
94
+ * @param CustomerSave $parameters
95
+ * @return CustomerSaveResult
96
+ */
97
+ public function CustomerSave(CustomerSaveRequest $customerSaveRequest) {
98
+ return $this->client->CustomerSave(array('CustomerSaveRequest' => $customerSaveRequest))->CustomerSaveResult;
99
+ }
100
+
101
+ /**
102
+ * This method initiates a request from AvaCert to the customer for an exemption certificate.
103
+ * The request will be sent using the designated method (email, fax, post).
104
+ *
105
+ * <pre>
106
+ * $certificateRequestInitiateRequest=new CertificateRequestInitiateRequest();
107
+ * $certificateRequestInitiateRequest->setCompanyCode("DEFAULT");
108
+ * $certificateRequestInitiateRequest->setCustomerCode("AVALARA");
109
+ * $certificateRequestInitiateRequest->setCommunicationMode(CommunicationMode::$EMAIL);
110
+ * $certificateRequestInitiateRequest->setCustomMessage("Thank you!");
111
+ *
112
+ * $certificateRequestInitiateResult= $avacert2Service->certificateRequestInitiate($certificateRequestInitiateRequest);
113
+ * </pre>
114
+ *
115
+ * @param CertificateRequestInitiate $parameters
116
+ * @return CertificateRequestInitiateResult
117
+ */
118
+ public function CertificateRequestInitiate(CertificateRequestInitiateRequest $certificateRequestInitiateRequest) {
119
+ return $this->client->CertificateRequestInitiate(array('CertificateRequestInitiateRequest' => $certificateRequestInitiateRequest))->CertificateRequestInitiateResult;
120
+ }
121
+
122
+ /**
123
+ * This method retrieves all certificates from vCert for a particular customer.
124
+ *
125
+ * <pre>
126
+ * $certificateGetRequest=new CertificateGetRequest();
127
+ * $certificateGetRequest->setCompanyCode("DEFAULT");
128
+ * $certificateGetRequest->setCustomerCode("AVALARA");
129
+ *
130
+ * $certificateGetResult= $avacert2Service->certificateGet($certificateGetRequest);
131
+ * </pre>
132
+ *
133
+ * @param CertificateGet $parameters
134
+ * @return CertificateGetResult
135
+ */
136
+ public function CertificateGet(CertificateGetRequest $certificateGetRequest) {
137
+ return $this->client->CertificateGet(array('CertificateGetRequest' => $certificateGetRequest))->CertificateGetResult;
138
+ }
139
+
140
+
141
+ /**
142
+ * This method retrieves all certificate requests from vCert for a particular customer.
143
+ *
144
+ * <pre>
145
+ * $certificateRequestGetRequest=new CertificateRequestGetRequest();
146
+ * $certificateRequestGetRequest->setCompanyCode("DEFAULT");
147
+ * $certificateRequestGetRequest->setCustomerCode("AVALARA");
148
+ * $certificateRequestGetRequest->setRequestStatus(CertificateRequestStatus::$OPEN);
149
+ *
150
+ * $certificateRequestGetResult= $avacert2Service->certificateRequestGet($certificateRequestGetRequest);
151
+ * </pre>
152
+ *
153
+ * @param CertificateRequestGet $parameters
154
+ * @return CertificateRequestGetResult
155
+ */
156
+ public function CertificateRequestGet(CertificateRequestGetRequest $certificateRequestGetRequest) {
157
+ return $this->client->CertificateRequestGet(array('CertificateRequestGetRequest' => $certificateRequestGetRequest))->CertificateRequestGetResult;
158
+ }
159
+
160
+ /**
161
+ * This method retrieves all certificate requests from vCert for a particular customer.
162
+ *
163
+ * <pre>
164
+ * $certificateImageGetRequest=new CertificateImageGetRequest();
165
+ * $certificateImageGetRequest->setCompanyCode("DEFAULT");
166
+ * $certificateImageGetRequest->setAvaCertId("CBSK");
167
+ * $certificateImageGetRequest->setFormat(FormatType::$PNG);
168
+ * $certificateImageGetRequest->setPageNumber(1);
169
+ *
170
+ * $certificateImageGetResult= $avacert2Service->certificateImageGet($certificateImageGetRequest);
171
+ * </pre>
172
+ *
173
+ * @param CertificateImageGet $parameters
174
+ * @return CertificateImageGetResult
175
+ */
176
+ public function CertificateImageGet(CertificateImageGetRequest $certificateImageGetRequest) {
177
+ return $this->client->CertificateImageGet(array('CertificateImageGetRequest' => $certificateImageGetRequest))->CertificateImageGetResult;
178
+ }
179
+
180
+ /**
181
+ * Verifies connectivity to the web service and returns version information about the service.
182
+ *
183
+ * @param Ping $parameters
184
+ * @return PingResult
185
+ */
186
+ public function Ping($message = '') {
187
+ return $this->client->Ping(array('Message' => $message))->PingResult;
188
+ }
189
+
190
+ /**
191
+ * Checks authentication of and authorization to one or more operations on the service.
192
+ * <p>
193
+ * This operation allows pre-authorization checking of any or all operations.
194
+ * It will return a comma delimited set of operation names which will be all or a subset
195
+ * of the requested operation names. For security, it will never return operation names
196
+ * other than those requested, i.e. protects against phishing.
197
+ * </p>
198
+ * <b>Example:</b><br>
199
+ * <code> isAuthorized("CustomerSave,CertificateRequestInitiate")</code>
200
+ * @param IsAuthorized $parameters
201
+ * @return IsAuthorizedResult
202
+ */
203
+ public function IsAuthorized(IsAuthorized $parameters) {
204
+ return $this->client->IsAuthorized(array('Operations' => $operations))->IsAuthorizedResult;
205
+ }
206
+
207
+ }
208
+
209
+ ?>
lib/AvaTax/classes/AvaCert2Svc/Certificate.class.php ADDED
@@ -0,0 +1,227 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Certificate.class.php
4
+ */
5
+
6
+ /**
7
+ * Contains exemption certificate data. Is part of the {@link CertificateGetResult} result came from the {@link CertificateGet}.
8
+ *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package AvaCert2
12
+ */
13
+ class Certificate {
14
+ private $AvaCertId; // string
15
+ private $CertificateJurisdictions; // ArrayOfCertificateJurisdiction
16
+ private $CustomerCodes; // ArrayOfString
17
+ private $SourceLocationName; // string
18
+ private $SourceLocationCode; // string
19
+ private $CertificateStatus; // CertificateStatus
20
+ private $ReviewStatus; // ReviewStatus
21
+ private $RejectionReasonCode; // string
22
+ private $RejectionReasonDetailCode; // string
23
+ private $RejectionReasonCustomText; // string
24
+ private $CreatedDate; // dateTime
25
+ private $LastModifyDate; // dateTime
26
+ private $DocReceivedDate; // dateTime
27
+ private $BusinessName; // string
28
+ private $Address1; // string
29
+ private $Address2; // string
30
+ private $City; // string
31
+ private $State; // string
32
+ private $Country; // string
33
+ private $Zip; // string
34
+ private $Phone; // string
35
+ private $Email; // string
36
+ private $SignerName; // string
37
+ private $SignerTitle; // string
38
+ private $SignedDate; // dateTime
39
+ private $BusinessDescription; // string
40
+ private $SellerPropertyDescription; // string
41
+ private $CertificateUsage; // CertificateUsage
42
+ private $IsPartialExemption; // boolean
43
+ private $ExemptReasonCode; // string
44
+ private $ExemptFormName; // string
45
+ private $Custom1; // string
46
+ private $Custom2; // string
47
+ private $Custom3; // string
48
+ private $PageCount; // int
49
+
50
+ /**
51
+ * Unique identifier for the Certificate record.
52
+ */
53
+ public function getAvaCertId(){return $this->AvaCertId;} // string
54
+
55
+ /**
56
+ * CertificateJurisdictions contains the details of Jurisdiction.
57
+ */
58
+ public function getCertificateJurisdictions(){return $this->CertificateJurisdictions;} // ArrayOfCertificateJurisdiction
59
+
60
+ /**
61
+ * Customer identification codes for the customer associated with the Certificate record.
62
+ */
63
+ public function getCustomerCodes(){return $this->CustomerCodes;} // ArrayOfString
64
+
65
+ /**
66
+ * Source location display name for the Certificate record (the client location responsible for tracking the certificate).
67
+ */
68
+ public function getSourceLocationName(){return $this->SourceLocationName;} // string
69
+
70
+ /**
71
+ * Source location code for the Certificate record (the client location responsible for tracking the certificate).
72
+ */
73
+ public function getSourceLocationCode(){return $this->SourceLocationCode;} // string
74
+
75
+ /**
76
+ * Status for the Certificate record.
77
+ */
78
+ public function getCertificateStatus(){return $this->CertificateStatus;} // CertificateStatus
79
+
80
+ /**
81
+ * Review status for the Certificate record.
82
+ */
83
+ public function getReviewStatus(){return $this->ReviewStatus;} // ReviewStatus
84
+
85
+ /**
86
+ * Reason for rejection of a certificate when ReviewStatus of the Certificate record is REJECTED.
87
+ */
88
+ public function getRejectionReasonCode(){return $this->RejectionReasonCode;} // string
89
+
90
+ /**
91
+ * Details about the reason for rejection of a certificate when ReviewStatus of the Certificate record is REJECTED.
92
+ */
93
+ public function getRejectionReasonDetailCode(){return $this->RejectionReasonDetailCode;} // string
94
+
95
+ /**
96
+ * Custom Reason or details about a reason for rejection of a certificate provided by the user when ReviewStatus of the Certificate record is REJECTED.
97
+ */
98
+ public function getRejectionReasonCustomText(){return $this->RejectionReasonCustomText;} // string
99
+
100
+ /**
101
+ * Creation date of the Certificate record.
102
+ */
103
+ public function getCreatedDate(){return $this->CreatedDate;} // dateTime
104
+
105
+ /**
106
+ * Last modification date of the Certificate record.
107
+ */
108
+ public function getLastModifyDate(){return $this->LastModifyDate;} // dateTime
109
+
110
+ /**
111
+ * Date of the most recently received image content for the Certificate record (usually via fax).
112
+ */
113
+ public function getDocReceivedDate(){return $this->DocReceivedDate;} // dateTime
114
+
115
+ /**
116
+ * Exempt customer business name for the Certificate record.
117
+ */
118
+ public function getBusinessName(){return $this->BusinessName;} // string
119
+
120
+ /**
121
+ * Exempt customer address1 field for the Certificate record.
122
+ */
123
+ public function getAddress1(){return $this->Address1;} // string
124
+
125
+ /**
126
+ * Exempt customer address2 field for the Certificate record.
127
+ */
128
+ public function getAddress2(){return $this->Address2;} // string
129
+
130
+ /**
131
+ * Exempt customer city address field for the Certificate record.
132
+ */
133
+ public function getCity(){return $this->City;} // string
134
+
135
+ /**
136
+ * Exempt customer state address field for the Certificate record.
137
+ */
138
+ public function getState(){return $this->State;} // string
139
+
140
+ /**
141
+ * Exempt customer country address field for the Certificate record.
142
+ */
143
+ public function getCountry(){return $this->Country;} // string
144
+
145
+ /**
146
+ * Exempt customer US zip or zip+4 code (or CA postal code) address field for the Certificate record.
147
+ */
148
+ public function getZip(){return $this->Zip;} // string
149
+
150
+ /**
151
+ * Exempt customer phone number field for the Certificate record.
152
+ */
153
+ public function getPhone(){return $this->Phone;} // string
154
+
155
+ /**
156
+ * Exempt customer email address field for the Certificate record.
157
+ */
158
+ public function getEmail(){return $this->Email;} // string
159
+
160
+ /**
161
+ * Exempt customer signer name field for the Certificate record.
162
+ */
163
+ public function getSignerName(){return $this->SignerName;} // string
164
+
165
+ /**
166
+ * Exempt customer signer title field for the Certificate record.
167
+ */
168
+ public function getSignerTitle(){return $this->SignerTitle;} // string
169
+
170
+ /**
171
+ * Effective date (or the actual signature date) of the Certificate record.
172
+ */
173
+ public function getSignedDate(){return $this->SignedDate;} // dateTime
174
+
175
+ /**
176
+ * Exempt customer business description field for the Certificate record.
177
+ */
178
+ public function getBusinessDescription(){return $this->BusinessDescription;} // string
179
+
180
+ /**
181
+ * Seller property description the exempt customer selected for the Certificate record.
182
+ */
183
+ public function getSellerPropertyDescription(){return $this->SellerPropertyDescription;} // string
184
+
185
+ /**
186
+ * Usage type for the Certificate record.
187
+ */
188
+ public function getCertificateUsage(){return $this->CertificateUsage;} // CertificateUsage
189
+
190
+ /**
191
+ * Whether the Certificate record is considered "partially exempt".
192
+ */
193
+ public function getIsPartialExemption(){return $this->IsPartialExemption;} // boolean
194
+
195
+ /**
196
+ * Client-specified exemption reason code for the Certificate record.
197
+ */
198
+ public function getExemptReasonCode(){return $this->ExemptReasonCode;} // string
199
+
200
+ /**
201
+ * Name of the state-issued form for the Certificate record; either a system-defined code name or a client-specified custom name.
202
+ */
203
+ public function getExemptFormName(){return $this->ExemptFormName;} // string
204
+
205
+ /**
206
+ * (Optional) Client-specified value for custom Certificate field 1, if enabled.
207
+ */
208
+ public function getCustom1(){return $this->Custom1;} // string
209
+
210
+ /**
211
+ * (Optional) Client-specified value for custom Certificate field 2, if enabled.
212
+ */
213
+ public function getCustom2(){return $this->Custom2;} // string
214
+
215
+ /**
216
+ * (Optional) Client-specified value for custom Certificate field 3, if enabled.
217
+ */
218
+ public function getCustom3(){return $this->Custom3;} // string
219
+
220
+ /**
221
+ * Number of pages in the Certificate record.
222
+ */
223
+ public function getPageCount(){return $this->PageCount;} // int
224
+
225
+ }
226
+
227
+ ?>
lib/AvaTax/classes/AvaCert2Svc/CertificateGetRequest.class.php ADDED
@@ -0,0 +1,59 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * CertificateGetRequest.class.php
4
+ */
5
+
6
+ /**
7
+ * Input for {@link CertificateGet}.
8
+ *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package AvaCert2
12
+ */
13
+ class CertificateGetRequest {
14
+ private $CompanyCode; // string
15
+ private $CustomerCode; // string
16
+ private $ModFromDate; // dateTime
17
+ private $ModToDate; // dateTime
18
+
19
+ public function __construct()
20
+ {
21
+ $dateTime=new DateTime();
22
+ $dateTime->setDate(0001,01,01);
23
+ $this->ModFromDate=$dateTime->format("Y-m-d");
24
+
25
+ $dateTime->setDate(0001,01,01);
26
+ $this->ModToDate=$dateTime->format("Y-m-d");
27
+ }
28
+
29
+ public function setCompanyCode($value){$this->CompanyCode=$value;} // string
30
+
31
+ /**
32
+ * The company code associated with a certificate record.
33
+ */
34
+ public function getCompanyCode(){return $this->CompanyCode;} // string
35
+
36
+ public function setCustomerCode($value){$this->CustomerCode=$value;} // string
37
+
38
+ /**
39
+ * The customer code associated with a certificate record.
40
+ */
41
+ public function getCustomerCode(){return $this->CustomerCode;} // string
42
+
43
+ public function setModFromDate($value){$this->ModFromDate=$value;} // dateTime
44
+
45
+ /**
46
+ * The date from which the certificates needs to be fetched.
47
+ */
48
+ public function getModFromDate(){return $this->ModFromDate;} // dateTime
49
+
50
+ public function setModToDate($value){$this->ModToDate=$value;} // dateTime
51
+
52
+ /**
53
+ * The date to which the certificates needs to be fetched.
54
+ */
55
+ public function getModToDate(){return $this->ModToDate;} // dateTime
56
+
57
+ }
58
+
59
+ ?>
lib/AvaTax/classes/AvaCert2Svc/CertificateGetResult.class.php ADDED
@@ -0,0 +1,33 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * CertificateGetResult.class.php
4
+ */
5
+
6
+ /**
7
+ * Contains the get exemption certificates operation result returned by {@link CertificateGet}.
8
+ *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package AvaCert2
12
+ */
13
+ class CertificateGetResult extends BaseResult {
14
+ private $Certificates; // ArrayOfCertificate
15
+
16
+ /**
17
+ * Certificates contains collection of exemption certificate records.
18
+ */
19
+ public function getCertificates()
20
+ {
21
+ if(isset($this->Certificates->Certificate))
22
+ {
23
+ return EnsureIsArray($this->Certificates->Certificate);
24
+ }
25
+ else
26
+ {
27
+ return null;
28
+ }
29
+ } // ArrayOfCertificate
30
+
31
+ }
32
+
33
+ ?>
lib/AvaTax/classes/AvaCert2Svc/CertificateImageGetRequest.class.php ADDED
@@ -0,0 +1,55 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * CertificateImageGetRequest.class.php
4
+ */
5
+
6
+ /**
7
+ * Input for {@link CertificateImageGet}.
8
+ *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package AvaCert2
12
+ */
13
+ class CertificateImageGetRequest {
14
+ private $CompanyCode; // string
15
+ private $AvaCertId; // string
16
+ private $Format; // FormatType
17
+ private $PageNumber; // int
18
+
19
+ public function __construct()
20
+ {
21
+ $this->Format=FormatType::$NULL;
22
+ $this->PageNumber=1;
23
+ }
24
+
25
+ public function setCompanyCode($value){$this->CompanyCode=$value;} // string
26
+
27
+ /**
28
+ * The company code associated with a certificate record.
29
+ */
30
+ public function getCompanyCode(){return $this->CompanyCode;} // string
31
+
32
+ public function setAvaCertId($value){$this->AvaCertId=$value;} // string
33
+
34
+ /**
35
+ * Unique identifier for the Certificate record.
36
+ */
37
+ public function getAvaCertId(){return $this->AvaCertId;} // string
38
+
39
+ public function setFormat($value){$this->Format=$value;} // FormatType
40
+
41
+ /**
42
+ * Format in which the image needs to be exported.
43
+ */
44
+ public function getFormat(){return $this->Format;} // FormatType
45
+
46
+ public function setPageNumber($value){$this->PageNumber=$value;} // int
47
+
48
+ /**
49
+ * Page number of of the certificate image.
50
+ */
51
+ public function getPageNumber(){return $this->PageNumber;} // int
52
+
53
+ }
54
+
55
+ ?>
lib/AvaTax/classes/AvaCert2Svc/CertificateImageGetResult.class.php ADDED
@@ -0,0 +1,29 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * CertificateImageGetResult.class.php
4
+ */
5
+
6
+ /**
7
+ * Contains the get certificate image operation result returned by {@link CertificateImageGet}.
8
+ *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package AvaCert2
12
+ */
13
+ class CertificateImageGetResult extends BaseResult {
14
+ private $AvaCertId; // string
15
+ private $Image; // base64Binary
16
+
17
+ /**
18
+ * Unique identifier for the Certificate record.
19
+ */
20
+ public function getAvaCertId(){return $this->AvaCertId;} // string
21
+
22
+ /**
23
+ * Certificate image.
24
+ */
25
+ public function getImage(){return $this->Image;} // base64Binary
26
+
27
+ }
28
+
29
+ ?>
lib/AvaTax/classes/AvaCert2Svc/CertificateJurisdiction.class.php ADDED
@@ -0,0 +1,47 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * CertificateJurisdiction.class.php
4
+ */
5
+
6
+ /**
7
+ * Contains jurisdiction data.
8
+ *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package AvaCert2
12
+ */
13
+ class CertificateJurisdiction {
14
+ private $Jurisdiction; // string
15
+ private $Country; // string
16
+ private $ExpiryDate; // dateTime
17
+ private $DoesNotExpire; // boolean
18
+ private $PermitNumbers; // ArrayOfString
19
+
20
+ /**
21
+ * Jurisdiction code for the Jurisdiction record.
22
+ */
23
+ public function getJurisdiction(){return $this->Jurisdiction;} // string
24
+
25
+ /**
26
+ * Country code for the Jurisdiction record (ISO-3166-1-alpha-2 Country Code).
27
+ */
28
+ public function getCountry(){return $this->Country;} // string
29
+
30
+ /**
31
+ * Expiration date for the Jurisdiction record.
32
+ */
33
+ public function getExpiryDate(){return $this->ExpiryDate;} // dateTime
34
+
35
+ /**
36
+ * Whether the Jurisdiction can expire; a Boolean flag with the following semantics: true: the Jurisdiction record never expires (regardless of ExpiryDate) false: the Jurisdiction record expires based on ExpiryDate
37
+ */
38
+ public function getDoesNotExpire(){return $this->DoesNotExpire;} // boolean
39
+
40
+ /**
41
+ * The exempt customer permit number(s) for the Jurisdiction record (a comma separated list if more than a single permit number exists for the Jurisdiction record).
42
+ */
43
+ public function getPermitNumbers(){return $this->PermitNumbers;} // ArrayOfString
44
+
45
+ }
46
+
47
+ ?>
lib/AvaTax/classes/AvaCert2Svc/CertificateRequest.class.php ADDED
@@ -0,0 +1,77 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * CertificateRequest.class.php
4
+ */
5
+
6
+ /**
7
+ * Contains certificate request data. Is part of the {@link CertificateRequestGetResult} result came from the {@link CertificateRequestGet}.
8
+ *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package AvaCert2
12
+ */
13
+ class CertificateRequest {
14
+ private $RequestId; // string
15
+ private $TrackingCode; // string
16
+ private $SourceLocationCode; // string
17
+ private $RequestDate; // dateTime
18
+ private $CustomerCode; // string
19
+ private $CreatorName; // string
20
+ private $LastModifyDate; // dateTime
21
+ private $RequestStatus; // CertificateRequestStatus
22
+ private $RequestStage; // CertificateRequestStage
23
+ private $CommunicationMode; // CommunicationMode
24
+
25
+ /**
26
+ * Unique identifier for the certificate request record.
27
+ */
28
+ public function getRequestId(){return $this->RequestId;} // string
29
+
30
+ /**
31
+ * Unique Tracking Code for the certificate request record.
32
+ */
33
+ public function getTrackingCode(){return $this->TrackingCode;} // string
34
+
35
+ /**
36
+ * Source location code for the certificate record (the client location responsible for tracking the certificate).
37
+ */
38
+ public function getSourceLocationCode(){return $this->SourceLocationCode;} // string
39
+
40
+ /**
41
+ * Request date of the certificate request record.
42
+ */
43
+ public function getRequestDate(){return $this->RequestDate;} // dateTime
44
+
45
+ /**
46
+ * Customer identification code for the customer associated with the certificate request record.
47
+ */
48
+ public function getCustomerCode(){return $this->CustomerCode;} // string
49
+
50
+ /**
51
+ * CreatorName the certificate request record.
52
+ */
53
+ public function getCreatorName(){return $this->CreatorName;} // string
54
+
55
+ /**
56
+ * Last modification date of the certificate request record.
57
+ */
58
+ public function getLastModifyDate(){return $this->LastModifyDate;} // dateTime
59
+
60
+ /**
61
+ * Request status for the certificate request record.
62
+ */
63
+ public function getRequestStatus(){return $this->RequestStatus;} // CertificateRequestStatus
64
+
65
+ /**
66
+ * Request stage for the certificate request record.
67
+ */
68
+ public function getRequestStage(){return $this->RequestStage;} // CertificateRequestStage
69
+
70
+ /**
71
+ * CommunicationMode for the certificate request record.
72
+ */
73
+ public function getCommunicationMode(){return $this->CommunicationMode;} // CommunicationMode
74
+
75
+ }
76
+
77
+ ?>
lib/AvaTax/classes/AvaCert2Svc/CertificateRequestGetRequest.class.php ADDED
@@ -0,0 +1,69 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * CertificateRequestGetRequest.class.php
4
+ */
5
+
6
+ /**
7
+ * Input for {@link CertificateRequestGet}.
8
+ *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package AvaCert2
12
+ */
13
+ class CertificateRequestGetRequest {
14
+ private $CompanyCode; // string
15
+ private $CustomerCode; // string
16
+ private $RequestStatus; // CertificateRequestStatus
17
+ private $ModFromDate; // dateTime
18
+ private $ModToDate; // dateTime
19
+
20
+ public function __construct()
21
+ {
22
+ $this->RequestStatus=CertificateRequestStatus::$ALL;
23
+
24
+ $dateTime=new DateTime();
25
+ $dateTime->setDate(0001,01,01);
26
+ $this->ModFromDate=$dateTime->format("Y-m-d");
27
+
28
+ $dateTime->setDate(0001,01,01);
29
+ $this->ModToDate=$dateTime->format("Y-m-d");
30
+ }
31
+
32
+ public function setCompanyCode($value){$this->CompanyCode=$value;} // string
33
+
34
+ /**
35
+ * The company code associated with a certificate record.
36
+ */
37
+ public function getCompanyCode(){return $this->CompanyCode;} // string
38
+
39
+ public function setCustomerCode($value){$this->CustomerCode=$value;} // string
40
+
41
+ /**
42
+ * The customer code associated with a certificate record.
43
+ */
44
+ public function getCustomerCode(){return $this->CustomerCode;} // string
45
+
46
+ public function setRequestStatus($value){$this->RequestStatus=$value;} // CertificateRequestStatus
47
+
48
+ /**
49
+ * Current status of the Request.
50
+ */
51
+ public function getRequestStatus(){return $this->RequestStatus;} // CertificateRequestStatus
52
+
53
+ public function setModFromDate($value){$this->ModFromDate=$value;} // dateTime
54
+
55
+ /**
56
+ * The date from which the certificates needs to be fetched.
57
+ */
58
+ public function getModFromDate(){return $this->ModFromDate;} // dateTime
59
+
60
+ public function setModToDate($value){$this->ModToDate=$value;} // dateTime
61
+
62
+ /**
63
+ * The date to which the certificates needs to be fetched.
64
+ */
65
+ public function getModToDate(){return $this->ModToDate;} // dateTime
66
+
67
+ }
68
+
69
+ ?>
lib/AvaTax/classes/AvaCert2Svc/CertificateRequestGetResult.class.php ADDED
@@ -0,0 +1,33 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * CertificateRequestGetResult.class.php
4
+ */
5
+
6
+ /**
7
+ * Contains the get certificate request operation result returned by {@link CertificateRequestGet}.
8
+ *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package AvaCert2
12
+ */
13
+ class CertificateRequestGetResult extends BaseResult {
14
+ private $CertificateRequests; // ArrayOfCertificateRequest
15
+
16
+ /**
17
+ * CertificateRequests contains collection of certificate requests.
18
+ */
19
+ public function getCertificateRequests()
20
+ {
21
+ if(isset($this->CertificateRequests->CertificateRequest))
22
+ {
23
+ return EnsureIsArray($this->CertificateRequests->CertificateRequest);
24
+ }
25
+ else
26
+ {
27
+ return null;
28
+ }
29
+ } // ArrayOfCertificateRequest
30
+
31
+ }
32
+
33
+ ?>
lib/AvaTax/classes/AvaCert2Svc/CertificateRequestInitiateRequest.class.php ADDED
@@ -0,0 +1,103 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * CertificateRequestInitiateRequest.class.php
4
+ */
5
+
6
+ /**
7
+ * Input for {@link CertificateRequestInitiate}.
8
+ *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package AvaCert2
12
+ */
13
+ class CertificateRequestInitiateRequest {
14
+ private $CompanyCode; // string
15
+ private $CustomerCode; // string
16
+ private $CommunicationMode; // CommunicationMode
17
+ private $SourceLocationCode; // string
18
+ private $Type; // RequestType
19
+ private $CustomMessage; // string
20
+ private $LetterTemplate; // string
21
+ private $IncludeCoverPage; // boolean
22
+ private $CloseReason; // string
23
+ private $RequestId; // string
24
+
25
+ public function __construct()
26
+ {
27
+ $this->CommunicationMode = CommunicationMode::$EMAIL;
28
+ $this->Type=RequestType::$STANDARD;
29
+ }
30
+
31
+ public function setCompanyCode($value){$this->CompanyCode=$value;} // string
32
+
33
+ /**
34
+ * Company Code of the company to which the customer belongs.
35
+ */
36
+ public function getCompanyCode(){return $this->CompanyCode;} // string
37
+
38
+ public function setCustomerCode($value){$this->CustomerCode=$value;} // string
39
+
40
+ /**
41
+ * Customer identification code from client system.
42
+ */
43
+ public function getCustomerCode(){return $this->CustomerCode;} // string
44
+
45
+ public function setCommunicationMode($value){$this->CommunicationMode=$value;} // CommunicationMode
46
+
47
+ /**
48
+ * CommunicationMode indicates the mode to use for communicating with the customer like Email, Mail, or Fax.
49
+ */
50
+ public function getCommunicationMode(){return $this->CommunicationMode;} // CommunicationMode
51
+
52
+ public function setSourceLocationCode($value){$this->SourceLocationCode=$value;} // string
53
+
54
+ /**
55
+ * SourceLocationCode is the Source LocationCode for the request. If provided; the code must be one that exists for the Company.
56
+ */
57
+ public function getSourceLocationCode(){return $this->SourceLocationCode;} // string
58
+
59
+ public function setType($value){$this->Type=$value;} // RequestType
60
+
61
+ /**
62
+ * Type indicates the type of the request to be initiated.
63
+ */
64
+ public function getType(){return $this->Type;} // RequestType
65
+
66
+ public function setCustomMessage($value){$this->CustomMessage=$value;} // string
67
+
68
+ /**
69
+ * Custom message to be used for the request.
70
+ */
71
+ public function getCustomMessage(){return $this->CustomMessage;} // string
72
+
73
+ public function setLetterTemplate($value){$this->LetterTemplate=$value;} // string
74
+
75
+ /**
76
+ * The name of the Letter Template to use for the correspondence.
77
+ */
78
+ public function getLetterTemplate(){return $this->LetterTemplate;} // string
79
+
80
+ public function setIncludeCoverPage($value){$this->IncludeCoverPage=$value;} // boolean
81
+
82
+ /**
83
+ * Whether or not a fax cover sheet with a barcode will be attached to the correspondence. If null, the default is used (false).
84
+ */
85
+ public function getIncludeCoverPage(){return $this->IncludeCoverPage;} // boolean
86
+
87
+ public function setCloseReason($value){$this->CloseReason=$value;} // string
88
+
89
+ /**
90
+ * Reason for closing the Request.
91
+ */
92
+ public function getCloseReason(){return $this->CloseReason;} // string
93
+
94
+ public function setRequestId($value){$this->RequestId=$value;} // string
95
+
96
+ /**
97
+ * Unique identifier for the Request record.
98
+ */
99
+ public function getRequestId(){return $this->RequestId;} // string
100
+
101
+ }
102
+
103
+ ?>
lib/AvaTax/classes/AvaCert2Svc/CertificateRequestInitiateResult.class.php ADDED
@@ -0,0 +1,41 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * CertificateRequestInitiateResult.class.php
4
+ */
5
+
6
+ /**
7
+ * Contains the certificate request initiate operation result returned by {@link CertificateRequestInitiate}.
8
+ *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package AvaCert2
12
+ */
13
+ class CertificateRequestInitiateResult extends BaseResult {
14
+ private $TrackingCode; // string
15
+ private $WizardLaunchUrl; // string
16
+ private $RequestId; // string
17
+ private $CustomerCode; // string
18
+
19
+ /**
20
+ * TrackingCode indicates the unique Tracking Code of the Request.
21
+ */
22
+ public function getTrackingCode(){return $this->TrackingCode;} // string
23
+
24
+ /**
25
+ * WizardLaunchUrl indicates the unique tracking Url for the Request, that is used to launch the wizard.
26
+ */
27
+ public function getWizardLaunchUrl(){return $this->WizardLaunchUrl;} // string
28
+
29
+ /**
30
+ * Unique identifier for the Request record.
31
+ */
32
+ public function getRequestId(){return $this->RequestId;} // string
33
+
34
+ /**
35
+ * Customer identification code from client system.
36
+ */
37
+ public function getCustomerCode(){return $this->CustomerCode;} // string
38
+
39
+ }
40
+
41
+ ?>
lib/AvaTax/classes/AvaCert2Svc/CertificateRequestStage.class.php ADDED
@@ -0,0 +1,43 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * CertificateRequestStage.class.php
4
+ */
5
+
6
+ /**
7
+ * CertificateStatus indicates the current stage of the Request.
8
+ *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package AvaCert2
12
+ */
13
+ class CertificateRequestStage extends Enum {
14
+
15
+ /**
16
+ * Request has been initiated; correspondence has been sent to the associated Customer.
17
+ */
18
+ public static $REQUESTINITIATED = 'REQUESTINITIATED';
19
+
20
+ /**
21
+ * Customer has responded to the correspondence.
22
+ */
23
+ public static $CUSTOMERRESPONDED = 'CUSTOMERRESPONDED';
24
+
25
+ /**
26
+ * Customer has provided a Certificate.
27
+ */
28
+ public static $CERTIFICATERECEIVED = 'CERTIFICATERECEIVED';
29
+
30
+ public static function Values()
31
+ {
32
+ return array(
33
+ CertificateRequestStage::$REQUESTINITIATED,
34
+ CertificateRequestStage::$CUSTOMERRESPONDED,
35
+ CertificateRequestStage::$CERTIFICATERECEIVED
36
+ );
37
+ }
38
+
39
+ // Unfortunate boiler plate due to polymorphism issues on static functions
40
+ public static function Validate($value) { self::__Validate($value,self::Values(),__CLASS__); }
41
+ }
42
+
43
+ ?>
lib/AvaTax/classes/AvaCert2Svc/CertificateRequestStatus.class.php ADDED
@@ -0,0 +1,43 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * CertificateRequestStatus.class.php
4
+ */
5
+
6
+ /**
7
+ * CertificateStatus indicates the current status of the Request associated with a Request record to include in the response.
8
+ *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package AvaCert2
12
+ */
13
+ class CertificateRequestStatus extends Enum {
14
+
15
+ /**
16
+ * Request of any status.
17
+ */
18
+ public static $ALL = 'ALL';
19
+
20
+ /**
21
+ * Request has been initiated and is currently open.
22
+ */
23
+ public static $OPEN = 'OPEN';
24
+
25
+ /**
26
+ * Request has been closed, either manually or automatically.
27
+ */
28
+ public static $CLOSED = 'CLOSED';
29
+
30
+ public static function Values()
31
+ {
32
+ return array(
33
+ CertificateRequestStatus::$ALL,
34
+ CertificateRequestStatus::$OPEN,
35
+ CertificateRequestStatus::$CLOSED
36
+ );
37
+ }
38
+
39
+ // Unfortunate boiler plate due to polymorphism issues on static functions
40
+ public static function Validate($value) { self::__Validate($value,self::Values(),__CLASS__); }
41
+ }
42
+
43
+ ?>
lib/AvaTax/classes/AvaCert2Svc/CertificateStatus.class.php ADDED
@@ -0,0 +1,51 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * CertificateStatus.class.php
4
+ */
5
+
6
+ /**
7
+ * CertificateStatus indicates the status for the Certificate record.
8
+ * @see ExemptionCertificate
9
+ *
10
+ * @author Avalara
11
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
12
+ * @package AvaCert2
13
+ */
14
+ class CertificateStatus extends Enum
15
+ {
16
+ /**
17
+ * The certificate is active with images received.
18
+ *
19
+ * @var CertificateStatus
20
+ */
21
+ public static $ACTIVE = 'ACTIVE';
22
+
23
+ /**
24
+ * The certificate has been voided from active use.
25
+ *
26
+ * @var CertificateStatus
27
+ */
28
+ public static $VOID = 'VOID';
29
+
30
+ /**
31
+ * The certificate does not yet have all of its images received.
32
+ *
33
+ * @var CertificateStatus
34
+ */
35
+ public static $INCOMPLETE = 'INCOMPLETE';
36
+
37
+ public static function Values()
38
+ {
39
+ return array(
40
+ CertificateStatus::$ACTIVE,
41
+ CertificateStatus::$VOID,
42
+ CertificateStatus::$INCOMPLETE
43
+ );
44
+ }
45
+
46
+ // Unfortunate boiler plate due to polymorphism issues on static functions
47
+ public static function Validate($value) { self::__Validate($value,self::Values(),__CLASS__); }
48
+
49
+ }
50
+
51
+ ?>
lib/AvaTax/classes/AvaCert2Svc/CertificateUsage.class.php ADDED
@@ -0,0 +1,51 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * CertificateUsage.class.php
4
+ */
5
+
6
+ /**
7
+ * CertificateUsage indicates the usage type for the Certificate record.
8
+ * @see ExemptionCertificate
9
+ *
10
+ * @author Avalara
11
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
12
+ * @package AvaCert2
13
+ */
14
+ class CertificateUsage extends Enum
15
+ {
16
+ /**
17
+ * The certificate may be used multiple times.
18
+ *
19
+ * @var CertificateUsage
20
+ */
21
+ public static $BLANKET = 'BLANKET';
22
+
23
+ /**
24
+ * The certificate may only be used for a single transaction.
25
+ *
26
+ * @var CertificateUsage
27
+ */
28
+ public static $SINGLE = 'SINGLE';
29
+
30
+ /**
31
+ * The value has not been set.
32
+ *
33
+ * @var CertificateUsage
34
+ */
35
+ public static $NULL = 'NULL';
36
+
37
+ public static function Values()
38
+ {
39
+ return array(
40
+ CertificateUsage::$BLANKET,
41
+ CertificateUsage::$SINGLE,
42
+ CertificateUsage::$NULL
43
+ );
44
+ }
45
+
46
+ // Unfortunate boiler plate due to polymorphism issues on static functions
47
+ public static function Validate($value) { self::__Validate($value,self::Values(),__CLASS__); }
48
+
49
+ }
50
+
51
+ ?>
lib/AvaTax/classes/AvaCert2Svc/CommunicationMode.class.php ADDED
@@ -0,0 +1,49 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * CommunicationMode.class.php
4
+ */
5
+
6
+ /**
7
+ * CommunicationMode indicates the mode to use for communicating with the customer.
8
+ * @see CertificateRequestInitiateRequest
9
+ *
10
+ * @author Avalara
11
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
12
+ * @package AvaCert2
13
+ */
14
+ class CommunicationMode {
15
+
16
+ /**
17
+ * The value has not been set.
18
+ */
19
+ public static $NULL = 'NULL';
20
+
21
+ /**
22
+ * Email address
23
+ */
24
+ public static $EMAIL = 'EMAIL';
25
+
26
+ /**
27
+ * Mail address
28
+ */
29
+ public static $MAIL = 'MAIL';
30
+
31
+ /**
32
+ * Fax number
33
+ */
34
+ public static $FAX = 'FAX';
35
+
36
+ public static function Values()
37
+ {
38
+ return array(
39
+ CommunicationMode::$NULL,
40
+ CommunicationMode::$EMAIL,
41
+ CommunicationMode::$MAIL,
42
+ CommunicationMode::$FAX
43
+
44
+ );
45
+ }
46
+
47
+ }
48
+
49
+ ?>
lib/AvaTax/classes/AvaCert2Svc/Customer.class.php ADDED
@@ -0,0 +1,137 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * Customer.class.php
4
+ */
5
+
6
+ /**
7
+ * Contains customer data. Can be passed to {@link CustomerSave} using {@link CustomerSaveRequest}.
8
+ *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package AvaCert2
12
+ */
13
+ class Customer {
14
+ private $CustomerCode; // string
15
+ private $NewCustomerCode; // string
16
+ private $ParentCustomerCode; // string
17
+ private $Type; // string
18
+ private $BusinessName; // string
19
+ private $Attn; // string
20
+ private $Address1; // string
21
+ private $Address2; // string
22
+ private $City; // string
23
+ private $State; // string
24
+ private $Country; // string
25
+ private $Zip; // string
26
+ private $Phone; // string
27
+ private $Fax; // string
28
+ private $Email; // string
29
+
30
+ public function setCustomerCode($value){$this->CustomerCode=$value;} // string
31
+
32
+ /**
33
+ * Customer identification code from client system.
34
+ */
35
+ public function getCustomerCode(){return $this->CustomerCode;} // string
36
+
37
+ public function setNewCustomerCode($value){$this->NewCustomerCode=$value;} // string
38
+
39
+ /**
40
+ * NewCustomerCode is used to update the CustomerCode.
41
+ */
42
+ public function getNewCustomerCode(){return $this->NewCustomerCode;} // string
43
+
44
+ public function setParentCustomerCode($value){$this->ParentCustomerCode=$value;} // string
45
+
46
+ /**
47
+ * Unique identifier for the Parent Customer record.
48
+ */
49
+ public function getParentCustomerCode(){return $this->ParentCustomerCode;} // string
50
+
51
+ public function setType($value){$this->Type=$value;} // string
52
+
53
+ /**
54
+ * Customer type code
55
+ */
56
+ public function getType(){return $this->Type;} // string
57
+
58
+ public function setBusinessName($value){$this->BusinessName=$value;} // string
59
+
60
+ /**
61
+ * Business or organization name
62
+ */
63
+ public function getBusinessName(){return $this->BusinessName;} // string
64
+
65
+ public function setAttn($value){$this->Attn=$value;} // string
66
+
67
+ /**
68
+ * Name of the person to use in correspondence for the Customer record.
69
+ */
70
+ public function getAttn(){return $this->Attn;} // string
71
+
72
+ public function setAddress1($value){$this->Address1=$value;} // string
73
+
74
+ /**
75
+ * Address1 of the Customer
76
+ */
77
+ public function getAddress1(){return $this->Address1;} // string
78
+
79
+ public function setAddress2($value){$this->Address2=$value;} // string
80
+
81
+ /**
82
+ * Address2 of the Customer
83
+ */
84
+ public function getAddress2(){return $this->Address2;} // string
85
+
86
+ public function setCity($value){$this->City=$value;} // string
87
+
88
+ /**
89
+ * City of the Customer
90
+ */
91
+ public function getCity(){return $this->City;} // string
92
+
93
+ public function setState($value){$this->State=$value;} // string
94
+
95
+ /**
96
+ * State or province of the Customer
97
+ */
98
+ public function getState(){return $this->State;} // string
99
+
100
+ public function setCountry($value){$this->Country=$value;} // string
101
+
102
+ /**
103
+ * ISO 2-character country code
104
+ */
105
+ public function getCountry(){return $this->Country;} // string
106
+
107
+ public function setZip($value){$this->Zip=$value;} // string
108
+
109
+ /**
110
+ * ZIP or PostalCode of the Customer
111
+ */
112
+ public function getZip(){return $this->Zip;} // string
113
+
114
+ public function setPhone($value){$this->Phone=$value;} // string
115
+
116
+ /**
117
+ * Phone number
118
+ */
119
+ public function getPhone(){return $this->Phone;} // string
120
+
121
+ public function setFax($value){$this->Fax=$value;} // string
122
+
123
+ /**
124
+ * Fax number
125
+ */
126
+ public function getFax(){return $this->Fax;} // string
127
+
128
+ public function setEmail($value){$this->Email=$value;} // string
129
+
130
+ /**
131
+ * Email address
132
+ */
133
+ public function getEmail(){return $this->Email;} // string
134
+
135
+ }
136
+
137
+ ?>
lib/AvaTax/classes/AvaCert2Svc/CustomerSaveRequest.class.php ADDED
@@ -0,0 +1,33 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * CustomerSaveRequest.class.php
4
+ */
5
+
6
+ /**
7
+ * Input for {@link CustomerSave}.
8
+ *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package AvaCert2
12
+ */
13
+ class CustomerSaveRequest {
14
+ private $CompanyCode; // string
15
+ private $Customer; // Customer
16
+
17
+ public function setCompanyCode($value){$this->CompanyCode=$value;} // string
18
+
19
+ /**
20
+ * Company Code of the company to which the customer belongs.
21
+ */
22
+ public function getCompanyCode(){return $this->CompanyCode;} // string
23
+
24
+ public function setCustomer($value){$this->Customer=$value;} // Customer
25
+
26
+ /**
27
+ * The customer to add.
28
+ */
29
+ public function getCustomer(){return $this->Customer;} // Customer
30
+
31
+ }
32
+
33
+ ?>
lib/AvaTax/classes/AvaCert2Svc/CustomerSaveResult.class.php ADDED
@@ -0,0 +1,17 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * CustomerSaveResult.class.php
4
+ */
5
+
6
+ /**
7
+ * Contains the customer save operation result returned by {@link CustomerSave}.
8
+ *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package AvaCert2
12
+ */
13
+ class CustomerSaveResult extends BaseResult {
14
+
15
+ }
16
+
17
+ ?>
lib/AvaTax/classes/AvaCert2Svc/FormatType.class.php ADDED
@@ -0,0 +1,43 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * FormatType.class.php
4
+ */
5
+
6
+ /**
7
+ * FormatType is the format in which the image needs to be exported.
8
+ *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package AvaCert2
12
+ */
13
+ class FormatType extends Enum {
14
+
15
+ /**
16
+ * The value has not been set.
17
+ */
18
+ public static $NULL = 'NULL';
19
+
20
+ /**
21
+ * PNG is a bitmapped binary image in the 1-bit PNG format (default value).
22
+ */
23
+ public static $PNG = 'PNG';
24
+
25
+ /**
26
+ * PDF is a document in Portable document format with images of every page in the certificate.
27
+ */
28
+ public static $PDF = 'PDF';
29
+
30
+ public static function Values()
31
+ {
32
+ return array(
33
+ FormatType::$NULL,
34
+ FormatType::$PNG,
35
+ FormatType::$PDF
36
+ );
37
+ }
38
+
39
+ // Unfortunate boiler plate due to polymorphism issues on static functions
40
+ public static function Validate($value) { self::__Validate($value,self::Values(),__CLASS__); }
41
+ }
42
+
43
+ ?>
lib/AvaTax/classes/AvaCert2Svc/RequestType.class.php ADDED
@@ -0,0 +1,43 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * RequestType.class.php
4
+ */
5
+
6
+ /**
7
+ * RequestType indicates the type of the request to be initiated.
8
+ * @see InitiateExemptCertRequest
9
+ *
10
+ * @author Avalara
11
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
12
+ * @package AvaCert2
13
+ */
14
+ class RequestType extends Enum
15
+ {
16
+ /**
17
+ * Standard sends correspondences and follow ups related to the Request to the associated Customer.
18
+ *
19
+ * @var RequestType
20
+ */
21
+ public static $STANDARD = 'STANDARD';
22
+
23
+ /**
24
+ * Direct does not send any correspondence or follow ups related to the Request to the associated Customer.
25
+ *
26
+ * @var RequestType
27
+ */
28
+ public static $DIRECT = 'DIRECT';
29
+
30
+ public static function Values()
31
+ {
32
+ return array(
33
+ RequestType::$STANDARD,
34
+ RequestType::$DIRECT
35
+ );
36
+ }
37
+
38
+ // Unfortunate boiler plate due to polymorphism issues on static functions
39
+ public static function Validate($value) { self::__Validate($value,self::Values(),__CLASS__); }
40
+
41
+ }
42
+
43
+ ?>
lib/AvaTax/classes/AvaCert2Svc/ReviewStatus.class.php ADDED
@@ -0,0 +1,51 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+ /**
3
+ * ReviewStatus.class.php
4
+ */
5
+
6
+ /**
7
+ * ReviewStatus indicates the review status for the Certificate record.
8
+ * @see ExemptionCertificate
9
+ *
10
+ * @author Avalara
11
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
12
+ * @package AvaCert2
13
+ */
14
+ class ReviewStatus extends Enum
15
+ {
16
+ /**
17
+ * The certificate has not yet been reviewed.
18
+ *
19
+ * @var ReviewStatus
20
+ */
21
+ public static $PENDING = 'PENDING';
22
+
23
+ /**
24
+ * The certificate was accepted during review.
25
+ *
26
+ * @var ReviewStatus
27
+ */
28
+ public static $ACCEPTED = 'ACCEPTED';
29
+
30
+ /**
31
+ * The certificate was rejected during review.
32
+ *
33
+ * @var ReviewStatus
34
+ */
35
+ public static $REJECTED = 'REJECTED';
36
+
37
+ public static function Values()
38
+ {
39
+ return array(
40
+ ReviewStatus::$PENDING,
41
+ ReviewStatus::$ACCEPTED,
42
+ ReviewStatus::$REJECTED
43
+ );
44
+ }
45
+
46
+ // Unfortunate boiler plate due to polymorphism issues on static functions
47
+ public static function Validate($value) { self::__Validate($value,self::Values(),__CLASS__); }
48
+
49
+ }
50
+
51
+ ?>
lib/AvaTax/classes/AvalaraSoapClient.class.php CHANGED
@@ -1,9 +1,6 @@
1
  <?php
2
-
3
  /**
4
  * AvalaraSoapClient.class.php
5
- *
6
- * @package Base
7
  */
8
 
9
  /**
@@ -11,13 +8,13 @@
11
  *
12
  * Users should never create instances of this class.
13
  *
14
- * @package Base
15
  * @abstract
16
  * @see AddressServiceSoap
17
  * @see TaxServiceSoap
18
- * @author tblanchard
19
- *
20
- * Copyright (c) 2007, Avalara. All rights reserved.
 
21
  */
22
 
23
  class AvalaraSoapClient
@@ -30,3 +27,7 @@ class AvalaraSoapClient
30
  public function __getLastResponseHeaders() { return $this->client->__getLastResponseHeaders(); }
31
 
32
  }
 
 
 
 
1
  <?php
 
2
  /**
3
  * AvalaraSoapClient.class.php
 
 
4
  */
5
 
6
  /**
8
  *
9
  * Users should never create instances of this class.
10
  *
 
11
  * @abstract
12
  * @see AddressServiceSoap
13
  * @see TaxServiceSoap
14
+ *
15
+ * @author Avalara
16
+ * @copyright 2004 - 2011 Avalara, Inc. All rights reserved.
17
+ * @package Base
18
  */
19
 
20
  class AvalaraSoapClient
27
  public function __getLastResponseHeaders() { return $this->client->__getLastResponseHeaders(); }
28
 
29
  }
30
+
31
+
32
+
33
+ ?>
lib/AvaTax/classes/BaseResult.class.php CHANGED
@@ -1,14 +1,14 @@
1
  <?php
2
  /**
3
  * BaseResult.class.php
4
- * @package Base
5
  */
6
 
7
  /**
8
  * The base class for result objects that return a ResultCode and Messages collection -- There is no reason for clients to create these.
9
- * @package Base
10
- * @author tblanchard
11
- * Copyright (c) 2005, Avalara. All rights reserved.
 
12
  */
13
 
14
 
@@ -23,6 +23,8 @@ class BaseResult
23
  * @return string
24
  */
25
  public function getTransactionId() { return $this->TransactionId; }
 
 
26
  /**
27
  * Indicates whether operation was successfully completed or not.
28
  * @return string
@@ -34,4 +36,6 @@ class BaseResult
34
  */
35
  public function getMessages() { return EnsureIsArray($this->Messages->Message); }
36
 
37
- }
 
 
1
  <?php
2
  /**
3
  * BaseResult.class.php
 
4
  */
5
 
6
  /**
7
  * The base class for result objects that return a ResultCode and Messages collection -- There is no reason for clients to create these.
8
+ *
9
+ * @author Avalara
10
+ * @copyright 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Base
12
  */
13
 
14
 
23
  * @return string
24
  */
25
  public function getTransactionId() { return $this->TransactionId; }
26
+
27
+ public function getDocId() { return $this->DocId; }
28
  /**
29
  * Indicates whether operation was successfully completed or not.
30
  * @return string
36
  */
37
  public function getMessages() { return EnsureIsArray($this->Messages->Message); }
38
 
39
+ }
40
+
41
+ ?>
lib/AvaTax/classes/BatchSvc/AuditMessage.class.php CHANGED
@@ -1,8 +1,14 @@
1
  <?php
2
  /**
3
  * AuditMessage.class.php
 
 
 
 
4
  *
5
- * @package Batch
 
 
6
  */
7
  class AuditMessage {
8
  private $Message; // string
@@ -11,3 +17,5 @@ class AuditMessage {
11
  public function getMessage(){return $this->Message;} // string
12
 
13
  }
 
 
1
  <?php
2
  /**
3
  * AuditMessage.class.php
4
+ */
5
+
6
+ /**
7
+ *
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Batch
12
  */
13
  class AuditMessage {
14
  private $Message; // string
17
  public function getMessage(){return $this->Message;} // string
18
 
19
  }
20
+
21
+ ?>
lib/AvaTax/classes/BatchSvc/AvaTaxBatchSvc.php CHANGED
@@ -1,12 +1,14 @@
1
  <?php
2
  /**
3
- * AvaTax.php
4
- *
5
- * @package Base
6
  */
7
 
8
  /**
9
  * Defines class loading search path.
 
 
 
 
10
  */
11
 
12
  function __autoload($class_name)
@@ -68,4 +70,7 @@ function xml_pretty_printer($xml, $html_output=FALSE)
68
 
69
  $xml = join("n", $new_xml_lines);
70
  return ($html_output) ? '<pre>' . htmlentities($xml) . '</pre>' : $xml;
71
- }
 
 
 
1
  <?php
2
  /**
3
+ * AvaTaxBatchSvc.class.php
 
 
4
  */
5
 
6
  /**
7
  * Defines class loading search path.
8
+ *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Base
12
  */
13
 
14
  function __autoload($class_name)
70
 
71
  $xml = join("n", $new_xml_lines);
72
  return ($html_output) ? '<pre>' . htmlentities($xml) . '</pre>' : $xml;
73
+ }
74
+
75
+
76
+ ?>
lib/AvaTax/classes/BatchSvc/BaseResult.class.php CHANGED
@@ -1,8 +1,14 @@
1
  <?php
2
  /**
3
  * BaseResult.class.php
 
 
 
 
4
  *
5
- * @package Batch
 
 
6
  */
7
  class BaseResult {
8
  private $TransactionId; // string
@@ -18,4 +24,6 @@ class BaseResult {
18
  public function setMessages($value){$this->Messages=$value;} // ArrayOfMessage
19
  public function getMessages(){return $this->Messages;} // ArrayOfMessage
20
 
21
- }
 
 
1
  <?php
2
  /**
3
  * BaseResult.class.php
4
+ */
5
+
6
+ /**
7
+ *
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Batch
12
  */
13
  class BaseResult {
14
  private $TransactionId; // string
24
  public function setMessages($value){$this->Messages=$value;} // ArrayOfMessage
25
  public function getMessages(){return $this->Messages;} // ArrayOfMessage
26
 
27
+ }
28
+
29
+ ?>
lib/AvaTax/classes/BatchSvc/Batch.class.php CHANGED
@@ -1,8 +1,14 @@
1
  <?php
2
  /**
3
  * Batch.class.php
 
 
 
 
4
  *
5
- * @package Batch
 
 
6
  */
7
  class Batch {
8
  private $AccountId; // int
@@ -84,3 +90,5 @@ class Batch {
84
  public function getCurrentRecord(){return $this->CurrentRecord;} // int
85
 
86
  }
 
 
1
  <?php
2
  /**
3
  * Batch.class.php
4
+ */
5
+
6
+ /**
7
+ *
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Batch
12
  */
13
  class Batch {
14
  private $AccountId; // int
90
  public function getCurrentRecord(){return $this->CurrentRecord;} // int
91
 
92
  }
93
+
94
+ ?>
lib/AvaTax/classes/BatchSvc/BatchDelete.class.php CHANGED
@@ -1,8 +1,14 @@
1
  <?php
2
  /**
3
  * BatchDelete.class.php
 
 
 
 
4
  *
5
- * @package Batch
 
 
6
  */
7
  class BatchDelete {
8
  private $DeleteRequest; // DeleteRequest
@@ -10,4 +16,6 @@ class BatchDelete {
10
  public function setDeleteRequest($value){$this->DeleteRequest=$value;} // DeleteRequest
11
  public function getDeleteRequest(){return $this->DeleteRequest;} // DeleteRequest
12
 
13
- }
 
 
1
  <?php
2
  /**
3
  * BatchDelete.class.php
4
+ */
5
+
6
+ /**
7
+ *
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Batch
12
  */
13
  class BatchDelete {
14
  private $DeleteRequest; // DeleteRequest
16
  public function setDeleteRequest($value){$this->DeleteRequest=$value;} // DeleteRequest
17
  public function getDeleteRequest(){return $this->DeleteRequest;} // DeleteRequest
18
 
19
+ }
20
+
21
+ ?>
lib/AvaTax/classes/BatchSvc/BatchDeleteResponse.class.php CHANGED
@@ -1,8 +1,14 @@
1
  <?php
2
  /**
3
  * BatchDeleteResponse.class.php
 
 
 
 
4
  *
5
- * @package Batch
 
 
6
  */
7
  class BatchDeleteResponse {
8
  private $BatchDeleteResult; // DeleteResult
@@ -11,3 +17,5 @@ class BatchDeleteResponse {
11
  public function getBatchDeleteResult(){return $this->BatchDeleteResult;} // DeleteResult
12
 
13
  }
 
 
1
  <?php
2
  /**
3
  * BatchDeleteResponse.class.php
4
+ */
5
+
6
+ /**
7
+ *
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Batch
12
  */
13
  class BatchDeleteResponse {
14
  private $BatchDeleteResult; // DeleteResult
17
  public function getBatchDeleteResult(){return $this->BatchDeleteResult;} // DeleteResult
18
 
19
  }
20
+
21
+ ?>
lib/AvaTax/classes/BatchSvc/BatchFetch.class.php CHANGED
@@ -1,8 +1,14 @@
1
  <?php
2
  /**
3
  * BatchFetch.class.php
 
 
 
 
4
  *
5
- * @package Batch
 
 
6
  */
7
  class BatchFetch {
8
  private $FetchRequest; // FetchRequest
@@ -11,3 +17,5 @@ class BatchFetch {
11
  public function getFetchRequest(){return $this->FetchRequest;} // FetchRequest
12
 
13
  }
 
 
1
  <?php
2
  /**
3
  * BatchFetch.class.php
4
+ */
5
+
6
+ /**
7
+ *
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Batch
12
  */
13
  class BatchFetch {
14
  private $FetchRequest; // FetchRequest
17
  public function getFetchRequest(){return $this->FetchRequest;} // FetchRequest
18
 
19
  }
20
+
21
+ ?>
lib/AvaTax/classes/BatchSvc/BatchFetchResponse.class.php CHANGED
@@ -1,8 +1,14 @@
1
  <?php
2
  /**
3
  * BatchFetchResponse.class.php
 
 
 
 
4
  *
5
- * @package Batch
 
 
6
  */
7
  class BatchFetchResponse {
8
  private $BatchFetchResult; // BatchFetchResult
@@ -11,3 +17,5 @@ class BatchFetchResponse {
11
  public function getBatchFetchResult(){return $this->BatchFetchResult;} // BatchFetchResult
12
 
13
  }
 
 
1
  <?php
2
  /**
3
  * BatchFetchResponse.class.php
4
+ */
5
+
6
+ /**
7
+ *
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Batch
12
  */
13
  class BatchFetchResponse {
14
  private $BatchFetchResult; // BatchFetchResult
17
  public function getBatchFetchResult(){return $this->BatchFetchResult;} // BatchFetchResult
18
 
19
  }
20
+
21
+ ?>
lib/AvaTax/classes/BatchSvc/BatchFetchResult.class.php CHANGED
@@ -1,8 +1,14 @@
1
  <?php
2
  /**
3
  * BatchFetchResult.class.php
 
 
 
 
4
  *
5
- * @package Batch
 
 
6
  */
7
  class BatchFetchResult extends BaseResult {
8
  private $Batches; // ArrayOfBatch
@@ -15,3 +21,5 @@ class BatchFetchResult extends BaseResult {
15
  public function getRecordCount(){return $this->RecordCount;} // int
16
 
17
  }
 
 
1
  <?php
2
  /**
3
  * BatchFetchResult.class.php
4
+ */
5
+
6
+ /**
7
+ *
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Batch
12
  */
13
  class BatchFetchResult extends BaseResult {
14
  private $Batches; // ArrayOfBatch
21
  public function getRecordCount(){return $this->RecordCount;} // int
22
 
23
  }
24
+
25
+ ?>
lib/AvaTax/classes/BatchSvc/BatchFile.class.php CHANGED
@@ -1,8 +1,13 @@
1
  <?php
2
  /**
3
  * BatchFile.class.php
4
- *
5
- * @package Batch
 
 
 
 
 
6
  */
7
  class BatchFile {
8
  private $BatchFileId; // int
@@ -50,3 +55,5 @@ class BatchFile {
50
  public function getErrorCount(){return $this->ErrorCount;} // int
51
 
52
  }
 
 
1
  <?php
2
  /**
3
  * BatchFile.class.php
4
+ */
5
+
6
+ /**
7
+ *
8
+ * @author Avalara
9
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
10
+ * @package Batch
11
  */
12
  class BatchFile {
13
  private $BatchFileId; // int
55
  public function getErrorCount(){return $this->ErrorCount;} // int
56
 
57
  }
58
+
59
+ ?>
lib/AvaTax/classes/BatchSvc/BatchFileDelete.class.php CHANGED
@@ -1,8 +1,14 @@
1
  <?php
2
  /**
3
  * BatchFileDelete.class.php
 
 
 
 
4
  *
5
- * @package Batch
 
 
6
  */
7
  class BatchFileDelete {
8
  private $DeleteRequest; // DeleteRequest
@@ -11,3 +17,5 @@ class BatchFileDelete {
11
  public function getDeleteRequest(){return $this->DeleteRequest;} // DeleteRequest
12
 
13
  }
 
 
1
  <?php
2
  /**
3
  * BatchFileDelete.class.php
4
+ */
5
+
6
+ /**
7
+ *
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Batch
12
  */
13
  class BatchFileDelete {
14
  private $DeleteRequest; // DeleteRequest
17
  public function getDeleteRequest(){return $this->DeleteRequest;} // DeleteRequest
18
 
19
  }
20
+
21
+ ?>
lib/AvaTax/classes/BatchSvc/BatchFileDeleteResponse.class.php CHANGED
@@ -1,8 +1,14 @@
1
  <?php
2
  /**
3
  * BatchFileDeleteResponse.class.php
 
 
 
 
4
  *
5
- * @package Batch
 
 
6
  */
7
  class BatchFileDeleteResponse {
8
  private $BatchFileDeleteResult; // DeleteResult
@@ -10,4 +16,6 @@ class BatchFileDeleteResponse {
10
  public function setBatchFileDeleteResult($value){$this->BatchFileDeleteResult=$value;} // DeleteResult
11
  public function getBatchFileDeleteResult(){return $this->BatchFileDeleteResult;} // DeleteResult
12
 
13
- }
 
 
1
  <?php
2
  /**
3
  * BatchFileDeleteResponse.class.php
4
+ */
5
+
6
+ /**
7
+ *
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Batch
12
  */
13
  class BatchFileDeleteResponse {
14
  private $BatchFileDeleteResult; // DeleteResult
16
  public function setBatchFileDeleteResult($value){$this->BatchFileDeleteResult=$value;} // DeleteResult
17
  public function getBatchFileDeleteResult(){return $this->BatchFileDeleteResult;} // DeleteResult
18
 
19
+ }
20
+
21
+ ?>
lib/AvaTax/classes/BatchSvc/BatchFileFetch.class.php CHANGED
@@ -1,8 +1,14 @@
1
  <?php
2
  /**
3
  * BatchFileFetch.class.php
 
 
 
 
4
  *
5
- * @package Batch
 
 
6
  */
7
  class BatchFileFetch {
8
  private $FetchRequest; // FetchRequest
@@ -11,3 +17,5 @@ class BatchFileFetch {
11
  public function getFetchRequest(){return $this->FetchRequest;} // FetchRequest
12
 
13
  }
 
 
1
  <?php
2
  /**
3
  * BatchFileFetch.class.php
4
+ */
5
+
6
+ /**
7
+ *
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Batch
12
  */
13
  class BatchFileFetch {
14
  private $FetchRequest; // FetchRequest
17
  public function getFetchRequest(){return $this->FetchRequest;} // FetchRequest
18
 
19
  }
20
+
21
+ ?>
lib/AvaTax/classes/BatchSvc/BatchFileFetchResponse.class.php CHANGED
@@ -1,8 +1,14 @@
1
  <?php
2
  /**
3
  * BatchFileFetchResponse.class.php
 
 
 
 
4
  *
5
- * @package Batch
 
 
6
  */
7
  class BatchFileFetchResponse {
8
  private $BatchFileFetchResult; // BatchFileFetchResult
@@ -11,3 +17,5 @@ class BatchFileFetchResponse {
11
  public function getBatchFileFetchResult(){return $this->BatchFileFetchResult;} // BatchFileFetchResult
12
 
13
  }
 
 
1
  <?php
2
  /**
3
  * BatchFileFetchResponse.class.php
4
+ */
5
+
6
+ /**
7
+ *
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Batch
12
  */
13
  class BatchFileFetchResponse {
14
  private $BatchFileFetchResult; // BatchFileFetchResult
17
  public function getBatchFileFetchResult(){return $this->BatchFileFetchResult;} // BatchFileFetchResult
18
 
19
  }
20
+
21
+ ?>
lib/AvaTax/classes/BatchSvc/BatchFileFetchResult.class.php CHANGED
@@ -1,8 +1,14 @@
1
  <?php
2
  /**
3
  * BatchFileFetchResult.class.php
 
 
 
 
4
  *
5
- * @package Batch
 
 
6
  */
7
  class BatchFileFetchResult extends BaseResult {
8
  private $BatchFiles; // ArrayOfBatchFile
@@ -15,3 +21,5 @@ class BatchFileFetchResult extends BaseResult {
15
  public function getRecordCount(){return $this->RecordCount;} // int
16
 
17
  }
 
 
1
  <?php
2
  /**
3
  * BatchFileFetchResult.class.php
4
+ */
5
+
6
+ /**
7
+ *
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Batch
12
  */
13
  class BatchFileFetchResult extends BaseResult {
14
  private $BatchFiles; // ArrayOfBatchFile
21
  public function getRecordCount(){return $this->RecordCount;} // int
22
 
23
  }
24
+
25
+ ?>
lib/AvaTax/classes/BatchSvc/BatchFileSave.class.php CHANGED
@@ -1,8 +1,14 @@
1
  <?php
2
  /**
3
  * BatchFileSave.class.php
 
 
 
 
4
  *
5
- * @package Batch
 
 
6
  */
7
  class BatchFileSave {
8
  private $BatchFile; // BatchFile
@@ -10,4 +16,6 @@ class BatchFileSave {
10
  public function setBatchFile($value){$this->BatchFile=$value;} // BatchFile
11
  public function getBatchFile(){return $this->BatchFile;} // BatchFile
12
 
13
- }
 
 
1
  <?php
2
  /**
3
  * BatchFileSave.class.php
4
+ */
5
+
6
+ /**
7
+ *
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Batch
12
  */
13
  class BatchFileSave {
14
  private $BatchFile; // BatchFile
16
  public function setBatchFile($value){$this->BatchFile=$value;} // BatchFile
17
  public function getBatchFile(){return $this->BatchFile;} // BatchFile
18
 
19
+ }
20
+
21
+ ?>
lib/AvaTax/classes/BatchSvc/BatchFileSaveResponse.class.php CHANGED
@@ -1,8 +1,14 @@
1
  <?php
2
  /**
3
  * BatchFileSaveResponse.class.php
 
 
 
 
4
  *
5
- * @package Batch
 
 
6
  */
7
  class BatchFileSaveResponse {
8
  private $BatchFileSaveResult; // BatchFileSaveResult
@@ -10,4 +16,6 @@ class BatchFileSaveResponse {
10
  public function setBatchFileSaveResult($value){$this->BatchFileSaveResult=$value;} // BatchFileSaveResult
11
  public function getBatchFileSaveResult(){return $this->BatchFileSaveResult;} // BatchFileSaveResult
12
 
13
- }
 
 
1
  <?php
2
  /**
3
  * BatchFileSaveResponse.class.php
4
+ */
5
+
6
+ /**
7
+ *
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Batch
12
  */
13
  class BatchFileSaveResponse {
14
  private $BatchFileSaveResult; // BatchFileSaveResult
16
  public function setBatchFileSaveResult($value){$this->BatchFileSaveResult=$value;} // BatchFileSaveResult
17
  public function getBatchFileSaveResult(){return $this->BatchFileSaveResult;} // BatchFileSaveResult
18
 
19
+ }
20
+
21
+ ?>
lib/AvaTax/classes/BatchSvc/BatchFileSaveResult.class.php CHANGED
@@ -1,8 +1,14 @@
1
  <?php
2
  /**
3
  * BatchFileSaveResult.class.php
 
 
 
 
4
  *
5
- * @package Batch
 
 
6
  */
7
  class BatchFileSaveResult extends BaseResult {
8
  private $BatchFileId; // int
@@ -11,3 +17,5 @@ class BatchFileSaveResult extends BaseResult {
11
  public function getBatchFileId(){return $this->BatchFileId;} // int
12
 
13
  }
 
 
1
  <?php
2
  /**
3
  * BatchFileSaveResult.class.php
4
+ */
5
+
6
+ /**
7
+ *
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Batch
12
  */
13
  class BatchFileSaveResult extends BaseResult {
14
  private $BatchFileId; // int
17
  public function getBatchFileId(){return $this->BatchFileId;} // int
18
 
19
  }
20
+
21
+ ?>
lib/AvaTax/classes/BatchSvc/BatchProcess.class.php CHANGED
@@ -1,8 +1,14 @@
1
  <?php
2
  /**
3
  * BatchProcess.class.php
 
 
 
 
4
  *
5
- * @package Batch
 
 
6
  */
7
  class BatchProcess {
8
  private $BatchProcessRequest; // BatchProcessRequest
@@ -11,3 +17,5 @@ class BatchProcess {
11
  public function getBatchProcessRequest(){return $this->BatchProcessRequest;} // BatchProcessRequest
12
 
13
  }
 
 
1
  <?php
2
  /**
3
  * BatchProcess.class.php
4
+ */
5
+
6
+ /**
7
+ *
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Batch
12
  */
13
  class BatchProcess {
14
  private $BatchProcessRequest; // BatchProcessRequest
17
  public function getBatchProcessRequest(){return $this->BatchProcessRequest;} // BatchProcessRequest
18
 
19
  }
20
+
21
+ ?>
lib/AvaTax/classes/BatchSvc/BatchProcessRequest.class.php CHANGED
@@ -1,8 +1,14 @@
1
  <?php
2
  /**
3
  * BatchProcessRequest.class.php
 
 
 
 
4
  *
5
- * @package Batch
 
 
6
  */
7
  class BatchProcessRequest //extends FilterRequest
8
  {
@@ -22,3 +28,5 @@ class BatchProcessRequest //extends FilterRequest
22
  public function getMaxCount(){return $this->MaxCount;} // int
23
 
24
  }
 
 
1
  <?php
2
  /**
3
  * BatchProcessRequest.class.php
4
+ */
5
+
6
+ /**
7
+ *
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Batch
12
  */
13
  class BatchProcessRequest //extends FilterRequest
14
  {
28
  public function getMaxCount(){return $this->MaxCount;} // int
29
 
30
  }
31
+
32
+ ?>
lib/AvaTax/classes/BatchSvc/BatchProcessResponse.class.php CHANGED
@@ -1,8 +1,14 @@
1
  <?php
2
  /**
3
  * BatchProcessResponse.class.php
 
 
 
 
4
  *
5
- * @package Batch
 
 
6
  */
7
  class BatchProcessResponse {
8
  private $BatchProcessResult; // BatchProcessResult
@@ -11,3 +17,5 @@ class BatchProcessResponse {
11
  public function getBatchProcessResult(){return $this->BatchProcessResult;} // BatchProcessResult
12
 
13
  }
 
 
1
  <?php
2
  /**
3
  * BatchProcessResponse.class.php
4
+ */
5
+
6
+ /**
7
+ *
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Batch
12
  */
13
  class BatchProcessResponse {
14
  private $BatchProcessResult; // BatchProcessResult
17
  public function getBatchProcessResult(){return $this->BatchProcessResult;} // BatchProcessResult
18
 
19
  }
20
+
21
+ ?>
lib/AvaTax/classes/BatchSvc/BatchProcessResult.class.php CHANGED
@@ -1,9 +1,17 @@
1
  <?php
2
  /**
3
  * BatchProcessResult.class.php
 
 
 
 
4
  *
5
- * @package Batch
 
 
6
  */
7
  class BatchProcessResult extends BaseResult {
8
 
9
  }
 
 
1
  <?php
2
  /**
3
  * BatchProcessResult.class.php
4
+ */
5
+
6
+ /**
7
+ *
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Batch
12
  */
13
  class BatchProcessResult extends BaseResult {
14
 
15
  }
16
+
17
+ ?>
lib/AvaTax/classes/BatchSvc/BatchSave.class.php CHANGED
@@ -1,8 +1,14 @@
1
  <?php
2
  /**
3
  * BatchSave.class.php
 
 
 
 
4
  *
5
- * @package Batch
 
 
6
  */
7
  class BatchSave {
8
  private $Batch; // Batch
@@ -11,3 +17,5 @@ class BatchSave {
11
  public function getBatch(){return $this->Batch;} // Batch
12
 
13
  }
 
 
1
  <?php
2
  /**
3
  * BatchSave.class.php
4
+ */
5
+
6
+ /**
7
+ *
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Batch
12
  */
13
  class BatchSave {
14
  private $Batch; // Batch
17
  public function getBatch(){return $this->Batch;} // Batch
18
 
19
  }
20
+
21
+ ?>
lib/AvaTax/classes/BatchSvc/BatchSaveResponse.class.php CHANGED
@@ -1,8 +1,14 @@
1
  <?php
2
  /**
3
  * BatchSaveResponse.class.php
 
 
 
 
4
  *
5
- * @package Batch
 
 
6
  */
7
  class BatchSaveResponse {
8
  private $BatchSaveResult; // BatchSaveResult
@@ -11,3 +17,5 @@ class BatchSaveResponse {
11
  public function getBatchSaveResult(){return $this->BatchSaveResult;} // BatchSaveResult
12
 
13
  }
 
 
1
  <?php
2
  /**
3
  * BatchSaveResponse.class.php
4
+ */
5
+
6
+ /**
7
+ *
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Batch
12
  */
13
  class BatchSaveResponse {
14
  private $BatchSaveResult; // BatchSaveResult
17
  public function getBatchSaveResult(){return $this->BatchSaveResult;} // BatchSaveResult
18
 
19
  }
20
+
21
+ ?>
lib/AvaTax/classes/BatchSvc/BatchSaveResult.class.php CHANGED
@@ -1,8 +1,14 @@
1
  <?php
2
  /**
3
  * BatchSaveResult.class.php
 
 
 
 
4
  *
5
- * @package Batch
 
 
6
  */
7
  class BatchSaveResult extends BaseResult {
8
  private $BatchId; // int
@@ -15,3 +21,5 @@ class BatchSaveResult extends BaseResult {
15
  public function getEstimatedCompletion(){return $this->EstimatedCompletion;} // dateTime
16
 
17
  }
 
 
1
  <?php
2
  /**
3
  * BatchSaveResult.class.php
4
+ */
5
+
6
+ /**
7
+ *
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Batch
12
  */
13
  class BatchSaveResult extends BaseResult {
14
  private $BatchId; // int
21
  public function getEstimatedCompletion(){return $this->EstimatedCompletion;} // dateTime
22
 
23
  }
24
+
25
+ ?>
lib/AvaTax/classes/BatchSvc/BatchSvc.class.php CHANGED
@@ -1,8 +1,14 @@
1
  <?php
2
  /**
3
  * BatchSvc.class.php
 
 
 
 
4
  *
5
- * @package Batch
 
 
6
  */
7
 
8
 
@@ -171,3 +177,5 @@ public function IsAuthorized($operations)
171
  }
172
 
173
  }
 
 
1
  <?php
2
  /**
3
  * BatchSvc.class.php
4
+ */
5
+
6
+ /**
7
+ *
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Batch
12
  */
13
 
14
 
177
  }
178
 
179
  }
180
+
181
+ ?>
lib/AvaTax/classes/BatchSvc/DeleteRequest.class.php CHANGED
@@ -1,8 +1,14 @@
1
  <?php
2
  /**
3
  * DeleteRequest.class.php
 
 
 
 
4
  *
5
- * @package Batch
 
 
6
  */
7
  class DeleteRequest //extends FilterRequest
8
  {
@@ -22,3 +28,5 @@ class DeleteRequest //extends FilterRequest
22
  public function getMaxCount(){return $this->MaxCount;} // int
23
 
24
  }
 
 
1
  <?php
2
  /**
3
  * DeleteRequest.class.php
4
+ */
5
+
6
+ /**
7
+ *
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Batch
12
  */
13
  class DeleteRequest //extends FilterRequest
14
  {
28
  public function getMaxCount(){return $this->MaxCount;} // int
29
 
30
  }
31
+
32
+ ?>
lib/AvaTax/classes/BatchSvc/DeleteResult.class.php CHANGED
@@ -1,9 +1,17 @@
1
  <?php
2
  /**
3
  * DeleteResult.class.php
 
 
 
 
4
  *
5
- * @package Batch
 
 
6
  */
7
  class DeleteResult extends BaseResult {
8
 
9
- }
 
 
1
  <?php
2
  /**
3
  * DeleteResult.class.php
4
+ */
5
+
6
+ /**
7
+ *
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Batch
12
  */
13
  class DeleteResult extends BaseResult {
14
 
15
+ }
16
+
17
+ ?>
lib/AvaTax/classes/BatchSvc/FetchRequest.class.php CHANGED
@@ -1,8 +1,14 @@
1
  <?php
2
  /**
3
  * FetchRequest.class.php
 
 
 
 
4
  *
5
- * @package Batch
 
 
6
  */
7
  class FetchRequest {
8
  private $Fields; // string
@@ -43,3 +49,5 @@ class FetchRequest {
43
  public function getRecordCount(){return $this->RecordCount;} // int
44
 
45
  }
 
 
1
  <?php
2
  /**
3
  * FetchRequest.class.php
4
+ */
5
+
6
+ /**
7
+ *
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Batch
12
  */
13
  class FetchRequest {
14
  private $Fields; // string
49
  public function getRecordCount(){return $this->RecordCount;} // int
50
 
51
  }
52
+
53
+ ?>
lib/AvaTax/classes/BatchSvc/FilterRequest.class.php CHANGED
@@ -1,8 +1,14 @@
1
  <?php
2
  /**
3
  * FilterRequest.class.php
 
 
 
 
4
  *
5
- * @package Batch
 
 
6
  */
7
  class FilterRequest {
8
  private $Filters; // string
@@ -20,4 +26,6 @@ class FilterRequest {
20
  public function setMaxCount($value){$this->MaxCount=$value;} // int
21
  public function getMaxCount(){return $this->MaxCount;} // int
22
 
23
- }
 
 
1
  <?php
2
  /**
3
  * FilterRequest.class.php
4
+ */
5
+
6
+ /**
7
+ *
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Batch
12
  */
13
  class FilterRequest {
14
  private $Filters; // string
26
  public function setMaxCount($value){$this->MaxCount=$value;} // int
27
  public function getMaxCount(){return $this->MaxCount;} // int
28
 
29
+ }
30
+
31
+ ?>
lib/AvaTax/classes/BatchSvc/FilterResult.class.php CHANGED
@@ -1,8 +1,14 @@
1
  <?php
2
  /**
3
  * FilterResult.class.php
 
 
 
 
4
  *
5
- * @package Batch
 
 
6
  */
7
  class FilterResult {
8
  private $Count; // int
@@ -10,4 +16,6 @@ class FilterResult {
10
  public function setCount($value){$this->Count=$value;} // int
11
  public function getCount(){return $this->Count;} // int
12
 
13
- }
 
 
1
  <?php
2
  /**
3
  * FilterResult.class.php
4
+ */
5
+
6
+ /**
7
+ *
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Batch
12
  */
13
  class FilterResult {
14
  private $Count; // int
16
  public function setCount($value){$this->Count=$value;} // int
17
  public function getCount(){return $this->Count;} // int
18
 
19
+ }
20
+
21
+ ?>
lib/AvaTax/classes/BatchSvc/IsAuthorized.class.php CHANGED
@@ -1,8 +1,14 @@
1
  <?php
2
  /**
3
  * IsAuthorized.class.php
 
 
 
 
4
  *
5
- * @package Batch
 
 
6
  */
7
  class IsAuthorized {
8
  private $Operations; // string
@@ -11,3 +17,5 @@ class IsAuthorized {
11
  public function getOperations(){return $this->Operations;} // string
12
 
13
  }
 
 
1
  <?php
2
  /**
3
  * IsAuthorized.class.php
4
+ */
5
+
6
+ /**
7
+ *
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Batch
12
  */
13
  class IsAuthorized {
14
  private $Operations; // string
17
  public function getOperations(){return $this->Operations;} // string
18
 
19
  }
20
+
21
+ ?>
lib/AvaTax/classes/BatchSvc/IsAuthorizedResponse.class.php CHANGED
@@ -1,8 +1,14 @@
1
  <?php
2
  /**
3
  * IsAuthorizedResponse.class.php
 
 
 
 
4
  *
5
- * @package Batch
 
 
6
  */
7
  class IsAuthorizedResponse {
8
  private $IsAuthorizedResult; // IsAuthorizedResult
@@ -10,4 +16,6 @@ class IsAuthorizedResponse {
10
  public function setIsAuthorizedResult($value){$this->IsAuthorizedResult=$value;} // IsAuthorizedResult
11
  public function getIsAuthorizedResult(){return $this->IsAuthorizedResult;} // IsAuthorizedResult
12
 
13
- }
 
 
1
  <?php
2
  /**
3
  * IsAuthorizedResponse.class.php
4
+ */
5
+
6
+ /**
7
+ *
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Batch
12
  */
13
  class IsAuthorizedResponse {
14
  private $IsAuthorizedResult; // IsAuthorizedResult
16
  public function setIsAuthorizedResult($value){$this->IsAuthorizedResult=$value;} // IsAuthorizedResult
17
  public function getIsAuthorizedResult(){return $this->IsAuthorizedResult;} // IsAuthorizedResult
18
 
19
+ }
20
+
21
+ ?>
lib/AvaTax/classes/BatchSvc/IsAuthorizedResult.class.php CHANGED
@@ -1,8 +1,14 @@
1
  <?php
2
  /**
3
  * IsAuthorizedResult.class.php
 
 
 
 
4
  *
5
- * @package Batch
 
 
6
  */
7
  class IsAuthorizedResult {
8
  private $Operations; // string
@@ -15,3 +21,5 @@ class IsAuthorizedResult {
15
  public function getExpires(){return $this->Expires;} // dateTime
16
 
17
  }
 
 
1
  <?php
2
  /**
3
  * IsAuthorizedResult.class.php
4
+ */
5
+
6
+ /**
7
+ *
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Batch
12
  */
13
  class IsAuthorizedResult {
14
  private $Operations; // string
21
  public function getExpires(){return $this->Expires;} // dateTime
22
 
23
  }
24
+
25
+ ?>
lib/AvaTax/classes/BatchSvc/Message.class.php CHANGED
@@ -1,8 +1,14 @@
1
  <?php
2
  /**
3
  * Message.class.php
 
 
 
 
4
  *
5
- * @package Batch
 
 
6
  */
7
  class Message {
8
  private $Summary; // string
@@ -35,3 +41,5 @@ class Message {
35
  public function getName(){return $this->Name;} // string
36
 
37
  }
 
 
1
  <?php
2
  /**
3
  * Message.class.php
4
+ */
5
+
6
+ /**
7
+ *
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Batch
12
  */
13
  class Message {
14
  private $Summary; // string
41
  public function getName(){return $this->Name;} // string
42
 
43
  }
44
+
45
+ ?>
lib/AvaTax/classes/BatchSvc/Ping.class.php CHANGED
@@ -1,8 +1,14 @@
1
  <?php
2
  /**
3
  * Ping.class.php
 
 
 
 
4
  *
5
- * @package Batch
 
 
6
  */
7
  class Ping {
8
  private $Message; // string
@@ -11,3 +17,5 @@ class Ping {
11
  public function getMessage(){return $this->Message;} // string
12
 
13
  }
 
 
1
  <?php
2
  /**
3
  * Ping.class.php
4
+ */
5
+
6
+ /**
7
+ *
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Batch
12
  */
13
  class Ping {
14
  private $Message; // string
17
  public function getMessage(){return $this->Message;} // string
18
 
19
  }
20
+
21
+ ?>
lib/AvaTax/classes/BatchSvc/PingResponse.class.php CHANGED
@@ -1,8 +1,14 @@
1
  <?php
2
  /**
3
  * PingResponse.class.php
 
 
 
 
4
  *
5
- * @package Batch
 
 
6
  */
7
  class PingResponse {
8
  private $PingResult; // PingResult
@@ -11,3 +17,5 @@ class PingResponse {
11
  public function getPingResult(){return $this->PingResult;} // PingResult
12
 
13
  }
 
 
1
  <?php
2
  /**
3
  * PingResponse.class.php
4
+ */
5
+
6
+ /**
7
+ *
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Batch
12
  */
13
  class PingResponse {
14
  private $PingResult; // PingResult
17
  public function getPingResult(){return $this->PingResult;} // PingResult
18
 
19
  }
20
+
21
+ ?>
lib/AvaTax/classes/BatchSvc/PingResult.class.php CHANGED
@@ -1,8 +1,14 @@
1
  <?php
2
  /**
3
  * PingResult.class.php
 
 
 
 
4
  *
5
- * @package Batch
 
 
6
  */
7
  class PingResult extends BaseResult
8
  {
@@ -24,3 +30,5 @@ class PingResult extends BaseResult
24
  //public function getMessages() { return EnsureIsArray($this->Messages->Message);}
25
 
26
  }
 
 
1
  <?php
2
  /**
3
  * PingResult.class.php
4
+ */
5
+
6
+ /**
7
+ *
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Batch
12
  */
13
  class PingResult extends BaseResult
14
  {
30
  //public function getMessages() { return EnsureIsArray($this->Messages->Message);}
31
 
32
  }
33
+
34
+ ?>
lib/AvaTax/classes/BatchSvc/Profile.class.php CHANGED
@@ -1,8 +1,14 @@
1
  <?php
2
  /**
3
  * Profile.class.php
 
 
 
 
4
  *
5
- * @package Batch
 
 
6
  */
7
  class Profile {
8
  private $Name; // string
@@ -22,4 +28,6 @@ class Profile {
22
  public function setMachine($value){$this->Machine=$value;} // string
23
  public function getMachine(){return $this->Machine;} // string
24
 
25
- }
 
 
1
  <?php
2
  /**
3
  * Profile.class.php
4
+ */
5
+
6
+ /**
7
+ *
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Batch
12
  */
13
  class Profile {
14
  private $Name; // string
28
  public function setMachine($value){$this->Machine=$value;} // string
29
  public function getMachine(){return $this->Machine;} // string
30
 
31
+ }
32
+
33
+ ?>
lib/AvaTax/classes/BatchSvc/SeverityLevel.class.php CHANGED
@@ -1,8 +1,14 @@
1
  <?php
2
  /**
3
  * SeverityLevel.class.php
 
 
 
 
4
  *
5
- * @package Batch
 
 
6
  */
7
  class SeverityLevel {
8
  const Success = 'Success';
@@ -10,4 +16,6 @@ class SeverityLevel {
10
  const Error = 'Error';
11
  const Exception = 'Exception';
12
 
13
- }
 
 
1
  <?php
2
  /**
3
  * SeverityLevel.class.php
4
+ */
5
+
6
+ /**
7
+ *
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Batch
12
  */
13
  class SeverityLevel {
14
  const Success = 'Success';
16
  const Error = 'Error';
17
  const Exception = 'Exception';
18
 
19
+ }
20
+
21
+ ?>
lib/AvaTax/classes/BoundaryLevel.class.php CHANGED
@@ -1,19 +1,17 @@
1
  <?php
2
  /**
3
  * BoundaryLevel.class.php
4
- * @package Tax
5
  */
6
 
7
  /**
8
- * BoundaryLevel.class.php
9
- *
10
  * Jurisdiction boundary precision level found for address;
11
  * This depends on the accuracy of the address as well as the
12
  * precision level of the state provided jurisdiction boundaries.
13
- * @package Tax
14
  * @see TaxLine
15
- * @author tblanchard
16
- * Copyright (c) 2008, Avalara. All rights reserved.
 
 
17
  */
18
 
19
  class BoundaryLevel extends Enum
@@ -54,4 +52,7 @@ class BoundaryLevel extends Enum
54
 
55
  // Unfortunate boiler plate due to polymorphism issues on static functions
56
  public static function Validate($value) { self::__Validate($value,self::Values(),__CLASS__); }
57
- }
 
 
 
1
  <?php
2
  /**
3
  * BoundaryLevel.class.php
 
4
  */
5
 
6
  /**
 
 
7
  * Jurisdiction boundary precision level found for address;
8
  * This depends on the accuracy of the address as well as the
9
  * precision level of the state provided jurisdiction boundaries.
 
10
  * @see TaxLine
11
+ *
12
+ * @author Avalara
13
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
14
+ * @package Tax
15
  */
16
 
17
  class BoundaryLevel extends Enum
52
 
53
  // Unfortunate boiler plate due to polymorphism issues on static functions
54
  public static function Validate($value) { self::__Validate($value,self::Values(),__CLASS__); }
55
+ }
56
+
57
+
58
+ ?>
lib/AvaTax/classes/CancelCode.class.php CHANGED
@@ -1,20 +1,16 @@
1
  <?php
2
  /**
3
  * CancelCode.class.php
4
- *
5
- * @package Tax
6
  */
7
 
8
  /**
9
- * CancelCode.class.php
10
-
11
  * A cancel code is set on a {@link CancelTaxRequest} and specifies the reason the
12
  * tax calculation is being canceled (or in the case of posting, returned to its prior state).
13
- * @author tblanchard
14
- * @package Tax
15
  * @see CancelTaxRequest
16
- * Copyright (c) 2008, Avalara. All rights reserved.
17
-
 
 
18
  */
19
  class CancelCode extends Enum
20
  {
@@ -69,4 +65,6 @@ class CancelCode extends Enum
69
  // Unfortunate boiler plate due to polymorphism issues on static functions
70
  public static function Validate($value) { self::__Validate($value,self::Values(),__CLASS__); }
71
 
72
- }
 
 
1
  <?php
2
  /**
3
  * CancelCode.class.php
 
 
4
  */
5
 
6
  /**
 
 
7
  * A cancel code is set on a {@link CancelTaxRequest} and specifies the reason the
8
  * tax calculation is being canceled (or in the case of posting, returned to its prior state).
 
 
9
  * @see CancelTaxRequest
10
+ *
11
+ * @author Avalara
12
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
13
+ * @package Tax
14
  */
15
  class CancelCode extends Enum
16
  {
65
  // Unfortunate boiler plate due to polymorphism issues on static functions
66
  public static function Validate($value) { self::__Validate($value,self::Values(),__CLASS__); }
67
 
68
+ }
69
+
70
+ ?>
lib/AvaTax/classes/CancelTaxRequest.class.php CHANGED
@@ -1,10 +1,8 @@
1
  <?php
2
  /**
3
  * CancelTaxRequest.class.php
4
- * @package Tax
5
  */
6
 
7
-
8
  /**
9
  * Data to pass to CancelTax indicating
10
  * the document that should be cancelled and the reason for the operation.
@@ -15,11 +13,11 @@
15
  * DocType in order to uniquely identify the document.
16
  * </p>
17
  *
18
- * @package Tax
19
  * @see CancelTaxResult, DocumentType
20
- * @author tblanchard
21
- * Copyright (c) 2008, Avalara. All rights reserved.
22
  *
 
 
 
23
  */
24
 
25
  class CancelTaxRequest extends TaxRequest
@@ -52,4 +50,10 @@ class CancelTaxRequest extends TaxRequest
52
 
53
  public function setCancelCode($value) { CancelCode::Validate($value); $this->CancelCode = $value; return $this; }
54
 
55
- }
 
 
 
 
 
 
1
  <?php
2
  /**
3
  * CancelTaxRequest.class.php
 
4
  */
5
 
 
6
  /**
7
  * Data to pass to CancelTax indicating
8
  * the document that should be cancelled and the reason for the operation.
13
  * DocType in order to uniquely identify the document.
14
  * </p>
15
  *
 
16
  * @see CancelTaxResult, DocumentType
 
 
17
  *
18
+ * @author Avalara
19
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
20
+ * @package Tax
21
  */
22
 
23
  class CancelTaxRequest extends TaxRequest
50
 
51
  public function setCancelCode($value) { CancelCode::Validate($value); $this->CancelCode = $value; return $this; }
52
 
53
+ }
54
+
55
+
56
+
57
+
58
+
59
+ ?>
lib/AvaTax/classes/CancelTaxResult.class.php CHANGED
@@ -1,19 +1,16 @@
1
  <?php
2
  /**
3
  * CancelTaxResult.class.php
4
- *
5
- * @package Tax
6
  */
7
 
8
  /**
9
- * CancelTaxResult.class.php
10
- *
11
- **
12
  * Result data returned from {@link TaxSvcSoap#cancelTax}
13
  * @see CancelTaxRequest
14
- * @author tblanchard
15
- * @package Tax
16
- * Copyright (c) 2008, Avalara. All rights reserved.
 
 
17
  */
18
 
19
  class CancelTaxResult // extends BaseResult
@@ -34,12 +31,17 @@ class CancelTaxResult // extends BaseResult
34
  * @var array of Message.
35
  */
36
  private $Messages = array();
 
 
37
 
38
  /**
39
  * Accessor
40
  * @return string
41
  */
42
  public function getTransactionId() { return $this->TransactionId; }
 
 
 
43
  /**
44
  * Accessor
45
  * @return string
@@ -53,4 +55,6 @@ class CancelTaxResult // extends BaseResult
53
 
54
 
55
 
56
- }
 
 
1
  <?php
2
  /**
3
  * CancelTaxResult.class.php
 
 
4
  */
5
 
6
  /**
 
 
 
7
  * Result data returned from {@link TaxSvcSoap#cancelTax}
8
  * @see CancelTaxRequest
9
+ *
10
+ * @author Avalara
11
+ * @copyright 2004 - 2011 Avalara, Inc. All rights reserved.
12
+ * @package Tax
13
+ *
14
  */
15
 
16
  class CancelTaxResult // extends BaseResult
31
  * @var array of Message.
32
  */
33
  private $Messages = array();
34
+
35
+ private $DocId;
36
 
37
  /**
38
  * Accessor
39
  * @return string
40
  */
41
  public function getTransactionId() { return $this->TransactionId; }
42
+
43
+ public function getDocId() { return $this->DocId; }
44
+
45
  /**
46
  * Accessor
47
  * @return string
55
 
56
 
57
 
58
+ }
59
+
60
+ ?>
lib/AvaTax/classes/CommitTaxRequest.class.php CHANGED
@@ -1,7 +1,6 @@
1
  <?php
2
  /**
3
  * CommitTaxRequest.class.php
4
- * @package Tax
5
  */
6
 
7
  /**
@@ -13,10 +12,11 @@
13
  * {@link CommitTaxRequest#tDocType} in order to uniquely identify the document.
14
  * </p>
15
  *
16
- * @package Tax
17
  * @see CommitTaxResult
18
- * @author tblanchard
19
- * Copyright (c) 2007, Avalara. All rights reserved.
 
 
20
  */
21
 
22
  class CommitTaxRequest extends TaxRequest
@@ -40,4 +40,7 @@ class CommitTaxRequest extends TaxRequest
40
 
41
 
42
 
43
- }
 
 
 
1
  <?php
2
  /**
3
  * CommitTaxRequest.class.php
 
4
  */
5
 
6
  /**
12
  * {@link CommitTaxRequest#tDocType} in order to uniquely identify the document.
13
  * </p>
14
  *
 
15
  * @see CommitTaxResult
16
+ *
17
+ * @author Avalara
18
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
19
+ * @package Tax
20
  */
21
 
22
  class CommitTaxRequest extends TaxRequest
40
 
41
 
42
 
43
+ }
44
+
45
+
46
+ ?>
lib/AvaTax/classes/CommitTaxResult.class.php CHANGED
@@ -1,16 +1,15 @@
1
  <?php
2
  /**
3
  * CommitTaxResult.class.php
4
- * @package Tax
5
  */
6
 
7
  /**
8
  * Result data returned from {@link TaxServiceSoap#commitTax}.
9
- *
10
- * @package Tax
11
  * @see CommitTaxRequest
12
- * @author tblanchard
13
- * Copyright (c) 2008, Avalara. All rights reserved.
 
 
14
  */
15
 
16
  class CommitTaxResult //extends BaseResult
@@ -23,6 +22,8 @@ class CommitTaxResult //extends BaseResult
23
  * @var string
24
  */
25
  private $TransactionId;
 
 
26
  /**
27
  * @var string must be one of the values defined in {@link SeverityLevel}.
28
  */
@@ -37,6 +38,8 @@ class CommitTaxResult //extends BaseResult
37
  * @return string
38
  */
39
  public function getTransactionId() { return $this->TransactionId; }
 
 
40
  /**
41
  * Accessor
42
  * @return string
@@ -49,4 +52,6 @@ class CommitTaxResult //extends BaseResult
49
  public function getMessages() { return EnsureIsArray($this->Messages->Message); }
50
 
51
 
52
- }
 
 
1
  <?php
2
  /**
3
  * CommitTaxResult.class.php
 
4
  */
5
 
6
  /**
7
  * Result data returned from {@link TaxServiceSoap#commitTax}.
 
 
8
  * @see CommitTaxRequest
9
+ *
10
+ * @author Avalara
11
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
12
+ * @package Tax
13
  */
14
 
15
  class CommitTaxResult //extends BaseResult
22
  * @var string
23
  */
24
  private $TransactionId;
25
+
26
+ private $DocId;
27
  /**
28
  * @var string must be one of the values defined in {@link SeverityLevel}.
29
  */
38
  * @return string
39
  */
40
  public function getTransactionId() { return $this->TransactionId; }
41
+
42
+ public function getDocId() { return $this->DocId;}
43
  /**
44
  * Accessor
45
  * @return string
52
  public function getMessages() { return EnsureIsArray($this->Messages->Message); }
53
 
54
 
55
+ }
56
+
57
+ ?>
lib/AvaTax/classes/DetailLevel.class.php CHANGED
@@ -1,16 +1,16 @@
1
  <?php
2
  /**
3
  * DetailLevel.class.php
4
- * @package Tax
5
  */
6
 
7
  /**
8
  * Specifies the level of tax detail to return to the client application following a tax calculation.
9
- *
10
- * @package Tax
11
  * @see GetTaxRequest, GetTaxHistoryRequest
12
- * @author tblanchard
13
- * Copyright (c) 2007, Avalara. All rights reserved. */
 
 
 
14
 
15
 
16
  class DetailLevel extends Enum
@@ -52,4 +52,6 @@ class DetailLevel extends Enum
52
 
53
  // Unfortunate boiler plate due to polymorphism issues on static functions
54
  public static function Validate($value) { self::__Validate($value,self::Values(),__CLASS__); }
55
- }
 
 
1
  <?php
2
  /**
3
  * DetailLevel.class.php
 
4
  */
5
 
6
  /**
7
  * Specifies the level of tax detail to return to the client application following a tax calculation.
 
 
8
  * @see GetTaxRequest, GetTaxHistoryRequest
9
+ *
10
+ * @author Avalara
11
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
12
+ * @package Tax
13
+ */
14
 
15
 
16
  class DetailLevel extends Enum
52
 
53
  // Unfortunate boiler plate due to polymorphism issues on static functions
54
  public static function Validate($value) { self::__Validate($value,self::Values(),__CLASS__); }
55
+ }
56
+
57
+ ?>
lib/AvaTax/classes/DocStatus.class.php CHANGED
@@ -1,16 +1,15 @@
1
  <?php
2
  /**
3
  * DocStatus.class.php
4
- * @package Tax
5
  */
6
 
7
  /**
8
  * The document's status is returned in the GetTaxResult (except for <b>DocStatus::$Any</b>)
9
  * and indicates the state of the document in tax history.
10
  *
11
- * @package Tax
12
- * @author tblanchard
13
- * Copyright (c) 2007, Avalara. All rights reserved.
14
  */
15
 
16
 
@@ -82,4 +81,6 @@ class DocStatus extends Enum
82
  // Unfortunate boiler plate due to polymorphism issues on static functions
83
  public static function Validate($value) { self::__Validate($value,self::Values(),__CLASS__); }
84
 
85
- }
 
 
1
  <?php
2
  /**
3
  * DocStatus.class.php
 
4
  */
5
 
6
  /**
7
  * The document's status is returned in the GetTaxResult (except for <b>DocStatus::$Any</b>)
8
  * and indicates the state of the document in tax history.
9
  *
10
+ * @author Avalara
11
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
12
+ * @package Tax
13
  */
14
 
15
 
81
  // Unfortunate boiler plate due to polymorphism issues on static functions
82
  public static function Validate($value) { self::__Validate($value,self::Values(),__CLASS__); }
83
 
84
+ }
85
+
86
+ ?>
lib/AvaTax/classes/DocumentType.class.php CHANGED
@@ -1,17 +1,15 @@
1
  <?php
2
  /**
3
  * DocumentType.class.php
4
- *
5
- * @package Tax
6
  */
7
 
8
  /**
9
  * The document type specifies the category of the document and affects how the document
10
  * is treated after a tax calculation. Specified when constructing a {@link GetTaxRequest}.
11
  *
12
- * @package Tax
13
- * @author tblanchard
14
- * Copyright (c) 2008, Avalara. All rights reserved.
15
  */
16
 
17
 
@@ -59,6 +57,20 @@ class DocumentType extends Enum
59
  * @var DocumentType
60
  */
61
  public static $ReturnInvoice = 'ReturnInvoice';
 
 
 
 
 
 
 
 
 
 
 
 
 
 
62
 
63
  /**
64
  * This will return all types of documents.
@@ -76,13 +88,14 @@ class DocumentType extends Enum
76
  DocumentType::$PurchaseInvoice,
77
  DocumentType::$ReturnOrder,
78
  DocumentType::$ReturnInvoice,
79
- DocumentType::$Any
 
 
80
  );
81
  }
82
  // Unfortunate boiler plate due to polymorphism issues on static functions
83
  public static function Validate($value) { self::__Validate($value,self::Values(),__CLASS__); }
84
 
85
-
86
-
87
-
88
- }
1
  <?php
2
  /**
3
  * DocumentType.class.php
 
 
4
  */
5
 
6
  /**
7
  * The document type specifies the category of the document and affects how the document
8
  * is treated after a tax calculation. Specified when constructing a {@link GetTaxRequest}.
9
  *
10
+ * @author Avalara
11
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
12
+ * @package Tax
13
  */
14
 
15
 
57
  * @var DocumentType
58
  */
59
  public static $ReturnInvoice = 'ReturnInvoice';
60
+
61
+ /**
62
+ * Inventory Transfer Order
63
+ *
64
+ * @var DocumentType
65
+ */
66
+ public static $InventoryTransferOrder = 'InventoryTransferOrder';
67
+
68
+ /**
69
+ * Inventory Transfer Invoice
70
+ *
71
+ * @var DocumentType
72
+ */
73
+ public static $InventoryTransferInvoice = 'InventoryTransferInvoice';
74
 
75
  /**
76
  * This will return all types of documents.
88
  DocumentType::$PurchaseInvoice,
89
  DocumentType::$ReturnOrder,
90
  DocumentType::$ReturnInvoice,
91
+ DocumentType::$InventoryTransferOrder,
92
+ DocumentType::$InventoryTransferInvoice,
93
+ DocumentType::$Any
94
  );
95
  }
96
  // Unfortunate boiler plate due to polymorphism issues on static functions
97
  public static function Validate($value) { self::__Validate($value,self::Values(),__CLASS__); }
98
 
99
+ }
100
+
101
+ ?>
 
lib/AvaTax/classes/DynamicSoapClient.class.php CHANGED
@@ -1,7 +1,6 @@
1
  <?php
2
  /**
3
  * DynamicSoapClient.class.php
4
- * @package Base
5
  */
6
 
7
  /**
@@ -10,13 +9,13 @@
10
  * Users should never need to create instances of this class. This class provides the underlying implementation
11
  * for instances of {@link AvalaraSoapClient} and it's subclasses.
12
  *
13
- * @package Base
14
  * @see AvalaraSoapClient
15
  * @see AddressServiceSoap
16
  * @see TaxServiceSoap
17
- * @author tblanchard
18
  *
19
- * Copyright (c) 2007, Avalara. All rights reserved.
 
 
20
  */
21
 
22
  class DynamicSoapClient extends SoapClient
@@ -59,3 +58,5 @@ class DynamicSoapClient extends SoapClient
59
  }
60
 
61
  }
 
 
1
  <?php
2
  /**
3
  * DynamicSoapClient.class.php
 
4
  */
5
 
6
  /**
9
  * Users should never need to create instances of this class. This class provides the underlying implementation
10
  * for instances of {@link AvalaraSoapClient} and it's subclasses.
11
  *
 
12
  * @see AvalaraSoapClient
13
  * @see AddressServiceSoap
14
  * @see TaxServiceSoap
 
15
  *
16
+ * @author Avalara
17
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
18
+ * @package Base
19
  */
20
 
21
  class DynamicSoapClient extends SoapClient
58
  }
59
 
60
  }
61
+
62
+ ?>
lib/AvaTax/classes/Enum.class.php CHANGED
@@ -1,15 +1,14 @@
1
  <?php
2
  /**
3
  * Enum.class.php
4
- * @package Base
5
  */
6
 
7
  /**
8
  * Abstract class for enumerated types - provides validation.
9
  *
10
- * @package Base
11
- * @author tblanchard
12
- * Copyright (c) 2008, Avalara. All rights reserved.
13
  */
14
 
15
  class Enum
@@ -27,4 +26,6 @@ class Enum
27
 
28
  throw new Exception('Invalid '.$class.' "'.$value.'" - must be one of "'.implode('"|"',$values).'"');
29
  }
30
- }
 
 
1
  <?php
2
  /**
3
  * Enum.class.php
 
4
  */
5
 
6
  /**
7
  * Abstract class for enumerated types - provides validation.
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Base
12
  */
13
 
14
  class Enum
26
 
27
  throw new Exception('Invalid '.$class.' "'.$value.'" - must be one of "'.implode('"|"',$values).'"');
28
  }
29
+ }
30
+
31
+ ?>
lib/AvaTax/classes/GetTaxHistoryRequest.class.php CHANGED
@@ -1,11 +1,8 @@
1
  <?php
2
  /**
3
  * GetTaxHistoryRequest.class.php
4
- *
5
- * @package Tax
6
  */
7
 
8
-
9
  /**
10
  * Data to pass to {@link TaxServiceSoap#getTaxHistory}.
11
  * <p>
@@ -13,9 +10,10 @@
13
  * </p>
14
  *
15
  * @see GetTaxHistoryResult
16
- * @package Tax
17
- * @author tblanchard
18
- * Copyright (c) 2008, Avalara. All rights reserved.
 
19
  */
20
 
21
  class GetTaxHistoryRequest extends TaxRequest
@@ -49,4 +47,6 @@ class GetTaxHistoryRequest extends TaxRequest
49
 
50
  public function setDetailLevel($value) { DetailLevel::Validate($value); $this->DetailLevel = $value; return $this; } //Summary or Document or Line or Tax or Diagnostic - enum
51
 
52
- }
 
 
1
  <?php
2
  /**
3
  * GetTaxHistoryRequest.class.php
 
 
4
  */
5
 
 
6
  /**
7
  * Data to pass to {@link TaxServiceSoap#getTaxHistory}.
8
  * <p>
10
  * </p>
11
  *
12
  * @see GetTaxHistoryResult
13
+ *
14
+ * @author Avalara
15
+ * @copyright 2004 - 2011 Avalara, Inc. All rights reserved.
16
+ * @package Tax
17
  */
18
 
19
  class GetTaxHistoryRequest extends TaxRequest
47
 
48
  public function setDetailLevel($value) { DetailLevel::Validate($value); $this->DetailLevel = $value; return $this; } //Summary or Document or Line or Tax or Diagnostic - enum
49
 
50
+ }
51
+
52
+ ?>
lib/AvaTax/classes/GetTaxHistoryResult.class.php CHANGED
@@ -1,16 +1,16 @@
1
  <?php
2
  /**
3
  * GetTaxHistoryResult.class.php
4
- * @package Tax
5
  */
6
 
7
  /**
8
  * Result data returned from {@link TaxServiceSoap#getTaxHistory} for a previously calculated tax document.
9
  *
10
- * @package Tax
11
  * @see GetTaxHistoryRequest
12
- * @author tblanchard
13
- * Copyright (c) 2007, Avalara. All rights reserved.
 
 
14
  */
15
 
16
  class GetTaxHistoryResult //extends BaseResult
@@ -67,4 +67,6 @@ class GetTaxHistoryResult //extends BaseResult
67
  public function getMessages() { return EnsureIsArray($this->Messages->Message); }
68
 
69
 
70
- }
 
 
1
  <?php
2
  /**
3
  * GetTaxHistoryResult.class.php
 
4
  */
5
 
6
  /**
7
  * Result data returned from {@link TaxServiceSoap#getTaxHistory} for a previously calculated tax document.
8
  *
 
9
  * @see GetTaxHistoryRequest
10
+ *
11
+ * @author Avalara
12
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
13
+ * @package Tax
14
  */
15
 
16
  class GetTaxHistoryResult //extends BaseResult
67
  public function getMessages() { return EnsureIsArray($this->Messages->Message); }
68
 
69
 
70
+ }
71
+
72
+ ?>
lib/AvaTax/classes/GetTaxRequest.class.php CHANGED
@@ -1,21 +1,21 @@
1
  <?php
2
  /**
3
  * GetTaxRequest.class.php
4
- * @package Tax
5
  */
6
 
7
  /**
8
  * Data to pass to {@link TaxServiceSoap#getTax}.
9
  *
10
  * @see GetTaxResult
11
- * @package Tax
12
- * @author tblanchard
13
- * Copyright (c) 2007, Avalara. All rights reserved.
 
14
  */
15
-
16
-
17
 
18
- class GetTaxRequest
 
 
19
  {
20
  private $CompanyCode; // string
21
  private $DocCode;
@@ -27,40 +27,35 @@ class GetTaxRequest
27
  private $Discount; //decimal
28
  private $PurchaseOrderNo; //string
29
  private $ExemptionNo; //string if not using ECMS which keys on customer code
30
- private $OriginCode; //string
31
  private $DestinationCode; //string
32
  private $Addresses; //array
33
  private $Lines; //array
34
  private $DetailLevel; //Summary or Document or Line or Tax or Diagnostic
35
- private $ReferenceCode; // string
36
  private $LocationCode; //string
37
  private $Commit=false; //boolean
38
  private $BatchCode; //string
39
  private $OriginAddress; //address
40
  private $DestinationAddress; //address
41
-
42
-
43
  //@author: Swetal
44
- //Added new properties to upgrade to 5.3 interface
45
  private $TaxOverride; //TaxOverride
46
  private $CurrencyCode; //string
47
  private $ServiceMode; //type: ServiceMode
48
  private $PaymentDate; //date
49
  private $ExchangeRate; //decimal
 
50
  private $ExchangeRateEffDate; //date
 
51
 
52
-
53
- //@author: Rapshtynska Svitlana
54
- //Added new properties
55
- private $TaxDate; //date
56
- private $StatusDate; //date
57
-
58
-
59
-
60
 
61
  public function __construct()
62
  {
63
-
64
  $this->DocDate = date("Y-m-d");
65
  $this->Commit=false;
66
  $this->HashCode=0;
@@ -70,16 +65,16 @@ class GetTaxRequest
70
  $this->DocCode = date("Y-m-d-H-i-s.u");
71
  $this->CustomerCode='CustomerCodeString';
72
  $this->Lines=array(new Line());
73
-
74
  $this->ServiceMode=ServiceMode::$Automatic;
75
- $this->ExchangeRate=1.0;
76
 
77
  $dateTime=new DateTime();
78
  $dateTime->setDate(1900,01,01);
79
  $this->ExchangeRateEffDate=$dateTime->format("Y-m-d");
80
  $this->PaymentDate=$dateTime->format("Y-m-d");
81
-
82
-
83
  }
84
 
85
  public function prepare()
@@ -93,7 +88,7 @@ class GetTaxRequest
93
  }
94
  return $this;
95
  }
96
-
97
  public function registerAddress(&$address)
98
  {
99
  if($address == null) { return null; }
@@ -110,80 +105,123 @@ class GetTaxRequest
110
  $address->setAddressCode ( $index);
111
  return $index;
112
  }
113
-
114
  public function postFetch()
115
  {
116
  $addresses = $this->getAddresses();
117
  $this->OriginAddress = $addresses[$this->OriginCode];
118
  $this->DestinationAddress = $addresses[$this->DestinationCode];
119
-
120
  //@author: Swetal
121
  //Commenting following foreach loop
122
  //Reason is postFetch function is called after getTaxHistory to populate origin and destination address
123
  //but taxHistory does not return origin and destination code so with followign loop we can not retrive origin
124
- //and destination adress for line. This gives invalid index error if not commented
125
  /*foreach($this->getLines() as $line)
126
- {
127
  $line->postFetchWithAddresses($addresses);
128
  }*/
129
-
130
- return $this;
131
  }
132
-
133
-
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
134
  /**
135
  * Enter description here...
136
  *
137
- * @param string $value
138
  */
139
  public function setAddressCode($value) { $this->AddressCode = $value; return $this; }
140
-
141
  /**
142
  * Enter description here...
143
  *
144
- * @param string $value
145
  */
146
  public function setLine1($value) { $this->Line1 = $value; return $this; }
147
-
148
  /**
149
  * Enter description here...
150
  *
151
- * @param string $value
152
  */
153
  public function setLine2($value) { $this->Line2 = $value; return $this; }
154
-
155
  /**
156
  * Enter description here...
157
  *
158
- * @param string $value
159
  */
160
  public function setLine3($value) { $this->Line3 = $value; return $this; }
161
-
162
  /**
163
  * Enter description here...
164
  *
165
- * @param string $value
166
  */
167
  public function setCity($value) { $this->City = $value; return $this; }
168
-
169
  /**
170
  * Enter description here...
171
  *
172
- * @param string $value
173
  */
174
  public function setRegion($value) { $this->Region = $value; return $this; }
175
-
176
  /**
177
  * Enter description here...
178
  *
179
- * @param string $value
180
  */
181
  public function setPostalCode($value) { $this->PostalCode = $value; return $this; }
182
-
183
  /**
184
  * Enter description here...
185
  *
186
- * @param string $value
187
  */
188
  public function setCountry($value) { $this->Country = $value; return $this; }
189
 
@@ -192,68 +230,68 @@ class GetTaxRequest
192
  * @access public
193
  * @param integer
194
  */
195
-
196
-
197
  /**
198
- * DocDate should be in the format yyyy-mm-dd
199
  *
200
- * @param date $value
201
  */
202
  public function setDocDate($value) { $this->DocDate = $value; return $this; } //date
203
 
204
-
205
  /**
206
  * Sets the client application company reference code.
207
  *
208
  * @param string $value
209
- *
210
  */
211
  public function setCompanyCode($value) { $this->CompanyCode = $value; return $this; } //string
212
-
213
  /**
214
  * The document type specifies the category of the document and affects how the document is treated after a tax calculation; see DocumentType for more information about the specific document types.
215
  *
216
  * @param DocumentType $value
217
- *
218
  */
219
  public function setDocType($value) { DocumentType::Validate($value); $this->DocType = $value; return $this; } //SalesOrder or SalesInvoice or PurchaseOrder or PurchaseInvoice or ReturnOrder or ReturnInvoice
220
-
221
  /**
222
- * Specifies the level of detail to return.
223
  *
224
  * @param DetailLevel $value
225
-
226
  */
227
  public function setDetailLevel($value) { DetailLevel::Validate($value); $this->DetailLevel = $value; return $this; } //Summary or Document or Line or Tax or Diagnostic - enum
228
-
229
  /**
230
- * Sets the Document Code, i.e. the internal reference code used by the client application.
231
  *
232
  * @param string $value
233
 
234
  */
235
- public function setDocCode($value) { $this->DocCode = $value; return $this; } //string invoice number
236
-
237
  /**
238
- * The client application salesperson reference code.
239
  *
240
  * @param string $value
241
-
242
  */
243
  public function setSalespersonCode($value) { $this->SalespersonCode = $value; return $this; } //string
244
-
245
  /**
246
- * The client application customer reference code.
247
  *
248
  * @param string $value
249
-
250
  */
251
  public function setCustomerCode($value) { $this->CustomerCode = $value; return $this; } //string
252
-
253
  /**
254
  * The client application customer or usage type.
255
  * <p>
256
- * This is used to determine the exempt status of the transaction based on the exemption tax rules for the
257
  * jurisdictions involved. This may also be set at the line level.
258
  * </p>
259
  * <p>
@@ -274,80 +312,80 @@ class GetTaxRequest
274
  * @param customerUsageType
275
  */
276
  public function setCustomerUsageType($value) { $this->CustomerUsageType = $value; return $this; } //string Entity Usage
277
-
278
  /**
279
- *Purchase Order Number for this document.
280
  *
281
  * @param string $value
282
-
283
  */
284
  public function setPurchaseOrderNo($value) { $this->PurchaseOrderNo = $value; return $this; } //string
285
-
286
  /**
287
- * Exemption Number for this document
288
  *
289
  * @param string $value
290
-
291
  */
292
  public function setExemptionNo($value) { $this->ExemptionNo = $value; return $this; } //string if not using ECMS which keys on customer code
293
-
294
-
295
-
296
  /**
297
- * Also referred to as a Store Location, Outlet Id, or Outlet code is a number assigned by the State which identifies a Store location. Some state returns require taxes are broken out separatly for Store Locations.
298
  *
299
  * @param string $value
300
-
301
  */
302
  public function setLocationCode($value) { $this->LocationCode = $value; return $this; } //string
303
-
304
-
305
  public function setBatchCode($value) { $this->BatchCode = $value; return $this; } //string
306
 
307
  /**
308
- * The discount amount to apply to the document.
309
  *
310
  * @param decimal $value
311
-
312
  */
313
  public function setDiscount($value) { $this->Discount = $value; return $this; } //decimal
314
- //public function setTotalTaxOverride($value) { $this->TotalTaxOverride = $value; return $this; } //decimal
315
-
316
  /**
317
  * Set addresses
318
  *
319
  * @param array $value
320
-
321
  */
322
  public function setAddresses($value) { $this->Addresses = $value; return $this; } //array
323
-
324
  /**
325
  * Set tax lines
326
  *
327
  * @param array $value
328
-
329
  */
330
  public function setLines($value) { $this->Lines = $value; return $this; } //array
331
-
332
  public function setHashCode($value) { $this->HashCode = $value; return $this; } //int
333
-
334
  /**
335
- * This has been defaulted to False ; invoice will be committed if this flag has been set to True.
336
  *
337
  * @param boolean $value
338
  *
339
  */
340
  public function setCommit($value) { $this->Commit = $value; return $this; } //boolean
341
  //public function setIsTotalTaxOverriden($value) { $this->IsTotalTaxOverriden = ($value ? true : false); return $this; } //boolean
342
-
343
  /**
344
  * Set ship from address
345
  *
346
  * @param Address $value
347
-
348
  */
349
  public function setOriginAddress($value) { $this->OriginAddress = $value; return $this; } //address
350
-
351
  /**
352
  * set ship to address
353
  *
@@ -355,90 +393,90 @@ class GetTaxRequest
355
 
356
  */
357
  public function setDestinationAddress($value) { $this->DestinationAddress = $value; return $this; } //address
358
-
359
  //@author:swetal
360
-
361
  /**
362
  * ExchangeRate indicates the currency exchange rate from the transaction currency (indicated by CurrencyCode) to the company base currency.
363
- * This only needs to be set if the transaction currency is different than the company base currency. It defaults to 1.0.
364
  *
365
  * @param decimal $value
366
-
367
  */
368
  public function setExchangeRate($value) { $this->ExchangeRate = $value; return $this; } //decimal
369
-
370
  /**
371
- * 3 character ISO 4217 currency code.
372
  *
373
  * @param string $value
374
-
375
  */
376
  public function setCurrencyCode($value) { $this->CurrencyCode = $value; return $this; } //string
377
-
378
  /**
379
  * It provides the ability to controls whether tax is calculated locally or remotely when using an AvaLocal server.
380
- * The default is Automatic which calculates locally unless remote is necessary for non-local addresses.
381
  *
382
- * @param ServiceMode $value
383
  */
384
  public function setServiceMode($value) { $this->ServiceMode = $value; return $this; } //type: ServiceMode
385
-
386
  /**
387
  * PaymentDate indicates the date when payment was received for the document. It is only applicable for cash-basis accounting and does not need to be set otherwise.
388
- * It defaults to 1/1/1900 which indicates no payment. The new TaxSvc.ApplyPayment method may be used to apply a payment to an existing invoice.
389
  *
390
  * @param date $value
391
-
392
  */
393
- public function setPaymentDate($value) { $this->PaymentDate = $value; return $this; } //date
394
-
395
  /**
396
  * ExchangeRateEffDate indicates the effective date of the exchange rate.
397
- * It should be set in conjunction with ExchangeRate. It will default to the DocDate if not set.
398
  *
399
  * @param date $value
400
-
401
  */
402
  public function setExchangeRateEffDate($value){ $this->ExchangeRateEffDate = $value; return $this; } //date
403
-
404
-
405
  /**
406
- *TaxOverride for the document.
407
- *
408
- * @param TaxOverride $value
409
-
410
- */
411
- public function setTaxOverride($value){ $this->TaxOverride=$value;} //tax override
412
-
413
- public function setReferenceCode($value)
414
- {
415
- $this->ReferenceCode=$value;
416
- }
417
 
 
 
418
 
419
- //@author: Rapshtynska Svitlana
420
  /**
421
- * TaxDate should be in the format yyyy-mm-dd
422
  *
423
- * @param date $value
 
424
  */
425
- public function setTaxDate($value) { $this->TaxDate = $value; return $this; } //date
 
 
 
426
 
427
  /**
428
- * StatusDate should be in the format yyyy-mm-dd
429
  *
430
- * @param date $value
431
- */
432
- public function setStatusDate($value) { $this->StatusDate = $value; return $this; } //date
433
 
 
 
434
 
 
 
 
 
435
 
436
  /**#@+
437
  * Accessor
438
  * @access public
439
  * @return string
440
  */
441
-
442
  public function getCompanyCode() { return $this->CompanyCode;} //string
443
  public function getDocType() { return $this->DocType;} //SalesOrder or SalesInvoice or PurchaseOrder or PurchaseInvoice or ReturnOrder or ReturnInvoice
444
  public function getDocCode() { return $this->DocCode;} //string invoice number
@@ -446,60 +484,62 @@ class GetTaxRequest
446
  public function salespersonCode() { return $this->SalespersonCode;} //string
447
  public function getCustomerCode() { return $this->CustomerCode;} //string
448
  public function getCustomerUsageType() { return $this->CustomerUsageType;} //string Entity Usage
449
-
450
  public function getDiscount() { return $this->Discount;} //decimal
451
- //public function getTotalTaxOverride() { return $this->TotalTaxOverride;} //decimal
452
-
453
  public function getPurchaseOrderNo() { return $this->PurchaseOrderNo;} //string
454
  public function getExemptionNo() { return $this->ExemptionNo;} //string if not using ECMS which keys on customer code
455
- public function getAddresses()
456
  {
457
  // this is kind of icky
458
  // when we build one of these to send, it is an array of Address
459
  // however, when it is fetched, there is an extra std::Object stuck in place to represent the array
460
- // which contains the array in an ivar called Address. Such are the vagaries of
461
  // the php SoapClient.
462
-
463
  //@swetal
464
  //Changed from $this->Addresses to $this->Addresses->BaseAddress
465
  return is_array($this->Addresses) ? $this->Addresses : EnsureIsArray($this->Addresses->BaseAddress);
466
-
467
-
468
-
469
-
470
-
471
-
472
  } //array
473
  public function getLines()
474
  {
475
  return is_array($this->Lines) ? $this->Lines : EnsureIsArray($this->Lines->Line);
476
  } //array
477
  public function getDetailLevel() { return $this->DetailLevel;} //Summary or Document or Line or Tax or Diagnostic ********************************** make class
478
-
479
  public function getHashCode() { return $this->HashCode;} //int
480
  public function getLocationCode() { return $this->LocationCode;} //string
481
  public function getBatchCode() { return $this->BatchCode;} //string
482
-
483
  public function getCommit() { return $this->Commit;} //boolean
484
  //public function getIsTotalTaxOverriden() { return $this->IsTotalTaxOverriden;} //boolean
485
-
486
-
487
  public function getOriginAddress() { return $this->OriginAddress;} //address
488
  public function getDestinationAddress() { return $this->DestinationAddress;} //address
489
-
490
  //@author:swetal
491
  public function getExchangeRate() { return $this->ExchangeRate; } //decimal
492
  public function getCurrencyCode() { return $this->CurrencyCode; } //string
493
  public function getServiceMode() { return $this->ServiceMode; } //type: ServiceMode
494
- public function getPaymentDate() { return $this->PaymentDate; } //date
495
  public function getExchangeRateEffDate(){ return $this->ExchangeRateEffDate; } //date
 
 
496
  public function getTaxOverride(){ return $this->TaxOverride;}
497
-
498
  public function getReferenceCode()
499
  {
500
  return $this->ReferenceCode;
501
  }
502
-
503
  //@author:swetal
504
  //Adding getLine function which returns line based on line number
505
  public function getLine($lineNo)
@@ -512,18 +552,16 @@ class GetTaxRequest
512
  {
513
  return $line;
514
  }
515
-
516
  }
517
  }
518
  }
519
 
520
- //@author: Rapshtynska Svitlana
521
- public function getTaxDate() { return $this->TaxDate; } //date
522
- public function getStatusDate() { return $this->StatusDate; } //date
523
-
524
-
525
  /**#@-*/
526
-
527
 
528
-
529
- }
 
 
 
1
  <?php
2
  /**
3
  * GetTaxRequest.class.php
 
4
  */
5
 
6
  /**
7
  * Data to pass to {@link TaxServiceSoap#getTax}.
8
  *
9
  * @see GetTaxResult
10
+ *
11
+ * @author Avalara
12
+ * @copyright 2004 - 2011 Avalara, Inc. All rights reserved.
13
+ * @package Tax
14
  */
 
 
15
 
16
+
17
+
18
+ class GetTaxRequest
19
  {
20
  private $CompanyCode; // string
21
  private $DocCode;
27
  private $Discount; //decimal
28
  private $PurchaseOrderNo; //string
29
  private $ExemptionNo; //string if not using ECMS which keys on customer code
30
+ private $OriginCode; //string
31
  private $DestinationCode; //string
32
  private $Addresses; //array
33
  private $Lines; //array
34
  private $DetailLevel; //Summary or Document or Line or Tax or Diagnostic
35
+ private $ReferenceCode; // string
36
  private $LocationCode; //string
37
  private $Commit=false; //boolean
38
  private $BatchCode; //string
39
  private $OriginAddress; //address
40
  private $DestinationAddress; //address
41
+
42
+
43
  //@author: Swetal
44
+ //Added new properties to upgrade to 5.3 interface
45
  private $TaxOverride; //TaxOverride
46
  private $CurrencyCode; //string
47
  private $ServiceMode; //type: ServiceMode
48
  private $PaymentDate; //date
49
  private $ExchangeRate; //decimal
50
+ private $BusinessIdentificationNo; //string
51
  private $ExchangeRateEffDate; //date
52
+ private $PosLaneCode; //string
53
 
54
+ private $StatusDate;
55
+ private $TaxDate;
 
 
 
 
 
 
56
 
57
  public function __construct()
58
  {
 
59
  $this->DocDate = date("Y-m-d");
60
  $this->Commit=false;
61
  $this->HashCode=0;
65
  $this->DocCode = date("Y-m-d-H-i-s.u");
66
  $this->CustomerCode='CustomerCodeString';
67
  $this->Lines=array(new Line());
68
+
69
  $this->ServiceMode=ServiceMode::$Automatic;
70
+ $this->ExchangeRate=1.0;
71
 
72
  $dateTime=new DateTime();
73
  $dateTime->setDate(1900,01,01);
74
  $this->ExchangeRateEffDate=$dateTime->format("Y-m-d");
75
  $this->PaymentDate=$dateTime->format("Y-m-d");
76
+
77
+
78
  }
79
 
80
  public function prepare()
88
  }
89
  return $this;
90
  }
91
+
92
  public function registerAddress(&$address)
93
  {
94
  if($address == null) { return null; }
105
  $address->setAddressCode ( $index);
106
  return $index;
107
  }
108
+
109
  public function postFetch()
110
  {
111
  $addresses = $this->getAddresses();
112
  $this->OriginAddress = $addresses[$this->OriginCode];
113
  $this->DestinationAddress = $addresses[$this->DestinationCode];
114
+
115
  //@author: Swetal
116
  //Commenting following foreach loop
117
  //Reason is postFetch function is called after getTaxHistory to populate origin and destination address
118
  //but taxHistory does not return origin and destination code so with followign loop we can not retrive origin
119
+ //and destination adress for line. This gives invalid index error if not commented
120
  /*foreach($this->getLines() as $line)
121
+ {
122
  $line->postFetchWithAddresses($addresses);
123
  }*/
124
+
125
+ return $this;
126
  }
127
+
128
+ /**
129
+ * Get status date
130
+ *
131
+ * @return string
132
+ */
133
+ public function getStatusDate()
134
+ {
135
+ return $this->StatusDate;
136
+ }
137
+
138
+ /**
139
+ * Set status date
140
+ *
141
+ * @param string $StatusDate
142
+ * @return $this
143
+ */
144
+ public function setStatusDate($StatusDate)
145
+ {
146
+ $this->StatusDate = $StatusDate;
147
+ return $this;
148
+ }
149
+
150
+ /**
151
+ * Get tax date
152
+ *
153
+ * @return string
154
+ */
155
+ public function getTaxDate()
156
+ {
157
+ return $this->TaxDate;
158
+ }
159
+
160
+ /**
161
+ * Set tax date
162
+ *
163
+ * @param string $TaxDate
164
+ * @return $this
165
+ */
166
+ public function setTaxDate($TaxDate)
167
+ {
168
+ $this->TaxDate = $TaxDate;
169
+ return $this;
170
+ }
171
+
172
  /**
173
  * Enter description here...
174
  *
175
+ * @param string $value
176
  */
177
  public function setAddressCode($value) { $this->AddressCode = $value; return $this; }
178
+
179
  /**
180
  * Enter description here...
181
  *
182
+ * @param string $value
183
  */
184
  public function setLine1($value) { $this->Line1 = $value; return $this; }
185
+
186
  /**
187
  * Enter description here...
188
  *
189
+ * @param string $value
190
  */
191
  public function setLine2($value) { $this->Line2 = $value; return $this; }
192
+
193
  /**
194
  * Enter description here...
195
  *
196
+ * @param string $value
197
  */
198
  public function setLine3($value) { $this->Line3 = $value; return $this; }
199
+
200
  /**
201
  * Enter description here...
202
  *
203
+ * @param string $value
204
  */
205
  public function setCity($value) { $this->City = $value; return $this; }
206
+
207
  /**
208
  * Enter description here...
209
  *
210
+ * @param string $value
211
  */
212
  public function setRegion($value) { $this->Region = $value; return $this; }
213
+
214
  /**
215
  * Enter description here...
216
  *
217
+ * @param string $value
218
  */
219
  public function setPostalCode($value) { $this->PostalCode = $value; return $this; }
220
+
221
  /**
222
  * Enter description here...
223
  *
224
+ * @param string $value
225
  */
226
  public function setCountry($value) { $this->Country = $value; return $this; }
227
 
230
  * @access public
231
  * @param integer
232
  */
233
+
234
+
235
  /**
236
+ * DocDate should be in the format yyyy-mm-dd
237
  *
238
+ * @param date $value
239
  */
240
  public function setDocDate($value) { $this->DocDate = $value; return $this; } //date
241
 
242
+
243
  /**
244
  * Sets the client application company reference code.
245
  *
246
  * @param string $value
247
+ *
248
  */
249
  public function setCompanyCode($value) { $this->CompanyCode = $value; return $this; } //string
250
+
251
  /**
252
  * The document type specifies the category of the document and affects how the document is treated after a tax calculation; see DocumentType for more information about the specific document types.
253
  *
254
  * @param DocumentType $value
255
+ *
256
  */
257
  public function setDocType($value) { DocumentType::Validate($value); $this->DocType = $value; return $this; } //SalesOrder or SalesInvoice or PurchaseOrder or PurchaseInvoice or ReturnOrder or ReturnInvoice
258
+
259
  /**
260
+ * Specifies the level of detail to return.
261
  *
262
  * @param DetailLevel $value
263
+
264
  */
265
  public function setDetailLevel($value) { DetailLevel::Validate($value); $this->DetailLevel = $value; return $this; } //Summary or Document or Line or Tax or Diagnostic - enum
266
+
267
  /**
268
+ * Sets the Document Code, i.e. the internal reference code used by the client application.
269
  *
270
  * @param string $value
271
 
272
  */
273
+ public function setDocCode($value) { $this->DocCode = $value; return $this; } //string invoice number
274
+
275
  /**
276
+ * The client application salesperson reference code.
277
  *
278
  * @param string $value
279
+
280
  */
281
  public function setSalespersonCode($value) { $this->SalespersonCode = $value; return $this; } //string
282
+
283
  /**
284
+ * The client application customer reference code.
285
  *
286
  * @param string $value
287
+
288
  */
289
  public function setCustomerCode($value) { $this->CustomerCode = $value; return $this; } //string
290
+
291
  /**
292
  * The client application customer or usage type.
293
  * <p>
294
+ * This is used to determine the exempt status of the transaction based on the exemption tax rules for the
295
  * jurisdictions involved. This may also be set at the line level.
296
  * </p>
297
  * <p>
312
  * @param customerUsageType
313
  */
314
  public function setCustomerUsageType($value) { $this->CustomerUsageType = $value; return $this; } //string Entity Usage
315
+
316
  /**
317
+ *Purchase Order Number for this document.
318
  *
319
  * @param string $value
320
+
321
  */
322
  public function setPurchaseOrderNo($value) { $this->PurchaseOrderNo = $value; return $this; } //string
323
+
324
  /**
325
+ * Exemption Number for this document
326
  *
327
  * @param string $value
328
+
329
  */
330
  public function setExemptionNo($value) { $this->ExemptionNo = $value; return $this; } //string if not using ECMS which keys on customer code
331
+
332
+
333
+
334
  /**
335
+ * Also referred to as a Store Location, Outlet Id, or Outlet code is a number assigned by the State which identifies a Store location. Some state returns require taxes are broken out separatly for Store Locations.
336
  *
337
  * @param string $value
338
+
339
  */
340
  public function setLocationCode($value) { $this->LocationCode = $value; return $this; } //string
341
+
342
+
343
  public function setBatchCode($value) { $this->BatchCode = $value; return $this; } //string
344
 
345
  /**
346
+ * The discount amount to apply to the document.
347
  *
348
  * @param decimal $value
349
+
350
  */
351
  public function setDiscount($value) { $this->Discount = $value; return $this; } //decimal
352
+ //public function setTotalTaxOverride($value) { $this->TotalTaxOverride = $value; return $this; } //decimal
353
+
354
  /**
355
  * Set addresses
356
  *
357
  * @param array $value
358
+
359
  */
360
  public function setAddresses($value) { $this->Addresses = $value; return $this; } //array
361
+
362
  /**
363
  * Set tax lines
364
  *
365
  * @param array $value
366
+
367
  */
368
  public function setLines($value) { $this->Lines = $value; return $this; } //array
369
+
370
  public function setHashCode($value) { $this->HashCode = $value; return $this; } //int
371
+
372
  /**
373
+ * This has been defaulted to False ; invoice will be committed if this flag has been set to True.
374
  *
375
  * @param boolean $value
376
  *
377
  */
378
  public function setCommit($value) { $this->Commit = $value; return $this; } //boolean
379
  //public function setIsTotalTaxOverriden($value) { $this->IsTotalTaxOverriden = ($value ? true : false); return $this; } //boolean
380
+
381
  /**
382
  * Set ship from address
383
  *
384
  * @param Address $value
385
+
386
  */
387
  public function setOriginAddress($value) { $this->OriginAddress = $value; return $this; } //address
388
+
389
  /**
390
  * set ship to address
391
  *
393
 
394
  */
395
  public function setDestinationAddress($value) { $this->DestinationAddress = $value; return $this; } //address
396
+
397
  //@author:swetal
398
+
399
  /**
400
  * ExchangeRate indicates the currency exchange rate from the transaction currency (indicated by CurrencyCode) to the company base currency.
401
+ * This only needs to be set if the transaction currency is different than the company base currency. It defaults to 1.0.
402
  *
403
  * @param decimal $value
404
+
405
  */
406
  public function setExchangeRate($value) { $this->ExchangeRate = $value; return $this; } //decimal
407
+
408
  /**
409
+ * 3 character ISO 4217 currency code.
410
  *
411
  * @param string $value
412
+
413
  */
414
  public function setCurrencyCode($value) { $this->CurrencyCode = $value; return $this; } //string
415
+
416
  /**
417
  * It provides the ability to controls whether tax is calculated locally or remotely when using an AvaLocal server.
418
+ * The default is Automatic which calculates locally unless remote is necessary for non-local addresses.
419
  *
420
+ * @param ServiceMode $value
421
  */
422
  public function setServiceMode($value) { $this->ServiceMode = $value; return $this; } //type: ServiceMode
423
+
424
  /**
425
  * PaymentDate indicates the date when payment was received for the document. It is only applicable for cash-basis accounting and does not need to be set otherwise.
426
+ * It defaults to 1/1/1900 which indicates no payment. The new TaxSvc.ApplyPayment method may be used to apply a payment to an existing invoice.
427
  *
428
  * @param date $value
429
+
430
  */
431
+ public function setPaymentDate($value) { $this->PaymentDate = $value; return $this; } //date
432
+
433
  /**
434
  * ExchangeRateEffDate indicates the effective date of the exchange rate.
435
+ * It should be set in conjunction with ExchangeRate. It will default to the DocDate if not set.
436
  *
437
  * @param date $value
438
+
439
  */
440
  public function setExchangeRateEffDate($value){ $this->ExchangeRateEffDate = $value; return $this; } //date
441
+
 
442
  /**
443
+ * Sets the value for BusinessIdentificationNo
444
+ *
445
+ * @param string $value
 
 
 
 
 
 
 
 
446
 
447
+ */
448
+ public function setBusinessIdentificationNo($value){ $this->BusinessIdentificationNo = $value; return $this; } //string
449
 
 
450
  /**
451
+ *Sets POS Lane Code.
452
  *
453
+ * @param string $value
454
+
455
  */
456
+ public function setPosLaneCode($value)
457
+ {
458
+ $this->PosLaneCode = $value;// return $this;
459
+ } //string
460
 
461
  /**
462
+ *TaxOverride for the document.
463
  *
464
+ * @param TaxOverride $value
 
 
465
 
466
+ */
467
+ public function setTaxOverride($value){ $this->TaxOverride=$value;} //tax override
468
 
469
+ public function setReferenceCode($value)
470
+ {
471
+ $this->ReferenceCode=$value;
472
+ }
473
 
474
  /**#@+
475
  * Accessor
476
  * @access public
477
  * @return string
478
  */
479
+
480
  public function getCompanyCode() { return $this->CompanyCode;} //string
481
  public function getDocType() { return $this->DocType;} //SalesOrder or SalesInvoice or PurchaseOrder or PurchaseInvoice or ReturnOrder or ReturnInvoice
482
  public function getDocCode() { return $this->DocCode;} //string invoice number
484
  public function salespersonCode() { return $this->SalespersonCode;} //string
485
  public function getCustomerCode() { return $this->CustomerCode;} //string
486
  public function getCustomerUsageType() { return $this->CustomerUsageType;} //string Entity Usage
487
+
488
  public function getDiscount() { return $this->Discount;} //decimal
489
+ //public function getTotalTaxOverride() { return $this->TotalTaxOverride;} //decimal
490
+
491
  public function getPurchaseOrderNo() { return $this->PurchaseOrderNo;} //string
492
  public function getExemptionNo() { return $this->ExemptionNo;} //string if not using ECMS which keys on customer code
493
+ public function getAddresses()
494
  {
495
  // this is kind of icky
496
  // when we build one of these to send, it is an array of Address
497
  // however, when it is fetched, there is an extra std::Object stuck in place to represent the array
498
+ // which contains the array in an ivar called Address. Such are the vagaries of
499
  // the php SoapClient.
500
+
501
  //@swetal
502
  //Changed from $this->Addresses to $this->Addresses->BaseAddress
503
  return is_array($this->Addresses) ? $this->Addresses : EnsureIsArray($this->Addresses->BaseAddress);
504
+
505
+
506
+
507
+
508
+
509
+
510
  } //array
511
  public function getLines()
512
  {
513
  return is_array($this->Lines) ? $this->Lines : EnsureIsArray($this->Lines->Line);
514
  } //array
515
  public function getDetailLevel() { return $this->DetailLevel;} //Summary or Document or Line or Tax or Diagnostic ********************************** make class
516
+
517
  public function getHashCode() { return $this->HashCode;} //int
518
  public function getLocationCode() { return $this->LocationCode;} //string
519
  public function getBatchCode() { return $this->BatchCode;} //string
520
+
521
  public function getCommit() { return $this->Commit;} //boolean
522
  //public function getIsTotalTaxOverriden() { return $this->IsTotalTaxOverriden;} //boolean
523
+
524
+
525
  public function getOriginAddress() { return $this->OriginAddress;} //address
526
  public function getDestinationAddress() { return $this->DestinationAddress;} //address
527
+
528
  //@author:swetal
529
  public function getExchangeRate() { return $this->ExchangeRate; } //decimal
530
  public function getCurrencyCode() { return $this->CurrencyCode; } //string
531
  public function getServiceMode() { return $this->ServiceMode; } //type: ServiceMode
532
+ public function getPaymentDate() { return $this->PaymentDate; } //date
533
  public function getExchangeRateEffDate(){ return $this->ExchangeRateEffDate; } //date
534
+ public function getBusinessIdentificationNo() {return $this->BusinessIdentificationNo; } //string
535
+ public function getPosLaneCode() {return $this->PosLaneCode; } //string
536
  public function getTaxOverride(){ return $this->TaxOverride;}
537
+
538
  public function getReferenceCode()
539
  {
540
  return $this->ReferenceCode;
541
  }
542
+
543
  //@author:swetal
544
  //Adding getLine function which returns line based on line number
545
  public function getLine($lineNo)
552
  {
553
  return $line;
554
  }
555
+
556
  }
557
  }
558
  }
559
 
560
+
 
 
 
 
561
  /**#@-*/
 
562
 
563
+
564
+
565
+ }
566
+
567
+ ?>
lib/AvaTax/classes/GetTaxResult.class.php CHANGED
@@ -1,23 +1,23 @@
1
  <?php
2
  /**
3
  * GetTaxResult.class.php
4
- * @package Tax
5
  */
6
 
7
-
8
  /**
9
  * Result data returned from {@link TaxServiceSoap#getTax}.
10
  *
11
  * @see GetTaxRequest
12
- * @package Tax
13
- * @author tblanchard
14
- * Copyright (c) 2007, Avalara. All rights reserved.
 
15
  */
16
 
17
  class GetTaxResult // extends BaseResult
18
  {
19
 
20
  private $DocCode; //string
 
21
  private $AdjustmentDescription; //string
22
  private $DocDate; //date
23
  private $TaxDate; //date
@@ -41,7 +41,16 @@ class GetTaxResult // extends BaseResult
41
  private $TaxSummary; //ArrayOfTaxDetail
42
 
43
 
44
-
 
 
 
 
 
 
 
 
 
45
  /**
46
  * Gets the internal reference code used by the client application. This is used for operations such as Post and GetTaxHistory.
47
  * <p>
@@ -258,4 +267,6 @@ class GetTaxResult // extends BaseResult
258
 
259
 
260
 
261
- }
 
 
1
  <?php
2
  /**
3
  * GetTaxResult.class.php
 
4
  */
5
 
 
6
  /**
7
  * Result data returned from {@link TaxServiceSoap#getTax}.
8
  *
9
  * @see GetTaxRequest
10
+ *
11
+ * @author Avalara
12
+ * @copyright 2004 - 2011 Avalara, Inc. All rights reserved.
13
+ * @package Tax
14
  */
15
 
16
  class GetTaxResult // extends BaseResult
17
  {
18
 
19
  private $DocCode; //string
20
+ private $DocId; //string
21
  private $AdjustmentDescription; //string
22
  private $DocDate; //date
23
  private $TaxDate; //date
41
  private $TaxSummary; //ArrayOfTaxDetail
42
 
43
 
44
+ /**
45
+ * Gets the internal reference code used by the client application. This is used for operations such as Post and GetTaxHistory.
46
+ * <p>
47
+ * See {@link GetTaxRequest#getDocId} on <b>GetTaxRequest</b> for more information about this member.
48
+ * </p>
49
+ *
50
+ * @return string
51
+ */
52
+ public function getDocId() {return $this->DocId; }
53
+
54
  /**
55
  * Gets the internal reference code used by the client application. This is used for operations such as Post and GetTaxHistory.
56
  * <p>
267
 
268
 
269
 
270
+ }
271
+
272
+ ?>
lib/AvaTax/classes/IsAuthorizedResult.class.php CHANGED
@@ -1,7 +1,6 @@
1
  <?php
2
  /**
3
  * IsAuthorizedResult.class.php
4
- * @package Address
5
  */
6
 
7
  /**
@@ -18,9 +17,9 @@
18
  * print('Ping Result # of messages is '.$numMessages);
19
  * </pre>
20
  *
21
- * @package Address
22
- * @author tblanchard
23
- * Copyright (c) 2007, Avalara. All rights reserved.
24
  */
25
 
26
  class IsAuthorizedResult //extends BaseResult
@@ -76,4 +75,6 @@ class IsAuthorizedResult //extends BaseResult
76
  public function getMessages() { return EnsureIsArray($this->Messages->Message); }
77
 
78
 
79
- }
 
 
1
  <?php
2
  /**
3
  * IsAuthorizedResult.class.php
 
4
  */
5
 
6
  /**
17
  * print('Ping Result # of messages is '.$numMessages);
18
  * </pre>
19
  *
20
+ * @author Avalara
21
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
22
+ * @package Address
23
  */
24
 
25
  class IsAuthorizedResult //extends BaseResult
75
  public function getMessages() { return EnsureIsArray($this->Messages->Message); }
76
 
77
 
78
+ }
79
+
80
+ ?>
lib/AvaTax/classes/JurisdictionType.class.php CHANGED
@@ -1,8 +1,6 @@
1
  <?php
2
-
3
  /**
4
  * JurisdictionType.class.php
5
- * @package Tax
6
  */
7
 
8
  /**
@@ -11,10 +9,11 @@
11
  * Multiple jurisdictions might be applied to a single Line during a tax calcuation.
12
  * Details are available in the TaxDetail of the GetTaxResult.
13
  *
14
- * @package Tax
15
  * @see TaxDetail
16
- * @author tblanchard
17
- * Copyright (c) 2008, Avalara. All rights reserved.
 
 
18
  */
19
  class JurisdictionType
20
  {
@@ -70,4 +69,6 @@ class JurisdictionType
70
 
71
  */
72
 
73
- }
 
 
1
  <?php
 
2
  /**
3
  * JurisdictionType.class.php
 
4
  */
5
 
6
  /**
9
  * Multiple jurisdictions might be applied to a single Line during a tax calcuation.
10
  * Details are available in the TaxDetail of the GetTaxResult.
11
  *
 
12
  * @see TaxDetail
13
+ *
14
+ * @author Avalara
15
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
16
+ * @package Tax
17
  */
18
  class JurisdictionType
19
  {
69
 
70
  */
71
 
72
+ }
73
+
74
+ ?>
lib/AvaTax/classes/Line.class.php CHANGED
@@ -1,17 +1,16 @@
1
  <?php
2
  /**
3
  * Line.class.php
4
- * @package Tax
5
  */
6
 
7
  /**
8
  * A single line within a document containing data used for calculating tax.
9
-
10
  *
11
  * @see GetTaxRequest
12
- * @package Tax
13
- * @author tblanchard
14
- * Copyright (c) 2007, Avalara. All rights reserved.
 
15
  */
16
 
17
  class Line
@@ -35,6 +34,7 @@ class Line
35
  private $TaxOverride; //TaxOverride
36
  private $OriginAddress; //Address
37
  private $DestinationAddress; //Address
 
38
  private $TaxIncluded; //boolean
39
 
40
 
@@ -122,17 +122,17 @@ class Line
122
  * </p>
123
  * <p>
124
  * The standard values for the CustomerUsageType (A-L).<br/>
125
- A � Federal Government<br/>
126
- B � State/Local Govt.<br/>
127
- C � Tribal Government<br/>
128
- D � Foreign Diplomat<br/>
129
- E � Charitable Organization<br/>
130
- F � Religious/Education<br/>
131
- G � Resale<br/>
132
- H � Agricultural Production<br/>
133
- I � Industrial Prod/Mfg.<br/>
134
- J � Direct Pay Permit<br/>
135
- K � Direct Mail<br/>
136
  L - Other<br/>
137
  * </p>
138
  * @param string $value
@@ -204,6 +204,24 @@ class Line
204
  public function getTaxIncluded($value)
205
  {
206
  return $this->TaxIncluded;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
207
  }
208
 
209
  public function registerAddressesIn(&$getTaxRequest)
@@ -261,4 +279,7 @@ class Line
261
 
262
  /**#@-*/
263
 
264
- }
 
 
 
1
  <?php
2
  /**
3
  * Line.class.php
 
4
  */
5
 
6
  /**
7
  * A single line within a document containing data used for calculating tax.
 
8
  *
9
  * @see GetTaxRequest
10
+ *
11
+ * @author Avalara
12
+ * @copyright 2004 - 2011 Avalara, Inc. All rights reserved.
13
+ * @package Tax
14
  */
15
 
16
  class Line
34
  private $TaxOverride; //TaxOverride
35
  private $OriginAddress; //Address
36
  private $DestinationAddress; //Address
37
+ private $BusinessIdentificationNo; //string
38
  private $TaxIncluded; //boolean
39
 
40
 
122
  * </p>
123
  * <p>
124
  * The standard values for the CustomerUsageType (A-L).<br/>
125
+ A � Federal Government<br/>
126
+ B � State/Local Govt.<br/>
127
+ C � Tribal Government<br/>
128
+ D � Foreign Diplomat<br/>
129
+ E � Charitable Organization<br/>
130
+ F � Religious/Education<br/>
131
+ G � Resale<br/>
132
+ H � Agricultural Production<br/>
133
+ I � Industrial Prod/Mfg.<br/>
134
+ J � Direct Pay Permit<br/>
135
+ K � Direct Mail<br/>
136
  L - Other<br/>
137
  * </p>
138
  * @param string $value
204
  public function getTaxIncluded($value)
205
  {
206
  return $this->TaxIncluded;
207
+ }
208
+
209
+ /**
210
+ * Sets BusinessIdentificationNo in the line.
211
+ * @param string
212
+ */
213
+ public function setBusinessIdentificationNo($value)
214
+ {
215
+ $this->BusinessIdentificationNo=$value;
216
+ }
217
+
218
+ /**
219
+ * Gets BusinessIdentificationNo .
220
+ * @return string
221
+ */
222
+ public function getBusinessIdentificationNo()
223
+ {
224
+ return $this->BusinessIdentificationNo;
225
  }
226
 
227
  public function registerAddressesIn(&$getTaxRequest)
279
 
280
  /**#@-*/
281
 
282
+ }
283
+
284
+
285
+ ?>
lib/AvaTax/classes/Message.class.php CHANGED
@@ -1,18 +1,15 @@
1
  <?php
2
  /**
3
  * Message.class.php
4
- *
5
- * @package Address
6
  */
7
 
8
  /**
9
  * Message class used in results and exceptions.
10
- *
11
  * Contains status detail about call results.
12
  *
13
- * @package Address
14
- * @author tblanchard
15
- * Copyright (c) 2007, Avalara. All rights reserved.
16
  */
17
 
18
  class Message
@@ -83,4 +80,6 @@ class Message
83
  public function setSource($value) { $this->Source = $value; return $this; }
84
  public function setName($value) { $this->Name = $value; return $this; }
85
 
86
- }
 
 
1
  <?php
2
  /**
3
  * Message.class.php
 
 
4
  */
5
 
6
  /**
7
  * Message class used in results and exceptions.
 
8
  * Contains status detail about call results.
9
  *
10
+ * @package Address
11
+ * @author Avalara
12
+ * @copyright 2004 - 2011 Avalara, Inc. All rights reserved.
13
  */
14
 
15
  class Message
80
  public function setSource($value) { $this->Source = $value; return $this; }
81
  public function setName($value) { $this->Name = $value; return $this; }
82
 
83
+ }
84
+
85
+ ?>
lib/AvaTax/classes/PingResult.class.php CHANGED
@@ -1,8 +1,6 @@
1
  <?php
2
  /**
3
  * PingResult.class.php
4
- *
5
- * @package Base
6
  */
7
 
8
  /**
@@ -18,9 +16,9 @@
18
  *
19
  * </pre>
20
  *
21
- * @package Base
22
- * @author tblanchard
23
- * Copyright (c) 2007, Avalara. All rights reserved.
24
  */
25
 
26
 
@@ -71,4 +69,6 @@ class PingResult //extends BaseResult
71
 
72
 
73
 
74
- }
 
 
1
  <?php
2
  /**
3
  * PingResult.class.php
 
 
4
  */
5
 
6
  /**
16
  *
17
  * </pre>
18
  *
19
+ * @author Avalara
20
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
21
+ * @package Base
22
  */
23
 
24
 
69
 
70
 
71
 
72
+ }
73
+
74
+ ?>
lib/AvaTax/classes/PostTaxRequest.class.php CHANGED
@@ -1,7 +1,6 @@
1
  <?php
2
  /**
3
  * PostTaxRequest.class.php
4
- * @package Tax
5
  */
6
 
7
  /**
@@ -10,10 +9,11 @@
10
  * The request must specify all of CompanyCode, DocCode, and DocType in order to uniquely identify the document.
11
  * </p>
12
  *
13
- * @package Tax
14
  * @see PostTaxResult
15
- * @author tblanchard
16
- * Copyright (c) 2007, Avalara. All rights reserved.
 
 
17
  */
18
 
19
  class PostTaxRequest extends TaxRequest
@@ -76,4 +76,9 @@ class PostTaxRequest extends TaxRequest
76
  */
77
  public function setNewDocCode($value) { $this->NewDocCode = $value; }
78
 
79
- }
 
 
 
 
 
1
  <?php
2
  /**
3
  * PostTaxRequest.class.php
 
4
  */
5
 
6
  /**
9
  * The request must specify all of CompanyCode, DocCode, and DocType in order to uniquely identify the document.
10
  * </p>
11
  *
 
12
  * @see PostTaxResult
13
+ *
14
+ * @author Avalara
15
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
16
+ * @package Tax
17
  */
18
 
19
  class PostTaxRequest extends TaxRequest
76
  */
77
  public function setNewDocCode($value) { $this->NewDocCode = $value; }
78
 
79
+ }
80
+
81
+
82
+
83
+
84
+ ?>
lib/AvaTax/classes/PostTaxResult.class.php CHANGED
@@ -1,16 +1,16 @@
1
  <?php
2
  /**
3
  * PostTaxResult.class.php
4
- * @package Tax
5
  */
6
 
7
  /**
8
  * Result data returned from {@link TaxServiceSoap#postTax}.
9
  *
10
- * @package Tax
11
  * @see PostTaxRequest
12
- * @author tblanchard
13
- * Copyright (c) 2007, Avalara. All rights reserved.
 
 
14
  */
15
 
16
  class PostTaxResult //extends BaseResult
@@ -23,6 +23,8 @@ class PostTaxResult //extends BaseResult
23
  * @var string
24
  */
25
  private $TransactionId;
 
 
26
  /**
27
  * @var string must be one of the values defined in {@link SeverityLevel}.
28
  */
@@ -37,6 +39,8 @@ class PostTaxResult //extends BaseResult
37
  * @return string
38
  */
39
  public function getTransactionId() { return $this->TransactionId; }
 
 
40
  /**
41
  * Accessor
42
  * @return string
@@ -49,4 +53,6 @@ class PostTaxResult //extends BaseResult
49
  public function getMessages() { return EnsureIsArray($this->Messages->Message); }
50
 
51
 
52
- }
 
 
1
  <?php
2
  /**
3
  * PostTaxResult.class.php
 
4
  */
5
 
6
  /**
7
  * Result data returned from {@link TaxServiceSoap#postTax}.
8
  *
 
9
  * @see PostTaxRequest
10
+ *
11
+ * @author Avalara
12
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
13
+ * @package Tax
14
  */
15
 
16
  class PostTaxResult //extends BaseResult
23
  * @var string
24
  */
25
  private $TransactionId;
26
+
27
+ private $DocId;
28
  /**
29
  * @var string must be one of the values defined in {@link SeverityLevel}.
30
  */
39
  * @return string
40
  */
41
  public function getTransactionId() { return $this->TransactionId; }
42
+
43
+ public function getDocId() { return $this->DocId; }
44
  /**
45
  * Accessor
46
  * @return string
53
  public function getMessages() { return EnsureIsArray($this->Messages->Message); }
54
 
55
 
56
+ }
57
+
58
+ ?>
lib/AvaTax/classes/ReconcileTaxHistoryRequest.class.php CHANGED
@@ -1,27 +1,24 @@
1
  <?php
2
-
3
  /**
4
  * ReconcileTaxHistoryRequest.class.php
5
- * @package Tax
6
  */
7
 
8
  /**
9
- * Data to pass to {@link TaxServiceSoap#reconcileTaxHistory(ReconcileTaxHistoryRequest)}
10
- *
11
- * @package Tax
12
  * @see ReconcileTaxHistoryResult
13
- * @author tblanchard
14
- * Copyright (c) 2007, Avalara. All rights reserved.
 
 
15
  */
16
 
17
-
18
  class ReconcileTaxHistoryRequest// extends TaxRequest
19
  {
20
  private $CompanyCode; //string
21
  private $StartDate; //date
22
  private $EndDate; //date
23
  private $DocStatus; //int
24
-
25
  private $DocType; // DocType
26
  private $LastDocCode; // string
27
  private $PageSize; // int
@@ -71,7 +68,7 @@ class ReconcileTaxHistoryRequest// extends TaxRequest
71
  /**
72
  * Set this to retrieve data with a specific DocStatus.
73
  *
74
- * @param string $value
75
  */
76
  public function setDocStatus($value) { DocStatus::Validate($value); $this->DocStatus = $value; return $this; }
77
 
@@ -81,9 +78,14 @@ class ReconcileTaxHistoryRequest// extends TaxRequest
81
 
82
  public function setLastDocCode($value){$this->LastDocCode=$value;} // string
83
  public function getLastDocCode(){return $this->LastDocCode;} // string
 
 
 
84
 
85
  public function setPageSize($value){$this->PageSize=$value;} // int
86
  public function getPageSize(){return $this->PageSize;} // int
87
 
88
 
89
- }
 
 
1
  <?php
 
2
  /**
3
  * ReconcileTaxHistoryRequest.class.php
 
4
  */
5
 
6
  /**
7
+ * Data to pass to {@link TaxServiceSoap#reconcileTaxHistory(ReconcileTaxHistoryRequest)}
 
 
8
  * @see ReconcileTaxHistoryResult
9
+ *
10
+ * @author Avalara
11
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
12
+ * @package Tax
13
  */
14
 
 
15
  class ReconcileTaxHistoryRequest// extends TaxRequest
16
  {
17
  private $CompanyCode; //string
18
  private $StartDate; //date
19
  private $EndDate; //date
20
  private $DocStatus; //int
21
+ private $LastDocId; //string
22
  private $DocType; // DocType
23
  private $LastDocCode; // string
24
  private $PageSize; // int
68
  /**
69
  * Set this to retrieve data with a specific DocStatus.
70
  *
71
+ * @param string $value
72
  */
73
  public function setDocStatus($value) { DocStatus::Validate($value); $this->DocStatus = $value; return $this; }
74
 
78
 
79
  public function setLastDocCode($value){$this->LastDocCode=$value;} // string
80
  public function getLastDocCode(){return $this->LastDocCode;} // string
81
+
82
+ public function setLastDocId($value){$this->LastDocId=$value;} // string
83
+ public function getLastDocId(){return $this->LastDocId;} // string
84
 
85
  public function setPageSize($value){$this->PageSize=$value;} // int
86
  public function getPageSize(){return $this->PageSize;} // int
87
 
88
 
89
+ }
90
+
91
+ ?>
lib/AvaTax/classes/ReconcileTaxHistoryResult.class.php CHANGED
@@ -1,16 +1,15 @@
1
  <?php
2
  /**
3
  * ReconcileTaxHistoryResult.class.php
4
- * @package Tax
5
  */
6
 
7
  /**
8
  * Result data returned from {@link TaxServiceSoap#reconcileTaxHistory}.
9
- *
10
- * @package Tax
11
  * @see ReconcileTaxHistoryRequest
12
- * @author tblanchard
13
- * Copyright (c) 2007, Avalara. All rights reserved.
 
 
14
  */
15
 
16
  class ReconcileTaxHistoryResult //extends SearchTaxHistoryResult
@@ -106,5 +105,7 @@ class ReconcileTaxHistoryResult //extends SearchTaxHistoryResult
106
  public function getMessages() { return EnsureIsArray($this->Messages->Message); }
107
 
108
 
 
 
109
 
110
- }
1
  <?php
2
  /**
3
  * ReconcileTaxHistoryResult.class.php
 
4
  */
5
 
6
  /**
7
  * Result data returned from {@link TaxServiceSoap#reconcileTaxHistory}.
 
 
8
  * @see ReconcileTaxHistoryRequest
9
+ *
10
+ * @author Avalara
11
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
12
+ * @package Tax
13
  */
14
 
15
  class ReconcileTaxHistoryResult //extends SearchTaxHistoryResult
105
  public function getMessages() { return EnsureIsArray($this->Messages->Message); }
106
 
107
 
108
+
109
+ }
110
 
111
+ ?>
lib/AvaTax/classes/SearchTaxHistoryResult.class.php CHANGED
@@ -1,17 +1,17 @@
1
  <?php
2
  /**
3
  * SearchTaxHistoryResult.class.php
4
- * @package Tax
5
  */
6
 
7
  /**
8
  * Result data returned from {@link TaxSvcSoap#reconcileTaxHistory}.
9
  * This class encapsulates the data and methods used by {@link ReconcileTaxHistoryResult}.
10
  *
11
- * @package Tax
12
  * @see ReconcileTaxHistoryRequest
13
- * @author tblanchard
14
- * Copyright (c) 2007, Avalara. All rights reserved.
 
 
15
  */
16
 
17
  class SearchTaxHistoryResult //extends BaseResult
@@ -97,4 +97,6 @@ class SearchTaxHistoryResult //extends BaseResult
97
 
98
 
99
 
100
- }
 
 
1
  <?php
2
  /**
3
  * SearchTaxHistoryResult.class.php
 
4
  */
5
 
6
  /**
7
  * Result data returned from {@link TaxSvcSoap#reconcileTaxHistory}.
8
  * This class encapsulates the data and methods used by {@link ReconcileTaxHistoryResult}.
9
  *
 
10
  * @see ReconcileTaxHistoryRequest
11
+ *
12
+ * @author Avalara
13
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
14
+ * @package Tax
15
  */
16
 
17
  class SearchTaxHistoryResult //extends BaseResult
97
 
98
 
99
 
100
+ }
101
+
102
+ ?>
lib/AvaTax/classes/ServiceMode.class.php CHANGED
@@ -1,18 +1,20 @@
1
  <?php
2
  /**
3
  * ServiceMode.class.php
4
- * @package Tax
5
  */
6
 
7
  /**
8
  * Specifies the ServiceMode.
9
  *
10
- * @package Tax
11
  * @see GetTaxRequest, GetTaxHistoryRequest
12
- * @author swetal
13
- * Copyright (c) 2008, Avalara. All rights reserved.
14
  * This is only supported by AvaLocal servers. It provides the ability to controls whether tax is calculated locally or remotely when using an AvaLocal server.
15
- * The default is Automatic which calculates locally unless remote is necessary for non-local addresses*/
 
 
 
 
 
16
 
17
  class ServiceMode extends Enum
18
  {
@@ -43,4 +45,5 @@ class ServiceMode extends Enum
43
 
44
  // Unfortunate boiler plate due to polymorphism issues on static functions
45
  public static function Validate($value) { self::__Validate($value,self::Values(),__CLASS__); }
46
- }
 
1
  <?php
2
  /**
3
  * ServiceMode.class.php
 
4
  */
5
 
6
  /**
7
  * Specifies the ServiceMode.
8
  *
 
9
  * @see GetTaxRequest, GetTaxHistoryRequest
10
+ *
 
11
  * This is only supported by AvaLocal servers. It provides the ability to controls whether tax is calculated locally or remotely when using an AvaLocal server.
12
+ * The default is Automatic which calculates locally unless remote is necessary for non-local addresses
13
+ *
14
+ * @author Avalara
15
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
16
+ * @package Tax
17
+ */
18
 
19
  class ServiceMode extends Enum
20
  {
45
 
46
  // Unfortunate boiler plate due to polymorphism issues on static functions
47
  public static function Validate($value) { self::__Validate($value,self::Values(),__CLASS__); }
48
+ }
49
+ ?>
lib/AvaTax/classes/SeverityLevel.class.php CHANGED
@@ -1,8 +1,6 @@
1
  <?php
2
  /**
3
  * SeverityLevel.class.php
4
- *
5
- * @package Address
6
  */
7
 
8
  /**
@@ -10,9 +8,9 @@
10
  *
11
  * Defines the constants used to specify SeverityLevel in {@link Message}
12
  *
13
- * @package Address
14
- * @author tblanchard
15
- * Copyright (c) 2007, Avalara. All rights reserved.
16
  */
17
 
18
  class SeverityLevel extends Enum
@@ -29,10 +27,12 @@ class SeverityLevel extends Enum
29
  SeverityLevel::$Success,
30
  SeverityLevel::$Warning,
31
  SeverityLevel::$Error,
32
- SeverityLevel::$Tax
33
  );
34
  }
35
 
36
  // Unfortunate boiler plate due to polymorphism issues on static functions
37
  public static function Validate($value) { self::__Validate($value,self::Values(),__CLASS__); }
38
- }
 
 
1
  <?php
2
  /**
3
  * SeverityLevel.class.php
 
 
4
  */
5
 
6
  /**
8
  *
9
  * Defines the constants used to specify SeverityLevel in {@link Message}
10
  *
11
+ * @author Avalara
12
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
13
+ * @package Address
14
  */
15
 
16
  class SeverityLevel extends Enum
27
  SeverityLevel::$Success,
28
  SeverityLevel::$Warning,
29
  SeverityLevel::$Error,
30
+ SeverityLevel::$Exception
31
  );
32
  }
33
 
34
  // Unfortunate boiler plate due to polymorphism issues on static functions
35
  public static function Validate($value) { self::__Validate($value,self::Values(),__CLASS__); }
36
+ }
37
+
38
+ ?>
lib/AvaTax/classes/TaxDetail.class.php CHANGED
@@ -1,18 +1,18 @@
1
  <?php
2
  /**
3
  * TaxDetail.class.php
4
- * @package Tax
5
  */
6
 
7
  /**
8
  * Holds calculated tax information by jurisdiction.
9
  *
10
- * @package Tax
11
  * @see ArrayOfTaxDetail
12
  * @see TaxLine
13
  * @see GetTaxResult
14
- * @author tblanchard
15
- * Copyright (c) 2008, Avalara. All rights reserved.
 
 
16
  */
17
 
18
  class TaxDetail
@@ -187,4 +187,10 @@ class TaxDetail
187
  public function getTaxGroup(){ return $this->TaxGroup;}
188
 
189
 
190
- }
 
 
 
 
 
 
1
  <?php
2
  /**
3
  * TaxDetail.class.php
 
4
  */
5
 
6
  /**
7
  * Holds calculated tax information by jurisdiction.
8
  *
 
9
  * @see ArrayOfTaxDetail
10
  * @see TaxLine
11
  * @see GetTaxResult
12
+ *
13
+ * @author Avalara
14
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
15
+ * @package Tax
16
  */
17
 
18
  class TaxDetail
187
  public function getTaxGroup(){ return $this->TaxGroup;}
188
 
189
 
190
+ }
191
+
192
+
193
+
194
+
195
+
196
+ ?>
lib/AvaTax/classes/TaxLine.class.php CHANGED
@@ -1,20 +1,17 @@
1
  <?php
2
  /**
3
  * TaxLine.class.php
4
- *
5
- * @package Tax
6
  */
7
 
8
  /**
9
  * Contains Tax data; Retunded form {@link AddressServiceSoap#getTax};
10
  * Also part of the {@link GetTaxRequest}
11
  * result returned from the {@link TaxServiceSoap#getTax} tax calculation service;
12
- * @package Tax
13
- * @author tblanchard
14
- * Copyright (c) 2008, Avalara. All rights reserved.
 
15
  */
16
- /*
17
- */
18
 
19
  class TaxLine
20
  {
@@ -130,4 +127,5 @@ class TaxLine
130
 
131
 
132
 
133
- }
 
1
  <?php
2
  /**
3
  * TaxLine.class.php
 
 
4
  */
5
 
6
  /**
7
  * Contains Tax data; Retunded form {@link AddressServiceSoap#getTax};
8
  * Also part of the {@link GetTaxRequest}
9
  * result returned from the {@link TaxServiceSoap#getTax} tax calculation service;
10
+ *
11
+ * @author Avalara
12
+ * @copyright 2004 - 2011 Avalara, Inc. All rights reserved.
13
+ * @package Tax
14
  */
 
 
15
 
16
  class TaxLine
17
  {
127
 
128
 
129
 
130
+ }
131
+ ?>
lib/AvaTax/classes/TaxOverride.class.php CHANGED
@@ -1,9 +1,14 @@
1
  <?php
2
-
3
  /**
4
  * TaxOverride.class.php
 
 
 
 
5
  *
6
- * @package Tax
 
 
7
  */
8
 
9
  class TaxOverride
@@ -37,4 +42,6 @@ class TaxOverride
37
  public function getReason(){return $this->Reason;} //string
38
 
39
 
40
- }
 
 
1
  <?php
 
2
  /**
3
  * TaxOverride.class.php
4
+ */
5
+
6
+ /**
7
+ *
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Tax
12
  */
13
 
14
  class TaxOverride
42
  public function getReason(){return $this->Reason;} //string
43
 
44
 
45
+ }
46
+
47
+ ?>
lib/AvaTax/classes/TaxOverrideType.class.php CHANGED
@@ -1,8 +1,14 @@
1
  <?php
2
  /**
3
  * TaxOverrideType.class.php
 
 
 
 
4
  *
5
- * @package Tax
 
 
6
  */
7
  class TaxOverrideType
8
  {
@@ -10,5 +16,7 @@ class TaxOverrideType
10
  public static $TaxAmount = "TaxAmount";
11
  public static $Exemption = "Exemption";
12
  public static $TaxDate = "TaxDate";
13
-
14
- }
 
 
1
  <?php
2
  /**
3
  * TaxOverrideType.class.php
4
+ */
5
+
6
+ /**
7
+ *
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Tax
12
  */
13
  class TaxOverrideType
14
  {
16
  public static $TaxAmount = "TaxAmount";
17
  public static $Exemption = "Exemption";
18
  public static $TaxDate = "TaxDate";
19
+ public static $AccruedTaxAmount = "AccruedTaxAmount";
20
+ }
21
+
22
+ ?>
lib/AvaTax/classes/TaxRequest.class.php CHANGED
@@ -1,7 +1,6 @@
1
  <?php
2
  /**
3
  * TaxRequest.class.php
4
- * @package Tax
5
  */
6
 
7
  /**
@@ -9,9 +8,10 @@
9
  * Tax Requests require either a DocId, or CompanyCode, DocType, and DocCode.
10
  *
11
  * @see TaxServiceSoap
12
- * @package Tax
13
- * @author tblanchard
14
- * Copyright (c) 2007, Avalara. All rights reserved.
 
15
  */
16
 
17
  class TaxRequest
@@ -48,7 +48,7 @@ class TaxRequest
48
  * @access public
49
  * @var string
50
  */
51
- //protected $DocId;
52
 
53
  /**
54
  * Sets the client application company reference code.
@@ -87,7 +87,7 @@ class TaxRequest
87
  * @see GetTaxResult#DocId
88
  */
89
 
90
- //public function setDocId($value) { $this->DocId = $value; return $this; }
91
 
92
  /**
93
  * Sets the hashCode value for this GetTaxRequest.
@@ -149,7 +149,7 @@ class TaxRequest
149
  * @see GetTaxResult#DocId
150
  */
151
 
152
- //public function getDocId() { return $this->DocId; }
153
 
154
  public function __construct()
155
  {
@@ -158,4 +158,6 @@ class TaxRequest
158
 
159
  }
160
 
161
- }
 
 
1
  <?php
2
  /**
3
  * TaxRequest.class.php
 
4
  */
5
 
6
  /**
8
  * Tax Requests require either a DocId, or CompanyCode, DocType, and DocCode.
9
  *
10
  * @see TaxServiceSoap
11
+ *
12
+ * @author Avalara
13
+ * @copyright 2004 - 2011 Avalara, Inc. All rights reserved.
14
+ * @package Tax
15
  */
16
 
17
  class TaxRequest
48
  * @access public
49
  * @var string
50
  */
51
+ protected $DocId;
52
 
53
  /**
54
  * Sets the client application company reference code.
87
  * @see GetTaxResult#DocId
88
  */
89
 
90
+ public function setDocId($value) { $this->DocId = $value; return $this; }
91
 
92
  /**
93
  * Sets the hashCode value for this GetTaxRequest.
149
  * @see GetTaxResult#DocId
150
  */
151
 
152
+ public function getDocId() { return $this->DocId; }
153
 
154
  public function __construct()
155
  {
158
 
159
  }
160
 
161
+ }
162
+
163
+ ?>
lib/AvaTax/classes/TaxServiceSoap.class.php CHANGED
@@ -1,16 +1,11 @@
1
  <?php
2
-
3
  /**
4
  * TaxServiceSoap.class.php
5
- *
6
- * This is a proxy for the Avalara Tax service. It contains methods that perform remote calls
7
- * to the Avalara Tax Service.
8
- *
9
- * @package Tax
10
  */
11
 
12
  /**
13
- * Proxy interface for the Avalara Tax Web Service.
 
14
  *
15
  * TaxServiceSoap reads its configuration values from static variables defined
16
  * in ATConfig.class.php. This file must be properly configured with your security credentials.
@@ -22,9 +17,9 @@
22
  * $result = $taxService->ping();
23
  * </pre>
24
  *
25
- * @package Tax
26
- * @author tblanchard
27
- * Copyright (c) 2007, Avalara. All rights reserved.
28
  */
29
 
30
 
@@ -304,3 +299,5 @@ public function __construct($configurationName = 'Default')
304
  }
305
 
306
  }
 
 
1
  <?php
 
2
  /**
3
  * TaxServiceSoap.class.php
 
 
 
 
 
4
  */
5
 
6
  /**
7
+ * Proxy interface for the Avalara Tax Web Service. It contains methods that perform remote calls
8
+ * to the Avalara Tax Service.
9
  *
10
  * TaxServiceSoap reads its configuration values from static variables defined
11
  * in ATConfig.class.php. This file must be properly configured with your security credentials.
17
  * $result = $taxService->ping();
18
  * </pre>
19
  *
20
+ * @author Avalara
21
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
22
+ * @package Tax
23
  */
24
 
25
 
299
  }
300
 
301
  }
302
+
303
+ ?>
lib/AvaTax/classes/TaxType.class.php CHANGED
@@ -1,15 +1,14 @@
1
  <?php
2
  /**
3
  * TaxType.class.php
4
- * @package Tax
5
  */
6
 
7
  /**
8
  * The Type of the tax.
9
  *
10
- * @package Tax
11
- * @author tblanchard
12
- * Copyright (c) 2008, Avalara. All rights reserved.
13
  */
14
 
15
  class TaxType// extends Enum
@@ -17,6 +16,12 @@ class TaxType// extends Enum
17
  public static $Sales = 'Sales';
18
  public static $Use = 'Use';
19
  public static $ConsumerUse = 'ConsumerUse';
 
 
 
 
 
 
20
  /*
21
  public static function Values()
22
  {
@@ -32,4 +37,8 @@ class TaxType// extends Enum
32
 
33
  */
34
 
35
- }
 
 
 
 
1
  <?php
2
  /**
3
  * TaxType.class.php
 
4
  */
5
 
6
  /**
7
  * The Type of the tax.
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Tax
12
  */
13
 
14
  class TaxType// extends Enum
16
  public static $Sales = 'Sales';
17
  public static $Use = 'Use';
18
  public static $ConsumerUse = 'ConsumerUse';
19
+ public static $Output = 'Output';
20
+ public static $Input = 'Input';
21
+ public static $Nonrecoverable = 'Nonrecoverable';
22
+ public static $Fee = 'Fee';
23
+ public static $Rental = 'Rental';
24
+ public static $Excise ='Excise';
25
  /*
26
  public static function Values()
27
  {
37
 
38
  */
39
 
40
+ }
41
+
42
+
43
+
44
+ ?>
lib/AvaTax/classes/TextCase.class.php CHANGED
@@ -1,15 +1,14 @@
1
  <?php
2
  /**
3
  * TextCase.class.php
4
- * @package Address
5
  */
6
 
7
  /**
8
  * The casing to apply to the valid address(es) returned in the validation result.
9
  *
10
- * @package Address
11
- * @author tblanchard
12
- * Copyright (c) 2007, Avalara. All rights reserved.
13
  */
14
 
15
  class TextCase extends Enum
@@ -29,4 +28,6 @@ class TextCase extends Enum
29
 
30
  // Unfortunate boiler plate due to polymorphism issues on static functions
31
  public static function Validate($value) { self::__Validate($value,self::Values(),__CLASS__); }
32
- }
 
 
1
  <?php
2
  /**
3
  * TextCase.class.php
 
4
  */
5
 
6
  /**
7
  * The casing to apply to the valid address(es) returned in the validation result.
8
  *
9
+ * @author Avalara
10
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
11
+ * @package Address
12
  */
13
 
14
  class TextCase extends Enum
28
 
29
  // Unfortunate boiler plate due to polymorphism issues on static functions
30
  public static function Validate($value) { self::__Validate($value,self::Values(),__CLASS__); }
31
+ }
32
+
33
+ ?>
lib/AvaTax/classes/ValidAddress.class.php CHANGED
@@ -1,7 +1,6 @@
1
  <?php
2
  /**
3
  * ValidAddress.class.php
4
- * @package Address
5
  */
6
 
7
  /**
@@ -33,9 +32,10 @@
33
  * </pre>
34
  *
35
  * @see Address
36
- * @package Address
37
- * @author tblanchard
38
- * Copyright (c) 2007, Avalara. All rights reserved.
 
39
  */
40
 
41
  class ValidAddress //extends Address - or it should - SoapClient has issues mapping attributes in superclasses
@@ -110,6 +110,8 @@ class ValidAddress //extends Address - or it should - SoapClient has issues mapp
110
  strcmp($this->Region , $other->Region) == 0 &&
111
  strcmp($this->PostalCode , $other->PostalCode) == 0 &&
112
  strcmp($this->Country , $other->Country) == 0 &&
 
 
113
  $this->TaxRegionId === $other->TaxRegionId
114
  );
115
  }
@@ -473,4 +475,6 @@ class ValidAddress //extends Address - or it should - SoapClient has issues mapp
473
 
474
 
475
 
476
- }
 
 
1
  <?php
2
  /**
3
  * ValidAddress.class.php
 
4
  */
5
 
6
  /**
32
  * </pre>
33
  *
34
  * @see Address
35
+ *
36
+ * @author Avalara
37
+ * @copyright 2004 - 2011 Avalara, Inc. All rights reserved.
38
+ * @package Address
39
  */
40
 
41
  class ValidAddress //extends Address - or it should - SoapClient has issues mapping attributes in superclasses
110
  strcmp($this->Region , $other->Region) == 0 &&
111
  strcmp($this->PostalCode , $other->PostalCode) == 0 &&
112
  strcmp($this->Country , $other->Country) == 0 &&
113
+ strcmp($this->Latitude , $other->Latitude) == 0 &&
114
+ strcmp($this->Longitude , $other->Longitude) == 0 &&
115
  $this->TaxRegionId === $other->TaxRegionId
116
  );
117
  }
475
 
476
 
477
 
478
+ }
479
+
480
+ ?>
lib/AvaTax/classes/ValidateRequest.class.php CHANGED
@@ -1,7 +1,6 @@
1
  <?php
2
  /**
3
  * ValidateRequest.class.php
4
- * @package Address
5
  */
6
 
7
  /**
@@ -29,9 +28,9 @@
29
  * System.out.println("Number of Addresses is " + numAddresses);
30
  * </pre>
31
  *
32
- * @package Address
33
- * @author tblanchard
34
- * Copyright (c) 2006, Avalara. All rights reserved.
35
  */
36
 
37
  //public function validate($address, $textCase = 'Default', $coordinates = false)
@@ -188,3 +187,5 @@ class ValidateRequest
188
 
189
  public function getCoordinates() { return $this->Coordinates; }
190
  }
 
 
1
  <?php
2
  /**
3
  * ValidateRequest.class.php
 
4
  */
5
 
6
  /**
28
  * System.out.println("Number of Addresses is " + numAddresses);
29
  * </pre>
30
  *
31
+ * @author Avalara
32
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
33
+ * @package Address
34
  */
35
 
36
  //public function validate($address, $textCase = 'Default', $coordinates = false)
187
 
188
  public function getCoordinates() { return $this->Coordinates; }
189
  }
190
+
191
+ ?>
lib/AvaTax/classes/ValidateResult.class.php CHANGED
@@ -1,8 +1,6 @@
1
  <?php
2
  /**
3
  * ValidateResult.class.php
4
- *
5
- * @package Address
6
  */
7
 
8
  /**
@@ -23,10 +21,12 @@
23
  * print("Number of addresses returned is ". sizeoof($addresses));
24
  *
25
  * </pre>
26
- * @package Address
27
  * @see ValidAddress
28
- * @author tblanchard
29
- * Copyright (c) 2005, Avalara. All rights reserved.
 
 
30
  */
31
 
32
 
@@ -84,4 +84,6 @@ class ValidateResult// extends BaseResult
84
  return $this->Taxable;
85
  }
86
 
87
- }
 
 
1
  <?php
2
  /**
3
  * ValidateResult.class.php
 
 
4
  */
5
 
6
  /**
21
  * print("Number of addresses returned is ". sizeoof($addresses));
22
  *
23
  * </pre>
24
+ *
25
  * @see ValidAddress
26
+ *
27
+ * @author Avalara
28
+ * @copyright � 2004 - 2011 Avalara, Inc. All rights reserved.
29
+ * @package Address
30
  */
31
 
32
 
84
  return $this->Taxable;
85
  }
86
 
87
+ }
88
+
89
+ ?>
lib/AvaTax/classes/wsdl/Address.wsdl CHANGED
@@ -1,67 +1,62 @@
1
- <?xml version="1.0" encoding="utf-8"?>
2
  <wsdl:definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="http://avatax.avalara.com/services" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" targetNamespace="http://avatax.avalara.com/services" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
3
  <wsdl:types>
4
  <s:schema elementFormDefault="qualified" targetNamespace="http://avatax.avalara.com/services">
5
  <s:element name="Validate">
6
  <s:complexType>
7
  <s:sequence>
8
- <s:element minOccurs="0" maxOccurs="1" name="ValidateRequest" type="tns:ValidateRequest" />
9
  </s:sequence>
10
  </s:complexType>
11
  </s:element>
12
- <s:complexType name="BaseRequest" />
13
  <s:complexType name="ValidateRequest">
14
- <s:complexContent mixed="false">
15
- <s:extension base="tns:BaseRequest">
16
- <s:sequence>
17
- <s:element minOccurs="0" maxOccurs="1" name="Address" type="tns:BaseAddress" />
18
- <s:element minOccurs="1" maxOccurs="1" name="TextCase" type="tns:TextCase" />
19
- <s:element minOccurs="1" maxOccurs="1" name="Coordinates" type="s:boolean" />
20
- <s:element minOccurs="1" maxOccurs="1" name="Taxability" type="s:boolean" />
21
- </s:sequence>
22
- </s:extension>
23
- </s:complexContent>
24
  </s:complexType>
25
  <s:complexType name="BaseAddress">
26
  <s:sequence>
27
- <s:element minOccurs="0" maxOccurs="1" name="AddressCode" type="s:string" />
28
- <s:element minOccurs="0" maxOccurs="1" name="Line1" type="s:string" />
29
- <s:element minOccurs="0" maxOccurs="1" name="Line2" type="s:string" />
30
- <s:element minOccurs="0" maxOccurs="1" name="Line3" type="s:string" />
31
- <s:element minOccurs="0" maxOccurs="1" name="City" type="s:string" />
32
- <s:element minOccurs="0" maxOccurs="1" name="Region" type="s:string" />
33
- <s:element minOccurs="0" maxOccurs="1" name="PostalCode" type="s:string" />
34
- <s:element minOccurs="0" maxOccurs="1" name="Country" type="s:string" />
35
- <s:element minOccurs="1" maxOccurs="1" name="TaxRegionId" type="s:int" />
36
  </s:sequence>
37
  </s:complexType>
38
  <s:complexType name="ValidAddress">
39
  <s:complexContent mixed="false">
40
  <s:extension base="tns:BaseAddress">
41
  <s:sequence>
42
- <s:element minOccurs="0" maxOccurs="1" name="Line4" type="s:string" />
43
- <s:element minOccurs="0" maxOccurs="1" name="County" type="s:string" />
44
- <s:element minOccurs="0" maxOccurs="1" name="FipsCode" type="s:string" />
45
- <s:element minOccurs="0" maxOccurs="1" name="CarrierRoute" type="s:string" />
46
- <s:element minOccurs="0" maxOccurs="1" name="PostNet" type="s:string" />
47
- <s:element minOccurs="0" maxOccurs="1" name="AddressType" type="s:string" />
48
- <s:element minOccurs="0" maxOccurs="1" name="Latitude" type="s:string" />
49
- <s:element minOccurs="0" maxOccurs="1" name="Longitude" type="s:string" />
50
  </s:sequence>
51
  </s:extension>
52
  </s:complexContent>
53
  </s:complexType>
54
  <s:simpleType name="TextCase">
55
  <s:restriction base="s:string">
56
- <s:enumeration value="Default" />
57
- <s:enumeration value="Upper" />
58
- <s:enumeration value="Mixed" />
59
  </s:restriction>
60
  </s:simpleType>
61
  <s:element name="ValidateResponse">
62
  <s:complexType>
63
  <s:sequence>
64
- <s:element minOccurs="0" maxOccurs="1" name="ValidateResult" type="tns:ValidateResult" />
65
  </s:sequence>
66
  </s:complexType>
67
  </s:element>
@@ -69,182 +64,69 @@
69
  <s:complexContent mixed="false">
70
  <s:extension base="tns:BaseResult">
71
  <s:sequence>
72
- <s:element minOccurs="0" maxOccurs="1" name="ValidAddresses" type="tns:ArrayOfValidAddress" />
73
- <s:element minOccurs="1" maxOccurs="1" name="Taxable" type="s:boolean" />
74
- </s:sequence>
75
- </s:extension>
76
- </s:complexContent>
77
- </s:complexType>
78
-
79
- <!-- Begin New Methods-->
80
- <s:element name="SubmitBatch">
81
- <s:complexType>
82
- <s:sequence>
83
- <s:element minOccurs="0" maxOccurs="1" name="SubmitAddressBatchRequest" type="tns:SubmitAddressBatchRequest" />
84
- </s:sequence>
85
- </s:complexType>
86
- </s:element>
87
- <s:complexType name="SubmitAddressBatchRequest">
88
- <s:complexContent mixed="false">
89
- <s:extension base="tns:BaseRequest">
90
- <s:sequence>
91
- <s:element minOccurs="0" maxOccurs="1" name="Requests" type="tns:AddressRequestList" />
92
- </s:sequence>
93
- </s:extension>
94
- </s:complexContent>
95
- </s:complexType>
96
- <s:complexType name="AddressRequestList">
97
- <s:choice minOccurs="0" maxOccurs="unbounded">
98
- <s:element name="ValidateRequest" nillable="true" type="tns:ValidateRequest" />
99
- </s:choice>
100
- </s:complexType>
101
- <s:element name="SubmitBatchResponse">
102
- <s:complexType>
103
- <s:sequence>
104
- <s:element minOccurs="0" maxOccurs="1" name="SubmitBatchResult" type="tns:SubmitAddressBatchResult" />
105
- </s:sequence>
106
- </s:complexType>
107
- </s:element>
108
- <s:complexType name="SubmitAddressBatchResult">
109
- <s:complexContent mixed="false">
110
- <s:extension base="tns:BaseResult">
111
- <s:sequence>
112
- <s:element minOccurs="0" maxOccurs="1" name="BatchId" type="s:string" />
113
- </s:sequence>
114
- </s:extension>
115
- </s:complexContent>
116
- </s:complexType>
117
-
118
- <s:element name="GetBatch">
119
- <s:complexType>
120
- <s:sequence>
121
- <s:element minOccurs="0" maxOccurs="1" name="GetAddressBatchRequest" type="tns:GetAddressBatchRequest" />
122
- </s:sequence>
123
- </s:complexType>
124
- </s:element>
125
- <s:complexType name="GetAddressBatchRequest">
126
- <s:complexContent mixed="false">
127
- <s:extension base="tns:BaseRequest">
128
- <s:sequence>
129
- <s:element minOccurs="1" maxOccurs="1" name="BatchId" type="s:string" />
130
- </s:sequence>
131
- </s:extension>
132
- </s:complexContent>
133
- </s:complexType>
134
- <s:element name="GetBatchResponse">
135
- <s:complexType>
136
- <s:sequence>
137
- <s:element minOccurs="0" maxOccurs="1" name="GetBatchResult" type="tns:GetAddressBatchResult" />
138
- </s:sequence>
139
- </s:complexType>
140
- </s:element>
141
- <s:complexType name="GetAddressBatchResult">
142
- <s:complexContent mixed="false">
143
- <s:extension base="tns:BaseResult">
144
- <s:sequence>
145
- <s:element minOccurs="1" maxOccurs="1" name="BatchId" type="s:string" />
146
- <s:element minOccurs="1" maxOccurs="1" name="BatchStatus" type="s:string" />
147
- <s:element minOccurs="1" maxOccurs="1" name="RecordCount" type="s:int" />
148
- <s:element minOccurs="1" maxOccurs="1" name="CurrentRecord" type="s:int" />
149
- <s:element minOccurs="0" maxOccurs="1" name="Results" type="tns:AddressResultList" />
150
- </s:sequence>
151
- </s:extension>
152
- </s:complexContent>
153
- </s:complexType>
154
- <s:complexType name="AddressResultList">
155
- <s:choice minOccurs="0" maxOccurs="unbounded">
156
- <s:element name="ValidateResult" nillable="true" type="tns:ValidateResult" />
157
- </s:choice>
158
- </s:complexType>
159
-
160
- <s:element name="CancelBatch">
161
- <s:complexType>
162
- <s:sequence>
163
- <s:element minOccurs="0" maxOccurs="1" name="CancelAddressBatchRequest" type="tns:CancelAddressBatchRequest" />
164
- </s:sequence>
165
- </s:complexType>
166
- </s:element>
167
- <s:complexType name="CancelAddressBatchRequest">
168
- <s:complexContent mixed="false">
169
- <s:extension base="tns:BaseRequest">
170
- <s:sequence>
171
- <s:element minOccurs="1" maxOccurs="1" name="BatchId" type="s:string" />
172
  </s:sequence>
173
  </s:extension>
174
  </s:complexContent>
175
  </s:complexType>
176
- <s:element name="CancelBatchResponse">
177
- <s:complexType>
178
- <s:sequence>
179
- <s:element minOccurs="0" maxOccurs="1" name="CancelBatchResult" type="tns:CancelAddressBatchResult" />
180
- </s:sequence>
181
- </s:complexType>
182
- </s:element>
183
- <s:complexType name="CancelAddressBatchResult">
184
- <s:complexContent mixed="false">
185
- <s:extension base="tns:BaseResult" />
186
- </s:complexContent>
187
- </s:complexType>
188
- <!-- End New Methods -->
189
-
190
  <s:complexType name="BaseResult">
191
  <s:sequence>
192
- <s:element minOccurs="0" maxOccurs="1" name="TransactionId" type="s:string" />
193
- <s:element minOccurs="1" maxOccurs="1" name="ResultCode" type="tns:SeverityLevel" />
194
- <s:element minOccurs="0" maxOccurs="1" name="Messages" type="tns:ArrayOfMessage" />
195
  </s:sequence>
196
  </s:complexType>
197
  <s:simpleType name="SeverityLevel">
198
  <s:restriction base="s:string">
199
- <s:enumeration value="Success" />
200
- <s:enumeration value="Warning" />
201
- <s:enumeration value="Error" />
202
- <s:enumeration value="Exception" />
203
  </s:restriction>
204
  </s:simpleType>
205
  <s:complexType name="ArrayOfMessage">
206
  <s:sequence>
207
- <s:element minOccurs="0" maxOccurs="unbounded" name="Message" nillable="true" type="tns:Message" />
208
  </s:sequence>
209
  </s:complexType>
210
  <s:complexType name="Message">
211
  <s:sequence>
212
- <s:element minOccurs="0" maxOccurs="1" name="Summary" type="s:string" />
213
- <s:element minOccurs="0" maxOccurs="1" name="Details" type="s:string" />
214
- <s:element minOccurs="0" maxOccurs="1" name="HelpLink" type="s:string" />
215
- <s:element minOccurs="0" maxOccurs="1" name="RefersTo" type="s:string" />
216
- <s:element minOccurs="1" maxOccurs="1" name="Severity" type="tns:SeverityLevel" />
217
- <s:element minOccurs="0" maxOccurs="1" name="Source" type="s:string" />
218
  </s:sequence>
219
- <s:attribute name="Name" type="s:string" />
220
  </s:complexType>
221
  <s:complexType name="ArrayOfValidAddress">
222
  <s:sequence>
223
- <s:element minOccurs="0" maxOccurs="unbounded" name="ValidAddress" nillable="true" type="tns:ValidAddress" />
224
  </s:sequence>
225
  </s:complexType>
226
- <s:element name="Profile" type="tns:Profile" />
227
  <s:complexType name="Profile">
228
  <s:sequence>
229
- <s:element minOccurs="0" maxOccurs="1" name="Name" type="s:string" />
230
- <s:element minOccurs="0" maxOccurs="1" name="Client" type="s:string" />
231
- <s:element minOccurs="0" maxOccurs="1" name="Adapter" type="s:string" />
232
- <s:element minOccurs="0" maxOccurs="1" name="Machine" type="s:string" />
233
  </s:sequence>
234
- <s:anyAttribute />
235
  </s:complexType>
236
-
237
  <s:element name="Ping">
238
  <s:complexType>
239
  <s:sequence>
240
- <s:element minOccurs="0" maxOccurs="1" name="Message" type="s:string" />
241
  </s:sequence>
242
  </s:complexType>
243
  </s:element>
244
  <s:element name="PingResponse">
245
  <s:complexType>
246
  <s:sequence>
247
- <s:element minOccurs="0" maxOccurs="1" name="PingResult" type="tns:PingResult" />
248
  </s:sequence>
249
  </s:complexType>
250
  </s:element>
@@ -252,7 +134,7 @@
252
  <s:complexContent mixed="false">
253
  <s:extension base="tns:BaseResult">
254
  <s:sequence>
255
- <s:element minOccurs="0" maxOccurs="1" name="Version" type="s:string" />
256
  </s:sequence>
257
  </s:extension>
258
  </s:complexContent>
@@ -260,14 +142,14 @@
260
  <s:element name="IsAuthorized">
261
  <s:complexType>
262
  <s:sequence>
263
- <s:element minOccurs="0" maxOccurs="1" name="Operations" type="s:string" />
264
  </s:sequence>
265
  </s:complexType>
266
  </s:element>
267
  <s:element name="IsAuthorizedResponse">
268
  <s:complexType>
269
  <s:sequence>
270
- <s:element minOccurs="0" maxOccurs="1" name="IsAuthorizedResult" type="tns:IsAuthorizedResult" />
271
  </s:sequence>
272
  </s:complexType>
273
  </s:element>
@@ -275,8 +157,8 @@
275
  <s:complexContent mixed="false">
276
  <s:extension base="tns:BaseResult">
277
  <s:sequence>
278
- <s:element minOccurs="0" maxOccurs="1" name="Operations" type="s:string" />
279
- <s:element minOccurs="1" maxOccurs="1" name="Expires" type="s:dateTime" />
280
  </s:sequence>
281
  </s:extension>
282
  </s:complexContent>
@@ -284,229 +166,121 @@
284
  </s:schema>
285
  </wsdl:types>
286
  <wsdl:message name="ValidateSoapIn">
287
- <wsdl:part name="parameters" element="tns:Validate" />
288
  </wsdl:message>
289
  <wsdl:message name="ValidateSoapOut">
290
- <wsdl:part name="parameters" element="tns:ValidateResponse" />
291
  </wsdl:message>
292
  <wsdl:message name="ValidateProfile">
293
- <wsdl:part name="Profile" element="tns:Profile" />
294
  </wsdl:message>
295
  <wsdl:message name="PingSoapIn">
296
- <wsdl:part name="parameters" element="tns:Ping" />
297
  </wsdl:message>
298
  <wsdl:message name="PingSoapOut">
299
- <wsdl:part name="parameters" element="tns:PingResponse" />
300
  </wsdl:message>
301
  <wsdl:message name="PingProfile">
302
- <wsdl:part name="Profile" element="tns:Profile" />
303
  </wsdl:message>
304
  <wsdl:message name="IsAuthorizedSoapIn">
305
- <wsdl:part name="parameters" element="tns:IsAuthorized" />
306
  </wsdl:message>
307
  <wsdl:message name="IsAuthorizedSoapOut">
308
- <wsdl:part name="parameters" element="tns:IsAuthorizedResponse" />
309
  </wsdl:message>
310
  <wsdl:message name="IsAuthorizedProfile">
311
- <wsdl:part name="Profile" element="tns:Profile" />
312
- </wsdl:message>
313
- <!--New Methods Begin-->
314
- <wsdl:message name="SubmitBatchSoapIn">
315
- <wsdl:part name="parameters" element="tns:SubmitBatch" />
316
- </wsdl:message>
317
- <wsdl:message name="SubmitBatchSoapOut">
318
- <wsdl:part name="parameters" element="tns:SubmitBatchResponse" />
319
- </wsdl:message>
320
- <wsdl:message name="SubmitBatchProfile">
321
- <wsdl:part name="Profile" element="tns:Profile" />
322
- </wsdl:message>
323
- <wsdl:message name="GetBatchSoapIn">
324
- <wsdl:part name="parameters" element="tns:GetBatch" />
325
- </wsdl:message>
326
- <wsdl:message name="GetBatchSoapOut">
327
- <wsdl:part name="parameters" element="tns:GetBatchResponse" />
328
- </wsdl:message>
329
- <wsdl:message name="GetBatchProfile">
330
- <wsdl:part name="Profile" element="tns:Profile" />
331
  </wsdl:message>
332
- <wsdl:message name="CancelBatchSoapIn">
333
- <wsdl:part name="parameters" element="tns:CancelBatch" />
334
- </wsdl:message>
335
- <wsdl:message name="CancelBatchSoapOut">
336
- <wsdl:part name="parameters" element="tns:CancelBatchResponse" />
337
- </wsdl:message>
338
- <wsdl:message name="CancelBatchProfile">
339
- <wsdl:part name="Profile" element="tns:Profile" />
340
- </wsdl:message>
341
- <!--New Methods End-->
342
  <wsdl:portType name="AddressSvcSoap">
343
  <wsdl:operation name="Validate">
344
  <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Validate an Address</wsdl:documentation>
345
- <wsdl:input message="tns:ValidateSoapIn" />
346
- <wsdl:output message="tns:ValidateSoapOut" />
347
- </wsdl:operation>
348
- <wsdl:operation name="SubmitBatch">
349
- <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Submits a batch of AddressSvc requests to be processed.</wsdl:documentation>
350
- <wsdl:input message="tns:SubmitBatchSoapIn" />
351
- <wsdl:output message="tns:SubmitBatchSoapOut" />
352
- </wsdl:operation>
353
- <wsdl:operation name="GetBatch">
354
- <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Gets the status and results of a submitted batch.</wsdl:documentation>
355
- <wsdl:input message="tns:GetBatchSoapIn" />
356
- <wsdl:output message="tns:GetBatchSoapOut" />
357
- </wsdl:operation>
358
- <wsdl:operation name="CancelBatch">
359
- <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Cancels an incomplete batch operation.</wsdl:documentation>
360
- <wsdl:input message="tns:CancelBatchSoapIn" />
361
- <wsdl:output message="tns:CancelBatchSoapOut" />
362
  </wsdl:operation>
363
  <wsdl:operation name="Ping">
364
  <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Tests connectivity and version of the service</wsdl:documentation>
365
- <wsdl:input message="tns:PingSoapIn" />
366
- <wsdl:output message="tns:PingSoapOut" />
367
  </wsdl:operation>
368
  <wsdl:operation name="IsAuthorized">
369
  <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Checks authentication and authorization to one or more operations on the service.</wsdl:documentation>
370
- <wsdl:input message="tns:IsAuthorizedSoapIn" />
371
- <wsdl:output message="tns:IsAuthorizedSoapOut" />
372
  </wsdl:operation>
373
  </wsdl:portType>
374
  <wsdl:binding name="AddressSvcSoap" type="tns:AddressSvcSoap">
375
- <soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
376
  <wsdl:operation name="Validate">
377
- <soap:operation soapAction="http://avatax.avalara.com/services/Validate" style="document" />
378
- <wsdl:input>
379
- <soap:body use="literal" />
380
- <soap:header message="tns:ValidateProfile" part="Profile" use="literal" />
381
- </wsdl:input>
382
- <wsdl:output>
383
- <soap:body use="literal" />
384
- </wsdl:output>
385
- </wsdl:operation>
386
- <!--New Methods Begin-->
387
- <wsdl:operation name="SubmitBatch">
388
- <soap:operation soapAction="http://avatax.avalara.com/services/SubmitBatch" style="document" />
389
  <wsdl:input>
390
- <soap:body use="literal" />
391
- <soap:header message="tns:SubmitBatchProfile" part="Profile" use="literal" />
392
  </wsdl:input>
393
  <wsdl:output>
394
- <soap:body use="literal" />
395
  </wsdl:output>
396
  </wsdl:operation>
397
- <wsdl:operation name="GetBatch">
398
- <soap:operation soapAction="http://avatax.avalara.com/services/GetBatch" style="document" />
399
- <wsdl:input>
400
- <soap:body use="literal" />
401
- <soap:header message="tns:GetBatchProfile" part="Profile" use="literal" />
402
- </wsdl:input>
403
- <wsdl:output>
404
- <soap:body use="literal" />
405
- </wsdl:output>
406
- </wsdl:operation>
407
- <wsdl:operation name="CancelBatch">
408
- <soap:operation soapAction="http://avatax.avalara.com/services/CancelBatch" style="document" />
409
- <wsdl:input>
410
- <soap:body use="literal" />
411
- <soap:header message="tns:CancelBatchProfile" part="Profile" use="literal" />
412
- </wsdl:input>
413
- <wsdl:output>
414
- <soap:body use="literal" />
415
- </wsdl:output>
416
- </wsdl:operation>
417
- <!--New Methods End-->
418
  <wsdl:operation name="Ping">
419
- <soap:operation soapAction="http://avatax.avalara.com/services/Ping" style="document" />
420
  <wsdl:input>
421
- <soap:body use="literal" />
422
- <soap:header message="tns:PingProfile" part="Profile" use="literal" />
423
  </wsdl:input>
424
  <wsdl:output>
425
- <soap:body use="literal" />
426
  </wsdl:output>
427
  </wsdl:operation>
428
  <wsdl:operation name="IsAuthorized">
429
- <soap:operation soapAction="http://avatax.avalara.com/services/IsAuthorized" style="document" />
430
  <wsdl:input>
431
- <soap:body use="literal" />
432
- <soap:header message="tns:IsAuthorizedProfile" part="Profile" use="literal" />
433
  </wsdl:input>
434
  <wsdl:output>
435
- <soap:body use="literal" />
436
  </wsdl:output>
437
  </wsdl:operation>
438
  </wsdl:binding>
439
  <wsdl:binding name="AddressSvcSoap12" type="tns:AddressSvcSoap">
440
- <soap12:binding transport="http://schemas.xmlsoap.org/soap/http" />
441
  <wsdl:operation name="Validate">
442
- <soap12:operation soapAction="http://avatax.avalara.com/services/Validate" style="document" />
443
  <wsdl:input>
444
- <soap12:body use="literal" />
445
- <soap12:header message="tns:ValidateProfile" part="Profile" use="literal" />
446
  </wsdl:input>
447
  <wsdl:output>
448
- <soap12:body use="literal" />
449
  </wsdl:output>
450
  </wsdl:operation>
451
  <wsdl:operation name="Ping">
452
- <soap12:operation soapAction="http://avatax.avalara.com/services/Ping" style="document" />
453
  <wsdl:input>
454
- <soap12:body use="literal" />
455
- <soap12:header message="tns:PingProfile" part="Profile" use="literal" />
456
  </wsdl:input>
457
  <wsdl:output>
458
- <soap12:body use="literal" />
459
  </wsdl:output>
460
  </wsdl:operation>
461
  <wsdl:operation name="IsAuthorized">
462
- <soap12:operation soapAction="http://avatax.avalara.com/services/IsAuthorized" style="document" />
463
- <wsdl:input>
464
- <soap12:body use="literal" />
465
- <soap12:header message="tns:IsAuthorizedProfile" part="Profile" use="literal" />
466
- </wsdl:input>
467
- <wsdl:output>
468
- <soap12:body use="literal" />
469
- </wsdl:output>
470
- </wsdl:operation>
471
- <!--New Methods Begin-->
472
- <wsdl:operation name="SubmitBatch">
473
- <soap12:operation soapAction="http://avatax.avalara.com/services/SubmitBatch" style="document" />
474
- <wsdl:input>
475
- <soap12:body use="literal" />
476
- <soap12:header message="tns:SubmitBatchProfile" part="Profile" use="literal" />
477
- </wsdl:input>
478
- <wsdl:output>
479
- <soap12:body use="literal" />
480
- </wsdl:output>
481
- </wsdl:operation>
482
- <wsdl:operation name="GetBatch">
483
- <soap12:operation soapAction="http://avatax.avalara.com/services/GetBatch" style="document" />
484
- <wsdl:input>
485
- <soap12:body use="literal" />
486
- <soap12:header message="tns:GetBatchProfile" part="Profile" use="literal" />
487
- </wsdl:input>
488
- <wsdl:output>
489
- <soap12:body use="literal" />
490
- </wsdl:output>
491
- </wsdl:operation>
492
- <wsdl:operation name="CancelBatch">
493
- <soap12:operation soapAction="http://avatax.avalara.com/services/CancelBatch" style="document" />
494
  <wsdl:input>
495
- <soap12:body use="literal" />
496
- <soap12:header message="tns:CancelBatchProfile" part="Profile" use="literal" />
497
  </wsdl:input>
498
  <wsdl:output>
499
- <soap12:body use="literal" />
500
  </wsdl:output>
501
  </wsdl:operation>
502
- <!--New Methods End-->
503
  </wsdl:binding>
504
  <wsdl:service name="AddressSvc">
505
  <wsdl:port name="AddressSvcSoap" binding="tns:AddressSvcSoap">
506
- <soap:address location="http://localhost/avatax.services/Address/AddressSvc.asmx" />
507
  </wsdl:port>
508
  <wsdl:port name="AddressSvcSoap12" binding="tns:AddressSvcSoap12">
509
- <soap12:address location="http://localhost/avatax.services/Address/AddressSvc.asmx" />
510
  </wsdl:port>
511
  </wsdl:service>
512
  </wsdl:definitions>
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
  <wsdl:definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="http://avatax.avalara.com/services" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" targetNamespace="http://avatax.avalara.com/services" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
3
  <wsdl:types>
4
  <s:schema elementFormDefault="qualified" targetNamespace="http://avatax.avalara.com/services">
5
  <s:element name="Validate">
6
  <s:complexType>
7
  <s:sequence>
8
+ <s:element minOccurs="0" maxOccurs="1" name="ValidateRequest" type="tns:ValidateRequest"/>
9
  </s:sequence>
10
  </s:complexType>
11
  </s:element>
 
12
  <s:complexType name="ValidateRequest">
13
+ <s:sequence>
14
+ <s:element minOccurs="0" maxOccurs="1" name="Address" type="tns:BaseAddress"/>
15
+ <s:element minOccurs="1" maxOccurs="1" name="TextCase" type="tns:TextCase"/>
16
+ <s:element minOccurs="1" maxOccurs="1" name="Coordinates" type="s:boolean"/>
17
+ <s:element minOccurs="1" maxOccurs="1" name="Taxability" type="s:boolean"/>
18
+ </s:sequence>
 
 
 
 
19
  </s:complexType>
20
  <s:complexType name="BaseAddress">
21
  <s:sequence>
22
+ <s:element minOccurs="0" maxOccurs="1" name="AddressCode" type="s:string"/>
23
+ <s:element minOccurs="0" maxOccurs="1" name="Line1" type="s:string"/>
24
+ <s:element minOccurs="0" maxOccurs="1" name="Line2" type="s:string"/>
25
+ <s:element minOccurs="0" maxOccurs="1" name="Line3" type="s:string"/>
26
+ <s:element minOccurs="0" maxOccurs="1" name="City" type="s:string"/>
27
+ <s:element minOccurs="0" maxOccurs="1" name="Region" type="s:string"/>
28
+ <s:element minOccurs="0" maxOccurs="1" name="PostalCode" type="s:string"/>
29
+ <s:element minOccurs="0" maxOccurs="1" name="Country" type="s:string"/>
30
+ <s:element minOccurs="1" maxOccurs="1" name="TaxRegionId" type="s:int"/>
31
  </s:sequence>
32
  </s:complexType>
33
  <s:complexType name="ValidAddress">
34
  <s:complexContent mixed="false">
35
  <s:extension base="tns:BaseAddress">
36
  <s:sequence>
37
+ <s:element minOccurs="0" maxOccurs="1" name="Line4" type="s:string"/>
38
+ <s:element minOccurs="0" maxOccurs="1" name="County" type="s:string"/>
39
+ <s:element minOccurs="0" maxOccurs="1" name="FipsCode" type="s:string"/>
40
+ <s:element minOccurs="0" maxOccurs="1" name="CarrierRoute" type="s:string"/>
41
+ <s:element minOccurs="0" maxOccurs="1" name="PostNet" type="s:string"/>
42
+ <s:element minOccurs="0" maxOccurs="1" name="AddressType" type="s:string"/>
43
+ <s:element minOccurs="0" maxOccurs="1" name="Latitude" type="s:string"/>
44
+ <s:element minOccurs="0" maxOccurs="1" name="Longitude" type="s:string"/>
45
  </s:sequence>
46
  </s:extension>
47
  </s:complexContent>
48
  </s:complexType>
49
  <s:simpleType name="TextCase">
50
  <s:restriction base="s:string">
51
+ <s:enumeration value="Default"/>
52
+ <s:enumeration value="Upper"/>
53
+ <s:enumeration value="Mixed"/>
54
  </s:restriction>
55
  </s:simpleType>
56
  <s:element name="ValidateResponse">
57
  <s:complexType>
58
  <s:sequence>
59
+ <s:element minOccurs="0" maxOccurs="1" name="ValidateResult" type="tns:ValidateResult"/>
60
  </s:sequence>
61
  </s:complexType>
62
  </s:element>
64
  <s:complexContent mixed="false">
65
  <s:extension base="tns:BaseResult">
66
  <s:sequence>
67
+ <s:element minOccurs="0" maxOccurs="1" name="ValidAddresses" type="tns:ArrayOfValidAddress"/>
68
+ <s:element minOccurs="1" maxOccurs="1" name="Taxable" type="s:boolean"/>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
69
  </s:sequence>
70
  </s:extension>
71
  </s:complexContent>
72
  </s:complexType>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
73
  <s:complexType name="BaseResult">
74
  <s:sequence>
75
+ <s:element minOccurs="0" maxOccurs="1" name="TransactionId" type="s:string"/>
76
+ <s:element minOccurs="1" maxOccurs="1" name="ResultCode" type="tns:SeverityLevel"/>
77
+ <s:element minOccurs="0" maxOccurs="1" name="Messages" type="tns:ArrayOfMessage"/>
78
  </s:sequence>
79
  </s:complexType>
80
  <s:simpleType name="SeverityLevel">
81
  <s:restriction base="s:string">
82
+ <s:enumeration value="Success"/>
83
+ <s:enumeration value="Warning"/>
84
+ <s:enumeration value="Error"/>
85
+ <s:enumeration value="Exception"/>
86
  </s:restriction>
87
  </s:simpleType>
88
  <s:complexType name="ArrayOfMessage">
89
  <s:sequence>
90
+ <s:element minOccurs="0" maxOccurs="unbounded" name="Message" nillable="true" type="tns:Message"/>
91
  </s:sequence>
92
  </s:complexType>
93
  <s:complexType name="Message">
94
  <s:sequence>
95
+ <s:element minOccurs="0" maxOccurs="1" name="Summary" type="s:string"/>
96
+ <s:element minOccurs="0" maxOccurs="1" name="Details" type="s:string"/>
97
+ <s:element minOccurs="0" maxOccurs="1" name="HelpLink" type="s:string"/>
98
+ <s:element minOccurs="0" maxOccurs="1" name="RefersTo" type="s:string"/>
99
+ <s:element minOccurs="1" maxOccurs="1" name="Severity" type="tns:SeverityLevel"/>
100
+ <s:element minOccurs="0" maxOccurs="1" name="Source" type="s:string"/>
101
  </s:sequence>
102
+ <s:attribute name="Name" type="s:string"/>
103
  </s:complexType>
104
  <s:complexType name="ArrayOfValidAddress">
105
  <s:sequence>
106
+ <s:element minOccurs="0" maxOccurs="unbounded" name="ValidAddress" nillable="true" type="tns:ValidAddress"/>
107
  </s:sequence>
108
  </s:complexType>
109
+ <s:element name="Profile" type="tns:Profile"/>
110
  <s:complexType name="Profile">
111
  <s:sequence>
112
+ <s:element minOccurs="0" maxOccurs="1" name="Name" type="s:string"/>
113
+ <s:element minOccurs="0" maxOccurs="1" name="Client" type="s:string"/>
114
+ <s:element minOccurs="0" maxOccurs="1" name="Adapter" type="s:string"/>
115
+ <s:element minOccurs="0" maxOccurs="1" name="Machine" type="s:string"/>
116
  </s:sequence>
117
+ <s:anyAttribute/>
118
  </s:complexType>
 
119
  <s:element name="Ping">
120
  <s:complexType>
121
  <s:sequence>
122
+ <s:element minOccurs="0" maxOccurs="1" name="Message" type="s:string"/>
123
  </s:sequence>
124
  </s:complexType>
125
  </s:element>
126
  <s:element name="PingResponse">
127
  <s:complexType>
128
  <s:sequence>
129
+ <s:element minOccurs="0" maxOccurs="1" name="PingResult" type="tns:PingResult"/>
130
  </s:sequence>
131
  </s:complexType>
132
  </s:element>
134
  <s:complexContent mixed="false">
135
  <s:extension base="tns:BaseResult">
136
  <s:sequence>
137
+ <s:element minOccurs="0" maxOccurs="1" name="Version" type="s:string"/>
138
  </s:sequence>
139
  </s:extension>
140
  </s:complexContent>
142
  <s:element name="IsAuthorized">
143
  <s:complexType>
144
  <s:sequence>
145
+ <s:element minOccurs="0" maxOccurs="1" name="Operations" type="s:string"/>
146
  </s:sequence>
147
  </s:complexType>
148
  </s:element>
149
  <s:element name="IsAuthorizedResponse">
150
  <s:complexType>
151
  <s:sequence>
152
+ <s:element minOccurs="0" maxOccurs="1" name="IsAuthorizedResult" type="tns:IsAuthorizedResult"/>
153
  </s:sequence>
154
  </s:complexType>
155
  </s:element>
157
  <s:complexContent mixed="false">
158
  <s:extension base="tns:BaseResult">
159
  <s:sequence>
160
+ <s:element minOccurs="0" maxOccurs="1" name="Operations" type="s:string"/>
161
+ <s:element minOccurs="1" maxOccurs="1" name="Expires" type="s:dateTime"/>
162
  </s:sequence>
163
  </s:extension>
164
  </s:complexContent>
166
  </s:schema>
167
  </wsdl:types>
168
  <wsdl:message name="ValidateSoapIn">
169
+ <wsdl:part name="parameters" element="tns:Validate"/>
170
  </wsdl:message>
171
  <wsdl:message name="ValidateSoapOut">
172
+ <wsdl:part name="parameters" element="tns:ValidateResponse"/>
173
  </wsdl:message>
174
  <wsdl:message name="ValidateProfile">
175
+ <wsdl:part name="Profile" element="tns:Profile"/>
176
  </wsdl:message>
177
  <wsdl:message name="PingSoapIn">
178
+ <wsdl:part name="parameters" element="tns:Ping"/>
179
  </wsdl:message>
180
  <wsdl:message name="PingSoapOut">
181
+ <wsdl:part name="parameters" element="tns:PingResponse"/>
182
  </wsdl:message>
183
  <wsdl:message name="PingProfile">
184
+ <wsdl:part name="Profile" element="tns:Profile"/>
185
  </wsdl:message>
186
  <wsdl:message name="IsAuthorizedSoapIn">
187
+ <wsdl:part name="parameters" element="tns:IsAuthorized"/>
188
  </wsdl:message>
189
  <wsdl:message name="IsAuthorizedSoapOut">
190
+ <wsdl:part name="parameters" element="tns:IsAuthorizedResponse"/>
191
  </wsdl:message>
192
  <wsdl:message name="IsAuthorizedProfile">
193
+ <wsdl:part name="Profile" element="tns:Profile"/>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
194
  </wsdl:message>
 
 
 
 
 
 
 
 
 
 
195
  <wsdl:portType name="AddressSvcSoap">
196
  <wsdl:operation name="Validate">
197
  <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Validate an Address</wsdl:documentation>
198
+ <wsdl:input message="tns:ValidateSoapIn"/>
199
+ <wsdl:output message="tns:ValidateSoapOut"/>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
200
  </wsdl:operation>
201
  <wsdl:operation name="Ping">
202
  <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Tests connectivity and version of the service</wsdl:documentation>
203
+ <wsdl:input message="tns:PingSoapIn"/>
204
+ <wsdl:output message="tns:PingSoapOut"/>
205
  </wsdl:operation>
206
  <wsdl:operation name="IsAuthorized">
207
  <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Checks authentication and authorization to one or more operations on the service.</wsdl:documentation>
208
+ <wsdl:input message="tns:IsAuthorizedSoapIn"/>
209
+ <wsdl:output message="tns:IsAuthorizedSoapOut"/>
210
  </wsdl:operation>
211
  </wsdl:portType>
212
  <wsdl:binding name="AddressSvcSoap" type="tns:AddressSvcSoap">
213
+ <soap:binding transport="http://schemas.xmlsoap.org/soap/http"/>
214
  <wsdl:operation name="Validate">
215
+ <soap:operation soapAction="http://avatax.avalara.com/services/Validate" style="document"/>
 
 
 
 
 
 
 
 
 
 
 
216
  <wsdl:input>
217
+ <soap:body use="literal"/>
218
+ <soap:header message="tns:ValidateProfile" part="Profile" use="literal"/>
219
  </wsdl:input>
220
  <wsdl:output>
221
+ <soap:body use="literal"/>
222
  </wsdl:output>
223
  </wsdl:operation>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
224
  <wsdl:operation name="Ping">
225
+ <soap:operation soapAction="http://avatax.avalara.com/services/Ping" style="document"/>
226
  <wsdl:input>
227
+ <soap:body use="literal"/>
228
+ <soap:header message="tns:PingProfile" part="Profile" use="literal"/>
229
  </wsdl:input>
230
  <wsdl:output>
231
+ <soap:body use="literal"/>
232
  </wsdl:output>
233
  </wsdl:operation>
234
  <wsdl:operation name="IsAuthorized">
235
+ <soap:operation soapAction="http://avatax.avalara.com/services/IsAuthorized" style="document"/>
236
  <wsdl:input>
237
+ <soap:body use="literal"/>
238
+ <soap:header message="tns:IsAuthorizedProfile" part="Profile" use="literal"/>
239
  </wsdl:input>
240
  <wsdl:output>
241
+ <soap:body use="literal"/>
242
  </wsdl:output>
243
  </wsdl:operation>
244
  </wsdl:binding>
245
  <wsdl:binding name="AddressSvcSoap12" type="tns:AddressSvcSoap">
246
+ <soap12:binding transport="http://schemas.xmlsoap.org/soap/http"/>
247
  <wsdl:operation name="Validate">
248
+ <soap12:operation soapAction="http://avatax.avalara.com/services/Validate" style="document"/>
249
  <wsdl:input>
250
+ <soap12:body use="literal"/>
251
+ <soap12:header message="tns:ValidateProfile" part="Profile" use="literal"/>
252
  </wsdl:input>
253
  <wsdl:output>
254
+ <soap12:body use="literal"/>
255
  </wsdl:output>
256
  </wsdl:operation>
257
  <wsdl:operation name="Ping">
258
+ <soap12:operation soapAction="http://avatax.avalara.com/services/Ping" style="document"/>
259
  <wsdl:input>
260
+ <soap12:body use="literal"/>
261
+ <soap12:header message="tns:PingProfile" part="Profile" use="literal"/>
262
  </wsdl:input>
263
  <wsdl:output>
264
+ <soap12:body use="literal"/>
265
  </wsdl:output>
266
  </wsdl:operation>
267
  <wsdl:operation name="IsAuthorized">
268
+ <soap12:operation soapAction="http://avatax.avalara.com/services/IsAuthorized" style="document"/>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
269
  <wsdl:input>
270
+ <soap12:body use="literal"/>
271
+ <soap12:header message="tns:IsAuthorizedProfile" part="Profile" use="literal"/>
272
  </wsdl:input>
273
  <wsdl:output>
274
+ <soap12:body use="literal"/>
275
  </wsdl:output>
276
  </wsdl:operation>
 
277
  </wsdl:binding>
278
  <wsdl:service name="AddressSvc">
279
  <wsdl:port name="AddressSvcSoap" binding="tns:AddressSvcSoap">
280
+ <soap:address location="http://localhost/avatax.services/Address/AddressSvc.asmx"/>
281
  </wsdl:port>
282
  <wsdl:port name="AddressSvcSoap12" binding="tns:AddressSvcSoap12">
283
+ <soap12:address location="http://localhost/avatax.services/Address/AddressSvc.asmx"/>
284
  </wsdl:port>
285
  </wsdl:service>
286
  </wsdl:definitions>
lib/AvaTax/classes/wsdl/AvaCert2Svc.wsdl ADDED
@@ -0,0 +1,938 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <wsdl:definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="http://avatax.avalara.com/services" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" targetNamespace="http://avatax.avalara.com/services" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
3
+ <wsdl:types>
4
+ <s:schema elementFormDefault="qualified" targetNamespace="http://avatax.avalara.com/services">
5
+ <s:element name="CustomerSave">
6
+ <s:complexType>
7
+ <s:sequence>
8
+ <s:element minOccurs="0" maxOccurs="1" name="CustomerSaveRequest" type="tns:CustomerSaveRequest" />
9
+ </s:sequence>
10
+ </s:complexType>
11
+ </s:element>
12
+ <s:complexType name="CustomerSaveRequest">
13
+ <s:sequence>
14
+ <s:element minOccurs="0" maxOccurs="1" name="CompanyCode" type="s:string" />
15
+ <s:element minOccurs="0" maxOccurs="1" name="Customer" type="tns:Customer" />
16
+ </s:sequence>
17
+ </s:complexType>
18
+ <s:complexType name="Customer">
19
+ <s:sequence>
20
+ <s:element minOccurs="0" maxOccurs="1" name="CustomerCode" type="s:string" />
21
+ <s:element minOccurs="0" maxOccurs="1" name="NewCustomerCode" type="s:string" />
22
+ <s:element minOccurs="0" maxOccurs="1" name="ParentCustomerCode" type="s:string" />
23
+ <s:element minOccurs="0" maxOccurs="1" name="Type" type="s:string" />
24
+ <s:element minOccurs="0" maxOccurs="1" name="BusinessName" type="s:string" />
25
+ <s:element minOccurs="0" maxOccurs="1" name="Attn" type="s:string" />
26
+ <s:element minOccurs="0" maxOccurs="1" name="Address1" type="s:string" />
27
+ <s:element minOccurs="0" maxOccurs="1" name="Address2" type="s:string" />
28
+ <s:element minOccurs="0" maxOccurs="1" name="City" type="s:string" />
29
+ <s:element minOccurs="0" maxOccurs="1" name="State" type="s:string" />
30
+ <s:element minOccurs="0" maxOccurs="1" name="Country" type="s:string" />
31
+ <s:element minOccurs="0" maxOccurs="1" name="Zip" type="s:string" />
32
+ <s:element minOccurs="0" maxOccurs="1" name="Phone" type="s:string" />
33
+ <s:element minOccurs="0" maxOccurs="1" name="Fax" type="s:string" />
34
+ <s:element minOccurs="0" maxOccurs="1" name="Email" type="s:string" />
35
+ </s:sequence>
36
+ </s:complexType>
37
+ <s:complexType name="Certificate">
38
+ <s:sequence>
39
+ <s:element minOccurs="0" maxOccurs="1" name="AvaCertId" type="s:string" />
40
+ <s:element minOccurs="0" maxOccurs="1" name="CertificateJurisdictions" type="tns:ArrayOfCertificateJurisdiction" />
41
+ <s:element minOccurs="0" maxOccurs="1" name="CustomerCodes" type="tns:ArrayOfString" />
42
+ <s:element minOccurs="0" maxOccurs="1" name="SourceLocationName" type="s:string" />
43
+ <s:element minOccurs="0" maxOccurs="1" name="SourceLocationCode" type="s:string" />
44
+ <s:element minOccurs="0" maxOccurs="1" name="CertificateStatus" type="tns:CertificateStatus" />
45
+ <s:element minOccurs="0" maxOccurs="1" name="ReviewStatus" type="tns:ReviewStatus" />
46
+ <s:element minOccurs="0" maxOccurs="1" name="RejectionReasonCode" type="s:string" />
47
+ <s:element minOccurs="0" maxOccurs="1" name="RejectionReasonDetailCode" type="s:string" />
48
+ <s:element minOccurs="0" maxOccurs="1" name="RejectionReasonCustomText" type="s:string" />
49
+ <s:element minOccurs="0" maxOccurs="1" name="CreatedDate" type="s:dateTime" />
50
+ <s:element minOccurs="0" maxOccurs="1" name="LastModifyDate" type="s:dateTime" />
51
+ <s:element minOccurs="0" maxOccurs="1" name="DocReceivedDate" type="s:dateTime" />
52
+ <s:element minOccurs="0" maxOccurs="1" name="BusinessName" type="s:string" />
53
+ <s:element minOccurs="0" maxOccurs="1" name="Address1" type="s:string" />
54
+ <s:element minOccurs="0" maxOccurs="1" name="Address2" type="s:string" />
55
+ <s:element minOccurs="0" maxOccurs="1" name="City" type="s:string" />
56
+ <s:element minOccurs="0" maxOccurs="1" name="State" type="s:string" />
57
+ <s:element minOccurs="0" maxOccurs="1" name="Country" type="s:string" />
58
+ <s:element minOccurs="0" maxOccurs="1" name="Zip" type="s:string" />
59
+ <s:element minOccurs="0" maxOccurs="1" name="Phone" type="s:string" />
60
+ <s:element minOccurs="0" maxOccurs="1" name="Email" type="s:string" />
61
+ <s:element minOccurs="0" maxOccurs="1" name="SignerName" type="s:string" />
62
+ <s:element minOccurs="0" maxOccurs="1" name="SignerTitle" type="s:string" />
63
+ <s:element minOccurs="0" maxOccurs="1" name="SignedDate" type="s:dateTime" />
64
+ <s:element minOccurs="0" maxOccurs="1" name="BusinessDescription" type="s:string" />
65
+ <s:element minOccurs="0" maxOccurs="1" name="SellerPropertyDescription" type="s:string" />
66
+ <s:element minOccurs="0" maxOccurs="1" name="CertificateUsage" type="tns:CertificateUsage" />
67
+ <s:element minOccurs="0" maxOccurs="1" name="IsPartialExemption" type="s:boolean" />
68
+ <s:element minOccurs="0" maxOccurs="1" name="ExemptReasonCode" type="s:string" />
69
+ <s:element minOccurs="0" maxOccurs="1" name="ExemptFormName" type="s:string" />
70
+ <s:element minOccurs="0" maxOccurs="1" name="Custom1" type="s:string" />
71
+ <s:element minOccurs="0" maxOccurs="1" name="Custom2" type="s:string" />
72
+ <s:element minOccurs="0" maxOccurs="1" name="Custom3" type="s:string" />
73
+ <s:element minOccurs="0" maxOccurs="1" name="PageCount" type="s:int" />
74
+ </s:sequence>
75
+ </s:complexType>
76
+ <s:simpleType name="CertificateStatus">
77
+ <s:restriction base="s:string">
78
+ <s:enumeration value="ACTIVE" />
79
+ <s:enumeration value="VOID" />
80
+ <s:enumeration value="INCOMPLETE" />
81
+ </s:restriction>
82
+ </s:simpleType>
83
+ <s:simpleType name="ReviewStatus">
84
+ <s:restriction base="s:string">
85
+ <s:enumeration value="PENDING" />
86
+ <s:enumeration value="ACCEPTED" />
87
+ <s:enumeration value="REJECTED" />
88
+ </s:restriction>
89
+ </s:simpleType>
90
+ <s:simpleType name="CertificateUsage">
91
+ <s:restriction base="s:string">
92
+ <s:enumeration value="BLANKET" />
93
+ <s:enumeration value="SINGLE" />
94
+ <s:enumeration value="NULL" />
95
+ </s:restriction>
96
+ </s:simpleType>
97
+ <s:complexType name="CertificateJurisdiction">
98
+ <s:sequence>
99
+ <s:element minOccurs="0" maxOccurs="1" name="Jurisdiction" type="s:string" />
100
+ <s:element minOccurs="0" maxOccurs="1" name="Country" type="s:string" />
101
+ <s:element minOccurs="0" maxOccurs="1" name="ExpiryDate" type="s:dateTime" />
102
+ <s:element minOccurs="0" maxOccurs="1" name="DoesNotExpire" type="s:boolean" />
103
+ <s:element minOccurs="0" maxOccurs="1" name="PermitNumbers" type="tns:ArrayOfString" />
104
+ </s:sequence>
105
+ </s:complexType>
106
+ <s:complexType name="ArrayOfString">
107
+ <s:sequence>
108
+ <s:element minOccurs="0" maxOccurs="unbounded" name="string" nillable="true" type="s:string" />
109
+ </s:sequence>
110
+ </s:complexType>
111
+ <s:complexType name="ArrayOfCertificateJurisdiction">
112
+ <s:sequence>
113
+ <s:element minOccurs="0" maxOccurs="unbounded" name="CertificateJurisdiction" nillable="true" type="tns:CertificateJurisdiction" />
114
+ </s:sequence>
115
+ </s:complexType>
116
+ <s:complexType name="ArrayOfCertificate">
117
+ <s:sequence>
118
+ <s:element minOccurs="0" maxOccurs="unbounded" name="Certificate" nillable="true" type="tns:Certificate" />
119
+ </s:sequence>
120
+ </s:complexType>
121
+ <s:element name="CustomerSaveResponse">
122
+ <s:complexType>
123
+ <s:sequence>
124
+ <s:element minOccurs="0" maxOccurs="1" name="CustomerSaveResult" type="tns:CustomerSaveResult" />
125
+ </s:sequence>
126
+ </s:complexType>
127
+ </s:element>
128
+ <s:complexType name="CustomerSaveResult">
129
+ <s:complexContent mixed="false">
130
+ <s:extension base="tns:BaseResult" />
131
+ </s:complexContent>
132
+ </s:complexType>
133
+
134
+
135
+ <s:element name="Profile" type="tns:Profile" />
136
+ <s:complexType name="Profile">
137
+ <s:sequence>
138
+ <s:element minOccurs="0" maxOccurs="1" name="Name" type="s:string" />
139
+ <s:element minOccurs="0" maxOccurs="1" name="Client" type="s:string" />
140
+ <s:element minOccurs="0" maxOccurs="1" name="Adapter" type="s:string" />
141
+ <s:element minOccurs="0" maxOccurs="1" name="Machine" type="s:string" />
142
+ </s:sequence>
143
+ <s:anyAttribute />
144
+ </s:complexType>
145
+
146
+ <s:element name="CertificateRequestInitiate">
147
+ <s:complexType>
148
+ <s:sequence>
149
+ <s:element minOccurs="0" maxOccurs="1" name="CertificateRequestInitiateRequest" type="tns:CertificateRequestInitiateRequest" />
150
+ </s:sequence>
151
+ </s:complexType>
152
+ </s:element>
153
+ <s:complexType name="CertificateRequestInitiateRequest">
154
+ <s:sequence>
155
+ <s:element minOccurs="0" maxOccurs="1" name="CompanyCode" type="s:string" />
156
+ <s:element minOccurs="0" maxOccurs="1" name="CustomerCode" type="s:string" />
157
+ <s:element minOccurs="1" maxOccurs="1" name="CommunicationMode" type="tns:CommunicationMode" />
158
+ <s:element minOccurs="0" maxOccurs="1" name="SourceLocationCode" type="s:string" />
159
+ <s:element minOccurs="1" maxOccurs="1" name="Type" type="tns:RequestType" />
160
+ <s:element minOccurs="0" maxOccurs="1" name="CustomMessage" type="s:string" />
161
+ <s:element minOccurs="0" maxOccurs="1" name="LetterTemplate" type="s:string" />
162
+ <s:element minOccurs="0" maxOccurs="1" name="IncludeCoverPage" type="s:boolean" />
163
+ <s:element minOccurs="0" maxOccurs="1" name="CloseReason" type="s:string" />
164
+ <s:element minOccurs="0" maxOccurs="1" name="RequestId" type="s:string" />
165
+ </s:sequence>
166
+ </s:complexType>
167
+
168
+ <s:element name="CertificateRequestInitiateResponse">
169
+ <s:complexType>
170
+ <s:sequence>
171
+ <s:element minOccurs="0" maxOccurs="1" name="CertificateRequestInitiateResult" type="tns:CertificateRequestInitiateResult" />
172
+ </s:sequence>
173
+ </s:complexType>
174
+ </s:element>
175
+ <s:complexType name="CertificateRequestInitiateResult">
176
+ <s:complexContent mixed="false">
177
+ <s:extension base="tns:BaseResult">
178
+ <s:sequence>
179
+ <s:element minOccurs="0" maxOccurs="1" name="TrackingCode" type="s:string" />
180
+ <s:element minOccurs="0" maxOccurs="1" name="WizardLaunchUrl" type="s:string" />
181
+ <s:element minOccurs="0" maxOccurs="1" name="RequestId" type="s:string" />
182
+ <s:element minOccurs="0" maxOccurs="1" name="CustomerCode" type="s:string" />
183
+ </s:sequence>
184
+ </s:extension>
185
+ </s:complexContent>
186
+ </s:complexType>
187
+
188
+
189
+ <s:element name="CertificateGet">
190
+ <s:complexType>
191
+ <s:sequence>
192
+ <s:element minOccurs="0" maxOccurs="1" name="CertificateGetRequest" type="tns:CertificateGetRequest" />
193
+ </s:sequence>
194
+ </s:complexType>
195
+ </s:element>
196
+ <s:complexType name="CertificateGetRequest">
197
+ <s:sequence>
198
+ <s:element minOccurs="0" maxOccurs="1" name="CompanyCode" type="s:string" />
199
+ <s:element minOccurs="0" maxOccurs="1" name="CustomerCode" type="s:string" />
200
+ <s:element minOccurs="1" maxOccurs="1" name="ModFromDate" type="s:dateTime" />
201
+ <s:element minOccurs="1" maxOccurs="1" name="ModToDate" type="s:dateTime" />
202
+ </s:sequence>
203
+ </s:complexType>
204
+ <s:simpleType name="CommunicationMode">
205
+ <s:restriction base="s:string">
206
+ <s:enumeration value="NULL" />
207
+ <s:enumeration value="EMAIL" />
208
+ <s:enumeration value="MAIL" />
209
+ <s:enumeration value="FAX" />
210
+ </s:restriction>
211
+ </s:simpleType>
212
+ <s:element name="CertificateGetResponse">
213
+ <s:complexType>
214
+ <s:sequence>
215
+ <s:element minOccurs="0" maxOccurs="1" name="CertificateGetResult" type="tns:CertificateGetResult" />
216
+ </s:sequence>
217
+ </s:complexType>
218
+ </s:element>
219
+ <s:complexType name="CertificateGetResult">
220
+ <s:complexContent mixed="false">
221
+ <s:extension base="tns:BaseResult">
222
+ <s:sequence>
223
+ <s:element minOccurs="0" maxOccurs="1" name="Certificates" type="tns:ArrayOfCertificate" />
224
+ </s:sequence>
225
+ </s:extension>
226
+ </s:complexContent>
227
+ </s:complexType>
228
+
229
+
230
+ <s:element name="CertificateRequestGet">
231
+ <s:complexType>
232
+ <s:sequence>
233
+ <s:element minOccurs="0" maxOccurs="1" name="CertificateRequestGetRequest" type="tns:CertificateRequestGetRequest" />
234
+ </s:sequence>
235
+ </s:complexType>
236
+ </s:element>
237
+ <s:complexType name="CertificateRequestGetRequest">
238
+ <s:sequence>
239
+ <s:element minOccurs="0" maxOccurs="1" name="CompanyCode" type="s:string" />
240
+ <s:element minOccurs="0" maxOccurs="1" name="CustomerCode" type="s:string" />
241
+ <s:element minOccurs="1" maxOccurs="1" name="RequestStatus" type="tns:CertificateRequestStatus" />
242
+ <s:element minOccurs="1" maxOccurs="1" name="ModFromDate" type="s:dateTime" />
243
+ <s:element minOccurs="1" maxOccurs="1" name="ModToDate" type="s:dateTime" />
244
+ </s:sequence>
245
+ </s:complexType>
246
+ <s:element name="CertificateRequestGetResponse">
247
+ <s:complexType>
248
+ <s:sequence>
249
+ <s:element minOccurs="0" maxOccurs="1" name="CertificateRequestGetResult" type="tns:CertificateRequestGetResult" />
250
+ </s:sequence>
251
+ </s:complexType>
252
+ </s:element>
253
+ <s:complexType name="CertificateRequestGetResult">
254
+ <s:complexContent mixed="false">
255
+ <s:extension base="tns:BaseResult">
256
+ <s:sequence>
257
+ <s:element minOccurs="0" maxOccurs="1" name="CertificateRequests" type="tns:ArrayOfCertificateRequest" />
258
+ </s:sequence>
259
+ </s:extension>
260
+ </s:complexContent>
261
+ </s:complexType>
262
+
263
+ <s:complexType name="ArrayOfCertificateRequest">
264
+ <s:sequence>
265
+ <s:element minOccurs="0" maxOccurs="unbounded" name="CertificateRequest" nillable="true" type="tns:CertificateRequest" />
266
+ </s:sequence>
267
+ </s:complexType>
268
+
269
+ <s:complexType name="CertificateRequest">
270
+ <s:sequence>
271
+ <s:element minOccurs="0" maxOccurs="1" name="RequestId" type="s:string" />
272
+ <s:element minOccurs="0" maxOccurs="1" name="TrackingCode" type="s:string" />
273
+ <s:element minOccurs="0" maxOccurs="1" name="SourceLocationCode" type="s:string" />
274
+ <s:element minOccurs="0" maxOccurs="1" name="RequestDate" type="s:dateTime" />
275
+ <s:element minOccurs="0" maxOccurs="1" name="CustomerCode" type="s:string" />
276
+ <s:element minOccurs="0" maxOccurs="1" name="CreatorName" type="s:string" />
277
+ <s:element minOccurs="0" maxOccurs="1" name="LastModifyDate" type="s:dateTime" />
278
+ <s:element minOccurs="1" maxOccurs="1" name="RequestStatus" type="tns:CertificateRequestStatus" />
279
+ <s:element minOccurs="0" maxOccurs="1" name="RequestStage" type="tns:CertificateRequestStage" />
280
+ <s:element minOccurs="1" maxOccurs="1" name="CommunicationMode" type="tns:CommunicationMode" />
281
+ </s:sequence>
282
+ </s:complexType>
283
+
284
+ <s:simpleType name="CertificateRequestStatus">
285
+ <s:restriction base="s:string">
286
+ <s:enumeration value="ALL" />
287
+ <s:enumeration value="OPEN" />
288
+ <s:enumeration value="CLOSED" />
289
+ </s:restriction>
290
+ </s:simpleType>
291
+
292
+ <s:simpleType name="CertificateRequestStage">
293
+ <s:restriction base="s:string">
294
+ <s:enumeration value="REQUESTINITIATED" />
295
+ <s:enumeration value="CUSTOMERRESPONDED" />
296
+ <s:enumeration value="CERTIFICATERECEIVED" />
297
+ </s:restriction>
298
+ </s:simpleType>
299
+
300
+ <s:element name="CertificateImageGet">
301
+ <s:complexType>
302
+ <s:sequence>
303
+ <s:element minOccurs="0" maxOccurs="1" name="CertificateImageGetRequest" type="tns:CertificateImageGetRequest" />
304
+ </s:sequence>
305
+ </s:complexType>
306
+ </s:element>
307
+ <s:complexType name="CertificateImageGetRequest">
308
+ <s:sequence>
309
+ <s:element minOccurs="0" maxOccurs="1" name="CompanyCode" type="s:string" />
310
+ <s:element minOccurs="0" maxOccurs="1" name="AvaCertId" type="s:string" />
311
+ <s:element minOccurs="1" maxOccurs="1" name="Format" type="tns:FormatType" />
312
+ <s:element minOccurs="1" maxOccurs="1" name="PageNumber" type="s:int" />
313
+ </s:sequence>
314
+ </s:complexType>
315
+ <s:simpleType name="FormatType">
316
+ <s:restriction base="s:string">
317
+ <s:enumeration value="PNG" />
318
+ <s:enumeration value="PDF" />
319
+ </s:restriction>
320
+ </s:simpleType>
321
+ <s:element name="CertificateImageGetResponse">
322
+ <s:complexType>
323
+ <s:sequence>
324
+ <s:element minOccurs="0" maxOccurs="1" name="CertificateImageGetResult" type="tns:CertificateImageGetResult" />
325
+ </s:sequence>
326
+ </s:complexType>
327
+ </s:element>
328
+ <s:complexType name="CertificateImageGetResult">
329
+ <s:complexContent mixed="false">
330
+ <s:extension base="tns:BaseResult">
331
+ <s:sequence>
332
+ <s:element minOccurs="0" maxOccurs="1" name="AvaCertId" type="s:string" />
333
+ <s:element minOccurs="0" maxOccurs="1" name="Image" type="s:base64Binary" />
334
+ </s:sequence>
335
+ </s:extension>
336
+ </s:complexContent>
337
+ </s:complexType>
338
+
339
+ <s:element name="GetAvaCertServiceConfig">
340
+ <s:complexType>
341
+ <s:sequence>
342
+ <s:element minOccurs="0" maxOccurs="1" name="GetAvaCertServiceConfigRequest" type="tns:GetAvaCertServiceConfigRequest" />
343
+ </s:sequence>
344
+ </s:complexType>
345
+ </s:element>
346
+ <s:complexType name="GetAvaCertServiceConfigRequest">
347
+ <s:complexContent mixed="false">
348
+ <s:extension base="tns:BaseRequest">
349
+ <s:sequence>
350
+ <s:element minOccurs="0" maxOccurs="1" name="CompanyCode" type="s:string" />
351
+ </s:sequence>
352
+ </s:extension>
353
+ </s:complexContent>
354
+ </s:complexType>
355
+ <s:complexType name="BaseRequest" />
356
+ <s:element name="GetAvaCertServiceConfigResponse">
357
+ <s:complexType>
358
+ <s:sequence>
359
+ <s:element minOccurs="0" maxOccurs="1" name="GetAvaCertServiceConfigResult" type="tns:GetAvaCertServiceConfigResult" />
360
+ </s:sequence>
361
+ </s:complexType>
362
+ </s:element>
363
+ <s:complexType name="GetAvaCertServiceConfigResult">
364
+ <s:complexContent mixed="false">
365
+ <s:extension base="tns:BaseResult">
366
+ <s:sequence>
367
+ <s:element minOccurs="0" maxOccurs="1" name="AvaCertServiceConfigs" type="tns:ArrayOfAvaCertServiceConfig" />
368
+ </s:sequence>
369
+ </s:extension>
370
+ </s:complexContent>
371
+ </s:complexType>
372
+ <s:complexType name="ArrayOfAvaCertServiceConfig">
373
+ <s:sequence>
374
+ <s:element minOccurs="0" maxOccurs="unbounded" name="AvaCertServiceConfig" nillable="true" type="tns:AvaCertServiceConfig" />
375
+ </s:sequence>
376
+ </s:complexType>
377
+ <s:complexType name="AvaCertServiceConfig">
378
+ <s:sequence>
379
+ <s:element minOccurs="1" maxOccurs="1" name="AvaCertServiceConfigId" type="s:int" />
380
+ <s:element minOccurs="1" maxOccurs="1" name="CompanyCode" type="s:string" />
381
+ <s:element minOccurs="1" maxOccurs="1" name="IsUpdateEnabled" type="s:boolean" />
382
+ <s:element minOccurs="0" maxOccurs="1" name="ClientCode" type="s:string" />
383
+ <s:element minOccurs="0" maxOccurs="1" name="OrgCode" type="s:string" />
384
+ <s:element minOccurs="1" maxOccurs="1" name="AllowPending" type="s:boolean" />
385
+ <s:element minOccurs="1" maxOccurs="1" name="LastUpdate" type="s:dateTime" />
386
+ <s:element minOccurs="1" maxOccurs="1" name="CreatedUserId" type="s:int" />
387
+ <s:element minOccurs="1" maxOccurs="1" name="CreatedDate" type="s:dateTime" />
388
+ <s:element minOccurs="1" maxOccurs="1" name="ModifiedUserId" type="s:int" />
389
+ <s:element minOccurs="1" maxOccurs="1" name="ModifiedDate" type="s:dateTime" />
390
+ <s:element minOccurs="1" maxOccurs="1" name="AvaCertServiceStatus" type="tns:AvaCertServiceStatus" />
391
+ </s:sequence>
392
+ </s:complexType>
393
+ <s:simpleType name="AvaCertServiceStatus">
394
+ <s:restriction base="s:string">
395
+ <s:enumeration value="Disabled" />
396
+ <s:enumeration value="Onboarding" />
397
+ <s:enumeration value="Enabled" />
398
+ </s:restriction>
399
+ </s:simpleType>
400
+ <s:simpleType name="RequestType">
401
+ <s:restriction base="s:string">
402
+ <s:enumeration value="STANDARD" />
403
+ <s:enumeration value="DIRECT" />
404
+ </s:restriction>
405
+ </s:simpleType>
406
+ <s:element name="SetAvaCertServiceConfig">
407
+ <s:complexType>
408
+ <s:sequence>
409
+ <s:element minOccurs="0" maxOccurs="1" name="SetAvaCertServiceConfigRequest" type="tns:SetAvaCertServiceConfigRequest" />
410
+ </s:sequence>
411
+ </s:complexType>
412
+ </s:element>
413
+ <s:complexType name="SetAvaCertServiceConfigRequest">
414
+ <s:complexContent mixed="false">
415
+ <s:extension base="tns:BaseRequest">
416
+ <s:sequence>
417
+ <s:element minOccurs="0" maxOccurs="1" name="AvaCertServiceConfig" type="tns:AvaCertServiceConfig" />
418
+ </s:sequence>
419
+ </s:extension>
420
+ </s:complexContent>
421
+ </s:complexType>
422
+ <s:element name="SetAvaCertServiceConfigResponse">
423
+ <s:complexType>
424
+ <s:sequence>
425
+ <s:element minOccurs="0" maxOccurs="1" name="SetAvaCertServiceConfigResult" type="tns:SetAvaCertServiceConfigResult" />
426
+ </s:sequence>
427
+ </s:complexType>
428
+ </s:element>
429
+ <s:complexType name="SetAvaCertServiceConfigResult">
430
+ <s:complexContent mixed="false">
431
+ <s:extension base="tns:BaseResult" />
432
+ </s:complexContent>
433
+ </s:complexType>
434
+ <s:element name="AuditMessage" type="tns:AuditMessage" />
435
+ <s:complexType name="AuditMessage">
436
+ <s:sequence>
437
+ <s:element minOccurs="0" maxOccurs="1" name="Message" type="s:string" />
438
+ </s:sequence>
439
+ <s:anyAttribute />
440
+ </s:complexType>
441
+
442
+ <s:complexType name="BaseResult">
443
+ <s:sequence>
444
+ <s:element minOccurs="0" maxOccurs="1" name="TransactionId" type="s:string" />
445
+ <s:element minOccurs="1" maxOccurs="1" name="ResultCode" type="tns:SeverityLevel" />
446
+ <s:element minOccurs="0" maxOccurs="1" name="Messages" type="tns:ArrayOfMessage" />
447
+ </s:sequence>
448
+ </s:complexType>
449
+
450
+ <s:simpleType name="SeverityLevel">
451
+ <s:restriction base="s:string">
452
+ <s:enumeration value="Success" />
453
+ <s:enumeration value="Warning" />
454
+ <s:enumeration value="Error" />
455
+ <s:enumeration value="Exception" />
456
+ </s:restriction>
457
+ </s:simpleType>
458
+ <s:complexType name="ArrayOfMessage">
459
+ <s:sequence>
460
+ <s:element minOccurs="0" maxOccurs="unbounded" name="Message" nillable="true" type="tns:Message" />
461
+ </s:sequence>
462
+ </s:complexType>
463
+ <s:complexType name="Message">
464
+ <s:sequence>
465
+ <s:element minOccurs="0" maxOccurs="1" name="Summary" type="s:string" />
466
+ <s:element minOccurs="0" maxOccurs="1" name="Details" type="s:string" />
467
+ <s:element minOccurs="0" maxOccurs="1" name="HelpLink" type="s:string" />
468
+ <s:element minOccurs="0" maxOccurs="1" name="RefersTo" type="s:string" />
469
+ <s:element minOccurs="1" maxOccurs="1" name="Severity" type="tns:SeverityLevel" />
470
+ <s:element minOccurs="0" maxOccurs="1" name="Source" type="s:string" />
471
+ </s:sequence>
472
+ <s:attribute name="Name" type="s:string" />
473
+ </s:complexType>
474
+
475
+ <s:element name="InitiateUpdate">
476
+ <s:complexType>
477
+ <s:sequence>
478
+ <s:element minOccurs="0" maxOccurs="1" name="InitiateUpdateRequest" type="tns:InitiateUpdateRequest" />
479
+ </s:sequence>
480
+ </s:complexType>
481
+ </s:element>
482
+ <s:complexType name="InitiateUpdateRequest">
483
+ <s:sequence>
484
+ <s:element minOccurs="0" maxOccurs="1" name="CompanyCode" type="s:string" />
485
+ </s:sequence>
486
+ </s:complexType>
487
+ <s:element name="InitiateUpdateResponse">
488
+ <s:complexType>
489
+ <s:sequence>
490
+ <s:element minOccurs="0" maxOccurs="1" name="InitiateUpdateResult" type="tns:InitiateUpdateResult" />
491
+ </s:sequence>
492
+ </s:complexType>
493
+ </s:element>
494
+ <s:complexType name="InitiateUpdateResult">
495
+ <s:complexContent mixed="false">
496
+ <s:extension base="tns:BaseResult" />
497
+ </s:complexContent>
498
+ </s:complexType>
499
+
500
+ <s:element name="Ping">
501
+ <s:complexType>
502
+ <s:sequence>
503
+ <s:element minOccurs="0" maxOccurs="1" name="Message" type="s:string" />
504
+ </s:sequence>
505
+ </s:complexType>
506
+ </s:element>
507
+ <s:element name="PingResponse">
508
+ <s:complexType>
509
+ <s:sequence>
510
+ <s:element minOccurs="0" maxOccurs="1" name="PingResult" type="tns:PingResult" />
511
+ </s:sequence>
512
+ </s:complexType>
513
+ </s:element>
514
+ <s:complexType name="PingResult">
515
+ <s:complexContent mixed="false">
516
+ <s:extension base="tns:BaseResult">
517
+ <s:sequence>
518
+ <s:element minOccurs="0" maxOccurs="1" name="Version" type="s:string" />
519
+ </s:sequence>
520
+ </s:extension>
521
+ </s:complexContent>
522
+ </s:complexType>
523
+ <s:element name="IsAuthorized">
524
+ <s:complexType>
525
+ <s:sequence>
526
+ <s:element minOccurs="0" maxOccurs="1" name="Operations" type="s:string" />
527
+ </s:sequence>
528
+ </s:complexType>
529
+ </s:element>
530
+ <s:element name="IsAuthorizedResponse">
531
+ <s:complexType>
532
+ <s:sequence>
533
+ <s:element minOccurs="0" maxOccurs="1" name="IsAuthorizedResult" type="tns:IsAuthorizedResult" />
534
+ </s:sequence>
535
+ </s:complexType>
536
+ </s:element>
537
+ <s:complexType name="IsAuthorizedResult">
538
+ <s:complexContent mixed="false">
539
+ <s:extension base="tns:BaseResult">
540
+ <s:sequence>
541
+ <s:element minOccurs="0" maxOccurs="1" name="Operations" type="s:string" />
542
+ <s:element minOccurs="1" maxOccurs="1" name="Expires" type="s:dateTime" />
543
+ </s:sequence>
544
+ </s:extension>
545
+ </s:complexContent>
546
+ </s:complexType>
547
+ </s:schema>
548
+ </wsdl:types>
549
+
550
+ <wsdl:message name="CustomerSaveSoapIn">
551
+ <wsdl:part name="parameters" element="tns:CustomerSave" />
552
+ </wsdl:message>
553
+ <wsdl:message name="CustomerSaveSoapOut">
554
+ <wsdl:part name="parameters" element="tns:CustomerSaveResponse" />
555
+ </wsdl:message>
556
+ <wsdl:message name="CustomerSaveProfile">
557
+ <wsdl:part name="Profile" element="tns:Profile" />
558
+ </wsdl:message>
559
+
560
+ <wsdl:message name="CertificateGetSoapIn">
561
+ <wsdl:part name="parameters" element="tns:CertificateGet" />
562
+ </wsdl:message>
563
+ <wsdl:message name="CertificateGetSoapOut">
564
+ <wsdl:part name="parameters" element="tns:CertificateGetResponse" />
565
+ </wsdl:message>
566
+ <wsdl:message name="CertificateGetProfile">
567
+ <wsdl:part name="Profile" element="tns:Profile" />
568
+ </wsdl:message>
569
+
570
+ <wsdl:message name="CertificateRequestInitiateSoapIn">
571
+ <wsdl:part name="parameters" element="tns:CertificateRequestInitiate" />
572
+ </wsdl:message>
573
+ <wsdl:message name="CertificateRequestInitiateSoapOut">
574
+ <wsdl:part name="parameters" element="tns:CertificateRequestInitiateResponse" />
575
+ </wsdl:message>
576
+ <wsdl:message name="CertificateRequestInitiateProfile">
577
+ <wsdl:part name="Profile" element="tns:Profile" />
578
+ </wsdl:message>
579
+
580
+ <wsdl:message name="CertificateRequestGetSoapIn">
581
+ <wsdl:part name="parameters" element="tns:CertificateRequestGet" />
582
+ </wsdl:message>
583
+ <wsdl:message name="CertificateRequestGetSoapOut">
584
+ <wsdl:part name="parameters" element="tns:CertificateRequestGetResponse" />
585
+ </wsdl:message>
586
+ <wsdl:message name="CertificateRequestGetProfile">
587
+ <wsdl:part name="Profile" element="tns:Profile" />
588
+ </wsdl:message>
589
+
590
+ <wsdl:message name="CertificateImageGetSoapIn">
591
+ <wsdl:part name="parameters" element="tns:CertificateImageGet" />
592
+ </wsdl:message>
593
+ <wsdl:message name="CertificateImageGetSoapOut">
594
+ <wsdl:part name="parameters" element="tns:CertificateImageGetResponse" />
595
+ </wsdl:message>
596
+ <wsdl:message name="CertificateImageGetProfile">
597
+ <wsdl:part name="Profile" element="tns:Profile" />
598
+ </wsdl:message>
599
+
600
+ <wsdl:message name="GetAvaCertServiceConfigSoapIn">
601
+ <wsdl:part name="parameters" element="tns:GetAvaCertServiceConfig" />
602
+ </wsdl:message>
603
+ <wsdl:message name="GetAvaCertServiceConfigSoapOut">
604
+ <wsdl:part name="parameters" element="tns:GetAvaCertServiceConfigResponse" />
605
+ </wsdl:message>
606
+ <wsdl:message name="GetAvaCertServiceConfigProfile">
607
+ <wsdl:part name="Profile" element="tns:Profile" />
608
+ </wsdl:message>
609
+
610
+ <wsdl:message name="SetAvaCertServiceConfigSoapIn">
611
+ <wsdl:part name="parameters" element="tns:SetAvaCertServiceConfig" />
612
+ </wsdl:message>
613
+ <wsdl:message name="SetAvaCertServiceConfigSoapOut">
614
+ <wsdl:part name="parameters" element="tns:SetAvaCertServiceConfigResponse" />
615
+ </wsdl:message>
616
+ <wsdl:message name="SetAvaCertServiceConfigAuditMessage">
617
+ <wsdl:part name="AuditMessage" element="tns:AuditMessage" />
618
+ </wsdl:message>
619
+ <wsdl:message name="SetAvaCertServiceConfigProfile">
620
+ <wsdl:part name="Profile" element="tns:Profile" />
621
+ </wsdl:message>
622
+
623
+ <wsdl:message name="InitiateUpdateSoapIn">
624
+ <wsdl:part name="parameters" element="tns:InitiateUpdate" />
625
+ </wsdl:message>
626
+ <wsdl:message name="InitiateUpdateSoapOut">
627
+ <wsdl:part name="parameters" element="tns:InitiateUpdateResponse" />
628
+ </wsdl:message>
629
+ <wsdl:message name="InitiateUpdateAuditMessage">
630
+ <wsdl:part name="AuditMessage" element="tns:AuditMessage" />
631
+ </wsdl:message>
632
+ <wsdl:message name="InitiateUpdateProfile">
633
+ <wsdl:part name="Profile" element="tns:Profile" />
634
+ </wsdl:message>
635
+
636
+ <wsdl:message name="PingSoapIn">
637
+ <wsdl:part name="parameters" element="tns:Ping" />
638
+ </wsdl:message>
639
+ <wsdl:message name="PingSoapOut">
640
+ <wsdl:part name="parameters" element="tns:PingResponse" />
641
+ </wsdl:message>
642
+ <wsdl:message name="PingProfile">
643
+ <wsdl:part name="Profile" element="tns:Profile" />
644
+ </wsdl:message>
645
+
646
+ <wsdl:message name="IsAuthorizedSoapIn">
647
+ <wsdl:part name="parameters" element="tns:IsAuthorized" />
648
+ </wsdl:message>
649
+ <wsdl:message name="IsAuthorizedSoapOut">
650
+ <wsdl:part name="parameters" element="tns:IsAuthorizedResponse" />
651
+ </wsdl:message>
652
+ <wsdl:message name="IsAuthorizedProfile">
653
+ <wsdl:part name="Profile" element="tns:Profile" />
654
+ </wsdl:message>
655
+
656
+ <wsdl:portType name="AvaCert2SvcSoap">
657
+ <wsdl:operation name="CustomerSave">
658
+ <wsdl:input message="tns:CustomerSaveSoapIn" />
659
+ <wsdl:output message="tns:CustomerSaveSoapOut" />
660
+ </wsdl:operation>
661
+ <wsdl:operation name="CertificateRequestInitiate">
662
+ <wsdl:input message="tns:CertificateRequestInitiateSoapIn" />
663
+ <wsdl:output message="tns:CertificateRequestInitiateSoapOut" />
664
+ </wsdl:operation>
665
+ <wsdl:operation name="CertificateGet">
666
+ <wsdl:input message="tns:CertificateGetSoapIn" />
667
+ <wsdl:output message="tns:CertificateGetSoapOut" />
668
+ </wsdl:operation>
669
+ <wsdl:operation name="CertificateRequestGet">
670
+ <wsdl:input message="tns:CertificateRequestGetSoapIn" />
671
+ <wsdl:output message="tns:CertificateRequestGetSoapOut" />
672
+ </wsdl:operation>
673
+ <wsdl:operation name="CertificateImageGet">
674
+ <wsdl:input message="tns:CertificateImageGetSoapIn" />
675
+ <wsdl:output message="tns:CertificateImageGetSoapOut" />
676
+ </wsdl:operation>
677
+ <wsdl:operation name="GetAvaCertServiceConfig">
678
+ <wsdl:input message="tns:GetAvaCertServiceConfigSoapIn" />
679
+ <wsdl:output message="tns:GetAvaCertServiceConfigSoapOut" />
680
+ </wsdl:operation>
681
+ <wsdl:operation name="SetAvaCertServiceConfig">
682
+ <wsdl:input message="tns:SetAvaCertServiceConfigSoapIn" />
683
+ <wsdl:output message="tns:SetAvaCertServiceConfigSoapOut" />
684
+ </wsdl:operation>
685
+ <wsdl:operation name="InitiateUpdate">
686
+ <wsdl:input message="tns:InitiateUpdateSoapIn" />
687
+ <wsdl:output message="tns:InitiateUpdateSoapOut" />
688
+ </wsdl:operation>
689
+ <wsdl:operation name="Ping">
690
+ <wsdl:input message="tns:PingSoapIn" />
691
+ <wsdl:output message="tns:PingSoapOut" />
692
+ </wsdl:operation>
693
+ <wsdl:operation name="IsAuthorized">
694
+ <wsdl:input message="tns:IsAuthorizedSoapIn" />
695
+ <wsdl:output message="tns:IsAuthorizedSoapOut" />
696
+ </wsdl:operation>
697
+ </wsdl:portType>
698
+
699
+ <wsdl:binding name="AvaCert2SvcSoap" type="tns:AvaCert2SvcSoap">
700
+ <soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
701
+
702
+ <wsdl:operation name="CustomerSave">
703
+ <soap:operation soapAction="http://avatax.avalara.com/services/CustomerSave" style="document" />
704
+ <wsdl:input>
705
+ <soap:body use="literal" />
706
+ <soap:header message="tns:CustomerSaveProfile" part="Profile" use="literal" />
707
+ </wsdl:input>
708
+ <wsdl:output>
709
+ <soap:body use="literal" />
710
+ </wsdl:output>
711
+ </wsdl:operation>
712
+
713
+ <wsdl:operation name="CertificateGet">
714
+ <soap:operation soapAction="http://avatax.avalara.com/services/CertificateGet" style="document" />
715
+ <wsdl:input>
716
+ <soap:body use="literal" />
717
+ <soap:header message="tns:CertificateGetProfile" part="Profile" use="literal" />
718
+ </wsdl:input>
719
+ <wsdl:output>
720
+ <soap:body use="literal" />
721
+ </wsdl:output>
722
+ </wsdl:operation>
723
+
724
+ <wsdl:operation name="CertificateRequestInitiate">
725
+ <soap:operation soapAction="http://avatax.avalara.com/services/CertificateRequestInitiate" style="document" />
726
+ <wsdl:input>
727
+ <soap:body use="literal" />
728
+ <soap:header message="tns:CertificateRequestInitiateProfile" part="Profile" use="literal" />
729
+ </wsdl:input>
730
+ <wsdl:output>
731
+ <soap:body use="literal" />
732
+ </wsdl:output>
733
+ </wsdl:operation>
734
+
735
+ <wsdl:operation name="CertificateRequestGet">
736
+ <soap:operation soapAction="http://avatax.avalara.com/services/CertificateRequestGet" style="document" />
737
+ <wsdl:input>
738
+ <soap:body use="literal" />
739
+ <soap:header message="tns:CertificateRequestGetProfile" part="Profile" use="literal" />
740
+ </wsdl:input>
741
+ <wsdl:output>
742
+ <soap:body use="literal" />
743
+ </wsdl:output>
744
+ </wsdl:operation>
745
+
746
+ <wsdl:operation name="CertificateImageGet">
747
+ <soap:operation soapAction="http://avatax.avalara.com/services/CertificateImageGet" style="document" />
748
+ <wsdl:input>
749
+ <soap:body use="literal" />
750
+ <soap:header message="tns:CertificateImageGetProfile" part="Profile" use="literal" />
751
+ </wsdl:input>
752
+ <wsdl:output>
753
+ <soap:body use="literal" />
754
+ </wsdl:output>
755
+ </wsdl:operation>
756
+
757
+ <wsdl:operation name="GetAvaCertServiceConfig">
758
+ <soap:operation soapAction="http://avatax.avalara.com/services/GetAvaCertServiceConfig" style="document" />
759
+ <wsdl:input>
760
+ <soap:body use="literal" />
761
+ <soap:header message="tns:GetAvaCertServiceConfigProfile" part="Profile" use="literal" />
762
+ </wsdl:input>
763
+ <wsdl:output>
764
+ <soap:body use="literal" />
765
+ </wsdl:output>
766
+ </wsdl:operation>
767
+
768
+ <wsdl:operation name="SetAvaCertServiceConfig">
769
+ <soap:operation soapAction="http://avatax.avalara.com/services/SetAvaCertServiceConfig" style="document" />
770
+ <wsdl:input>
771
+ <soap:body use="literal" />
772
+ <soap:header message="tns:SetAvaCertServiceConfigAuditMessage" part="AuditMessage" use="literal" />
773
+ <soap:header message="tns:SetAvaCertServiceConfigProfile" part="Profile" use="literal" />
774
+ </wsdl:input>
775
+ <wsdl:output>
776
+ <soap:body use="literal" />
777
+ </wsdl:output>
778
+ </wsdl:operation>
779
+
780
+ <wsdl:operation name="InitiateUpdate">
781
+ <soap:operation soapAction="http://avatax.avalara.com/services/InitiateUpdate" style="document" />
782
+ <wsdl:input>
783
+ <soap:body use="literal" />
784
+ <soap:header message="tns:InitiateUpdateAuditMessage" part="AuditMessage" use="literal" />
785
+ <soap:header message="tns:InitiateUpdateProfile" part="Profile" use="literal" />
786
+ </wsdl:input>
787
+ <wsdl:output>
788
+ <soap:body use="literal" />
789
+ </wsdl:output>
790
+ </wsdl:operation>
791
+
792
+ <wsdl:operation name="Ping">
793
+ <soap:operation soapAction="http://avatax.avalara.com/services/Ping" style="document" />
794
+ <wsdl:input>
795
+ <soap:body use="literal" />
796
+ <soap:header message="tns:PingProfile" part="Profile" use="literal" />
797
+ </wsdl:input>
798
+ <wsdl:output>
799
+ <soap:body use="literal" />
800
+ </wsdl:output>
801
+ </wsdl:operation>
802
+ <wsdl:operation name="IsAuthorized">
803
+ <soap:operation soapAction="http://avatax.avalara.com/services/IsAuthorized" style="document" />
804
+ <wsdl:input>
805
+ <soap:body use="literal" />
806
+ <soap:header message="tns:IsAuthorizedProfile" part="Profile" use="literal" />
807
+ </wsdl:input>
808
+ <wsdl:output>
809
+ <soap:body use="literal" />
810
+ </wsdl:output>
811
+ </wsdl:operation>
812
+ </wsdl:binding>
813
+
814
+ <wsdl:binding name="AvaCert2SvcSoap12" type="tns:AvaCert2SvcSoap">
815
+ <soap12:binding transport="http://schemas.xmlsoap.org/soap/http" />
816
+
817
+ <wsdl:operation name="CustomerSave">
818
+ <soap12:operation soapAction="http://avatax.avalara.com/services/CustomerSave" style="document" />
819
+ <wsdl:input>
820
+ <soap12:body use="literal" />
821
+ <soap12:header message="tns:CustomerSaveProfile" part="Profile" use="literal" />
822
+ </wsdl:input>
823
+ <wsdl:output>
824
+ <soap12:body use="literal" />
825
+ </wsdl:output>
826
+ </wsdl:operation>
827
+
828
+ <wsdl:operation name="CertificateGet">
829
+ <soap12:operation soapAction="http://avatax.avalara.com/services/CertificateGet" style="document" />
830
+ <wsdl:input>
831
+ <soap12:body use="literal" />
832
+ <soap12:header message="tns:CertificateGetProfile" part="Profile" use="literal" />
833
+ </wsdl:input>
834
+ <wsdl:output>
835
+ <soap12:body use="literal" />
836
+ </wsdl:output>
837
+ </wsdl:operation>
838
+
839
+ <wsdl:operation name="CertificateRequestInitiate">
840
+ <soap12:operation soapAction="http://avatax.avalara.com/services/CertificateRequestInitiate" style="document" />
841
+ <wsdl:input>
842
+ <soap12:body use="literal" />
843
+ <soap12:header message="tns:CertificateRequestInitiateProfile" part="Profile" use="literal" />
844
+ </wsdl:input>
845
+ <wsdl:output>
846
+ <soap12:body use="literal" />
847
+ </wsdl:output>
848
+ </wsdl:operation>
849
+
850
+ <wsdl:operation name="CertificateRequestGet">
851
+ <soap12:operation soapAction="http://avatax.avalara.com/services/CertificateRequestGet" style="document" />
852
+ <wsdl:input>
853
+ <soap12:body use="literal" />
854
+ <soap12:header message="tns:CertificateRequestGetProfile" part="Profile" use="literal" />
855
+ </wsdl:input>
856
+ <wsdl:output>
857
+ <soap12:body use="literal" />
858
+ </wsdl:output>
859
+ </wsdl:operation>
860
+
861
+ <wsdl:operation name="CertificateImageGet">
862
+ <soap12:operation soapAction="http://avatax.avalara.com/services/CertificateImageGet" style="document" />
863
+ <wsdl:input>
864
+ <soap12:body use="literal" />
865
+ <soap12:header message="tns:CertificateImageGetProfile" part="Profile" use="literal" />
866
+ </wsdl:input>
867
+ <wsdl:output>
868
+ <soap12:body use="literal" />
869
+ </wsdl:output>
870
+ </wsdl:operation>
871
+
872
+ <wsdl:operation name="GetAvaCertServiceConfig">
873
+ <soap12:operation soapAction="http://avatax.avalara.com/services/GetAvaCertServiceConfig" style="document" />
874
+ <wsdl:input>
875
+ <soap12:body use="literal" />
876
+ <soap12:header message="tns:GetAvaCertServiceConfigProfile" part="Profile" use="literal" />
877
+ </wsdl:input>
878
+ <wsdl:output>
879
+ <soap12:body use="literal" />
880
+ </wsdl:output>
881
+ </wsdl:operation>
882
+ <wsdl:operation name="SetAvaCertServiceConfig">
883
+ <soap12:operation soapAction="http://avatax.avalara.com/services/SetAvaCertServiceConfig" style="document" />
884
+ <wsdl:input>
885
+ <soap12:body use="literal" />
886
+ <soap12:header message="tns:SetAvaCertServiceConfigAuditMessage" part="AuditMessage" use="literal" />
887
+ <soap12:header message="tns:SetAvaCertServiceConfigProfile" part="Profile" use="literal" />
888
+ </wsdl:input>
889
+ <wsdl:output>
890
+ <soap12:body use="literal" />
891
+ </wsdl:output>
892
+ </wsdl:operation>
893
+
894
+ <wsdl:operation name="InitiateUpdate">
895
+ <soap12:operation soapAction="http://avatax.avalara.com/services/InitiateUpdate" style="document" />
896
+ <wsdl:input>
897
+ <soap12:body use="literal" />
898
+ <soap12:header message="tns:InitiateUpdateAuditMessage" part="AuditMessage" use="literal" />
899
+ <soap12:header message="tns:InitiateUpdateProfile" part="Profile" use="literal" />
900
+ </wsdl:input>
901
+ <wsdl:output>
902
+ <soap12:body use="literal" />
903
+ </wsdl:output>
904
+ </wsdl:operation>
905
+
906
+ <wsdl:operation name="Ping">
907
+ <soap12:operation soapAction="http://avatax.avalara.com/services/Ping" style="document" />
908
+ <wsdl:input>
909
+ <soap12:body use="literal" />
910
+ <soap12:header message="tns:PingProfile" part="Profile" use="literal" />
911
+ </wsdl:input>
912
+ <wsdl:output>
913
+ <soap12:body use="literal" />
914
+ </wsdl:output>
915
+ </wsdl:operation>
916
+
917
+ <wsdl:operation name="IsAuthorized">
918
+ <soap12:operation soapAction="http://avatax.avalara.com/services/IsAuthorized" style="document" />
919
+ <wsdl:input>
920
+ <soap12:body use="literal" />
921
+ <soap12:header message="tns:IsAuthorizedProfile" part="Profile" use="literal" />
922
+ </wsdl:input>
923
+ <wsdl:output>
924
+ <soap12:body use="literal" />
925
+ </wsdl:output>
926
+ </wsdl:operation>
927
+ </wsdl:binding>
928
+
929
+ <wsdl:service name="AvaCert2Svc">
930
+ <wsdl:port name="AvaCert2SvcSoap" binding="tns:AvaCert2SvcSoap">
931
+ <soap:address location="http://localhost/avatax.branches.11.2/AvaCert2/AvaCert2Svc.wsdl" />
932
+ </wsdl:port>
933
+ <wsdl:port name="AvaCert2SvcSoap12" binding="tns:AvaCert2SvcSoap12">
934
+ <soap12:address location="http://localhost/avatax.branches.11.2/AvaCert2/AvaCert2Svc.wsdl" />
935
+ </wsdl:port>
936
+ </wsdl:service>
937
+ </wsdl:definitions>
938
+
lib/AvaTax/classes/wsdl/AvaCertSvc.wsdl ADDED
@@ -0,0 +1,709 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <wsdl:definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="http://avatax.avalara.com/services" xmlns:s="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" targetNamespace="http://avatax.avalara.com/services" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">
3
+ <wsdl:types>
4
+ <s:schema elementFormDefault="qualified" targetNamespace="http://avatax.avalara.com/services">
5
+ <s:element name="AddCustomer">
6
+ <s:complexType>
7
+ <s:sequence>
8
+ <s:element minOccurs="0" maxOccurs="1" name="AddCustomerRequest" type="tns:AddCustomerRequest" />
9
+ </s:sequence>
10
+ </s:complexType>
11
+ </s:element>
12
+ <s:complexType name="AddCustomerRequest">
13
+ <s:sequence>
14
+ <s:element minOccurs="0" maxOccurs="1" name="Customer" type="tns:Customer" />
15
+ </s:sequence>
16
+ </s:complexType>
17
+ <s:complexType name="Customer">
18
+ <s:sequence>
19
+ <s:element minOccurs="0" maxOccurs="1" name="CompanyCode" type="s:string" />
20
+ <s:element minOccurs="0" maxOccurs="1" name="CustomerCode" type="s:string" />
21
+ <s:element minOccurs="0" maxOccurs="1" name="NewCustomerCode" type="s:string" />
22
+ <s:element minOccurs="0" maxOccurs="1" name="CustomerType" type="s:string" />
23
+ <s:element minOccurs="0" maxOccurs="1" name="CustomerName" type="s:string" />
24
+ <s:element minOccurs="0" maxOccurs="1" name="Attn" type="s:string" />
25
+ <s:element minOccurs="0" maxOccurs="1" name="Address1" type="s:string" />
26
+ <s:element minOccurs="0" maxOccurs="1" name="Address2" type="s:string" />
27
+ <s:element minOccurs="0" maxOccurs="1" name="City" type="s:string" />
28
+ <s:element minOccurs="0" maxOccurs="1" name="Region" type="s:string" />
29
+ <s:element minOccurs="0" maxOccurs="1" name="PostalCode" type="s:string" />
30
+ <s:element minOccurs="0" maxOccurs="1" name="Country" type="s:string" />
31
+ <s:element minOccurs="0" maxOccurs="1" name="Phone" type="s:string" />
32
+ <s:element minOccurs="0" maxOccurs="1" name="Fax" type="s:string" />
33
+ <s:element minOccurs="0" maxOccurs="1" name="Email" type="s:string" />
34
+ <s:element minOccurs="0" maxOccurs="1" name="ParentCustomerCode" type="s:string" />
35
+ </s:sequence>
36
+ </s:complexType>
37
+ <s:complexType name="ExemptionCertificate">
38
+ <s:sequence>
39
+ <s:element minOccurs="0" maxOccurs="1" name="AvaCertId" type="s:string" />
40
+ <s:element minOccurs="0" maxOccurs="1" name="Jurisdictions" type="tns:ArrayOfJurisdiction" />
41
+ <s:element minOccurs="0" maxOccurs="1" name="CustomerCodes" type="tns:ArrayOfString" />
42
+ <s:element minOccurs="0" maxOccurs="1" name="CustomerType" type="s:string" />
43
+ <s:element minOccurs="0" maxOccurs="1" name="LocationName" type="s:string" />
44
+ <s:element minOccurs="0" maxOccurs="1" name="LocationCode" type="s:string" />
45
+ <s:element minOccurs="0" maxOccurs="1" name="CertificateStatus" type="tns:CertificateStatus" />
46
+ <s:element minOccurs="0" maxOccurs="1" name="ReviewStatus" type="tns:ReviewStatus" />
47
+ <s:element minOccurs="0" maxOccurs="1" name="CreatedDate" type="s:dateTime" />
48
+ <s:element minOccurs="0" maxOccurs="1" name="ModifiedDate" type="s:dateTime" />
49
+ <s:element minOccurs="0" maxOccurs="1" name="ReceivedDate" type="s:dateTime" />
50
+ <s:element minOccurs="0" maxOccurs="1" name="BusinessName" type="s:string" />
51
+ <s:element minOccurs="0" maxOccurs="1" name="Address1" type="s:string" />
52
+ <s:element minOccurs="0" maxOccurs="1" name="Address2" type="s:string" />
53
+ <s:element minOccurs="0" maxOccurs="1" name="City" type="s:string" />
54
+ <s:element minOccurs="0" maxOccurs="1" name="Region" type="s:string" />
55
+ <s:element minOccurs="0" maxOccurs="1" name="Country" type="s:string" />
56
+ <s:element minOccurs="0" maxOccurs="1" name="PostalCode" type="s:string" />
57
+ <s:element minOccurs="0" maxOccurs="1" name="Phone" type="s:string" />
58
+ <s:element minOccurs="0" maxOccurs="1" name="Email" type="s:string" />
59
+ <s:element minOccurs="0" maxOccurs="1" name="SignedDate" type="s:dateTime" />
60
+ <s:element minOccurs="0" maxOccurs="1" name="SignerName" type="s:string" />
61
+ <s:element minOccurs="0" maxOccurs="1" name="SignerTitle" type="s:string" />
62
+ <s:element minOccurs="0" maxOccurs="1" name="BusinessDescription" type="s:string" />
63
+ <s:element minOccurs="0" maxOccurs="1" name="SellerPropertyDescription" type="s:string" />
64
+ <s:element minOccurs="0" maxOccurs="1" name="CertificateUsage" type="tns:CertificateUsage" />
65
+ <s:element minOccurs="0" maxOccurs="1" name="IsPartialExemption" type="s:boolean" />
66
+ <s:element minOccurs="0" maxOccurs="1" name="ExemptReasonCode" type="s:string" />
67
+ <s:element minOccurs="0" maxOccurs="1" name="ExemptFormName" type="s:string" />
68
+ <s:element minOccurs="0" maxOccurs="1" name="Custom1" type="s:string" />
69
+ <s:element minOccurs="0" maxOccurs="1" name="Custom2" type="s:string" />
70
+ <s:element minOccurs="0" maxOccurs="1" name="Custom3" type="s:string" />
71
+ </s:sequence>
72
+ </s:complexType>
73
+ <s:simpleType name="CertificateStatus">
74
+ <s:restriction base="s:string">
75
+ <s:enumeration value="ACTIVE" />
76
+ <s:enumeration value="VOID" />
77
+ <s:enumeration value="INCOMPLETE" />
78
+ </s:restriction>
79
+ </s:simpleType>
80
+ <s:simpleType name="ReviewStatus">
81
+ <s:restriction base="s:string">
82
+ <s:enumeration value="PENDING" />
83
+ <s:enumeration value="ACCEPTED" />
84
+ <s:enumeration value="REJECTED" />
85
+ </s:restriction>
86
+ </s:simpleType>
87
+ <s:simpleType name="CertificateUsage">
88
+ <s:restriction base="s:string">
89
+ <s:enumeration value="BLANKET" />
90
+ <s:enumeration value="SINGLE" />
91
+ <s:enumeration value="NULL" />
92
+ </s:restriction>
93
+ </s:simpleType>
94
+ <s:complexType name="Jurisdiction">
95
+ <s:sequence>
96
+ <s:element minOccurs="0" maxOccurs="1" name="JurisdictionCode" type="s:string" />
97
+ <s:element minOccurs="0" maxOccurs="1" name="Country" type="s:string" />
98
+ <s:element minOccurs="0" maxOccurs="1" name="ExpiryDate" type="s:dateTime" />
99
+ <s:element minOccurs="0" maxOccurs="1" name="DoesNotExpire" type="s:boolean" />
100
+ <s:element minOccurs="0" maxOccurs="1" name="PermitNumbers" type="tns:ArrayOfString" />
101
+ </s:sequence>
102
+ </s:complexType>
103
+ <s:complexType name="ArrayOfString">
104
+ <s:sequence>
105
+ <s:element minOccurs="0" maxOccurs="unbounded" name="string" nillable="true" type="s:string" />
106
+ </s:sequence>
107
+ </s:complexType>
108
+ <s:complexType name="ArrayOfJurisdiction">
109
+ <s:sequence>
110
+ <s:element minOccurs="0" maxOccurs="unbounded" name="Jurisdiction" nillable="true" type="tns:Jurisdiction" />
111
+ </s:sequence>
112
+ </s:complexType>
113
+ <s:complexType name="ArrayOfExemptionCertificate">
114
+ <s:sequence>
115
+ <s:element minOccurs="0" maxOccurs="unbounded" name="ExemptionCertificate" nillable="true" type="tns:ExemptionCertificate" />
116
+ </s:sequence>
117
+ </s:complexType>
118
+ <s:element name="AddCustomerResponse">
119
+ <s:complexType>
120
+ <s:sequence>
121
+ <s:element minOccurs="0" maxOccurs="1" name="AddCustomerResult" type="tns:AddCustomerResult" />
122
+ </s:sequence>
123
+ </s:complexType>
124
+ </s:element>
125
+ <s:complexType name="AddCustomerResult">
126
+ <s:complexContent mixed="false">
127
+ <s:extension base="tns:BaseResult" />
128
+ </s:complexContent>
129
+ </s:complexType>
130
+ <s:complexType name="BaseResult">
131
+ <s:sequence>
132
+ <s:element minOccurs="0" maxOccurs="1" name="TransactionId" type="s:string" />
133
+ <s:element minOccurs="1" maxOccurs="1" name="ResultCode" type="tns:SeverityLevel" />
134
+ <s:element minOccurs="0" maxOccurs="1" name="Messages" type="tns:ArrayOfMessage" />
135
+ </s:sequence>
136
+ </s:complexType>
137
+ <s:simpleType name="SeverityLevel">
138
+ <s:restriction base="s:string">
139
+ <s:enumeration value="Success" />
140
+ <s:enumeration value="Warning" />
141
+ <s:enumeration value="Error" />
142
+ <s:enumeration value="Exception" />
143
+ </s:restriction>
144
+ </s:simpleType>
145
+ <s:complexType name="ArrayOfMessage">
146
+ <s:sequence>
147
+ <s:element minOccurs="0" maxOccurs="unbounded" name="Message" nillable="true" type="tns:Message" />
148
+ </s:sequence>
149
+ </s:complexType>
150
+ <s:complexType name="Message">
151
+ <s:sequence>
152
+ <s:element minOccurs="0" maxOccurs="1" name="Summary" type="s:string" />
153
+ <s:element minOccurs="0" maxOccurs="1" name="Details" type="s:string" />
154
+ <s:element minOccurs="0" maxOccurs="1" name="HelpLink" type="s:string" />
155
+ <s:element minOccurs="0" maxOccurs="1" name="RefersTo" type="s:string" />
156
+ <s:element minOccurs="1" maxOccurs="1" name="Severity" type="tns:SeverityLevel" />
157
+ <s:element minOccurs="0" maxOccurs="1" name="Source" type="s:string" />
158
+ </s:sequence>
159
+ <s:attribute name="Name" type="s:string" />
160
+ </s:complexType>
161
+ <s:element name="Profile" type="tns:Profile" />
162
+ <s:complexType name="Profile">
163
+ <s:sequence>
164
+ <s:element minOccurs="0" maxOccurs="1" name="Name" type="s:string" />
165
+ <s:element minOccurs="0" maxOccurs="1" name="Client" type="s:string" />
166
+ <s:element minOccurs="0" maxOccurs="1" name="Adapter" type="s:string" />
167
+ <s:element minOccurs="0" maxOccurs="1" name="Machine" type="s:string" />
168
+ </s:sequence>
169
+ <s:anyAttribute />
170
+ </s:complexType>
171
+ <s:element name="InitiateExemptCert">
172
+ <s:complexType>
173
+ <s:sequence>
174
+ <s:element minOccurs="0" maxOccurs="1" name="InitiateExemptCertRequest" type="tns:InitiateExemptCertRequest" />
175
+ </s:sequence>
176
+ </s:complexType>
177
+ </s:element>
178
+ <s:element name="GetExemptionCertificates">
179
+ <s:complexType>
180
+ <s:sequence>
181
+ <s:element minOccurs="0" maxOccurs="1" name="GetExemptionCertificatesRequest" type="tns:GetExemptionCertificatesRequest" />
182
+ </s:sequence>
183
+ </s:complexType>
184
+ </s:element>
185
+ <s:complexType name="InitiateExemptCertRequest">
186
+ <s:sequence>
187
+ <s:element minOccurs="0" maxOccurs="1" name="Customer" type="tns:Customer" />
188
+ <s:element minOccurs="0" maxOccurs="1" name="LocationCode" type="s:string" />
189
+ <s:element minOccurs="0" maxOccurs="1" name="CustomMessage" type="s:string" />
190
+ <s:element minOccurs="1" maxOccurs="1" name="CommunicationMode" type="tns:CommunicationMode" />
191
+ <s:element minOccurs="1" maxOccurs="1" name="Type" type="tns:RequestType" />
192
+ </s:sequence>
193
+ </s:complexType>
194
+ <s:complexType name="GetExemptionCertificatesRequest">
195
+ <s:sequence>
196
+ <s:element minOccurs="0" maxOccurs="1" name="CustomerCode" type="s:string" />
197
+ <s:element minOccurs="1" maxOccurs="1" name="FromDate" type="s:dateTime" />
198
+ <s:element minOccurs="1" maxOccurs="1" name="ToDate" type="s:dateTime" />
199
+ <s:element minOccurs="0" maxOccurs="1" name="Region" type="s:string" />
200
+ <s:element minOccurs="0" maxOccurs="1" name="CompanyCode" type="s:string" />
201
+ </s:sequence>
202
+ </s:complexType>
203
+ <s:simpleType name="CommunicationMode">
204
+ <s:restriction base="s:string">
205
+ <s:enumeration value="Email" />
206
+ <s:enumeration value="Mail" />
207
+ <s:enumeration value="Fax" />
208
+ </s:restriction>
209
+ </s:simpleType>
210
+ <s:element name="GetExemptionCertificatesResponse">
211
+ <s:complexType>
212
+ <s:sequence>
213
+ <s:element minOccurs="0" maxOccurs="1" name="GetExemptionCertificatesResult" type="tns:GetExemptionCertificatesResult" />
214
+ </s:sequence>
215
+ </s:complexType>
216
+ </s:element>
217
+ <s:complexType name="GetExemptionCertificatesResult">
218
+ <s:complexContent mixed="false">
219
+ <s:extension base="tns:BaseResult">
220
+ <s:sequence>
221
+ <s:element minOccurs="0" maxOccurs="1" name="ExemptionCertificates" type="tns:ArrayOfExemptionCertificate" />
222
+ <s:element minOccurs="0" maxOccurs="1" name="RecordCount" type="s:int" />
223
+ </s:sequence>
224
+ </s:extension>
225
+ </s:complexContent>
226
+ </s:complexType>
227
+ <s:element name="InitiateExemptCertResponse">
228
+ <s:complexType>
229
+ <s:sequence>
230
+ <s:element minOccurs="0" maxOccurs="1" name="InitiateExemptCertResult" type="tns:InitiateExemptCertResult" />
231
+ </s:sequence>
232
+ </s:complexType>
233
+ </s:element>
234
+ <s:complexType name="InitiateExemptCertResult">
235
+ <s:complexContent mixed="false">
236
+ <s:extension base="tns:BaseResult">
237
+ <s:sequence>
238
+ <s:element minOccurs="0" maxOccurs="1" name="TrackingCode" type="s:string" />
239
+ <s:element minOccurs="0" maxOccurs="1" name="WizardLaunchUrl" type="s:string" />
240
+ </s:sequence>
241
+ </s:extension>
242
+ </s:complexContent>
243
+ </s:complexType>
244
+ <s:element name="GetAvaCertServiceConfig">
245
+ <s:complexType>
246
+ <s:sequence>
247
+ <s:element minOccurs="0" maxOccurs="1" name="GetAvaCertServiceConfigRequest" type="tns:GetAvaCertServiceConfigRequest" />
248
+ </s:sequence>
249
+ </s:complexType>
250
+ </s:element>
251
+ <s:complexType name="GetAvaCertServiceConfigRequest">
252
+ <s:complexContent mixed="false">
253
+ <s:extension base="tns:BaseRequest">
254
+ <s:sequence>
255
+ <s:element minOccurs="0" maxOccurs="1" name="CompanyCode" type="s:string" />
256
+ </s:sequence>
257
+ </s:extension>
258
+ </s:complexContent>
259
+ </s:complexType>
260
+ <s:complexType name="BaseRequest" />
261
+ <s:element name="GetAvaCertServiceConfigResponse">
262
+ <s:complexType>
263
+ <s:sequence>
264
+ <s:element minOccurs="0" maxOccurs="1" name="GetAvaCertServiceConfigResult" type="tns:GetAvaCertServiceConfigResult" />
265
+ </s:sequence>
266
+ </s:complexType>
267
+ </s:element>
268
+ <s:complexType name="GetAvaCertServiceConfigResult">
269
+ <s:complexContent mixed="false">
270
+ <s:extension base="tns:BaseResult">
271
+ <s:sequence>
272
+ <s:element minOccurs="0" maxOccurs="1" name="AvaCertServiceConfigs" type="tns:ArrayOfAvaCertServiceConfig" />
273
+ </s:sequence>
274
+ </s:extension>
275
+ </s:complexContent>
276
+ </s:complexType>
277
+ <s:complexType name="ArrayOfAvaCertServiceConfig">
278
+ <s:sequence>
279
+ <s:element minOccurs="0" maxOccurs="unbounded" name="AvaCertServiceConfig" nillable="true" type="tns:AvaCertServiceConfig" />
280
+ </s:sequence>
281
+ </s:complexType>
282
+ <s:complexType name="AvaCertServiceConfig">
283
+ <s:sequence>
284
+ <s:element minOccurs="1" maxOccurs="1" name="AvaCertServiceConfigId" type="s:int" />
285
+ <s:element minOccurs="1" maxOccurs="1" name="CompanyCode" type="s:string" />
286
+ <s:element minOccurs="1" maxOccurs="1" name="IsUpdateEnabled" type="s:boolean" />
287
+ <s:element minOccurs="0" maxOccurs="1" name="ClientCode" type="s:string" />
288
+ <s:element minOccurs="0" maxOccurs="1" name="OrgCode" type="s:string" />
289
+ <s:element minOccurs="1" maxOccurs="1" name="AllowPending" type="s:boolean" />
290
+ <s:element minOccurs="1" maxOccurs="1" name="LastUpdate" type="s:dateTime" />
291
+ <s:element minOccurs="1" maxOccurs="1" name="CreatedUserId" type="s:int" />
292
+ <s:element minOccurs="1" maxOccurs="1" name="CreatedDate" type="s:dateTime" />
293
+ <s:element minOccurs="1" maxOccurs="1" name="ModifiedUserId" type="s:int" />
294
+ <s:element minOccurs="1" maxOccurs="1" name="ModifiedDate" type="s:dateTime" />
295
+ <s:element minOccurs="1" maxOccurs="1" name="AvaCertServiceStatus" type="tns:AvaCertServiceStatus" />
296
+ </s:sequence>
297
+ </s:complexType>
298
+ <s:simpleType name="AvaCertServiceStatus">
299
+ <s:restriction base="s:string">
300
+ <s:enumeration value="Disabled" />
301
+ <s:enumeration value="Onboarding" />
302
+ <s:enumeration value="Enabled" />
303
+ </s:restriction>
304
+ </s:simpleType>
305
+ <s:simpleType name="RequestType">
306
+ <s:restriction base="s:string">
307
+ <s:enumeration value="STANDARD" />
308
+ <s:enumeration value="DIRECT" />
309
+ </s:restriction>
310
+ </s:simpleType>
311
+ <s:element name="SetAvaCertServiceConfig">
312
+ <s:complexType>
313
+ <s:sequence>
314
+ <s:element minOccurs="0" maxOccurs="1" name="SetAvaCertServiceConfigRequest" type="tns:SetAvaCertServiceConfigRequest" />
315
+ </s:sequence>
316
+ </s:complexType>
317
+ </s:element>
318
+ <s:complexType name="SetAvaCertServiceConfigRequest">
319
+ <s:complexContent mixed="false">
320
+ <s:extension base="tns:BaseRequest">
321
+ <s:sequence>
322
+ <s:element minOccurs="0" maxOccurs="1" name="AvaCertServiceConfig" type="tns:AvaCertServiceConfig" />
323
+ </s:sequence>
324
+ </s:extension>
325
+ </s:complexContent>
326
+ </s:complexType>
327
+ <s:element name="SetAvaCertServiceConfigResponse">
328
+ <s:complexType>
329
+ <s:sequence>
330
+ <s:element minOccurs="0" maxOccurs="1" name="SetAvaCertServiceConfigResult" type="tns:SetAvaCertServiceConfigResult" />
331
+ </s:sequence>
332
+ </s:complexType>
333
+ </s:element>
334
+ <s:complexType name="SetAvaCertServiceConfigResult">
335
+ <s:complexContent mixed="false">
336
+ <s:extension base="tns:BaseResult" />
337
+ </s:complexContent>
338
+ </s:complexType>
339
+ <s:element name="AuditMessage" type="tns:AuditMessage" />
340
+ <s:complexType name="AuditMessage">
341
+ <s:sequence>
342
+ <s:element minOccurs="0" maxOccurs="1" name="Message" type="s:string" />
343
+ </s:sequence>
344
+ <s:anyAttribute />
345
+ </s:complexType>
346
+ <s:element name="InitiateUpdate">
347
+ <s:complexType>
348
+ <s:sequence>
349
+ <s:element minOccurs="0" maxOccurs="1" name="InitiateUpdateRequest" type="tns:InitiateUpdateRequest" />
350
+ </s:sequence>
351
+ </s:complexType>
352
+ </s:element>
353
+ <s:complexType name="InitiateUpdateRequest">
354
+ <s:sequence>
355
+ <s:element minOccurs="0" maxOccurs="1" name="CompanyCode" type="s:string" />
356
+ </s:sequence>
357
+ </s:complexType>
358
+ <s:element name="InitiateUpdateResponse">
359
+ <s:complexType>
360
+ <s:sequence>
361
+ <s:element minOccurs="0" maxOccurs="1" name="InitiateUpdateResult" type="tns:InitiateUpdateResult" />
362
+ </s:sequence>
363
+ </s:complexType>
364
+ </s:element>
365
+ <s:complexType name="InitiateUpdateResult">
366
+ <s:complexContent mixed="false">
367
+ <s:extension base="tns:BaseResult" />
368
+ </s:complexContent>
369
+ </s:complexType>
370
+ <s:element name="Ping">
371
+ <s:complexType>
372
+ <s:sequence>
373
+ <s:element minOccurs="0" maxOccurs="1" name="Message" type="s:string" />
374
+ </s:sequence>
375
+ </s:complexType>
376
+ </s:element>
377
+ <s:element name="PingResponse">
378
+ <s:complexType>
379
+ <s:sequence>
380
+ <s:element minOccurs="0" maxOccurs="1" name="PingResult" type="tns:PingResult" />
381
+ </s:sequence>
382
+ </s:complexType>
383
+ </s:element>
384
+ <s:complexType name="PingResult">
385
+ <s:complexContent mixed="false">
386
+ <s:extension base="tns:BaseResult">
387
+ <s:sequence>
388
+ <s:element minOccurs="0" maxOccurs="1" name="Version" type="s:string" />
389
+ </s:sequence>
390
+ </s:extension>
391
+ </s:complexContent>
392
+ </s:complexType>
393
+ <s:element name="IsAuthorized">
394
+ <s:complexType>
395
+ <s:sequence>
396
+ <s:element minOccurs="0" maxOccurs="1" name="Operations" type="s:string" />
397
+ </s:sequence>
398
+ </s:complexType>
399
+ </s:element>
400
+ <s:element name="IsAuthorizedResponse">
401
+ <s:complexType>
402
+ <s:sequence>
403
+ <s:element minOccurs="0" maxOccurs="1" name="IsAuthorizedResult" type="tns:IsAuthorizedResult" />
404
+ </s:sequence>
405
+ </s:complexType>
406
+ </s:element>
407
+ <s:complexType name="IsAuthorizedResult">
408
+ <s:complexContent mixed="false">
409
+ <s:extension base="tns:BaseResult">
410
+ <s:sequence>
411
+ <s:element minOccurs="0" maxOccurs="1" name="Operations" type="s:string" />
412
+ <s:element minOccurs="1" maxOccurs="1" name="Expires" type="s:dateTime" />
413
+ </s:sequence>
414
+ </s:extension>
415
+ </s:complexContent>
416
+ </s:complexType>
417
+ </s:schema>
418
+ </wsdl:types>
419
+ <wsdl:message name="AddCustomerSoapIn">
420
+ <wsdl:part name="parameters" element="tns:AddCustomer" />
421
+ </wsdl:message>
422
+ <wsdl:message name="AddCustomerSoapOut">
423
+ <wsdl:part name="parameters" element="tns:AddCustomerResponse" />
424
+ </wsdl:message>
425
+ <wsdl:message name="AddCustomerProfile">
426
+ <wsdl:part name="Profile" element="tns:Profile" />
427
+ </wsdl:message>
428
+ <wsdl:message name="GetExemptionCertificatesSoapIn">
429
+ <wsdl:part name="parameters" element="tns:GetExemptionCertificates" />
430
+ </wsdl:message>
431
+ <wsdl:message name="GetExemptionCertificatesSoapOut">
432
+ <wsdl:part name="parameters" element="tns:GetExemptionCertificatesResponse" />
433
+ </wsdl:message>
434
+ <wsdl:message name="GetExemptionCertificatesProfile">
435
+ <wsdl:part name="Profile" element="tns:Profile" />
436
+ </wsdl:message>
437
+ <wsdl:message name="InitiateExemptCertSoapIn">
438
+ <wsdl:part name="parameters" element="tns:InitiateExemptCert" />
439
+ </wsdl:message>
440
+ <wsdl:message name="InitiateExemptCertSoapOut">
441
+ <wsdl:part name="parameters" element="tns:InitiateExemptCertResponse" />
442
+ </wsdl:message>
443
+ <wsdl:message name="InitiateExemptCertProfile">
444
+ <wsdl:part name="Profile" element="tns:Profile" />
445
+ </wsdl:message>
446
+ <wsdl:message name="GetAvaCertServiceConfigSoapIn">
447
+ <wsdl:part name="parameters" element="tns:GetAvaCertServiceConfig" />
448
+ </wsdl:message>
449
+ <wsdl:message name="GetAvaCertServiceConfigSoapOut">
450
+ <wsdl:part name="parameters" element="tns:GetAvaCertServiceConfigResponse" />
451
+ </wsdl:message>
452
+ <wsdl:message name="GetAvaCertServiceConfigProfile">
453
+ <wsdl:part name="Profile" element="tns:Profile" />
454
+ </wsdl:message>
455
+ <wsdl:message name="SetAvaCertServiceConfigSoapIn">
456
+ <wsdl:part name="parameters" element="tns:SetAvaCertServiceConfig" />
457
+ </wsdl:message>
458
+ <wsdl:message name="SetAvaCertServiceConfigSoapOut">
459
+ <wsdl:part name="parameters" element="tns:SetAvaCertServiceConfigResponse" />
460
+ </wsdl:message>
461
+ <wsdl:message name="SetAvaCertServiceConfigAuditMessage">
462
+ <wsdl:part name="AuditMessage" element="tns:AuditMessage" />
463
+ </wsdl:message>
464
+ <wsdl:message name="SetAvaCertServiceConfigProfile">
465
+ <wsdl:part name="Profile" element="tns:Profile" />
466
+ </wsdl:message>
467
+ <wsdl:message name="InitiateUpdateSoapIn">
468
+ <wsdl:part name="parameters" element="tns:InitiateUpdate" />
469
+ </wsdl:message>
470
+ <wsdl:message name="InitiateUpdateSoapOut">
471
+ <wsdl:part name="parameters" element="tns:InitiateUpdateResponse" />
472
+ </wsdl:message>
473
+ <wsdl:message name="InitiateUpdateAuditMessage">
474
+ <wsdl:part name="AuditMessage" element="tns:AuditMessage" />
475
+ </wsdl:message>
476
+ <wsdl:message name="InitiateUpdateProfile">
477
+ <wsdl:part name="Profile" element="tns:Profile" />
478
+ </wsdl:message>
479
+ <wsdl:message name="PingSoapIn">
480
+ <wsdl:part name="parameters" element="tns:Ping" />
481
+ </wsdl:message>
482
+ <wsdl:message name="PingSoapOut">
483
+ <wsdl:part name="parameters" element="tns:PingResponse" />
484
+ </wsdl:message>
485
+ <wsdl:message name="PingProfile">
486
+ <wsdl:part name="Profile" element="tns:Profile" />
487
+ </wsdl:message>
488
+ <wsdl:message name="IsAuthorizedSoapIn">
489
+ <wsdl:part name="parameters" element="tns:IsAuthorized" />
490
+ </wsdl:message>
491
+ <wsdl:message name="IsAuthorizedSoapOut">
492
+ <wsdl:part name="parameters" element="tns:IsAuthorizedResponse" />
493
+ </wsdl:message>
494
+ <wsdl:message name="IsAuthorizedProfile">
495
+ <wsdl:part name="Profile" element="tns:Profile" />
496
+ </wsdl:message>
497
+ <wsdl:portType name="AvaCertSvcSoap">
498
+ <wsdl:operation name="AddCustomer">
499
+ <wsdl:input message="tns:AddCustomerSoapIn" />
500
+ <wsdl:output message="tns:AddCustomerSoapOut" />
501
+ </wsdl:operation>
502
+ <wsdl:operation name="InitiateExemptCert">
503
+ <wsdl:input message="tns:InitiateExemptCertSoapIn" />
504
+ <wsdl:output message="tns:InitiateExemptCertSoapOut" />
505
+ </wsdl:operation>
506
+ <wsdl:operation name="GetExemptionCertificates">
507
+ <wsdl:input message="tns:GetExemptionCertificatesSoapIn" />
508
+ <wsdl:output message="tns:GetExemptionCertificatesSoapOut" />
509
+ </wsdl:operation>
510
+ <wsdl:operation name="GetAvaCertServiceConfig">
511
+ <wsdl:input message="tns:GetAvaCertServiceConfigSoapIn" />
512
+ <wsdl:output message="tns:GetAvaCertServiceConfigSoapOut" />
513
+ </wsdl:operation>
514
+ <wsdl:operation name="SetAvaCertServiceConfig">
515
+ <wsdl:input message="tns:SetAvaCertServiceConfigSoapIn" />
516
+ <wsdl:output message="tns:SetAvaCertServiceConfigSoapOut" />
517
+ </wsdl:operation>
518
+ <wsdl:operation name="InitiateUpdate">
519
+ <wsdl:input message="tns:InitiateUpdateSoapIn" />
520
+ <wsdl:output message="tns:InitiateUpdateSoapOut" />
521
+ </wsdl:operation>
522
+ <wsdl:operation name="Ping">
523
+ <wsdl:input message="tns:PingSoapIn" />
524
+ <wsdl:output message="tns:PingSoapOut" />
525
+ </wsdl:operation>
526
+ <wsdl:operation name="IsAuthorized">
527
+ <wsdl:input message="tns:IsAuthorizedSoapIn" />
528
+ <wsdl:output message="tns:IsAuthorizedSoapOut" />
529
+ </wsdl:operation>
530
+ </wsdl:portType>
531
+ <wsdl:binding name="AvaCertSvcSoap" type="tns:AvaCertSvcSoap">
532
+ <soap:binding transport="http://schemas.xmlsoap.org/soap/http" />
533
+ <wsdl:operation name="AddCustomer">
534
+ <soap:operation soapAction="http://avatax.avalara.com/services/AddCustomer" style="document" />
535
+ <wsdl:input>
536
+ <soap:body use="literal" />
537
+ <soap:header message="tns:AddCustomerProfile" part="Profile" use="literal" />
538
+ </wsdl:input>
539
+ <wsdl:output>
540
+ <soap:body use="literal" />
541
+ </wsdl:output>
542
+ </wsdl:operation>
543
+ <wsdl:operation name="GetExemptionCertificates">
544
+ <soap:operation soapAction="http://avatax.avalara.com/services/GetExemptionCertificates" style="document" />
545
+ <wsdl:input>
546
+ <soap:body use="literal" />
547
+ <soap:header message="tns:GetExemptionCertificatesProfile" part="Profile" use="literal" />
548
+ </wsdl:input>
549
+ <wsdl:output>
550
+ <soap:body use="literal" />
551
+ </wsdl:output>
552
+ </wsdl:operation>
553
+ <wsdl:operation name="InitiateExemptCert">
554
+ <soap:operation soapAction="http://avatax.avalara.com/services/InitiateExemptCert" style="document" />
555
+ <wsdl:input>
556
+ <soap:body use="literal" />
557
+ <soap:header message="tns:InitiateExemptCertProfile" part="Profile" use="literal" />
558
+ </wsdl:input>
559
+ <wsdl:output>
560
+ <soap:body use="literal" />
561
+ </wsdl:output>
562
+ </wsdl:operation>
563
+ <wsdl:operation name="GetAvaCertServiceConfig">
564
+ <soap:operation soapAction="http://avatax.avalara.com/services/GetAvaCertServiceConfig" style="document" />
565
+ <wsdl:input>
566
+ <soap:body use="literal" />
567
+ <soap:header message="tns:GetAvaCertServiceConfigProfile" part="Profile" use="literal" />
568
+ </wsdl:input>
569
+ <wsdl:output>
570
+ <soap:body use="literal" />
571
+ </wsdl:output>
572
+ </wsdl:operation>
573
+ <wsdl:operation name="SetAvaCertServiceConfig">
574
+ <soap:operation soapAction="http://avatax.avalara.com/services/SetAvaCertServiceConfig" style="document" />
575
+ <wsdl:input>
576
+ <soap:body use="literal" />
577
+ <soap:header message="tns:SetAvaCertServiceConfigAuditMessage" part="AuditMessage" use="literal" />
578
+ <soap:header message="tns:SetAvaCertServiceConfigProfile" part="Profile" use="literal" />
579
+ </wsdl:input>
580
+ <wsdl:output>
581
+ <soap:body use="literal" />
582
+ </wsdl:output>
583
+ </wsdl:operation>
584
+ <wsdl:operation name="InitiateUpdate">
585
+ <soap:operation soapAction="http://avatax.avalara.com/services/InitiateUpdate" style="document" />
586
+ <wsdl:input>
587
+ <soap:body use="literal" />
588
+ <soap:header message="tns:InitiateUpdateAuditMessage" part="AuditMessage" use="literal" />
589
+ <soap:header message="tns:InitiateUpdateProfile" part="Profile" use="literal" />
590
+ </wsdl:input>
591
+ <wsdl:output>
592
+ <soap:body use="literal" />
593
+ </wsdl:output>
594
+ </wsdl:operation>
595
+ <wsdl:operation name="Ping">
596
+ <soap:operation soapAction="http://avatax.avalara.com/services/Ping" style="document" />
597
+ <wsdl:input>
598
+ <soap:body use="literal" />
599
+ <soap:header message="tns:PingProfile" part="Profile" use="literal" />
600
+ </wsdl:input>
601
+ <wsdl:output>
602
+ <soap:body use="literal" />
603
+ </wsdl:output>
604
+ </wsdl:operation>
605
+ <wsdl:operation name="IsAuthorized">
606
+ <soap:operation soapAction="http://avatax.avalara.com/services/IsAuthorized" style="document" />
607
+ <wsdl:input>
608
+ <soap:body use="literal" />
609
+ <soap:header message="tns:IsAuthorizedProfile" part="Profile" use="literal" />
610
+ </wsdl:input>
611
+ <wsdl:output>
612
+ <soap:body use="literal" />
613
+ </wsdl:output>
614
+ </wsdl:operation>
615
+ </wsdl:binding>
616
+ <wsdl:binding name="AvaCertSvcSoap12" type="tns:AvaCertSvcSoap">
617
+ <soap12:binding transport="http://schemas.xmlsoap.org/soap/http" />
618
+ <wsdl:operation name="AddCustomer">
619
+ <soap12:operation soapAction="http://avatax.avalara.com/services/AddCustomer" style="document" />
620
+ <wsdl:input>
621
+ <soap12:body use="literal" />
622
+ <soap12:header message="tns:AddCustomerProfile" part="Profile" use="literal" />
623
+ </wsdl:input>
624
+ <wsdl:output>
625
+ <soap12:body use="literal" />
626
+ </wsdl:output>
627
+ </wsdl:operation>
628
+ <wsdl:operation name="GetExemptionCertificates">
629
+ <soap12:operation soapAction="http://avatax.avalara.com/services/GetExemptionCertificates" style="document" />
630
+ <wsdl:input>
631
+ <soap12:body use="literal" />
632
+ <soap12:header message="tns:GetExemptionCertificatesProfile" part="Profile" use="literal" />
633
+ </wsdl:input>
634
+ <wsdl:output>
635
+ <soap12:body use="literal" />
636
+ </wsdl:output>
637
+ </wsdl:operation>
638
+ <wsdl:operation name="InitiateExemptCert">
639
+ <soap12:operation soapAction="http://avatax.avalara.com/services/InitiateExemptCert" style="document" />
640
+ <wsdl:input>
641
+ <soap12:body use="literal" />
642
+ <soap12:header message="tns:InitiateExemptCertProfile" part="Profile" use="literal" />
643
+ </wsdl:input>
644
+ <wsdl:output>
645
+ <soap12:body use="literal" />
646
+ </wsdl:output>
647
+ </wsdl:operation>
648
+ <wsdl:operation name="GetAvaCertServiceConfig">
649
+ <soap12:operation soapAction="http://avatax.avalara.com/services/GetAvaCertServiceConfig" style="document" />
650
+ <wsdl:input>
651
+ <soap12:body use="literal" />
652
+ <soap12:header message="tns:GetAvaCertServiceConfigProfile" part="Profile" use="literal" />
653
+ </wsdl:input>
654
+ <wsdl:output>
655
+ <soap12:body use="literal" />
656
+ </wsdl:output>
657
+ </wsdl:operation>
658
+ <wsdl:operation name="SetAvaCertServiceConfig">
659
+ <soap12:operation soapAction="http://avatax.avalara.com/services/SetAvaCertServiceConfig" style="document" />
660
+ <wsdl:input>
661
+ <soap12:body use="literal" />
662
+ <soap12:header message="tns:SetAvaCertServiceConfigAuditMessage" part="AuditMessage" use="literal" />
663
+ <soap12:header message="tns:SetAvaCertServiceConfigProfile" part="Profile" use="literal" />
664
+ </wsdl:input>
665
+ <wsdl:output>
666
+ <soap12:body use="literal" />
667
+ </wsdl:output>
668
+ </wsdl:operation>
669
+ <wsdl:operation name="InitiateUpdate">
670
+ <soap12:operation soapAction="http://avatax.avalara.com/services/InitiateUpdate" style="document" />
671
+ <wsdl:input>
672
+ <soap12:body use="literal" />
673
+ <soap12:header message="tns:InitiateUpdateAuditMessage" part="AuditMessage" use="literal" />
674
+ <soap12:header message="tns:InitiateUpdateProfile" part="Profile" use="literal" />
675
+ </wsdl:input>
676
+ <wsdl:output>
677
+ <soap12:body use="literal" />
678
+ </wsdl:output>
679
+ </wsdl:operation>
680
+ <wsdl:operation name="Ping">
681
+ <soap12:operation soapAction="http://avatax.avalara.com/services/Ping" style="document" />
682
+ <wsdl:input>
683
+ <soap12:body use="literal" />
684
+ <soap12:header message="tns:PingProfile" part="Profile" use="literal" />
685
+ </wsdl:input>
686
+ <wsdl:output>
687
+ <soap12:body use="literal" />
688
+ </wsdl:output>
689
+ </wsdl:operation>
690
+ <wsdl:operation name="IsAuthorized">
691
+ <soap12:operation soapAction="http://avatax.avalara.com/services/IsAuthorized" style="document" />
692
+ <wsdl:input>
693
+ <soap12:body use="literal" />
694
+ <soap12:header message="tns:IsAuthorizedProfile" part="Profile" use="literal" />
695
+ </wsdl:input>
696
+ <wsdl:output>
697
+ <soap12:body use="literal" />
698
+ </wsdl:output>
699
+ </wsdl:operation>
700
+ </wsdl:binding>
701
+ <wsdl:service name="AvaCertSvc">
702
+ <wsdl:port name="AvaCertSvcSoap" binding="tns:AvaCertSvcSoap">
703
+ <soap:address location="http://localhost/avatax.branches.11.2.0/AvaCert/AvaCertSvc.wsdl" />
704
+ </wsdl:port>
705
+ <wsdl:port name="AvaCertSvcSoap12" binding="tns:AvaCertSvcSoap12">
706
+ <soap12:address location="http://localhost/avatax.branches.11.2.0/AvaCert/AvaCertSvc.wsdl" />
707
+ </wsdl:port>
708
+ </wsdl:service>
709
+ </wsdl:definitions>
lib/AvaTax/classes/wsdl/Tax.wsdl CHANGED
@@ -40,8 +40,8 @@
40
  <s:element minOccurs="1" maxOccurs="1" name="PaymentDate" type="s:date" />
41
  <s:element minOccurs="1" maxOccurs="1" name="ExchangeRate" type="s:decimal" />
42
  <s:element minOccurs="1" maxOccurs="1" name="ExchangeRateEffDate" type="s:date" />
43
- <s:element minOccurs="1" maxOccurs="1" name="TaxDate" type="s:date" />
44
- <s:element minOccurs="1" maxOccurs="1" name="StatusDate" type="s:date" />
45
  </s:sequence>
46
  </s:extension>
47
  </s:complexContent>
@@ -56,6 +56,8 @@
56
  <s:enumeration value="ReturnInvoice" />
57
  <s:enumeration value="PendingAdjustment" />
58
  <s:enumeration value="Any" />
 
 
59
  </s:restriction>
60
  </s:simpleType>
61
  <s:complexType name="ArrayOfBaseAddress">
@@ -99,6 +101,7 @@
99
  <s:element minOccurs="0" maxOccurs="1" name="Description" type="s:string" />
100
  <s:element minOccurs="0" maxOccurs="1" name="TaxOverride" type="tns:TaxOverride" />
101
  <s:element minOccurs="0" maxOccurs="1" name="TaxIncluded" type="s:boolean" default="false" />
 
102
  </s:sequence>
103
  </s:complexType>
104
  <s:complexType name="TaxOverride">
@@ -115,6 +118,7 @@
115
  <s:enumeration value="TaxAmount" />
116
  <s:enumeration value="Exemption" />
117
  <s:enumeration value="TaxDate" />
 
118
  </s:restriction>
119
  </s:simpleType>
120
  <s:simpleType name="DetailLevel">
@@ -167,6 +171,7 @@
167
  <s:element minOccurs="1" maxOccurs="1" name="TaxDate" type="s:date" />
168
  <s:element minOccurs="0" maxOccurs="1" name="TaxSummary" type="tns:ArrayOfTaxDetail" />
169
  <s:element minOccurs="0" maxOccurs="1" name="Signature" type="s:string" />
 
170
  </s:sequence>
171
  </s:extension>
172
  </s:complexContent>
@@ -287,6 +292,7 @@
287
  <s:enumeration value="Sales" />
288
  <s:enumeration value="Use" />
289
  <s:enumeration value="ConsumerUse" />
 
290
  <s:enumeration value="Output" />
291
  <s:enumeration value="Input" />
292
  <s:enumeration value="Nonrecoverable" />
@@ -316,6 +322,11 @@
316
  <s:element minOccurs="0" maxOccurs="1" name="Region" type="s:string" />
317
  <s:element minOccurs="1" maxOccurs="1" name="TaxRegionId" type="s:int" />
318
  <s:element minOccurs="0" maxOccurs="1" name="JurisCode" type="s:string" />
 
 
 
 
 
319
  </s:sequence>
320
  </s:complexType>
321
  <s:element name="Profile" type="tns:Profile" />
@@ -515,6 +526,7 @@
515
  <s:extension base="tns:BaseRequest">
516
  <s:sequence>
517
  <s:element minOccurs="0" maxOccurs="1" name="CompanyCode" type="s:string" />
 
518
  <s:element minOccurs="1" maxOccurs="1" name="StartDate" type="s:date" />
519
  <s:element minOccurs="1" maxOccurs="1" name="EndDate" type="s:date" />
520
  <s:element minOccurs="1" maxOccurs="1" name="DocStatus" type="tns:DocStatus" />
@@ -546,6 +558,7 @@
546
  <s:extension base="tns:BaseResult">
547
  <s:sequence>
548
  <s:element minOccurs="0" maxOccurs="1" name="GetTaxResults" type="tns:ArrayOfGetTaxResult" />
 
549
  <s:element minOccurs="0" maxOccurs="1" name="LastDocCode" type="s:string" />
550
  </s:sequence>
551
  </s:extension>
@@ -796,6 +809,42 @@
796
  </s:extension>
797
  </s:complexContent>
798
  </s:complexType>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
799
  </s:schema>
800
  </wsdl:types>
801
  <wsdl:message name="GetTaxSoapIn">
@@ -926,6 +975,15 @@
926
  <wsdl:message name="IsAuthorizedProfile">
927
  <wsdl:part name="Profile" element="tns:Profile" />
928
  </wsdl:message>
 
 
 
 
 
 
 
 
 
929
  <wsdl:portType name="TaxSvcSoap">
930
  <wsdl:operation name="GetTax">
931
  <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Calculates taxes on a document</wsdl:documentation>
40
  <s:element minOccurs="1" maxOccurs="1" name="PaymentDate" type="s:date" />
41
  <s:element minOccurs="1" maxOccurs="1" name="ExchangeRate" type="s:decimal" />
42
  <s:element minOccurs="1" maxOccurs="1" name="ExchangeRateEffDate" type="s:date" />
43
+ <s:element minOccurs="0" maxOccurs="1" name="PosLaneCode" type="s:string"/>
44
+ <s:element minOccurs="0" maxOccurs="1" name="BusinessIdentificationNo" type="s:string"/>
45
  </s:sequence>
46
  </s:extension>
47
  </s:complexContent>
56
  <s:enumeration value="ReturnInvoice" />
57
  <s:enumeration value="PendingAdjustment" />
58
  <s:enumeration value="Any" />
59
+ <s:enumeration value="InventoryTransferOrder"/>
60
+ <s:enumeration value="InventoryTransferInvoice"/>
61
  </s:restriction>
62
  </s:simpleType>
63
  <s:complexType name="ArrayOfBaseAddress">
101
  <s:element minOccurs="0" maxOccurs="1" name="Description" type="s:string" />
102
  <s:element minOccurs="0" maxOccurs="1" name="TaxOverride" type="tns:TaxOverride" />
103
  <s:element minOccurs="0" maxOccurs="1" name="TaxIncluded" type="s:boolean" default="false" />
104
+ <s:element minOccurs="0" maxOccurs="1" name="BusinessIdentificationNo" type="s:string"/>
105
  </s:sequence>
106
  </s:complexType>
107
  <s:complexType name="TaxOverride">
118
  <s:enumeration value="TaxAmount" />
119
  <s:enumeration value="Exemption" />
120
  <s:enumeration value="TaxDate" />
121
+ <s:enumeration value="AccruedTaxAmount"/>
122
  </s:restriction>
123
  </s:simpleType>
124
  <s:simpleType name="DetailLevel">
171
  <s:element minOccurs="1" maxOccurs="1" name="TaxDate" type="s:date" />
172
  <s:element minOccurs="0" maxOccurs="1" name="TaxSummary" type="tns:ArrayOfTaxDetail" />
173
  <s:element minOccurs="0" maxOccurs="1" name="Signature" type="s:string" />
174
+ <s:element minOccurs="0" maxOccurs="1" name="VolatileTaxRates" type="s:boolean"/>
175
  </s:sequence>
176
  </s:extension>
177
  </s:complexContent>
292
  <s:enumeration value="Sales" />
293
  <s:enumeration value="Use" />
294
  <s:enumeration value="ConsumerUse" />
295
+ <s:enumeration value="Excise" />
296
  <s:enumeration value="Output" />
297
  <s:enumeration value="Input" />
298
  <s:enumeration value="Nonrecoverable" />
322
  <s:element minOccurs="0" maxOccurs="1" name="Region" type="s:string" />
323
  <s:element minOccurs="1" maxOccurs="1" name="TaxRegionId" type="s:int" />
324
  <s:element minOccurs="0" maxOccurs="1" name="JurisCode" type="s:string" />
325
+ <s:element minOccurs="0" maxOccurs="1" name="Latitude" type="s:string"/>
326
+ <s:element minOccurs="0" maxOccurs="1" name="Longitude" type="s:string"/>
327
+ <s:element minOccurs="0" maxOccurs="1" name="ValidateStatus" type="s:string"/>
328
+ <s:element minOccurs="0" maxOccurs="1" name="GeocodeType" type="s:string"/>
329
+ <s:element minOccurs="0" maxOccurs="1" name="DistanceToBoundary" type="s:int"/>
330
  </s:sequence>
331
  </s:complexType>
332
  <s:element name="Profile" type="tns:Profile" />
526
  <s:extension base="tns:BaseRequest">
527
  <s:sequence>
528
  <s:element minOccurs="0" maxOccurs="1" name="CompanyCode" type="s:string" />
529
+ <s:element minOccurs="0" maxOccurs="1" name="LastDocId" type="s:string"/>
530
  <s:element minOccurs="1" maxOccurs="1" name="StartDate" type="s:date" />
531
  <s:element minOccurs="1" maxOccurs="1" name="EndDate" type="s:date" />
532
  <s:element minOccurs="1" maxOccurs="1" name="DocStatus" type="tns:DocStatus" />
558
  <s:extension base="tns:BaseResult">
559
  <s:sequence>
560
  <s:element minOccurs="0" maxOccurs="1" name="GetTaxResults" type="tns:ArrayOfGetTaxResult" />
561
+ <s:element minOccurs="0" maxOccurs="1" name="LastDocId" type="s:string"/>
562
  <s:element minOccurs="0" maxOccurs="1" name="LastDocCode" type="s:string" />
563
  </s:sequence>
564
  </s:extension>
809
  </s:extension>
810
  </s:complexContent>
811
  </s:complexType>
812
+ <s:element name="TaxSummaryFetch">
813
+ <s:complexType>
814
+ <s:sequence>
815
+ <s:element minOccurs="0" maxOccurs="1" name="TaxSummaryFetchRequest" type="tns:TaxSummaryFetchRequest"/>
816
+ </s:sequence>
817
+ </s:complexType>
818
+ </s:element>
819
+ <s:complexType name="TaxSummaryFetchRequest">
820
+ <s:sequence>
821
+ <s:element minOccurs="0" maxOccurs="1" name="MerchantCode" type="s:string"/>
822
+ <s:element minOccurs="1" maxOccurs="1" name="StartDate" type="s:date"/>
823
+ <s:element minOccurs="1" maxOccurs="1" name="EndDate" type="s:date"/>
824
+ </s:sequence>
825
+ </s:complexType>
826
+ <s:element name="TaxSummaryFetchResponse">
827
+ <s:complexType>
828
+ <s:sequence>
829
+ <s:element minOccurs="0" maxOccurs="1" name="TaxSummaryFetchResult" type="tns:TaxSummaryFetchResult"/>
830
+ </s:sequence>
831
+ </s:complexType>
832
+ </s:element>
833
+ <s:complexType name="TaxSummaryFetchResult">
834
+ <s:complexContent mixed="false">
835
+ <s:extension base="tns:BaseResult">
836
+ <s:sequence>
837
+ <s:element minOccurs="0" maxOccurs="1" name="TaxSummaryReport">
838
+ <s:complexType>
839
+ <s:sequence>
840
+ <s:any/>
841
+ </s:sequence>
842
+ </s:complexType>
843
+ </s:element>
844
+ </s:sequence>
845
+ </s:extension>
846
+ </s:complexContent>
847
+ </s:complexType>
848
  </s:schema>
849
  </wsdl:types>
850
  <wsdl:message name="GetTaxSoapIn">
975
  <wsdl:message name="IsAuthorizedProfile">
976
  <wsdl:part name="Profile" element="tns:Profile" />
977
  </wsdl:message>
978
+ <wsdl:message name="TaxSummaryFetchSoapIn">
979
+ <wsdl:part name="parameters" element="tns:TaxSummaryFetch"/>
980
+ </wsdl:message>
981
+ <wsdl:message name="TaxSummaryFetchSoapOut">
982
+ <wsdl:part name="parameters" element="tns:TaxSummaryFetchResponse"/>
983
+ </wsdl:message>
984
+ <wsdl:message name="TaxSummaryFetchProfile">
985
+ <wsdl:part name="Profile" element="tns:Profile"/>
986
+ </wsdl:message>
987
  <wsdl:portType name="TaxSvcSoap">
988
  <wsdl:operation name="GetTax">
989
  <wsdl:documentation xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">Calculates taxes on a document</wsdl:documentation>
package.xml CHANGED
@@ -1,7 +1,7 @@
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>OnePica_AvaTax</name>
4
- <version>2.5.2</version>
5
  <stability>stable</stability>
6
  <license>Open Software License (OSL 3.0)</license>
7
  <channel>community</channel>
@@ -18,11 +18,14 @@ Released as a commercial extension, this software will not work unless you have
18
  &#xD;
19
  &#xD;
20
  At One Pica (www.onepica.com), we strive to build increasingly scalable and flexible enterprise systems for all of our clients, large and small. We want to give back to this community both to promote its success and as a sign of our gratitude. Please feel free to contact us on ways we can improve this extension or extend on this framework.</description>
21
- <notes>Fixed extension installation for versions below 1.6</notes>
 
 
 
22
  <authors><author><name>Rostyslav Redko</name><user>marketing</user><email>avalara@onepica.com</email></author></authors>
23
- <date>2015-09-09</date>
24
- <time>14:32:04</time>
25
- <contents><target name="magecommunity"><dir name="OnePica"><dir name="AvaTax"><dir name="Block"><dir name="Adminhtml"><dir name="Export"><dir name="Abstract"><file name="Grid.php" hash="5f96ca490c5f7bd3fac23e30b00336e5"/></dir><dir name="Log"><file name="Grid.php" hash="311c55d8bc770e6d6aa6f377c2eee6fd"/><file name="View.php" hash="097d82a3e2b1a8820d335a63f212451b"/></dir><dir name="Queue"><file name="Grid.php" hash="1ef8ba9bf3e0870ea6dc50bb202a0b91"/></dir></dir><dir name="Notification"><file name="Toolbar.php" hash="a31bc4d477eaa87b45da1113c7e4b8b6"/></dir><dir name="System"><dir name="Config"><dir name="Form"><dir name="Field"><file name="Export.php" hash="9a34cc10bf2e179725517be980d8ef17"/></dir></dir></dir></dir><dir name="Tax"><dir name="Class"><dir name="Edit"><file name="Form.php" hash="0e78c592366ee2746f3891cf91a388d3"/></dir><file name="Grid.php" hash="d731eb160457b8a22cfcd28682a1c485"/></dir></dir></dir><dir name="Checkout"><dir name="Onepage"><dir name="Shipping"><dir name="Method"><file name="Available.php" hash="c8ad904b71f344cfd1e01ceea7556dd1"/></dir></dir></dir></dir></dir><file name="Exception.php" hash="fc752f8da808a402baae2425c4072d22"/><dir name="Helper"><file name="Data.php" hash="af6dd71aa87a6161da941fe09cf4eeb2"/><dir name="Tax"><file name="Data.php" hash="e041b574919704a2ddc5173d38edda91"/></dir></dir><dir name="Model"><file name="Abstract.php" hash="97f0ae95e164849371f09dbb7b1afd86"/><dir name="Admin"><file name="Session.php" hash="90dd2d8b332f813515889a454ee3c80b"/></dir><dir name="Adminhtml"><file name="Config.php" hash="b0232a66e3deb89a51c870ec9cc815ee"/><dir name="Sales"><dir name="Order"><file name="Create.php" hash="08253fde693e39124b4b4f242c238852"/></dir></dir></dir><dir name="Avatax"><file name="Abstract.php" hash="9d5347c9eb201651469d0ffb62bbfa3f"/><file name="Address.php" hash="7c269d14d30b2faa1fbce281e6047889"/><file name="Estimate.php" hash="f136d8278b40cbfadea1d34b82189820"/><dir name="Exception"><file name="Address.php" hash="66761b418530d8682666a0ed6987ff3e"/><file name="Commitfailure.php" hash="81257541dd1d679493cfd2d3c5b6366e"/><file name="Unbalanced.php" hash="dc7967d9c5780b45ecb0828d5a1fc6dc"/></dir><file name="Invoice.php" hash="2f2fd8faefe375139a3b6f09247d810d"/><file name="Ping.php" hash="57b77948291fda5c6fe15733fd96a3c0"/></dir><file name="Config.php" hash="623922ea0cb4b335d2fca188f6f4f405"/><dir name="Export"><dir name="Adapter"><file name="Abstract.php" hash="840c8b87acd97646572bba9bb3b8f5ea"/><file name="Sql.php" hash="0e9bedb400f411785311f78ebbf676da"/></dir><dir name="Entity"><file name="Abstract.php" hash="d38a2293452c31e92f81bf5be59c3e1c"/><file name="Log.php" hash="a1dd28eee3e72d1a4ef7bddd865ddbae"/><file name="Queue.php" hash="14a97c283aa74f97982ab71160017aa3"/></dir></dir><file name="Export.php" hash="b94613b678b413d6268b07d314ba122e"/><file name="Observer.php" hash="721fb0a5a2c0502645becd665a54b0b3"/><dir name="Records"><file name="Log.php" hash="9a95ea609f75fa416c4564de8d3af4a2"/><dir name="Mysql4"><dir name="Log"><file name="Collection.php" hash="29db8163f4dda862ff822ddffd04554d"/></dir><file name="Log.php" hash="d6fb7997768b7e0f1b39363fd4de5917"/><dir name="Queue"><file name="Collection.php" hash="11bba1561c81f39695f091b94bd81560"/></dir><file name="Queue.php" hash="ad319339f577fdbbba740c52848a272c"/></dir><dir name="Queue"><file name="Process.php" hash="77092de76e08561d16759660b4a4f0c4"/></dir><file name="Queue.php" hash="17e369325bcac42042676bb61a2248c5"/></dir><dir name="Sales"><dir name="Quote"><dir name="Address"><dir name="Total"><file name="Grand.php" hash="63fb5a808ad3c16d2ed15f1dafad7937"/><file name="Tax.php" hash="359f5c252bad500b290d5569818d6478"/></dir></dir><file name="Address.php" hash="3191bbdf4e2227d35cf588dde798731b"/></dir></dir><file name="Session.php" hash="429142089e75418a702e70edc56374cf"/><dir name="Source"><file name="Actions.php" hash="879b80f92f735402f57e316546b16984"/><file name="Addressvalidation.php" hash="9f2315018910f7336ad894156d49d9b9"/><file name="Customercodeformat.php" hash="cfcfcbaa27ed29add072324816da0c9d"/><file name="Error.php" hash="7f5495a2f295ded2d0a30f2f7108d009"/><file name="Fieldlist.php" hash="18987603d4d58130959a8ac76716ed08"/><file name="Logmode.php" hash="24d61da578a3b4adb896fea7d4d4d8ec"/><file name="Logtype.php" hash="4079ebbf7ef44593e631b8cc9f0fc2a5"/><file name="Onerrorfrontend.php" hash="ef4154ae563d8157c1083f20e0adf563"/><dir name="Regionfilter"><file name="List.php" hash="169d0a776823439984fbdf27e631f62e"/><file name="Mode.php" hash="27fdc94c6f162100d55005285b5170df"/></dir></dir><dir name="Tax"><file name="Config.php" hash="6168c0d674a44291b7dbfe358305a04b"/></dir></dir><dir name="controllers"><dir name="Adminhtml"><file name="ExportController.php" hash="0ad97f1a39563925b5e33d6e9ca07885"/><file name="GridController.php" hash="91f38761378ff91d1f9c396b1cb3c150"/></dir></dir><dir name="etc"><file name="adminhtml.xml" hash="92c529d045fa34fd0822b6ccb40bd4ed"/><file name="config.xml" hash="3e524576864785049925f45ba3f22c2c"/><file name="system-disabled.xml" hash="937460e7271eb45d25f424d7da2baa72"/><file name="system.xml" hash="a1aa4cb07bce94406110cc9c1628460e"/></dir><dir name="sql"><dir name="avatax_records_setup"><file name="mysql4-data-upgrade-2.2.0-2.2.1.php" hash="260d1c57754ebadba00d8ccdbb0ec996"/><file name="mysql4-install-0.1.0.php" hash="3d16899179b36bfde69609a99a2faae6"/><file name="mysql4-upgrade-0.1.4-0.1.5.php" hash="94d0cf2fc0e9bbe2de2829198ce3026f"/><file name="mysql4-upgrade-1.0.1-2.0.0.php" hash="905d7519328cdb1c46bba4221288c41c"/><file name="mysql4-upgrade-2.5.0.0-2.5.0.1.php" hash="4b439957397049bbe01d458fd7cfe0a2"/></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="OnePica_AvaTax.xml" hash="07fd9423811b4dc084060d6131b889d7"/></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><dir name="onepica"><file name="avatax.xml" hash="a2514046fa0428d24a25f82d17627843"/></dir></dir><dir name="template"><dir name="onepica"><dir name="avatax"><dir name="log"><file name="view.phtml" hash="df14eee805bbedd484cf500dbf2335ed"/></dir><dir name="notification"><file name="toolbar.phtml" hash="fd368e043843df76ec3a74290b87dc3e"/></dir></dir></dir></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><dir name="onepica"><file name="avatax.xml" hash="38c6ce2165f6ccfd6641eb1487faad39"/></dir></dir></dir></dir></dir></target><target name="magelocale"><dir name="de_DE"><file name="OnePica_AvaTax.csv" hash="43d2dee74aee6f15abd471a65b4f407c"/></dir><dir name="en_US"><file name="OnePica_AvaTax.csv" hash="43d2dee74aee6f15abd471a65b4f407c"/></dir><dir name="es_ES"><file name="OnePica_AvaTax.csv" hash="43d2dee74aee6f15abd471a65b4f407c"/></dir><dir name="fr_FR"><file name="OnePica_AvaTax.csv" hash="43d2dee74aee6f15abd471a65b4f407c"/></dir><dir name="nl_NL"><file name="OnePica_AvaTax.csv" hash="43d2dee74aee6f15abd471a65b4f407c"/></dir><dir name="pt_BR"><file name="OnePica_AvaTax.csv" hash="43d2dee74aee6f15abd471a65b4f407c"/></dir><dir name="zh_CN"><file name="OnePica_AvaTax.csv" hash="43d2dee74aee6f15abd471a65b4f407c"/></dir></target><target name="magelib"><dir name="AvaTax"><file name="AvaTax.php" hash="b90641e80230f53318050942cc6b018e"/><dir name="classes"><file name="ATConfig.class.php" hash="3dcbb1fa9a51c6879304acfc665bf448"/><file name="ATObject.class.php" hash="310310eb90550b27cdba24407d8ff3b4"/><file name="AVObject.class.php" hash="b65c5532b01074a57a20703513148301"/><file name="Address.class.php" hash="8fcdbac804176af8acdb842c666f6601"/><file name="AddressServiceSoap.class.php" hash="a7327489aad4fe9d998a3d7bd7073ee1"/><file name="AddressType.class.php" hash="027a8d859a0c6e5c41d8b99635bf088d"/><file name="AdjustTaxRequest.class.php" hash="2b81104d3a061a194425c33d67489957"/><file name="AdjustTaxResult.class.php" hash="b08c06eb0711d3202c9d9920b24cece0"/><file name="ApplyPaymentRequest.class.php" hash="06672fc904a5df2ea8724a43971a7aa6"/><file name="ApplyPaymentResult.class.php" hash="08d5ee00317eec6c08ca5c3b6d8df14f"/><file name="AvalaraSoapClient.class.php" hash="c7b0b8c214f3508489b235a176701fba"/><file name="BaseResult.class.php" hash="5cf878570642a4c6a2583bd28d2d8620"/><dir name="BatchSvc"><file name="AuditMessage.class.php" hash="8c963f144cf6e2c071f93a1597e32a80"/><file name="AvaTaxBatchSvc.php" hash="e44adcc534e8c5760b368bc565473438"/><file name="BaseResult.class.php" hash="ec50a42321502cc75c2faf592e39b907"/><file name="Batch.class.php" hash="ca0acabb6c024c705140d8e3f71b1212"/><file name="BatchDelete.class.php" hash="7df3c7433c28d63cc40c691d69274fbe"/><file name="BatchDeleteResponse.class.php" hash="1e30d2e0b974a05a3ab8fab69a3fe201"/><file name="BatchFetch.class.php" hash="a219586203d34a3a03cc9a5538917201"/><file name="BatchFetchResponse.class.php" hash="a57f9246b5c466582071df04c78af692"/><file name="BatchFetchResult.class.php" hash="725fd451543fe30eed13b8d98187f231"/><file name="BatchFile.class.php" hash="46cc9e7a93f97941b4f0c80da35640c2"/><file name="BatchFileDelete.class.php" hash="7c86228d0214a53c235109905bc02aad"/><file name="BatchFileDeleteResponse.class.php" hash="b2a6d01af2ed1292a70bbadf62119bd9"/><file name="BatchFileFetch.class.php" hash="daa00c82d13715687f2c3b00e99b1480"/><file name="BatchFileFetchResponse.class.php" hash="e5bd28ed93bf35aba9e4f7779b31ad80"/><file name="BatchFileFetchResult.class.php" hash="791b0af2ea67b5dbb475ccb6d685c429"/><file name="BatchFileSave.class.php" hash="e1ad2b7f81c9e82313717db5409b18c4"/><file name="BatchFileSaveResponse.class.php" hash="5bab865aee572b1accf3de7cddfb0f2f"/><file name="BatchFileSaveResult.class.php" hash="4dbe0e1f549ed394eef657beff8471d5"/><file name="BatchProcess.class.php" hash="7788019e9be7419d406c9066c965deb3"/><file name="BatchProcessRequest.class.php" hash="832ff7855024677b7386ffaa6e0104e6"/><file name="BatchProcessResponse.class.php" hash="3d44d5be278b15cf4b15aba43c37ccbd"/><file name="BatchProcessResult.class.php" hash="337878f3dacb143e9ae7020cdd95b15a"/><file name="BatchSave.class.php" hash="327a80041e4edd25229a928c98ca06ec"/><file name="BatchSaveResponse.class.php" hash="f6dcd4c5d37487fd3d369f6e45af6a9d"/><file name="BatchSaveResult.class.php" hash="a7d6928c7264c34111217724da73c33d"/><file name="BatchSvc.class.php" hash="002a810f1f528d9957acb9425ab0d413"/><file name="DeleteRequest.class.php" hash="b58d438f56e27657225fd7d5fd3345d5"/><file name="DeleteResult.class.php" hash="b85e674576d8e1ef932e65a89442b1ab"/><file name="FetchRequest.class.php" hash="f2dc7736d1d978b42208af43dbd1e5c4"/><file name="FilterRequest.class.php" hash="a6d398d8cb74108fbc5a8db2ec0257a3"/><file name="FilterResult.class.php" hash="3a3fa688fbb5301c724172c689c489ac"/><file name="IsAuthorized.class.php" hash="bcea0e6f94fd91896b5f7dab5ccf1d34"/><file name="IsAuthorizedResponse.class.php" hash="3257ed6e3f72776755a5c777005dc07e"/><file name="IsAuthorizedResult.class.php" hash="b448a3e693de964adcd94f4080053400"/><file name="Message.class.php" hash="50449eb305fd599b2d0c1f896d04de15"/><file name="Ping.class.php" hash="f41dfdeae46ed60807133640ae439e73"/><file name="PingResponse.class.php" hash="25a4f733ea8358bb704f599b73e3acf5"/><file name="PingResult.class.php" hash="1d4b1e742c64763ccb19bdd5f1f1242e"/><file name="Profile.class.php" hash="be9136ca7d9262ecf6cb475478ba6f34"/><file name="SeverityLevel.class.php" hash="1d0f3fbafc53eb0c95d8bd012f8bceb8"/></dir><file name="BoundaryLevel.class.php" hash="6668793633f248fb3b0f3202f9c1bb9e"/><file name="CancelCode.class.php" hash="9ee9566cc42dcdc7f0a3b72aeb018476"/><file name="CancelTaxRequest.class.php" hash="dab9d9ea6eb4136a90ae004d42f14137"/><file name="CancelTaxResult.class.php" hash="0956c33ca647ce8243162b5e9a2b0aca"/><file name="CommitTaxRequest.class.php" hash="60449d210f13a38268190d5e2646af66"/><file name="CommitTaxResult.class.php" hash="e6d9f7012e8ccfca24f2e518253d8166"/><file name="DetailLevel.class.php" hash="e1932019e1c37fe5d38f85df90270b58"/><file name="DocStatus.class.php" hash="85bca886f525c7e87dab26dde0d3863a"/><file name="DocumentType.class.php" hash="d3c1c1f2587fa678f07c238c04ddbece"/><file name="DynamicSoapClient.class.php" hash="99b8b6107cef48e9db0176c9a7eebfa3"/><file name="Enum.class.php" hash="c5742f64a549cab51215f8caf129cba4"/><file name="GetTaxHistoryRequest.class.php" hash="dc5f81710bc8fcaba219ae777d846d30"/><file name="GetTaxHistoryResult.class.php" hash="3caa151cba735013c3c1696f664420ae"/><file name="GetTaxRequest.class.php" hash="bff7746d46b73dcb3ca1e9cdd77243ef"/><file name="GetTaxResult.class.php" hash="c0dc8ba348373ee0b88349c770a11ecc"/><file name="IsAuthorizedResult.class.php" hash="5081fbdbac0d6744111c546ee3d86b02"/><file name="JurisdictionType.class.php" hash="1fe9bf7b10ab3fbcc5eafa572a1e60df"/><file name="Line.class.php" hash="49b5a64113159d176f9a59c545c3c7da"/><file name="Message.class.php" hash="828ee52d57c6bd5fac1b683f031cf6fb"/><file name="PingResult.class.php" hash="3ffb8ba98d405d42da5e81535d88bdd9"/><file name="PostTaxRequest.class.php" hash="f02d8cdb12faa58af032571ddea35153"/><file name="PostTaxResult.class.php" hash="7e4b10738889f6de5cd72890c75552a8"/><file name="ReconcileTaxHistoryRequest.class.php" hash="f7ee69eff0a927484c836070625dd5c1"/><file name="ReconcileTaxHistoryResult.class.php" hash="87150941612abae0a4c38bda917cf9fc"/><file name="SearchTaxHistoryResult.class.php" hash="83772c17bf1aa6603ded582f39b369d2"/><file name="ServiceMode.class.php" hash="1df748285dfa93e3289067e1eff357cb"/><file name="SeverityLevel.class.php" hash="b6dd0121e5f34618b69de53d780a0b37"/><file name="TaxDetail.class.php" hash="730a8b65a33d3f9a9a177271886260d8"/><file name="TaxLine.class.php" hash="8e76dad82886bb95b63cf7c06742b436"/><file name="TaxOverride.class.php" hash="e4a2dfbae6201f1f35f73cf7d406bc8a"/><file name="TaxOverrideType.class.php" hash="a7ebd4cc1752097072cab8e9f5ea30e9"/><file name="TaxRequest.class.php" hash="1e13ebb2e220d0fcb259d3195b42bf21"/><file name="TaxServiceSoap.class.php" hash="11674eb236496b62fd69faf41306d04e"/><file name="TaxType.class.php" hash="6bbf38a988efdb988524a08aee239278"/><file name="TextCase.class.php" hash="b27c032f45230cadff0d918f1a80261d"/><file name="ValidAddress.class.php" hash="6a404c90685b1af5fb3712a1776983c2"/><file name="ValidateRequest.class.php" hash="f095566ce30885dadc0272fb19cd00c8"/><file name="ValidateResult.class.php" hash="47258df8dbcd349743e9fcb53ea7ae36"/><dir name="wsdl"><file name="Address.wsdl" hash="803c4963306f4c59a818cd15163241c9"/><file name="BatchSvc.wsdl" hash="798a715e28b9751b01666a29554135f7"/><file name="Tax.wsdl" hash="8539baec3de1a11a1767921fd51f5852"/></dir></dir><file name="functions.php" hash="57734d162b59cbc65933d25bf3950270"/></dir></target></contents>
26
  <compatible/>
27
  <dependencies><required><php><min>5.2.3</min><max>6.0.0</max></php><extension><name>Core</name><min/><max/></extension><extension><name>curl</name><min/><max/></extension><extension><name>soap</name><min/><max/></extension></required></dependencies>
28
  </package>
1
  <?xml version="1.0"?>
2
  <package>
3
  <name>OnePica_AvaTax</name>
4
+ <version>2.6.0</version>
5
  <stability>stable</stability>
6
  <license>Open Software License (OSL 3.0)</license>
7
  <channel>community</channel>
18
  &#xD;
19
  &#xD;
20
  At One Pica (www.onepica.com), we strive to build increasingly scalable and flexible enterprise systems for all of our clients, large and small. We want to give back to this community both to promote its success and as a sign of our gratitude. Please feel free to contact us on ways we can improve this extension or extend on this framework.</description>
21
+ <notes>Added global feature support&#xD;
22
+ Fixed tax calculation with gifting options&#xD;
23
+ Fixed double sending of invoice to Avalara&#xD;
24
+ Fixed settings in admin displaying when extension is in disabled mode</notes>
25
  <authors><author><name>Rostyslav Redko</name><user>marketing</user><email>avalara@onepica.com</email></author></authors>
26
+ <date>2015-09-15</date>
27
+ <time>13:07:55</time>
28
+ <contents><target name="magecommunity"><dir name="OnePica"><dir name="AvaTax"><dir name="Block"><dir name="Adminhtml"><dir name="Export"><dir name="Abstract"><file name="Grid.php" hash="5f96ca490c5f7bd3fac23e30b00336e5"/></dir><dir name="Log"><file name="Grid.php" hash="311c55d8bc770e6d6aa6f377c2eee6fd"/><file name="View.php" hash="097d82a3e2b1a8820d335a63f212451b"/></dir><dir name="Queue"><file name="Grid.php" hash="1ef8ba9bf3e0870ea6dc50bb202a0b91"/></dir></dir><dir name="Notification"><file name="Toolbar.php" hash="a31bc4d477eaa87b45da1113c7e4b8b6"/></dir><dir name="System"><dir name="Config"><dir name="Form"><dir name="Field"><file name="Export.php" hash="9a34cc10bf2e179725517be980d8ef17"/></dir></dir></dir></dir><dir name="Tax"><dir name="Class"><dir name="Edit"><file name="Form.php" hash="0e78c592366ee2746f3891cf91a388d3"/></dir><file name="Grid.php" hash="d731eb160457b8a22cfcd28682a1c485"/></dir></dir></dir><dir name="Checkout"><dir name="Onepage"><dir name="Shipping"><dir name="Method"><file name="Available.php" hash="c8ad904b71f344cfd1e01ceea7556dd1"/></dir></dir></dir></dir></dir><file name="Exception.php" hash="fc752f8da808a402baae2425c4072d22"/><dir name="Helper"><file name="Data.php" hash="e322daae3d5b00923fb1e626f9c6fbef"/><dir name="Tax"><file name="Data.php" hash="e041b574919704a2ddc5173d38edda91"/></dir></dir><dir name="Model"><file name="Abstract.php" hash="97f0ae95e164849371f09dbb7b1afd86"/><dir name="Admin"><file name="Session.php" hash="e3dc3353c7eebf4e17c22ea4039585c5"/></dir><dir name="Adminhtml"><file name="Config.php" hash="e3656ed052c4bd143822369ffed5a5c7"/><dir name="Sales"><dir name="Order"><file name="Create.php" hash="08253fde693e39124b4b4f242c238852"/></dir></dir></dir><dir name="Avatax"><file name="Abstract.php" hash="4a85927eb751e61afa730de51644fa43"/><file name="Address.php" hash="7c269d14d30b2faa1fbce281e6047889"/><file name="Estimate.php" hash="54288c99dacabfdc887d6294a0cb17c7"/><dir name="Exception"><file name="Address.php" hash="66761b418530d8682666a0ed6987ff3e"/><file name="Commitfailure.php" hash="81257541dd1d679493cfd2d3c5b6366e"/><file name="Unbalanced.php" hash="dc7967d9c5780b45ecb0828d5a1fc6dc"/></dir><file name="Invoice.php" hash="e54d02d2341c74087716413f44f32881"/><file name="Ping.php" hash="57b77948291fda5c6fe15733fd96a3c0"/></dir><file name="Config.php" hash="623922ea0cb4b335d2fca188f6f4f405"/><dir name="Export"><dir name="Adapter"><file name="Abstract.php" hash="840c8b87acd97646572bba9bb3b8f5ea"/><file name="Sql.php" hash="0e9bedb400f411785311f78ebbf676da"/></dir><dir name="Entity"><file name="Abstract.php" hash="d38a2293452c31e92f81bf5be59c3e1c"/><file name="Log.php" hash="a1dd28eee3e72d1a4ef7bddd865ddbae"/><file name="Queue.php" hash="14a97c283aa74f97982ab71160017aa3"/></dir></dir><file name="Export.php" hash="b94613b678b413d6268b07d314ba122e"/><file name="Observer.php" hash="31cf1af00c679866b93fe3a1dc9dae2b"/><dir name="Records"><file name="Log.php" hash="9a95ea609f75fa416c4564de8d3af4a2"/><dir name="Mysql4"><dir name="Log"><file name="Collection.php" hash="29db8163f4dda862ff822ddffd04554d"/></dir><file name="Log.php" hash="d6fb7997768b7e0f1b39363fd4de5917"/><dir name="Queue"><file name="Collection.php" hash="11bba1561c81f39695f091b94bd81560"/></dir><file name="Queue.php" hash="ad319339f577fdbbba740c52848a272c"/></dir><dir name="Queue"><file name="Process.php" hash="77092de76e08561d16759660b4a4f0c4"/></dir><file name="Queue.php" hash="17e369325bcac42042676bb61a2248c5"/></dir><dir name="Sales"><dir name="Quote"><dir name="Address"><dir name="Total"><file name="Grand.php" hash="63fb5a808ad3c16d2ed15f1dafad7937"/><file name="Tax.php" hash="6f8474734da74dc13297a38a295a58f9"/></dir></dir><file name="Address.php" hash="3191bbdf4e2227d35cf588dde798731b"/></dir></dir><file name="Session.php" hash="429142089e75418a702e70edc56374cf"/><dir name="Source"><file name="Actions.php" hash="879b80f92f735402f57e316546b16984"/><file name="Addressvalidation.php" hash="9f2315018910f7336ad894156d49d9b9"/><file name="Customercodeformat.php" hash="cfcfcbaa27ed29add072324816da0c9d"/><file name="Error.php" hash="7f5495a2f295ded2d0a30f2f7108d009"/><file name="Fieldlist.php" hash="18987603d4d58130959a8ac76716ed08"/><file name="Logmode.php" hash="24d61da578a3b4adb896fea7d4d4d8ec"/><file name="Logtype.php" hash="4079ebbf7ef44593e631b8cc9f0fc2a5"/><file name="Onerrorfrontend.php" hash="ef4154ae563d8157c1083f20e0adf563"/><dir name="Regionfilter"><file name="List.php" hash="ed98a569d45cb5b014107f0fda52d735"/><file name="Mode.php" hash="27fdc94c6f162100d55005285b5170df"/></dir></dir><dir name="Tax"><file name="Config.php" hash="6168c0d674a44291b7dbfe358305a04b"/></dir><dir name="Total"><dir name="Quote"><dir name="Tax"><file name="Giftwrapping.php" hash="ff5f4418766f31933ae0a184ffaab946"/></dir></dir></dir></dir><dir name="controllers"><dir name="Adminhtml"><file name="ExportController.php" hash="0ad97f1a39563925b5e33d6e9ca07885"/><file name="GridController.php" hash="91f38761378ff91d1f9c396b1cb3c150"/></dir></dir><dir name="etc"><file name="adminhtml.xml" hash="92c529d045fa34fd0822b6ccb40bd4ed"/><file name="config.xml" hash="7547321aa50d7cdcfe08035e6e8e0789"/><file name="system-disabled.xml" hash="588cd3c8ddbf05eea324e2c85f28c195"/><file name="system.xml" hash="befdcbd7ca59d45dee7d0d5631c81b47"/></dir><dir name="sql"><dir name="avatax_records_setup"><file name="mysql4-data-upgrade-2.2.0-2.2.1.php" hash="260d1c57754ebadba00d8ccdbb0ec996"/><file name="mysql4-install-0.1.0.php" hash="3d16899179b36bfde69609a99a2faae6"/><file name="mysql4-upgrade-0.1.4-0.1.5.php" hash="94d0cf2fc0e9bbe2de2829198ce3026f"/><file name="mysql4-upgrade-1.0.1-2.0.0.php" hash="905d7519328cdb1c46bba4221288c41c"/><file name="mysql4-upgrade-2.5.0.0-2.5.0.1.php" hash="4b439957397049bbe01d458fd7cfe0a2"/></dir></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="OnePica_AvaTax.xml" hash="07fd9423811b4dc084060d6131b889d7"/></dir></target><target name="magedesign"><dir name="adminhtml"><dir name="default"><dir name="default"><dir name="layout"><dir name="onepica"><file name="avatax.xml" hash="a2514046fa0428d24a25f82d17627843"/></dir></dir><dir name="template"><dir name="onepica"><dir name="avatax"><dir name="log"><file name="view.phtml" hash="df14eee805bbedd484cf500dbf2335ed"/></dir><dir name="notification"><file name="toolbar.phtml" hash="fd368e043843df76ec3a74290b87dc3e"/></dir></dir></dir></dir></dir></dir></dir><dir name="frontend"><dir name="base"><dir name="default"><dir name="layout"><dir name="onepica"><file name="avatax.xml" hash="38c6ce2165f6ccfd6641eb1487faad39"/></dir></dir></dir></dir></dir></target><target name="magelocale"><dir name="de_DE"><file name="OnePica_AvaTax.csv" hash="43d2dee74aee6f15abd471a65b4f407c"/></dir><dir name="en_US"><file name="OnePica_AvaTax.csv" hash="43d2dee74aee6f15abd471a65b4f407c"/></dir><dir name="es_ES"><file name="OnePica_AvaTax.csv" hash="43d2dee74aee6f15abd471a65b4f407c"/></dir><dir name="fr_FR"><file name="OnePica_AvaTax.csv" hash="43d2dee74aee6f15abd471a65b4f407c"/></dir><dir name="nl_NL"><file name="OnePica_AvaTax.csv" hash="43d2dee74aee6f15abd471a65b4f407c"/></dir><dir name="pt_BR"><file name="OnePica_AvaTax.csv" hash="43d2dee74aee6f15abd471a65b4f407c"/></dir><dir name="zh_CN"><file name="OnePica_AvaTax.csv" hash="43d2dee74aee6f15abd471a65b4f407c"/></dir></target><target name="magelib"><dir name="AvaTax"><file name="AvaTax.php" hash="26989654c44655c391758b9b82c3fc97"/><dir name="classes"><file name="ATConfig.class.php" hash="cac35e53e2dbd0f50c689d9ea63ffef7"/><file name="ATObject.class.php" hash="7e19ef9e2bf9f068c0074c89b5e182c4"/><file name="Address.class.php" hash="2d8f324e4f5d1f5aab46c607e7996470"/><file name="AddressServiceSoap.class.php" hash="72cead0fb71cf50ea205725e3581db43"/><file name="AddressType.class.php" hash="5fe3117c43c9e72782c99fe9f05e6d44"/><file name="AdjustTaxRequest.class.php" hash="88ae06a8a6af2bb4f606df2a5d3311b3"/><file name="AdjustTaxResult.class.php" hash="244b36ac53068f7d31e1f675292bc633"/><file name="ApplyPaymentRequest.class.php" hash="97c03c4b9e3e971d4f02c465158e57c5"/><file name="ApplyPaymentResult.class.php" hash="151fef191bbf5b5680dc17b68bd1fd5b"/><dir name="AvaCert2Svc"><file name="AvaCert2Soap.class.php" hash="011512b904f890fff8f83d8d12c32137"/><file name="Certificate.class.php" hash="148fb1033df9617143df3c0e56930b2e"/><file name="CertificateGetRequest.class.php" hash="f430a993f08f0a061cb8eeb8d2f72888"/><file name="CertificateGetResult.class.php" hash="9fa85bbabaca47bbeb1cbb0d5649565a"/><file name="CertificateImageGetRequest.class.php" hash="3a50a5e435b721224e6319318dd63ef1"/><file name="CertificateImageGetResult.class.php" hash="a579ccb4c5bbdfb6e78f4713ce9d3362"/><file name="CertificateJurisdiction.class.php" hash="7aa081021ddfe5f8208f8a7c85b6c4b5"/><file name="CertificateRequest.class.php" hash="88d48e898ff3026e03ef84ef6e10f095"/><file name="CertificateRequestGetRequest.class.php" hash="e21c5f0f4fedcacf6419378c9348701c"/><file name="CertificateRequestGetResult.class.php" hash="ba7e8558f1c49eeedba3ceb8d9f408e1"/><file name="CertificateRequestInitiateRequest.class.php" hash="277b647bbe7ed8a4ac6abb71098c2bcd"/><file name="CertificateRequestInitiateResult.class.php" hash="0fa5b3ad1287273abf91af3c620e462c"/><file name="CertificateRequestStage.class.php" hash="e69c9a74d81f487c106c54b7f3fb1557"/><file name="CertificateRequestStatus.class.php" hash="2e718743928ad93705a7b9b72ae01791"/><file name="CertificateStatus.class.php" hash="5644c784f7404af14fa790c0a4987f2f"/><file name="CertificateUsage.class.php" hash="1c849c3118546241482b2fbc3040eb68"/><file name="CommunicationMode.class.php" hash="45be17774b1d31307d1c07419b68fa86"/><file name="Customer.class.php" hash="9d6604f45014bc919551f3427a1f6096"/><file name="CustomerSaveRequest.class.php" hash="448f65a1ed1a469198c92ea5228565a5"/><file name="CustomerSaveResult.class.php" hash="ca833de9567ee04deeef9e0c67bc6906"/><file name="FormatType.class.php" hash="a5da25399b4db992f94980a42d80a894"/><file name="RequestType.class.php" hash="b8cb7931e1cdf437fbca74d33b7372c8"/><file name="ReviewStatus.class.php" hash="f026a188fd126a722743b7f193ab790d"/></dir><file name="AvalaraSoapClient.class.php" hash="a1ef291d4f3f60ff7aebe2231b48b7a1"/><file name="BaseResult.class.php" hash="5643a0cfac67684d689b5214fa449c78"/><dir name="BatchSvc"><file name="AuditMessage.class.php" hash="c5d32e8221163fc3b32bb8aeaa36b6ca"/><file name="AvaTaxBatchSvc.php" hash="b74e21e6381e4d124895cccc9d7b2e85"/><file name="BaseResult.class.php" hash="b66a3e1b84fda37475ec0cf5eab72631"/><file name="Batch.class.php" hash="e2c09672a5bc642803924afd56c81353"/><file name="BatchDelete.class.php" hash="f0a0262c2c9d98d206db30811524372a"/><file name="BatchDeleteResponse.class.php" hash="7fc5ba8b16e4b3c2e23fa2f9b22527b9"/><file name="BatchFetch.class.php" hash="99a36be1615da5ee74364434bbc7b395"/><file name="BatchFetchResponse.class.php" hash="0979f86a3aebc4a980241a66aff8be5b"/><file name="BatchFetchResult.class.php" hash="b5d1ef7ed331c13da8aeb4dbf8786b49"/><file name="BatchFile.class.php" hash="f276bb7844ec659daa4f8e48d02b3de4"/><file name="BatchFileDelete.class.php" hash="61e1f12cbe1cd03394e3da9219bfeb28"/><file name="BatchFileDeleteResponse.class.php" hash="8c46b1855f5b2f80e43486ecc76e9da7"/><file name="BatchFileFetch.class.php" hash="434b21f695fe1a4a98755d89548a0582"/><file name="BatchFileFetchResponse.class.php" hash="60ebb86596058188550bc28deefa80e9"/><file name="BatchFileFetchResult.class.php" hash="0c27895ca6e531e45ed684fa983f605f"/><file name="BatchFileSave.class.php" hash="1c7689a40fb435185507649aa05be0a1"/><file name="BatchFileSaveResponse.class.php" hash="a9317ce4b16fd03a655262f677b8c4f5"/><file name="BatchFileSaveResult.class.php" hash="22083e9f476643f765dfb212f66a6d44"/><file name="BatchProcess.class.php" hash="7f74ee2c8132422029e9bd2df004fcf2"/><file name="BatchProcessRequest.class.php" hash="418941b17d58b1a4f3852ed9f33082d4"/><file name="BatchProcessResponse.class.php" hash="19a6ca5665990b5ed8a5eb96c418380a"/><file name="BatchProcessResult.class.php" hash="238dc3924533d0cebed26b69cb297d3a"/><file name="BatchSave.class.php" hash="61d914a1f31ec41e0cf6c17d4609afaa"/><file name="BatchSaveResponse.class.php" hash="0d43f7251a987b236265b410857dd28b"/><file name="BatchSaveResult.class.php" hash="c07d8c4c3a972fa633b5251b85e2004e"/><file name="BatchSvc.class.php" hash="6756e5f46f50076d87ba36d5e333e57c"/><file name="DeleteRequest.class.php" hash="889e52100944e0a0ea55f3b07d3bd2ad"/><file name="DeleteResult.class.php" hash="1c07ae35a5c700cbde27d55ca0f28de2"/><file name="FetchRequest.class.php" hash="9c25698d7d0917d9f196673cc66a651b"/><file name="FilterRequest.class.php" hash="03c664a1e1a883b164879bc2be36c2bd"/><file name="FilterResult.class.php" hash="ef1a819f3786e9f577ec82fa9feb35ec"/><file name="IsAuthorized.class.php" hash="ec5f302437e1dca3cbd74ab320455f39"/><file name="IsAuthorizedResponse.class.php" hash="101dd46745a27e14980cf641e2f72dfc"/><file name="IsAuthorizedResult.class.php" hash="f55df9606c0efa6c0dc92eec2fd0938c"/><file name="Message.class.php" hash="106e66c6429b3a226c257fc3f25a6b67"/><file name="Ping.class.php" hash="1fe9cbed451083691655e8be68c787b5"/><file name="PingResponse.class.php" hash="7ffa8e8c97ecf6e2a16dc099e25f42fc"/><file name="PingResult.class.php" hash="46b9973ac9e8abf2ec0017b998a0c9c3"/><file name="Profile.class.php" hash="cdb9c3fac721d6f36d0b5d9f4302553d"/><file name="SeverityLevel.class.php" hash="1d9d5e106362d218c955770b315b5f81"/></dir><file name="BoundaryLevel.class.php" hash="253b8a05322b8e231919687f3827a7b5"/><file name="CancelCode.class.php" hash="d18bf4c911c3e8f61276379b38b19a2f"/><file name="CancelTaxRequest.class.php" hash="a9695b4f52190a8564418756a0803f4f"/><file name="CancelTaxResult.class.php" hash="14481a7ffadcdcac39d62054ba71de03"/><file name="CommitTaxRequest.class.php" hash="44c1b2572e472b1f5039d4951720e253"/><file name="CommitTaxResult.class.php" hash="c3011037fde1267653cada283a98be06"/><file name="DetailLevel.class.php" hash="77bd93452c5aff9ebb55775090f0ccb3"/><file name="DocStatus.class.php" hash="e997874e8837ab16c41c5d8a22674e90"/><file name="DocumentType.class.php" hash="758fc459c61b61f74fcd1eea3db2e4db"/><file name="DynamicSoapClient.class.php" hash="340af2b0cc31e6d2af86bca2107660fa"/><file name="Enum.class.php" hash="c42f3aff54c5575626149dd68b9548a1"/><file name="GetTaxHistoryRequest.class.php" hash="3affe503b0fb3b893271e16b3b4fc55a"/><file name="GetTaxHistoryResult.class.php" hash="7846121d29d5ac72e9b5e5c159a3d1e0"/><file name="GetTaxRequest.class.php" hash="ee45f7351ef19ffb2c9e0b8e79aa9bf1"/><file name="GetTaxResult.class.php" hash="a10ca0bf9fa9c144cab7047c8e24a11f"/><file name="IsAuthorizedResult.class.php" hash="daf9c6678d96536202118aca416593f0"/><file name="JurisdictionType.class.php" hash="89ebf55527a1c6c2fa7d875f97aa3890"/><file name="Line.class.php" hash="53c00d0b7d7c6f04807bfde0a32e8b3e"/><file name="Message.class.php" hash="a597a20d4e71d8359f5716e4090f5f91"/><file name="PingResult.class.php" hash="89fba1b1b4ebf9b5305841a95b1abea5"/><file name="PostTaxRequest.class.php" hash="45e5b40f965b37451ef1ff55003589cd"/><file name="PostTaxResult.class.php" hash="17643f25442780d7bbf9ecdb3fefd560"/><file name="ReconcileTaxHistoryRequest.class.php" hash="cd9c75c27b67aa3b0d602d7b58a84833"/><file name="ReconcileTaxHistoryResult.class.php" hash="467947a86b364e275bf43cb1faff2c98"/><file name="SearchTaxHistoryResult.class.php" hash="931aa2769869e17ea14081b2619bc189"/><file name="ServiceMode.class.php" hash="1fb48c918639b8fb6a6fa19b04236b3a"/><file name="SeverityLevel.class.php" hash="10056ae4392ce28ce3cbd0ca7c940178"/><file name="TaxDetail.class.php" hash="ef9e531bf185e58e76f09bfd4737e5f4"/><file name="TaxLine.class.php" hash="179f26ad8b7969aae73d7e83837961b4"/><file name="TaxOverride.class.php" hash="b7f6d15c23cbd5493a39d0448c345c02"/><file name="TaxOverrideType.class.php" hash="bd4f08a9742010694496048122b77d74"/><file name="TaxRequest.class.php" hash="3e8cf3ae19656365282c47b141c5409c"/><file name="TaxServiceSoap.class.php" hash="1c5b5ee61bad472c18727914045d70f3"/><file name="TaxType.class.php" hash="76c213ba5dff5fe71388ed9b12926c6e"/><file name="TextCase.class.php" hash="8ff721c254f32afef24176fb7d1aea52"/><file name="ValidAddress.class.php" hash="b651bb1ed9e937be0babe2fc5e7ab7f7"/><file name="ValidateRequest.class.php" hash="17f34c99a63d32cb2e17eef7fb0ffdea"/><file name="ValidateResult.class.php" hash="e8bdece299be6bcb1fa38e3714e01ae0"/><dir name="wsdl"><file name="Address.wsdl" hash="37ac1778f42147b548e09c8bb39b3cfc"/><file name="AvaCert2Svc.wsdl" hash="60da5aa0484ce00b82d7675ea3fd6454"/><file name="AvaCertSvc.wsdl" hash="25d03720f7018ea027c3345ec2c69c8e"/><file name="BatchSvc.wsdl" hash="798a715e28b9751b01666a29554135f7"/><file name="Tax.wsdl" hash="051420912d3e0b2489ae250c47059166"/></dir></dir><file name="functions.php" hash="57734d162b59cbc65933d25bf3950270"/></dir></target></contents>
29
  <compatible/>
30
  <dependencies><required><php><min>5.2.3</min><max>6.0.0</max></php><extension><name>Core</name><min/><max/></extension><extension><name>curl</name><min/><max/></extension><extension><name>soap</name><min/><max/></extension></required></dependencies>
31
  </package>