diff --git a/src/EventSubscriber/AddLinkToPeakSubscriber.php b/src/EventSubscriber/AddLinkToPeakSubscriber.php
new file mode 100644
index 0000000..7e40b2c
--- /dev/null
+++ b/src/EventSubscriber/AddLinkToPeakSubscriber.php
@@ -0,0 +1,55 @@
+ 'addLink'];
+ }
+
+ public function addLink(OrderShowMenuBuilderEvent $event): void
+ {
+ $order = $event->getOrder();
+ if (!$order instanceof OrderInterface) {
+ return;
+ }
+
+ $uploadOrderRequest = $order->getPeakWMSUploadOrderRequest();
+ if ($uploadOrderRequest === null) {
+ return;
+ }
+
+ $peakOrderId = $uploadOrderRequest->getPeakOrderId();
+
+ if ($uploadOrderRequest->getState() !== UploadOrderRequestInterface::STATE_UPLOADED || null === $peakOrderId) {
+ return;
+ }
+
+ $menu = $event->getMenu();
+ $menu
+ ->addChild('view_order_in_peak', [
+ 'uri' => sprintf('https://app%s.peakwms.com/dialog/orderOverview/%d/details', $this->testEnvironment ? '-test' : '', $peakOrderId),
+ ])
+ ->setAttribute('type', 'link')
+ ->setLabel('setono_sylius_peak_wms.ui.view_order_in_peak')
+ ->setLabelAttribute('icon', 'external alternate')
+ ->setLabelAttribute('color', 'blue')
+ ;
+
+ $menu->reorderChildren(['view_order_in_peak', 'order_history', 'cancel']);
+ }
+}
diff --git a/src/Resources/config/doctrine/model/UploadOrderRequest.orm.xml b/src/Resources/config/doctrine/model/UploadOrderRequest.orm.xml
index 4df8355..db0942a 100644
--- a/src/Resources/config/doctrine/model/UploadOrderRequest.orm.xml
+++ b/src/Resources/config/doctrine/model/UploadOrderRequest.orm.xml
@@ -15,6 +15,7 @@
+
diff --git a/src/Resources/config/services/event_subscriber.xml b/src/Resources/config/services/event_subscriber.xml
index 0d9d345..05eb077 100644
--- a/src/Resources/config/services/event_subscriber.xml
+++ b/src/Resources/config/services/event_subscriber.xml
@@ -7,6 +7,13 @@
+
+ %kernel.debug%
+
+
+
+