diff --git a/composer.json b/composer.json
index 1bcb7d0527e11b45d3adc0bd1333b9410ce29bd6..00bd5a1d9e70f1ed981bd88cdfa6d19ed4ac3399 100755
--- a/composer.json
+++ b/composer.json
@@ -1,7 +1,7 @@
 {
   "name": "adi-ia/cbs-techstore-client-php",
   "description": "A PHP client used to connect with the CBS API and perform requests",
-  "version": "6.3.0",
+  "version": "7.0.0",
   "license": "Apache-2.0",
   "homepage": "https://wiki.doit.wisc.edu/confluence/display/ADIIA/CBS",
   "authors": [
diff --git a/composer.lock b/composer.lock
index 5c45f4a126ff95a2de89503bfb1a75abd53d51ed..5d6e6fc65b680c63de9e7e41a947d14b4ea0a09d 100644
--- a/composer.lock
+++ b/composer.lock
@@ -4,8 +4,8 @@
         "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file",
         "This file is @generated automatically"
     ],
-    "hash": "46951512b63bdd685a7f58dbf3b3a0cc",
-    "content-hash": "a413217773afbe73efb4c668c5b2a19b",
+    "hash": "15c8a15761d618bf7c1eab63837dd8b9",
+    "content-hash": "4b2326676b887cd516e29d4b96d6513a",
     "packages": [
         {
             "name": "moneyphp/money",
@@ -495,22 +495,22 @@
         },
         {
             "name": "phpdocumentor/reflection-docblock",
-            "version": "3.1.1",
+            "version": "3.2.2",
             "source": {
                 "type": "git",
                 "url": "https://github.com/phpDocumentor/ReflectionDocBlock.git",
-                "reference": "8331b5efe816ae05461b7ca1e721c01b46bafb3e"
+                "reference": "4aada1f93c72c35e22fb1383b47fee43b8f1d157"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/8331b5efe816ae05461b7ca1e721c01b46bafb3e",
-                "reference": "8331b5efe816ae05461b7ca1e721c01b46bafb3e",
+                "url": "https://api.github.com/repos/phpDocumentor/ReflectionDocBlock/zipball/4aada1f93c72c35e22fb1383b47fee43b8f1d157",
+                "reference": "4aada1f93c72c35e22fb1383b47fee43b8f1d157",
                 "shasum": ""
             },
             "require": {
                 "php": ">=5.5",
                 "phpdocumentor/reflection-common": "^1.0@dev",
-                "phpdocumentor/type-resolver": "^0.2.0",
+                "phpdocumentor/type-resolver": "^0.3.0",
                 "webmozart/assert": "^1.0"
             },
             "require-dev": {
@@ -536,24 +536,24 @@
                 }
             ],
             "description": "With this component, a library can provide support for annotations via DocBlocks or otherwise retrieve information that is embedded in a DocBlock.",
-            "time": "2016-09-30 07:12:33"
+            "time": "2017-08-08 06:39:58"
         },
         {
             "name": "phpdocumentor/type-resolver",
-            "version": "0.2.1",
+            "version": "0.3.0",
             "source": {
                 "type": "git",
                 "url": "https://github.com/phpDocumentor/TypeResolver.git",
-                "reference": "e224fb2ea2fba6d3ad6fdaef91cd09a172155ccb"
+                "reference": "fb3933512008d8162b3cdf9e18dba9309b7c3773"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/e224fb2ea2fba6d3ad6fdaef91cd09a172155ccb",
-                "reference": "e224fb2ea2fba6d3ad6fdaef91cd09a172155ccb",
+                "url": "https://api.github.com/repos/phpDocumentor/TypeResolver/zipball/fb3933512008d8162b3cdf9e18dba9309b7c3773",
+                "reference": "fb3933512008d8162b3cdf9e18dba9309b7c3773",
                 "shasum": ""
             },
             "require": {
-                "php": ">=5.5",
+                "php": "^5.5 || ^7.0",
                 "phpdocumentor/reflection-common": "^1.0"
             },
             "require-dev": {
@@ -583,7 +583,7 @@
                     "email": "me@mikevanriel.com"
                 }
             ],
-            "time": "2016-11-25 06:54:22"
+            "time": "2017-06-03 08:32:36"
         },
         {
             "name": "phpspec/prophecy",
@@ -850,29 +850,29 @@
         },
         {
             "name": "phpunit/php-token-stream",
-            "version": "1.4.11",
+            "version": "2.0.0",
             "source": {
                 "type": "git",
                 "url": "https://github.com/sebastianbergmann/php-token-stream.git",
-                "reference": "e03f8f67534427a787e21a385a67ec3ca6978ea7"
+                "reference": "ecb0b2cdaa0add708fe6f329ef65ae0c5225130b"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/e03f8f67534427a787e21a385a67ec3ca6978ea7",
-                "reference": "e03f8f67534427a787e21a385a67ec3ca6978ea7",
+                "url": "https://api.github.com/repos/sebastianbergmann/php-token-stream/zipball/ecb0b2cdaa0add708fe6f329ef65ae0c5225130b",
+                "reference": "ecb0b2cdaa0add708fe6f329ef65ae0c5225130b",
                 "shasum": ""
             },
             "require": {
                 "ext-tokenizer": "*",
-                "php": ">=5.3.3"
+                "php": "^7.0"
             },
             "require-dev": {
-                "phpunit/phpunit": "~4.2"
+                "phpunit/phpunit": "^6.2.4"
             },
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-master": "1.4-dev"
+                    "dev-master": "2.0-dev"
                 }
             },
             "autoload": {
@@ -895,7 +895,7 @@
             "keywords": [
                 "tokenizer"
             ],
-            "time": "2017-02-27 10:12:30"
+            "time": "2017-08-03 14:17:41"
         },
         {
             "name": "phpunit/phpunit",
@@ -977,16 +977,16 @@
         },
         {
             "name": "phpunit/phpunit-mock-objects",
-            "version": "3.4.3",
+            "version": "3.4.4",
             "source": {
                 "type": "git",
                 "url": "https://github.com/sebastianbergmann/phpunit-mock-objects.git",
-                "reference": "3ab72b65b39b491e0c011e2e09bb2206c2aa8e24"
+                "reference": "a23b761686d50a560cc56233b9ecf49597cc9118"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/3ab72b65b39b491e0c011e2e09bb2206c2aa8e24",
-                "reference": "3ab72b65b39b491e0c011e2e09bb2206c2aa8e24",
+                "url": "https://api.github.com/repos/sebastianbergmann/phpunit-mock-objects/zipball/a23b761686d50a560cc56233b9ecf49597cc9118",
+                "reference": "a23b761686d50a560cc56233b9ecf49597cc9118",
                 "shasum": ""
             },
             "require": {
@@ -1032,7 +1032,7 @@
                 "mock",
                 "xunit"
             ],
-            "time": "2016-12-08 20:27:08"
+            "time": "2017-06-30 09:13:00"
         },
         {
             "name": "psr/log",
@@ -1192,23 +1192,23 @@
         },
         {
             "name": "sebastian/diff",
-            "version": "1.4.1",
+            "version": "1.4.3",
             "source": {
                 "type": "git",
                 "url": "https://github.com/sebastianbergmann/diff.git",
-                "reference": "13edfd8706462032c2f52b4b862974dd46b71c9e"
+                "reference": "7f066a26a962dbe58ddea9f72a4e82874a3975a4"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/13edfd8706462032c2f52b4b862974dd46b71c9e",
-                "reference": "13edfd8706462032c2f52b4b862974dd46b71c9e",
+                "url": "https://api.github.com/repos/sebastianbergmann/diff/zipball/7f066a26a962dbe58ddea9f72a4e82874a3975a4",
+                "reference": "7f066a26a962dbe58ddea9f72a4e82874a3975a4",
                 "shasum": ""
             },
             "require": {
-                "php": ">=5.3.3"
+                "php": "^5.3.3 || ^7.0"
             },
             "require-dev": {
-                "phpunit/phpunit": "~4.8"
+                "phpunit/phpunit": "^4.8.35 || ^5.7 || ^6.0"
             },
             "type": "library",
             "extra": {
@@ -1240,7 +1240,7 @@
             "keywords": [
                 "diff"
             ],
-            "time": "2015-12-08 07:14:41"
+            "time": "2017-05-22 07:24:03"
         },
         {
             "name": "sebastian/environment",
@@ -1596,16 +1596,16 @@
         },
         {
             "name": "symfony/options-resolver",
-            "version": "v2.8.19",
+            "version": "v2.8.26",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/options-resolver.git",
-                "reference": "4aed5e68824e32d72203ec8a3195d6afd6b22a5d"
+                "reference": "55bf349a3395afad81a369d57b3b99c373fbbdf5"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/options-resolver/zipball/4aed5e68824e32d72203ec8a3195d6afd6b22a5d",
-                "reference": "4aed5e68824e32d72203ec8a3195d6afd6b22a5d",
+                "url": "https://api.github.com/repos/symfony/options-resolver/zipball/55bf349a3395afad81a369d57b3b99c373fbbdf5",
+                "reference": "55bf349a3395afad81a369d57b3b99c373fbbdf5",
                 "shasum": ""
             },
             "require": {
@@ -1646,20 +1646,20 @@
                 "configuration",
                 "options"
             ],
-            "time": "2017-03-21 21:39:01"
+            "time": "2017-04-12 14:07:15"
         },
         {
             "name": "symfony/yaml",
-            "version": "v3.2.7",
+            "version": "v3.3.6",
             "source": {
                 "type": "git",
                 "url": "https://github.com/symfony/yaml.git",
-                "reference": "62b4cdb99d52cb1ff253c465eb1532a80cebb621"
+                "reference": "ddc23324e6cfe066f3dd34a37ff494fa80b617ed"
             },
             "dist": {
                 "type": "zip",
-                "url": "https://api.github.com/repos/symfony/yaml/zipball/62b4cdb99d52cb1ff253c465eb1532a80cebb621",
-                "reference": "62b4cdb99d52cb1ff253c465eb1532a80cebb621",
+                "url": "https://api.github.com/repos/symfony/yaml/zipball/ddc23324e6cfe066f3dd34a37ff494fa80b617ed",
+                "reference": "ddc23324e6cfe066f3dd34a37ff494fa80b617ed",
                 "shasum": ""
             },
             "require": {
@@ -1674,7 +1674,7 @@
             "type": "library",
             "extra": {
                 "branch-alias": {
-                    "dev-master": "3.2-dev"
+                    "dev-master": "3.3-dev"
                 }
             },
             "autoload": {
@@ -1701,7 +1701,7 @@
             ],
             "description": "Symfony Yaml Component",
             "homepage": "https://symfony.com",
-            "time": "2017-03-20 09:45:15"
+            "time": "2017-07-23 12:43:26"
         },
         {
             "name": "webmozart/assert",
diff --git a/src/main/edu/wisc/services/cbs/order/line/OrderLine.php b/src/main/edu/wisc/services/cbs/order/line/OrderLine.php
index 7e6cbaba5d852428f6fd97766d35860e11806771..020c61568d840e5a19b8699cb498f053ed910d97 100644
--- a/src/main/edu/wisc/services/cbs/order/line/OrderLine.php
+++ b/src/main/edu/wisc/services/cbs/order/line/OrderLine.php
@@ -37,6 +37,12 @@ class OrderLine extends MagentoOrder
     /** @var Money  price per unit */
     private $unitPrice;
 
+    /** @var Money discount price */
+    private $unitPromoPrice;
+
+    /** @var string name of discount */
+    private $promoDiscountName;
+
     /** @var int  (optional) */
     private $bundleId;
 
@@ -556,4 +562,40 @@ class OrderLine extends MagentoOrder
         return $this;
     }
 
+    /**
+     * @return Money
+     */
+    public function getUnitPromoPrice()
+    {
+        return $this->unitPromoPrice;
+    }
+
+    /**
+     * @param Money $unitPromoPrice
+     * @return OrderLine
+     */
+    public function setUnitPromoPrice($unitPromoPrice)
+    {
+        $this->unitPromoPrice = $unitPromoPrice;
+        return $this;
+    }
+
+    /**
+     * @return string
+     */
+    public function getPromoDiscountName()
+    {
+        return $this->promoDiscountName;
+    }
+
+    /**
+     * @param string $promoDiscountName
+     * @return OrderLine
+     */
+    public function setPromoDiscountName($promoDiscountName)
+    {
+        $this->promoDiscountName = $promoDiscountName;
+        return $this;
+    }
+
 }
diff --git a/src/main/edu/wisc/services/cbs/order/line/OrderLineInputParametersMapper.php b/src/main/edu/wisc/services/cbs/order/line/OrderLineInputParametersMapper.php
index d61f4e73b45bea9a442b3ac814912f7796551311..392bbe9f69324f21003b4985c1dc3d888f236fa4 100644
--- a/src/main/edu/wisc/services/cbs/order/line/OrderLineInputParametersMapper.php
+++ b/src/main/edu/wisc/services/cbs/order/line/OrderLineInputParametersMapper.php
@@ -14,20 +14,23 @@ class OrderLineInputParametersMapper
     public static function toInputParameters(OrderLine $lineItem)
     {
         return (new InputParameters(
+            0.0,
             "",
+            0.0,
             "",
             "",
+            0.0,
+            0.0,
+            0.0,
+            0.0,
             "",
-            "",
-            "",
-            "",
-            "",
-            "",
-            "",
+            0.0,
+            0.0,
             "",
             new \DateTime(),
             "",
             "",
+            0.0,
             "",
             "",
             "",
@@ -36,10 +39,9 @@ class OrderLineInputParametersMapper
             "",
             "",
             "",
+            0.0,
             "",
-            "",
-            "",
-            "",
+            0.0,
             ""
         ))
             ->setP_ORDER_NUMBER($lineItem->getOrderNumber())
@@ -51,6 +53,8 @@ class OrderLineInputParametersMapper
             ->setP_ITEM_NUMBER($lineItem->getItemNumber())
             ->setP_QUANTITY($lineItem->getQuantity())
             ->setP_UNIT_PRICE(MoneyConversion::convertMoneyToFloat($lineItem->getUnitPrice()))
+            ->setP_UNIT_PROMO_PRICE(MoneyConversion::convertMoneyToFloat($lineItem->getUnitPromoPrice()))
+            ->setP_PROMO_DISCOUNT_NAME($lineItem->getPromoDiscountName())
             ->setP_BUNDLE_ID($lineItem->getBundleId())
             ->setP_BUNDLE_LINE_ID($lineItem->getBundleLineId())
             ->setP_DELIVERY_METHOD($lineItem->getDeliveryMethod())
diff --git a/src/main/edu/wisc/services/cbs/order/line/SoapOrderLineService.php b/src/main/edu/wisc/services/cbs/order/line/SoapOrderLineService.php
index 31c87ac4cf7fea75b20e1aedfd6870ffa17b3fb8..7eb2020c8874af4cab1aa595d54857dffebfd992 100644
--- a/src/main/edu/wisc/services/cbs/order/line/SoapOrderLineService.php
+++ b/src/main/edu/wisc/services/cbs/order/line/SoapOrderLineService.php
@@ -4,22 +4,22 @@ namespace edu\wisc\services\cbs\order\line;
 
 use edu\wisc\services\cbs\api\SoapService;
 use edu\wisc\services\cbs\common\WssSoapHeaderBuilder;
-use edu\wisc\services\cbs\order\line\generated\DOIT_SOA_ORDER_IFACE_L_V2_Service;
+use edu\wisc\services\cbs\order\line\generated\DOIT_SOA_ORDER_IFACE_L_V3_Service;
 use edu\wisc\services\cbs\order\OrderServiceResponse;
 
 class SoapOrderLineService implements SoapService, OrderLineService
 {
 
     /** URL for QA WSDL */
-    const CBQA12 = 'http://pegasus.doit.wisc.edu:8018/webservices/SOAProvider/plsql/doit_soa_order_iface_l_v2/?wsdl';
+    const CBQA12 = 'http://pegasus.doit.wisc.edu:8018/webservices/SOAProvider/plsql/doit_soa_order_iface_l_v3/?wsdl';
     /** URL for DV WSDL */
-    const CBDV12 = 'http://pegasus.doit.wisc.edu:8016/webservices/SOAProvider/plsql/doit_soa_order_iface_l_v2/?wsdl';
+    const CBDV12 = 'http://pegasus.doit.wisc.edu:8016/webservices/SOAProvider/plsql/doit_soa_order_iface_l_v3/?wsdl';
     /** URL for CP WSDL */
-    const CBCP12 = 'http://pegasus.doit.wisc.edu:8015/webservices/SOAProvider/plsql/doit_soa_order_iface_l_v2/?wsdl';
+    const CBCP12 = 'http://pegasus.doit.wisc.edu:8015/webservices/SOAProvider/plsql/doit_soa_order_iface_l_v3/?wsdl';
     /** URL for PROD WSDL */
-    const CBSP = 'http://galactica.doit.wisc.edu:8001/webservices/SOAProvider/plsql/doit_soa_order_iface_l_v2/?wsdl';
+    const CBSP = 'http://galactica.doit.wisc.edu:8001/webservices/SOAProvider/plsql/doit_soa_order_iface_l_v3/?wsdl';
 
-    /** @var DOIT_SOA_ORDER_IFACE_L_V2_Service */
+    /** @var DOIT_SOA_ORDER_IFACE_L_V3_Service */
     private $soapClient;
 
     /**
@@ -31,13 +31,13 @@ class SoapOrderLineService implements SoapService, OrderLineService
             $this->soapClient = $lineSoapClient;
             return;
         } else if ($wsdlPath !== null) {
-            $this->soapClient = new DOIT_SOA_ORDER_IFACE_L_V2_Service(
+            $this->soapClient = new DOIT_SOA_ORDER_IFACE_L_V3_Service(
                 [],
                 $wsdlPath
             );
             $this->soapClient->__setSoapHeaders(WssSoapHeaderBuilder::buildUsernameToken($username, $password));
         } else {
-            $this->soapClient = new DOIT_SOA_ORDER_IFACE_L_V2_Service(
+            $this->soapClient = new DOIT_SOA_ORDER_IFACE_L_V3_Service(
                 [],
                 __DIR__ . '/../../../../../../resources/doit_soa_order_iface_l_v2.xml'
             );
diff --git a/src/main/edu/wisc/services/cbs/order/line/generated/DOIT_SOA_ORDER_IFACE_L_V2_Service.php b/src/main/edu/wisc/services/cbs/order/line/generated/DOIT_SOA_ORDER_IFACE_L_V3_Service.php
similarity index 90%
rename from src/main/edu/wisc/services/cbs/order/line/generated/DOIT_SOA_ORDER_IFACE_L_V2_Service.php
rename to src/main/edu/wisc/services/cbs/order/line/generated/DOIT_SOA_ORDER_IFACE_L_V3_Service.php
index 6aabf6824686c4b7b68ebeaa34591aad9a1be7bc..02759d05658d0e6d0bc82ddd92d0d35bdf8b4e23 100644
--- a/src/main/edu/wisc/services/cbs/order/line/generated/DOIT_SOA_ORDER_IFACE_L_V2_Service.php
+++ b/src/main/edu/wisc/services/cbs/order/line/generated/DOIT_SOA_ORDER_IFACE_L_V3_Service.php
@@ -2,7 +2,7 @@
 
 namespace edu\wisc\services\cbs\order\line\generated;
 
-class DOIT_SOA_ORDER_IFACE_L_V2_Service extends \SoapClient
+class DOIT_SOA_ORDER_IFACE_L_V3_Service extends \SoapClient
 {
 
     /**
@@ -29,7 +29,7 @@ class DOIT_SOA_ORDER_IFACE_L_V2_Service extends \SoapClient
       'features' => 1,
     ), $options);
       if (!$wsdl) {
-        $wsdl = 'src/main/resources/doit_soa_order_iface_l_v2.xml';
+        $wsdl = 'src/main/resources/doit_soa_order_iface_l_v3.xml';
       }
       parent::__construct($wsdl, $options);
     }
diff --git a/src/main/edu/wisc/services/cbs/order/line/generated/InputParameters.php b/src/main/edu/wisc/services/cbs/order/line/generated/InputParameters.php
index 14d4ac0b92099c96ce3e30e908bc72c093652bbc..e68270ef60620890f31ebcfae421c9bb3f19ffe3 100644
--- a/src/main/edu/wisc/services/cbs/order/line/generated/InputParameters.php
+++ b/src/main/edu/wisc/services/cbs/order/line/generated/InputParameters.php
@@ -45,6 +45,16 @@ class InputParameters
      */
     protected $P_UNIT_PRICE = null;
 
+    /**
+     * @var float $P_UNIT_PROMO_PRICE
+     */
+    protected $P_UNIT_PROMO_PRICE = null;
+
+    /**
+     * @var string $P_PROMO_DISCOUNT_NAME
+     */
+    protected $P_PROMO_DISCOUNT_NAME = null;
+
     /**
      * @var float $P_BUNDLE_ID
      */
@@ -149,6 +159,8 @@ class InputParameters
      * @param float $P_ITEM_NUMBER
      * @param float $P_QUANTITY
      * @param float $P_UNIT_PRICE
+     * @param float $P_UNIT_PROMO_PRICE
+     * @param string $P_PROMO_DISCOUNT_NAME
      * @param float $P_BUNDLE_ID
      * @param float $P_BUNDLE_LINE_ID
      * @param string $P_DELIVERY_METHOD
@@ -169,7 +181,7 @@ class InputParameters
      * @param float $P_USER_ID
      * @param string $P_TEST_MODE
      */
-    public function __construct($P_ORDER_NUMBER, $P_ORIG_SYS_DOCUMENT_REF, $P_LINE_NUMBER, $P_ORIG_SYS_LINE_REF, $P_ITEM_NUMBER_TYPE, $P_ITEM_NUMBER, $P_QUANTITY, $P_UNIT_PRICE, $P_BUNDLE_ID, $P_BUNDLE_LINE_ID, $P_DELIVERY_METHOD, \DateTime $P_SHIP_DATE, $P_SHIP_TO_IDENTIFIER, $P_SHIP_TO_IDENTIFIER_TYPE, $P_SHIP_TO_ADDRESS_ID, $P_SHIP_TO_ADDRESS_1, $P_SHIP_TO_ADDRESS_2, $P_SHIP_TO_ADDRESS_3, $P_SHIP_TO_ADDRESS_4, $P_SHIP_TO_CITY, $P_SHIP_TO_STATE, $P_SHIP_TO_POSTAL_CODE, $P_SHIPPING_INSTRUCTIONS, $P_SHIP_SET_ID, $P_LINE_TYPE, $P_USER_ID, $P_TEST_MODE)
+    public function __construct($P_ORDER_NUMBER, $P_ORIG_SYS_DOCUMENT_REF, $P_LINE_NUMBER, $P_ORIG_SYS_LINE_REF, $P_ITEM_NUMBER_TYPE, $P_ITEM_NUMBER, $P_QUANTITY, $P_UNIT_PRICE, $P_UNIT_PROMO_PRICE, $P_PROMO_DISCOUNT_NAME, $P_BUNDLE_ID, $P_BUNDLE_LINE_ID, $P_DELIVERY_METHOD, \DateTime $P_SHIP_DATE, $P_SHIP_TO_IDENTIFIER, $P_SHIP_TO_IDENTIFIER_TYPE, $P_SHIP_TO_ADDRESS_ID, $P_SHIP_TO_ADDRESS_1, $P_SHIP_TO_ADDRESS_2, $P_SHIP_TO_ADDRESS_3, $P_SHIP_TO_ADDRESS_4, $P_SHIP_TO_CITY, $P_SHIP_TO_STATE, $P_SHIP_TO_POSTAL_CODE, $P_SHIPPING_INSTRUCTIONS, $P_SHIP_SET_ID, $P_LINE_TYPE, $P_USER_ID, $P_TEST_MODE)
     {
       $this->P_ORDER_NUMBER = $P_ORDER_NUMBER;
       $this->P_ORIG_SYS_DOCUMENT_REF = $P_ORIG_SYS_DOCUMENT_REF;
@@ -179,6 +191,8 @@ class InputParameters
       $this->P_ITEM_NUMBER = $P_ITEM_NUMBER;
       $this->P_QUANTITY = $P_QUANTITY;
       $this->P_UNIT_PRICE = $P_UNIT_PRICE;
+      $this->P_UNIT_PROMO_PRICE = $P_UNIT_PROMO_PRICE;
+      $this->P_PROMO_DISCOUNT_NAME = $P_PROMO_DISCOUNT_NAME;
       $this->P_BUNDLE_ID = $P_BUNDLE_ID;
       $this->P_BUNDLE_LINE_ID = $P_BUNDLE_LINE_ID;
       $this->P_DELIVERY_METHOD = $P_DELIVERY_METHOD;
@@ -344,6 +358,42 @@ class InputParameters
       return $this;
     }
 
+    /**
+     * @return float
+     */
+    public function getP_UNIT_PROMO_PRICE()
+    {
+      return $this->P_UNIT_PROMO_PRICE;
+    }
+
+    /**
+     * @param float $P_UNIT_PROMO_PRICE
+     * @return \edu\wisc\services\cbs\order\line\generated\InputParameters
+     */
+    public function setP_UNIT_PROMO_PRICE($P_UNIT_PROMO_PRICE)
+    {
+      $this->P_UNIT_PROMO_PRICE = $P_UNIT_PROMO_PRICE;
+      return $this;
+    }
+
+    /**
+     * @return string
+     */
+    public function getP_PROMO_DISCOUNT_NAME()
+    {
+      return $this->P_PROMO_DISCOUNT_NAME;
+    }
+
+    /**
+     * @param string $P_PROMO_DISCOUNT_NAME
+     * @return \edu\wisc\services\cbs\order\line\generated\InputParameters
+     */
+    public function setP_PROMO_DISCOUNT_NAME($P_PROMO_DISCOUNT_NAME)
+    {
+      $this->P_PROMO_DISCOUNT_NAME = $P_PROMO_DISCOUNT_NAME;
+      return $this;
+    }
+
     /**
      * @return float
      */
diff --git a/src/main/edu/wisc/services/cbs/order/line/generated/autoload.php b/src/main/edu/wisc/services/cbs/order/line/generated/autoload.php
index bb22f6a613e455f3d3b64ba6cbc9c38aebd4b747..de61f39a685171e9c30134e527b0dead48c06772 100644
--- a/src/main/edu/wisc/services/cbs/order/line/generated/autoload.php
+++ b/src/main/edu/wisc/services/cbs/order/line/generated/autoload.php
@@ -1,10 +1,10 @@
 <?php
 
 
- function autoload_4270c8e73bd93a8f31d33a8fbf2cb052($class)
+ function autoload_7ac0539a110b123830eee3ec3d69c444($class)
 {
     $classes = array(
-        'edu\wisc\services\cbs\order\line\generated\DOIT_SOA_ORDER_IFACE_L_V2_Service' => __DIR__ .'/DOIT_SOA_ORDER_IFACE_L_V2_Service.php',
+        'edu\wisc\services\cbs\order\line\generated\DOIT_SOA_ORDER_IFACE_L_V3_Service' => __DIR__ .'/DOIT_SOA_ORDER_IFACE_L_V3_Service.php',
         'edu\wisc\services\cbs\order\line\generated\InputParameters' => __DIR__ .'/InputParameters.php',
         'edu\wisc\services\cbs\order\line\generated\OutputParameters' => __DIR__ .'/OutputParameters.php',
         'edu\wisc\services\cbs\order\line\generated\SOAHeader' => __DIR__ .'/SOAHeader.php'
@@ -14,7 +14,7 @@
     };
 }
 
-spl_autoload_register('autoload_4270c8e73bd93a8f31d33a8fbf2cb052');
+spl_autoload_register('autoload_7ac0539a110b123830eee3ec3d69c444');
 
 // Do nothing. The rest is just leftovers from the code generation.
 {
diff --git a/src/main/resources/doit_soa_order_iface_l_v3.xml b/src/main/resources/doit_soa_order_iface_l_v3.xml
new file mode 100644
index 0000000000000000000000000000000000000000..4cbf40cb8cdffae435cfd3c391462c6a15d8b871
--- /dev/null
+++ b/src/main/resources/doit_soa_order_iface_l_v3.xml
@@ -0,0 +1 @@
+<?xml version = '1.0' encoding = 'UTF-8'?><definitions name="DOIT_SOA_ORDER_IFACE_L_V3" targetNamespace="http://xmlns.oracle.com/apps/ont/soaprovider/plsql/doit_soa_order_iface_l_v3/" xmlns:tns="http://xmlns.oracle.com/apps/ont/soaprovider/plsql/doit_soa_order_iface_l_v3/" xmlns="http://schemas.xmlsoap.org/wsdl/" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tns1="http://xmlns.oracle.com/apps/ont/soaprovider/plsql/doit_soa_order_iface_l_v3/line_create/">   <types>      <schema xmlns="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://xmlns.oracle.com/apps/ont/soaprovider/plsql/doit_soa_order_iface_l_v3/line_create/">         <include schemaLocation="http://pegasus.doit.wisc.edu:8016/webservices/SOAProvider/plsql/doit_soa_order_iface_l_v3/APPS_DOIT_SOA_ORDER_IFACE_L_V3_LINE_CREATE.xsd"/>      </schema>      <schema xmlns="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://xmlns.oracle.com/apps/ont/soaprovider/plsql/doit_soa_order_iface_l_v3/">         <element name="SOAHeader">            <complexType>               <sequence>                  <element name="Responsibility" minOccurs="0" type="string"/>                  <element name="RespApplication" minOccurs="0" type="string"/>                  <element name="SecurityGroup" minOccurs="0" type="string"/>                  <element name="NLSLanguage" minOccurs="0" type="string"/>                  <element name="Org_Id" minOccurs="0" type="string"/>               </sequence>            </complexType>         </element>      </schema>   </types>   <message name="LINE_CREATE_Input_Msg">      <part name="header" element="tns:SOAHeader"/>      <part name="body" element="tns1:InputParameters"/>   </message>   <message name="LINE_CREATE_Output_Msg">      <part name="body" element="tns1:OutputParameters"/>   </message>   <portType name="DOIT_SOA_ORDER_IFACE_L_V3_PortType">      <operation name="LINE_CREATE">         <input message="tns:LINE_CREATE_Input_Msg"/>         <output message="tns:LINE_CREATE_Output_Msg"/>      </operation>   </portType>   <binding name="DOIT_SOA_ORDER_IFACE_L_V3_Binding" type="tns:DOIT_SOA_ORDER_IFACE_L_V3_PortType">      <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>      <operation name="LINE_CREATE">         <soap:operation soapAction="http://pegasus.doit.wisc.edu:8016/webservices/SOAProvider/plsql/doit_soa_order_iface_l_v3/"/>         <input>            <soap:header message="tns:LINE_CREATE_Input_Msg" part="header" use="literal"/>            <soap:body parts="body" use="literal"/>         </input>         <output>            <soap:body use="literal"/>         </output>      </operation>   </binding>   <service name="DOIT_SOA_ORDER_IFACE_L_V3_Service">      <port name="DOIT_SOA_ORDER_IFACE_L_V3_Port" binding="tns:DOIT_SOA_ORDER_IFACE_L_V3_Binding">         <soap:address location="http://pegasus.doit.wisc.edu:8016/webservices/SOAProvider/plsql/doit_soa_order_iface_l_v3/"/>      </port>   </service></definitions>
\ No newline at end of file
diff --git a/src/test/edu/wisc/services/cbs/IntegrationTestCase.php b/src/test/edu/wisc/services/cbs/IntegrationTestCase.php
index 44278eba146b8c55a59a5ded9cc925e0ee79566c..1b753edc4c0f539aa96267adf38e00b8ea8ec231 100644
--- a/src/test/edu/wisc/services/cbs/IntegrationTestCase.php
+++ b/src/test/edu/wisc/services/cbs/IntegrationTestCase.php
@@ -105,6 +105,8 @@ class IntegrationTestCase extends \PHPUnit_Framework_TestCase
             ->setItemNumber($product->getSku())
             ->setQuantity(1)
             ->setUnitPrice(Money::USD(1000))
+            ->setUnitPromoPrice(Money::USD(0))
+            ->setPromoDiscountName('none')
             ->setDeliveryMethod(MagentoOrder::UPS_SHIPPING)
             ->setShipToIdentifier('UW027S180')
             ->setShipToIdentifierType(MagentoOrder::PERSONAL_IDENTIFIER_TYPE)