diff --git a/Plugin/Order/View/Items/Renderer/DefaultRenderer.php b/Plugin/Order/View/Items/Renderer/DefaultRenderer.php
new file mode 100644
index 0000000..369f9c6
--- /dev/null
+++ b/Plugin/Order/View/Items/Renderer/DefaultRenderer.php
@@ -0,0 +1,102 @@
+productRepository = $productRepository;
+ }
+
+ /**
+ * Modify columns to remove tax columns and add cost column
+ *
+ * @param \Magento\Sales\Block\Adminhtml\Order\View\Items\Renderer\DefaultRenderer $subject
+ * @param array $result
+ * @return array
+ */
+ public function afterGetColumns($subject, $result)
+ {
+ // Remove tax columns
+ unset($result['tax-amount']);
+ unset($result['tax-percent']);
+
+ // Add cost column after price
+ $newColumns = [];
+ foreach ($result as $key => $value) {
+ $newColumns[$key] = $value;
+ if ($key === 'price') {
+ $newColumns['cost'] = 'col-cost';
+ }
+ }
+
+ return $newColumns;
+ }
+
+ /**
+ * Add HTML rendering for cost column
+ *
+ * @param \Magento\Sales\Block\Adminhtml\Order\View\Items\Renderer\DefaultRenderer $subject
+ * @param string $result
+ * @param \Magento\Sales\Model\Order\Item $item
+ * @param string $column
+ * @return string
+ */
+ public function afterGetColumnHtml($subject, $result, $item, $column)
+ {
+ if ($column === 'cost') {
+ try {
+ $product = $this->productRepository->getById($item->getProductId());
+ $cost = $product->getCost();
+ if ($cost) {
+ return $subject->getOrder()->formatPrice($cost);
+ } else {
+ return __('N/A');
+ }
+ } catch (NoSuchEntityException $e) {
+ return __('N/A');
+ }
+ }
+
+ // Make product name and SKU clickable
+ if ($column === 'product') {
+ $productUrl = $subject->getUrl('catalog/product/edit', ['id' => $item->getProductId()]);
+
+ // Replace product name with linked version
+ $productName = $item->getName();
+ $linkedName = ''
+ . $subject->escapeHtml($productName) . '';
+ $result = str_replace($subject->escapeHtml($productName), $linkedName, $result);
+
+ // Replace SKU with linked version
+ $sku = $item->getSku();
+ $linkedSku = ''
+ . $subject->escapeHtml($sku) . '';
+ $result = str_replace($subject->escapeHtml($sku), $linkedSku, $result);
+ }
+
+ return $result;
+ }
+
+ /**
+ * Add column header for cost
+ *
+ * @param \Magento\Sales\Block\Adminhtml\Order\View\Items\Renderer\DefaultRenderer $subject
+ * @param string $result
+ * @param string $columnName
+ * @return string
+ */
+ public function afterGetHeaderText($subject, $result, $columnName)
+ {
+ if ($columnName === 'cost') {
+ return __('Cost');
+ }
+ return $result;
+ }
+}
diff --git a/Plugin/Order/View/ItemsColumns.php b/Plugin/Order/View/ItemsColumns.php
new file mode 100644
index 0000000..2d1bd46
--- /dev/null
+++ b/Plugin/Order/View/ItemsColumns.php
@@ -0,0 +1,30 @@
+ $value) {
+ $newColumns[$key] = $value;
+ if ($key === 'price') {
+ $newColumns['cost'] = 'Cost';
+ }
+ }
+
+ return $newColumns;
+ }
+}
diff --git a/etc/adminhtml/di.xml b/etc/adminhtml/di.xml
new file mode 100644
index 0000000..4ad58dc
--- /dev/null
+++ b/etc/adminhtml/di.xml
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+
+
+
diff --git a/etc/module.xml b/etc/module.xml
new file mode 100644
index 0000000..16680b7
--- /dev/null
+++ b/etc/module.xml
@@ -0,0 +1,9 @@
+
+
+
+
+
+
+
+
diff --git a/registration.php b/registration.php
new file mode 100644
index 0000000..c247303
--- /dev/null
+++ b/registration.php
@@ -0,0 +1,8 @@
+