diff --git a/src/pretix/presale/templates/pretixpresale/event/order_modify.html b/src/pretix/presale/templates/pretixpresale/event/order_modify.html
index 11ceb9c3c..6685e56f6 100644
--- a/src/pretix/presale/templates/pretixpresale/event/order_modify.html
+++ b/src/pretix/presale/templates/pretixpresale/event/order_modify.html
@@ -13,7 +13,7 @@
{% csrf_token %}
{% if invoice_address_asked or event.settings.invoice_name_required %}
- {% if invoice_address_asked and not request.GET.generate_invoice == "true" and not event.settings.invoice_reissue_after_modify %}
+ {% if invoice_address_asked and not request.GET.generate_invoice == "true" and not invoice_generation_selfservice %}
{% blocktrans trimmed %}
Modifying your invoice address will not automatically generate a new invoice.
diff --git a/src/pretix/presale/views/order.py b/src/pretix/presale/views/order.py
index 090c8b4ad..73817f97c 100644
--- a/src/pretix/presale/views/order.py
+++ b/src/pretix/presale/views/order.py
@@ -909,6 +909,21 @@ class OrderModify(EventViewMixin, OrderDetailMixin, OrderQuestionsViewMixin, Tem
def get(self, request, *args, **kwargs):
return super().get(request, *args, **kwargs)
+ def get_context_data(self, **kwargs):
+ ctx = super().get_context_data(
+ **kwargs,
+ )
+
+ ctx['invoice_generation_selfservice'] = (
+ self.request.event.settings.invoice_reissue_after_modify or
+ (
+ can_generate_invoice(self.request.event, self.order, ignore_payments=True) and
+ not self.order.invoices.exists()
+ )
+ )
+
+ return ctx
+
def dispatch(self, request, *args, **kwargs):
self.request = request
self.kwargs = kwargs