diff --git a/app/code/core/Mage/Sales/Model/Order/Shipment/Api.php b/app/code/core/Mage/Sales/Model/Order/Shipment/Api.php
index ff5de11a574..9f5b284732c 100644
--- a/app/code/core/Mage/Sales/Model/Order/Shipment/Api.php
+++ b/app/code/core/Mage/Sales/Model/Order/Shipment/Api.php
@@ -173,9 +173,10 @@ public function create(
* @param string $carrier
* @param string $title
* @param string $trackNumber
+ * @param null|float $weight
* @return int
*/
- public function addTrack($shipmentIncrementId, $carrier, $title, $trackNumber)
+ public function addTrack($shipmentIncrementId, $carrier, $title, $trackNumber, $weight = null)
{
$shipment = Mage::getModel('sales/order_shipment')->loadByIncrementId($shipmentIncrementId);
@@ -194,6 +195,10 @@ public function addTrack($shipmentIncrementId, $carrier, $title, $trackNumber)
->setCarrierCode($carrier)
->setTitle($title);
+ if (!empty($weight)) {
+ $track->setWeight($weight);
+ }
+
$shipment->addTrack($track);
try {
diff --git a/app/code/core/Mage/Sales/etc/wsdl.xml b/app/code/core/Mage/Sales/etc/wsdl.xml
index 742d637c77c..fd19f3ea2b0 100644
--- a/app/code/core/Mage/Sales/etc/wsdl.xml
+++ b/app/code/core/Mage/Sales/etc/wsdl.xml
@@ -843,6 +843,7 @@
+
diff --git a/app/code/core/Mage/Sales/etc/wsi.xml b/app/code/core/Mage/Sales/etc/wsi.xml
index c237ea0ab81..f13681cf9d8 100644
--- a/app/code/core/Mage/Sales/etc/wsi.xml
+++ b/app/code/core/Mage/Sales/etc/wsi.xml
@@ -881,6 +881,7 @@
+