diff --git a/modules/order/commerce_order.module b/modules/order/commerce_order.module
index 0ccaa7c..ced8275 100644
--- a/modules/order/commerce_order.module
+++ b/modules/order/commerce_order.module
@@ -35,6 +35,7 @@ function commerce_order_theme($existing, $type, $theme, $path) {
         'billing_information' => NULL,
         'shipping_information' => NULL,
         'payment_method' => NULL,
+        'payment_instructions' => NULL,
         'totals' => NULL,
       ],
     ],
diff --git a/modules/order/templates/commerce-order-receipt.html.twig b/modules/order/templates/commerce-order-receipt.html.twig
index b6177d0..cb3e8ce 100644
--- a/modules/order/templates/commerce-order-receipt.html.twig
+++ b/modules/order/templates/commerce-order-receipt.html.twig
@@ -105,6 +105,18 @@
                   </td>
                 </tr>
               {% endif %}
+              {% if payment_instructions %}
+                <tr>
+                  <td style="font-weight: bold; margin-top: 10px;">{{ 'Payment instructions'|t }}</td>
+                </tr>
+                <tr>
+                  <td>
+                    {% block payment_instructions %}
+                      {{ payment_instructions }}
+                    {% endblock %}
+                  </td>
+                </tr>
+              {% endif %}
               </tbody>
             </table>
             {% endif %}
diff --git a/modules/payment/commerce_payment.module b/modules/payment/commerce_payment.module
index 3efb41e..5663ab4 100755
--- a/modules/payment/commerce_payment.module
+++ b/modules/payment/commerce_payment.module
@@ -137,9 +137,20 @@ function commerce_payment_preprocess_commerce_checkout_completion_message(&$vari
 function commerce_payment_preprocess_commerce_order_receipt(&$variables) {
   /** @var Drupal\commerce_order\Entity\OrderInterface $order */
   $order = $variables['order_entity'];
+  // Add payment method data if available for the order.
   if (!$order->get('payment_method')->isEmpty()) {
     $variables['payment_method'] = [
       '#markup' => $order->get('payment_method')->first()->entity->label(),
     ];
   }
+  // Add payment instruction data if available for the order.
+  if (!$order->get('payment_gateway')->isEmpty()) {
+    /** @var \Drupal\commerce_payment\Entity\PaymentGatewayInterface $payment_gateway */
+    $payment_gateway = $order->get('payment_gateway')->entity;
+    /** @var \Drupal\commerce_payment\Plugin\Commerce\PaymentGateway\HasPaymentInstructionsInterface $payment_gateway_plugin */
+    $payment_gateway_plugin = $payment_gateway->getPlugin();
+    if ($payment_gateway_plugin instanceof HasPaymentInstructionsInterface) {
+      $variables['payment_instructions'] = $payment_gateway_plugin->buildPaymentInstructions();
+    }
+  }
 }
