diff --git a/modules/checkout/src/Plugin/Commerce/CheckoutPane/CompletionMessage.php b/modules/checkout/src/Plugin/Commerce/CheckoutPane/CompletionMessage.php
index 61dffa68..cf80ca5c 100644
--- a/modules/checkout/src/Plugin/Commerce/CheckoutPane/CompletionMessage.php
+++ b/modules/checkout/src/Plugin/Commerce/CheckoutPane/CompletionMessage.php
@@ -3,6 +3,7 @@
 namespace Drupal\commerce_checkout\Plugin\Commerce\CheckoutPane;
 
 use Drupal\Core\Form\FormStateInterface;
+use Drupal\Core\Url;
 
 /**
  * Provides the completion message pane.
@@ -20,12 +21,12 @@ class CompletionMessage extends CheckoutPaneBase {
    */
   public function defaultConfiguration() {
     // @todo Add token, HTML support.
-    $default_message = 'Your order number is %order_number. ';
-    $default_message .= 'You can view your order on your account page when logged in.';
+    $default_message = 'Your order number is %order_number.';
+    $default_message .= '%anonymous_checkout_message';
 
     return [
-      'message' => $default_message,
-    ] + parent::defaultConfiguration();
+        'message' => $default_message,
+      ] + parent::defaultConfiguration();
   }
 
   /**
@@ -59,7 +60,33 @@ class CompletionMessage extends CheckoutPaneBase {
    */
   public function buildPaneForm(array $pane_form, FormStateInterface $form_state, array &$complete_form) {
     $message = $this->configuration['message'];
-    $message = str_replace('%order_number', $this->order->getOrderNumber(), $message);
+
+    // Modify the message depending on whether the user is logged in or not.
+    // If the user is logged in.
+    if (\Drupal::currentUser()->isAuthenticated()) {
+      // Link the order number to the order page.
+      $url = Url::fromRoute('entity.commerce_order.canonical', ['commerce_order' => $this->order->getOrderNumber()]);
+      $order_number_replacement_text = \Drupal::l($this->order->getOrderNumber(), $url);
+
+      // Don't display a secondary message.
+      $anonymous_checkout_message_replacement_text = '';
+    }
+    // Else, if the user is logged out.
+    else {
+      // Just display the order number.
+      $order_number_replacement_text = $this->order->getOrderNumber();
+
+      // Add a secondary message.
+      $anonymous_checkout_message_replacement_text = 'You can view your order on your account page when logged in.';
+    }
+
+    // Now, let's replace the tokens with the appropriate values.
+    $token_array = ['%order_number', '%anonymous_checkout_message'];
+    $replacement_array = [
+      $order_number_replacement_text,
+      $anonymous_checkout_message_replacement_text
+    ];
+    $message = str_replace($token_array, $replacement_array, $message);
 
     $pane_form['message'] = [
       '#markup' => $message,
