ship200_bulk - Version 1.0.0

Version Notes

nothing

Download this release

Release Info

Developer Ship200
Extension ship200_bulk
Version 1.0.0
Comparing to
See all releases


Version 1.0.0

app/code/local/Ship200/Bulk/Helper/Data.php ADDED
@@ -0,0 +1,9 @@
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+ class Ship200_Bulk_Helper_Data extends Mage_Core_Helper_Abstract{
4
+
5
+
6
+
7
+ }
8
+
9
+ ?>
app/code/local/Ship200/Bulk/controllers/IndexController.php ADDED
@@ -0,0 +1,367 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?php
2
+
3
+
4
+
5
+ class Ship200_Bulk_IndexController extends Mage_Core_Controller_Front_Action
6
+
7
+ {
8
+
9
+
10
+
11
+ public function bulkprocessAction(){
12
+
13
+
14
+
15
+ $secret_key = Mage::getStoreConfig('bulk/info/appkey');
16
+ $order_status_import = Mage::getStoreConfig('bulk/info/order_status_import');
17
+ $order_status_tracking = Mage::getStoreConfig('bulk/info/order_status_tracking');
18
+ // $notify_customer_setting = Mage::getStoreConfig('bulk/info/notify_customer');
19
+ $notify_customer_setting = 1;
20
+ if($notify_customer_setting == "1"){
21
+ $notifycustomer="true";
22
+ }else{
23
+ $notifycustomer="false";
24
+ }
25
+
26
+
27
+
28
+ if($secret_key == ""){ echo "The Secret Key was never setup. Please refer to read_me file"; exit;}
29
+
30
+ if($order_status_import == ""){ echo "Please Select Order Status From Admin for Order Import"; exit;}
31
+ if($order_status_tracking == ""){ echo "Please Select Order Status From Admin for Update With Tracking"; exit;}
32
+
33
+ #Extra security
34
+ // Check that request is coming from Ship200 Server
35
+ $allowed_servers = file_get_contents('http://www.ship200.com/instructions/allowed_servers.txt');
36
+ $servers_array = explode(",",$allowed_servers);
37
+
38
+ $server = 0;
39
+ foreach($servers_array as $ip){
40
+ if($_SERVER['REMOTE_ADDR'] == $ip){$server = 1;}
41
+ }
42
+ if($server == 0){ echo "Incorrect Server"; exit;}
43
+ // Check that request is coming from Ship200 Server
44
+
45
+
46
+
47
+ if ($_POST['id'] == $secret_key){
48
+
49
+
50
+ $fields = array(
51
+
52
+
53
+
54
+ // Ship200 field name your db field name
55
+
56
+ // cannot be changed can be changed (see examples below)
57
+
58
+ "Orderid" => "increment_id", // that will be used 'keyForUpdate' to update the tracking number back in the backend
59
+
60
+ "Order_Date" => "created_at",
61
+
62
+ "Order_Status" => "status",
63
+
64
+
65
+
66
+ "Name" => "firstname",
67
+
68
+ "Company_Name" => "company",
69
+
70
+ "Address_Line1" => "street",
71
+
72
+ "City" => "city",
73
+
74
+ "State" => "region", // 2 Letter State, example: NY, LA etc..
75
+
76
+ "Zip" => "postcode",
77
+
78
+ "Country" => "country_id",
79
+
80
+ "Phone" => "telephone",
81
+
82
+ "Email" => "customer_email",
83
+
84
+
85
+
86
+ "Weight" => "weight", #any numeric(int) value
87
+
88
+ //"Weight_Units" => array(""=>"manual"), #valid values are "lb" or "oz"
89
+
90
+ "Ship_Method" => "shipping_description",
91
+
92
+ //"Subtotal" => "base_subtotal",
93
+
94
+ //"Shipping" => "base_shipping_amount",
95
+
96
+ //"Total" => "base_grand_total",
97
+
98
+
99
+
100
+ "items" => array("1"=>"items"),
101
+
102
+
103
+
104
+ //"Name_On_Invoice" => array(str_replace("http://", "", HTTP_SERVER)=>"manual")
105
+
106
+ );
107
+
108
+
109
+
110
+
111
+
112
+ //////////////////////////////// Do Not Change Anything Below this Line /////////////////////////////////////////////////
113
+
114
+
115
+
116
+ require_once("app/Mage.php");
117
+
118
+ $app = Mage::app('');
119
+
120
+
121
+
122
+ $salesModel=Mage::getModel("sales/order");
123
+
124
+ $salesCollection = $salesModel->getCollection()->addFieldToFilter('status', $order_status_import);
125
+
126
+
127
+
128
+
129
+
130
+
131
+
132
+ foreach($salesCollection as $order)
133
+
134
+ {
135
+
136
+ $shipping_address = $order->getShippingAddress();
137
+ //var_dump($shipping_address);
138
+ //exit;
139
+
140
+ $items=$order->getAllItems();
141
+
142
+
143
+
144
+ $out .= "<order>\n";
145
+
146
+
147
+
148
+ foreach($fields as $key => $value){
149
+
150
+
151
+
152
+ if (is_array($value)){
153
+
154
+
155
+
156
+ $man = "";
157
+
158
+ foreach($value as $key2 => $value2){ /// if field is array
159
+
160
+
161
+
162
+ if ($value2 == "items"){
163
+ unset($totals);unset($item_title_array);unset($items_qty_array);unset($items_price_array);unset($items_sku_array);
164
+
165
+
166
+
167
+ foreach($items as $item){
168
+
169
+ $item_title_array[] = $this->clear($item->getName());
170
+ $items_qty_array[] = $this->clear(round($item->getQtyOrdered()),2);
171
+ $items_price_array[] = $this->clear(round($item->getPrice()),2);
172
+ $items_sku_array[] = $this->clear($item->getSku());
173
+ }
174
+
175
+ //titles
176
+ $man .= "\n<title><![CDATA[".json_encode($item_title_array)."]]></title>\n";
177
+ //itemid
178
+ $man .= "\n<itemid>".json_encode($items_sku_array)."</itemid>\n";
179
+ //qty
180
+ $man .= "\n<qty>".json_encode($items_qty_array)."</qty>\n";
181
+ //price
182
+ $man .= "\n<price>".json_encode($items_price_array)."</price>\n";
183
+
184
+
185
+ $man .= "\n<subtotal>".$this->clear($order->getBaseSubtotal())."</subtotal>";
186
+
187
+ $man .= "\n<shipping>".$this->clear($order->getBaseShippingAmount())."</shipping>";
188
+
189
+ $man .= "\n<total>".$this->clear($order->getBaseGrandTotal())."</total>";
190
+
191
+ $man .= "\n<discount>".$this->clear($order->getBaseDiscountAmount())."</discount>";
192
+
193
+
194
+
195
+ }
196
+
197
+ }
198
+
199
+ $out .= "<$key>".$man."</$key>\n";
200
+
201
+
202
+
203
+ }else if($value==""){
204
+
205
+ $out .= "<$key></$key>\n";
206
+
207
+ }else{
208
+
209
+
210
+
211
+ if($this->clear($order->getData($value))==""){
212
+
213
+
214
+
215
+ $out .= "<$key>".$this->clear($shipping_address->getData($value))."</$key>\n";
216
+
217
+ }else{
218
+
219
+ if($value=="status"){
220
+ $out .= "<$key>".$this->clear($order_status_import)."</$key>\n";
221
+ }else{
222
+
223
+ $out .= "<$key>".$this->clear($order->getData($value))."</$key>\n";
224
+ }
225
+ }
226
+
227
+ }
228
+
229
+
230
+
231
+
232
+
233
+ }
234
+
235
+
236
+
237
+ $out .= "</order>\n";
238
+
239
+
240
+
241
+ }
242
+
243
+
244
+
245
+ header("Content-type: text/xml; charset=utf-8");
246
+
247
+ echo "<?xml version='1.0' encoding='ISO-8859-1'?>
248
+
249
+ <orders>
250
+
251
+ $out
252
+
253
+ </orders>";
254
+ exit;
255
+
256
+
257
+
258
+
259
+
260
+ //////////////// Update Tracking ///////////////////////
261
+
262
+ }elseif($_POST['update_tracking'] == "1" && $_POST['secret_key'] == $secret_key && $server == 1){
263
+
264
+ $order=Mage::getModel("sales/order")->loadByIncrementId($_POST['keyForUpdate']);
265
+
266
+ if($order->canShip()){
267
+
268
+ $arrTracking = array(
269
+ 'carrier_code' => strtolower($_POST['carrier']),
270
+ 'title' => $_POST[service]." - (Ship200 Bulk)",
271
+ 'number' => $_POST['tracking'],
272
+ );
273
+
274
+ $itemQty = $order->getItemsCollection()->count();
275
+ $shipment = $order->prepareShipment();
276
+ if($shipment){
277
+ $track = Mage::getModel('sales/order_shipment_track')->addData($arrTracking);
278
+ $shipment->addTrack($track);
279
+ $shipment->register();
280
+ $transactionSave = Mage::getModel('core/resource_transaction')
281
+ ->addObject($shipment)
282
+ ->addObject($shipment->getOrder())
283
+ ->save();
284
+ }
285
+
286
+ }
287
+
288
+ $order->setData('state', $order_status_tracking);
289
+ $order->setStatus($order_status_tracking);
290
+ $comment = addslashes($_POST['carrier'])." tracking#: ".addslashes($_POST['tracking']);
291
+ $history = $order->addStatusHistoryComment($comment, false);
292
+ $history->setIsCustomerNotified($notifycustomer);
293
+ $order->save();
294
+
295
+
296
+ }else{
297
+ // Not valid request //////
298
+ echo "Error: 1094";
299
+ exit;
300
+ }
301
+
302
+
303
+
304
+
305
+
306
+
307
+ }
308
+
309
+
310
+
311
+ public function clear ($value="") {
312
+
313
+
314
+
315
+ $value = preg_replace("'<style[^>]*>.*</style>'siU",'',$value);
316
+
317
+ $value = strip_tags($value);
318
+
319
+ $value = str_replace("<", "&lt;", $value);
320
+
321
+ $value = str_replace("&", "&amp;", $value);
322
+
323
+ $value = str_replace(",", " ", $value);
324
+
325
+ $value = str_replace("\n", " ", $value);
326
+
327
+ $value = str_replace("\r", " ", $value);
328
+
329
+ $value = str_replace(" ", " ", $value);
330
+
331
+ $value = str_replace("�", " ", $value);
332
+
333
+
334
+
335
+ $value = preg_replace('/\<[^\>]+\>/', '', $value);
336
+
337
+ #$value = urldecode(html_entity_decode($value));
338
+
339
+ $value = preg_replace('/[\r\n]+/', '', $value);
340
+
341
+ $value = preg_replace('/[\s]+$/', '', $value);
342
+
343
+ $value = preg_replace('/[\s\t]+\xA0$/', '', $value);
344
+
345
+
346
+
347
+ $value = substr($value, 0, 10000);
348
+
349
+
350
+
351
+ $value = addslashes($value);
352
+
353
+
354
+
355
+ return $value;
356
+
357
+ }
358
+
359
+
360
+
361
+
362
+
363
+ }
364
+
365
+
366
+
367
+ ?>
app/code/local/Ship200/Bulk/etc/adminhtml.xml ADDED
@@ -0,0 +1,43 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+
3
+ <config>
4
+
5
+ <acl>
6
+
7
+ <resources>
8
+
9
+ <admin>
10
+
11
+ <children>
12
+
13
+ <system>
14
+
15
+ <children>
16
+
17
+ <config>
18
+
19
+ <children>
20
+
21
+ <bulk>
22
+
23
+ <title>Ship200 Bulk Labels options</title>
24
+
25
+ </bulk>
26
+
27
+ </children>
28
+
29
+ </config>
30
+
31
+ </children>
32
+
33
+ </system>
34
+
35
+ </children>
36
+
37
+ </admin>
38
+
39
+ </resources>
40
+
41
+ </acl>
42
+
43
+ </config>
app/code/local/Ship200/Bulk/etc/config.xml ADDED
@@ -0,0 +1,109 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+
3
+ <config>
4
+
5
+ <modules>
6
+
7
+ <Ship200_Bulk>
8
+
9
+ <version>0.1.0</version>
10
+
11
+ </Ship200_Bulk>
12
+
13
+ </modules>
14
+
15
+ <global>
16
+
17
+ <!--<blocks>
18
+
19
+ <onebyone>
20
+
21
+ <class>Shiptwohundred_Onebyone_Block</class>
22
+
23
+ </onebyone>
24
+
25
+ <adminhtml>
26
+
27
+ <rewrite>
28
+
29
+ <sales_order_view>Shiptwohundred_Onebyone_Block_Adminhtml_Sales_Order_View</sales_order_view>
30
+
31
+ </rewrite>
32
+
33
+ </adminhtml>
34
+
35
+ </blocks>-->
36
+
37
+ <helpers>
38
+
39
+ <bulk>
40
+
41
+ <class>Ship200_Bulk_Helper</class>
42
+
43
+ </bulk>
44
+
45
+ </helpers>
46
+
47
+ <!--<models>
48
+
49
+ <onebyone>
50
+
51
+ <class>Shiptwohundred_Onebyone_Model</class>
52
+
53
+ </onebyone>
54
+
55
+ </models>-->
56
+
57
+ </global>
58
+
59
+ <!--<adminhtml>
60
+
61
+ <layout>
62
+
63
+ <updates>
64
+
65
+ <Ship200_Bulk>
66
+
67
+ <file>ship200_bulk.xml</file>
68
+
69
+ </Ship200_Bulk>
70
+
71
+ </updates>
72
+
73
+ </layout>
74
+
75
+ </adminhtml>-->
76
+
77
+ <frontend>
78
+
79
+ <routers>
80
+
81
+ <bulk>
82
+
83
+ <use>standard</use>
84
+
85
+ <args>
86
+
87
+ <module>Ship200_Bulk</module>
88
+
89
+ <frontName>bulk</frontName>
90
+
91
+ </args>
92
+
93
+ </bulk>
94
+
95
+ </routers>
96
+
97
+ </frontend>
98
+
99
+
100
+ <default>
101
+ <bulk>
102
+ <info>
103
+ <order_status_import>pending</order_status_import>
104
+ <order_status_tracking>complete</order_status_tracking>
105
+ </info>
106
+ </bulk>
107
+ </default>
108
+
109
+ </config>
app/code/local/Ship200/Bulk/etc/system.xml ADDED
@@ -0,0 +1,196 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+
3
+ <config>
4
+
5
+ <tabs>
6
+
7
+ <!--Here is the tabs definition-->
8
+
9
+ <bulksetting translate="label" module="bulk">
10
+
11
+ <label>Ship200 Bulk Labels</label>
12
+
13
+ <sort_order>20</sort_order>
14
+
15
+ <sort_order>800</sort_order>
16
+
17
+ <show_in_default>1</show_in_default>
18
+
19
+ <show_in_website>1</show_in_website>
20
+
21
+ <show_in_store>1</show_in_store>
22
+
23
+ </bulksetting>
24
+
25
+ </tabs>
26
+
27
+ <sections>
28
+
29
+ <!--Here are the sections definition-->
30
+
31
+ <bulk translate="label" module="bulk">
32
+
33
+ <class>separator-top</class>
34
+
35
+ <label>Ship200 Bulk Processing Settings</label>
36
+
37
+ <tab>bulksetting</tab>
38
+
39
+ <sort_order>800</sort_order>
40
+
41
+ <show_in_default>1</show_in_default>
42
+
43
+ <show_in_website>1</show_in_website>
44
+
45
+ <show_in_store>1</show_in_store>
46
+
47
+ <groups>
48
+
49
+ <!--Here are the groups definitions-->
50
+
51
+ <info translate="label">
52
+
53
+ <label>Ship200 Bulk Labels General information</label>
54
+
55
+ <frontend_type>text</frontend_type>
56
+
57
+ <sort_order>1</sort_order>
58
+
59
+ <show_in_default>1</show_in_default>
60
+
61
+ <show_in_website>1</show_in_website>
62
+
63
+ <show_in_store>1</show_in_store>
64
+
65
+ <fields>
66
+
67
+ <!--Here are the fields definition-->
68
+
69
+ <enable translate="label">
70
+
71
+ <label>Enable</label>
72
+
73
+ <frontend_type>select</frontend_type>
74
+
75
+ <source_model>adminhtml/system_config_source_yesno</source_model>
76
+
77
+ <sort_order>0</sort_order>
78
+
79
+ <show_in_default>1</show_in_default>
80
+
81
+ <show_in_website>1</show_in_website>
82
+
83
+ <show_in_store>1</show_in_store>
84
+
85
+ </enable>
86
+ <appkey translate="label">
87
+
88
+ <label>Ship200 Secret Key</label>
89
+
90
+ <frontend_type>text</frontend_type>
91
+
92
+ <sort_order>1</sort_order>
93
+
94
+ <show_in_default>1</show_in_default>
95
+
96
+ <show_in_website>1</show_in_website>
97
+
98
+ <show_in_store>1</show_in_store>
99
+
100
+ <comment><![CDATA[1. Login to your Ship200.com Account </br> 2. On Top Menu click "Bulk Processing", then "Add/Remove Store", then "Setup Import From Magento"
101
+ </br> 3. Copy/Paste secret key from Ship200 to "key" field above</br> 4. Change domain name to "your domain" <BR> in "Path to Ship200 Comunicator Script" Field, then hit Save Changes]]></comment>
102
+
103
+ </appkey>
104
+
105
+ <order_status_import translate="label">
106
+
107
+ <label>Order Status For Import</label>
108
+
109
+ <frontend_type>select</frontend_type>
110
+
111
+ <source_model>adminhtml/system_config_source_order_status</source_model>
112
+
113
+ <sort_order>2</sort_order>
114
+
115
+ <show_in_default>1</show_in_default>
116
+
117
+ <show_in_website>1</show_in_website>
118
+
119
+ <show_in_store>1</show_in_store>
120
+
121
+ </order_status_import>
122
+
123
+
124
+ <order_status_tracking translate="label">
125
+
126
+ <label>Order Status For Update With Tracking</label>
127
+
128
+ <frontend_type>select</frontend_type>
129
+
130
+ <source_model>adminhtml/system_config_source_order_status</source_model>
131
+
132
+ <sort_order>3</sort_order>
133
+
134
+ <show_in_default>1</show_in_default>
135
+
136
+ <show_in_website>1</show_in_website>
137
+
138
+ <show_in_store>1</show_in_store>
139
+
140
+ </order_status_tracking>
141
+
142
+ <!--<notify_customer translate="label">
143
+
144
+ <label>Notify Customer</label>
145
+
146
+ <frontend_type>select</frontend_type>
147
+
148
+ <source_model>adminhtml/system_config_source_yesno</source_model>
149
+
150
+ <sort_order>4</sort_order>
151
+
152
+ <show_in_default>1</show_in_default>
153
+
154
+ <show_in_website>1</show_in_website>
155
+
156
+ <show_in_store>1</show_in_store>
157
+
158
+ </notify_customer>
159
+ -->
160
+
161
+
162
+
163
+
164
+ <!--<carrier translate="label">
165
+
166
+ <label>Ship200 Carrier Service Codes</label>
167
+
168
+ <frontend_type>select</frontend_type>
169
+
170
+ <source_model>onebyone/source_carrier</source_model>
171
+
172
+ <sort_order>170</sort_order>
173
+
174
+ <show_in_default>1</show_in_default>
175
+
176
+ <show_in_website>1</show_in_website>
177
+
178
+ <show_in_store>1</show_in_store>
179
+
180
+ <comment><![CDATA[For Ship200 Carrier Service Codes]]></comment>
181
+
182
+ </carrier>-->
183
+
184
+
185
+
186
+ </fields>
187
+
188
+ </info>
189
+
190
+ </groups>
191
+
192
+ </bulk>
193
+
194
+ </sections>
195
+
196
+ </config>
app/etc/modules/Ship200_Bulk.xml ADDED
@@ -0,0 +1,18 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+
3
+ <config>
4
+
5
+ <modules>
6
+
7
+ <Ship200_Bulk>
8
+
9
+ <active>true</active>
10
+
11
+ <codePool>local</codePool>
12
+
13
+ </Ship200_Bulk>
14
+
15
+ </modules>
16
+
17
+ </config>
18
+
package.xml ADDED
@@ -0,0 +1,25 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <?xml version="1.0"?>
2
+ <package>
3
+ <name>ship200_bulk</name>
4
+ <version>1.0.0</version>
5
+ <stability>stable</stability>
6
+ <license uri="http://opensource.org/licenses/osl-3.0.php">Open Software License (OSL)</license>
7
+ <channel>community</channel>
8
+ <extends/>
9
+ <summary>Ship200 is Multi Carrier (Fedex, UPS, USPS) Shipping Software</summary>
10
+ <description>Ship200 is Multi Carrier (Fedex, UPS, USPS) Shipping Software which allows you to print shipping labels in bulk or individually and integrate process of creating labels directly into you Magento.&#xD;
11
+ &lt;br /&gt;&lt;br /&gt;&#xD;
12
+ This Plugin connects your Magento store to Ship200, and adds the ability to download new orders to Ship200 for creating shipping labels in bulk.&#xD;
13
+ &lt;br /&gt;&lt;br /&gt;&#xD;
14
+ Demo:&#xD;
15
+ &lt;a href="https://www.youtube.com/watch?v=rZdC1f1WIxU"&gt;https://www.youtube.com/watch?v=rZdC1f1WIxU&lt;/a&gt;&#xD;
16
+ &lt;br /&gt;&lt;br /&gt;&#xD;
17
+ Visit Us at &lt;a href="http://www.Ship200.com"&gt;www.Ship200.com&lt;/a&gt;</description>
18
+ <notes>nothing</notes>
19
+ <authors><author><name>Ship200</name><user>Ship200</user><email>bell@ship200.com</email></author></authors>
20
+ <date>2014-07-21</date>
21
+ <time>13:31:26</time>
22
+ <contents><target name="magelocal"><dir name="Ship200"><dir name="Bulk"><dir name="Helper"><file name="Data.php" hash="5501e6608f0a1cef651ae2a89cee1bcb"/></dir><dir name="controllers"><file name="IndexController.php" hash="dc987182ab3ad91767c3396cbcda6ac7"/></dir><dir name="etc"><file name="adminhtml.xml" hash="a3457b8da52d66fda1e386ed0d7ca078"/><file name="config.xml" hash="de37b7428ff1ef8a759a913a742f48a2"/><file name="system.xml" hash="9f6a029173997f8a69621913890fe487"/></dir></dir></dir></target><target name="mageetc"><dir name="modules"><file name="Ship200_Bulk.xml" hash="8d72455b0d5fd4b13d19a03e1ee70b89"/></dir></target></contents>
23
+ <compatible/>
24
+ <dependencies><required><php><min>5.1.0</min><max>6.0.0</max></php></required></dependencies>
25
+ </package>