Version Notes
Added global feature support
Fixed issue with multiple requests to Avalara
Fixed tax class for gifting options
Fixed tax calculation for gift options
Fixed timezone issues when send invoice/creditmemo to Avalara
Fixed company value code send when create order in admin for non-default store
Fixed vat id value for checkout with multiple addresses
Fixed currency conversion for non default store
Download this release
Release Info
Developer | Astound Commerce |
Extension | OnePica_AvaTax |
Version | 2.6.1 |
Comparing to | |
See all releases |
Code changes from version 2.6.0 to 2.6.1
- app/code/community/OnePica/AvaTax/Helper/Data.php +14 -0
- app/code/community/OnePica/AvaTax/Model/Avatax/Abstract.php +53 -34
- app/code/community/OnePica/AvaTax/Model/Avatax/Estimate.php +60 -54
- app/code/community/OnePica/AvaTax/Model/Avatax/Invoice.php +36 -22
- app/code/community/OnePica/AvaTax/Model/Sales/Quote/Address/Total/Tax.php +28 -16
- app/code/community/OnePica/AvaTax/etc/config.xml +1 -1
- package.xml +11 -7
app/code/community/OnePica/AvaTax/Helper/Data.php
CHANGED
@@ -619,4 +619,18 @@ class OnePica_AvaTax_Helper_Data extends Mage_Core_Helper_Abstract
|
|
619 |
|
620 |
return true;
|
621 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
622 |
}
|
619 |
|
620 |
return true;
|
621 |
}
|
622 |
+
|
623 |
+
/**
|
624 |
+
* Round up
|
625 |
+
*
|
626 |
+
* @param float $value
|
627 |
+
* @param int $precision
|
628 |
+
* @return float
|
629 |
+
*/
|
630 |
+
public function roundUp($value, $precision)
|
631 |
+
{
|
632 |
+
$fact = pow(10, $precision);
|
633 |
+
|
634 |
+
return ceil($fact * $value) / $fact;
|
635 |
+
}
|
636 |
}
|
app/code/community/OnePica/AvaTax/Model/Avatax/Abstract.php
CHANGED
@@ -89,7 +89,18 @@ abstract class OnePica_AvaTax_Model_Avatax_Abstract extends OnePica_AvaTax_Model
|
|
89 |
$storeId = $object->getStoreId();
|
90 |
}
|
91 |
|
92 |
-
return $this->
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
93 |
}
|
94 |
|
95 |
/**
|
@@ -144,12 +155,12 @@ abstract class OnePica_AvaTax_Model_Avatax_Abstract extends OnePica_AvaTax_Model
|
|
144 |
/**
|
145 |
* Adds additional transaction based data
|
146 |
*
|
147 |
-
* @param
|
148 |
* @return $this
|
149 |
*/
|
150 |
protected function _addGeneralInfo($object)
|
151 |
{
|
152 |
-
$storeId = $
|
153 |
$this->_setCompanyCode($storeId);
|
154 |
$this->_request->setBusinessIdentificationNo($this->_getVatId($object));
|
155 |
$this->_request->setDetailLevel(DetailLevel::$Document);
|
@@ -177,7 +188,8 @@ abstract class OnePica_AvaTax_Model_Avatax_Abstract extends OnePica_AvaTax_Model
|
|
177 |
{
|
178 |
if ($object instanceof Mage_Sales_Model_Order) {
|
179 |
return $this->_getVatIdByOrder($object);
|
180 |
-
|
|
|
181 |
return $this->_getVatIdByQuoteAddress($object);
|
182 |
}
|
183 |
|
@@ -189,8 +201,9 @@ abstract class OnePica_AvaTax_Model_Avatax_Abstract extends OnePica_AvaTax_Model
|
|
189 |
*/
|
190 |
protected function _getVatIdByQuoteAddress($address)
|
191 |
{
|
192 |
-
|
193 |
?: $address->getQuote()->getBillingAddress()->getVatId();
|
|
|
194 |
}
|
195 |
|
196 |
/**
|
@@ -334,8 +347,8 @@ abstract class OnePica_AvaTax_Model_Avatax_Abstract extends OnePica_AvaTax_Model
|
|
334 |
/**
|
335 |
* Adds a comment to order history. Method choosen based on Magento version.
|
336 |
*
|
337 |
-
* @param Mage_Sales_Model_Order
|
338 |
-
* @param string
|
339 |
* @return self
|
340 |
*/
|
341 |
protected function _addStatusHistoryComment($order, $comment)
|
@@ -383,7 +396,7 @@ abstract class OnePica_AvaTax_Model_Avatax_Abstract extends OnePica_AvaTax_Model
|
|
383 |
$taxClassIds[] = $product->getTaxClassId();
|
384 |
}
|
385 |
}
|
386 |
-
$gwTaxClassId =
|
387 |
|
388 |
if (0 !== $gwTaxClassId) {
|
389 |
$taxClassIds[] = $gwTaxClassId;
|
@@ -425,20 +438,28 @@ abstract class OnePica_AvaTax_Model_Avatax_Abstract extends OnePica_AvaTax_Model
|
|
425 |
}
|
426 |
|
427 |
/**
|
428 |
-
* Get Avatax
|
429 |
*
|
430 |
* @param Mage_Catalog_Model_Product $product
|
431 |
* @return string
|
432 |
*/
|
433 |
-
protected function
|
434 |
{
|
435 |
-
$taxClass =
|
436 |
-
|
437 |
-
|
438 |
-
|
439 |
-
|
440 |
-
|
441 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
442 |
}
|
443 |
|
444 |
/**
|
@@ -493,23 +514,6 @@ abstract class OnePica_AvaTax_Model_Avatax_Abstract extends OnePica_AvaTax_Model
|
|
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 |
*
|
@@ -529,4 +533,19 @@ abstract class OnePica_AvaTax_Model_Avatax_Abstract extends OnePica_AvaTax_Model
|
|
529 |
{
|
530 |
return Mage::getSingleton('core/date');
|
531 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
532 |
}
|
89 |
$storeId = $object->getStoreId();
|
90 |
}
|
91 |
|
92 |
+
return $this->_getWrappingTaxClass($storeId);
|
93 |
+
}
|
94 |
+
|
95 |
+
/**
|
96 |
+
* Get gift wrapping tax class config value
|
97 |
+
*
|
98 |
+
* @param int $storeId
|
99 |
+
* @return int
|
100 |
+
*/
|
101 |
+
protected function _getWrappingTaxClass($storeId)
|
102 |
+
{
|
103 |
+
return (int)$this->_getGiftWrappingDataHelper()->getWrappingTaxClass($storeId);
|
104 |
}
|
105 |
|
106 |
/**
|
155 |
/**
|
156 |
* Adds additional transaction based data
|
157 |
*
|
158 |
+
* @param OnePica_AvaTax_Model_Sales_Quote_Address|Mage_Sales_Model_Order $object
|
159 |
* @return $this
|
160 |
*/
|
161 |
protected function _addGeneralInfo($object)
|
162 |
{
|
163 |
+
$storeId = $this->_getStoreIdByObject($object);
|
164 |
$this->_setCompanyCode($storeId);
|
165 |
$this->_request->setBusinessIdentificationNo($this->_getVatId($object));
|
166 |
$this->_request->setDetailLevel(DetailLevel::$Document);
|
188 |
{
|
189 |
if ($object instanceof Mage_Sales_Model_Order) {
|
190 |
return $this->_getVatIdByOrder($object);
|
191 |
+
}
|
192 |
+
|
193 |
return $this->_getVatIdByQuoteAddress($object);
|
194 |
}
|
195 |
|
201 |
*/
|
202 |
protected function _getVatIdByQuoteAddress($address)
|
203 |
{
|
204 |
+
$vatId = $address->getVatId()
|
205 |
?: $address->getQuote()->getBillingAddress()->getVatId();
|
206 |
+
return (string)$vatId;
|
207 |
}
|
208 |
|
209 |
/**
|
347 |
/**
|
348 |
* Adds a comment to order history. Method choosen based on Magento version.
|
349 |
*
|
350 |
+
* @param Mage_Sales_Model_Order $order
|
351 |
+
* @param string $comment
|
352 |
* @return self
|
353 |
*/
|
354 |
protected function _addStatusHistoryComment($order, $comment)
|
396 |
$taxClassIds[] = $product->getTaxClassId();
|
397 |
}
|
398 |
}
|
399 |
+
$gwTaxClassId = $this->_getGwTaxClassId($object);
|
400 |
|
401 |
if (0 !== $gwTaxClassId) {
|
402 |
$taxClassIds[] = $gwTaxClassId;
|
438 |
}
|
439 |
|
440 |
/**
|
441 |
+
* Get Avatax tax code for given product
|
442 |
*
|
443 |
* @param Mage_Catalog_Model_Product $product
|
444 |
* @return string
|
445 |
*/
|
446 |
+
protected function _getTaxClassCodeByProduct($product)
|
447 |
{
|
448 |
+
$taxClass = $this->_getTaxClassCollection()->getItemById($product->getTaxClassId());
|
449 |
+
return $taxClass ? $taxClass->getOpAvataxCode() : '';
|
450 |
+
}
|
451 |
+
|
452 |
+
/**
|
453 |
+
* Get gift Avatax tax class code
|
454 |
+
*
|
455 |
+
* @param int $storeId
|
456 |
+
* @return string
|
457 |
+
*/
|
458 |
+
protected function _getGiftTaxClassCode($storeId)
|
459 |
+
{
|
460 |
+
$taxClassId = $this->_getWrappingTaxClass($storeId);
|
461 |
+
$taxClass = $this->_getTaxClassCollection()->getItemById($taxClassId);
|
462 |
+
return $taxClass ? $taxClass->getOpAvataxCode() : '';
|
463 |
}
|
464 |
|
465 |
/**
|
514 |
return $taxOverride;
|
515 |
}
|
516 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
517 |
/**
|
518 |
* Get gift wrapping data helper
|
519 |
*
|
533 |
{
|
534 |
return Mage::getSingleton('core/date');
|
535 |
}
|
536 |
+
|
537 |
+
/**
|
538 |
+
* Retrieve storeId from object
|
539 |
+
*
|
540 |
+
* @param OnePica_AvaTax_Model_Sales_Quote_Address|Mage_Sales_Model_Order $object
|
541 |
+
* @return int
|
542 |
+
*/
|
543 |
+
protected function _getStoreIdByObject($object)
|
544 |
+
{
|
545 |
+
if ($object instanceof OnePica_AvaTax_Model_Sales_Quote_Address) {
|
546 |
+
return $object->getQuote()->getStoreId();
|
547 |
+
}
|
548 |
+
|
549 |
+
return $object->getStoreId();
|
550 |
+
}
|
551 |
}
|
app/code/community/OnePica/AvaTax/Model/Avatax/Estimate.php
CHANGED
@@ -92,7 +92,7 @@ class OnePica_AvaTax_Model_Avatax_Estimate extends OnePica_AvaTax_Model_Avatax_A
|
|
92 |
/**
|
93 |
* Estimates tax rate for one item.
|
94 |
*
|
95 |
-
* @param
|
96 |
* @return int
|
97 |
*/
|
98 |
public function getItemRate($item)
|
@@ -101,7 +101,7 @@ class OnePica_AvaTax_Model_Avatax_Estimate extends OnePica_AvaTax_Model_Avatax_A
|
|
101 |
return 0;
|
102 |
} else {
|
103 |
$key = $this->_getRates($item);
|
104 |
-
$id = $item->
|
105 |
return isset($this->_rates[$key]['items'][$id]['rate']) ? $this->_rates[$key]['items'][$id]['rate'] : 0;
|
106 |
}
|
107 |
}
|
@@ -114,16 +114,19 @@ class OnePica_AvaTax_Model_Avatax_Estimate extends OnePica_AvaTax_Model_Avatax_A
|
|
114 |
*/
|
115 |
public function getItemGiftTax($item)
|
116 |
{
|
|
|
|
|
|
|
117 |
$key = $this->_getRates($item);
|
118 |
-
$id = $item->
|
119 |
-
return isset($this->_rates[$key]['
|
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)
|
125 |
*
|
126 |
-
* @param
|
127 |
* @return int
|
128 |
*/
|
129 |
public function getItemTax($item)
|
@@ -138,7 +141,7 @@ class OnePica_AvaTax_Model_Avatax_Estimate extends OnePica_AvaTax_Model_Avatax_A
|
|
138 |
return $tax;
|
139 |
} else {
|
140 |
$key = $this->_getRates($item);
|
141 |
-
$id = $item->
|
142 |
return isset($this->_rates[$key]['items'][$id]['amt']) ? $this->_rates[$key]['items'][$id]['amt'] : 0;
|
143 |
}
|
144 |
}
|
@@ -176,7 +179,7 @@ class OnePica_AvaTax_Model_Avatax_Estimate extends OnePica_AvaTax_Model_Avatax_A
|
|
176 |
/**
|
177 |
* Get rates from Avalara
|
178 |
*
|
179 |
-
* @param
|
180 |
* @return string
|
181 |
*/
|
182 |
protected function _getRates($item)
|
@@ -185,15 +188,17 @@ class OnePica_AvaTax_Model_Avatax_Estimate extends OnePica_AvaTax_Model_Avatax_A
|
|
185 |
return 'error';
|
186 |
}
|
187 |
|
|
|
188 |
$address = $item->getAddress();
|
189 |
$this->_lines = array();
|
190 |
|
191 |
//set up request
|
|
|
192 |
$this->_request = new GetTaxRequest();
|
193 |
$this->_request->setDocType(DocumentType::$SalesOrder);
|
194 |
$this->_request->setDocCode('quote-' . $address->getId());
|
195 |
$this->_addGeneralInfo($address);
|
196 |
-
$this->_setOriginAddress($
|
197 |
$this->_setDestinationAddress($address);
|
198 |
$this->_request->setDetailLevel(DetailLevel::$Line);
|
199 |
$this->_addItemsInCart($item);
|
@@ -203,7 +208,7 @@ class OnePica_AvaTax_Model_Avatax_Estimate extends OnePica_AvaTax_Model_Avatax_A
|
|
203 |
$this->_addGwPrintedCardAmount($address);
|
204 |
//check to see if we can/need to make the request to Avalara
|
205 |
$requestKey = $this->_genRequestKey();
|
206 |
-
$makeRequest =
|
207 |
//@startSkipCommitHooks
|
208 |
$makeRequest &= count($this->_lineToLineId) ? true : false;
|
209 |
$makeRequest &= $this->_request->getDestinationAddress() == '' ? false : true;
|
@@ -213,25 +218,25 @@ class OnePica_AvaTax_Model_Avatax_Estimate extends OnePica_AvaTax_Model_Avatax_A
|
|
213 |
|
214 |
//make request if needed and save results in cache
|
215 |
if ($makeRequest) {
|
216 |
-
$result = $this->_send($
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
217 |
|
218 |
//success
|
219 |
/** @var GetTaxResult $result */
|
220 |
if ($result->getResultCode() == SeverityLevel::$Success) {
|
221 |
-
$this->_rates[$requestKey] = array(
|
222 |
-
'timestamp' => $this->_getDateModel()->timestamp(),
|
223 |
-
'address_id' => $address->getId(),
|
224 |
-
'summary' => array(),
|
225 |
-
'items' => array()
|
226 |
-
);
|
227 |
-
|
228 |
foreach ($result->getTaxLines() as $ctl) {
|
229 |
-
|
230 |
-
$id = $this->
|
231 |
-
$
|
232 |
-
|
233 |
-
'
|
234 |
-
'
|
235 |
);
|
236 |
}
|
237 |
|
@@ -244,13 +249,7 @@ class OnePica_AvaTax_Model_Avatax_Estimate extends OnePica_AvaTax_Model_Avatax_A
|
|
244 |
}
|
245 |
//failure
|
246 |
} else {
|
247 |
-
$this->_rates[$requestKey] =
|
248 |
-
'timestamp' => $this->_getDateModel()->timestamp(),
|
249 |
-
'address_id' => $address->getId(),
|
250 |
-
'summary' => array(),
|
251 |
-
'items' => array(),
|
252 |
-
'failure' => true
|
253 |
-
);
|
254 |
if (Mage::helper('avatax')->fullStopOnError($address->getStoreId())) {
|
255 |
$address->getQuote()->setHasError(true);
|
256 |
}
|
@@ -325,7 +324,7 @@ class OnePica_AvaTax_Model_Avatax_Estimate extends OnePica_AvaTax_Model_Avatax_A
|
|
325 |
$gwOrderSku = Mage::helper('avatax')->getGwOrderSku($storeId);
|
326 |
$line->setItemCode($gwOrderSku ? $gwOrderSku : 'GwOrderAmount');
|
327 |
$line->setDescription('Gift Wrap Order Amount');
|
328 |
-
$line->setTaxCode($this->
|
329 |
$line->setQty(1);
|
330 |
$line->setAmount($gwOrderAmount);
|
331 |
$line->setDiscounted(false);
|
@@ -344,27 +343,28 @@ class OnePica_AvaTax_Model_Avatax_Estimate extends OnePica_AvaTax_Model_Avatax_A
|
|
344 |
*/
|
345 |
protected function _addGwItemsAmount($item)
|
346 |
{
|
347 |
-
if (!$item->
|
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->
|
361 |
-
$line->setQty(
|
362 |
$line->setAmount($gwItemsAmount);
|
363 |
$line->setDiscounted(false);
|
364 |
|
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 |
}
|
@@ -390,7 +390,7 @@ class OnePica_AvaTax_Model_Avatax_Estimate extends OnePica_AvaTax_Model_Avatax_A
|
|
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->
|
394 |
$line->setQty(1);
|
395 |
$line->setAmount($gwPrintedCardAmount);
|
396 |
$line->setDiscounted(false);
|
@@ -404,7 +404,7 @@ class OnePica_AvaTax_Model_Avatax_Estimate extends OnePica_AvaTax_Model_Avatax_A
|
|
404 |
/**
|
405 |
* Adds all items in the cart to the request
|
406 |
*
|
407 |
-
* @param
|
408 |
* @return int
|
409 |
*/
|
410 |
protected function _addItemsInCart($item)
|
@@ -421,10 +421,8 @@ class OnePica_AvaTax_Model_Avatax_Estimate extends OnePica_AvaTax_Model_Avatax_A
|
|
421 |
$this->_initProductCollection($items);
|
422 |
$this->_initTaxClassCollection($item->getAddress());
|
423 |
foreach ($items as $item) {
|
424 |
-
|
425 |
-
|
426 |
-
$this->_productGiftPair[$productLineNumber] = $this->_addGwItemsAmount($item);
|
427 |
-
}
|
428 |
}
|
429 |
$this->_request->setLines($this->_lines);
|
430 |
}
|
@@ -440,11 +438,12 @@ class OnePica_AvaTax_Model_Avatax_Estimate extends OnePica_AvaTax_Model_Avatax_A
|
|
440 |
*/
|
441 |
protected function _newLine($item)
|
442 |
{
|
|
|
443 |
if ($this->isProductCalculated($item)) {
|
444 |
return false;
|
445 |
}
|
446 |
$product = $this->_getProductByProductId($item->getProductId());
|
447 |
-
$taxClass = $this->
|
448 |
$price = $item->getBaseRowTotal() - $item->getBaseDiscountAmount();
|
449 |
$lineNumber = count($this->_lines);
|
450 |
$line = new Line();
|
@@ -454,6 +453,7 @@ class OnePica_AvaTax_Model_Avatax_Estimate extends OnePica_AvaTax_Model_Avatax_A
|
|
454 |
$line->setQty($item->getQty());
|
455 |
$line->setAmount($price);
|
456 |
$line->setDiscounted($item->getDiscountAmount() ? true : false);
|
|
|
457 |
if ($taxClass) {
|
458 |
$line->setTaxCode($taxClass);
|
459 |
}
|
@@ -467,25 +467,31 @@ class OnePica_AvaTax_Model_Avatax_Estimate extends OnePica_AvaTax_Model_Avatax_A
|
|
467 |
}
|
468 |
|
469 |
$this->_lines[$lineNumber] = $line;
|
470 |
-
$this->_lineToLineId[$lineNumber] = $item->
|
471 |
return $lineNumber;
|
472 |
}
|
473 |
|
474 |
/**
|
475 |
-
*
|
476 |
*
|
477 |
-
* @param
|
478 |
-
* @
|
479 |
-
* @return null|float
|
480 |
*/
|
481 |
-
protected function
|
482 |
{
|
483 |
-
$
|
484 |
-
|
485 |
-
|
486 |
-
|
487 |
-
}
|
488 |
|
489 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
490 |
}
|
491 |
}
|
92 |
/**
|
93 |
* Estimates tax rate for one item.
|
94 |
*
|
95 |
+
* @param Mage_Sales_Model_Quote_Item $item
|
96 |
* @return int
|
97 |
*/
|
98 |
public function getItemRate($item)
|
101 |
return 0;
|
102 |
} else {
|
103 |
$key = $this->_getRates($item);
|
104 |
+
$id = $item->getSku();
|
105 |
return isset($this->_rates[$key]['items'][$id]['rate']) ? $this->_rates[$key]['items'][$id]['rate'] : 0;
|
106 |
}
|
107 |
}
|
114 |
*/
|
115 |
public function getItemGiftTax($item)
|
116 |
{
|
117 |
+
if ($item->getParentItemId()) {
|
118 |
+
return 0;
|
119 |
+
}
|
120 |
$key = $this->_getRates($item);
|
121 |
+
$id = $item->getSku();
|
122 |
+
return isset($this->_rates[$key]['gw_items'][$id]['amt']) ? $this->_rates[$key]['gw_items'][$id]['amt'] : 0;
|
123 |
}
|
124 |
|
125 |
/**
|
126 |
* Estimates tax amount for one item. Does not trigger a call if the shipping
|
127 |
* address has no postal code, or if the postal code is set to "-" (OneStepCheckout)
|
128 |
*
|
129 |
+
* @param Mage_Sales_Model_Quote_Item $item
|
130 |
* @return int
|
131 |
*/
|
132 |
public function getItemTax($item)
|
141 |
return $tax;
|
142 |
} else {
|
143 |
$key = $this->_getRates($item);
|
144 |
+
$id = $item->getSku();
|
145 |
return isset($this->_rates[$key]['items'][$id]['amt']) ? $this->_rates[$key]['items'][$id]['amt'] : 0;
|
146 |
}
|
147 |
}
|
179 |
/**
|
180 |
* Get rates from Avalara
|
181 |
*
|
182 |
+
* @param Mage_Sales_Model_Quote_Item $item
|
183 |
* @return string
|
184 |
*/
|
185 |
protected function _getRates($item)
|
188 |
return 'error';
|
189 |
}
|
190 |
|
191 |
+
/** @var OnePica_AvaTax_Model_Sales_Quote_Address $address */
|
192 |
$address = $item->getAddress();
|
193 |
$this->_lines = array();
|
194 |
|
195 |
//set up request
|
196 |
+
$quote = $address->getQuote();
|
197 |
$this->_request = new GetTaxRequest();
|
198 |
$this->_request->setDocType(DocumentType::$SalesOrder);
|
199 |
$this->_request->setDocCode('quote-' . $address->getId());
|
200 |
$this->_addGeneralInfo($address);
|
201 |
+
$this->_setOriginAddress($quote->getStoreId());
|
202 |
$this->_setDestinationAddress($address);
|
203 |
$this->_request->setDetailLevel(DetailLevel::$Line);
|
204 |
$this->_addItemsInCart($item);
|
208 |
$this->_addGwPrintedCardAmount($address);
|
209 |
//check to see if we can/need to make the request to Avalara
|
210 |
$requestKey = $this->_genRequestKey();
|
211 |
+
$makeRequest = empty($this->_rates[$requestKey]['items']);
|
212 |
//@startSkipCommitHooks
|
213 |
$makeRequest &= count($this->_lineToLineId) ? true : false;
|
214 |
$makeRequest &= $this->_request->getDestinationAddress() == '' ? false : true;
|
218 |
|
219 |
//make request if needed and save results in cache
|
220 |
if ($makeRequest) {
|
221 |
+
$result = $this->_send($quote->getStoreId());
|
222 |
+
$this->_rates[$requestKey] = array(
|
223 |
+
'timestamp' => $this->_getDateModel()->timestamp(),
|
224 |
+
'address_id' => $address->getId(),
|
225 |
+
'summary' => array(),
|
226 |
+
'items' => array(),
|
227 |
+
'gw_items' => array()
|
228 |
+
);
|
229 |
|
230 |
//success
|
231 |
/** @var GetTaxResult $result */
|
232 |
if ($result->getResultCode() == SeverityLevel::$Success) {
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
233 |
foreach ($result->getTaxLines() as $ctl) {
|
234 |
+
/** @var TaxLine $ctl */
|
235 |
+
$id = $this->_getItemIdByLine($ctl);
|
236 |
+
$code = $this->_getTaxArrayCodeByLine($ctl);
|
237 |
+
$this->_rates[$requestKey][$code][$id] = array(
|
238 |
+
'rate' => ($ctl->getTax() ? $ctl->getRate() : 0) * 100,
|
239 |
+
'amt' => $ctl->getTax(),
|
240 |
);
|
241 |
}
|
242 |
|
249 |
}
|
250 |
//failure
|
251 |
} else {
|
252 |
+
$this->_rates[$requestKey]['failure'] = true;
|
|
|
|
|
|
|
|
|
|
|
|
|
253 |
if (Mage::helper('avatax')->fullStopOnError($address->getStoreId())) {
|
254 |
$address->getQuote()->setHasError(true);
|
255 |
}
|
324 |
$gwOrderSku = Mage::helper('avatax')->getGwOrderSku($storeId);
|
325 |
$line->setItemCode($gwOrderSku ? $gwOrderSku : 'GwOrderAmount');
|
326 |
$line->setDescription('Gift Wrap Order Amount');
|
327 |
+
$line->setTaxCode($this->_getGiftTaxClassCode($storeId));
|
328 |
$line->setQty(1);
|
329 |
$line->setAmount($gwOrderAmount);
|
330 |
$line->setDiscounted(false);
|
343 |
*/
|
344 |
protected function _addGwItemsAmount($item)
|
345 |
{
|
346 |
+
if (!$item->getGwId()) {
|
347 |
return false;
|
348 |
}
|
349 |
$lineNumber = count($this->_lines);
|
350 |
$storeId = $item->getQuote()->getStoreId();
|
351 |
//Add gift wrapping price(for individual items)
|
352 |
+
$gwItemsAmount = $item->getGwBasePrice() * $item->getQty();
|
353 |
|
354 |
$line = new Line();
|
355 |
$line->setNo($lineNumber);
|
356 |
$gwItemsSku = Mage::helper('avatax')->getGwItemsSku($storeId);
|
357 |
$line->setItemCode($gwItemsSku ? $gwItemsSku : 'GwItemsAmount');
|
358 |
$line->setDescription('Gift Wrap Items Amount');
|
359 |
+
$line->setTaxCode($this->_getGiftTaxClassCode($storeId));
|
360 |
+
$line->setQty($item->getQty());
|
361 |
$line->setAmount($gwItemsAmount);
|
362 |
$line->setDiscounted(false);
|
363 |
|
364 |
$this->_lines[$lineNumber] = $line;
|
365 |
$this->_request->setLines($this->_lines);
|
366 |
$this->_lineToLineId[$lineNumber] = Mage::helper('avatax')->getGwItemsSku($storeId);
|
367 |
+
$this->_productGiftPair[$lineNumber] = $item->getSku();
|
368 |
|
369 |
return $lineNumber;
|
370 |
}
|
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->_getGiftTaxClassCode($storeId));
|
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 $item
|
408 |
* @return int
|
409 |
*/
|
410 |
protected function _addItemsInCart($item)
|
421 |
$this->_initProductCollection($items);
|
422 |
$this->_initTaxClassCollection($item->getAddress());
|
423 |
foreach ($items as $item) {
|
424 |
+
/** @var Mage_Sales_Model_Quote_Item $item */
|
425 |
+
$this->_newLine($item);
|
|
|
|
|
426 |
}
|
427 |
$this->_request->setLines($this->_lines);
|
428 |
}
|
438 |
*/
|
439 |
protected function _newLine($item)
|
440 |
{
|
441 |
+
$this->_addGwItemsAmount($item);
|
442 |
if ($this->isProductCalculated($item)) {
|
443 |
return false;
|
444 |
}
|
445 |
$product = $this->_getProductByProductId($item->getProductId());
|
446 |
+
$taxClass = $this->_getTaxClassCodeByProduct($product);
|
447 |
$price = $item->getBaseRowTotal() - $item->getBaseDiscountAmount();
|
448 |
$lineNumber = count($this->_lines);
|
449 |
$line = new Line();
|
453 |
$line->setQty($item->getQty());
|
454 |
$line->setAmount($price);
|
455 |
$line->setDiscounted($item->getDiscountAmount() ? true : false);
|
456 |
+
|
457 |
if ($taxClass) {
|
458 |
$line->setTaxCode($taxClass);
|
459 |
}
|
467 |
}
|
468 |
|
469 |
$this->_lines[$lineNumber] = $line;
|
470 |
+
$this->_lineToLineId[$lineNumber] = $item->getSku();
|
471 |
return $lineNumber;
|
472 |
}
|
473 |
|
474 |
/**
|
475 |
+
* Get item id/code for given line
|
476 |
*
|
477 |
+
* @param TaxLine $line
|
478 |
+
* @return string|int
|
|
|
479 |
*/
|
480 |
+
protected function _getItemIdByLine($line)
|
481 |
{
|
482 |
+
return isset($this->_productGiftPair[$line->getNo()])
|
483 |
+
? $this->_productGiftPair[$line->getNo()]
|
484 |
+
: $this->_lineToLineId[$line->getNo()];
|
485 |
+
}
|
|
|
486 |
|
487 |
+
/**
|
488 |
+
* Get tax array code for given line
|
489 |
+
*
|
490 |
+
* @param TaxLine $line
|
491 |
+
* @return string
|
492 |
+
*/
|
493 |
+
protected function _getTaxArrayCodeByLine($line)
|
494 |
+
{
|
495 |
+
return isset($this->_productGiftPair[$line->getNo()]) ? 'gw_items' : 'items';
|
496 |
}
|
497 |
}
|
app/code/community/OnePica/AvaTax/Model/Avatax/Invoice.php
CHANGED
@@ -42,7 +42,7 @@ class OnePica_AvaTax_Model_Avatax_Invoice extends OnePica_AvaTax_Model_Avatax_Ab
|
|
42 |
* Save order in AvaTax system
|
43 |
*
|
44 |
* @see OnePica_AvaTax_Model_Observer::salesOrderPlaceAfter()
|
45 |
-
* @param Mage_Sales_Model_Order_Invoice
|
46 |
* @param OnePica_AvaTax_Model_Records_Queue $queue
|
47 |
* @return bool
|
48 |
* @throws OnePica_AvaTax_Exception
|
@@ -52,9 +52,10 @@ class OnePica_AvaTax_Model_Avatax_Invoice extends OnePica_AvaTax_Model_Avatax_Ab
|
|
52 |
public function invoice($invoice, $queue)
|
53 |
{
|
54 |
$order = $invoice->getOrder();
|
55 |
-
$
|
56 |
-
$
|
57 |
-
$
|
|
|
58 |
|
59 |
$shippingAddress = ($order->getShippingAddress()) ? $order->getShippingAddress() : $order->getBillingAddress();
|
60 |
if (!$shippingAddress) {
|
@@ -78,10 +79,10 @@ class OnePica_AvaTax_Model_Avatax_Invoice extends OnePica_AvaTax_Model_Avatax_Ab
|
|
78 |
$this->_setOriginAddress($order->getStoreId());
|
79 |
$this->_setDestinationAddress($shippingAddress);
|
80 |
|
81 |
-
$this->_request->setDocDate(
|
82 |
-
$this->_request->setPaymentDate(
|
83 |
-
$this->_request->setTaxDate(
|
84 |
-
$this->_request->setStatusDate(
|
85 |
|
86 |
$configAction = Mage::getStoreConfig('tax/avatax/action', $order->getStoreId());
|
87 |
$commitAction = OnePica_AvaTax_Model_Config::ACTION_CALC_SUBMIT_COMMIT;
|
@@ -133,9 +134,10 @@ class OnePica_AvaTax_Model_Avatax_Invoice extends OnePica_AvaTax_Model_Avatax_Ab
|
|
133 |
public function creditmemo($creditmemo, $queue)
|
134 |
{
|
135 |
$order = $creditmemo->getOrder();
|
136 |
-
$
|
137 |
-
$
|
138 |
-
$
|
|
|
139 |
|
140 |
$shippingAddress = ($order->getShippingAddress()) ? $order->getShippingAddress() : $order->getBillingAddress();
|
141 |
if (!$shippingAddress) {
|
@@ -167,15 +169,15 @@ class OnePica_AvaTax_Model_Avatax_Invoice extends OnePica_AvaTax_Model_Avatax_Ab
|
|
167 |
|
168 |
// Set the tax date for calculation.
|
169 |
$override = new TaxOverride();
|
170 |
-
$override->setTaxDate(
|
171 |
$override->setTaxOverrideType(TaxOverrideType::$TaxDate);
|
172 |
$override->setReason('Credit memo - refund');
|
173 |
$this->_request->setTaxOverride($override);
|
174 |
|
175 |
-
$this->_request->setDocDate(
|
176 |
-
$this->_request->setPaymentDate(
|
177 |
-
$this->_request->setTaxDate(
|
178 |
-
$this->_request->setStatusDate(
|
179 |
|
180 |
$configAction = Mage::getStoreConfig('tax/avatax/action', $order->getStoreId());
|
181 |
$commitAction = OnePica_AvaTax_Model_Config::ACTION_CALC_SUBMIT_COMMIT;
|
@@ -195,7 +197,7 @@ class OnePica_AvaTax_Model_Avatax_Invoice extends OnePica_AvaTax_Model_Avatax_Ab
|
|
195 |
$message = Mage::helper('avatax')->__('Credit memo #%s was saved to AvaTax', $result->getDocCode());
|
196 |
$this->_addStatusHistoryComment($order, $message);
|
197 |
|
198 |
-
if ($result->getTotalTax() != ($creditmemo->
|
199 |
throw new OnePica_AvaTax_Model_Avatax_Exception_Unbalanced(
|
200 |
'Collected: ' . $creditmemo->getTaxAmount() . ', Actual: ' . $result->getTotalTax()
|
201 |
);
|
@@ -277,7 +279,7 @@ class OnePica_AvaTax_Model_Avatax_Invoice extends OnePica_AvaTax_Model_Avatax_Ab
|
|
277 |
$line->setNo($lineNumber);
|
278 |
$line->setItemCode(Mage::helper('avatax')->getGwOrderSku($storeId));
|
279 |
$line->setDescription('Gift Wrap Order Amount');
|
280 |
-
$line->setTaxCode($this->
|
281 |
$line->setQty(1);
|
282 |
$line->setAmount($amount);
|
283 |
$line->setDiscounted(false);
|
@@ -315,7 +317,7 @@ class OnePica_AvaTax_Model_Avatax_Invoice extends OnePica_AvaTax_Model_Avatax_Ab
|
|
315 |
$line->setNo($lineNumber);
|
316 |
$line->setItemCode(Mage::helper('avatax')->getGwItemsSku($storeId));
|
317 |
$line->setDescription('Gift Wrap Items Amount');
|
318 |
-
$line->setTaxCode($this->
|
319 |
$line->setQty(1);
|
320 |
$line->setAmount($amount);
|
321 |
$line->setDiscounted(false);
|
@@ -335,7 +337,7 @@ class OnePica_AvaTax_Model_Avatax_Invoice extends OnePica_AvaTax_Model_Avatax_Ab
|
|
335 |
*/
|
336 |
protected function _addGwPrintedCardAmount($object, $credit = false)
|
337 |
{
|
338 |
-
if (
|
339 |
return false;
|
340 |
}
|
341 |
|
@@ -353,7 +355,7 @@ class OnePica_AvaTax_Model_Avatax_Invoice extends OnePica_AvaTax_Model_Avatax_Ab
|
|
353 |
$line->setNo($lineNumber);
|
354 |
$line->setItemCode(Mage::helper('avatax')->getGwPrintedCardSku($storeId));
|
355 |
$line->setDescription('Gift Wrap Printed Card Amount');
|
356 |
-
$line->setTaxCode($this->
|
357 |
$line->setQty(1);
|
358 |
$line->setAmount($amount);
|
359 |
$line->setDiscounted(false);
|
@@ -429,7 +431,7 @@ class OnePica_AvaTax_Model_Avatax_Invoice extends OnePica_AvaTax_Model_Avatax_Ab
|
|
429 |
|
430 |
$storeId = $this->_retrieveStoreIdFromItem($item);
|
431 |
$product = $this->_getProductByProductId($item->getProductId());
|
432 |
-
$taxClass = $this->
|
433 |
$price = $item->getBaseRowTotal() - $item->getBaseDiscountAmount();
|
434 |
if ($credit) {
|
435 |
//@startSkipCommitHooks
|
@@ -477,4 +479,16 @@ class OnePica_AvaTax_Model_Avatax_Invoice extends OnePica_AvaTax_Model_Avatax_Ab
|
|
477 |
|
478 |
return $storeId;
|
479 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
480 |
}
|
42 |
* Save order in AvaTax system
|
43 |
*
|
44 |
* @see OnePica_AvaTax_Model_Observer::salesOrderPlaceAfter()
|
45 |
+
* @param Mage_Sales_Model_Order_Invoice $invoice
|
46 |
* @param OnePica_AvaTax_Model_Records_Queue $queue
|
47 |
* @return bool
|
48 |
* @throws OnePica_AvaTax_Exception
|
52 |
public function invoice($invoice, $queue)
|
53 |
{
|
54 |
$order = $invoice->getOrder();
|
55 |
+
$storeId = $order->getStoreId();
|
56 |
+
$invoiceDate = $this->_convertGmtDate($invoice->getCreatedAt(), $storeId);
|
57 |
+
$orderDate = $this->_convertGmtDate($order->getCreatedAt(), $storeId);
|
58 |
+
$statusDate = $this->_convertGmtDate($queue->getUpdatedAt(), $storeId);
|
59 |
|
60 |
$shippingAddress = ($order->getShippingAddress()) ? $order->getShippingAddress() : $order->getBillingAddress();
|
61 |
if (!$shippingAddress) {
|
79 |
$this->_setOriginAddress($order->getStoreId());
|
80 |
$this->_setDestinationAddress($shippingAddress);
|
81 |
|
82 |
+
$this->_request->setDocDate($invoiceDate);
|
83 |
+
$this->_request->setPaymentDate($invoiceDate);
|
84 |
+
$this->_request->setTaxDate($orderDate);
|
85 |
+
$this->_request->setStatusDate($statusDate);
|
86 |
|
87 |
$configAction = Mage::getStoreConfig('tax/avatax/action', $order->getStoreId());
|
88 |
$commitAction = OnePica_AvaTax_Model_Config::ACTION_CALC_SUBMIT_COMMIT;
|
134 |
public function creditmemo($creditmemo, $queue)
|
135 |
{
|
136 |
$order = $creditmemo->getOrder();
|
137 |
+
$storeId = $order->getStoreId();
|
138 |
+
$orderDate = $this->_convertGmtDate($order->getCreatedAt(), $storeId);
|
139 |
+
$statusDate = $this->_convertGmtDate($queue->getUpdatedAt(), $storeId);
|
140 |
+
$creditmemoDate = $this->_convertGmtDate($creditmemo->getCreatedAt(), $storeId);
|
141 |
|
142 |
$shippingAddress = ($order->getShippingAddress()) ? $order->getShippingAddress() : $order->getBillingAddress();
|
143 |
if (!$shippingAddress) {
|
169 |
|
170 |
// Set the tax date for calculation.
|
171 |
$override = new TaxOverride();
|
172 |
+
$override->setTaxDate($orderDate);
|
173 |
$override->setTaxOverrideType(TaxOverrideType::$TaxDate);
|
174 |
$override->setReason('Credit memo - refund');
|
175 |
$this->_request->setTaxOverride($override);
|
176 |
|
177 |
+
$this->_request->setDocDate($creditmemoDate);
|
178 |
+
$this->_request->setPaymentDate($creditmemoDate);
|
179 |
+
$this->_request->setTaxDate($orderDate);
|
180 |
+
$this->_request->setStatusDate($statusDate);
|
181 |
|
182 |
$configAction = Mage::getStoreConfig('tax/avatax/action', $order->getStoreId());
|
183 |
$commitAction = OnePica_AvaTax_Model_Config::ACTION_CALC_SUBMIT_COMMIT;
|
197 |
$message = Mage::helper('avatax')->__('Credit memo #%s was saved to AvaTax', $result->getDocCode());
|
198 |
$this->_addStatusHistoryComment($order, $message);
|
199 |
|
200 |
+
if ($result->getTotalTax() != ($creditmemo->getBaseTaxAmount() * -1)) {
|
201 |
throw new OnePica_AvaTax_Model_Avatax_Exception_Unbalanced(
|
202 |
'Collected: ' . $creditmemo->getTaxAmount() . ', Actual: ' . $result->getTotalTax()
|
203 |
);
|
279 |
$line->setNo($lineNumber);
|
280 |
$line->setItemCode(Mage::helper('avatax')->getGwOrderSku($storeId));
|
281 |
$line->setDescription('Gift Wrap Order Amount');
|
282 |
+
$line->setTaxCode($this->_getGiftTaxClassCode($storeId));
|
283 |
$line->setQty(1);
|
284 |
$line->setAmount($amount);
|
285 |
$line->setDiscounted(false);
|
317 |
$line->setNo($lineNumber);
|
318 |
$line->setItemCode(Mage::helper('avatax')->getGwItemsSku($storeId));
|
319 |
$line->setDescription('Gift Wrap Items Amount');
|
320 |
+
$line->setTaxCode($this->_getGiftTaxClassCode($storeId));
|
321 |
$line->setQty(1);
|
322 |
$line->setAmount($amount);
|
323 |
$line->setDiscounted(false);
|
337 |
*/
|
338 |
protected function _addGwPrintedCardAmount($object, $credit = false)
|
339 |
{
|
340 |
+
if (!$object->getGwPrintedCardBasePrice()) {
|
341 |
return false;
|
342 |
}
|
343 |
|
355 |
$line->setNo($lineNumber);
|
356 |
$line->setItemCode(Mage::helper('avatax')->getGwPrintedCardSku($storeId));
|
357 |
$line->setDescription('Gift Wrap Printed Card Amount');
|
358 |
+
$line->setTaxCode($this->_getGiftTaxClassCode($storeId));
|
359 |
$line->setQty(1);
|
360 |
$line->setAmount($amount);
|
361 |
$line->setDiscounted(false);
|
431 |
|
432 |
$storeId = $this->_retrieveStoreIdFromItem($item);
|
433 |
$product = $this->_getProductByProductId($item->getProductId());
|
434 |
+
$taxClass = $this->_getTaxClassCodeByProduct($product);
|
435 |
$price = $item->getBaseRowTotal() - $item->getBaseDiscountAmount();
|
436 |
if ($credit) {
|
437 |
//@startSkipCommitHooks
|
479 |
|
480 |
return $storeId;
|
481 |
}
|
482 |
+
|
483 |
+
/**
|
484 |
+
* Retrieve converted date taking into account the current time zone and store.
|
485 |
+
*
|
486 |
+
* @param string $gmt
|
487 |
+
* @param int $storeId
|
488 |
+
* @return string
|
489 |
+
*/
|
490 |
+
protected function _convertGmtDate($gmt, $storeId)
|
491 |
+
{
|
492 |
+
return Mage::app()->getLocale()->storeDate($storeId, $gmt)->toString(Varien_Date::DATE_INTERNAL_FORMAT);
|
493 |
+
}
|
494 |
}
|
app/code/community/OnePica/AvaTax/Model/Sales/Quote/Address/Total/Tax.php
CHANGED
@@ -66,10 +66,13 @@ class OnePica_AvaTax_Model_Sales_Quote_Address_Total_Tax extends Mage_Sales_Mode
|
|
66 |
$item->setAddress($address);
|
67 |
$baseAmount = $calculator->getItemTax($item);
|
68 |
|
69 |
-
$
|
70 |
-
$
|
|
|
|
|
|
|
71 |
|
72 |
-
$amount =
|
73 |
$percent = $calculator->getItemRate($item);
|
74 |
|
75 |
$item->setTaxAmount($amount);
|
@@ -87,19 +90,20 @@ class OnePica_AvaTax_Model_Sales_Quote_Address_Total_Tax extends Mage_Sales_Mode
|
|
87 |
if (!$calculator->isProductCalculated($item)) {
|
88 |
$this->_addAmount($amount);
|
89 |
$this->_addBaseAmount($baseAmount);
|
90 |
-
$this->_addAmount($giftTaxAmount);
|
91 |
-
$this->_addBaseAmount($giftBaseTaxAmount);
|
92 |
}
|
|
|
|
|
93 |
}
|
94 |
|
95 |
if ($address->getAddressType() == Mage_Sales_Model_Quote_Address::TYPE_SHIPPING
|
96 |
-
|
|
|
97 |
$shippingItem = new Varien_Object();
|
98 |
-
$shippingItem->
|
99 |
$shippingItem->setProductId(Mage::helper('avatax')->getShippingSku($store->getId()));
|
100 |
$shippingItem->setAddress($address);
|
101 |
$baseShippingTax = $calculator->getItemTax($shippingItem);
|
102 |
-
$shippingTax =
|
103 |
|
104 |
$shippingAmt = $address->getTotalAmount('shipping');
|
105 |
$baseShippingAmt = $address->getBaseTotalAmount('shipping');
|
@@ -118,11 +122,11 @@ class OnePica_AvaTax_Model_Sales_Quote_Address_Total_Tax extends Mage_Sales_Mode
|
|
118 |
|
119 |
if ($address->getGwPrice() > 0) {
|
120 |
$gwOrderItem = new Varien_Object();
|
121 |
-
$gwOrderItem->
|
122 |
$gwOrderItem->setProductId(Mage::helper('avatax')->getGwOrderSku($store->getId()));
|
123 |
$gwOrderItem->setAddress($address);
|
124 |
$baseGwOrderTax = $calculator->getItemTax($gwOrderItem);
|
125 |
-
$gwOrderTax =
|
126 |
|
127 |
$address->setGwBaseTaxAmount($baseGwOrderTax);
|
128 |
$address->setGwTaxAmount($gwOrderTax);
|
@@ -133,16 +137,14 @@ class OnePica_AvaTax_Model_Sales_Quote_Address_Total_Tax extends Mage_Sales_Mode
|
|
133 |
|
134 |
if ($address->getGwAddPrintedCard()) {
|
135 |
$gwPrintedCardItem = new Varien_Object();
|
136 |
-
$gwPrintedCardItem->
|
137 |
$gwPrintedCardItem->setProductId(Mage::helper('avatax')->getGwPrintedCardSku($store->getId()));
|
138 |
$gwPrintedCardItem->setAddress($address);
|
139 |
$baseGwPrintedCardTax = $calculator->getItemTax($gwPrintedCardItem);
|
140 |
-
$gwPrintedCardTax =
|
141 |
|
142 |
-
$address->setGwPrintedCardBaseTaxAmount(
|
143 |
-
|
144 |
-
);
|
145 |
-
$address->setGwPrintedCardTaxAmount($address->getGwPrintedCardPrice() + $gwPrintedCardTax);
|
146 |
|
147 |
$this->_addAmount($gwPrintedCardTax);
|
148 |
$this->_addBaseAmount($baseGwPrintedCardTax);
|
@@ -302,4 +304,14 @@ class OnePica_AvaTax_Model_Sales_Quote_Address_Total_Tax extends Mage_Sales_Mode
|
|
302 |
}
|
303 |
return $this->_address;
|
304 |
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
305 |
}
|
66 |
$item->setAddress($address);
|
67 |
$baseAmount = $calculator->getItemTax($item);
|
68 |
|
69 |
+
$giftBaseTaxTotalAmount = $calculator->getItemGiftTax($item);
|
70 |
+
$giftTaxTotalAmount = $store->convertPrice($giftBaseTaxTotalAmount);
|
71 |
+
$giftBaseTaxAmount = $this->_getDataHelper()
|
72 |
+
->roundUp($giftBaseTaxTotalAmount / $item->getQty(), 2);
|
73 |
+
$giftTaxAmount = $store->convertPrice($giftBaseTaxAmount);
|
74 |
|
75 |
+
$amount = $store->convertPrice($baseAmount);
|
76 |
$percent = $calculator->getItemRate($item);
|
77 |
|
78 |
$item->setTaxAmount($amount);
|
90 |
if (!$calculator->isProductCalculated($item)) {
|
91 |
$this->_addAmount($amount);
|
92 |
$this->_addBaseAmount($baseAmount);
|
|
|
|
|
93 |
}
|
94 |
+
$this->_addAmount($giftTaxTotalAmount);
|
95 |
+
$this->_addBaseAmount($giftBaseTaxTotalAmount);
|
96 |
}
|
97 |
|
98 |
if ($address->getAddressType() == Mage_Sales_Model_Quote_Address::TYPE_SHIPPING
|
99 |
+
|| $address->getUseForShipping()
|
100 |
+
) {
|
101 |
$shippingItem = new Varien_Object();
|
102 |
+
$shippingItem->setSku(Mage::helper('avatax')->getShippingSku($store->getId()));
|
103 |
$shippingItem->setProductId(Mage::helper('avatax')->getShippingSku($store->getId()));
|
104 |
$shippingItem->setAddress($address);
|
105 |
$baseShippingTax = $calculator->getItemTax($shippingItem);
|
106 |
+
$shippingTax = $store->convertPrice($baseShippingTax);
|
107 |
|
108 |
$shippingAmt = $address->getTotalAmount('shipping');
|
109 |
$baseShippingAmt = $address->getBaseTotalAmount('shipping');
|
122 |
|
123 |
if ($address->getGwPrice() > 0) {
|
124 |
$gwOrderItem = new Varien_Object();
|
125 |
+
$gwOrderItem->setSku(Mage::helper('avatax')->getGwOrderSku($store->getId()));
|
126 |
$gwOrderItem->setProductId(Mage::helper('avatax')->getGwOrderSku($store->getId()));
|
127 |
$gwOrderItem->setAddress($address);
|
128 |
$baseGwOrderTax = $calculator->getItemTax($gwOrderItem);
|
129 |
+
$gwOrderTax = $store->convertPrice($baseGwOrderTax);
|
130 |
|
131 |
$address->setGwBaseTaxAmount($baseGwOrderTax);
|
132 |
$address->setGwTaxAmount($gwOrderTax);
|
137 |
|
138 |
if ($address->getGwAddPrintedCard()) {
|
139 |
$gwPrintedCardItem = new Varien_Object();
|
140 |
+
$gwPrintedCardItem->setSku(Mage::helper('avatax')->getGwPrintedCardSku($store->getId()));
|
141 |
$gwPrintedCardItem->setProductId(Mage::helper('avatax')->getGwPrintedCardSku($store->getId()));
|
142 |
$gwPrintedCardItem->setAddress($address);
|
143 |
$baseGwPrintedCardTax = $calculator->getItemTax($gwPrintedCardItem);
|
144 |
+
$gwPrintedCardTax = $store->convertPrice($baseGwPrintedCardTax);
|
145 |
|
146 |
+
$address->setGwPrintedCardBaseTaxAmount($baseGwPrintedCardTax);
|
147 |
+
$address->setGwPrintedCardTaxAmount($gwPrintedCardTax);
|
|
|
|
|
148 |
|
149 |
$this->_addAmount($gwPrintedCardTax);
|
150 |
$this->_addBaseAmount($baseGwPrintedCardTax);
|
304 |
}
|
305 |
return $this->_address;
|
306 |
}
|
307 |
+
|
308 |
+
/**
|
309 |
+
* Get data helper
|
310 |
+
*
|
311 |
+
* @return \OnePica_AvaTax_Helper_Data
|
312 |
+
*/
|
313 |
+
protected function _getDataHelper()
|
314 |
+
{
|
315 |
+
return Mage::helper('avatax');
|
316 |
+
}
|
317 |
}
|
app/code/community/OnePica/AvaTax/etc/config.xml
CHANGED
@@ -19,7 +19,7 @@
|
|
19 |
<config>
|
20 |
<modules>
|
21 |
<OnePica_AvaTax>
|
22 |
-
<version>2.6.
|
23 |
</OnePica_AvaTax>
|
24 |
</modules>
|
25 |
<global>
|
19 |
<config>
|
20 |
<modules>
|
21 |
<OnePica_AvaTax>
|
22 |
+
<version>2.6.1.4</version>
|
23 |
</OnePica_AvaTax>
|
24 |
</modules>
|
25 |
<global>
|
package.xml
CHANGED
@@ -1,7 +1,7 @@
|
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>OnePica_AvaTax</name>
|
4 |
-
<version>2.6.
|
5 |
<stability>stable</stability>
|
6 |
<license>Open Software License (OSL 3.0)</license>
|
7 |
<channel>community</channel>
|
@@ -19,13 +19,17 @@ Released as a commercial extension, this software will not work unless you have
|
|
19 |

|
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
|
22 |
-
Fixed
|
23 |
-
Fixed
|
24 |
-
Fixed
|
|
|
|
|
|
|
|
|
25 |
<authors><author><name>Rostyslav Redko</name><user>marketing</user><email>avalara@onepica.com</email></author></authors>
|
26 |
-
<date>2015-
|
27 |
-
<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>
|
1 |
<?xml version="1.0"?>
|
2 |
<package>
|
3 |
<name>OnePica_AvaTax</name>
|
4 |
+
<version>2.6.1</version>
|
5 |
<stability>stable</stability>
|
6 |
<license>Open Software License (OSL 3.0)</license>
|
7 |
<channel>community</channel>
|
19 |

|
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
|
22 |
+
Fixed issue with multiple requests to Avalara
|
23 |
+
Fixed tax class for gifting options
|
24 |
+
Fixed tax calculation for gift options
|
25 |
+
Fixed timezone issues when send invoice/creditmemo to Avalara
|
26 |
+
Fixed company value code send when create order in admin for non-default store
|
27 |
+
Fixed vat id value for checkout with multiple addresses
|
28 |
+
Fixed currency conversion for non default store</notes>
|
29 |
<authors><author><name>Rostyslav Redko</name><user>marketing</user><email>avalara@onepica.com</email></author></authors>
|
30 |
+
<date>2015-10-01</date>
|
31 |
+
<time>09:43:19</time>
|
32 |
+
<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="bd631c0e65b789d253d1abf3a4532326"/><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="b8c44571e04c86a3d9aa2e96c69e71fa"/><file name="Address.php" hash="7c269d14d30b2faa1fbce281e6047889"/><file name="Estimate.php" hash="74481f4cc1fb34efc32fc8b824498308"/><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="289c9f884ff20435018ff993ddd66518"/><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="cf83ec631fc356095f7e1ce6f581adaf"/></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="c8b48a3aec5cb3170ebf0dcdc65286fc"/><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>
|
33 |
<compatible/>
|
34 |
<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>
|
35 |
</package>
|